kingswb 发表于 2014-7-30 14:25

160个CM之第二题Afkayas.1注册机(源码+成品)献给所有爱汇编的朋友

大牛可以飘过了,由于今年署期52没有CM大赛,看到八爷写的160的教程,于是自己也想挑战下这160个CM看看能否全部坚持把注册机,纯汇编编写的注册机,给在学习的朋友们一个参考

以下直接贴出源码
第二题   Afkayas.1

.386
.model flat, stdcall;32 bit memory model
option casemap :none;case sensitive
include 360个CM之Afkayas.1注册机.inc
.code
start:
invoke GetModuleHandle,NULL
movhInstance,eax
    invoke InitCommonControls
invoke DialogBoxParam,hInstance,IDD_DIALOG1,NULL,addr DlgProc,NULL
invoke ExitProcess,0
;########################################################################
DlgProc proc hWin:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
LOCAL @buffer:byte
moveax,uMsg
.if eax==WM_INITDIALOG
invoke LoadIcon,hInstance,APP_ICON
invoke SendMessage,hWin,WM_SETICON,ICON_BIG,eax
.elseif eax==WM_COMMAND
mov eax,wParam
.if ax==IDC_OK
   INVOKE GetDlgItemText,hWin,IDC_NAME,addr @buffer,256
   imul eax,eax,17CFBH
   mov edi,eax
   lea eax,@buffer
   movzx eax,byte ptr ds:
   add edi,eax
   invoke wsprintf,addr @buffer,offset szqian,edi
   invoke SetDlgItemText,hWin,IDC_REG,addr @buffer
.endif
.elseif eax==WM_CLOSE
invoke EndDialog,hWin,0
.else
moveax,FALSE
ret
.endif
moveax,TRUE
ret
DlgProc endp
end start





不喜勿喷

qaz1982018067 发表于 2014-7-30 14:32

感谢楼主分享 拿走了
页: [1]
查看完整版本: 160个CM之第二题Afkayas.1注册机(源码+成品)献给所有爱汇编的朋友