ͻ
    SSSSSSSSSS  iiii  GGGGGGG    MMM            MMM   @@@@@@@@@@            
   SSSSSSSSSS  iiii  GGGGGGGGG   MMMM          MMMM  @@@@@@@@@@@@@          
   SSSS             GGG          MMMMM       MMMMM  @@          @@  SiGM@-PL
   SSS        iiiii GGG          MMM MM    MMM MMM @@   @@@@@   @@  THE     
   SSSS      iiiii  GGG          MMM  MM  MM   MMM @@  @@   @@  @@  GREAT   
    SSSSS    iiii   GGG  GGG     MMM  MM  MM  MMM  @@  @@   @@  @@  FOUNDER 
      SSS    iiii   GGG  GGGG     MMM  MMMM  MMMM  @@  @@   @@  @@  IS      
       SSS   iiii   GGG    GGG    MMM   MM   MMMM  @@  @@@@@@@  @@  THE     
      SSSSS  iiii   GGG     GG   MMM          MMM  @@   @@@@@@@@@   MAN:    
       SSS   iiii   GGG     GG   MMM (c) by    MMM @@               lukasw  
 SSSSSSSSS  iiiii   GGGGGGGGGG  MMM  bORNbURNT MMM  @@@@@@@@@@@@@           
SSSSSSSSS  iiiii     GGGGGGGG   MMM             MMM  @@@@@@@@@@@            
ͼ


                                about the file

  [ ] crack                      Writer: Creeper^ (^Forsaken^)

  [x] tutorial                   Writers Homepage: http://strony.poland.com/creeper

  [ ] full program               Writers E-Mail: creepy@poland.com

  [ ] serial number              Date: 18/07/2000


                      SiGM@-PL - http://www.sigma.hg.pl



   Crackme name   : Crackme 1.0 by Jube (Hey NewBies Crack It!)
   Date           : 18/07/2000
   What           : How to generate code for your nick.


Najpierw co bedzie nam potrzebne:
Na poczatek
SoftICE 3.2 lub lepszy (jak zwykle)
Kartka papieru ;)

-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=UWAGA!-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=
Jesli jestes newbie ale to taki ze calkiem nic nie lapiesz to czytaj 
dalej,w przeciwnym wypadku sam sproboj - on jest nawet prosty tylko
trzeba pomyslec jak generowany jest kod!!!
-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=-+=
Ok,odpalamy Crackme i widzimy ze trzeba wpisac Name i Key. Ja wpisalem w name:
"Creeper" a w Key "5554" - W name musza byc wiecej niz 4 znaki !!!
Teraz wchodzimy do SoftIce (Ctrl+d) i ustawiamy breakpoint na getwindowtexta

bpx getwindowtexta

Teraz wychodzimy z SoftICE i naciskamy OK w Crackmesie. Teraz S-ICE sie nam pojawil 
i nacskamy F11 aby znalesc sie tam skad zostala wywolana funkcja getwindowtexta.
Oto co widzisz na ekranie w SoftICE:


	CALL	USER32!GetWindowTextA
	CMP	EAX,00
	JZ	004011BC
	CMP	EAX,04
	JB	004011BC
	CALL	USER32!GetWindowTextA

Teraz przechodzimy przez to wszystko klawiszem F10 az do ostatniej linii czyli Call.Teraz jak
na niej jestes to nacisnij F10 i wywalilo cie do tej funkcji czyli Getwindowtexta i teraz
musisz znowu wejsc do kodu Crackmesa czyli F11 !! i w SoftICE widzisz takie cos:

	CALL	USER32!GetWindowTextA
	CMP	EAX,00
	JZ	004011A1
	MOV	[004021C2],EAX
	ITD - to oczywiscie tlumacz jako I tak dalej ;)
	ITD
	ITD
	CMP	BL,30

I znowu przechodzisz przez to wszystko F10 nawet przez CMP BL,30 i jak juz to zrobisz to
widzisz takie cos:

	JB	004011D7
	CMP	BL,39
	JA	004011D7
	INC	EAX
	JMP	004010FD

Znowu to samo co w poprzednich przypadkach czyli F10 jedziesz az przez skok (JMP) i wylodujesz
tutaj: (nie opisuje tych gornych kawalkow bo sa poprostu nie potrzebne)

>>>>>>	MOV	BL,[EAX]
	CMP	BL,00
	JZ	00401119
	CMP	BL,30
	JB	004011D7
	CMP	BL,39
	JA	004011D7
	INC	EAX
	JMP	004010FD

Caly ten kawalek kodu pobiera nasz serial i cos z nim bedzie robil,a co to zaraz sie dowiemy!
Jestesmy w miejscu >>>>>>> czyli MOV BL,[EAX] a jak bys tak byl sprytniejszy to zobaczyl bys
ze w EAX siedzi nasz SERIAL czyli "5554" Teraz tak,JMP czyli skok w ostatniej linii jest
do naszego poczatkowego miejsca czyli MOV BL,[EAX] i tak dlugo az nasz serial bedzie caly
pobrany do pamieci czyli 4 razy,potem nastepuje skok JZ do miejsca:

	PUSH	00	       		 (1)
	PUSH	004021C6       		 (2)
	PUSH	6A	       		 (3)
	CALL	USER32!GetDlgItemInt	 (4)
	CMP	DWORD PTR [004021C6],01  (5)
	JNZ     004011D7       		 (6)
	XOR	EAX,000007BF   		 (7)
	MOV	[004021BA],EAX 		 (8)
	PUSH	28	       		 (9)
	PUSH	004021CA		 (10)
	PUSH	DWORD PTR [004021AE]	 (11)

