VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 989|回复: 7

[交流] 想把dec改成sub ,,,0x64这样的,请问怎么改

[复制链接]
54_avatar_middle
在线会员 发表于 2017-1-2 18:01:39 | 显示全部楼层 |阅读模式
49_avatar_middle
在线会员 发表于 2017-1-2 21:50:27 | 显示全部楼层
为什么要改呢,dec执行效率比sub高很多啊~如果要改的话也是可以的!
49_avatar_middle
在线会员 发表于 2017-1-2 21:53:43 | 显示全部楼层
根据你的例子可以这么改:
dec dword prt ds:[edi+0x58]
<====相当于====》
push eax
mov eax,dword prt ds:[edi+0x58]
sub eax,1
pop eax
54_avatar_middle
ico_lz  楼主| 发表于 2017-1-3 19:55:30 | 显示全部楼层
戰Mars神 发表于 2017-1-2 21:53
根据你的例子可以这么改:
dec dword prt ds:[edi+0x58]

谢谢你的回答,我的意思是要把减一改成减更多,这样计数倒计时就快了,现在的问题是,改了以后机器码长度不一样了,把下面的代码也覆盖了,然后程序就崩溃了
49_avatar_middle
在线会员 发表于 2017-1-3 20:06:44 | 显示全部楼层
846443408 发表于 2017-1-3 19:55
谢谢你的回答,我的意思是要把减一改成减更多,这样计数倒计时就快了,现在的问题是,改了以后机器码长度 ...

大哥啊~~你这是要写外挂呀~~~
很简单呀!patch一块内存空间,你在原来的指令处jmp 到一块空的可执行地址空间,然后再填充我给你的那些指令,这时你想sub多少都可以,最后在jmp回来继续执行~~~这样就不受指令长度的限制了。
54_avatar_middle
ico_lz  楼主| 发表于 2017-1-3 20:27:59 | 显示全部楼层
本帖最后由 846443408 于 2017-1-4 11:09 编辑
戰Mars神 发表于 2017-1-3 20:06
大哥啊~~你这是要写外挂呀~~~
很简单呀!patch一块内存空间,你在原来的指令处jmp 到一块空的可执行地址 ...


解决了,自己分配内存,在写内存就解决了
QQ图片20170103201844.png
QQ图片20170103202112.png
QQ图片20170103202150.png
75_avatar_middle
在线会员 发表于 2017-12-17 19:52:13 | 显示全部楼层
zzzzzzzzzzzzzzzzzzzzzzzzzzz
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-5-21 13:44

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表