___ ___ _ _ ____ ___ ____ ____ ____ _/ /_/ // \/ \ / \ / // \ / \ / \ /_ _/ // \ ___// // ___// ___// ___/ / //__// \___// // ___//___ //___ / /______//___\__/\ \_//____/___ / \____/ \____/ \__\ ~~~~~~~~tIMELESS~~~~~~~~ Member of fRACTUs`99 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | Keygen ( ) RegKey ( ) Regfile ( ) Crack ( ) Appz ( ) | | | | Tutor (x) Progz ( ) Message ( ) Filez ( ) Other ( ) | | | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Tutor 2: ~~~~~~~~ Programm: WinRescue98 Cracker: tIMELESS Benötigte Zeit: 5 min Benötigte Tools: W32Dasm 8.9, Hex-Editor Auf zum nächsten Streich! ~~~~~~~~~~~~~~~~~~~~~~~~~ Tja, ich bin wieder da. Diesmal musste WinRescue98 dran glauben. Tolles Tool (zur Sicherung der Systemdateien unter Win98), und da ich immer noch auf meinem Microsoft ERU festsitze, musste mal was Neues her. Der Anfang: ~~~~~~~~~~~ ...war nicht schwer. Programm installieren, starten, die Codeabfrage kommt gleich am Anfang, falscher Code eingeben und..... "WARNING! Incorrect Key". Merken! Auf in den W32Dasm, disassemblieren, String Data Reference wählen, nach der Nachricht suchen, fündig werden. Das nochmalige Klicken auf die Nachricht bringt das Ergebnis: Keine andere Reference im Programm, PERFEKT! So, jetzt schauen wir uns mal die Codelistings näher an. Da steht: *Possible StringData Ref from Code Obj -> "WARNING - Incorrect Key Entered" :00465A73 B8A05B4600 mov eax, 00465BA0 . . . . Und darüber.... * Referenced by a (C)onditional (U)nconditional Jump at Address |:004659FF(C) Wunderbar. Jetzt gehen wir mit Goto Code Location mal zu dieser Adresse..... :004659FD 85C0 test eax, eax :004659FF 7472 je 00465A73 Any Questions? So jetzt machen wir genauso wie im Tutor 1. Wir schreiben uns den Offset der Adresse 004659FF raus (der ist 00064DFF), und laden Rescue98.exe mit einem Hex-Editor rein, gehen zum Offset 00046DFF und patchen die zwei Bytes mit zwei ... na, wisst ihr´s noch? Kleiner Typ: So heisst ein Cracker bei PC. Richtig! NOP heisst er. Wir patchen also mit zwei 90 (Wert für NOPs). Warum mit zwei? Na, weil die JNE-Instruktion nun mal zwei Bytes hat (Die 74 für JNE, der Rest für die Adresse). Nachdem wir die EXE nun gespeichert haben, gehen wir raus aus dem Hex-Editor und versuchens mal......... Irgendwas eingeben... ENTER... und... FREEEUUUU! Ich hab wieder ein Programm ge- kauft ;-). Wir gehen wieder raus aus dem Programm, nochmal rein... Bingo, wir werden nicht nochmal gefragt, also hat das Programm keine Start-Check Routine, wunderbar. Bitte, liebe Kinder! Danke, lieber tIMELESS!