逆向仙剑5

来源:互联网 发布:网络语qcQS 编辑:程序博客网 时间:2024/04/30 03:29

逆向仙剑5,准备直接脱壳,有很多反调试,自己手动弄一遍估计要累死,总是一不留神就让程序跑起来了。

后来直接附加调试,把激活页面跳过了,但是点游戏的时候,却退出了,程序跟壳之间有交互,

在跳过激活的最后一处有一次验证,这个验证CALL进入到壳的代码,是壳把验证的结果之前就保存好了,

然后通过壳的的代码得出验证结果,查看结果,显示该显示的内容。

 

壳的CALL

03C43F4C  0266D8E0  Pal5.0266D8E003C43F50  0266DB20  Pal5.0266DB2003C43F54  0266FB90  Pal5.0266FB9003C43F58  0266E0D0  Pal5.0266E0D003C43F5C  0266E3D0  Pal5.0266E3D003C43F60  0266E690  Pal5.0266E69003C43F64  0266E7F0  Pal5.0266E7F003C43F68  0266EB00  Pal5.0266EB0003C43F6C  0266ED70  Pal5.0266ED7003C43F70  0266F090  Pal5.0266F09003C43F74  0266F310  Pal5.0266F31003C43F78  0266F510  Pal5.0266F51003C43F7C  0266F630  Pal5.0266F63003C43F80  0266D680  Pal5.0266D68003C43F84  00600000  Pal5.0060000003C43F88  0000000803C43F8C  0000008C03C43F90  0266D570  Pal5.0266D57003C43F94  0266D4B0  Pal5.0266D4B003C43F98  0266D2C0  Pal5.0266D2C003C43F9C  0266D3A0  Pal5.0266D3A003C43FA0  0266D020  Pal5.0266D02003C43FA4  0266CCA0  Pal5.0266CCA003C43FA8  0266CC00  Pal5.0266CC0003C43FAC  0266C980  Pal5.0266C98003C43FB0  0266C6A0  Pal5.0266C6A003C43FB4  0266C600  Pal5.0266C60003C43FB8  0266C3A0  Pal5.0266C3A003C43FBC  0266C2C0  Pal5.0266C2C003C43FC0  0266BFE0  Pal5.0266BFE003C43FC4  0266BBD0  Pal5.0266BBD003C43FC8  0266FFA0  Pal5.0266FFA003C43FCC  0266B9B0  Pal5.0266B9B003C43FD0  0266B6D0  Pal5.0266B6D003C43FD4  0266B400  Pal5.0266B400

 

如何才能让游戏正常启动,猜测启动游戏的代码在壳里面,猜测启动游戏的代码没加密,但是在启动的时候执行了壳的代码,让最后达不到预期效果。

以下是启动游戏代码

06AF1EB0    8B4424 04       mov eax,dword ptr ss:[esp+0x4]06AF1EB4    8B48 20         mov ecx,dword ptr ds:[eax+0x20]06AF1EB7    51              push ecx06AF1EB8    FF15 3874B206   call dword ptr ds:[<&USER32.GetParent>]  ; user32.GetParent06AF1EBE    50              push eax06AF1EBF    E8 38F80000     call paul.06B016FC06AF1EC4    8378 78 03      cmp dword ptr ds:[eax+0x78],0x306AF1EC8    75 07           jnz short paul.06AF1ED106AF1ECA    C740 78 0000000>mov dword ptr ds:[eax+0x78],0x006AF1ED1    8B10            mov edx,dword ptr ds:[eax]06AF1ED3    8BC8            mov ecx,eax06AF1ED5    8B82 50010000   mov eax,dword ptr ds:[edx+0x150]06AF1EDB    FFE0            jmp eax