How To Crack Industrie Gigant Gold Edition von WKz_Daedalus


Willkommen zu meinen 6. Deutschen Cracking-Tut.
Ich will mich erstmal fr die nichtvorhandenen Reaktionen auf die anderen 5 Tutz 'bedanken' und 
dann will ich noch klarstellen wer die Schuld an den Rechtschreibfehlern hat:
DU SCHEISS SIEMENS-TASTATUR !!!!

Warum dieses Drecks-Game ?

1. Gibs Ziemlich Billig im Laden
2. Gutes Beispiel fr ein lcherlichen CopyLock
3. Hab grad nix anderes hier 


Was brauchen wir ?

Solltest du eigentlich schon wissen : WinDasm und Hiew 


So dann last uns mal loslegen
Zuerst installierst du Ig voll, nimmst die CD raus und liest die Fehlermeldung :
'Folgende Grafikdatei konnte nich gefunden werden : E:\Gigant\Logo0.jgd".
Kurzer Blick auf unsere Platte, was stellen wir fest : Logo0.jgd is doch da.
Also Diassemblen und bei Strn Ref suchen. 
Wir landen hier :

...
:005E4918 896C2410                mov dword ptr [esp+10], ebp
:005E491C 7569                    jne 005E4987					' Springt hinter den ganzen Kram 

* Reference To: USER32.MessageBoxA, Ord:0195h
                                  |
:005E491E 8B1DD8826800            mov ebx, dword ptr [006882D8]			' Legt die MsgBox in den EBx

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:005E495E(C)
|
:005E4924 57                      push edi
:005E4925 8D442418                lea eax, dword ptr [esp+18]

* Possible StringData Ref from Data Obj ->"Folgende Grafikdatei konnte nicht "
                                        ->"gefunden werden:"
                                  |
:005E4929 68C0A86700              push 0067A8C0					' bergibt den String an die MsgBox
:005E492E 50                      push eax
:005E492F E89C2C0200              call 006075D0
:005E4934 83C40C                  add esp, 0000000C
:005E4937 8D4C2414                lea ecx, dword ptr [esp+14]
:005E493B 6815100000              push 00001015

* Possible StringData Ref from Data Obj ->"Der IndustrieGigant"
                                  |
:005E4940 6860686700              push 00676860					' Der Window-Title fr die Box
:005E4945 51                      push ecx
:005E4946 6A00                    push 00000000
:005E4948 FFD3                    call ebx					' Fhrt EBX aus ( EBX = MsgBox, siehe oben)
:005E494A 83F804                  cmp eax, 00000004
...

und hier :

...
:005E21EA 3BC5                    cmp eax, ebp
:005E21EC 7562                    jne 005E2250					' Wieder ein Jump hinter den ganzen Kram
:005E21EE 57                      push edi
:005E21EF 8D442414                lea eax, dword ptr [esp+14]

* Possible StringData Ref from Data Obj ->"Folgende Grafikdatei konnte nicht "	' Das gleiche wie oben
                                        ->"gefunden werden:"
                                  |
:005E21F3 68C0A86700              push 0067A8C0
:005E21F8 50                      push eax
:005E21F9 E8D2530200              call 006075D0
:005E21FE 83C40C                  add esp, 0000000C
:005E2201 8D4C2410                lea ecx, dword ptr [esp+10]
:005E2205 6815100000              push 00001015

* Possible StringData Ref from Data Obj ->"Der IndustrieGigant"
                                  |
:005E220A 6860686700              push 00676860
:005E220F 51                      push ecx
:005E2210 55                      push ebp

* Reference To: USER32.MessageBoxA, Ord:0195h
                                  |
:005E2211 FF15D8826800            Call dword ptr [006882D8]			' Die MsgBox
:005E2217 83F804                  cmp eax, 00000004				' Wertet das Ergebnins aus ( Wiederholen oder Abbrechen )
:005E221A 7512                    jne 005E222E
:005E221C 8BCF                    mov ecx, edi
:005E221E E850FDE1FF              call 00401F73
:005E2223 898634040000            mov dword ptr [esi+00000434], eax
:005E2229 E922FDFFFF              jmp 005E1F50

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:005E221A(C)
|
:005E222E 83F802                  cmp eax, 00000002				' Wertet die MsgBox auch aus
:005E2231 751D                    jne 005E2250
:005E2233 55                      push ebp

* Reference To: USER32.ClipCursor, Ord:0037h
                                  |
:005E2234 FF1560836800            Call dword ptr [00688360]
:005E223A A1FC0D6800              mov eax, dword ptr [00680DFC]
:005E223F 55                      push ebp
:005E2240 55                      push ebp
:005E2241 6873040000              push 00000473
:005E2246 8B501C                  mov edx, dword ptr [eax+1C]
:005E2249 52                      push edx

* Reference To: USER32.SendMessageA, Ord:01DAh
                                  |
:005E224A FF155C836800            Call dword ptr [0068835C]

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:005E21EC(C), :005E2231(C)
|
:005E2250 392DC80E6800            cmp dword ptr [00680EC8], ebp
:005E2256 742A                    je 005E2282
...

