Copy Link
Add to Bookmark
Report

Your first Windoze crack

DrWatson's profile picture
Published in 
Hacking Tutorials
 · 4 years ago

MEXELITE '97 PRESENTS

"Your first Windoze crack"
by
YOSHi

Introduction


There is one recurring thing I see in all cracking tutorials; they are not suitable for the absolute beginner. Either they dont explain what the debugger is doing or they go too fast and skip over sections. With this, I hope to set some people straight on the fundamental issues of cracking Windoze95 programs. By the way if you are somewhat experienced please leave now; you will not learn anything you dont already know.

Beginning


Ok, the first thing you need to do is download the "target", we will use a horribly limited program called "Hot Chilli 2.0". It is a decent program for creating Java applets with a major restriction: you can only use this program 4 times in 9 days and you can't use your applets unless you register the program. So download this, it is on all Tucows sites under "HTML Special Effects". The only other thing you need is Softice. Here I'm using version 3.0, but it makes no difference what version your using. Now load up Softice in your config.sys (by the way, for anyone who cares, "ice" means "in-circut emulator") and run HotChilli. Notice the nag at the beginning? Its hard to miss and very annoying. But look, there is the option to register! So click on that, and enter a name and a code. Now enter Softice (probably control-d) and type "bpx hmemcpy" (What is bpx? Bpx makes Softice break on a call to a Windoze function, such as hmemcpy, messagebox, etc. What is hmemcpy? Hmemcpy means "high memory copy"; it copies data from one place to another, like when it reads your bogus info, so the program can access it there). Now return to HotChilli and press enter, and Softice will pop up. Now type 's 0 l ffffffff "yourregcode"' (What is this "s 0 l ffffffff" garbage? This will make Softice look through the memory to find the string specified in the quotes). Softice will give you an address, and the offset s probably above 8000000, because thats where Windoze keeps its temporary data. So anyway, type "bpm theaddresssofticegivesyou" (What is bpm? Bpm is a breakpoint on a memory range, and Softice will break on all read or writes to or from that address). Now press control-d again to leave Softice (Why???? Because we want to see where our string checked. When we enter, be broke due to hmemcpy. Since that's not what we want, we press control-d again. Now we are in the code of hmemcpy, but we see in our code window at the top: "REP MOVSD". So its moving our string! Press F10 a few times to get past the "REP MOVSB". Now we want to look for our string again, because it just got moved. So instead of typing 's 0 l ffffffff "yourregcode"' we can just type "s" and it will repeat the search for you. Softice will give you a new address but this time instead of typing "bpm theaddress" we want to change the first bpm, because Windoze is bound to so something else with that space sometime or another, either during this cracking session or the next, causing unnecessary breaks. So type "bpe 01" (What is Bpe? Bpe edits a previously added breakpoint. Why 01? You could type "bl" (lists all your breakpoints) but we know we've only entered 2 breakpoints, and the first one is numbered "00". Anyway, Softice should show something like "BPMB 0030:80126431 RW". Just change the address to the new one, and press enter. Now press control-d to leave softice, and you break in at the comparison routine. You will see something that looks like this:

  
Mov cx, yourcode
Mov dx, goodcode
Cmp cx, dx

All you have to do now is type one of the following:

  
ed dx
d dx
? dx

The first will let you modify the value while showing it to you,
The second will show you the value,
And so will the third.
Now type "bd *" (What? Bd * disables all breakpoints) and go back to the program and put in the correct code.

MAKING A KEY GENERATOR


Instead of searching for your code, look for your name (and bpm on it). Write down -Everything- that is done to the name to make the code. Now write a program in C that will get a name (name = gets();), build the code from it and then show the user the valid code.

Contacting the Author


Look for YOSHi or _YOSHi on EfNet, and while your at it stop by #cracking4newbies, we love to help people out.

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

guest's profile picture
@guest
12 Nov 2024
It is very remarkable that the period of Atlantis’s destruction, which occurred due to earthquakes and cataclysms, coincides with what is co ...

guest's profile picture
@guest
12 Nov 2024
Plato learned the legend through his older cousin named Critias, who, in turn, had acquired information about the mythical lost continent fr ...

guest's profile picture
@guest
10 Nov 2024
الاسم : جابر حسين الناصح - السن :٤٢سنه - الموقف من التجنيد : ادي الخدمه - خبره عشرين سنه منهم عشر سنوات في كبرى الشركات بالسعوديه وعشر سنوات ...

lostcivilizations's profile picture
Lost Civilizations (@lostcivilizations)
6 Nov 2024
Thank you! I've corrected the date in the article. However, some websites list January 1980 as the date of death.

guest's profile picture
@guest
5 Nov 2024
Crespi died i april 1982, not january 1980.

guest's profile picture
@guest
4 Nov 2024
In 1955, the explorer Thor Heyerdahl managed to erect a Moai in eighteen days, with the help of twelve natives and using only logs and stone ...

guest's profile picture
@guest
4 Nov 2024
For what unknown reason did our distant ancestors dot much of the surface of the then-known lands with those large stones? Why are such cons ...

guest's profile picture
@guest
4 Nov 2024
The real pyramid mania exploded in 1830. A certain John Taylor, who had never visited them but relied on some measurements made by Colonel H ...

guest's profile picture
@guest
4 Nov 2024
Even with all the modern technologies available to us, structures like the Great Pyramid of Cheops could only be built today with immense di ...

lostcivilizations's profile picture
Lost Civilizations (@lostcivilizations)
2 Nov 2024
In Sardinia, there is a legend known as the Legend of Tirrenide. Thousands of years ago, there was a continent called Tirrenide. It was a l ...
Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT