首页
社区
课程
招聘
[旧帖] [求助]关于hook D3D时,游戏崩溃,求高手帮助 0.00雪花
发表于: 2014-11-29 16:39 2359

[旧帖] [求助]关于hook D3D时,游戏崩溃,求高手帮助 0.00雪花

2014-11-29 16:39
2359
在hook D3D 中的某个函数,一hook游戏就崩溃,以下为本人试过的方法,还请高手指点一下
1、不插dll 写好跳转后的代码 , 直接hook,
在目标程序中申请内存,写入下面代码
跳转后汇编代码:
01480000    60              pushad
01480001    55              push    ebp
01480002    8BEC            mov     ebp, esp
01480027    68 8C000000     push    10
0148002C    B8 FF101F77     mov     eax, 771F10FF  (这个是Sleep的地址)
01480031    FFD0            call    eax
01480050    8BE5            mov     esp, ebp
01480052    5D              pop     ebp
01480053    61              popad
01480054    8BFF            mov     edi, edi      这里是源地址的5个字节的代码 8BFF558BEC
01480056    55              push    ebp
01480057    8BEC            mov     ebp, esp
0148007A    68 69A0FC07     push    源地址+5
0148007F    C3              retn
跳转计算工式:跳转地址=目地地址-源地址-5  (用OD 查看了汇编,跳转是正常的)
直接在源地址写 E9 跳转地址
游戏崩溃

但是我用别人直接写好Dll的Hook, 他不是申请内存,是插入dll后,hook源地址直接跳转到自己Dll的函数地址,这样却没问题,而且我也试了,把他跳转后的那段汇编代码,改成我以上所写的代码,也可以正常工作,难道这种申请内存的方式不行?

跳转地址,和跳回地址我都验证了,没有问题,这个sleep函数地址我也OD中查看了,没有问题
但是我的那种方法一试就会游戏崩溃,还请高手指点一下

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 328
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
可能是你这里导致 栈崩溃了  mov     esp, ebp
2014-12-11 15:47
0
游客
登录 | 注册 方可回帖
返回
//