Age of Empires
Zerobyte
zerobyte@freenet.de
www.freenet.de/zerobyte


				-=How to crack Age of Empires v.1.0a=-

Hey Leute !
Heute will ich mal schnell zeigen wie man diese Version von Age of Empires crackt.
Also wollen wir auch gleich mal anfangen.

Ich denke mal ich werde das Tutor mal etwas leichter schreiben, denn die Tutors sind
ja da um anderen das Cracken bei zu bringen. 

Was wir wie immer brauchen.
W32DASM - Einen Disassembler, den es auf meiner kleinen Homepage gibt.
und einen beliebigen HexEditor. Hiew oder HexWorkshop sind zu empfehlen.
HexWorkshop - www.bpsoft.com
Hiew - auf meiner WebSite
die Age of Empires CD mit der Version 1.0a.

Um dieses Spiel cracken zu knnen mssen wir es erst einmal installieren. Da wir
im Windows arbeiten , geschieht das ganz einfach. CD rein -> Setup und dann installieren
wir  den Mll vole Hte. ( so ca. 180 MB ).
Nach der Installation starten wir das Spiel [ Aber ohne die CD ] -> die Videos knnen 
wir mit den EnterTaste berspringen, denn sie nehmen zuviel Zeit weg.
Nun klicken wir auf Einzelspieler oder sowas, aber was ist das ?
Sie mssen die ...was ?
Okay, das ist ein anfang, diesen kleinen Text merken wir uns..aber nicht aufschreiben.
Jetzt beenden wir AOE und starten unser W32DASM. Wir gehen auf "Disassembler" /
"Open file.." und dann whlen wir die empires.exe. Nach einer kurzen Zeit drfte er
fertig sein. Wenn ihr nur irgendwelche nicht lesbaren Zeichen seht klickt auf "Disassembler"
/ "Font" / "Select Font" und sucht euch was tolles aus. 
Nun msste man dort fast nur Zahlen sehen, aber egal das hier erst mal nicht wichtig.

Wir klicken auf den zweiten Button von rechts. StrnRef. Es ist der selbe Effekt wenn wir
auf Refs und dann String Data References drcken. Nun drfte ein kleines Fenster erscheinen
in dem wir hin und her scrollen knnen. Hier msst ihr nach der Fehlermeldung suchen..ABER
ihr werdet sie nicht finden ! Also mssen wir nach einer 2ten Variante suchen. Klickt dazu
einfach auf den Button auf dem steht "Imp" das bedeutet Import und dieses Fenster zeigt
euch alle API Funktionen die Importiert werden. Sucht in diesem Fenster nach GetDriveType,
ihr werden es bei der Kernel finden. Klickt es doppelt an und dann gleich noch einmal, denn
es gibt mehrere. Der 2te ist der richtige. Nun msstet ihr das hier sehen.:


004D826F 3BCA                    cmp ecx, edx
:004D8271 0F9DC0                  setnl al
:004D8274 E98F000000              jmp 004D8308

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004D822E(C)
|
:004D8279 A198755600              mov eax, dword ptr [00567598]
:004D827E 85C0                    test eax, eax
:004D8280 7407                    je 004D8289 <-- Mmh ! Das ist ja der bse Junge
:004D8282 B801000000              mov eax, 00000001
:004D8287 EB7F                    jmp 004D8308

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004D8280(C)					<--Oh , ein Jump ?!
|

* Possible StringData Ref from Data Obj ->"CDPath" <-- Was ist das ?
                                  |
:004D8289 6890F65500              push 0055F690
:004D828E 8B8EAC010000            mov ecx, dword ptr [esi+000001AC]
:004D8294 6A00                    push 00000000
:004D8296 E81570FEFF              call 004BF2B0
:004D829B 8BF8                    mov edi, eax
:004D829D 85FF                    test edi, edi
:004D829F 7504                    jne 004D82A5 <-- Hier ist zwar noch einer , aber der ist fr die Kernel da.
:004D82A1 33C0                    xor eax, eax
:004D82A3 EB63                    jmp 004D8308

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004D829F(C)					

:004D82A5 57                      push edi

* Reference To: KERNEL32.GetDriveTypeA, Ord:00DEh <-- Hier mssten wir gelandet sein !
                                  |
:004D82A6 FF1510177E00            Call dword ptr [007E1710]
:004D82AC 83F805                  cmp eax, 00000005
:004D82AF 7404                    je 004D82B5
:004D82B1 33C0                    xor eax, eax
:004D82B3 EB53                    jmp 004D8308

Wie wir hier entnehmen knnen, ist die Funktion der Kernel herauszufinden welche CD im Laufwerk ist.
Da wir aber keine CD im Laufwerk haben , mssen wir das ganze etwas manipulieren. Von der Zeile
von der Bse Junge  schreiben wir uns den Offset ab. Dazu markieren wir diese Zeile unten
gucken auf die Statuszeile von W32DASM und lesen diesen Wert ab: 000D7680h <- das h kann man 
weglassen es bedeutet Hex.
So jetzt knnen wir W32DASM beenden und kommen zum eigentlichen Cracken..

Let's Rock

Wir laden unseren HexEditor, ob es nun Hiew oder etwas anderes ist ..ist total egal.
Ich bevorzuge HexWorkshop, der ist schnell einfach zu bedienen und lsst sich nebenbei
auch noch leicht cracken ;-)
Wir ffnen die empires.exe und gehen zu dem Offset  [ 000D7680 ] meitens irgendwie mit GoTo.
Nun msstet ihr 7407 sehen. Wir knnen mit HexWorkshop gleich editieren und mit Hiew muss
man erst F3 drcken. Egal, ndert den Wert einfach in 7507 um. Dann das ganze speichern.
Jetzt starten und was ist ... BOOOOM !
Es ist gecrackt..wenn ihr wollt kann man das ganze etwas verschnellern indem man die
Videos lscht, und dann AOE packt. Es mssten dann gepackt so 35 MB sein. Viel Spa !
Wenn ihr Fragen habt, stellt sie einfach. 

=--------------=
zerobyte@freenet.de
www.freenet.de/zerobyte
=--------------=