目标:脱掉外层的 fsg 其实不顶用,有几个函数被混淆了,找出来他们还原
比如其中某一个函数
0040332D $ 55 push ebp 0040332E . 8BEC mov ebp, esp 00403330 . 56 push esi 00403331 . 57 push edi 00403332 . 53 push ebx 00403333 . EB 39 jmp short unpacked.0040336E 00403335 B8 db B8 00403336 .^ 78 ED js short unpacked.00403325 00403338 > E8 01000000 call unpacked.0040333E 0040333D 3B db 3B ; CHAR ';' 0040333E . 8D6424 04 lea esp, [esp+4] 00403342 . 97 xchg eax, edi 00403343 . F2: prefix repne: ; Superfluous prefix 00403344 . EB 02 jmp short unpacked.00403348 00403346 A6 db A6 00403347 83 db 83 00403348 > E9 B6170000 jmp unpacked.00404B03 0040334D BD db BD 0040334E 16 db 16 0040334F BB db BB 00403350 > F3: prefix rep: ; Superfluous prefix 00403351 . E8 01000000 call unpacked.00403357 00403356 . A7 cmps 00403357 $ 8D6424 04 lea esp, [esp+4]
0040332D $ 55 push ebp 0040332E . 8BEC mov ebp, esp 00403330 . 56 push esi 00403331 . 57 push edi 00403332 . 53 push ebx 00403333 . 68 00001000 push 100000 00403338 . 68 21AF4000 push 0040AF21 0040333D . E8 E0F7FFFF call 00402B22 00403342 . 2BC0 sub eax, eax 00403344 . 8905 5DAF4000 mov [40AF5D], eax 0040334A . 8905 71AF4000 mov [40AF71], eax 00403350 . C7C6 A1AE4000 mov esi, 0040AEA1 00403356 . FFB5 08000000 push dword ptr [ebp+8] 0040335C . E8 1BF7FFFF call 00402A7C 00403361 . 40 inc eax 00403362 . 0F84 C10B0000 je 00403F29

不要贴中间结果,不是重点,要可以运行的bin。