006198F6 > 9C pushfd 用OD打开停到这边 单步跟综往下
006198F7 60 pushad
006198F8 E8 00000000 call 006198FD
006198FD 5D pop ebp
006198FE B8 B1854000 mov eax, 004085B1
00619903 2D AA854000 sub eax, 004085AA
00619908 2BE8 sub ebp, eax
0061990A 8DB5 36FBFFFF lea esi, dword ptr [ebp-4CA]
00619910 8B06 mov eax, dword ptr [esi]
00619912 83F8 00 cmp eax, 0
00619915 74 11 je short 00619928
中间代码省略
00619B0A FF95 62FBFFFF call dword ptr [ebp-49E]
00619B10 5A pop edx
00619B11 5B pop ebx
00619B12 59 pop ecx
00619B13 5E pop esi
00619B14 83C3 0C add ebx, 0C
00619B17 ^ E2 E1 loopd short 00619AFA
00619B19 61 popad
00619B1A 9D popfd
00619B1B - E9 D1C3F0FF jmp 00525EF1 应该是到OEP的跳转
00525EF1 . 6A 60 push 60 在这 用LOADPE 完整转存
00525EF3 . 68 68875800 push 00588768
00525EF8 . E8 03540000 call 0052B300
00525EFD . BF 94000000 mov edi, 94
00525F02 . 8BC7 mov eax, edi
00525F04 . E8 B70F0000 call 00526EC0
00525F09 . 8965 E8 mov dword ptr [ebp-18], esp
00525F0C . 8BF4 mov esi, esp
00525F0E . 893E mov dword ptr [esi], edi
00525F10 . 56 push esi ; /pVersionInformation
00525F11 . FF15 D8035700 call dword ptr [5703D8] ; \GetVersionExA
00525F17 . 8B4E 10 mov ecx, dword ptr [esi+10]
00525F1A . 890D 28C35E00 mov dword ptr [5EC328], ecx
00525F20 . 8B46 04 mov eax, dword ptr [esi+4]
00525F23 . A3 34C35E00 mov dword ptr [5EC334], eax
00525F28 . 8B56 08 mov edx, dword ptr [esi+8]
00525F2B . 8915 38C35E00 mov dword ptr [5EC338], edx
00525F31 . 8B76 0C mov esi, dword ptr [esi+C]
00525F34 . 81E6 FF7F0000 and esi, 7FFF
在00525EF1 用LOADPE完整转存,然后打开ImportREC选择该软件进程 在OEP地址输入25ef1 点自动查找IAT, 然后提示找到,在点获取输入表,没有发现无效指针,在点修复转存文件,选择LOADPE刚才转存的文件,提示成功。但还是无法运行,我用OD打开脱过壳的文件停在00425EF1这个地方,应该是停到00525EF1这个地方,不知道怎么回事,一个朋友帮我把这个文件脱了,可以运行,我比较了一下,他脱的用OD打开是停在00525EF1,他说也是光脱壳修复了IAT,请教一下,我操作的地方哪一个有问题,会出现这个问题,谢谢。
文件下载地址http://61.163.195.29:67/nsa.rar
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课