Blog literacki, portal erotyczny - seks i humor nie z tej ziemi
___ ____________
/ | / ____/ ____/ __ __ __
/ /| |/ / / / __ / // /__ _ __ / /____
/ ___ / /___/ /_/ / / _ / _ \ |/|/ / / __/ _ \ _ _ _
/_/ |_\____/\____/ /_//_/\___/__,__/ \__/\___/ (_) (_) (_)
Conntact with us: http://www.acg.silesianet.pl
e-mail:acg@silesianet.pl
Conntact with me: http://www.johny666.prv.pl
e-mail:webmaster@johny666.prv.pl
_____________________________________________________________________
Nazwa : [ BrainWave Generator v.3.1.0 ]
Autor: [ johny666 ]
Typ: PATCH [ ] CRACK [ ] SERIAL [ ] KEYGEN [ ]
UTIL [ ] OTHERS[ ] LOADER [ ] TUT [*]
_______________________________________
I n f o r m a c j e
Co: BrainWave Generator v.3.1.0
Sk¡d: www.bwgen.com
Czym: W32Dasm 8.93, HexWorkshop lub inny dowolny Hexedytor
Cel: Usuni©cie ograniczeä wersji niezarejestrowanej.
I. Wst©p.
Kilka sˆ¢w o programie
Program, kt¢ry bierzemy pod n¢¼ ma bardzo ciekawe przeznaczenie. Generuj¡c
d«wi©ki o zmiennych cz©stotliwo˜ciach o czasach trwania, stara si© wpˆyn¡†
na nasz¡ psychik©. Do wyboru mam wiele ustawieä m. in. sygnaˆy
relaksacyjne, sˆu¼¡ce do autohipnozy i wiele innych.
Co b©dziemy usuwa† ?
Program zaraz po uruchomieniu pokazuje paskudne okienko informuj¡c nas,
¼e u¼ywamy mamy wersj© 'UNREGISTERED EVALUATION COPY' oraz proponuj© nam
rejestracj©. Po naci˜ni©ciu 'OK' przechodzimy dalej, ale nasz oczy dra¼ni
jeszcze raz ten sam napis (tym razem obok nazwy programu). Mo¼na by to
wszystko znie˜†, ale takowa wersja posiada jeszcze jedno uci¡¼liwe
ograniczanie, a mianowicie nie mo¼emy importowa† nowych moduˆ¢w z
ustawieniami do naszego programu. Wˆa˜nie z tym problemem postaramy sobie
dzisiaj poradzi†.
Dlaczego W32Dasm ?
Na pytanie odpowiem kr¢tko: przyzwyczaiˆem si© WDasma i zawsze program
staram si© rozgry«† wˆa˜nie nim, poza tym WDasm jest chyba bardziej 'Lamer
friendly' ni¼ SI.
II. Do dzieˆa.
Zakˆadam, ¼e posiadasz elementarne umiej©tno˜ci posˆugiwania si© WDasmem,
je˜li nie, to daruj sobie czytanie tego tutora.
Zajmiemy si© usuni©ciem ograniczenia importu. Wejd«my do programu i
sprawd«my dokˆadnie jak¡ informacj© serwuje on dla u¼ytkownika. 'Importing
presets is not avaliable...' to nam wystarczy. Teraz musimy znaleǠ
wywoˆanie tego komunikatu w kodzie programu. Naciskamy na 'String Data
References' i mozolnie przeszukujemy list© a¼ natrafimy na poszukiwany
tekst. B©dzie to wygl¡daˆo mniej wi©cej tak:
String Resource ID=01313:
"Importing presets is not available in the shareware version "
Klikamy dwa razy w ten fragment i w okienku edytora znajdujemy:
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0041B471(C)
|
:0041B47A 5F pop edi
:0041B47B 5E pop esi
:0041B47C 5D pop ebp
* Possible Reference to String Resource ID=01313: "Importing presets is not av
ailable in the shareware version "
|
:0041B47D B821050000 mov eax, 00000521
:0041B482 5B pop ebx
:0041B483 81C4C0080000 add esp, 000008C0
:0041B489 C3 ret
Wida† od razu, ze przed wywoˆanie tego komunikatu nie jest poprzedzone,
¼adnym testem wi©c pewnie musiaˆ nast¡pi† on gdzie˜ wcze˜niej. Sprawd«my
wi©c adres 0041B471, a ¼e jest to tylko kilka linijek wy¼ej znajdujemy tam:
:0041B461 E849C00100 call 004374AF
:0041B466 393DE03D4600 cmp dword ptr [00463DE0], edi
:0041B46C 741C je 0041B48A
:0041B46E 83FEFF cmp esi, FFFFFFFF
:0041B471 7407 je 0041B47A
:0041B473 56 push esi
Celowo zostawiˆem odrobin© wi©cej kodu gdy¼ jest on dosy† wa¼ne. Wida†, ¼e
program sprawdza jaki˜ warunek, potem kolejny (skok do komunikatu). Teraz
wystarczy tylko zauwa¼y†, ¼e skok z pod adresu 0041B46C ominie wy˜wietlenie
naszego nieszcz©snego komunikatu i przejdzie dalej. Co wi©c musimy zrobi† ?
Zmieni† skok je na skok bezwzgl©dny jmp. W tym celu u¼yjemy HexWorkshop'a i
zamienimy 74 na EB (offset: 1B46C). Uruchamiamy program i pr¢bujemy co˜
importowa†. I co ? nasz komunikat nadal si© pokazuje. Pewnie zastanawiasz
si© dlaczego ? Przecie¼ poprawnie omin¡ˆe˜ ten fragment programu. Okazuje
si©, ¼e ten komunikat nie pojawia si© tylko raz w programie. Wyst©puje on
dwa razy. Wystarczy jeszcze raz klikna† w SDR (String Data References') i
znale«† drugie wyst¡pienie tego fragmentu. Tym razem program przeniesie w
to miejsce:
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0041B735(C)
|
:0041B73E 5F pop edi
:0041B73F 5E pop esi
:0041B740 5D pop ebp
* Possible Reference to String Resource ID=01313: "Importing presets is not av
ailable in the shareware version "
|
:0041B741 B821050000 mov eax, 00000521
:0041B746 5B pop ebx
:0041B747 81C4C0080000 add esp, 000008C0
:0041B74D C3 ret
Sytuacja jest prawie identyczne wi©c chyba wiesz co robi† ? (sprawdzamy
adres 41B735. Tam znajdujemy:
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0041B633(C)
|
:0041B72E 8B442410 mov eax, dword ptr [esp+10]
:0041B732 83F8FF cmp eax, FFFFFFFF
:0041B735 7407 je 0041B73E
:0041B737 50 push eax
Niestety tutaj nie p¢jdzie nam tak ˆatwo. Szukamy dalej. Nie mamy
mo¼liwo˜ci omini©cia kod wi©c sprawdzamy co kryje si© pod adresem 0041B633.
Tym razem mamy:
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:0041B565(C), :0041B620(C)
|
:0041B62C A1E03D4600 mov eax, dword ptr [00463DE0]
:0041B631 85C0 test eax, eax
:0041B633 0F85F5000000 jne 0041B72E
:0041B639 8B0D70364600 mov ecx, dword ptr [00463670]
Jak wida† najpierw jest test, je˜li wynik jest negatywny wtedy program
skacze do perfidnego komunikatu. Co tym razem zrobimy ? Wystarczy, ¼e
zamienimy instrukcje skoku na nop'y (no operation) i nasz program spokojnie
przejdzie do dalszej cz©˜ci programu bez wywoˆywania naszego nieszcz©snego
okienka. Kr¢tko m¢wi¡c zamieniamy ci¡g 0F85F5000000 na 909090909090 (offset
1B633).
I to by byˆo na tyle. Ograniczenie zostaˆo zniesione. Teraz mo¼esz
importowa† do woli. Usuni©cie denerwuj¡cego okienka jest r¢wnie proste, ale
pozostawi© to ju¼ Tobie.
III Zakoäczenie
Jest to m¢j pierwszy tutor, wi©c b©d© wdzi©czny za wszelkiego rodzaju
komentarze i sugestie.
Pami©taj ! Je˜li ten program przydaje Ci si© to kup go, a mo¼esz by†
pewien, ¼e pojawi¡ si© nowe lepsze wersje !!!
johny666 [ A C G ]
webmaster@johny666.prv.pl
_______________________________________
-=[ACG]=- 27.05.2000 -=[ACG]=-