我有一个崩溃的小型转储。在崩溃时,有一些奇怪的代码不应该成功运行。类似的东西:
call AnObject::AFunction
test byte ptr [eax],cl
AnObject :: AFunction是一个返回bool的成员函数。所以结果应该存储在eax中为0或1.此时取消引用eax是没有意义的。
我反汇编了相应的二进制文件,实际上,这个函数的代码是不同的:
call AnObject::AFunction
test al, al
为什么minidump反汇编代码与实际的二进制反汇编代码不同?