症状:当我们用此版本OD查看数据框口的时候,用鼠标双击最后一个位置的的时候,会一直弹出错误对话框,并且鼠标一指向数据区域就会出现错误对话框。 引发条件:使用了TEST指令来判断是否等于2,JNZ 就跳,当TEST指令的第一个操作数为5的时候,ZF标志位发生变化,条件为假,也就是不跳,向下执行,具体看代码:
004615D5 |. F645 14 02 TEST BYTE PTR SS:[EBP+14],2 ; 当这里的是5的时候,ZF标志位位1,表示条件为假,这里应该改为CMP 004615D9 |. 75 12 JNZ SHORT 004615ED 004615DB |. 03FE ADD EDI,ESI ; 此处谈错误对话框 004615DD |. 4F DEC EDI 004615DE |. 57 PUSH EDI ; /Arg3 004615DF |. 56 PUSH ESI ; |Arg2 004615E0 |. 68 49C44B00 PUSH 004BC449 ; |Arg1 = 004BC449 004615E5 |. E8 322AFFFF CALL _Error ; \_Error
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课