Temat Crack
Autor Bart
Co FxEdit
Narzedzia:W32dsm 8.93
Hiew 6.00
SoftIce 3.2 i wzwyz
FxEdit znajdziecie na płycie Chipa 1/99.
Narzedzia mozna znalezc na stronie http://cracking.home.ml.org
1.Uruchamiamy program
2.W menu HELP klikamy REGISTER
3.Wprowadzamy dane,wchodzimy do SoftIca(CTRL-D) i zastawiamy pulapke na pobieranie tekstu z okienka tekstowego bpx getwindowtexta.Wychodzimy z SoftIca(CTRL-D lub F5) i klikamy OK.
4.Poniwaz sa 3 okna tekstowe a wiec 2 razy naciskamy F10 a za trzecim razem F11.Nastepnie naciskamy F10 az do momentu gdy zobaczymy kod:
:0040A5E8 E853760000 call 00411C40 <--generowanie seriali :0040A5ED 83C408 add esp, 00000008 :0040A5F0 3BC5 cmp eax, ebp <--porownanie :0040A5F2 741E je 0040A612 <--JUMP IF EQUAL skok do dobrego
5.Gdy bedziemy pod adresem 40A5F0 sprawdzamy co siedzi w rejestrach eax i ebp.Piszemy ?eax i okazuje sie ze w eax znajduje sie prawdziwy serial i to by by-o na tyle ale naszym zadaniem jest napiasanie patcha zeby kazdy mogl sobie zarejestrowac program.
6.Uruchamiamy W32dsm i dekompilujemy FxEdita.Idziemy pod adres 40A5F gdzie znajduje sie kawalek kodu odpowiedzialny za porownanie seriali.Pod 40A5F0 nastepuje skok jezeli porownane seriale byly takie same.Sprawdzamy co kryje sie pod adresem 40A612 i widzimy mniej wiecej cos takiego:
:0040A612 896E64 mov dword ptr [esi+64], ebp <--zapamietanie seriala :0040A615 EB07 jmp 0040A61E
7.Pod 40A612 nastepuje zapamietanie seriala a pod 40A615 znajduje sie skok do procedury zapamietujacej dane rejestracyjne w rejestrze systemowym.Zapamietywany jest serial znajdujacy sie w rejestrze ebp.
8.Aby recznie zmienic FxEdita kolejno:klikamy na 40A5F2(cmp eax,ebp) i z paska statusu odczytujemy offset.Uruchamiamy Hiew,zmieniamy tryb klawiszem F4 na Decode potem naciskamy F5 i wpisujemy offset 99F1.Naciskamy F3 aby wejc do trybu edycyjnego nastepnie naciskamy F2 i wpisujmy cmp eax,eax przez co program za kazdym razem bedzie porownywal 2 takie same prawdziwe seriale.Klikamy ESC i F9 ale nie wychodzimy jeszcze z programu.Nastepnie odzytujemy z W32dsm offset adresu 40A612.Przechodzimy do Hiew naciskamy F5 i wpisujemy offset 9A13.Klikamy F3,F2 i zmieniamy
mov dword ptr [esi+64], ebpna
mov dword ptr [esi+64], eax
zeby zapisany zostal w rejestrze systemowym prawdziwy serial a nie nasz bledny.Klikamy ESC,F9,F10.
9.Uruchamiamy ponownie FxEdita przechodzimy do rejestracji,wpisujemy dowolne dane.Voila program zarejestrowany!Aby sprawdzic jaki bylby nasz prawdziwy numer seryjny bez wczesniejszego znajdowania go SoftIcem uruchamiamy RegEdita i w kluczu
HKEY_CURRENT_USER\SOFTWARE\Software by Design\FxEdit for Windows 95/NT\Registration
znajduje sie wartosc Code, ktora przechowuje nasz prawdziwy serial(w postaci dziesietnej).
10.Patch(w pascalu)moglby wygladac mniej wiecej tak
Program Crack;
Uses Crt;
Const A: Array[1..2] of Record {zmieniamy 2 bajty}
A : Longint;
B : Byte;
End =
((A:$99F1;B:$C0), {pod offset 99F1 wartosc C0}
(A:$9A13;B:$46)); {pod offset 9A13 wartosc 46}
Var Ch:Char;
I:Byte;
F:File;
Begin
writeln('Crack dla FxEdit by Bart');
Assign(F,'FxEdit.exe'); {nazwa pliku format 8.3}
{$I-} Reset(F,1); {$I+}
If IOResult <> 0 then
begin
writeln('File not found!');
halt(1);
end;
For I:=1 to 2 do
Begin
Seek(F,A[I].A);
Ch:=Char(A[I].B);
Blockwrite(F,Ch,1);
End;
Writeln;
Writeln('File successfully patched!');
End.
11.I to by bylo na tyle.Czesc!