|
Bereits beim Installationsabaluf merkte ich, das VBTB ein VBProggie
ist (ähnlich wie beim VBC), und
freute mich natürlich. Ihr könnt dies manchmal an dem Installer
erkennen (wenn der VB-interne
genommen wurde), oder an den FIlez, die kopiert werden (wenn sich VB-Runtime-Filez
darunter befinden
ist es eigentlich eindeutig, oder??? hehehe). Mir war auch irgendwie
klar (aus der Erfahrung mit anderen
VB-AddIns), das der ganze Crack nur innerhalb von VB möglich war.
Ich entschied mich für die beinahe
schon klassische Variante des Breax auf __vbaStrComp, hatte-per Zufall-
auch einmal Glück. Allerdings
breakte SICE sooft, das mir der Verdacht aufkam, das die anderen PlugIns
die ich benutze, mir einen
gewaltigen Strich durch die Rechnung machen würden. Daher habe
ich hier einen Weg aufgezeichnet, mit
dem ihr schnell und genauso effektiv an euer Ziel kommt.
OK,
VB-Toolbox kann einmal beim Start von VB registriert werden (ein NAG
taucht auf), oder aus VB selbst
heraus. Wenn ihr in VB auf das Menu ADDINS geht, steht dort bereits
im PullDown VB-TOOLBOX-
PROPERTIES. Einmal drauf und zack- VBBOX startet mit einer Form, auf
der sich verschiedene
Reiter befinden. Der geöffnete Reiter hat in der Mitte ein kleines
geframtes Feld mit dem Titel
REGISTRATION. Flücks auf den Button Reg gedrückt, und der
gleiche NAG/Dialog wie beim Startup
erscheint. Zwei Textboxen (E-Mail-Adress und RegistrationCode) und zwei
Buttons (Validate Code und
hm-ich glaub purchase) befinden sich auf diesem. ES
GIBT KEINEN CHECK,OB IHR AUCH
WIRKLICH EINE E_MEHL-Adresse eingetragen habt. Es
geht auch nur mit eurem Handle oder
wasweißichauchimmer. Gebt euer Handle ein, eine FakeNr., drückt
auf VALIDATE... und zack-na klar-
eine MsgBox meldet sich: This registration code is not valid. You MUST
enter the registration blablabla...
Also los geht´s:
|
|
Gebt (wie üblich) eure Lieblingsfakes in die Felder E-Mail-Adress/RegistrationCode
ein. Na, wat han
ich da wohl eingetragen??? vladwar@gmx.net
(geht wie erwähnt auch ohne @ etc, also ganz normales
Handle/normaler Name) und 2001...
Nun rüber zu SoftIce mit STRG+D, und einen Standardbreakpoint mit
BPX HMEMCPY gesetzt.
(HMEMCPY = Daten werden in den Speicher kopiert).
Wie bereits oben angemerkt, gab´s einige
Probs mit VB-Breaks wie z.B. __VBASTRCOMP oder __VBASTRCMP, sodaß
ich hier diese Variante
nehmen mußte.
Nachdem ihr den Breakpoint gesetzt habt, geht ihr mit
F5 (STRG+D,X) wieder zurück zum Proggie und
drückt Validate. SICE meldet sich, nun drückt ihr einmal
F11 um an die Stelle zu gelangen, an der die
HMEMCPY-Funktion gecallt (aufgerufen)
wurde. Nun steppt ihr mit F10 solange
über jede einzelne
Zeile im Coding (und laßt damit die Funktionen
alle abarbeiten), bis unten im CodingWindow von SICE
der Eintrag MSVBVM.50!Text+001B881
(das VB5 Runtime-Modul (zu finden im Win\Sys-Ordner))
erscheint, und gebt dann s 0 l ffffffff 56,57,8b,7c,24,10,8b,74,24,0c,8b,4c,24,14,33,c0,f3,66,a7
ein
(oder ihr drückt ALT+F4, wenn
ihr die modifizierte WinIce.dat benutzt). Mit diesem Befehl sucht ihr
von Adresse 0 bis FFFFFFFF nach der Stelle, wo
zwei Werte verglichen werden (inVB). OK, nun
müßte im Eingabefenster von SICE folgendes auftauchen: Pattern
found at xxxx:0F00D9EA (xxxx -
da diese Stellen von System zu System unterschiedlich sein können).
OK, nun das SICE-Kommando
U xxxx:0F00D9EA (die eben angezeigte
Adresse). Damit "disassembliert"
ihr diese Stelle. Eigentlich
(wenn bis jetzt nichts schiefgegangen ist) müßte folgendes
im COdingWindow stehen:
| :0F00D9EA |
56 |
push esi |
| :0F00D9EB |
57 |
push edi |
| :0F00D9EC |
8B7C2410 |
mov edi, [esp+10] |
| :0F00D9F0 |
8B74240C |
mov esi, [esp+0C] |
| :0F00D9F4 |
8B7C2414 |
mov ecx, [esp+14] |
| :0F00D9F8 |
33C0 |
xor eax,eax |
| :0F00D9FA |
F366A7 |
repz cmpsw |
| :0F00D9FD |
7405 |
jz 0F00DA04 |
Und?? Weiter geht´s. Nun setzt ihr einen Break auf diese Adresse
mit BPX xxxx:0F00D9EA (BPX=
Breakpoint on Execution, d.h. an dieser Stelle/Funktion etc anhalten,
sobald sie ausgeführt wird), und schaltet den alten
Breakpoint aus (BD x, x
steht für den Breakpoint in der Breakpointlist--diese könnt
ihr mit BL einsehen),
oder löscht ihn mit BC x (dito).
Und retour zu VBTB mit F5 (STRG+D,X)--zack
SICE ist direkt wieder da, an eben jener oben aufgeführten CodingStelle.
OK. Nun steppt ihr mit F10
über jede einzelne Zeile, bis zu dieser Adresse:
| :0F00D9F4 |
8B7C2414 |
mov ecx, [esp+14] |
Wenn ihr dort angekommen seid, gebt ihr D ESI
ein. Damit laßt ihr euch den
Inhalt des Registers ESI
anzeigen, das ja eine Zeile vorher mit dem MOV Befehl "gefüllt"
worden ist. Und womit, dürfte jetzt
jedem klar sein- mit der passenden Registrierungsnummer. In meinem Fall:
AXRT-22581202
OK, alle Breakpoints auschalten/löschen mit BD
* (BC *) (* greift auf alle Breakpoints
zu), SICE
Lebewohl sagen mit F5 (STRG+D,X),
und anstelle der FakeNr. nun die eben gesniffte eingeben (klar,
mit dem selben Namen/der selben EMEHLAdr.):
|
!
|
Thank
you for purchasing VB Toolbox.
|
( DIese Meldung wundert mich immer wieder*LOL)
VB Toolbox legt folgende Eintrage in der
Windoof Registrierung ab:
[H[HKEY_CURRENT_USER\Software\VB
and VBA Program Settings\VBToolBox\Registration]
"E-Mail"="vladwar@gmx.net"
"Code"="AXRT-22581202"
BIZ D@NN
(c) 18/04/1999 -VLADIMIR- member
of [NeuRoM@nCerZ]
|