1,关于OD调试时,我为EXE模块中的函数添加标签或注释时,点击E,跳转到这个EXE模块后
总是查找不到我添加的注释或者标签,这是为什么?
2,当我点击C的时候,总是默认跳转到ntdll模块,这是为什么?能不能设置成默认跳转到EXE模块呢?
3,有的时候碰到OD分析不出来的指令,比如全是00h这种,这种可以算是花指令么?(有的时候不只是00h),一旦碰到这种指令的时候,鼠标单机过去,经常是串行的,就是根本选不中鼠标单机的这一行指令,这是为什么?。
4,有时一段汇编指令好好的,但是鼠标滚轮移动,前一刻的指令就会分析成另外的样子,
比如前一刻的指令是这样的,这时候client相关的行数如我问题3一样,都是没法选中的。
00C30C48 . AB0CC300 DD client.00C30CAB ; 分支表 被用于 00C30BC4
00C30C4C . 980CC300 DD client.00C30C98
00C30C50 . 900CC300 DD client.00C30C90
00C30C54 . 880CC300 DD client.00C30C88
00C30C58 . 800CC300 DD client.00C30C80
00C30C5C . 780CC300 DD client.00C30C78
00C30C60 . 700CC300 DD client.00C30C70
00C30C64 . 680CC300 DD client.00C30C68
00C30C68 > 8B448E E4 MOV EAX,DWORD PTR DS:[ESI+ECX*4-0x1C]
00C30C6C . 89448F E4 MOV DWORD PTR DS:[EDI+ECX*4-0x1C],EAX
下一刻,我用鼠标滚轮向下滑动几行后,指令就标称这样的,这时点击能正常选中代码行了。
00C30C49 ? 0C C3 OR AL,0xC3
00C30C4B ? 0098 0CC30090 ADD BYTE PTR DS:[EAX+0x9000C30C],BL
00C30C51 ? 0C C3 OR AL,0xC3
00C30C53 ? 0088 0CC30080 ADD BYTE PTR DS:[EAX+0x8000C30C],CL
00C30C59 ? 0C C3 OR AL,0xC3
00C30C5B ? 0078 0C ADD BYTE PTR DS:[EAX+0xC],BH
00C30C5E ? C3 RETN
00C30C5F ? 0070 0C ADD BYTE PTR DS:[EAX+0xC],DH
00C30C62 ? C3 RETN
00C30C63 ? 0068 0C ADD BYTE PTR DS:[EAX+0xC],CH
00C30C66 ? C3 RETN
00C30C67 ? 008B 448EE489 ADD BYTE PTR DS:[EBX+0x89E48E44],CL
00C30C6D ? 44 INC ESP
请教各位前辈,OD的这些问题到底是怎么回事。
谢谢。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)