今天调试一个程序,跟踪到这么一段代码。
1278FFB5 F2: prefix repne://单步跟踪的时候直接跳到了下面
1278FFB6 0F2C0424 cvttps2pi mm0, dqword ptr [esp]
1278FFBA C9 leave//直接就跳到这里了,中间这句没有执行
然后eax寄存器的值就变化了。
第一句和第三句代码是什么意思呢?他们完成了什么操作,一般在高级语言里怎么写会出现这样的情况。
哪位大虾帮忙解答一下,不胜感激!
------解决方案--------------------------------------------------------
好像是重复执行前缀吧?你确定你是单步不如不是单步步过?你用的是OD吧?
------解决方案--------------------------------------------------------
现在手头没有环境,你可以用ida强大的扫描来反汇编。
有空帮你看看。