问题出现在逆向工程课程中。教授问了这个问题。我的意思是,从整体上看,while 循环 == for 循环,我对此没有任何问题。
IDA Pro book...谷歌...在这里没有看到任何在线内容。
那么为什么 IDA pro 从不在其伪代码生成器中生成 for 循环呢?
问题出现在逆向工程课程中。教授问了这个问题。我的意思是,从整体上看,while 循环 == for 循环,我对此没有任何问题。
IDA Pro book...谷歌...在这里没有看到任何在线内容。
那么为什么 IDA pro 从不在其伪代码生成器中生成 for 循环呢?
仅仅因为你没有出现它们并不意味着它们不存在。根据我的经验,反编译器for一直在生成循环。
编辑:这只是一个例子:
loc_804B520:
xor edx, edx
jmp short loc_804B52B
loc_804B524:
mov al, [edi+edx]
mov [ebx+edx], al
inc edx
loc_804B52B:
cmp edx, esi
jl short loc_804B524
输出:
for ( i = 0; i < a2; ++i )
*(_BYTE *)(v2 + i) = *(_BYTE *)(a1 + i);