    Һã3ͷڸ㶨ȷ˵crackmeеľ䣬ҺȤζʱ;ɹ˼źܶ˶׵crack֣Ȼһcrackerѧղ˺ܳʱŵԽʵǲڴˣֻдҵһ뷨͸ܣʹ̽һ£ϣλϺָ̣

   Թʼ򡣳checkťǼĿ¼һkeyļʾǷעɹƽʱϰߣW32Dasm鿴һϧõW32Dasm汾ֶ֧ã:(֪ûкõİ汾µַCongratulations!  Mail me (KwazyWebbit@hotmail"ǺǣٺǵĿЩϵģ˫ݣ

* Reference To: GDI32.MoveToEx, Ord:0147h
                                  |
:0040113D E812070000              Call 00401854
:00401142 FF7518                  push [ebp+18]
:00401145 FF7514                  push [ebp+14]
:00401148 FF7508                  push [ebp+08]

* Reference To: GDI32.LineTo, Ord:0144h
                                  |
:0040114B E8FE060000              Call 0040184E
:00401150 C9                      leave
:00401151 C21400                  ret 0014


:00401154 33D2                    xor edx, edx
:00401156 B82E522E55              mov eax, 552E522E
:0040115B B9454D414C              mov ecx, 4C414D45
:00401160 33C1                    xor eax, ecx
:00401162 0553494854              add eax, 54484953
:00401167 B941205349              mov ecx, 49532041
:0040116C 0BC1                    or eax, ecx
:0040116E 2D454B4146              sub eax, 46414B45
:00401173 23D0                    and edx, eax
:00401175 81FADEC0AD0B            cmp edx, 0BADC0DE
:0040117B 7513                    jne 00401190
:0040117D 6A00                    push 00000000

* Possible StringData Ref from Data Obj ->"Success.."
                                  |
:0040117F 6859334000              push 00403359

* Possible StringData Ref from Data Obj ->"Congratulations!  Mail me (KwazyWebbit@hotmail"
                                        ->".com) how you did it.  Dont forget "
                                        ->"to include your keyfile! =]"
                                  |
:00401184 68EC324000              push 004032EC
:00401189 6A00                    push 00000000

* Reference To: USER32.MessageBoxA, Ord:01BBh                   ʾһԻ򣬸Ѿɹˣ
                                  |
:0040118B E81C060000              Call 004017AC

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040117B(C)
|
:00401190 C3                      ret


    һ£ַϵͳMessageBoxA㱨ѾɹƽˣȻǷءǰʵڲű߼ʣˮƽޣǷW32Dasm̬òԪϼSoftIce֮ǰFile Monitorٷһ£
2	20:11:42	Pacme	Open	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	NOTFOUND	OPENEXISTING READONLY DENYNONE 
	
    ߰checkťʱҪһΪkwazyweb.bitļһļΪkwazyweb.bit
380	20:12:32	Pacme	Open	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	SUCCESS	OPENEXISTING READONLY DENYNONE 	
381	20:12:32	Pacme	Read	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	SUCCESS	Offset: 0 Length: 1	
382	20:12:32	Pacme	Close	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	SUCCESS	CLOSE_FINAL
	
    ļͷȡһֽڣļдһֽڡ1continue
1183	20:13:00	Pacme	Open	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	SUCCESS	OPENEXISTING READONLY DENYNONE 	
1184	20:13:00	Pacme	Read	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	SUCCESS	Offset: 0 Length: 1	
1185	20:13:00	Pacme	Read	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	SUCCESS	Offset: 1 Length: 49	
1186	20:13:00	Pacme	Read	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	SUCCESS	Offset: 1 Length: 18	
1187	20:13:00	Pacme	Close	C:\WINDOWS\DESKTOP\KWAZYWEB.BIT	SUCCESS	CLOSE_FINAL	

    ֳȡļĴԭһα䵽Σоһ£ֵڶζȡݵĳ49պ'1'ASCIIֵãֻǲ²⡣W32Dasm֤ʵһ£ReadFileõĴպ3ΣңڶζȡĳΪeaxǵһζȡֵⲻɺϣζĳΪ0x12պʮ18File MonitorȫǺϡ

:004016EA 6848344000              push 00403448
:004016EF 6A01                    push 00000001
:004016F1 68FA344000              push 004034FA
:004016F6 FF3544344000            push dword ptr [00403444]

* Reference To: KERNEL32.ReadFile, Ord:01FDh
                                  |
:004016FC E811010000              Call 00401812				ȡļĵһֽڣ[004034FA]
:00401701 0FB605FA344000          movzx eax, byte ptr [004034FA]
:00401708 85C0                    test eax, eax
:0040170A 743B                    je 00401747
:0040170C 6A00                    push 00000000
:0040170E 6848344000              push 00403448
:00401713 50                      push eax
:00401714 6888324000              push 00403288				i am herehehe
:00401719 FF3544344000            push dword ptr [00403444]

* Reference To: KERNEL32.ReadFile, Ord:01FDh
                                  |
:0040171F E8EE000000              Call 00401812				ӵڶֽڿʼȡݣeaxһ
									ĴС
:00401724 E8D7F8FFFF              call 00401000				һؼݣһҪȥ:)
:00401729 6A00                    push 00000000
:0040172B 6848344000              push 00403448
:00401730 6A12                    push 00000012
:00401732 68E8344000              push 004034E8
:00401737 FF3544344000            push dword ptr [00403444]

* Reference To: KERNEL32.ReadFile, Ord:01FDh
                                  |
:0040173D E8D0000000              Call 00401812				ζȡݣΪ0x1218
:00401742 E882F9FFFF              call 004010C9				ؼڣF8ȥ


    SoftICe¶ϵbpx readfileλãļȡReadFileǷɹıҪ֮⣬ûʲôתcallҲ࣬ʹҸеǳˡF800401724call 00401000ĵط

:00401000 33C0                    xor eax, eax
:00401002 33D2                    xor edx, edx
:00401004 33C9                    xor ecx, ecx
:00401006 8A0DFA344000            mov cl, byte ptr [004034FA]		ǵֵ𣬿棬ļһֽڵֵ
:0040100C BE88324000              mov esi, 00403288			濴ǵڶζȡݵĻ
:00401011 AC                      lodsb					ȡݵAL
:00401012 03D0                    add edx, eax				ALӵEDX
:00401014 E2FB                    loop 00401011				ظǽڶۼ
:00401016 8815FB344000            mov byte ptr [004034FB], dl		ŵ[004034FB]ע⣬ԺҪõ
:0040101C C3                      ret


    ٵڶcall00401742call 004010C9£

:004010C9 55                      push ebp
:004010CA 8BEC                    mov ebp, esp
:004010CC 83C4FC                  add esp, FFFFFFFC

* Possible StringData Ref from Data Obj ->"****************C*......*...****.*.****...*..."  ݷǳȤ
                                        ->".*.*..**********.*..*....*...*...**.****.*.*.."
                                        ->".****.*....*.*******..*.***..*.....*.*..***.**"
                                        ->".***.*...****....*X..*****************"
                                  |
:004010CF 6865334000              push 00403365

* Possible StringData Ref from Data Obj ->"****************C*......*...****.*.****...*..."
                                        ->".*.*..**********.*..*....*...*...**.****.*.*.."
                                        ->".****.*....*.*******..*.***..*.....*.*..***.**"
                                        ->".***.*...****....*X..*****************"
                                  |
:004010D4 68BC314000              push 004031BC

* Reference To: KERNEL32.lstrcpyA, Ord:02DCh
                                  |
:004010D9 E83A070000              Call 00401818				򵥵Ŀ
:004010DE C70584314000CC314000    mov dword ptr [00403184], 004031CC	עһָͼеĵڶУΪ									Ϊ offsetOfPrettyPicture
:004010E8 E830FFFFFF              call 0040101D				ζȡ18
:004010ED C645FE00                mov [ebp-02], 00
:004010F1 33C0                    xor eax, eax
:004010F3 33C9                    xor ecx, ecx

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401128(C)
|
:004010F5 C645FF08                mov [ebp-01], 08			ѭʼ

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040111F(C)
|
:004010F9 806DFF02                sub byte ptr [ebp-01], 02		Сѭʼ
:004010FD 0FB64DFE                movzx ecx, byte ptr [ebp-02]
:00401101 81C1E8344000            add ecx, 004034E8
:00401107 8A01                    mov al, byte ptr [ecx]
:00401109 8A4DFF                  mov cl, byte ptr [ebp-01]
:0040110C D2E8                    shr al, cl
:0040110E 2403                    and al, 03
:00401110 E81EFFFFFF              call 00401033				עڸcallʵ!!!!!!!!!!!!
:00401115 85C0                    test eax, eax
:00401117 7411                    je 0040112A				!!!!!!!!ǹؼڣת˳ú									κα仯
:00401119 0FB655FF                movzx edx, byte ptr [ebp-01]
:0040111D 85D2                    test edx, edx
:0040111F 75D8                    jne 004010F9				СѭѭΪ4Σ[ebp-01]8Ϊ0
:00401121 FE45FE                  inc [ebp-02]
:00401124 807DFE12                cmp byte ptr [ebp-02], 12
:00401128 75CB                    jne 004010F5				ѭѭΪ0x1218ΪݻĴС

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401117(C)
|
:0040112A C9                      leave
:0040112B C3                      ret

    һcallҲ࣬Ǻǣˣ
ȿ004010E8call 0040101D

:0040101D 8A15FB344000            mov dl, byte ptr [004034FB]		ǵðעݣǵڶݵĺ
:00401023 B912000000              mov ecx, 00000012
:00401028 B8E8344000              mov eax, 004034E8
:0040102D 3010                    xor byte ptr [eax], dl
:0040102F 40                      inc eax
:00401030 E2FB                    loop 0040102D
:00401032 C3                      ret

    úĹܾǰѵζȡ18ǰõĺͽ򡣿Ϊ˱Ҫ鷳޸kwazyweb.bitļʹõһֽΪ0x01סҪ16ƹ߱༭ڶֽΪ0x00õĺΪ0κ0ʱ䣬һ㣬ʡȥ˲鷳18ֽڡļСһ20ֽڡ

    ãǵķúbyte͵ľֱֲ[ebp-01][ebp-02] (һword͵ı[ebp-04]ڱһݣᵽ)ѭѭΪ˴18ݣСѭÿһݽ4δ6420λ֮ȡ2λΪ0x12345678ֱ0x120x340x560x78Ϊ00401110 call 00401033ֵǷ˳ǰ֪̽ע00401110 call 00401033ʵ֣һؼĺдʲô

:00401033 55                      push ebp
:00401034 8BEC                    mov ebp, esp
:00401036 83C4F8                  add esp, FFFFFFF8
:00401039 8B1584314000            mov edx, dword ptr [00403184]
:0040103F 8955FC                  mov dword ptr [ebp-04], edx		;offsetOfPrettyPictureֵھֲ[ebp-04]
:00401042 0AC0                    or al, al
:00401044 7509                    jne 0040104F				AL0
:00401046 832D8431400010          sub dword ptr [00403184], 00000010	AL=0offsetOfPrettyPicture0x10ƣ
:0040104D EB1F                    jmp 0040106E				

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401044(C)
|
:0040104F 3C01                    cmp al, 01				AL1
:00401051 7508                    jne 0040105B				
:00401053 FF0584314000            inc dword ptr [00403184]		AL=1offsetOfPrettyPicture0x01ƣ
:00401059 EB13                    jmp 0040106E
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401051(C)
|
:0040105B 3C02                    cmp al, 02				AL=2
:0040105D 7509                    jne 00401068
:0040105F 83058431400010          add dword ptr [00403184], 00000010	AL=2offsetOfPrettyPicture0x10ƣ
:00401066 EB06                    jmp 0040106E

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040105D(C)
|
:00401068 FF0D84314000            dec dword ptr [00403184]		AL=3offsetOfPrettyPicture0x01ƣ

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:0040104D(U), :00401059(U), :00401066(U)
|
:0040106E 8B1584314000            mov edx, dword ptr [00403184]
:00401074 8A02                    mov al, byte ptr [edx]		offsetOfPrettyPictureֵ
:00401076 3C2A                    cmp al, 2A				Ϊ0x2A'*'
:00401078 7506                    jne 00401080
:0040107A 33C0                    xor eax, eax				'*',򷵻0һĺ˳Զûлע
:0040107C C9                      leave
:0040107D C3                      ret


:0040107E EB33                    jmp 004010B3

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00401078(C)
|
:00401080 3C58                    cmp al, 58				Ϊ0x58'X'
:00401082 752F                    jne 004010B3
:00401084 6A00                    push 00000000				;'X'עɹͼֻһֵXExit
:00401086 8D1559334000            lea edx, dword ptr [00403359]		;"Sucess..."
:0040108C 52                      push edx
:0040108D 8D15EC324000            lea edx, dword ptr [004032EC]		;"Congratulations"....
:00401093 52                      push edx
:00401094 6A00                    push 00000000
:00401096 8D15AC174000            lea edx, dword ptr [004017AC]		;[User32.MessageBoxA];SoftIceпԿʾ
:0040109C FFD2                    call edx				ϲ㣬ͻʾɹϢ
:0040109E 8D157B324000            lea edx, dword ptr [0040327B]
:004010A4 52                      push edx
:004010A5 FF3520344000            push dword ptr [00403420]
:004010AB 8D15DC174000            lea edx, dword ptr [004017DC]		;[User32.SetWindowTextA];ͬ
:004010B1 FFD2                    call edx

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:0040107E(U), :00401082(C)
|
:004010B3 8B1584314000            mov edx, dword ptr [00403184]		
:004010B9 C60243                  mov byte ptr [edx], 43		offsetOfPrettyPictureֵΪ0x43'C'										Currentǰλ
:004010BC 8B55FC                  mov edx, dword ptr [ebp-04]		;ǰoffsetOfPrettyPictureֵ
:004010BF C60220                  mov byte ptr [edx], 20		һoffsetOfPrettyPictureֵΪ
									0x20ո񣬱ʾѾ߹·
:004010C2 B801000000              mov eax, 00000001
:004010C7 C9                      leave
:004010C8 C3                      ret

    һ֮󣬲ŷԭڽһСϷ˼·һ18Σÿο418δѭ4Сѭ'*'game overľͿcontinueֱ'X'ϷˡͼֻǸеЩЩŹ֣˷㷨֮󣬲ŷʵһԹǵȷĴԹд棬һΨһ'X'Ҿ룬õУֲ'*'տʼ˺þãû뵽ʵķֱҽȫʾdataŪЩŷһôͼƬҲòߵ֣ҰͼƬdump˳£

****************
C*......*...****
.*.****...*....*
.*..**********.*
..*....*...*...*
*.****.*.*...***
*.*....*.*******
..*.***..*.....*
.*..***.**.***.*
...****....*X..*
****************
𣿲һ׼ԹCʼX·Ѿǳˣ˳'.'߾ˣûУǺǣûм׵Թ߶ͶһοʰɡľˣҶĳ'0','1','2','3'ͼƬһǰͿԵõһϵݣ

                                    
2 2 2 1	   2 2 2 3    2 2 1 1    0 1 0 0    1 1 1 0    0 3 3 3    0 3 0 0    1 1 1 1    1 2 1 1
                                              
0 1 1 2    1 1 1 2    2 3 3 2    3 3 0 3    3 2 2 2    3 2 2 1    1 1 0 0    1 1 1 1    2 2 3 3

ߵĶԲԡν4ת16Ϊ

A9 AB A5 10 54 3F 30 55 65 16 56 BE F3 EA E9 50 55 AF			;KWAZYWEB.BIT

ɹ֮ͼӣ

****************
 *      *   ****
 * ****   *    *
 *  ********** *
  *    *   *   *
* **** * *   ***
* *    * *******
  * ***  *     *
 *  *** ** *** *
   ****    *C  *
****************
߹ĵطһƶϴǺ

    KWAZYWEB.BITȫݡΪֹѾеĹԭеcheck͵ԻעɹоˬѧcrackָовľıеĻǡCracked by : ûаԼָŪȥŪһµģʵ̫ˣ˰ɡλϺ⣬Ǻǡ

    һ㣬ȫW32DasmЧʸһЩ˵ѧղģǺǣҪ˭ȫW32Dasmƽ⣬ϣָһʤмҵĵһƪ£дĲãλڴѧͶҵ֪ҪƮηҶԼŨȤرϲֻ̣ϧʱ䲻㣬ҲֻǸˮƽ̫ˣ̸һֱĽЩŸˮƽcrackerhackerҲͳɹһ̵ĸоѧϰ˽йط֪ʶ־ͬߣཻ


    ҵemaillittlejackyonline@263.netƪʲôʻߴͽ̣뷢emailqq:22892341Ǳ𹥻Ұ:),bye------


						----------------  jackyspy 2001.8.8ҹ