首页
社区
课程
招聘
初学者怎样分析代码
发表于: 2006-12-7 07:50 4123

初学者怎样分析代码

2006-12-7 07:50
4123
看到书中的破解高手写的教程真是羡慕的不知道说什么,作者真的很细心为了照顾菜鸟,把没句代码都做了注释,真是得谢谢他,我所要提的问题也就在这里,作者能看懂代码的含义,知道每句代码是干什么的,然后注释上,
比如截教程中这样一段代码:
00403D23 MOV EAX ,[ESI+70]  //去注册名存入EAX
00403D26 MOV EBP ,[EAX-C]   //去注册名的长度存入EBP
00403D29 CMP EBP ,2         //把注册名的长度和2比较
00403D2C IGE SHORT 00403D43  //如果不小于2跳到00403D43
。。。。。。
16位汇编的基本东西我也记的差不多,比如上面这几行代码我也知道是传送,比较,跟跳转,但如果作者不加说明的话,我就知道这写,跟本不知道注释里说的什么取注册名啊,取注册码长度啊什么的,我该如何把所学的应用到实际当中啊,也跟作者似的一看代码就知道什么意思,郁闷啊~~~~~跪求高手指点迷津

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (7)
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
2
哪有可能一看就知道

看看WIN 32 API

输入的注册名,始终要通过什么方法取得那些数据。

然后便是对数据的处理。认真看看吧,或者从新兵训练场开始
2006-12-7 08:42
0
雪    币: 2108
活跃值: (208)
能力值: (RANK:1260 )
在线值:
发帖
回帖
粉丝
3
打一个比方,
有一篇英文短文,里面的单词我们全部认识,但有时却不了解文章的大意。其中的原因有多方面的,有可能是我们对作者的遣词造句不甚了解,也有可能是我们不了解文章的文化背景。

就像反汇编后的代码一样,单条指令大家都知道是怎么回事,但一放到整个代码段里,就不知道它具体的作用(含义)了。

具体的意思就是这样,可能表达的不是很清楚,见谅。
2006-12-7 08:57
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
支持楼上的观点,但还有一点不明白,就是这个综合要学到什么程度才可以呢?
2006-12-7 09:57
0
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:210 )
在线值:
发帖
回帖
粉丝
5
00403D23 MOV EAX ,[ESI+70]  //去注册名存入EAX
00403D26 MOV EBP ,[EAX-C]   //去注册名的长度存入EBP

动态调试可以从堆栈中得到!
2006-12-7 10:55
0
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
6
要看懂皮毛其实就是手按 F8,眼看寄存器变化
2006-12-7 17:24
0
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
7
要看懂皮毛其实就是手按 F8,眼看寄存器变化
2006-12-7 18:45
0
雪    币: 846
活跃值: (221)
能力值: (RANK:570 )
在线值:
发帖
回帖
粉丝
8
最初由 GhostSnock 发布
支持楼上的观点,但还有一点不明白,就是这个综合要学到什么程度才可以呢?


逆向速度=你对程序的熟悉程度

例如我要脱壳,那么我就先得看看怎么写壳,了解壳释放程序的一般流程。
2006-12-7 18:58
0
游客
登录 | 注册 方可回帖
返回
//