Jesli sie gdzies pomylilem to spox...
Teraz omowienie:
1 - Wlozenie na stos wartosci 00
2 - To samo tylko ze wartosc 004021C6 a co pod nia jest??? Wpisuj :

	d 004021C6

Wyswietlilo sie nam : ....5554 itd...
czyli za 4 miejsca bedzie nasz serial ;)
3 - to samo co w 1 tylko wartosc 6A
4 - Tutaj jest Call (Nie wazne)
5 - Tutaj jest porownanie wartosci ale to tez jest malo wazne!
6 - Skok jesli nie zero do adresu 004011D7 ale u nas jest zero wiec nie ma skoku
7 - WAZNE! Xorowane jest EAX z 000007BF a 000007BF to 1983 w systemie dziesietnym i po tym 
xorowaniu wynik idzie do EAX oczywiscie!
8 - Przekopiowana zostaje zawartosc EAX do 004021BA??? Heh no tak,teraz ja mam problem czy
to nie bedzie odwrotnie,ale to jest nie istotne....
i jak przejdziesz F10 po linii 8 to zobaczysz linie 9, 10 i 11 itd
9 - Wkladana na stos jest wartosc 28
10 - to samo tylko ze 004021CA idzie na stos a co pod nia sie kryje? Sprawdzmy to:

	d 004021CA

Hmm... NASZ SERIAL!!! Nie podniecaj sie tak synku to nie rozwiazanie ;)
11 - kopiowane jest 004021AE ale do czego? Zadanie domowe Wasze i moje - a ja mam to w ksiazce!
Kilka linii dalej jest Call i wchodzimy w niego i wyrzucilo nas z kodu Crackmesa,naciskamy
F11 aby znowu wrocic skad zostal wywolany ten Call i widzisz takie cosik :
	
	MOV	ECX,004021CA	(1)
	XOR	EAX,EAX		(2)
	XOR	EBX,EBX		(3)
	MOV	BL,[ECX]	(4)
	CMP	BL,00		(5)
	JZ	00401168	(6)
	ADD	EAX,EBX		(7)
	INC	ECX		(8)
	JMP	0040115C	(9)
	XOR	EAX,000007D0	(10)
	CMP	[004021BA],EAX  (11)
	JNZ	004011D7	(12)

1 - Kopiuje zawartosc 004021CA do ECX a 004021CA kryje w sobie nasz name (d 004021CA)
2 - Wyzerowane zostaje EAX
3 - -ll- -ll- -ll- EBX
4 - Kopiowana jest zawartosc ECX do BL
5 - Porownanie BL z 0
6 - Jesli po porownaniu wyjdzie 0 to skok do 00401168
7 - Dodanwanie EAX+EBX i wynik idzie do EAX
8 - Incrementowane (Zwiekszane jest o 1) ECX (Pamietaj ze w ECX jest juz nasz NAME)
9 - SKOK do 0040115C a u nas to bedzie wtedy linia 4 czyli petla.
10 - Xorowanie EAX z wartoscia 7D0 a co jest w EAX? Wpisujemy 

	? EAX

i wyszlo nam 742 (jak ci nie wyszlo to znaczy ze albo ja sie pomylilem :) albo ty)
11 - Porownanie liczby po zxorowaniu z 004021BA
12 - Jesli wyjdzie 0 to skok JNZ nie nastapi i komunikat o dobrym kodzie a u nas JNZ wystapi bo
jest zly kod!
No dobra ale jak teraz otrzymac prawidlowy kod tzn Key?
Pomyslmy.... Po xorowaniu EAX z 7D0 wyszlo w EAX 546 (Hex)
i po porownaniu nie jest rowne 004021BA czyli musimy tak zlozyc rownanie ze po zxorowaniu
KEY z 7BF i po zxorowaniu NAME z 7D0 wyjdzie nam key ktory szukamy...
Ale jak go wykryc? Musimy przexorowac EAX czyli 546 Hex z 7BF zeby wyszedl nam dobry Key.
Nie wiem czy ktos to teraz zrozumial ale to jest bardzo trudne do wutlumaczenia (przynajmniej
dla mnie!)
W ostatecznosci Cale dobre rozwiazanie wyszlo tak:

NAME:creeper
KEY:649

UWAGA:
Jesli przeczytales to i juz wiesz jak to by mozna lepiej opisac to przeslij mi rozwiazanie!
Bo to jest tutor dla Newbies a nie dla Super Crackers ;)


Moj E-mail : creepy@poland.com

Greetz : SIGM@ Crackers and 7TeaM Crackers
Thnx   : MaxiBogas,bORNbURNT,Jube and Mr. Ketchup


                             MeMbErS of SiGM@-PL

    President:       Lukasw............................founder/coder/cracker

    VicePresident:   bORNbURNT...............webadmin/graphics/coder/cracker

    The Bas3:        Slonik..........................................cracker
                     Virking...................................coder/cracker
                     Janosz..........................................cracker
                     Hacek.....................................coder/cracker
                     Creeper^..................................coder/cracker (newbie)

    Trial:
                     PressKiToL...........................webdesign/uploader
                     rix..................................webdesign/uploader


                                    iNFO

Jak chcesz wejsc do naszej grupy to napisz E-Mail do Presidenta albo do 
VicePresidenta,jak nie lubisz ich czy cos w tym stylu to daj do mnie a ja Ich
poinformuje ;)
Bedziesz musial zlamac Ich CrackMe aby wejsc do grupy!
Adresy E-mail znajdziesz na naszej oficialnej stronie www. (http://sigmapl.webprovider.com)
Oprocz tego mozesz sie z nami zkontaktowac w IRC-u na channel-u #sigmapl.
