首页
社区
课程
招聘
[求助]怎么辨别CALL函数的功能
发表于: 2007-3-22 21:38 4351

[求助]怎么辨别CALL函数的功能

2007-3-22 21:38
4351
我用OD加载了一些CRACKME,也看了好多高手们发的精品帖,但有一点就是不想不明白。

比如,用OD加载一个crackme
00401199  |>mov     ebx, [<&USER32.GetDlgItemTextA>]  ;  USER32.GetDlgItemTextA
这个很明显是取字符串。

但是大部分软件都是这样的形式出现的啊
  004500B5  |.  8D55 F4       lea     edx, [local.3]
  004500B8  |.  8B45 FC       mov     eax, [local.1]
  004500BB  |.  8B80 08030000 mov     eax, dword ptr [eax+308]
  004500C1  |.  E8 92F2FDFF   call    0042F358                         ;  取出 测试码
/*从别人帖子里摘抄过来得*/

别人怎么就能判断出这是取字符串呢,OD根本就没有识别给出注释啊,请问高手你们都是怎么一眼就看出来的呢?我这只是打个例子,类似的函数还有很多,我就是不明白高手们什么看出来的,麻烦知道帮帮我?

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 263
活跃值: (10)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
2
先用 F8 粗略的跑过这个 CALL ,这时你要观察寄存器的变化,还有信息窗口一般都会显示出对应的数据的,高手就是通过长期的实战,能很容易就知道这个CALL是用来比较还是取假码用的。记住 F8 就是指引你的最好工具
2007-3-23 09:20
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
最初由 KAN 发布
先用 F8 粗略的跑过这个 CALL ,这时你要观察寄存器的变化,还有信息窗口一般都会显示出对应的数据的,高手就是通过长期的实战,能很容易就知道这个CALL是用来比较还是取假码用的。记住 F8 就是指引你的最好工具


还要自己记哦,懒人我开始还以为有什么一劳永逸的方法
现在知道了,Thank you very much!
前几天我跟踪了几个crackme,我还看出几个的算法来了.以前我都只知道找关键CALL然后查看真码,现在学期来还小有成就了,不过说实话,我的成就来得太迟了,我从高三开始接触,大一买了本加密解密就是没看出个所以然,有时总想深入进去,每次都只是一时兴起,觉得太深奥了,太难了.现在好高兴.谢谢
2007-3-25 16:52
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
最初由 KAN 发布
先用 F8 粗略的跑过这个 CALL ,这时你要观察寄存器的变化,还有信息窗口一般都会显示出对应的数据的,高手就是通过长期的实战,能很容易就知道这个CALL是用来比较还是取假码用的。记住 F8 就是指引你的最好工具


这就是动态跟踪技术,顶这位朋友帖子一下!
2007-3-25 23:46
0
游客
登录 | 注册 方可回帖
返回
//