	!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	!!! Napisa: BAzYL <+> exe^ci^monumentum !!!
	!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
	
						!!!!!!!!!!!!
	SoftICE - spotkanie pierwszego stopnia	!!! BETA !!!
						!!!!!!!!!!!!


Info:
	Tekst ten powstal, poniewaz wiele ludzi nie umie sobie poradzic z SoftICEm.
	A ja bardzo chciabym im pomoc. Jeeli znasz sie dobrze na SoftICE, to nie
	czytaj tego, bo po co?

Poczatki:
	Na poczatku musisz posiadac jakas wersie SoftICE (SoftICE - w skrucie SI).
	Ja mam SI401W95, ale jest tez SI dla Win98 i WinMe. Wersja SI401W95 jest dla 
	Win 95, ale dziala tez w Win98. Mozesz ja sciagnac z sieci:
	www.bazylcrack.free.ecig.pl i wszystkie inne strony o cracku oraz ze strony 
	producenta - www.numega.com. Mozesz tez zamowic CRaCK_CD, wysylajac maila o 
	stosownej tresci pod adres: bazylcrack@free.ecig.pl. Plytka kosztuje 10 zl
	+ koszt przesylki, dla czlonkow grupy exe^ci^monumentum - 7 zl + koszt przesylki.

Instalacja:
	Instalacja przebiegala u minie bez wiekrzych problemow. Serial number zazwyczaj 
	masz dolonczony do pliku z instalatorem, jesli nie to poszukaj w sieci lub go zlam.
	Jezeli masz klopot z ustawieniem karty graficznej (ja mam karte Nvidii, a przy 
	instalce na sterownikach do 'Nvidii' jakos zle chodilo) to sprobuj na 'standard', 
	powinno pomoc. Jeszcze jakies problemy??? ... : bazylcrack@free.ecig.pl

