-
-
[旧帖]
[求助]请教
0.00雪花
-
发表于:
2008-2-21 21:04
4275
-
:0040120B C8000000 enter 0000, 00
:0040120F 53 push ebx
:00401210 52 push edx
:00401211 33C0 xor eax, eax
:00401213 B8A6204000 mov eax, 004020A6 ----把输入的密码放入EAX
:00401218 803800 cmp byte ptr [eax], 00
:0040121B 7460 je 0040127D
0040127D |> \33C0 XOR EAX,EAX
0040127F |. 5A POP EDX
00401280 |. 5B POP EBX
00401281 |. C9 LEAVE
我想问一下je 0040127D是不是验证没有输入密码?如果是的话,这句话为什么能验证?eax是32位寄存器,能存4个数字,而输入的是123456六位数字,我觉得不能验证。要么eax存的是指向123456的指针,但是仅验证指针为00,我觉得也不能说明00地址里存的是00,即没输入密码。
高手见笑了,请指教!
原题是http://www.pediy.com/tutorial/chap6/Chap6-1-11.htm中第二题。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课