开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 378|回复: 6
收起左侧

[完成] 用易语言实现CE功能

 关闭 [复制链接]
结帖率:67% (2/3)
发表于 2024-10-30 22:30:14 | 显示全部楼层 |阅读模式   河北省沧州市
15精币
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
alloc(newmem,2048)
alloc(Y,100)
label(returnhere)
label(originalcode)
label(exit)
registersymbol(Y)
newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
push ebp
lea ebp,[eax+000002A0]
mov [Y],ebp
pop ebp
fld dword ptr [eax+000002A0]

exit:
jmp returnhere

"client.exe"+57B24E:
jmp newmem
nop
returnhere:




[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
"client.exe"+57B24E:
fld dword ptr [eax+000002A0]
//Alt: db D9 80 A0 02 00 00

获取Y的值(地址)一个按钮启动之后,[ENABLE]块 完成一次后,执行,[DISABLE],恢复代码

最佳答案

查看完整内容

整个思路其实就是把这个“mov [Y],ebp”先在CE看看是咋表示的,然后分清【Y】的地址占用的字节集,然后用易语言的申请内存地址,然后把原本【Y】的地址换成自己刚刚申请的就行了;第二个疑点就是要把刚刚申请的地址要字节集倒转一下,不然你写字节集就会出错,比较比如一个地址【0067E24C】在CE里面要用字节集写入的话,肯定不能直接写字节集(pid,HOOK地址,十六进制到字节集(“0067E24C”)),要把【“0067E24C”】倒转一下变 ...

签到天数: 22 天

发表于 2024-10-30 22:30:15 | 显示全部楼层   广东省深圳市
整个思路其实就是把这个“mov [Y],ebp”先在CE看看是咋表示的,然后分清【Y】的地址占用的字节集,然后用易语言的申请内存地址,然后把原本【Y】的地址换成自己刚刚申请的就行了;第二个疑点就是要把刚刚申请的地址要字节集倒转一下,不然你写字节集就会出错,比较比如一个地址【0067E24C】在CE里面要用字节集写入的话,肯定不能直接写字节集(pid,HOOK地址,十六进制到字节集(“0067E24C”)),要把【“0067E24C”】倒转一下变成“4C E2 67 00”在写入,第二个学习点就是这个了

评分

参与人数 1荣誉 +1 收起 理由
笨潴 + 1 热心帮助他人,荣誉+1,希望继续努力(*^__^*) 嘻嘻!

查看全部评分

回复

使用道具 举报

结帖率:100% (1/1)

签到天数: 22 天

发表于 2024-10-30 23:46:00 | 显示全部楼层   广东省深圳市
这个需求可能需要用rmb解决
回复

使用道具 举报

结帖率:86% (18/21)

签到天数: 16 天

发表于 2024-10-31 00:12:11 | 显示全部楼层   福建省泉州市
如果(选择框1.选择=真)....
回复

使用道具 举报

结帖率:100% (6/6)

签到天数: 14 天

发表于 2024-10-31 10:07:52 | 显示全部楼层   江苏省苏州市
君杰 发表于 2024-10-30 23:46
这个需求可能需要用rmb解决

自信点,把可能去掉我花了2oo才解决这种问题
回复

使用道具 举报

签到天数: 22 天

发表于 2024-10-31 12:27:49 | 显示全部楼层   广东省深圳市
看你要功能需求,现在我给你一个思路,虽然有例子源码,但是我不能提供给你,请自己研究一下更能体验乐趣。
1.易语言申请一个游戏或软件里的内存地址。
2.把你上面的代码先用CE进行修改,然后看一下他CE的字节集【例如叫做:功能代码】,类似这种(“0F 84 1A 00 00 00 F3 0F 7E 42 04”)等等。
3.查看到CE里面【Y】对于的地址,然后用易语言里面的申请内存地址得到的地址替换他。请使用“十六进制到字节”或“字节集倒转”来把地址倒转一下,再替换掉【Y】的地址,然后易语言里面写字节集(pid,功能代码)。这样下来就完成了“功能代码”。
4.接下来是hook和还原,也就是实现你的“[ENABLE]块 完成一次后,执行,[DISABLE],恢复代码”,
  
子程序名返回值类型公开备 注
_HOOK_jmp逻辑型 
参数名类 型参考可空数组备 注
当前地址整数型
目标地址整数型
额外字节字节集
变量名类 型静态数组备 注
中专整数型 
字节字节集 
原始保护整数型 
OLD整数型 
中专 = 目标地址 - 当前地址
中专 = 中专 - 5
字节 = { 233 }到字节集 (中专) + 额外字节
返回 (_写字节集 (当前地址, 字节, 取字节集长度 (字节)))


使用这个来进行HOOK跳转即可,_HOOK_jmp (功能地址, 易语言申请的地址, { 144})、、【144】是看你填充了多个个00,看你自己的CE在HOOK时填充了多少个
这样下来就行了

回复

使用道具 举报

签到天数: 22 天

发表于 2024-10-31 12:32:00 | 显示全部楼层   广东省深圳市
如果你是一个萌新,对内存和HOOK以及没有研究过的,可能是看不懂的。要有一点点研究基础,我只是给你提供一个我自己以前的实践思路。。实在不行用他们提供的模块也行的,有专门HOOK放自己地址进去取值,或专门HOOK寄存器的值的模块的,你也可以搜索一下看看的。

评分

参与人数 1精币 +1 收起 理由
ariesxsen + 1 新技能已get√

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

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