Konfiguracja:
	Po instalacji SI przyszed czas aby go skonfigurowac. Do tego celu sluzy winice.dat
	Mozesz otwozyc go w kazdym edytorze tekstu. Po otwarciu widzimy:

	REM Uwaga, tetst poprzedzony 'REM', ';' lub '//' jest tylko komentarzem, tzn. NIE ma wplywu na 
	REM dzialanie SI.

	PENTIUM=ON	// jezeli masz inny procesor niz Intel to PENTIUM=OFF
	NMI=ON
	ECHOKEYS=OFF
	NOLEDS=OFF
	NOPAGE=OFF
	SIWVIDRANGE=ON
	THREADP=ON
	LOWERCASE=OFF
	WDMEXPORTS=OFF
	MONITOR=0
	
	PHYSMB=32	// tu wpisz ile masz pamieci RAM, 64MB RAM => PHYSMB=64
	SYM=1024
	HST=256
	TRA=8
	MACROS=32
	DRAWSIZE=2048
	
	INIT="X;"	// patrz nastepny punkt
	
	F1="h;"		// w SI pomoc otrzymujesz przez wpisanie 'h', 'help' lub wciskajac F1
	F2="^wr;"	// patrz 'Okna'
	F3="^src;"
	F4="^rs;"
	F5="^x;"
	F6="^ec;"
	F7="^here;"
	F8="^t;"
	F9="^bpx;"
	F10="^p;"
	F11="^G @SS:ESP;"
	F12="^p ret;"
	SF3="^format;"
	CF8="^XT;"
	CF9="TRACE OFF;"
	CF10="^XP;"
	CF11="SHOW B;"
	CF12="TRACE B;"
	AF1="^wr;"	// patrz 'Okna'
	AF2="^wd;"	// patrz 'Okna'
	AF3="^wc;"	// patrz 'Okna'
	AF4="^ww;"	// patrz 'Okna'
	AF5="CLS;"	// komenda 'cls' lub 'Alt + F5' czysci ekran
	AF8="^XT R;"
	AF11="^dd dataaddr->0;"
	AF12="^dd dataaddr->4;"
	CF1="altscr off; lines 60; wc 32; wd 8;"	// 'Ctrl + F1' ustawia opcje wyswietlania SI
	CF2="^wr;^wd;^wc;"	// patrz 'Okna'
	
	; WINICE.DAT
	; (SIW95\WINICE.DAT)
	; for use with SoftICE Versions greater than 3.0 (Windows 95)
	; 
	; *************************************************************************
	; If your have MORE than 32MB of physical memory installed, change
	; the PHYSMB line to the correct # of Megabytes.
	; If you have LESS than 32MB you can save a bit of memory by 
	; specifying the correct # of Megabytes
	; Example: PHYSMB=32
	; *************************************************************************
	; ***** Examples of sym files that can be included if you have the SDK *****
	;	Change the path to the appropriate drive and directory

	LOAD=c:\windows\system\user.exe		// jesli twoje umieszczenie tych (user.exe...)
	LOAD=c:\windows\system\gdi.exe		// plikow jest inne niz TU to zmien je na
	LOAD=c:\windows\system\krnl386.exe	// poprawne.
	LOAD=c:\windows\system\mmsystem.dll	// Np:. LOAD=D:\pliki\dla\windowsa\gdi.exe 
	LOAD=c:\windows\system\win386.exe	// Jeszcze sie nie spodkalem zeby ktos musial to zmeniac...

	; ***** Examples of export symbols that can be included *****
	;	Change the path to the appropriate drive and directory
	;EXP=c:\windows\system\vga.drv		//
	;EXP=c:\windows\system\vga.3gr		//
	;EXP=c:\windows\system\sound.drv	//
	;EXP=c:\windows\system\mouse.drv	//
	;EXP=c:\windows\system\netware.drv	//
	;EXP=c:\windows\system\system.drv	//
	;EXP=c:\windows\system\keyboard.drv	// tutaj SI pobiera sobie rozne rzeczy
	;EXP=c:\windows\system\toolhelp.dll	// wiecej na ten temat w 'Pulapki'
	;EXP=c:\windows\system\shell.dll	// jezeli chcesz uaktywnic pobranie ktoregos
	;EXP=c:\windows\system\commdlg.dll	// z tych plikow to usun srednik (;)
	;EXP=c:\windows\system\olesvr.dll	// przed dana linia
	;EXP=c:\windows\system\olecli.dll	//	
	;EXP=c:\windows\system\mmsystem.dll	//
	;EXP=c:\windows\system\winoldap.mod	//
	;EXP=c:\windows\progman.exe 		//
	;EXP=c:\windows\drwatson.exe 		//
	; ***** Examples of export symbols that can be included for Windows 95 *****
	;	Change the path to the appropriate drive and directory
	;EXP=c:\windows\system\kernel32.dll	//
	;EXP=c:\windows\system\user32.dll	//
	;EXP=c:\windows\system\gdi32.dll	//
	;EXP=c:\windows\system\comdlg32.dll	//	
	;EXP=c:\windows\system\shell32.dll	//
	;EXP=c:\windows\system\advapi32.dll	//
	;EXP=c:\windows\system\shell232.dll	// tutaj SI pobiera rozne biblioteki
	;EXP=c:\windows\system\comctl32.dll	// wiecej na ten temat w 'Pulapki'
	;EXP=c:\windows\system\crtdll.dll	// jezeli chcesz uaktywnic pobranie ktorejs
	;EXP=c:\windows\system\version.dll	// biblioteki to usun srednik (;)
	;EXP=c:\windows\system\netlib32.dll	// przed dana linia
	;EXP=c:\windows\system\msshrui.dll	//
	;EXP=c:\windows\system\msnet32.dll	//
	;EXP=c:\windows\system\mspwl32.dll	//	
	;EXP=c:\windows\system\mpr.dll		//
	
	Wszystkie zmiany beda widoczne dopiero po restarcie !!!

INIT:
	INIT to pewnie skrot od Initiation, ale nie wiem. Wszystkie komendy jakie wprowadzimy
	za znakiem rownosci (=), poprzedzone cudzyslowem (") i przedzielone srednikiem (;), oraz
	zakonczone cudzyslowiem ("), beda wykonywane przy starcie SI. Mozna tu zamiescic rozne komendy.
	najczesciej sa to: 
		lines _ - okresla wysokosc glownego okna SI (od 25 do 60) np:. 'lines 53'
		set font _ - okresla rozmiar czciaki (dostepne rozmiary to 1, 2, 3) np:. 'set font 2'
		color _ _ _ _ _ - okresla kolor poszczegolnych elementow SI (kolory sa HEX) np:. 'color f a 4f 1f e'
		wd _ - pokazuje lub ukrywa okno danych, o podanej dlugosci np:. 'wd 22'
		wc _ - pokazuje lub ukrywa okno kodu, o podanej dlugosci np:. 'wc 25'
		code _ - pokazuje kod hexadecymalny instrukcji assemblerowych (ON/OFF) np:. 'code on'
		faults _ - wlancza lub wylancza weagowanie SI na bledy programow i systemu,
			   dla nowych uzytkownikow polecam wylaczyc ta opcje (ON/OFF) np:. 'faults off'
		X - zamyka okno SI po uruchomienu go z autostartu.
	Najczesciej uzywana konfiguracja to:
	INIT="lines 53; set font 2; color f a 4f 1f e; wd 22; wc 22; code on; faults off; X;"
	Przepisz sobie ta linijke (zamiast samego 'INIT="X;"').

Okna:
	W SI wyrozniamy 7 (to chyba wszystkie) tzw. okien. Okna pokazuja rozne wartosci i inne rzeczy
	dla ktorych zostaly przeznaczone. Np. okno danych (wd) pokazyje nam zawartosc wskazanego rejestru
	czy komorki pamieci. Polecenia z poziomu SI , dotyczace okien:
		1. wd - okno danych
		2. wc - okno kodu (assemblera)
		3. wr - okno rejestrow
		4. ww - okno zawierajace wartosci ktore wczesniej okreslilismy komenda 'watch [rejestr lub cos innego]'
		5. wl - ???
		6. wf - ???
		7. wx - ???
	Rozmiar okien mozesz zmieniac mysza lub podajac ich wartosc po nazwie okna i po spacji np:. 'wc 40'

Pulapki:
	Tu omowie jedne z najwazniejszych pulapek. Zacznijmy od skladni pulapki. Zpoziomu SI wpisujemy:
		'bpx [i tu jakas funkcja API]'
	Np:. 'bpx getwindowtexta'
	Spis pulapek i co one robia:

		bpx getwindowtext -	przerywa przy pobieraniu textu, 16 bit
		bpx getwindowtexta -	przerywa przy pobieraniu textu, 32 bit
		bpx getwindowtextw -	przerywa przy pobieraniu textu, ?64?bit
		bpx getdlgitemtext -	przerywa przy pobieraniu textu, 16 bit
		bpx getdlgitemtexta -	przerywa przy pobieraniu textu, 32 bit
		bpx getdlgitemtextw -	przerywa przy pobieraniu textu, ?64?bit
		bpx hmemcpy -		przerywa przy odwolaniu do pamieci
		bpx createfile -	przerywa przy otwarciu pliku, 16 bit
		bpx createfilea -	przerywa przy otwarciu pliku, 32 bit
		bpx createfilew -	przerywa przy otwarciu pliku, ?64?bit
		bpx messagebox - 	przerywa przy wyswietlaniu okienka, 16 bit
		bpx messageboxa - 	przerywa przy wyswietlaniu okienka, 32 bit
		bpx messageboxw - 	przerywa przy wyswietlaniu okienka, ?64? bit
		bpx messagebeep - 	przerywa przy pierdnieciu towazyszacemu powstawaniu okienka, 16 bit

	To sa te najwarzniejsze pulapki. Jezeli po wpisaniu instrukcji wyskakuje jakis napis (w SI)
	to znaczy ze: 1. zle wpisales instrukcje  2. nie odchaczyles odpowiedniej biblioteki w winice.dat.
	Zeby zastawic te pulapki trzeba odchaczyc (usunac ';' srednik z przed danej linijki).
	Edytujemy winice.dat i przechodzimy tu:
	
	;EXP=c:\windows\system\vga.drv		//
	;EXP=c:\windows\system\vga.3gr		//
	;EXP=c:\windows\system\sound.drv	//
	;EXP=c:\windows\system\mouse.drv	//
	;EXP=c:\windows\system\netware.drv	//
	;EXP=c:\windows\system\system.drv	//
	;EXP=c:\windows\system\keyboard.drv	// Do standatdowych pulapek nic tu nie
	;EXP=c:\windows\system\toolhelp.dll	// odchaczaj, ale jezeli chcesz dawac
	;EXP=c:\windows\system\shell.dll	// pulapki na niestandardowe funkcje
	;EXP=c:\windows\system\commdlg.dll	// to musisz ktores odchaczyc, jak znalezc
	;EXP=c:\windows\system\olesvr.dll	// wlasciwa linijke - czytaj dalej...
	;EXP=c:\windows\system\olecli.dll	//	
	;EXP=c:\windows\system\mmsystem.dll	//
	;EXP=c:\windows\system\winoldap.mod	//
	;EXP=c:\windows\progman.exe 		//
	;EXP=c:\windows\drwatson.exe 		//
	; ***** Examples of export symbols that can be included for Windows 95 *****
	;	Change the path to the appropriate drive and directory
	;EXP=c:\windows\system\kernel32.dll	//
	;EXP=c:\windows\system\user32.dll	//
	;EXP=c:\windows\system\gdi32.dll	//
	;EXP=c:\windows\system\comdlg32.dll	//	
	;EXP=c:\windows\system\shell32.dll	//
	;EXP=c:\windows\system\advapi32.dll	// Do standardowych pulapek wystarczy 
	;EXP=c:\windows\system\shell232.dll	// odchaczyc kernel32.dll, user32.dll,
	;EXP=c:\windows\system\comctl32.dll	// gdi32.dll, shell32.dll.
	;EXP=c:\windows\system\crtdll.dll	// 
	;EXP=c:\windows\system\version.dll	// 
	;EXP=c:\windows\system\netlib32.dll	// 
	;EXP=c:\windows\system\msshrui.dll	//
	;EXP=c:\windows\system\msnet32.dll	//
	;EXP=c:\windows\system\mspwl32.dll	//	
	;EXP=c:\windows\system\mpr.dll		//
	
	Jezeli masz chec zalozyc pulapke na jakas niestandardowa funkcje to odchacz 
	biblioteke w ktorej sie ona znajduje. Jezeli nie wiesz gdzie sie znajduje ta
	funkcja to przepusc program przez jakis file_monitor. Pozniej zobaczysz do jakich
	bibliotek sie odwoluje. Wyszukaj teraz ta biblioteke i zrob jej 'Szybki podglad'.
	Sprawdz czy jest tam twoja funkcja API, jezeli nie to szukaj w innej bibliotece az
	znajdziesz. Gdy juz znajdziesz do odchacz ja w winice.dat. Jezeli danej biblioteki
	nie ma w winice.dat to dodaj tam linijke ze sciezka dostepu do swojej biblioteki.
	To nie takie trudne !!!
	Odchaczenie:
	;EXP=c:\windows\system\mpr.dll		// linia zchaczona
	EXP=c:\windows\system\mpr.dll		// linia odchaczona
	
	Mozna tez zakladac pulapki na odwolane sie do komorek pamieci lub rejestrow.
	Sklad: 'bpm [nr komorki lub rejestr]'.
	Wykozystujemy te pulapke gdy np. wiemy w ktorej komorce jest nasz serial
	i chcemy przerwac prace programu gdy bedzie chcial cos robic z serialem.
	Nieraz, bardzo pomocne.

Komendy SI:
	Tutaj nauczymy sie podstawowych komend SI.
	Komendy i ich znaczenie:
		
		d [rejestr lub nr komorki] -	Pokazuje w oknie danych zawartosc 
						danego rejestru lub komorki w 
						kodzie ASCII i w hex'ach

		a [nr linii] -			Zmienia instrukcje w podanej linii
						na inna instukcje assemblera, ktora
						wprowadza uzytkownik. Po [enterze]
						SI automatycznie chce zmienic nastepna
						ale, jezeli nie chcez jej zmieniac to 
						wcisnij [ESC]. !!!UWAGA!!! Mozesz zmienic
						instrukcje zawierajaca "n" baitow na 
						druga instrukcje, ale o _TEJ_SAMEJ_ ilosci
						(tutaj "n") baitow. Jak tego nie rozumiesz
						to lepiej sie gdzies tego naucz
						a narazie zapomnij o tej komendzie.

		r fl [flaga] - 			Zmienia rejestr flagi. [flaga] jest 
						to miejsce na nazwe flagi, a sa to:
						O, D, I, S, Z, A, P, C.
						Jest to wielkia bron dla crackera
						bo mamy np. skok 'JNZ   12345' i nam nie 
						skacze a my chcemy by skakalo wiec
						'r fl z' i juz skacze... jakie to proste !!!

		exit -				Wylancza komputer, lepiej nie stosowac

		hboot -				Resetuje kopmputer, tez lepiej nie stosowac
		
		[F10] -				Przechodzisz do mastepnej instrukcji w oknie 
						kodu. To samo robi komenda 't'

		[F11] -				Wychodzi z funkcji

		[F8] -				Wchodzi do funkcji

		[F5] -				Zamyka SI. To samo robi komenda 'x'

		[F4] -				Ukrywa okno SI. Zeby okno znowu sie pojawilo
						PrEs EnY Ki tO KonTiNiuM

		[F1] -				Pomoc SI. Inaczej mozesz wywolac pomoc wpisujac
						'h' lub 'help'

		s ds: [wartosc1] l [wartosc2] "[wartosc3]" - Szuka danego ciagu w pamieci. Obiasnienie:
						[wartosc1] to adres od ktorego chcemy szukac.
						[wartosc2] to adres do ktorego chcemy szukac.
						[wartosc3] to ciag znakow ktory chcemy znalezc.
						Gdy SI znajdzi ta [wartosc3] to przerwie poszukiwania
						a wynik przedstawi w oknie danych. Zeby kontynuowac 
						poszukiwania napisz samo 's'

	To chyba wszystkie podstawowe komendy ktore wystarcza do poczatkowego lamania.
	Teraz zaczniemy "Nini poradnik CRaCKerski - Assembler dla CRaCKera".

Assembler:
	Assembler jest to wspanialy jezyk niskiego poziomu. Jest dosc trudny,
	ale jak przeczytasz jakas ksiege na ten temat to napewno go zrozumiesz. 