在 OD 上方的 Plugins ,选 Commandline ,这里可以像 softice 一样输入命令行
设下一个断点 :
bp MessageBoxA
输入这行后,当程序使用 MessageBoxA ,程序便会断下
现在,我们把程序正常运行 (按 F9),输入一个名字,我在里输入了 riijj ,在序号那行输入了 AAAABBBBCCCC
按下 "Register" ,这时候程序遇到断点,停在以下地方
77E16544 > 55 PUSH EBP <---停在这里
77E16545 8BEC MOV EBP,ESP
77E16547 51 PUSH ECX
77E16548 833D 1893E477 00 CMP DWORD PTR DS:[77E49318],0
77E1654F 0F85 EA220100 JNZ USER32.77E2883F
77E16555 6A 00 PUSH 0
77E16557 FF75 14 PUSH DWORD PTR SS:[EBP+14]
77E1655A FF75 10 PUSH DWORD PTR SS:[EBP+10]
77E1655D FF75 0C PUSH DWORD PTR SS:[EBP+C]
77E16560 FF75 08 PUSH DWORD PTR SS:[EBP+8]
77E16563 E8 04000000 CALL USER32.MessageBoxExA
77E16568 C9 LEAVE
77E16569 C2 1000 RETN 10
77E1656C > 55 PUSH EBP
看看 OD 的上方,写着 "CPU - main thread, module USER32" ,这说明了我们身处 user32.dll 的领空里,这是系统的程序
部份,我们是不会修改这里的。
我用的是中文版,应该是 "插件->命令"
我在命令里输入了 "bp MessageBoxA"
接着按 F9,输入名字,序号,按下"Register",直接跳出"Registration fail",并没有所谓的遇到断点
我很是苦恼,请riijj,或者高手给讲解一下,我是哪里出错了?
刚学破解,出师不利,很是苦恼
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)