汇编注册机源代码
.386
.model flat,stdcall
option casemap:none
WinMain proto :DWORD,:DWORD,:DWORD,:DWORD
GetOurCode proto :DWORD,:DWORD
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
include \masm32\include\masm32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\masm32.lib
.data
ClassName db "SimpleWinClass",0
AppName db "********注册机",0
MenuName db "FirstMenu",0
ButtonClassName db "button",0
ButtonText db "获取注册号",0
EditClassName db "edit",0
StaticClassName db "static",0
buffer5 db 10 dup(30h),0
buffer6 db 10 dup(0),0
TestString1 db "cracked by miaomiao 2003.1.17",0
TestString2 db "用户名",0
TestString3 db "机器码",0
TestString4 db "序列号",0
.data?
hInstance HINSTANCE ?
CommandLine LPSTR ?
hwndButton HWND ?
hwndEdit1 HWND ?
hwndEdit2 HWND ?
hwndEdit3 HWND ?
hwndstatic1 HWND ?
hwndstatic2 HWND ?
hwndstatic3 HWND ?
hwndstatic4 HWND ?
buffer1 db 256 dup(?) ; buffer to store the text retrieved from the edit box
buffer2 db 256 dup(?) ;buffer to store the text calculated from the edit box value
buffer3 db 10 dup(?)
buffer4 db 30 dup(?),?
walue dd ?
walue1 dd ?
length1 dw ?
length2 dw ?
.const
ButtonID equ 1 ; The control ID of the button control
EditID equ 2 ; The control ID of the edit control
IDM_HELLO equ 1
IDM_CLEAR equ 2
IDM_GETTEXT equ 3
IDM_EXIT equ 4
.code
start:
invoke GetModuleHandle, NULL
mov hInstance,eax
invoke GetCommandLine
mov CommandLine,eax
invoke WinMain, hInstance,NULL,CommandLine, SW_SHOWDEFAULT
invoke ExitProcess,eax
WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD
LOCAL wc:WNDCLASSEX
LOCAL msg:MSG
LOCAL hwnd:HWND
mov wc.cbSize,SIZEOF WNDCLASSEX
mov wc.styl, CS_HREDRAW or CS_VREDRAW ;这句前面的字符有问题,不让发布
mov wc.lpfnWndProc, OFFSET WndProc
mov wc.cbClsExtra,NULL
mov wc.cbWndExtra,NULL
push hInst
pop wc.hInstance
mov wc.hbrBackground,COLOR_BTNFACE+1
mov wc.lpszMenuName,OFFSET MenuName
mov wc.lpszClassName,OFFSET ClassName
invoke LoadIcon,NULL,IDI_APPLICATION
mov wc.hIcon,eax
mov wc.hIconSm,eax
invoke LoadCursor,NULL,IDC_ARROW
mov wc.hCursor,eax
invoke RegisterClassEx, addr wc
invoke CreateWindowEx,WS_EX_CLIENTEDGE,ADDR ClassName, \
ADDR AppName, WS_OVERLAPPEDWINDOW,\
CW_USEDEFAULT, CW_USEDEFAULT,\
400,230,NULL,NULL, hInst,NULL
mov hwnd,eax
invoke ShowWindow, hwnd,SW_SHOWNORMAL
invoke UpdateWindow, hwnd
.WHILE TRUE
invoke GetMessage, ADDR msg,NULL,0,0
.BREAK .IF (!eax)
invoke TranslateMessage, ADDR msg
invoke DispatchMessage, ADDR msg
.ENDW
mov eax,msg.wParam
ret
WinMain endp
WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
.IF uMsg==WM_DESTROY
invoke PostQuitMessage,NULL
.ELSEIF uMsg==WM_CREATE
invoke CreateWindowEx,WS_EX_CLIENTEDGE, ADDR StaticClassName,NULL,\
WS_CHILD or WS_VISIBLE or ES_CENTER ,\
80,10,250,20,hWnd,4,hInstance,NULL
mov hwndstatic1,eax
invoke SetWindowText,hwndstatic1,ADDR TestString1 ;显示破解信息cracked by miaomiao
invoke CreateWindowEx,WS_EX_CLIENTEDGE, ADDR StaticClassName,NULL,\
WS_CHILD or WS_VISIBLE or ES_CENTER ,\
20,45,100,25,hWnd,4,hInstance,NULL
mov hwndstatic2,eax ;创建 用户名
invoke SetWindowText,hwndstatic2,ADDR TestString2
invoke CreateWindowEx,WS_EX_CLIENTEDGE, ADDR StaticClassName,NULL,\
WS_CHILD or WS_VISIBLE or ES_CENTER ,\
20,75,100,25,hWnd,4,hInstance,NULL
mov hwndstatic3,eax
invoke SetWindowText,hwndstatic3,ADDR TestString3 ;创建机器码提示
invoke CreateWindowEx,WS_EX_CLIENTEDGE, ADDR StaticClassName,NULL,\
WS_CHILD or WS_VISIBLE or ES_CENTER ,\
20,105,100,25,hWnd,4,hInstance,NULL
mov hwndstatic4,eax
invoke SetWindowText,hwndstatic4,ADDR TestString4 ;创建注册号提示框
invoke CreateWindowEx,WS_EX_CLIENTEDGE, ADDR EditClassName,NULL,\
WS_CHILD or WS_VISIBLE or ES_LEFT or\
ES_AUTOHSCROLL,\
120,45,230,25,hWnd,8,hInstance,NULL ;输入用户名
mov hwndEdit1,eax
invoke CreateWindowEx,WS_EX_CLIENTEDGE, ADDR EditClassName,NULL,\
WS_CHILD or WS_VISIBLE or ES_LEFT or\
ES_AUTOHSCROLL,\
120,75,230,25,hWnd,8,hInstance,NULL ;输入机器号
mov hwndEdit2,eax
invoke CreateWindowEx,WS_EX_CLIENTEDGE, ADDR EditClassName,NULL,\
WS_CHILD or WS_VISIBLE or WS_BORDER or ES_LEFT or\
ES_AUTOHSCROLL,\
120,105,258,25,hWnd,8,hInstance,NULL ;输入注册码
mov hwndEdit3,eax
invoke SetFocus, hwndEdit1
invoke CreateWindowEx,NULL, ADDR ButtonClassName,ADDR ButtonText,\
WS_CHILD or WS_VISIBLE or BS_DEFPUSHBUTTON,\
120,155,130,25,hWnd,ButtonID,hInstance,NULL
mov hwndButton,eax ;pulldown
.ELSEIF uMsg==WM_COMMAND
mov eax,wParam
.IF lParam==0
.IF ax==IDM_HELLO
invoke SetWindowText,hwndEdit3,ADDR TestString1
.ELSEIF ax==IDM_CLEAR
invoke SetWindowText,hwndEdit3,NULL
.ELSEIF ax==IDM_GETTEXT
invoke GetWindowText,hwndEdit1,ADDR buffer1,256
invoke GetWindowText,hwndEdit2,ADDR buffer2,256
lea esi,buffer1
lea edi,buffer3
xor ecx,ecx
@loop1:
lodsb
cmp al,0
jz @sub1
inc ecx
stosb
cmp ecx,0aH
jl @loop1
jmp @exit
@sub1:
mov eax,0ah
lea edi,buffer5
lea esi,buffer3
sub eax,ecx
add edi,eax
rep movsb
mov ecx,0ah
lea esi,buffer5
lea edi,buffer3
rep movsb
@exit:
mov ebx,0ah
@sub4:
lea eax,buffer3
movzx esi,byte ptr [eax+ebx-01]
mov eax,esi
mov ecx,0ah
xor edx,edx
div ecx
push edx
mov edx,eax
add dl,41h
mov [edi],dl
inc edi
pop edx
add dl,30h
mov [edi],dl
inc edi
dec ebx
jnz @sub4
push edi
lea esi,buffer2
lea edi,buffer6
xor edx,edx
@loopsub1:
lodsb
cmp eax,0
jz @exit1
stosb
inc edx
cmp edx,0ah
jne @loopsub1
@exit1:
;lea edi,buffer4
pop edi
mov ebx,0ah
@loopsub7:
mov eax,ebx
and eax,80000001h
jns @loopsub3
dec eax
or eax,byte -2
inc eax
@loopsub3:
test eax,eax
jne @loopsub5
lea eax,buffer6
movzx eax,byte ptr [eax+ebx-01]
mov ecx,0ah
xor edx,edx
div ecx
add dl,41h
mov al,dl
stosb
;mov byte ptr [edi],dl
;inc edi
jmp @loopsub6
@loopsub5:
lea eax,buffer6
movzx eax,byte ptr [eax+ebx-01]
mov ecx,0ah
xor edx,edx
div ecx
mov eax,09h
sub eax,edx
add eax,30h
stosb
;mov byte ptr [edi],al
;inc edi
@loopsub6:
dec ebx
test ebx,ebx
jne @loopsub7
相关资讯:
·语音界面2.0算法分析及注册机源码!
·侠客系统修改器1.21破解手记--算法分析
·中文拨号上网计时计费器 V4.12注册算法分析
·ClockWise 3.22e注册码算法分析
·CoolClock V1.02注册算法分析
·Directory Scanner v1.5 注册算法分析
·Disk Chief 1.2 简单注册算法分析
·EffeTech HTTP Sniffer 3.2注册算法分析
·eLib2.01算法分析
·EZ MP3 Recorder 1.15 注册算法分析
相关软件:
→ 特别推荐
→ 热点TOP10
我为人人《《==》》人人为我
关于我们 |
帮助(?)|
广告服务 |
版权声明 |
商业合作 |
发展历程 |
加盟我们 |
联系我们
Copyright (C) 1998-2004 winzheng.com All Rights Reserved.
特别感谢 蓝芒科技 提供下载站及论坛服务器
当年一篇教程能让一台电脑焕然一新;今天的效率工具换成了 AI。 想知道当下最可靠的 AI 模型怎么选?看 赢政指数——我们用了 28 年的选软件严谨,现在用来评测大模型。