麦乐学园

返回列表
查看: 89|回复: 0

置入代码装逼系列之 - 选择执行子程序

[复制链接]
发表于 2017-1-11 14:10:39 | 显示全部楼层 |阅读模式
分享源码
源码截图:
脱裤子放P系列, 根据第一个参数给的值来判断执行哪个子程序,跟易语言里的选择命令差不多

.版本 2

.子程序 _按钮1_被单击
.局部变量 变量, 逻辑型
.局部变量 执行子程序返回的结果, 整数型

变量 = 信息框 (“确定钮=执行第一个子程序,取消钮执行第二个子程序”, #是否钮, , ) = #是钮
执行子程序返回的结果 = 汇编_选择子程序 (变量, &测试子程序1, &测试子程序2, “测试传递的参数”, 121007124)
信息框 (“我是执行子程序后返回的结果:” + 到文本 (执行子程序返回的结果), 0, , )

.子程序 汇编_选择子程序, 整数型
.参数 用作判断的逻辑值, 逻辑型, , 如果该值为真,将执行第一个子程序,否则将执行第二个子程序。
.参数 欲执行子程序1, 子程序指针
.参数 欲执行子程序2, 子程序指针
.参数 测试参数1, 通用型
.参数 测试参数2, 通用型

置入代码 ({ 102, 139, 77, 8, 102, 129, 249, 1, 0, 117, 17, 139, 69, 12, 139, 77, 20, 139, 85, 24, 82, 81, 255, 208, 201, 194, 4, 0, 139, 69, 16, 139, 77, 20, 139, 85, 24, 82, 81, 255, 208, 201, 194, 4, 0 })
' mov cx,[ebp+08]
' cmp cx,1
' jne demo
' mov eax,[ebp+12]
' mov ecx,[ebp+20]
' mov edx,[ebp+24]
' push edx
' push ecx
' call eax
' leave
' ret 4
' demo:
' mov eax,[ebp+16]
' mov ecx,[ebp+20]
' mov edx,[ebp+24]
' push edx
' push ecx
' call eax
' leave
' ret 4
返回 (0)

.子程序 测试子程序1, 整数型
.参数 测试参数1, 文本型
.参数 测试参数2, 整数型

信息框 (“我是参数子程序1” + #换行符 + “第一个参数是:” + 到文本 (测试参数1) + #换行符 + “第二个参数是:” + 到文本 (测试参数2) + #换行符 + “我的返回值是999”, 0, , )
返回 (999)

.子程序 测试子程序2, 整数型
.参数 测试参数1, 文本型
.参数 测试参数2, 整数型

信息框 (“我是参数子程序2:” + #换行符 + “第一个参数是:” + 到文本 (测试参数1) + #换行符 + “第二个参数是:” + 到文本 (测试参数2) + #换行符 + “我的返回值是888”, 0, , )
返回 (888)





初学汇编,可能代码有点乱

评分

参与人数 1好评 +1 麦片 +4 收起 理由
亚子 + 1 + 4 感谢分享,很给力!~

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋| MLG8.CC

Copyright © 2015-2016 Comsenz Inc.   All Rights Reserved.

Powered by Discuz! X3.2( 宁ICP备16002180号 )

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