push edi
008C823D 51 push ecx
008C823E 53 push ebx
008C823F E8 F60B0000 call SwishMax.008C8E3A //此处应该是这个壳最让人头疼的地方,F8会跳飞,F7会跳到别的地方,总之一旦到了此处很难绝处逢生,所以要在上面找一个没有
实现的跳转,让他
实现跳转(我朋友和我说的)
008C821D /74 2E je short SwishMax.008C824D //就是这里了,把je short SwishMax.008C824D改成jmp short SwishMax.008C824D,让跳转实现
008C821F |60 pushad
008C8220 |8B9D 39974000 mov ebx,dword ptr ss:[ebp+409739]
008C8226 |8B8D 3D974000 mov ecx,dword ptr ss:[ebp+40973D]
008C822C |8B95 E6904000 mov edx,dword ptr ss:[ebp+4090E6]
008C824D 57 push edi //我们这下来到了这,已经接近OEP了
008C824E AD lods dword ptr ds:[esi]
008C824F 85C0 test eax,eax
008C8251 0F84 9B000000 je SwishMax.008C82F2
一路F8
008C8299 FF95 DA904000 call dword ptr ss:[ebp+4090DA]
008C829F 64:67:8F06 0000 pop dword ptr fs:[0]
008C82A5 83C4 04 add esp,4
008C82A8 85C0 test eax,eax
008C82AA 74 07 je short SwishMax.008C82B3
008C82AC 8BC8 mov ecx,eax
008C82AE 5E pop esi
008C82AF 5F pop edi
008C82B0 ^ EB 9B jmp short SwishMax.008C824D //往回跳
008C82B2 B9 E8000000 mov ecx,0E8 //在此处F4
008C854F 9D popfd
008C8550 50 push eax //胜利就在眼前了哈
008C8551 68 61466600 push SwishMax.00664661
008C8556 C2 0400 retn 4 //F7
00664661 55 push ebp //梦寐以求的OEP哈哈
00664662 8BEC mov ebp,esp
00664664 6A FF push -1
00664666 68 70DA7600 push SwishMax.0076DA70
0066466B 68 94D36600 push SwishMax.0066D394
00664670 64:A1 00000000 mov eax,dword ptr fs:[0]
脱壳到这就算完成了,下面就是修复,在好友的说明下已经弄好了,可是不同的软件可能修复会不一样,所以这里就不说了