首页
社区
课程
招聘
[求助]为啥同一道题我用ida反汇编出来和别人不一样啊
发表于: 2024-8-21 09:49 1684

[求助]为啥同一道题我用ida反汇编出来和别人不一样啊

2024-8-21 09:49
1684

图片描述
如上图,我反汇编的结果这个s[i]=v8[i%v6-8],v6是7,也就是说这个数组的索引必是个负的,当时让我想破脑袋也没想明白。
图片描述
看了眼题解才知道,别人ida反汇编出来,这个地方是v7[i%v6](如上图),就离谱,我用的ida_pro7.7,我换了更高版本的ida也是这个结果。
不过v7和v8的位置挨着,v8[i%v6-8]貌似刚好就是v7[i%v6]的位置,这样想好像还挺合理。


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

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 3686
活跃值: (1670)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
RC3-2016-XORISGUD
2024-8-21 10:39
0
雪    币: 3008
活跃值: (3012)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
负下标又不是不可以,c语言是支持复下标的。看了下两张图,其实都一样,只是上面那张有点绕而已。v7栈位置是[rsp+68h],v8是[rsp+70h],刚好差8个字节。v8[i % v6 - 8]先不看"i % v6"这部分,v8[-8]不就是v7这个位置的吗。
2024-8-21 14:28
0
游客
登录 | 注册 方可回帖
返回
//