Dark Heaven - Tutorial: Registrierung von Applet Menu Wizard

Programm: 	Applet Menu Wizard v1.0
Beschreibung: 	Erstellung von HTML-Menues
Autor: 		(C) 1998 Source Tec Software Co. Ltd
Groesse: 	414.208 Bytes (APPLETMENUWIZARD.EXE)


Werkzeug: - W32DASM v8.93


1. Lade APPLET MENU WIZARD und anschlieend W32DASM.


2. Deassembliere nun APPLETMENUWIZARD.EXE ber [Debug/Attach to an Active
   Process].


3. Suche nun mittels [Refs/String Data References] nach der Fehlermeldung
   "Sorry, that is not a valid register code.". Durch einen Doppelklick wird
   die entsprechende Zeile im Listing angezeigt: 0040C7AB.

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0040C726(C)
|
:0040C7A7 6A00                    push 00000000       ; <- Sprung hierher suchen
:0040C7A9 6A00                    push 00000000

* Possible StringData Ref from Data Obj ->"Sorry, that is not a valid register "
                                        ->"code."
                                  |
:0040C7AB 68D0FC4300              push 0043FCD0          ; <- gefundene Referenz
:0040C7B0 E82DD20100              call 004299E2
:0040C7B5 8D4C240C                lea ecx, dword ptr [esp+0C]
:0040C7B9 C7442418FFFFFFFF        mov [esp+18], FFFFFFFF
:0040C7C1 E8688E0100              call 0042562E
:0040C7C6 8B4C2410                mov ecx, dword ptr [esp+10]
:0040C7CA 5F                      pop edi
:0040C7CB 5E                      pop esi
:0040C7CC 33C0                    xor eax, eax
:0040C7CE 64890D00000000          mov dword ptr fs:[00000000], ecx
:0040C7D5 5D                      pop ebp
:0040C7D6 83C410                  add esp, 00000010
:0040C7D9 C20800                  ret 0008


4. Um den Sprungbefehl zur Fehlermeldung zu finden, suchen wir mittels [Search/
   Find Text] nach der Adresse 0040C7A7.

* Referenced by a CALL at Address:
|:0040C8F0   
|
:0040C6B0 6AFF                    push FFFFFFFF
:0040C6B2 68A02B4300              push 00432BA0
:0040C6B7 64A100000000            mov eax, dword ptr fs:[00000000]
:0040C6BD 50                      push eax
:0040C6BE 64892500000000          mov dword ptr fs:[00000000], esp
:0040C6C5 51                      push ecx
:0040C6C6 55                      push ebp
:0040C6C7 56                      push esi
:0040C6C8 8BF1                    mov esi, ecx
:0040C6CA 57                      push edi
:0040C6CB 8D4C240C                lea ecx, dword ptr [esp+0C]
:0040C6CF E80F8E0100              call 004254E3
:0040C6D4 8B7C2420                mov edi, dword ptr [esp+20]
:0040C6D8 83C614                  add esi, 00000014
:0040C6DB 56                      push esi
:0040C6DC 8D442424                lea eax, dword ptr [esp+24]
:0040C6E0 57                      push edi
:0040C6E1 50                      push eax
:0040C6E2 C744242400000000        mov [esp+24], 00000000
:0040C6EA E801A0FFFF              call 004066F0
:0040C6EF 83C40C                  add esp, 0000000C
:0040C6F2 50                      push eax
:0040C6F3 8D4C2410                lea ecx, dword ptr [esp+10]
:0040C6F7 C644241C01              mov [esp+1C], 01
:0040C6FC E826900100              call 00425727
:0040C701 8D4C2420                lea ecx, dword ptr [esp+20]
:0040C705 C644241800              mov [esp+18], 00
:0040C70A E81F8F0100              call 0042562E
:0040C70F 8B6C2424                mov ebp, dword ptr [esp+24]
:0040C713 8B4C240C                mov ecx, dword ptr [esp+0C]
:0040C717 51                      push ecx
:0040C718 8B5500                  mov edx, dword ptr [ebp+00]
:0040C71B 52                      push edx
:0040C71C E8CF4E0000              call 004115F0           ; <- Breakpoint setzen
:0040C721 83C408                  add esp, 00000008
:0040C724 85C0                    test eax, eax
:0040C726 757F                    jne 0040C7A7     ; <- Sprung zur Fehlermeldung
:0040C728 E8BF320200              call 0042F9EC
:0040C72D 8B7004                  mov esi, dword ptr [eax+04]


5. In der Zeile 0040C726 ist der gesuchte Sprungbefehl zur Fehlermeldung zu
   finden (jne 0040C7A7). Auf den davorstehenden Funktionsaufruf (call 004115F0)
   setzen wir mit [F2] einen Breakpoint, wechseln zum APPLET MENU WIZARD und
   geben beliebige Registrierdaten ein:

   z.B. Email Adress : Dark Heaven
        Register Code: 1122334455


6. Nach der Eingabebesttigung wird W32DASM beim Breakpoint aktiv und wir knnen
   uns den Inhalt der einzelnen Register anschauen.

   EDX = 007C0F7C: EDX-00000020 = Dark Heaven
                   EDX+00000000 = 1122334455
   ECX = 007C152C: ECX+00000000 = 44DD9FF9816152E0 ( der gesuchte Code )


7. Mit dem gefundenen Code knnen wir nun APPLET MENU WIZARD registrieren und
   erhalten die Erfolgsmeldung "Thank you! Please restart".

   z.B. Email Adress : Dark Heaven
        Register Code: 44DD9FF9816152E0



Viel Spa beim CRACKEN!
Dark Heaven
01.02.1999


