📄 crack tutorial.htm
字号:
MOV EAX,offset sbox1 <BR>
LEA ECX,[ESI+48h] <BR>loc_401141: <BR>
MOV EDX,0100h <BR>loc_401146:
<BR> MOV EDI,[EAX]
<BR> ADD EAX,4 <BR>
MOV [ECX],EDI <BR> ADD
ECX,4 <BR> DEC EDX
<BR> JNZ loc_401146 <BR>
CMP EAX,offset sbox1+1000h <BR>
JL loc_401141 <BR><BR>;初始化p盒
<BR>;第一步:原p盒与PWD逐项异或 <BR> <BR> MOV
EDX,PWD <BR> MOV
EDI,offset pbox <BR> XOR EAX,EAX
<BR> SUB EDI,ESI <BR>
MOV pbox_num18,12h <BR>loc_401173:
<BR> XOR ECX,ECX <BR>
MOV pbox_num4,04 <BR>loc_40117D:
<BR> XOR EBX,EBX <BR>
MOV BL,[EAX+EDX] <BR>
SHL ECX,08 <BR> OR
ECX,EBX <BR> INC EAX
<BR> CMP EAX,len_PWD <BR>
JL loc_40118E <BR> XOR
EAX,EAX <BR>loc_40118E: <BR> MOV
EBX,pbox_num4 <BR> DEC EBX
<BR> MOV pbox_num4,EBX <BR>
JNZ loc_40117D <BR>
MOV EBX,[EDI+ESI] <BR>
ADD ESI,4 <BR> XOR
EBX,ECX <BR> MOV
ECX,pbox_num18 <BR> MOV [ESI-04],EBX
<BR> DEC ECX <BR>
MOV pbox_num18,ECX <BR>
JNZ loc_401173 <BR><BR>;用连续的blowfish算法填充p盒
<BR> MOV EBX,offset key <BR>
XOR EAX,EAX <BR> MOV
BFLOW,EAX <BR> MOV
BFHIGH,EAX <BR> MOV ESI,EBX <BR>
MOV EDI,09 <BR>loc_4011C4: <BR>
LEA EAX,BFLOW <BR> LEA
ECX,BFHIGH <BR> invoke
BlowFish_En,ECX,EAX <BR> MOV EAX,BFHIGH
<BR> MOV ECX,BFLOW <BR>
MOV [ESI],EAX <BR> MOV
[ESI+04],ECX <BR> ADD
ESI,8 <BR> DEC EDI <BR>
JNZ loc_4011C4 <BR><BR>;用连续的blowfish算法填充s盒
<BR> LEA ESI,[EBX+4Ch] <BR>
MOV snum,04
;4个s盒。 <BR>loc_4011F2: <BR>
MOV EDI,80H
;每个盒填充80h=128次(每次填充两个数)。 <BR>loc_4011F7: <BR>
LEA ECX,BFLOW <BR> LEA
EDX,BFHIGH <BR> invoke
BlowFish_En,EDX,ECX <BR> MOV ECX,BFHIGH
<BR> MOV EDX,BFLOW <BR>
MOV [ESI-04],ECX <BR>
MOV [ESI],EDX <BR> ADD
ESI,8 <BR> DEC EDI
<BR> JNZ loc_4011F7 <BR>
DEC snum <BR> JNZ
loc_4011F2 <BR> RET <BR>
BlowFish_Init endp <BR><BR> ;消息处理函数
<BR> _ProcDlgMain proc uses ebx edi esi edx
ecx,hWnd:DWORD,wMsg:DWORD,wParam:DWORD,lParam:DWORD <BR>
mov eax,wMsg <BR> .if
eax==WM_CLOSE <BR>
invoke EndDialog,hWnd,NULL <BR>
.elseif eax==WM_COMMAND <BR>
mov eax,wParam <BR>
and eax,0ffffh <BR>
.if eax==IDGEN
<BR>;如果你直接用ComputerID产生序列号,从这里到mov MYBFLOW,ebx一段应该屏蔽 <BR>
invoke GetDlgItemText,hWnd,Edit1,offset
szID,17 <BR> xor ebx,ebx
<BR> xor eax,eax <BR>
mov esi,offset szID <BR>
mov ecx,8 <BR>
@@33: <BR> <BR>
or ebx,eax <BR>
xor eax,eax <BR>
lodsb <BR>
cmp eax,39h <BR>
jle @@3 <BR>
sub eax,7 <BR> @@3: <BR>
sub eax,30h <BR>
<BR>
shl ebx,4 <BR>
loop @@33 <BR>
or ebx,eax <BR>
mov MYBFHIGH,ebx <BR><BR>
mov esi,offset szID+8 <BR>
mov ecx,8 <BR>
xor eax,eax <BR>
xor ebx,ebx <BR> @@44: <BR>
or ebx,eax <BR>
lodsb <BR>
cmp eax,39h <BR>
jle @@4 <BR>
sub eax,7 <BR> @@4: <BR>
sub eax,30h <BR>
shl ebx,4 <BR>
loop @@44 <BR>
or ebx,eax <BR>
mov MYBFLOW,ebx
<BR>;…………………………………………………………………………………………………………
<BR>;如果你直接用ComputerID产生序列号,这里后面的所有语句你都应将其激活 <BR>;
invoke BlowFish_Init,offset PW_1,23 <BR>;
invoke BlowFish_En,offset data1_p,offset
data1_p+4 <BR>; MOV
EAX,BFHIGH <BR>; MOV
MYBFHIGH,EAX <BR>; MOV
EAX,BFLOW <BR>; MOV
MYBFLOW,EAX <BR> invoke
BlowFish_Init,offset PW_2,18 <BR>
invoke BlowFish_En,offset MYBFHIGH,offset MYBFLOW <BR>
MOV EAX,BFHIGH <BR>
MOV MYBFHIGH,EAX <BR>
MOV EAX,BFLOW <BR>
MOV MYBFLOW,EAX <BR>
invoke BlowFish_Init,offset PW_3,14
<BR> invoke BlowFish_En,offset
MYBFHIGH,offset MYBFLOW <BR><BR>
mov ebx,BFHIGH <BR>
mov eax,ebx <BR>
mov edi,offset szText <BR>
mov ecx,8 <BR> @@12: <BR>
mov eax,ebx <BR>
shl ebx,4 <BR>
shr eax,28 <BR>
cmp eax,9 <BR>
jle @@11 <BR>
add eax,7 <BR>
@@11: add eax,30h <BR>
and eax,0ffh <BR>
stosb <BR>
loop @@12 <BR><BR>
mov ebx,BFLOW <BR>
mov eax,ebx <BR>
mov edi,offset szText+8 <BR>
mov ecx,8 <BR> @@22: <BR>
mov eax,ebx <BR>
shl ebx,4 <BR>
shr eax,28 <BR>
cmp eax,9 <BR>
jle @@21 <BR>
add eax,7 <BR>
@@21: add eax,30h <BR>
and eax,0ffh <BR>
stosb <BR>
loop @@22 <BR><BR>
xor eax,eax <BR>
mov [edi],eax <BR>
invoke SetDlgItemText,hWnd,Edit2,offset szText <BR>
mov eax,FALSE <BR>
ret
<BR> .elseif
eax==IDCLOSE <BR>
invoke EndDialog,hWnd,NULL <BR>
.endif <BR>
.else <BR>
mov eax,FALSE <BR>
ret <BR> .endif <BR>
mov eax,TRUE <BR> ret
<BR><BR>_ProcDlgMain endp <BR><BR> ;主程序
<BR>start: <BR> invoke
InitCommonControls <BR> <SPAN class=p9>invoke
GetModuleHandle,NULL <BR> mov
hInstance,eax <BR> invoke
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -