Witam!
Na wstepie chcialbym zaznaczyc ,ze jest to moj pierwszy tutor ,wiec za
wszystkie uwagi bede wdzieczny.

Uruchamiamy crackme CrackMe#o1 by teo
I co zadnych przyciskow ale caly czas mamy napis "You Are Bad Cracker! Go Away!". Wpisujemy jakis tekst np. Teres i ...
zakladamy pulapke na getdlgitemtexta i probojemy dopisac jakaslitere. Program sie zlapal.Wciskamy F11 i ladujemy 
:00401154 6893204000              push 00402093
:00401159 6A69                    push 00000069
:0040115B FF7508                  push [ebp+08]
:0040115E E855020000              Call Getdlgitemtexta
:00401163 85C0                    test eax, eax <-----------tu 
:00401165 0F847D000000            je 004011E8			(1)
:0040116B 83F810                  cmp eax, 00000010		(2)
:0040116E 7578                    jne 004011E8			(3)
Jesli wpiszemy w SI "d 402093" to zobaczymy (w prawym gornym rogu) to co wpisalismy dlamnie "Teres"
(1)jesli nic nie wpisalismy to spadowa i napis nie mily nam
(2)tekst musi miec 16 znakow ,10 w hexach to 16 w systemie dziesietnym. Uruchamiamy crackme jeszcze raz tym razem haslo ma 16 znakow
(3)jak nie to spadaj
:00401170 B893204000              mov eax, 00402093			1
:00401175 A193204000              mov eax, dword ptr [00402093]	2
:0040117A C1C009                  rol eax, 09				3
:0040117D 83F003                  xor eax, 00000003			4
:00401180 0599999999              add eax, 99999999			5
:00401185 3D362CDA31              cmp eax, 31DA2C36			6
:0040118A 755C                    jne 004011E8				7
1)Do eax idzie adres naszego seriala
2)Do eax ida pierwsze 4 znaki naszego hasla 
**********************************************************************
*Znaki te sa zapisywane w odwrotnej kolejnosci tj. 65726554 == "ereT"*
**********************************************************************
3)obrot w lewo o 9
4)xorowanie z 3
5)dodajemy 99999999h
6)ma byc rowne 31DA2C36h
7)jak nie to spadaj
Poniewaz sam mam problemy z takimi operacjami matematycznymi to wykombinowalem ze program moze to zrbic za mnie.
Do dziela! Na koncu eax ma byc rowny 31DA2C36. Uruchamiamy crackme jescze raz i zatrzymuje sie na linii 0040117A.
Zmieniamy wartosc rejestru eax komenda "r eax 31DA2C36", zmieniamy troche w programie , wpisujemy komende "a"
w oknie komend pojawi sie cos takiego 017F:0040117A , wpisujemy teraz procke kodujaca ale w odwrotnej kolejnosci i
o odwrotnym znaczeniu. Do rzecz
a <ENTER>
017F:0040117A		sub eax,99999999   *****Odejmij od eax 99999999h *****<ENTER>
017F:0040117F		xor eax,03								<ENTER>
017F:00401184		ror eax,09								<ENTER>
<ESC>
Po ty operacjach dalej jestesmy w linii 40117A ale dalej jest zmieniony kod programu, mozemy zobaczyc co jest w eax
d eax i faktycznie jest tam wartosc 31 DA 2C 36 .W takim razie lecimy dalej przez program. Po dojsciu do linii 00401184
wykonujemy ja i odczytujemy wartosc rejestru eax proponuje ? eax ,49204C4F   "OL I" i to sa pierwsze cztery litery naszego hasla
,czyli "I LO". 
Po tych zmianach uruchamiamy crackme od nowa i dochodzimy tu
:0040118C A197204000              mov eax, dword ptr [00402097]	1
:00401191 83F009                  xor eax, 00000009			2
:00401194 C1C009                  rol eax, 09				3
:00401197 0521331200              add eax, 00123321			4
:0040119C 3DC9F19C40              cmp eax, 409CF1C9			5
:004011A1 7545                    jne 004011E8				6
1)do eax nastepne cztery znaki naszego hasla
2)xorowanie eax z 09
3)obrot w lewo o 9
4)dodaj do eax 123321h
5)jak nie rowne eax 409CF1C9
6)to spadaj
Co zrobic? To co wczesniej, dochodzimy do linii 2 i r eax 409CF1C9, potem "a" i zmiany 
a <ENTER>
017F:00401191	sub eax,123321 		<ENTER>
017F:00401196	ror eax,09			<ENTER>
017F:00401199	xor eax,09			<ENTER>
<ESC>
porzechodzimy po tych liniach i ? eax  ,otrzymujemy "T EV". odwrocamy kolejnosc, laczymy z poprzednim i dostajemy
"I LOVE T"
Uruchamiamy crackme od nowa i wpisujemy jako haslo I LOVE TI LOVE T haslo ma 16 znakow i pierwsze 8 program przechodzi
bez problemu. Teraz od znak 9-12
:004011A3 A19B204000              mov eax, dword ptr [0040209B]
:004011A8 C1F809                  sar eax, 09
:004011AB 83F003                  xor eax, 00000003
:004011AE 0534333231              add eax, 31323334
:004011B3 3DDB5C4231              cmp eax, 31425CDB
:004011B8 752E                    jne 004011E8
Wiemc co??? No jasne znowu odwracamy procke kodujaca, dochodzimy do linii 4011a8, komenda a , enter
i wpisujemy
sub eax,31323334  <ENTER>
xor eax,3		<ENTER>
sal eax,9		<ENTER>
<ESC>
zmieniamy eax (r eax 31425cdb) przchodzimy po liniach, dochodzimy do linii 
:004011B3 3DDB5C4231              cmp eax, 31425CDB
odczytujemy eax (? eax) i mamy " SH " zamieniamy kolejnosc i mamy " HS "
Uruchamiamy crackme od nowa i wpisujemy "I LOVE T HS XXX" zakladamy pulapke (bpx getdlgitemtexta) wpisujemy ostatniego
X i progrm sie lapie ladnie przechodzimy przez kolejne linie az dotad
:004011BA A19F204000              mov eax, dword ptr [0040209F]	<------do eax kolejne 4 znaki juz ostatnie
:004011BF C1E807                  shr eax, 07				<------przesuniecie w prawo o 7
:004011C2 0555555505              add eax, 05555555			<------dodaj do eax 05555555h
:004011C7 3587000000              xor eax, 00000087			<------xor eax z 87h
:004011CC 3D50EFDF05              cmp eax, 05DFEF50			<------porownaj eax z 05dfef50
:004011D1 7515                    jne 004011E8				<------jak nie rowne to spadaj
Dochodzimy do linii 4011BF, do eax adujemy 5dfef50 (r eax 5DFEF50) i zmieniamy procedurke
a 			<ENTER>
xor eax,87		<ENTER>
sub eax,05555555	<ENTER>
shl eax,07		<ENTER>
<ESC>
przechodzimy przez te linie i sprawdzamy eax (? eax) i otrzymujemy "EMA " , odwracamy i mamy " AME".
Tak wiec cale haslo to "I LOVE T HS  AME". Uruchamiemy crackme od nowa,wpisujemy haslo i w pasku mamy
"Congratulation ! You Are God Cracker :-)"
Teraz chwila zastanowienia cosik dziwne to haslo, niestety operacje takie jak sar i sal daja bardzo wiele
kombinacji. Sa jeszcze inne litery ktore zamiast " " dadza nam taki sam wynik. 

A orginalne haslo brzmi "I LOVE THIS GAME"

************************************************************************
*  NA WSZELKIE PYTANIA, PROSBY ODPOWIADAM POD ADRESEM TERES@POCZTA.FM  *
*					POWODZENIA					     *
************************************************************************