游客:
注册
|
登录
会员
|
搜索
|
统计
|
帮助
轩辕春秋文化论坛
»
曹操传MOD制作交流
» 关于OD中子程序(函数)的问题
兴唐传·瓦岗山异闻录(20150519版)发布
(2015-5-19)
论坛营运现状公告
(2014-8-10)
三国志12pk版下载
(2013-4-20)
《精忠报国岳飞传》制作组对外开放
(2013-1-16)
岳飞传解密剧本发布
(2011-4-12)
招募各版斑竹和网站管理技术人员
(2006-4-19)
<< 上一主题
|
下一主题 >>
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
|
开通个人空间
|
加入资讯
标题: 关于OD中子程序(函数)的问题
武骧金星
组别
校尉
级别
前将军
功绩
29
帖子
1763
编号
56399
注册
2005-12-31
来自
上海
#1
发表于 2010-2-13 13:01
资料
个人空间
短消息
只看该作者
关于OD中子程序(函数)的问题
首先请看两张OD的截图
这是原版EKD5.exe中,函数0043F8BE(获取武将攻击范围)的代码。从43F8BE开始,到43F919结束(RETN)
这是本坛说岳EKD5.e5中,函数0043F8BE的代码,到43F916结束(RETN)
可以看到,图1中0043F8BE和0043F919由一条粗黑线连接起来(在地址栏后,HEX数据栏中),我想这应该表示这是一个子程序。
而图2中,可以看到这条粗黑线消失了(这段子程序结束于0043F916)。而我在写代码试图调用武将攻击范围时,用CALL EKD5.0043F8BE命令,似乎永远会得到一个“在武将攻击范围内”的结果。
因此,请问在图2中,0043F8BE到0043F916的这段代码,是否还是属于一个子程序?我相信说岳中用于调用攻击范围的还是这个函数,因为说岳的攻击相应函数并没有做过改动。
谢谢。
[
本帖最后由 武骧金星 于 2010-2-13 13:11 编辑
]
[广告]
安装Alexa工具条,提高轩辕排名,支持轩辕发展!
蛇夫座
组别
士兵
级别
仁勇校尉
功绩
2
帖子
200
编号
293516
注册
2008-10-5
来自
永不言弃!
家族
轩辕学院
#2
发表于 2010-2-13 13:30
资料
短消息
只看该作者
楼主的提问的函数调用在周大的《曹操传exe部分函数功能》中已有注释:
407A09检测武将ecx是否装备特殊效果为08栈的特殊道具
407AF2获取武将ecx装备特殊效果为08栈的特殊道具的特殊效果值
41DF70获取武将ecx的兵种
44F9A0获取兵种ecx的攻击范围
之后自己组织一下,比如:PUSH XXXXXXXX ; 这可能是特效号、道具编号、武将DATA编号、兵种编号、法术编号等等。
当遇到没有注解的函数时,先用OD注释出已知函数,再调试出未知部分,一边看OD一边看游戏窗口,有时也只能靠猜测
[广告]
安装Alexa工具条,提高轩辕排名,支持轩辕发展!
武骧金星
组别
校尉
级别
前将军
功绩
29
帖子
1763
编号
56399
注册
2005-12-31
来自
上海
#3
发表于 2010-2-13 13:57
资料
个人空间
短消息
只看该作者
啊,其实我就是想知道为什么别的子程序都有这条粗黑线,而图2中从43F8BE开始的子程序却没有。因为我在调用的时候确实遇到了问题。
[
本帖最后由 武骧金星 于 2010-2-13 13:59 编辑
]
[广告]
安装Alexa工具条,提高轩辕排名,支持轩辕发展!
蛇夫座
组别
士兵
级别
仁勇校尉
功绩
2
帖子
200
编号
293516
注册
2008-10-5
来自
永不言弃!
家族
轩辕学院
#4
发表于 2010-2-13 16:23
资料
短消息
只看该作者
回复 #3 武骧金星 的帖子
C、C++语言函数未优化时反汇编形式一般如:
push ebp ; 保护基址寄存器EBP
mov ebp, esp ; 使用EBP寻址
sub esp, 0C ; 开辟局部变量
mov esp, ebp ; 清理堆栈
pop ebp ; 还原EBP
retn ; 弹出返回地址到EIP指令指针寄存器
所以到retn 指令时函数才结束
汇编语言不同于高级语言,它可以直接操作内存,并不局限于函数形式
直于那条黑线你管它干什么,只要在有黑线的地方修改过指令黑线就会断开或者消失
这是因为OD工程记录下了你的修改,最重要的是告诉你判断一个函数是否结束不是靠那条黑线。
[广告]
真诚支持说岳,携手共创辉煌
投票
交易
悬赏
活动
正在浏览此帖的会员 - 共
1
人在线
轩辕春秋文化论坛
轩辕史话
> 炎黄春秋
> 我思我在
> 法律探讨
> 三国史话
春秋文艺
> 古典小说
> 诗词歌赋
> 现代文艺
> 韦编三绝
> 对联雅座
> 滴翠亭
> 藏经阁
> 双七钟社
> 笑书神侠
> 辕门射虎
> 虎帐点兵
游戏人生
> 同人战棋手游
> 三国戏英杰传
> 三国鼎立
> 轩辕公会
> 三国志12
> 英雄史诗
> 运筹帷幄
> 人间五十年
> 步步为营
> 游行天下
> 游戏贴图
轩辕工作室
> 兴唐传·瓦岗山异闻录
> 豪华曹操传
> 精忠报国岳飞传
> 《精忠报国岳飞传》制作组
> 大一统演义
> 曹操传MOD作品交流
> 东吴霸王传
> 封神英杰传
> 杨家将
> 吕布传
> 三国无双战略版
> 北宋志·赵匡胤传
> 战旗春秋
> 曹操传MOD制作交流
> 金庸群侠传MOD交流
> 风华录
> 设计与修改
怡情岁月
> 影音经典
> 动漫先锋
> 绘画摄影
> 情感轩辕
> 衣食住行
> 体坛动力
> 谈股论金
参政议政
> 迎宾阁
> 鸿胪寺
> 登闻鼓
> 监造府
当前时区 GMT+8, 现在时间是 2025-6-10 13:38
京ICP备2023018092号
轩辕春秋
2003-2023 www.xycq.org.cn
Powered by
Discuz!
5.0.0
2001-2006
Comsenz Inc.
Processed in 0.009482 second(s), 8 queries , Gzip enabled
TOP
清除 Cookies
-
联系我们
-
轩辕春秋
-
Archiver
-
WAP
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
基本概况
论坛排行
主题排行
发帖排行
积分排行
管理团队
管理统计