最初由 island 发布
oep 由peid 的插件找出
用pdump32 dump (full)
为啥不成功哪?
........
PEid找到应该是假的
用OD载入
0040112C h> 8925 A8114000 mov dword ptr ds:[4011A8],esp
00401132 BF 00204200 mov edi,http-.00422000
00401137 31C0 xor eax,eax
00401139 B9 00204200 mov ecx,http-.00422000
0040113E 29F9 sub ecx,edi
00401140 FC cld
00401141 F3:AA rep stos byte ptr es:[edi]
00401143 9B wait
00401144 DBE3 finit
00401146 50 push eax
00401147 9B wait
00401148 D93C24 fstcw word ptr ss:[esp]
0040114B 9B wait
0040114C 800C24 3F or byte ptr ss:[esp],3F
00401150 D92C24 fldcw word ptr ss:[esp]
00401153 58 pop eax
00401154 BE 80124000 mov esi,http-.00401280
00401159 BF 88124000 mov edi,http-.00401288
0040115E 39F7 cmp edi,esi
00401160 76 06 jbe short http-.00401168
00401162 FC cld
00401163 AD lods dword ptr ds:[esi]
00401164 FFD0 call eax
00401166 ^ EB F6 jmp short http-.0040115E
00401168 6A 01 push 1
0040116A E8 71F10100 call http-.004202E0
0040116F 50 push eax
00401170 6A 00 push 0
00401172 6A 00 push 0
00401174 FF15 04114000 call dword ptr ds:[<&KERNEL32.GetMod>; kernel32.GetModuleHandleA
0040117A A3 AC114000 mov dword ptr ds:[4011AC],eax
0040117F 50 push eax
00401180 E8 C9DE0100 call http-.0041F04E;F7跟进到
{
0041F04E 55 push ebp
0041F04F 89E5 mov ebp,esp
0041F051 56 push esi
0041F052 53 push ebx
0041F053 8B45 08 mov eax,dword ptr ss:[ebp+8]
0041F056 8B75 10 mov esi,dword ptr ss:[ebp+10]
0041F059 A3 70664200 mov dword ptr ds:[426670],eax
0041F05E 8935 606C4200 mov dword ptr ds:[426C60],esi
0041F064 E8 870E0000 call http-.0041FEF0
0041F069 89C3 mov ebx,eax
0041F06B 81E3 00000080 and ebx,80000000
0041F071 891D DC6A4200 mov dword ptr ds:[426ADC],ebx
0041F077 75 73 jnz short http-.0041F0EC
0041F079 C705 6C204200 FF000>mov dword ptr ds:[42206C],0FF
0041F083 68 6C204200 push http-.0042206C
0041F088 68 70204200 push http-.00422070
0041F08D E8 DE110000 call http-.00420270
0041F092 803D 6C204200 00 cmp byte ptr ds:[42206C],0
0041F099 74 22 je short http-.0041F0BD
0041F09B 68 2BF04100 push http-.0041F02B ; ASCII "SYSTEM"
0041F0A0 68 70204200 push http-.00422070
0041F0A5 E8 6232FEFF call http-.0040230C
0041F0AA 85C0 test eax,eax
0041F0AC 75 0F jnz short http-.0041F0BD
0041F0AE 68 32F04100 push http-.0041F032 ; ASCII " service"
0041F0B3 56 push esi
0041F0B4 E8 5332FEFF call http-.0040230C
0041F0B9 85C0 test eax,eax
0041F0BB 74 02 je short http-.0041F0BF
0041F0BD B3 01 mov bl,1
0041F0BF 84DB test bl,bl
0041F0C1 74 29 je short http-.0041F0EC
0041F0C3 C705 FC034200 01000>mov dword ptr ds:[4203FC],1
0041F0CD 68 E81F4200 push http-.00421FE8
0041F0D2 E8 B9110000 call http-.00420290
0041F0D7 85C0 test eax,eax
0041F0D9 74 04 je short http-.0041F0DF
0041F0DB 31C0 xor eax,eax
0041F0DD EB 14 jmp short http-.0041F0F3
0041F0DF 68 3BF04100 push http-.0041F03B ; ASCII "Run as application"
0041F0E4 E8 4F2CFEFF call http-.00401D38
0041F0E9 83C4 04 add esp,4
0041F0EC 6A 00 push 0
0041F0EE E8 16000000 call http-.0041F109;F7进去后就可以DUMP了,Dump出来之后可以在本机运行,应该不可跨平台,不知道heXer老大是怎么搞的:)
{
0041F109 55 push ebp;用LordPE,或者OD本身的脱壳插件Dump之,可以正常运行
0041F10A 89E5 mov ebp,esp
0041F10C 83EC 1C sub esp,1C
0041F10F 57 push edi
0041F110 56 push esi
0041F111 53 push ebx
0041F112 68 FCF04100 push http-.0041F0FC ; ASCII ".exe"
0041F117 8B1D 606C4200 mov ebx,dword ptr ds:[426C60]
0041F11D 53 push ebx
0041F11E E8 E931FEFF call http-.0040230C
0041F123 89C6 mov esi,eax
0041F125 85F6 test esi,esi
0041F127 74 19 je short http-.0041F142
}
}