			
		      .: bY ZeroByTE 2000 eMail : zerobyte@freenet.de :.
				: www.hackplanetopia.foru.de :



		-=-====Hau tu krk AudioCD MP3 Studio 1.5d unt AnyWhere 2000====-=-
		 -=====How to crack AudioCD MP3 Studio 1.5d and AnyWhere 2000====-

Das Prog findest du z.B. auf der ShareWare Jan. 2000 !

@ Offset 00004d64 : je -> jne -> cracked AudioCD MP3 Studio 1.5d by ZerOByTE

Tach , Leute...Heute hab ich mal wieder ein Tutor fr euch und ich habe mir mal gedacht eine
Kurzanleitung fr die besseren gleich an den Anfang zu schreiben und da isse. So kann man viel
Zeit sparen [ wenn man will ]. Okay, dann wollen wir mal anfangen.

Das Programm AudioCD MP3 Studio 1.5d [ der Name ist viel zu lang ] wollen wir heute mal registrieren
lassen, aber jedes mal wenn man einen Key eingibt [ z.B. meine Telefonnummer ] sagt er jedes mal sie
sei falsch, aber ich weis ganz genau, dass meine Telefonnummer richtig ist , also muss das Programm
einen Fehler haben und den werde ich jetzt gemeinsam mit euch beseitigen. ;-)

Okay, wie immer brauchen wir W32DASM und nen HexEditor..Beides gibts auf meiner Site.
Etwas Zeit [ ca. 1 min. 36 sek. sollten reichen ] und ne Telefonnummer und das Programm an sich.

Okay, wir starten das Prog und registrieren uns mit unserer TelNummer und er sagt
"Falscher Registrierungs Code" [ irgenwie klever - das ist in Deustsch und in der Titelleiste
steht - unregistered <- ich glaube das ist Englisch ! ] Okay, das schreiben wir uns auf , oder
merken uns es einfach, denn wir sind ja alle berdurchschnittlich begabte Leute die jegliche Art von
Schule verabscheuen [ auser ITG ]. Dann starten wir unseren Disassembler und das phILE. Das geht super
schnell obwohl es knapp 600 KB sind. Nun klicken wir auf StringData References..und suchen uns diese
kleine Fehlermeldung raus. Da isse ja...nun doppelklick und dann schauen wa ma....


:0040595D E83EFBFFFF              call 004054A0 <-- Aufruf der Prozedur
:00405962 84C0                    test al, al <-- Test ob Code richtig
:00405964 742F                    je 00405995 <-- nun sind wa hier ! Ein "je" !!!
:00405966 6A00                    push 00000000
:00405968 8D4C246C                lea ecx, dword ptr [esp+6C]
:0040596C E89F240000              call 00407E10
:00405971 8D4C2468                lea ecx, dword ptr [esp+68]
:00405975 C68424D000000001        mov byte ptr [esp+000000D0], 01

* Reference To: MFC42.Ordinal:09D2, Ord:09D2h
                                  |
:0040597D E82C890100              Call 0041E2AE
:00405982 8D4C2468                lea ecx, dword ptr [esp+68]
:00405986 C68424D000000000        mov byte ptr [esp+000000D0], 00

* Reference To: MFC42.Ordinal:0281, Ord:0281h
                                  |
:0040598E E8A78A0100              Call 0041E43A
:00405993 EB0E                    jmp 004059A3

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:00405964(C) <-- Oh ein Jump zu 00405964 - da jumpen wa ma hin !
|
:00405995 6AFF                    push FFFFFFFF
:00405997 6A00                    push 00000000

* Possible Reference to String Resource ID=61261: "Falscher Registrierungs-Code" <--- Das ist die Fehlermeldung !
                                  |
:00405999 684DEF0000              push 0000EF4D


Wie man da oben sehen kann, ist "je" der kleine Programmfehler den wir beseitigen mssen, denn er
testet ja ob er richtig ist...Aber woher soll er wissen das meine Telefonnummer richtig ist ?
Also weg mit dem BUG ! Wir schreiben uns den Offset ab [ 00004d64 ] oder wechseln zu unserem 
HexEditor [ egal ob Hiew oder HSW ]. Wir laden das phILE und gehen zu dem Offset und ndern
die 74 [ je ] in 75 [ jne ] um. Das bewirkt nun von jump if egual in jump if NOT egual...d.h.
wenn der Code falsch ist, soll er ganz normal weiter machen. ;-)
Okay ,das ganze speicher und fertig. ProG starten und registrieren lassen. BOOOM !
"herzlichen glckwunsch" [ ihre Telefonnummer ist richtig ] !

