📄 crack tutorial.htm
字号:
DialogBoxParam,hInstance,DLG_MAIN,NULL,offset _ProcDlgMain,0 <BR>
invoke ExitProcess,NULL <BR>end start
<BR><BR>end <BR><BR>;资源文件:rsrc.rc <BR>;#include
<Resource.h> <BR>;#define
IDGEN 10
<BR>;#define DLG_MAIN 100 <BR>;#define
EDIT1 11
<BR>;#define EDIT2
12 <BR>; <BR>;DLG_MAIN DIALOGEX
100,150,250,60 <BR>;STYLE
DS_MODALFRAME|WS_POPUP|WS_VISIBLE|WS_CAPTION|WS_SYSMENU|WS_THICKFRAME
<BR>;CAPTION "BlowFish's CrackMe KenGen
By 夜月[CCG] " <BR>;FONT 9,"宋体" <BR>;
<BR>;BEGIN <BR>;CONTROL "
ID:",-1,"Static",SS_LEFT,10,13,40,17 <BR>;CONTROL
"SN:" ,-2,"Static",SS_CENTER,10,40,20,17 <BR>;CONTROL
"" ,11,"Edit",ES_LEFT,30,13,150,10
<BR>;CONTROL ""
,12,"Edit",ES_LEFT,30,40,150,10 <BR>;CONTROL
"GENERATE",IDGEN,"BUTTON",BS_PUSHBUTTON,200,11,40,15 <BR>;CONTROL
"EXIT",IDCLOSE,"BUTTON",BS_PUSHBUTTON,200,36,41,14
<BR>;END</SPAN></P></BLOCKQUOTE>
<HR width=735>
<SPAN class=p9></SPAN>
<P><SPAN class=p9><FONT color=blue>标 题:</FONT>BlowFish's CrackMe1 算法分析,以前夜月写过
(18千字)<BR><FONT color=blue>发信人:</FONT>DiKeN<SPAN class=pediy><BR><FONT
color=blue>时 间:</FONT>2002-4-11 13:53:00<BR><FONT
color=blue>详细信息:</FONT><BR></SPAN></SPAN></P>
<BLOCKQUOTE>
<P><SPAN class=p9><SPAN
class=pediy>========================================================= <BR>=
<BR>= BlowFish's CrackMe1 验证算法分析 <BR>=
DiKeN/OCG <BR>=========================================================
<BR><BR>* Possible Reference to Dialog: DialogID_0065, CONTROL_ID:03EB, ""
<BR>
| <BR>:004015A4 68EB030000
push 000003EB <BR>:004015A9 56
push esi
<BR><BR>* Reference To: USER32.GetDlgItemTextA, Ord:0000h <BR>
| <BR>:004015AA FF151C614000
Call dword ptr [0040611C] <BR>:004015B0 85C0
test eax, eax <BR>:004015B2
0F8432010000 je 004016EA
<BR>:004015B8 8D4C244C
lea ecx, dword ptr [esp+4C] <BR>:004015BC 8D542448
lea edx, dword ptr [esp+48] <BR>:004015C0 51
push ecx
<BR>:004015C1 52
push edx <BR>:004015C2 8D44240C
lea eax, dword ptr [esp+0C] <BR><BR>* Possible
StringData Ref from Data Obj ->"%08lX%08lX" <BR>
| <BR>:004015C6 686C804000
push 0040806C <BR>:004015CB 50
push eax <BR>:004015CC E81F020000
call 004017F0 <BR>:004015D1
8D4C245C lea ecx, dword
ptr [esp+5C] <BR>:004015D5 8D542458
lea edx, dword ptr [esp+58] <BR>:004015D9 51
push
ecx=========>[ecx]=0x90ABCDEF=xr <BR>:004015DA 52
push
edx=========>[edx]=0x12345678=xl <BR>:004015DB 6880894000
push 00408980====>P-Box(密钥盒)
<BR><BR>:004015E0 E8EBFAFFFF
call 004010D0====>计算Blowfish_Dec(long *xl,long *xr)
<BR>======================================BF_Dec过程分析============================
<BR> :004010D0 8B442408
mov eax, dword ptr [esp+08] <BR> :004010D4
8B4C240C mov ecx, dword
ptr [esp+0C] <BR> :004010D8 53
push ebx <BR> :004010D9
55
push ebp <BR> :004010DA 8B00
mov eax, dword ptr [eax]====>xl
<BR> :004010DC 56
push esi <BR> :004010DD 8B31
mov esi, dword
ptr [ecx]====>xr <BR> :004010DF 57
push edi <BR>
:004010E0 8B7C2414 mov
edi, dword ptr [esp+14] <BR> :004010E4 C744241410000000
mov [esp+14], 00000010 <BR> :004010EC
8D5F44 lea ebx,
dword ptr [edi+44]==>P-Box(FORM 18 to 1<==因此使用的Dec) <BR>
<BR> * Referenced by a (U)nconditional or (C)onditional
Jump at Address: <BR> |:0040110D(C) <BR> |
<BR> :004010EF 3303
xor eax, dword ptr [ebx] <BR>
:004010F1 50
push eax <BR> :004010F2 57
push edi <BR>
:004010F3 8BE8
mov ebp, eax <BR> :004010F5 E806FFFFFF
call 00401000
<BR>================================================================================
<BR>================================函数F(xl)
<BR>================================================================================
<BR> :00401000 8B4C2408
mov ecx, dword ptr [esp+08] <BR>
:00401004 53
push ebx <BR>
:00401005 8AC1
mov al, cl <BR>
:00401007 56
push esi <BR> :00401008
25FF000000 and eax, 000000FF
<BR> :0040100D 57
push edi <BR>
:0040100E C1E908
shr ecx, 08 <BR>
:00401011 8BD0
mov edx, eax <BR> :00401013
8AC1 mov
al, cl <BR> :00401015 8B7C2410
mov edi, dword ptr [esp+10]
<BR> :00401019 25FF000000
and eax, 000000FF <BR>
:0040101E C1E908
shr ecx, 08 <BR> :00401021
8BF0 mov
esi, eax <BR> :00401023 8BC1
mov eax, ecx
<BR> :00401025 C1E808
shr eax, 08 <BR>
:00401028 25FF000000
and eax, 000000FF <BR> :0040102D
81E1FF000000 and ecx, 000000FF
<BR> :00401033 81E6FFFF0000
and esi, 0000FFFF <BR>
:00401039 81E2FFFF0000 and
edx, 0000FFFF <BR> :0040103F 8B448748
mov eax, dword ptr
[edi+4*eax+48] <BR> :00401043
8B9C8F48040000 mov ebx, dword ptr
[edi+4*ecx+00000448] <BR> :0040104A
8B8CB748080000 mov ecx, dword ptr
[edi+4*esi+00000848] <BR> :00401051
03C3 add
eax, ebx <BR> :00401053 33C1
xor eax, ecx
<BR> :00401055 8B8C97480C0000
mov ecx, dword ptr [edi+4*edx+00000C48] <BR>
:0040105C 5F
pop edi <BR>
:0040105D 5E
pop esi <BR> :0040105E
03C1 add
eax, ecx <BR> :00401060 5B
pop ebx
<BR> :00401061 C3
ret
<BR>================================================================================
<BR>================================end 函数F(xl)
<BR>================================================================================
<BR> :004010FA 8B4C241C
mov ecx, dword ptr [esp+1C] <BR> :004010FE
83C408 add esp,
00000008 <BR> :00401101 33C6
xor eax, esi <BR> :00401103
83EB04 sub ebx,
00000004 <BR> :00401106 49 
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -