首先用OD载入被脱文件
来到
00804D20 1> $ 60 pushad
00804D21 . BE 00B07100 mov esi,1.0071B000
00804D26 . 8DBE 0060CEFF lea edi,dword ptr ds:[esi+FFCE6000]
00804D2C . 57 push edi
00804D2D . 83CD FF or ebp,FFFFFFFF
00804D30 . EB 10 jmp short 1.00804D42
00804D32 90 nop
00804D33 90 nop
00804D34 90 nop
00804D35 90 nop
00804D36 90 nop
00804D37 90 nop
00804D38 > 8A06 mov al,byte ptr ds:[esi]
00804D3A . 46 inc esi
00804D3B . 8807 mov byte ptr ds:[edi],al
00804D3D . 47 inc edi
00804D3E > 01DB add ebx,ebx
00804D40 . 75 07 jnz short 1.00804D49
00804D42 > 8B1E mov ebx,dword ptr ds:[esi]
00804D44 . 83EE FC sub esi,-4
00804D47 . 11DB adc ebx,ebx
00804D49 >^ 72 ED jb short 1.00804D38
00804D4B . B8 01000000 mov eax,1
00804D50 > 01DB add ebx,ebx
00804D52 . 75 07 jnz short 1.00804D5B
00804D54 . 8B1E mov ebx,dword ptr ds:[esi]
00804D56 . 83EE FC sub esi,-4
00804D59 . 11DB adc ebx,ebx
00804D5B > 11C0 adc eax,eax
00804D5D . 01DB add ebx,ebx
00804D5F . 73 0B jnb short 1.00804D6C
00804D61 . 75 19 jnz short 1.00804D7C
00804D63 . 8B1E mov ebx,dword ptr ds:[esi]
00804D65 . 83EE FC sub esi,-4
00804D68 . 11DB adc ebx,ebx
00804D6A . 72 10 jb short 1.00804D7C
00804D6C > 48 dec eax
00804D6D . 01DB add ebx,ebx
00804D6F . 75 07 jnz short 1.00804D78
00804D71 . 8B1E mov ebx,dword ptr ds:[esi]
00804D73 . 83EE FC sub esi,-4
00804D76 . 11DB adc ebx,ebx
00804D78 > 11C0 adc eax,eax
00804D7A .^ EB D4 jmp short 1.00804D50
00804D7C > 31C9 xor ecx,ecx
00804D7E . 83E8 03 sub eax,3
00804D81 . 72 11 jb short 1.00804D94
00804D83 . C1E0 08 shl eax,8
00804D86 . 8A06 mov al,byte ptr ds:[esi]
00804D88 . 46 inc esi
00804D89 . 83F0 FF xor eax,FFFFFFFF
00804D8C . 74 78 je short 1.00804E06
00804D8E . D1F8 sar eax,1
00804D90 . 89C5 mov ebp,eax
00804D92 . EB 0B jmp short 1.00804D9F
00804D94 > 01DB add ebx,ebx
00804D96 . 75 07 jnz short 1.00804D9F
00804D98 . 8B1E mov ebx,dword ptr ds:[esi]
00804D9A . 83EE FC sub esi,-4
00804D9D . 11DB adc ebx,ebx
00804D9F > 11C9 adc ecx,ecx
00804DA1 . 01DB add ebx,ebx
00804DA3 . 75 07 jnz short 1.00804DAC
00804DA5 . 8B1E mov ebx,dword ptr ds:[esi]
00804DA7 . 83EE FC sub esi,-4
00804DAA . 11DB adc ebx,ebx
00804DAC > 11C9 adc ecx,ecx
00804DAE . 75 20 jnz short 1.00804DD0
00804DB0 . 41 inc ecx
00804DB1 > 01DB add ebx,ebx
00804DB3 . 75 07 jnz short 1.00804DBC
00804DB5 . 8B1E mov ebx,dword ptr ds:[esi]
00804DB7 . 83EE FC sub esi,-4
00804DBA . 11DB adc ebx,ebx
00804DBC > 11C9 adc ecx,ecx
00804DBE . 01DB add ebx,ebx
00804DC0 .^ 73 EF jnb short 1.00804DB1
00804DC2 . 75 09 jnz short 1.00804DCD
00804DC4 . 8B1E mov ebx,dword ptr ds:[esi]
00804DC6 . 83EE FC sub esi,-4
00804DC9 . 11DB adc ebx,ebx
00804DCB .^ 73 E4 jnb short 1.00804DB1
00804DCD > 83C1 02 add ecx,2
00804DD0 > 81FD 00FBFFFF cmp ebp,-500
00804DD6 . 83D1 01 adc ecx,1
00804DD9 . 8D142F lea edx,dword ptr ds:[edi+ebp]
00804DDC . 83FD FC cmp ebp,-4
00804DDF . 76 0F jbe short 1.00804DF0
00804DE1 > 8A02 mov al,byte ptr ds:[edx]
00804DE3 . 42 inc edx
00804DE4 . 8807 mov byte ptr ds:[edi],al
00804DE6 . 47 inc edi
00804DE7 . 49 dec ecx
00804DE8 .^ 75 F7 jnz short 1.00804DE1
00804DEA .^ E9 4FFFFFFF jmp 1.00804D3E
00804DEF 90 nop
00804DF0 > 8B02 mov eax,dword ptr ds:[edx]
00804DF2 . 83C2 04 add edx,4
00804DF5 . 8907 mov dword ptr ds:[edi],eax
00804DF7 . 83C7 04 add edi,4
00804DFA . 83E9 04 sub ecx,4
00804DFD .^ 77 F1 ja short 1.00804DF0
00804DFF . 01CF add edi,ecx
00804E01 .^ E9 38FFFFFF jmp 1.00804D3E
00804E06 > 5E pop esi
00804E07 . 89F7 mov edi,esi
00804E09 . B9 E09B0000 mov ecx,9BE0
00804E0E > 8A07 mov al,byte ptr ds:[edi]
00804E10 . 47 inc edi
00804E11 . 2C E8 sub al,0E8
00804E13 > 3C 01 cmp al,1
00804E15 .^ 77 F7 ja short 1.00804E0E
00804E17 . 803F 22 cmp byte ptr ds:[edi],22
00804E1A .^ 75 F2 jnz short 1.00804E0E
00804E1C . 8B07 mov eax,dword ptr ds:[edi]
00804E1E . 8A5F 04 mov bl,byte ptr ds:[edi+4]
00804E21 . 66:C1E8 08 shr ax,8
00804E25 . C1C0 10 rol eax,10
00804E28 . 86C4 xchg ah,al
00804E2A . 29F8 sub eax,edi
00804E2C . 80EB E8 sub bl,0E8
00804E2F . 01F0 add eax,esi
00804E31 . 8907 mov dword ptr ds:[edi],eax
00804E33 . 83C7 05 add edi,5
00804E36 . 89D8 mov eax,ebx
00804E38 .^ E2 D9 loopd short 1.00804E13
00804E3A . 8DBE 00004000 lea edi,dword ptr ds:[esi+400000]
00804E40 > 8B07 mov eax,dword ptr ds:[edi]
00804E42 . 09C0 or eax,eax
00804E44 . 74 45 je short 1.00804E8B
00804E46 . 8B5F 04 mov ebx,dword ptr ds:[edi+4]
00804E49 . 8D8430 70764000 lea eax,dword ptr ds:[eax+esi+407670]
00804E50 . 01F3 add ebx,esi
00804E52 . 50 push eax
00804E53 . 83C7 08 add edi,8
00804E56 . FF96 B0774000 call dword ptr ds:[esi+4077B0]
00804E5C . 95 xchg eax,ebp
00804E5D > 8A07 mov al,byte ptr ds:[edi]
00804E5F . 47 inc edi
00804E60 . 08C0 or al,al
00804E62 .^ 74 DC je short 1.00804E40
00804E64 . 89F9 mov ecx,edi
00804E66 . 79 07 jns short 1.00804E6F
00804E68 . 0FB707 movzx eax,word ptr ds:[edi]
00804E6B . 47 inc edi
00804E6C . 50 push eax
00804E6D . 47 inc edi
00804E6E B9 db B9
00804E6F . 57 push edi
00804E70 . 48 dec eax
00804E71 . F2:AE repne scas byte ptr es:[edi]
00804E73 . 55 push ebp
00804E74 . FF96 B4774000 call dword ptr ds:[esi+4077B4]
00804E7A . 09C0 or eax,eax
00804E7C . 74 07 je short 1.00804E85
00804E7E . 8903 mov dword ptr ds:[ebx],eax
00804E80 . 83C3 04 add ebx,4
00804E83 .^ EB D8 jmp short 1.00804E5D
00804E85 > FF96 B8774000 call dword ptr ds:[esi+4077B8]
00804E8B > 61 popad
00804E8C .- E9 E3D8C8FF jmp 1.00492774 在这里应是壳的出口
按F8来到
00492774 55 push ebp 在此脱之 保存文件
00492775 8BEC mov ebp,esp
00492777 6A FF push -1
00492779 68 18D05C00 push 1.005CD018
0049277E 68 D0024900 push 1.004902D0
00492783 64:A1 00000000 mov eax,dword ptr fs:[0]
00492789 50 push eax
0049278A 64:8925 00000000 mov dword ptr fs:[0],esp
00492791 83EC 58 sub esp,58
00492794 53 push ebx
00492795 56 push esi
00492796 57 push edi
00492797 8965 E8 mov dword ptr ss:[ebp-18],esp
0049279A FF15 14177600 call dword ptr ds:[761714] ; kernel32.GetVersion
004927A0 33D2 xor edx,edx
004927A2 8AD4 mov dl,ah
004927A4 8915 4CC67500 mov dword ptr ds:[75C64C],edx
004927AA 8BC8 mov ecx,eax
004927AC 81E1 FF000000 and ecx,0FF
004927B2 890D 48C67500 mov dword ptr ds:[75C648],ecx
004927B8 C1E1 08 shl ecx,8
004927BB 03CA add ecx,edx
004927BD 890D 44C67500 mov dword ptr ds:[75C644],ecx
004927C3 C1E8 10 shr eax,10
004927C6 A3 40C67500 mov dword ptr ds:[75C640],eax
004927CB 6A 01 push 1
004927CD E8 3C4A0000 call 1.0049720E
004927D2 59 pop ecx
但是在运行文件时,确提示不是有效的WIN32应用程序
为什么??????????????????
请指点
[培训]内核驱动高级班,冲击BAT一流互联网大厂工
作,每周日13:00-18:00直播授课