- UID
 - 8671
 
 注册时间2006-2-27
阅读权限40
最后登录1970-1-1
独步武林 
   
 
 
 
TA的每日心情  | 开心 2018-5-6 16:27 | 
|---|
 
  签到天数: 7 天 [LV.3]偶尔看看II  
 | 
 
 
 楼主 |
发表于 2009-10-15 22:25:03
|
显示全部楼层
 
 
 
原帖由 tianxj 于 2007-12-26 23:45 发表   
数据区定义,代码区照抄   
 
搞好了。。。快2年过去了,让自己来学习和回答提问,真有的点感动。- .const
 
  
- .data
 
 - szHomePage db "https://www.chinapyg.com/",0
 
 - szEmail    db "mailto:[email protected]",0
 
 - szErrMess  db "输入的序列号不正确!",0
 
 - s3 db "%1i",0
 
 - s4 dd 20 dup(0)
 
  
- .code
 
 - ;https://www.chinapyg.com/viewthread.php?tid=4197
 
 - xor ebx,ebx
 
 - mov ebx,eax
 
 - invoke lstrlen,ebx
 
 - imul eax,135B7h
 
 - push eax
 
 - lea eax,s3
 
 - push eax
 
 - lea eax,s4
 
 - push eax
 
 - call wsprintf
 
 - lea eax,s4
 
  复制代码- .const
 
  
- .data
 
 - szHomePage db "https://www.chinapyg.com/",0
 
 - szEmail    db "mailto:[email protected]",0
 
 - szErrMess  db "输入的序列号不正确!",0
 
 - szXor db "%i",0 
 
 - hChar db "AKA-",0 
 
 - hKey db 15 dup(?) 
 
 - hShow db 15 dup(?) 
 
 - .code
 
 - ;https://www.chinapyg.com/viewthread.php?tid=4197
 
 - xor ebx,ebx
 
 - xor ecx,ecx
 
 - xor edx,edx
 
 - mov ebx,eax
 
 - invoke lstrlen,ebx
 
 - imul eax,98e51h
 
 - movzx edx,byte ptr[ebx]
 
 - add eax,edx
 
 - mov ebx,eax
 
 - push eax
 
 - push ebx
 
 - invoke wsprintf,addr hKey,addr szXor,ebx ;转换为十进制
 
 - lea edi,hShow ;让edi指向最终组合码位置
 
 - lea esi,hChar ;"AKA-"
 
 - mov ecx,4     ;"AKA-"位数
 
 - rep movsb ; 移动"AKA-"到将显示的注册码位置
 
 - lea esi,hKey  ;出来的10进制字符
 
 - n4: 
 
 - lodsb 
 
 - cmp al,0 
 
 - jz n5 
 
 - stosb 
 
 - jmp n4 
 
 - n5: ;将刚才转换为十进制后的计算结果附加在后面
 
 - lea eax,hShow ; 让EAX指向组合码 
 
  复制代码 
[ 本帖最后由 野猫III 于 2009-10-15 22:26 编辑 ] |   
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们 
 
 
 
x
 
 
 
 
 |