首页
社区
课程
招聘
未解决 [求助]汇编代码求解-4
发表于: 2023-7-12 23:14 4171

未解决 [求助]汇编代码求解-4

2023-7-12 23:14
4171

大佬们求解,图中黑线处,怎么理解,ecx不是数据吗,[数据+4]咋就是argv[1]了?


[课程]FART 脱壳王!加量不加价!FART作者讲授!

最后于 2023-7-12 23:14 被goose007编辑 ,原因:
上传的附件:
收藏
免费 0
支持
分享
最新回复 (9)
雪    币: 2302
活跃值: (4599)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
你看代码不管前面的东西吗?
2023-7-13 06:16
0
雪    币: 237
活跃值: (501)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
可以解释一下吗?就是因为不懂,不能前后联系起来才问的
2023-7-13 07:37
0
雪    币: 5461
活跃值: (1415)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
ECX等于ARGV是对的,其中argv是一个指针数组,所以你也可以理解为ecx等于argv[0],ecx+4就等于argv[1]了。
2023-7-13 08:10
1
雪    币: 3458
活跃值: (2300)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
这本书叫什么,好像看过。
2023-7-13 09:03
0
雪    币: 237
活跃值: (501)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
c++反汇编与逆向分析
2023-7-13 09:44
0
雪    币: 237
活跃值: (501)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
argc = dword ptr 4;
argv = dword ptr 8;
envp = dword ptr 0c;      大佬们,这段表示的是main参数在栈中的位置吧
2023-7-13 09:52
0
雪    币: 243
活跃值: (1194)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
不是前面把argv放到ecx了吗? +4后就是1
2023-7-13 10:24
0
雪    币: 237
活跃值: (501)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
我的理解:   [esp+10h+argv]把这个地址里面的值取出来放到ecx,但这个值在这里没说是地址呢,只有地址+4才指向下一个吧
2023-7-13 11:40
0
雪    币: 24521
活跃值: (4372)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
goose007 我的理解:   [esp+10h+argv]把这个地址里面的值取出来放到ecx,但这个值在这里没说是地址呢,只有地址+4才指向下一个吧

[ecx+4]你理解不了,把ecx换成esp,你认为[esp+4]是什么呢?同样是寄存器,道理是一样的
学习光靠看是不行的,要多动手,你把这个程序用x32dbg和IDA打开对比调试一下比你在这里问几天都要强
你贴图上是IDA反汇编的结果,与x32dbg反汇编的结果表现形式会有一些区别,作为常用工具最好这两者都要懂

最后于 2023-7-13 17:01 被huangyalei编辑 ,原因:
2023-7-13 17:00
1
游客
登录 | 注册 方可回帖
返回
//