我是一个新手。我从网上下了个程序,Mp3cutter.这是一个未注册的版本,我就试着调调。我的理解是(好象是这样):在0046C676处,从对话框取得用户输入的用户名;在0046C683处理用户名。然后在0046C694处取得CODE,但接下来的就看不懂了。
0046C670 . 8B80 E4020000 MOV EAX,DWORD PTR DS:[EAX+2E4]
0046C676 . E8 D932FCFF CALL mp3cutte.0042F954 ; get the name
0046C67B . 8B55 F4 MOV EDX,DWORD PTR SS:[EBP-C]
0046C67E . A1 9CDC4700 MOV EAX,DWORD PTR DS:[47DC9C]
0046C683 . E8 1075F9FF CALL mp3cutte.00403B98
0046C688 . 8D55 F0 LEA EDX,DWORD PTR SS:[EBP-10]
0046C68B . 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0046C68E . 8B80 E8020000 MOV EAX,DWORD PTR DS:[EAX+2E8]
0046C694 . E8 BB32FCFF CALL mp3cutte.0042F954 ; get the code
0046C699 . 8B55 F0 MOV EDX,DWORD PTR SS:[EBP-10]
0046C69C . A1 B8DA4700 MOV EAX,DWORD PTR DS:[47DAB8]
/*************************************************************
就是这段代码,我看不懂,不知道是这段代码经过特殊处理,还是我以前的分析压根就是错的。恳请高人指教.
0046C6A1 E8 DB E8
0046C6A2 F2 DB F2
0046C6A3 .^ 74 F9 JE SHORT mp3cutte.0046C69E
0046C6A5 ? FFE8 JMP FAR EAX ; 非法使用寄存器
0046C6A7 ? DD1E FSTP QWORD PTR DS:[ESI]
0046C6A9 ? FFFF ??? ; 未知命令
0046C6AB . 84C0 TEST AL,AL
***************************************************************/
0046C6AD . 74 0C JE SHORT mp3cutte.0046C6BB
0046C6AF . B8 FCC64600 MOV EAX,mp3cutte.0046C6FC ; ASCII "Thank you for purchasing"
0046C6B4 . E8 B36CFEFF CALL mp3cutte.0045336C
0046C6B9 . EB 0A JMP SHORT mp3cutte.0046C6C5
0046C6BB > B8 20C74600 MOV EAX,mp3cutte.0046C720 ; ASCII "Invalid registration code, please check it and try again"
0046C6C0 . E8 A76CFEFF CALL mp3cutte.0045336C
0046C6C5 > 8B45 FC MOV EAX,DWORD PTR SS:[EBP-4]
0046C6C8 . E8 F7E2FDFF CALL mp3cutte.0044A9C4
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)