				..:: Tutorial#3 by Firestar ::..

					Date: 09/27/2000

Unser Opfer:
=============
Battlezone 2 v1.12


Wir bentigen:
===============
- WinDasm *.*
- Hiew *.* oder irgend nen anderen HexEditor
- Grundlegendes Wissen ber den Umgang mit WinDasm
- Einen Stift und einen Zettel um uns die Offsets aufzuschreiben
- Gute Musik die im Hintergrund luft! (Ich bevorzuge Bhse Onkelz ;)


Also fangen wir an:
====================
Falls ihr das Update auf Version 1.12 noch nicht habt dann ladet ihr euch das jetzt erstmal runter. Das knnt ihr auf www.3dfiles.com machen. 
So nachdem ihr euch nun das Update heruntergadel und installiert habt startet ihr das Spiel mal ohne das die Battlezone2-CD im CD-Rom-Laufwerk ist. Aber das wird nicht klappen, ihr bekommt dann ein Fenster zu sehen, dass euch auffordert die CD einzulegen. :(

Was machen wir jetzt? Genau wir starten WinDasm und laden die 'bzone.exe' hinein. Dann gehen wir auf 'Refs' -> 'StringDataReferences' und suchen den Eintrag 'Please insert the BZ2 CD'. Das ist die Stelle bei der das Fester aufgerufen wird das uns mitteilt, dass sich die CD nicht im Laufwerk befindet! Dann scrollen wir 4 Zeilen hoch. Dann msstet ihr an folgender Stelle sein:

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004849B7(C)	<-In dieser Zeile befinden wir uns jetzt!

Dann klicken wir 2 mal mit der rechten Maustaste auf '|:004849B7(C)', um zu dem Jump zu kommen der die Fehlermeldung aufruft.

Nun sind wir hier:

:00489A5	FFD5		call ebp
:00489A7	83F802		cmp eax, 00000002
:00489AA	0F84B6000000	je 00484A66	<- Der erste Jump der die Fehlermeldung 						   aufruft
:004849C0	E80BEB1200	call 005B34C0
:004849B5	85C0		test eax, eax
:004849B7	7487		je 0048490	<- Und hier ist der zweite Jump zur 						   	   Fehlermeldung

...
....
.....

Geht in die Zeile in der die beiden Jumps sind und schreibt die Offsets davon auf (849AA, 849B7). 
Nun schliet ihr WinDasm und startet Hiew. Ladet wieder die .exe-Datei von Battlezone hinein und geht zu den beiden Offsets um sie umzuschreiben. Dazu drckt ihr bei Hiew die F5-Taste und gebt dann den ersten Offset ein. (849AA) Nun schreibt ihr die bytes von '0F84B6000000' in '90EBB6000000' um. Das bewirkt, dass das Spiel immer gestartet wird, auch wenn keine CD eingelegt ist. Er springt also immer!
Aber es gibt ja noch den 2. Sprung. Den mssen wir nun auch noch umschreiben! Mach einfach aus dem '7487' ein 'EB57'. Diese nderung bewirk wieder genau das gleiche wie die erste, es wird immer gesprungen, egal ob die CD drin ist oder nicht!

So das was schon wieder fr dieses mal. Ich hoffe das mein Tut euch ein bischen geholfen hat. Wenn ihr irgendwas nicht versteht, mich kritisieren wollt, mir sagen wollt wie gut mein Tut ist ;) oder sonst irgendwelche Fragen an mich hab knnt ihr euch ja bei mir melden. Vielleicht schreib ich dann auch mal wieder ein Tutorial fr euch. :) 

Greetz fly out to:
===================
ACG, e!, tca, Ahlman, EnigmA, WebToaster, and all crackes all around the world ;)


Contact me at: 
===============
E-Mail: fire_star@gmx.net
ICQ: 55414485


Cu Firestar