Schn wir haben zwei Tolle Stellen gefunden mit 2 schnen Conditionla Jumpz davor.
Also zu Jmps ndern und testen.
Und jetzt der Schock : Es strzt einfach ab
Grund : Wir haben blo die Fehlermeldung gekillt, der Fehler ist aber immer noch da.
IG versuchht jetzt auf E eine Datei zu ffnen die es da garnicht gibt.
Also mssen wir den IG dazu bringen, die Datei wo anders zu suchen.
Das E mein CD-Laufwerk ist hat IG bestimmt nicht geraten, denn damals war ja D meisten noch das CD-Drive.
Also nach GetDriveTypeA suchen lassen und schon sind wir hier:

...
* Reference To: KERNEL32.GetDriveTypeA, Ord:00DFh
                                  |
:005AB9E9 8B35787E6800            mov esi, dword ptr [00687E78]			' Legt den GetDriveTypea in den Esi
:005AB9EF 892DC00E6800            mov dword ptr [00680EC0], ebp
:005AB9F5 BB41000000              mov ebx, 00000041

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:005ABA2B(C)
|
:005AB9FA 0FBEC3                  movsx eax, bl
:005AB9FD 50                      push eax
:005AB9FE 8D4C242C                lea ecx, dword ptr [esp+2C]

* Possible StringData Ref from Data Obj ->"%c:\"
                                  |
:005ABA02 6868A36700              push 0067A368
:005ABA07 51                      push ecx
:005ABA08 881D1C326800            mov byte ptr [0068321C], bl
:005ABA0E E8BDBB0500              call 006075D0
:005ABA13 83C40C                  add esp, 0000000C
:005ABA16 8D542428                lea edx, dword ptr [esp+28]
:005ABA1A 52                      push edx
:005ABA1B FFD6                    call esi					' Fhrt den GetDriveType aus ( ESI = GetDriveTypea )
:005ABA1D 83F805                  cmp eax, 00000005				' Wertet das Teil aus
:005ABA20 7505                    jne 005ABA27					' Wenn der Drive kein CD-Drive ist berspring IG das :
:005ABA22 BB64000000              mov ebx, 00000064				' Ein Wert wird den EBX geschrieben

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:005ABA20(C)
|
:005ABA27 43                      inc ebx					' Der Wert wird verndert
:005ABA28 83FB5B                  cmp ebx, 0000005B				' Der vernderte ( oder nicht vernderte ) Wert wird berprft
:005ABA2B 7CCD                    jl 005AB9FA					' Wenn der Wert Falsch ist, Probiert IG das nachste Laufwerk
:005ABA2D 55                      push ebp
...

IG fhrt das also so lange aus, bis er ein CD-Drive findet und ffnet auf den Drive dann die Logo0.jgd 
Msste da nicht eigentlich heissen, das IG blo im ersten CD-Drive startet ?
Also CD in denn Brenner und geht tatschlich nicht.
Schlechte Arbeit Jungs !!!
Das heit fr uns, das wir den Jump hinter den Compare nicht einfach wegnoppen knnen, 
dann wrde er nmlich versuchen die Datei von Diskette zu laden.
Also den Compare so ndern, das er die Datei von der ( ersten ) Platte nimmt.
Aber ist nun der Code fr ne HDD ? --> mall im MSDN nachschaun und was steht da unter getdrivetype-Konstanten ?

Unknown 	0 	Der Laufwerkstyp kann nicht festgestellt werden. 
Removable 	1 	Das Laufwerk enthlt austauschbare Medien. Dazu gehren alle Diskettenlaufwerke sowie eine Vielzahl weiterer Speichergerte. 
Fixed 		2 	Das Laufwerk enthlt feste (nicht austauschbare) Medien. Dazu gehren alle Festplattenlaufwerke, einschlielich Wechselplatten. 
Remote 		3 	Netzwerklaufwerke. Dazu gehren Laufwerke, die an einer beliebigen Stelle des Netzwerks gemeinsam benutzt werden. 
RAMDisk 	4 	Das Laufwerk ist ein Block von nichtlchtigem Speicher (RAM) auf dem lokalen Computer, der sich wie ein Plattenlaufwerk verhlt. 
CDROM 		5 	Beim Laufwerk handelt es sich um ein CD-ROM-Laufwerk. Es wird kein Unterschied zwischen CD-ROM-Laufwerken, von denen nur gelesen und solchen von denen gelesen und auf die geschrieben werden kann, gemacht. 

Nun ndern wir den Cmp eax,05 in Cmp eax,02 und es sollte jetzt funzen, falls Ig auf C ist.
Tja tut mir leid aber ich hab grad keine Lust IG so umzubauen, da er alle Drives nach der Datei checkt.
Vielleicht heut Nacht...

Wenn ihr Vorschlge fr neue Tutz oder Kritk habt mailt mir:

		WKz_Daedalus@gmx.net
		WWW.GEOCITIES.COM/WKZ

Greetz :
		Alle WKz Memberz
	        GHa 
		r!sc
		DecOde12
		Black Check
		sn00pee
		gonzo 
		Xcrk
		Laxity
		Duellist
		ByteBurn


   



