Piranha Panic 1.03 by Ptasiek

Cel : Piranha Panic 1.03
Co  : serial
Czym: W32dasm+SoftICE

Start: Fajna gierka udostepniajaca w wersji niezarejestrowanej 2 poziomy. Ma ona szereg 'skomplykowanych algorytmow szyfrujacych', ale z nasza wiedza to nie problem. I-e spostrzezenia: Okno glowne ma napis '-unregistered demo version' Wniosek: program na poczatku sprawdza czy gierka jest zarejestrowana czy nie - wczesniejsze ustawienia breakpointow na getdlgitemtexta i zmienianie flag przy skokach pokazalo, ze Piranha zapisuje dane w pliku pirpanic.ini. So na poczatku te dane odczytuje. Zarejestruj sie pod jakas fajnym nickiem. Jako serial wpisz co chcesz. Chodzi o to, aby znalezc prawidlowy serial dla naszego nicka. Zdisasmujmy prog w W32dasm. W string reference (->Refs/String Data References) szukamy '-unregistered demo version' W32Dasm skacze do:

:0040F8A5 6892030000    push 00000392

Szukamy I-ego skoku warunkowego przed nim. Spisujemy skad nastapil:

Referenced by a (U)nconditional or (C)onditonal Jump at Address:
|:0040f840(C)

Ladujemy proga do Loadera Numegi. Ustawiamy breakpoint na ten adres. I Voila - patrzymy w ostatni podejrzany rejestr EDI

LEA EDI,[ESP+34]
: d edi 

Widzimy nasz nick. Przejrzyjmy okno danych w gore (ALT+strzalka) - obok napisu 'Piranha' nasz prawidlowy serial. Jezeli ALT+strzalka nie dziala to wpisz DATA - polecenie to zmienia sposob wyswietlania tego okna. Wychodzimy z SI. Uruchamiamy Piranhe wpisujemy ow stary uprzednio wpisany nick i spisany serial. I mamy full versje. Nie podaje tutaj zadnych danych bo: a) byloby to 'wyjatkowe' chamstwo w stosunku do autora tak fajnej gierki shareware.(bo chamstwo to juz jest) b) sposob ten prawdopodobnie dziala na innych versjach tej gierki so adresy wzgledne moga byc inne.

Ptasiek/IND