So , den Bug htten wir entfernt, ich glaube ich sollte den mal ne eMail schicken das da was
falsch ist. Okay bis denne..

STOP ! Noch ist nicht schluss ein schaffe ich noch...

AnyWhere 2000
0000542B = jg -> jne -> cracked by Zerobyte

Nun habe ich noch ein kleinen Fehler im Programm gefunden - AnyWHere 2000 kann man nur 30 Tage nutzen
so eine Gemeinheit - so ein dummes Programm und dann kann man es gerade mal 30 Tage nutzen....
Wenn wir das Programm ber die Grenze benutzen wollen [ sprich am 31. Tag ] sagt und das Programm :
"Your 30.." na schn ! Das merken wir uns und laden die .Dll in W32DASM...Und klicken wieder auf 
Refs. nun scrollen wir bis ganz unten und als vorletztes msste da was stehen mit 30 und Your...
Naja, doppelklick und dann mssten wir das hier sehen :
...
 Referenced by a CALL at Address:
|:1000525B   <-- Aufruf der TestTage - Prozedur
|
:100053D0 6AFF                    push FFFFFFFF
:100053D2 68A7070210              push 100207A7
:100053D7 64A100000000            mov eax, dword ptr fs:[00000000]
:100053DD 50                      push eax
:100053DE 64892500000000          mov dword ptr fs:[00000000], esp
:100053E5 81EC7C030000            sub esp, 0000037C
:100053EB 56                      push esi
:100053EC 8BF1                    mov esi, ecx
:100053EE 6A00                    push 00000000
:100053F0 8D8C2460020000          lea ecx, dword ptr [esp+00000260]
:100053F7 E824BDFFFF              call 10001120
:100053FC A170AE0210              mov eax, dword ptr [1002AE70]
:10005401 C784248803000000000000  mov dword ptr [esp+00000388], 00000000
:1000540C 89442404                mov dword ptr [esp+04], eax
:10005410 8A467C                  mov al, byte ptr [esi+7C]
:10005413 C684248803000001        mov byte ptr [esp+00000388], 01
:1000541B 84C0                    test al, al
:1000541D 0F85BB000000            jne 100054DE
:10005423 8B8680000000            mov eax, dword ptr [esi+00000080]
:10005429 85C0                    test eax, eax <-- teste ob ...
:1000542B 0F8FAD000000            jg 100054DE <-- Wenn was grer ist...
:10005431 6A00                    push 00000000
:10005433 6A00                    push 00000000

* Possible StringData Ref from Data Obj ->"Your 30 day trial of AnyWhere " <-- BUG !
                                        ->"2000 has expired." 		   <-- BUG !
                                  |
:10005435 68BCA60210              push 1002A6BC
:1000543A E880670100              call 1001BBBF
:1000543F 6A00                    push 00000000
:10005441 8D8C2420010000          lea ecx, dword ptr [esp+00000120]
:10005448 E8E32A0000              call 10007F30
:1000544D 8D8C241C010000          lea ecx, dword ptr [esp+0000011C]
...

Hier nach kann man genau erkenn, dass er testet wie viele Tage vergangen sind und wenn sie
berschritten sind soll er die Nachricht Ausgeben und dann zum Registrieren zwingen. Ich
werde jetzt diesen Weg whlen das ProG zu cracken , weil er am einfachsten jetzt ist und
ich ehrlich gesagt echt mde bin. Okay wenn ihr die Message seht scrollt etwas nach oben 
und dan seht ihr den MeGaBUG..jg [ jump if greater - das heist wenn wir grer als 100054DE
sind (100054mm und aus Deutschland kommen ) gehts nicht mehr. Nein ! Das heist wenn die
Testzeit von 30 Tagen berschritten ist - soll er es nicht mehr starten. ] Nun schreiben wir
uns den Offset ab [ 0000542B ] und cRacKEn das ganze mit Hilfe des HexEditors. Es ist so ziemlich
egal was du draus machst [ jmp - jne oder hnliches ] nur kein je - das wre nmlich schwachsinn.
Okay, mach da draus ein jne  [ 0F85 ] und dann speichern. Fals es nicht klappen sollte speicher
es vorher woanders und im DOS hinein kopieren und berschreiben.
Ahahaa...bin ich mde , ich werd jetzt pennen gehn..Acho danke fr eure Aufmerksamkeit
und dafr das ich noch nicht eine eMail bekommen habe, das ich viele rHshtSchRaihbfehllah 
mache. Dann bis zum nchsten Tutor...ZerOByTE !