开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 2134|回复: 33
收起左侧

[易语言纯源码] 【蠢新学汇编】通过 特征码 取子程序指针 BUG版

[复制链接]
结帖率:100% (2/2)
发表于 2024-8-5 16:08:48 | 显示全部楼层 |阅读模式   荷兰
分享源码
界面截图: -
是否带模块: 纯源码
备注说明: -
捣鼓了几天 捣鼓出来了 测试下来循环123456789次才提速30毫秒 快一丁点 代价是写的时候还得注意写的位置 不值得

除了回调 似乎也没有取子程序指针的需求 真要回调还是用类回调更稳定 本源码只是本蠢新学习汇编路上练手的小玩意儿

放在启动窗口创建完毕之外的子程序最开始获取一切正常 测试了很多次 会闪退的 稳定闪退 不会闪退的一直不闪退 也就是说运行一次通过了 那就是过了

重要的事情说三遍
需要回调的 老老实实的用类回调
需要回调的 老老实实的用类回调
需要回调的 老老实实的用类回调
有BUG但是不打算修了 技术有限 修起来心好累 我自己会用这个 但是不推荐别人用 因为用的时候不小心容易出错
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
__启动窗口_创建完毕 启动窗口创建完毕下面获取是会出错的 单独某个子程序的最开始似乎正常 不清楚是访问了不能访问的内存地址还是堆栈的问题
' 取子程序指针(哨兵(),目标程序(参数1,参数2,...))
子程序名返回值类型公开备 注
取子程序指针整数型 取出 带返回值 参数任意类型 的 子程序指针 没有返回值的 随便加一个 返回(0) 也能获取
参数名类 型参考可空数组备 注
盯梢程序整数型哨兵( ) 程序1(程序2(),程序3()) 调用顺序 2 3 1 利用自身的优先级 拦截目标程序
目标程序通用型某某程序名( ) 参数 可空就留空 不是可空 那就乱填 截获指针之后会绕过 不会执行
返回 (0)  ' 只是用于将 目标程序( ) 与 哨兵( ) 捆绑执行 目标程序 的 数值类型 一律填 0 字节集填 { 0 } 文本填 " " 其他 随意
子程序名返回值类型公开备 注
哨兵整数型 取子程序指针( ) 的 具体实现
变量名类 型静态数组备 注
截获子程序指针取子程序指针( ) 入口出口
可读整数型Call 目标地址 合法性检测
截获 = &取子程序指针
可读 = GetProcAddress (GetModuleHandleA (“Kernel32.dll”), “IsBadReadPtr”)  ' IsBadCodePtr
置入代码 ({ 139, 117, 252, 70, 138, 14, 128, 249, 232, 117, 248, 139, 78, 1, 141, 124, 14, 5, 137, 125, 252 })
置入代码 ({ 139, 117, 4, 70, 138, 14, 128, 249, 232, 117, 248, 139, 78, 1, 141, 124, 14, 5, 57, 125, 252, 117, 236, 141, 126, 5, 137, 125, 252 })
置入代码 ({ 78, 78, 138, 14, 128, 249, 232, 117, 248, 139, 78, 1, 141, 124, 14, 5, 131, 255, 0, 126, 236, 106, 4, 87, 255, 85, 248, 133, 192, 117, 226, 138, 15, 128, 249, 85, 117, 219, 137, 248, 139, 85, 252, 131, 196, 8, 201, 131, 196, 4, 255, 226 })
返回 (0)
' mov esi,dword [ebp-4]
' 标记入口:
' inc esi
' mov cl,byte [esi]
' cmp cl,232
' jne 标记入口
' mov ecx,dword [esi+1]
' lea edi,dword [esi+ecx+5]
' mov dword [ebp-4],edi
' mov esi,dword [ebp+4]
' 寻找出口:
' inc esi
' mov cl,byte [esi]
' cmp cl,232
' jne 寻找出口
' mov ecx,dword [esi+1]
' lea edi,dword [esi+ecx+5]
' cmp dword [ebp-4],edi
' jne 寻找出口
' lea edi,[esi+5]
' mov dword [ebp-4],edi
' dec esi
' 目标指针:
' dec esi
' mov cl,byte [esi]
' cmp cl,232
' jne 目标指针
' mov ecx,dword [esi+1]
' lea edi,dword [esi+ecx+5]
' cmp edi,0
' JLE 目标指针
' push 4
' push edi
' Call dword [ebp-8]
' test eax,eax
' jne 目标指针
' mov cl,byte [edi]
' cmp cl,85
' jne 目标指针
' mov eax,edi
' mov edx,dword [ebp-4]
' add esp,8
' leave
' add esp,4
' jmp edx

  
DLL命令名返回值类型公开备 注
GetModuleHandleA整数型 获取一个应用程序或动态链接库的模块句柄。如执行成功成功,则返回模块句柄。零表示失败。
DLL库文件名:
kernel32.dll
在DLL库中对应命令名:
GetModuleHandleA
参数名类 型传址数组备 注
lpModuleName文本型指定模块名,这通常是与模块的文件名相同的一个名字。例如,NOTEPAD.EXE程序的模块文件名就叫作NOTEPAD只有在当前进程的场景中,这个句柄才会有效
DLL命令名返回值类型公开备 注
GetProcAddress整数型 从指定的动态链接库中检索一个导出的函数或变量的地址
DLL库文件名:
kernel32
在DLL库中对应命令名:
GetProcAddress
参数名类 型传址数组备 注
模块句柄整数型用LoadLibrary或getmodulehandle函数返回的句柄
函数名称文本型函数名称
DLL命令名返回值类型公开备 注
IsBadReadPtr整数型 检测某段内存是否可读
DLL库文件名:
kernel32.dll
在DLL库中对应命令名:
IsBadReadPtr
参数名类 型传址数组备 注
lpMemory整数型目标地址指针
dwSize整数型长度


