开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

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


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

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

查看: 710|回复: 11
收起左侧

[已解决] 如何取子程序的代码字节集?

 关闭 [复制链接]
结帖率:69% (18/26)
发表于 2023-9-5 20:59:00 | 显示全部楼层 |阅读模式   河南省焦作市
9精币
怎么获取子程序的代码字节集

最佳答案

查看完整内容

[e=4].版本 2 .支持库 spec .子程序 取子程序真实地址, 整数型 .参数 子程序指针, 子程序指针 .局部变量 子程序地址, 整数型 .局部变量 子程序起始, 整数型 .局部变量 偏移, 整数型 .局部变量 现行子程序地址, 整数型 子程序地址 = 取子程序地址 (子程序指针) 子程序起始 = 子程序地址 .判断循环首 (真) .如果 (指针到字节集 (子程序起始, 1) = { 232 }) 子程序起始 = 子程序起始 + 1 偏移 = 指针到 ...

回答提醒:如果本帖被关闭无法回复,您有更好的答案帮助楼主解决,请发表至 源码区 可获得加分喔。
友情提醒:本版被采纳的主题可在 申请荣誉值 页面申请荣誉值,获得 1点 荣誉值,荣誉值可兑换荣誉会员、终身vip用户组。
快捷通道:申请荣誉值无答案申请取消悬赏投诉有答案未采纳为最佳
结帖率:100% (3/3)
发表于 2023-9-5 20:59:01 | 显示全部楼层   四川省成都市
  
子程序名返回值类型公开备 注
取子程序真实地址整数型 
参数名类 型参考可空数组备 注
子程序指针子程序指针
变量名类 型静态数组备 注
子程序地址整数型 
子程序起始整数型 
偏移整数型 
现行子程序地址整数型 
子程序地址 = 取子程序地址 (子程序指针)
子程序起始 = 子程序地址
判断循环首 ()
如果 (指针到字节集 (子程序起始, 1){ 232 })
子程序起始 = 子程序起始 + 1
偏移 = 指针到整数 (子程序起始)
子程序起始 = 子程序起始 + 4
现行子程序地址 = 子程序起始 + 偏移
如果 (指针到字节集 (现行子程序地址, 3){ 85, 139, 236 })
跳出循环 ()
子程序起始 = 子程序起始 - 4
到循环尾 ()


子程序起始 = 子程序起始 + 1

判断循环尾 ()
现行子程序地址 = 子程序起始 + 偏移
返回 (现行子程序地址)
子程序名返回值类型公开备 注
取子程序代码长度整数型 返回子程序真实地址的字节集代码长度
参数名类 型参考可空数组备 注
指针子程序指针
原代码字节集数据字节集指针到字节集
原数据长度整数型指针到字节集的长度,自己设置,这里例如设置为1000
子程序是否有参数逻辑型
变量名类 型静态数组备 注
局_子程序真实地址整数型 
局_全长度整数型 
局_子程序真实地址 = 取子程序真实地址 (指针)
原代码字节集数据 = 指针到字节集 (局_子程序真实地址, 原数据长度)
' 调试输出 (原代码字节集数据)
局_全长度 = 寻找字节集 (原代码字节集数据, { 139, 229, 93 }, )
如果真 (局_全长度 = -1)
信息框 (“长度不够,请调整长度”, 0, , )
返回 (-1)

如果 (子程序是否有参数 = )
局_全长度 = 到整数 (局_全长度 + 4 - 1)  ' 子程序结束标识{ 139, 229, 93 }+{195}== 4 //4- 1(寻找到的位置占1)
局_全长度 = 到整数 (局_全长度 + 6 - 1)  ' 子程序结束标识{ 139, 229, 93 }+{194,x,0}== 6//6- 1(寻找到的位置占1)
返回 (局_全长度)
' /////易语言子程序开头标识
' { 85,139,236}
' push ebp
' mov ebp , esp
' /////易语言子程序结尾标识
' {139,229,93}
' mov esp , ebp
' pop ebp
' 注意
' 子程序若无参数则+{195}
' 子程序若有参数则+{194,x,0}
子程序名返回值类型公开备 注
Make_ShellCode字节集 
参数名类 型参考可空数组备 注
函数地址子程序指针填你要取的子程序的指针
是否含有参数逻辑型默认没有
变量名类 型静态数组备 注
Code字节集 
CodeLen整数型 
CodeAdd整数型 
CodeLen = 取子程序代码长度 (函数地址, Code, 1024, 选择 (是否为空 (是否含有参数), 假, 是否含有参数))
CodeAdd = 取子程序真实地址 (函数地址)
返回 (指针到字节集 (CodeAdd, CodeLen))


i支持库列表   支持库注释   
spec特殊功能支持库

评分

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

查看全部评分

回复

使用道具 举报

结帖率:73% (8/11)

签到天数: 12 天

发表于 2023-9-5 21:01:30 | 显示全部楼层   河南省周口市
ctrl+c
回复

使用道具 举报

结帖率:69% (18/26)

签到天数: 11 天

 楼主| 发表于 2023-9-5 21:02:45 | 显示全部楼层   河南省焦作市

我要的是字节集啊
回复

使用道具 举报

结帖率:98% (54/55)

签到天数: 12 天

发表于 2023-9-5 21:04:54 | 显示全部楼层   福建省宁德市
莉繁 发表于 2023-9-5 21:02
我要的是字节集啊

你以为是汇编代码呢,汇编才能变成字节集
回复

使用道具 举报

结帖率:69% (18/26)

签到天数: 11 天

 楼主| 发表于 2023-9-5 21:07:51 | 显示全部楼层   河南省焦作市
鹏书 发表于 2023-9-5 21:04
你以为是汇编代码呢,汇编才能变成字节集

好的,已知晓
回复

使用道具 举报

结帖率:100% (3/3)
发表于 2023-9-5 22:18:04 | 显示全部楼层   四川省成都市
取一下子程序的真实指针然后内存拷贝一下,给子程序对应的汇编代码拷贝出来就行了
回复

使用道具 举报

结帖率:69% (18/26)

签到天数: 11 天

 楼主| 发表于 2023-9-8 20:30:57 | 显示全部楼层   河南省焦作市
呵呵呵666 发表于 2023-9-5 22:18
取一下子程序的真实指针然后内存拷贝一下,给子程序对应的汇编代码拷贝出来就行了 ...

听不懂思密达
回复

使用道具 举报

结帖率:69% (18/26)

签到天数: 11 天

 楼主| 发表于 2023-9-9 09:27:59 | 显示全部楼层   河南省焦作市
呵呵呵666 发表于 2023-9-8 20:53
[e=4].版本 2
.支持库 spec

有实力
回复

使用道具 举报

结帖率:69% (18/26)

签到天数: 11 天

 楼主| 发表于 2023-9-9 09:39:40 | 显示全部楼层   河南省焦作市
呵呵呵666 发表于 2023-9-8 20:53
  
[/quote]
[e=1].版本 2
子程序名返回值类型公开备 注
xxk  
信息框 (“1”, 0, , )
' {85,139,236,187,6,0,0,0,232,121,246,255,255,104,1,3,0,128,106,0,104,0,0,0,0,104,4,0,0,128,106,0,104,174,1,93,0,104,4,0,0,0,187,0,3,0,0,232,190,9,0,0,131,196,52,139,229,93,195}



i支持库列表   支持库注释   
spec特殊功能支持库


为什么我置入代码没有信息框捏?大佬
回复

使用道具 举报

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

本版积分规则 致发广告者

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

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

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