一个aspack 2.12 壳的 怎么都脱不了。哪位高手讲解一下
peid 检测是aspack2.12 的壳
用aspack2.12 脱壳工具又无法脱,手动脱壳后,peid再查 显示未知
请哪位高手 看看这到底是啥壳呢?
下面是入口的代码
004D3001 > 60 pushad
004D3002 E8 03000000 call 004D300A
004D3007 - E9 EB045D45 jmp 45AA34F7
004D300C 55 push ebp
004D300D C3 retn
004D300E E8 01000000 call 004D3014
004D3013 EB 5D jmp short 004D3072
004D3015 BB EDFFFFFF mov ebx, -13
004D301A 03DD add ebx, ebp
004D301C 81EB 00300D00 sub ebx, 0D3000
004D3022 83BD 22040000 0>cmp dword ptr [ebp+422], 0
004D3029 899D 22040000 mov dword ptr [ebp+422], ebx
004D302F 0F85 65030000 jnz 004D339A
004D3035 8D85 2E040000 lea eax, dword ptr [ebp+42E]
004D303B 50 push eax
004D303C FF95 4D0F0000 call dword ptr [ebp+F4D]
004D3042 8985 26040000 mov dword ptr [ebp+426], eax
004D3048 8BF8 mov edi, eax
004D304A 8D5D 5E lea ebx, dword ptr [ebp+5E]
004D304D 53 push ebx
004D304E 50 push eax
004D304F FF95 490F0000 call dword ptr [ebp+F49]
004D3055 8985 4D050000 mov dword ptr [ebp+54D], eax
004D305B 8D5D 6B lea ebx, dword ptr [ebp+6B]
004D305E 53 push ebx
004D305F 57 push edi
004D3060 FF95 490F0000 call dword ptr [ebp+F49]
004D3066 8985 51050000 mov dword ptr [ebp+551], eax
004D306C 8D45 77 lea eax, dword ptr [ebp+77]
004D306F FFE0 jmp eax
004D3071 56 push esi
004D3072 6972 74 75616C4>imul esi, dword ptr [edx+74], 416C617>
004D3079 6C ins byte ptr es:[edi], dx
004D307A 6C ins byte ptr es:[edi], dx
004D307B 6F outs dx, dword ptr es:[edi]
004D307C 6300 arpl word ptr [eax], ax
004D307E 56 push esi
004D307F 6972 74 75616C4>imul esi, dword ptr [edx+74], 466C617>
004D3086 72 65 jb short 004D30ED
004D3088 65:008B 9D31050>add byte ptr gs:[ebx+5319D], cl
004D308F 000B add byte ptr [ebx], cl
004D3091 DB ??? ; 未知命令
004D3092 74 0A je short 004D309E
004D3094 8B03 mov eax, dword ptr [ebx]
004D3096 8785 35050000 xchg dword ptr [ebp+535], eax
004D309C 8903 mov dword ptr [ebx], eax
004D309E 8DB5 69050000 lea esi, dword ptr [ebp+569]
004D30A4 833E 00 cmp dword ptr [esi], 0
004D30A7 0F84 21010000 je 004D31CE
004D30AD 6A 04 push 4
004D30AF 68 00100000 push 1000
004D30B4 68 00180000 push 1800
004D30B9 6A 00 push 0
004D30BB FF95 4D050000 call dword ptr [ebp+54D]
004D30C1 8985 56010000 mov dword ptr [ebp+156], eax
004D30C7 8B46 04 mov eax, dword ptr [esi+4]
004D30CA 05 0E010000 add eax, 10E
004D30CF 6A 04 push 4
004D30D1 68 00100000 push 1000
004D30D6 50 push eax
004D30D7 6A 00 push 0
004D30D9 FF95 4D050000 call dword ptr [ebp+54D]
004D30DF 8985 52010000 mov dword ptr [ebp+152], eax
004D30E5 56 push esi
004D30E6 8B1E mov ebx, dword ptr [esi]
004D30E8 039D 22040000 add ebx, dword ptr [ebp+422]
004D30EE FFB5 56010000 push dword ptr [ebp+156]
004D30F4 FF76 04 push dword ptr [esi+4]
004D30F7 50 push eax
004D30F8 53 push ebx
004D30F9 E8 6E050000 call 004D366C
004D30FE B3 00 mov bl, 0
004D3100 80FB 00 cmp bl, 0
004D3103 75 5E jnz short 004D3163
004D3105 FE85 EC000000 inc byte ptr [ebp+EC]
004D310B 8B3E mov edi, dword ptr [esi]
004D310D 03BD 22040000 add edi, dword ptr [ebp+422]
004D3113 FF37 push dword ptr [edi]
004D3115 C607 C3 mov byte ptr [edi], 0C3
004D3118 FFD7 call edi
004D311A 8F07 pop dword ptr [edi]
004D311C 50 push eax
004D311D 51 push ecx
004D311E 56 push esi
004D311F 53 push ebx
004D3120 8BC8 mov ecx, eax
004D3122 83E9 06 sub ecx, 6
004D3125 8BB5 52010000 mov esi, dword ptr [ebp+152]
004D312B 33DB xor ebx, ebx
004D312D 0BC9 or ecx, ecx
004D312F 74 2E je short 004D315F
004D3131 78 2C js short 004D315F
004D3133 AC lods byte ptr [esi]
004D3134 3C E8 cmp al, 0E8
004D3136 74 0A je short 004D3142
004D3138 EB 00 jmp short 004D313A
004D313A 3C E9 cmp al, 0E9
004D313C 74 04 je short 004D3142
004D313E 43 inc ebx
004D313F 49 dec ecx
004D3140 ^ EB EB jmp short 004D312D
004D3142 8B06 mov eax, dword ptr [esi]
004D3144 EB 00 jmp short 004D3146
004D3146 803E 1E cmp byte ptr [esi], 1E
004D3149 ^ 75 F3 jnz short 004D313E
004D314B 24 00 and al, 0
004D314D C1C0 18 rol eax, 18
004D3150 2BC3 sub eax, ebx
004D3152 8906 mov dword ptr [esi], eax
004D3154 83C3 05 add ebx, 5
004D3157 83C6 04 add esi, 4
004D315A 83E9 05 sub ecx, 5
004D315D ^ EB CE jmp short 004D312D
004D315F 5B pop ebx
004D3160 5E pop esi
004D3161 59 pop ecx
004D3162 58 pop eax
004D3163 EB 08 jmp short 004D316D
004D3165 0000 add byte ptr [eax], al
004D3167 0000 add byte ptr [eax], al
004D3169 0000 add byte ptr [eax], al
004D316B 0000 add byte ptr [eax], al
004D316D 8BC8 mov ecx, eax
004D316F 8B3E mov edi, dword ptr [esi]
004D3171 03BD 22040000 add edi, dword ptr [ebp+422]
004D3177 8BB5 52010000 mov esi, dword ptr [ebp+152]
004D317D C1F9 02 sar ecx, 2
004D3180 F3:A5 rep movs dword ptr es:[edi], dword p>
004D3182 8BC8 mov ecx, eax
004D3184 83E1 03 and ecx, 3
004D3187 F3:A4 rep movs byte ptr es:[edi], byte ptr>
004D3189 5E pop esi
004D318A 68 00800000 push 8000
004D318F 6A 00 push 0
004D3191 FFB5 52010000 push dword ptr [ebp+152]
004D3197 FF95 51050000 call dword ptr [ebp+551]
004D319D 83C6 08 add esi, 8
004D31A0 833E 00 cmp dword ptr [esi], 0
004D31A3 ^ 0F85 1EFFFFFF jnz 004D30C7
004D31A9 68 00800000 push 8000
004D31AE 6A 00 push 0
004D31B0 FFB5 56010000 push dword ptr [ebp+156]
004D31B6 FF95 51050000 call dword ptr [ebp+551]
004D31BC 8B9D 31050000 mov ebx, dword ptr [ebp+531]
004D31C2 0BDB or ebx, ebx
004D31C4 74 08 je short 004D31CE
004D31C6 8B03 mov eax, dword ptr [ebx]
004D31C8 8785 35050000 xchg dword ptr [ebp+535], eax
004D31CE 8B95 22040000 mov edx, dword ptr [ebp+422]
004D31D4 8B85 2D050000 mov eax, dword ptr [ebp+52D]
004D31DA 2BD0 sub edx, eax
004D31DC 74 79 je short 004D3257
004D31DE 8BC2 mov eax, edx
004D31E0 C1E8 10 shr eax, 10
004D31E3 33DB xor ebx, ebx
004D31E5 8BB5 39050000 mov esi, dword ptr [ebp+539]
004D31EB 03B5 22040000 add esi, dword ptr [ebp+422]
004D31F1 833E 00 cmp dword ptr [esi], 0
004D31F4 74 61 je short 004D3257
004D31F6 8B4E 04 mov ecx, dword ptr [esi+4]
004D31F9 83E9 08 sub ecx, 8
004D31FC D1E9 shr ecx, 1
004D31FE 8B3E mov edi, dword ptr [esi]
004D3200 03BD 22040000 add edi, dword ptr [ebp+422]
004D3206 83C6 08 add esi, 8
004D3209 66:8B1E mov bx, word ptr [esi]
004D320C C1EB 0C shr ebx, 0C
004D320F 83FB 01 cmp ebx, 1
004D3212 74 0C je short 004D3220
004D3214 83FB 02 cmp ebx, 2
004D3217 74 16 je short 004D322F
004D3219 83FB 03 cmp ebx, 3
004D321C 74 20 je short 004D323E
004D321E EB 2C jmp short 004D324C
004D3220 66:8B1E mov bx, word ptr [esi]
004D3223 81E3 FF0F0000 and ebx, 0FFF
004D3229 66:01041F add word ptr [edi+ebx], ax
004D322D EB 1D jmp short 004D324C
004D322F 66:8B1E mov bx, word ptr [esi]
004D3232 81E3 FF0F0000 and ebx, 0FFF
004D3238 66:01141F add word ptr [edi+ebx], dx
004D323C EB 0E jmp short 004D324C
004D323E 66:8B1E mov bx, word ptr [esi]
004D3241 81E3 FF0F0000 and ebx, 0FFF
004D3247 01141F add dword ptr [edi+ebx], edx
004D324A EB 00 jmp short 004D324C
004D324C 66:830E FF or word ptr [esi], 0FFFF
004D3250 83C6 02 add esi, 2
004D3253 ^ E2 B4 loopd short 004D3209
004D3255 ^ EB 9A jmp short 004D31F1
004D3257 8B95 22040000 mov edx, dword ptr [ebp+422]
004D325D 8BB5 41050000 mov esi, dword ptr [ebp+541]
004D3263 0BF6 or esi, esi
004D3265 74 11 je short 004D3278
004D3267 03F2 add esi, edx
004D3269 AD lods dword ptr [esi]
004D326A 0BC0 or eax, eax
004D326C 74 0A je short 004D3278
004D326E 03C2 add eax, edx
004D3270 8BF8 mov edi, eax
004D3272 66:AD lods word ptr [esi]
004D3274 66:AB stos word ptr es:[edi]
004D3276 ^ EB F1 jmp short 004D3269
004D3278 BE 398B0C00 mov esi, 0C8B39
004D327D 8B95 22040000 mov edx, dword ptr [ebp+422]
004D3283 03F2 add esi, edx
004D3285 8B46 0C mov eax, dword ptr [esi+C]
004D3288 85C0 test eax, eax
004D328A 0F84 0A010000 je 004D339A
004D3290 03C2 add eax, edx
004D3292 8BD8 mov ebx, eax
004D3294 50 push eax
004D3295 FF95 4D0F0000 call dword ptr [ebp+F4D]
004D329B 85C0 test eax, eax
004D329D 75 07 jnz short 004D32A6
004D329F 53 push ebx
004D32A0 FF95 510F0000 call dword ptr [ebp+F51]
004D32A6 8985 45050000 mov dword ptr [ebp+545], eax
004D32AC C785 49050000 0>mov dword ptr [ebp+549], 0
004D32B6 8B95 22040000 mov edx, dword ptr [ebp+422]
004D32BC 8B06 mov eax, dword ptr [esi]
004D32BE 85C0 test eax, eax
004D32C0 75 03 jnz short 004D32C5
004D32C2 8B46 10 mov eax, dword ptr [esi+10]
004D32C5 03C2 add eax, edx
004D32C7 0385 49050000 add eax, dword ptr [ebp+549]
004D32CD 8B18 mov ebx, dword ptr [eax]
004D32CF 8B7E 10 mov edi, dword ptr [esi+10]
004D32D2 03FA add edi, edx
004D32D4 03BD 49050000 add edi, dword ptr [ebp+549]
004D32DA 85DB test ebx, ebx
004D32DC 0F84 A2000000 je 004D3384
004D32E2 F7C3 00000080 test ebx, 80000000
004D32E8 75 04 jnz short 004D32EE
004D32EA 03DA add ebx, edx
004D32EC 43 inc ebx
004D32ED 43 inc ebx
004D32EE 53 push ebx
004D32EF 81E3 FFFFFF7F and ebx, 7FFFFFFF
004D32F5 53 push ebx
004D32F6 FFB5 45050000 push dword ptr [ebp+545]
004D32FC FF95 490F0000 call dword ptr [ebp+F49]
004D3302 85C0 test eax, eax
004D3304 5B pop ebx
004D3305 75 6F jnz short 004D3376
004D3307 F7C3 00000080 test ebx, 80000000
004D330D 75 19 jnz short 004D3328
004D330F 57 push edi
004D3310 8B46 0C mov eax, dword ptr [esi+C]
004D3313 0385 22040000 add eax, dword ptr [ebp+422]
004D3319 50 push eax
004D331A 53 push ebx
004D331B 8D85 75040000 lea eax, dword ptr [ebp+475]
004D3321 50 push eax
004D3322 57 push edi
004D3323 E9 98000000 jmp 004D33C0
004D3328 81E3 FFFFFF7F and ebx, 7FFFFFFF
004D332E 8B85 26040000 mov eax, dword ptr [ebp+426]
004D3334 3985 45050000 cmp dword ptr [ebp+545], eax
004D333A 75 24 jnz short 004D3360
004D333C 57 push edi
004D333D 8BD3 mov edx, ebx
004D333F 4A dec edx
004D3340 C1E2 02 shl edx, 2
004D3343 8B9D 45050000 mov ebx, dword ptr [ebp+545]
004D3349 8B7B 3C mov edi, dword ptr [ebx+3C]
004D334C 8B7C3B 78 mov edi, dword ptr [ebx+edi+78]
004D3350 035C3B 1C add ebx, dword ptr [ebx+edi+1C]
004D3354 8B0413 mov eax, dword ptr [ebx+edx]
004D3357 0385 45050000 add eax, dword ptr [ebp+545]
004D335D 5F pop edi
004D335E EB 16 jmp short 004D3376
004D3360 57 push edi
004D3361 8B46 0C mov eax, dword ptr [esi+C]
004D3364 0385 22040000 add eax, dword ptr [ebp+422]
004D336A 50 push eax
004D336B 53 push ebx
004D336C 8D85 C6040000 lea eax, dword ptr [ebp+4C6]
004D3372 50 push eax
004D3373 57 push edi
004D3374 EB 4A jmp short 004D33C0
004D3376 8907 mov dword ptr [edi], eax
004D3378 8385 49050000 0>add dword ptr [ebp+549], 4
004D337F ^ E9 32FFFFFF jmp 004D32B6
004D3384 8906 mov dword ptr [esi], eax
004D3386 8946 0C mov dword ptr [esi+C], eax
004D3389 8946 10 mov dword ptr [esi+10], eax
004D338C 83C6 14 add esi, 14
004D338F 8B95 22040000 mov edx, dword ptr [ebp+422]
004D3395 ^ E9 EBFEFFFF jmp 004D3285
004D339A B8 0E630C00 mov eax, 0C630E
004D339F 50 push eax
004D33A0 0385 22040000 add eax, dword ptr [ebp+422]
004D33A6 59 pop ecx
004D33A7 0BC9 or ecx, ecx
004D33A9 8985 A8030000 mov dword ptr [ebp+3A8], eax
004D33AF 61 popad
004D33B0 75 08 jnz short 004D33BA
004D33B2 B8 01000000 mov eax, 1
004D33B7 C2 0C00 retn 0C
004D33BA 68 00000000 push 0
004D33BF C3 retn
[课程]Linux pwn 探索篇!