来自群组: 热心网友

特征码 取子程序指针 瑕疵版.e

6.33 KB, 下载次数: 4, 下载积分: 精币 -2 枚

取子程序指针(哨兵(),目标程序(参数1,参数2,...))

点评

类回调也不完美 用完需要释放 否则内存泄漏 再努努力 看看能不能搞一个不用释放的类回调   贵州省毕节市  发表于 2024-8-11 10:23

评分

参与人数 4好评 +1 精币 +7 收起 理由
wa690602724 + 1 感谢分享,很给力!~
光影魔术 + 2 新技能已get√
1355301564 + 2 YYDS~!
yuan71058 + 1 + 2 支持开源~!感谢分享

查看全部评分


结帖率:100% (1/1)

签到天数: 13 天

发表于 2024-8-8 13:18:17 | 显示全部楼层   广西壮族自治区柳州市
感谢分享源码
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 17 天

发表于 2024-8-8 09:29:30 | 显示全部楼层   广东省汕头市
感谢大神分享~!
回复 支持 反对

使用道具 举报

结帖率:73% (8/11)

签到天数: 21 天

发表于 2024-8-7 16:00:17 | 显示全部楼层   河南省焦作市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

签到天数: 23 天

发表于 2024-8-7 06:33:25 | 显示全部楼层   湖北省武汉市
感谢分享
回复 支持 反对

使用道具 举报

发表于 2024-8-6 16:04:41 | 显示全部楼层   广东省中山市
66666666666666666666666666666666
回复 支持 反对

使用道具 举报

结帖率:29% (6/21)

签到天数: 14 天

发表于 2024-8-6 11:52:42 | 显示全部楼层   湖南省邵阳市
感谢分享
回复 支持 反对

使用道具 举报

结帖率:0% (0/2)

签到天数: 21 天

发表于 2024-8-6 09:40:09 | 显示全部楼层   广西壮族自治区玉林市
感谢分享!
回复 支持 反对

使用道具 举报

结帖率:90% (18/20)

签到天数: 10 天

发表于 2024-8-6 08:58:48 | 显示全部楼层   安徽省芜湖市
感谢分享!
回复 支持 反对

使用道具 举报

结帖率:100% (4/4)

签到天数: 23 天

发表于 2024-8-6 07:54:27 | 显示全部楼层   山东省淄博市
感谢分享
回复 支持 反对

使用道具 举报

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

本版积分规则 致发广告者

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

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

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