首页
社区
课程
招聘
[旧帖] 汇编语言求助 0.00雪花
发表于: 2010-5-3 21:31 2887

[旧帖] 汇编语言求助 0.00雪花

2010-5-3 21:31
2887
00401004  |.  C745 FC 00000>   MOV DWORD PTR SS:[EBP-4],0
0040100B  |.  EB 09                     JMP SHORT 5.00401016
0040100D  |>  8B45 FC       /       MOV EAX,DWORD PTR SS:[EBP-4]
00401010  |.  83C0 01       |        ADD EAX,1
00401013  |.  8945 FC       |        MOV DWORD PTR SS:[EBP-4],EAX
00401016  |>  837D FC 03          CMP DWORD PTR SS:[EBP-4],3
0040101A  |.  7D 02         |          JGE SHORT 5.0040101E
0040101C  |.^ EB EF         \         JMP SHORT 5.0040100D

以上逆向一个VC循环程序的代码,0040101A 的JGE语句怎样获得00401016的CMP比较的结果而执行跳转或顺序?还有就是循环体应该是从0040100D开始直到最后,但是在00401013已经完成了赋值,循环中好象应该不用这句了,是不是因为内存的存储区域每次都不能直接使用必须用寄存器赋值?以上两个问题请大家帮忙教教我,多谢!

[课程]Android-CTF解题方法汇总!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 268
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
GUX
2
int i=0;
while(i<3)
{
++i;
}

第一个问题汇编书上都有
第二个问题
0040100D  |>  8B45 FC       /       MOV EAX,DWORD PTR SS:[EBP-4]
00401010  |.  83C0 01       |        ADD EAX,1
00401013  |.  8945 FC       |        MOV DWORD PTR SS:[EBP-4],EAX
这三句就是++i的汇编实现
2010-5-4 10:16
0
游客
登录 | 注册 方可回帖
返回
//