首页
课程
问答
CTF
社区
招聘
看雪峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
看雪峰会
看雪商城
证书查询
社区
编程技术
发新帖
0
0
[讨论]release编译模式有问题?if被判断忽略。
发表于: 2008-12-5 12:03
4102
[讨论]release编译模式有问题?if被判断忽略。
小花
2008-12-5 12:03
4102
今天发现一个很郁闷的事情。
程序动态调用了一个dll的一个方法,方法的声明形式如下:
void testFun(int);
void testFun(int i) { if(i==1) { //执行操作1 } else { //执行操作2 } }
用Debug模式编译,一点问题都没有。可是如果用release编译的时候,if和else的判断就直接忽略了。OD看了下,汇编里面都没有cmp的判断。直接就是执行操作1,然后再执行的操作2。
这是什么原因呢?
[课程]Linux pwn 探索篇!
收藏
・
0
免费
・
0
支持
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
最新回复
(
2
)
ipqygah
雪 币:
200
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
0
回帖
7
粉丝
0
关注
私信
ipqygah
2
楼
我试试看:
mov eax,i
sub eax,1
jz 等于1
这里面没有cmp哦,但是照样实现你说的哦
所以,指令很丰富的。
2008-12-6 00:11
0
morning
雪 币:
367
活跃值:
(20)
能力值:
( LV5,RANK:70 )
在线值:
发帖
36
回帖
494
粉丝
3
关注
私信
morning
1
3
楼
== 写成了 =?
2008-12-6 20:05
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
小花
60
发帖
215
回帖
10
RANK
关注
私信
他的文章
[求助] 请教一个win32界面方面的问题?(菜鸟级)
4837
怎么获得函数的地址而不是输入表?
4350
[求助]关于PE输入表修复的问题——源自linxer代码
5096
[求助]如何有效的关闭有循环操作线程的内核对象
3343
[求助]在VC里面,为什么不能够loadlibrary运行库函数?
8795
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
返回
顶部