相关疑难解决方法(0)

试图对一个函数进行反向工程

我试图更多地了解x86中的汇编.我在这里有一个神秘的功能,我知道它会返回int并接受一个int参数.所以它看起来像int mystery(int n){}.但我无法弄清楚C中的功能.大会是:

mov  %edi, %eax
lea  0x0(,%rdi, 8), %edi
sub  %eax, %edi
add  $0x4, %edi
callq < mystery _util >
repz retq

< mystery _util >
mov  %edi, %eax
shr  %eax
and  $0x1, %edi
and  %edi, %eax
retq
Run Code Online (Sandbox Code Playgroud)

我不明白lea在这里做了什么,它可能是什么样的功能.

c x86 assembly reverse-engineering att

2
推荐指数
1
解决办法
592
查看次数

标签 统计

assembly ×1

att ×1

c ×1

reverse-engineering ×1

x86 ×1