<HTML>
<HEAD>
   <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
   <META NAME="Author" CONTENT="Stahlrauke Eisenbeiss">
   <META NAME="Classification" CONTENT="Hacking,Cracking">
   <META NAME="Description" CONTENT="Step by step guide to cracking Microangelo98">
   <META NAME="KeyWords" CONTENT="Hack,Cracking,Reverse Engineering Code, Visual Basic Cracking">
   <META NAME="GENERATOR" CONTENT="Mozilla/4.04 [en] (Win95; I) [Netscape]">
   <TITLE>Microangelo98</TITLE>
<!--  formamus.htm version 02 February 1998 







      INSTRUCTIONS FOR SUBMITTING: DO NOT USE HTML EDITORS!







      SEARCH THIS TEXT FOR THE STRING "Your_" 







      AND REPLACE WITH WHATEVER YOU WANT TO PUBLISH! 







      THANKS A LOT: this will allow automated retrieval -->
</HEAD>
<BODY TEXT="#001010" BGCOLOR="#C0C0C0" LINK="#FF0000" VLINK="#993366" ALINK="#FFFF00">
&nbsp;
<TABLE BORDER CELLSPACING=2 WIDTH="100%" BGCOLOR="#C0C0C0" 22" >
<TR BGCOLOR="#FFFFFF">
<TD WIDTH="138">
<CENTER><B><FONT FACE="Arial,Helvetica">December 1998</FONT></B>&nbsp;</CENTER>
</TD>

<TD WIDTH="693">
<CENTER><B><FONT FACE="Arial,Helvetica"><FONT SIZE=+2>"Microangelo98"</FONT></FONT></B>&nbsp;</CENTER>

<CENTER><FONT FACE="Arial,Helvetica">Icon Tools for Win'95/98&nbsp;</FONT>&nbsp;</CENTER>
</TD>

<TD WIDTH="134">
<CENTER>&nbsp;<FONT FACE="Arial,Helvetica"><FONT COLOR="#808080">Windows95
Cracking</FONT></FONT>&nbsp;<FONT FACE="Arial,Helvetica"><FONT COLOR="#808080">&nbsp;</FONT></FONT>&nbsp;</CENTER>
</TD>
</TR>

<TR BGCOLOR="#FFFF99">
<TD WIDTH="138">
<CENTER><FONT COLOR="#890000">&nbsp;</FONT>&nbsp;</CENTER>
</TD>

<TD WIDTH="693">
<CENTER>by <B><FONT SIZE=+0>Eisenbeiss</FONT></B><FONT SIZE=+3>&nbsp;</FONT>&nbsp;</CENTER>
</TD>

<TD VALIGN=CENTER WIDTH="134">&nbsp;</TD>
</TR>

<TR BGCOLOR="#999900">
<TD WIDTH="138">
<CENTER>&nbsp;</CENTER>
</TD>

<TD WIDTH="693">
<CENTER><FONT FACE="Arial,Helvetica">Code Reversing For Beginners&nbsp;</FONT>&nbsp;</CENTER>
</TD>

<TD WIDTH="134">
<CENTER>&nbsp;</CENTER>
</TD>
</TR>

<TR BGCOLOR="#C0C0C0">
<TD WIDTH="138">&nbsp;</TD>

<TD ALIGN=LEFT WIDTH="693">
<TABLE BORDER=0 WIDTH="100%" >
<TR>
<TD>
<CENTER>&nbsp; <B><FONT FACE="Arial,Helvetica">Program Details</FONT></B>&nbsp;</CENTER>
</TD>
</TR>

<TR>
<TD>
<CENTER><FONT FACE="Arial,Helvetica"><B>Program Name:</B> Microangelo 98</FONT>&nbsp;</CENTER>
</TD>
</TR>

<TR>
<TD>
<CENTER><FONT FACE="Arial,Helvetica"><B>Program Type:</B> Win'95/98 Utility</FONT>&nbsp;</CENTER>
</TD>
</TR>

<TR>
<TD>
<CENTER><FONT FACE="Arial,Helvetica"><B>Program Location:</B>&nbsp; <A HREF="http://www.impactsoft.com/muangelo/muangelo.html">Here</A>&nbsp;</FONT></CENTER>
</TD>
</TR>

<TR>
<TD>
<CENTER><FONT FACE="Arial,Helvetica">&nbsp;</FONT> <FONT FACE="Arial,Helvetica"><B>Program
Size: </B>1.26 MB</FONT>&nbsp;</CENTER>
</TD>
</TR>

<TR>
<TD>
<CENTER><FONT FACE="Arial,Helvetica"><B>Packed using:</B> InstallShield&nbsp;</FONT>&nbsp;<FONT FACE="Arial,Helvetica">&nbsp;</FONT>&nbsp;</CENTER>
</TD>
</TR>
</TABLE>
&nbsp;</TD>

<TD WIDTH="134">&nbsp;</TD>
</TR>

<TR BGCOLOR="#C0C0C0">
<TD WIDTH="138">&nbsp;</TD>

<TD WIDTH="693">
<CENTER><B>&nbsp;</B>&nbsp; <B><FONT FACE="Arial,Helvetica">Tools Required:</FONT></B>
<FONT FACE="Arial,Helvetica">SoftIce (NuMega)</FONT>, <FONT FACE="Arial">Hex
editor, Resource Grabber</FONT>&nbsp;</CENTER>
</TD>

<TD WIDTH="134">&nbsp;</TD>
</TR>

<TR>
<TD VALIGN=CENTER WIDTH="138" BGCOLOR="#C6E7C6">
<CENTER><B><FONT FACE="Arial,Helvetica"><FONT COLOR="#0000FF"><FONT SIZE=-1>Rating</FONT></FONT></FONT></B>&nbsp;</CENTER>
</TD>

<TD VALIGN=CENTER WIDTH="693" BGCOLOR="#C6E7C6">
<CENTER><FONT FACE="Arial,Helvetica"><FONT SIZE=-1><B><FONT COLOR="#0000FF">&nbsp;
Easy ( X )&nbsp;&nbsp;&nbsp;&nbsp; Medium (&nbsp; )&nbsp;&nbsp;&nbsp;&nbsp;
Hard (&nbsp; )&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Pro (&nbsp;&nbsp; )</FONT></B>&nbsp;</FONT></FONT>&nbsp;</CENTER>
</TD>

<TD WIDTH="134" BGCOLOR="#999900"><B><FONT FACE="Arial,Helvetica"><FONT SIZE=-1>There
is a crack, a crack in everything. That's how the light gets in.</FONT></FONT></B></TD>
</TR>
</TABLE>

<CENTER>&nbsp;</CENTER>

<HR align="center">
<CENTER><FONT FACE="Arial,Helvetica">&nbsp;</FONT> <FONT FACE="Arial,Helvetica"><FONT SIZE=+3>Microangelo98</FONT></FONT></CENTER>

<CENTER><FONT FACE="Arial,Helvetica"><FONT SIZE=+2>&nbsp;The Popular Icon
Utility for Win'95/98</FONT></FONT></CENTER>

<CENTER><FONT FACE="Arial,Helvetica"><FONT COLOR="#0B7FC1">Written by Eisenbeiss</FONT></FONT>&nbsp;<FONT FACE="Arial,Helvetica"></FONT></CENTER>

<CENTER>&nbsp;</CENTER>

<TABLE BORDER CELLSPACING=2 WIDTH="100%" HEIGHT="22" >
<TR>
<TD BGCOLOR="#C6E7C6">
<CENTER><FONT COLOR="#0000FF"><FONT SIZE=+2>Introduction</FONT></FONT>&nbsp;</CENTER>
</TD>
</TR>
</TABLE>
<FONT FACE="Arial">&nbsp;</FONT>
<BR><FONT FACE="Arial">Microangelo by Impact Software is:</FONT>

<P><FONT FACE="Arial"><FONT SIZE=+0>'An outstanding suite of utilities
that provides tools for working with the icons, cursors and animated cursors
used by the latest Windows operating systems. Microangelo 98 includes Explorer,
Librarian, Studio, Animator and Engineer utilities. These components have
been specifically designed to locate, manage, create and edit the smaller
graphic elements used on the latest Windows desktops.'</FONT></FONT>
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 WIDTH="100%" HEIGHT="22" >
<TR>
<TD BGCOLOR="#C6E7C6">
<CENTER><FONT SIZE=+2><FONT COLOR="#0000FF">The Essay</FONT>&nbsp;</FONT>&nbsp;</CENTER>
</TD>
</TR>
</TABLE>
<FONT FACE="Arial">&nbsp; The Microangelo98 package consists of five individual
programs: the icon explorer '<FONT COLOR="#008000">muexplor.exe</FONT>',
the librarian '<FONT COLOR="#008000">mumgr.exe</FONT>', the editor '<FONT COLOR="#008000">muedit.exe</FONT>',
the animation tool '<FONT COLOR="#008000">muani.exe</FONT>' and the engineering
tool '<FONT COLOR="#008000">muengnr.exe</FONT>'. As it will turn out, all
programs have an identical protection mechanism that we must disable individually
in each program. After installing the package and running muexplor.exe,
we are confronted with a nag screen informing us about the evaluation status
of the software.</FONT>
<BR><FONT FACE="Arial">&nbsp;</FONT>
<BR><FONT FACE="Arial">We click on 'I agree' and proceed. Now we go to
the 'About' menu and click. Here we meet our nag screen again - there is
no option to register the program. The user is supposed to order a personalized
copy that is delivered on disk. Fortunately, the evaluation copy is still
fully functional. We will turn it into our own personalized copy with minimal
effort.</FONT>

<P><FONT FACE="Arial">The first thing we do is search the registry for
an entry related to the evaluation status of the package. <FONT COLOR="#800000">H_KEY_CURRENT_USER/Software/Impact/Microangelo
98/</FONT> contains a folder named 'evaluation'. We delete it. When we
now try to run '<FONT COLOR="#008000">muexplor.exe</FONT>', a beep sounds
and a messagebox pops up saying that the program cannot locate the evaluation
information in our registry. When we click OK, the show is over - program
terminated. So it's time to fire up softice and set a '<FONT COLOR="#800000">bpx
MessageBoxA</FONT>'.</FONT>

<P><FONT FACE="Arial">Upon re-running muexplor, we promptly land in softice.
We press F12 to complete the function and pop out to Windows again, where
we see that dreaded messagebox. A click on 'OK' brings us back to softice,
right to the place from where the 'MessageBoxA' function was called. After
pressing F10 a couple of times, some POP instructions herald an upcoming
RET. As crackers, we draw the conclusion that the program issued a CALL
to check the evaluation info in the registry. Now we follow the code by
pressing F10 and let the RET take us to the location from where the CALL
was issued.</FONT>
<BR>&nbsp;
<TABLE BORDER=0 WIDTH="100%" >
<TR>
<TD WIDTH="1%"><FONT FACE="Arial">0040189A&nbsp;</FONT></TD>

<TD WIDTH="100%"><FONT FACE="Arial">Call dword ptr [0040B2AC]</FONT></TD>
</TR>

<TR>
<TD WIDTH="1%"><FONT FACE="Arial">004018A0&nbsp;</FONT></TD>

<TD WIDTH="100%"><FONT FACE="Arial">mov dword ptr [0040E268], eax</FONT></TD>
</TR>

<TR>
<TD WIDTH="1%"><FONT FACE="Arial">004018A5&nbsp;</FONT></TD>

<TD WIDTH="100%"><FONT FACE="Arial">mov eax, dword ptr [0040E7F0]</FONT></TD>
</TR>

<TR>
<TD WIDTH="1%"><FONT FACE="Arial">004018AA&nbsp;</FONT></TD>

<TD WIDTH="100%"><FONT FACE="Arial">test eax, eax</FONT></TD>
</TR>

<TR>
<TD WIDTH="1%"><FONT FACE="Arial">004018AC&nbsp;</FONT></TD>

<TD WIDTH="100%"><FONT FACE="Arial">jne 004018C1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
; <FONT COLOR="#FF0000">THE jump</FONT></FONT></TD>
</TR>

<TR>
<TD WIDTH="22%"><FONT FACE="Arial">004018AE&nbsp;</FONT></TD>

<TD WIDTH="78%"><FONT FACE="Arial">call 004013B0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<FONT COLOR="#800000">; the call that brought us the dreaded MessageBox</FONT></FONT></TD>
</TR>

<TR>
<TD WIDTH="22%"><FONT FACE="Arial">004018B3</FONT></TD>

<TD WIDTH="78%"><FONT FACE="Arial">test eax, eax&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<FONT COLOR="#800000">; we land here</FONT></FONT></TD>
</TR>

<TR>
<TD WIDTH="22%"><FONT FACE="Arial">004018B5</FONT></TD>

<TD WIDTH="78%"><FONT FACE="Arial">jne 004018D2</FONT></TD>
</TR>

<TR>
<TD WIDTH="22%"><FONT FACE="Arial">004018B5</FONT></TD>

<TD WIDTH="78%"><FONT FACE="Arial">pop edi</FONT></TD>
</TR>
</TABLE>
<FONT FACE="Arial">&nbsp;</FONT>
<BR><FONT FACE="Arial">One thing immediately catches our eye: there is
a conditional jump, <FONT COLOR="#FF0000">THE jump</FONT>, avoiding the
entire call that has checked the registry. We set a <FONT COLOR="#800000">bpx
30:4018AC</FONT> and disable the bpx hmemcpy. After pressing 'x'/return,
we drop out to windows and muexplor has terminated.&nbsp; On the next run
of muexplor, we land in softice, precisely at the <FONT COLOR="#FF0000">THE
jump</FONT>. Boldly, we type '<FONT COLOR="#800000">r eip 4018C1</FONT>'
/return to enforce it and 'x' /return to leave softice. Bingo! Muexplor.exe
starts, does not complain about missing registry information and skips
the nagscreeen.</FONT>
<BR><FONT FACE="Arial">&nbsp;</FONT>
<BR><FONT FACE="Arial">Even the caption bar does not say 'evaluation day
x of 30' anymore. With our favorite Hex editor, we now search the code
location '85 C0 75 13 E8 FD FA FF FF'. The '75 13' instruction is <FONT COLOR="#FF0000">THE
jump</FONT> and needs to be patched into '74 13' = <FONT COLOR="#FF0000">je</FONT>
004018C1. With this patch, our icon explorer behaves exactly like the registered
copy.</FONT>

<P><FONT FACE="Arial">Unfortunately, the other 4 programs don't. They contain
their own shareware mechanisms that we have not disabled yet. This is an
easy task, however, because we can apply exactly the same cracking procedure
as with 'muexplor.exe'.</FONT>

<P><FONT FACE="Arial">If we just wanted to rip off Microangelo, we might
stop here, since the program suite is deprotected and can be used without
limitation. As true reversers, however, we are not satisfied with the 'About'
menue. Not only does it persistently say 'Evaluation Copy', but we are
even forced to view the 'Order Now!' screen afterwards. Two 'About' screens
are one to many. Let's get rid of one. First, we must determine the origin
of the box.</FONT>
<BR><FONT FACE="Arial">&nbsp;</FONT>
<BR><FONT FACE="Arial">From its appearance, it is evidently a bitmap. Thus,
it's useless to search for a text string 'Evaluation Copy'. Since bitmaps
are large, while the individual applications of Microangelo are rather
small, the 'About' bitmaps are likely to be stored in one central copy.
The largest file in the 'Microangelo 98' directory is '<FONT COLOR="#008000">muapp.dll</FONT>'.
This is our candidate. Opening the file in the Hex editor quickly convinces
us that indeed bitmaps are stored here. Before we deal with them, however,
we will disable the second part of the 'About' dialogue.</FONT>
<BR><FONT FACE="Arial">&nbsp;</FONT>
<BR><FONT FACE="Arial">To that end, we switch to softice and set a <FONT COLOR="#800000">bpx&nbsp;
LoadBitmapA</FONT>. We run the icon explorer and click on the 'About' item
in the menu. Immediately, we are transferred to softice again. We disable
the breakpoint and press F12 to complete the call. We end up in the code
of 'muapp.dll'. After pressing F10 a couple of times, we arrive at a RET
instruction that takes us straight to Kernel code. A quick 'F4' informes
us that there's no trace yet of any messagebox, so we hit F12 several times
until we pop out of softice and see the dialog. Clicking on its 'Next'
button brings us back to softice, to the following location:</FONT>
<BR>&nbsp;
<BR>&nbsp;
<TABLE BORDER=0 WIDTH="100%" >
<TR>
<TD WIDTH="17%"><FONT FACE="Arial">10001799</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">push 00000384</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">1000179E</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">push ecx</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">1000179F</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">call edi</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017A1</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">mov eax, dword ptr [1000908c]&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<FONT COLOR="#800000">;we land here</FONT></FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017A6</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">test eax, eax&nbsp;</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017A8</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">jne 100017C0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<FONT COLOR="#800000">;another </FONT><FONT COLOR="#FF0000">magic jump</FONT></FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017AA</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">mov edi, dword ptr [100091AC]</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017B0</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">push 00000000</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017B2</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">push 10001510</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017B7</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">push esi</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"></TD>

<TD WIDTH="83%"><FONT FACE="Arial"><FONT COLOR="#800000">---------------------------------------------------------;the
pattern repeats</FONT></FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017B8</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">push 00000386</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017BD</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">push edx</FONT></TD>
</TR>

<TR>
<TD WIDTH="17%"><FONT FACE="Arial">100017BE</FONT></TD>

<TD WIDTH="83%"><FONT FACE="Arial">call edi</FONT></TD>
</TR>
</TABLE>
&nbsp;
<BR><FONT FACE="Arial">Evidently, we have a repeating pattern here. Edi
is CALLed twice, in accordance with the fact that we have two messageboxes.
The registered version presumably has only one, so a conditional jump exists
to avoid the second. This <FONT COLOR="#FF0000">magic jump</FONT> is&nbsp;
labelled in the code snippet above and needs to be patched from <FONT COLOR="#FF0000">jne</FONT>
to <FONT COLOR="#008000">je</FONT>, just like we did it before with the
five applications. After this is done, we are rewarded by only one 'About'
box remaining, but it still says 'Evaluation', and its button reads 'Next',
even though we don't get another box by pressing it.</FONT>

<P><FONT FACE="Arial">Now we must patch the bitmap. The easiest way of
doing so is to use 'Resource Grabber', a shareware utility by R. Fellner.
It is found <A HREF="http://www.user.xpoint.at/r.fellner/">here</A>. We
can rip the bitmaps from the muapp.dll and save them as bmp files. There
are five of them. After inspection by paint, we find that one is a symbol
bar, and the others are 'About' or 'Order' screens. We can take one of
the bitmaps and edit it to our needs with paint. After saving it, the Hex
editor is used to simultaneously open our bitmap and 'muapp.dll'. We will
now copy our bitmap and paste it to the bitmaps in the dll file. A bmp
file has a file header of 14 bytes and an info header of 40 bytes. The
bitmaps inside 'muapp.dll' lack the file header.</FONT>
<BR><FONT FACE="Arial">&nbsp;</FONT>
<BR><FONT FACE="Arial">The info header always starts with four bytes containing
the length of the info header, i.e. 28h 00h 00h 00h. Then follows the image
with (4 bytes), height (4 bytes) etc. So we are looking for an area inside
'muapp.dll' that looks like our saved bitmaps and starts with 28 00 00
00. The first area that meets these criteria begins at offset 9CE0. After
that, others follow. Since we do not know which bitmap to patch, we patch
them all with our own creation. Of course, we must not paste the bmp file
headrer into the dll file. We copy from 28 00 00 00, leaving out the first
14 bytes. A run of 'muexplor' shows our success. When we click 'About',
we see our own bitmap. The only thing missing is the patch for the button
caption, which still is 'Next'. A text search for 'Next' from the Hex editor
quickly shows us the way. So by entering 'OK' in the Hex editor, we finish
our work on Microangelo 98.</FONT>
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 WIDTH="100%" HEIGHT="22" >
<TR>
<TD BGCOLOR="#C6E7C6">
<CENTER><FONT FACE="Arial,Helvetica"><FONT SIZE=+2><FONT COLOR="#0000FF">Crack
Loader</FONT>&nbsp;</FONT></FONT>&nbsp;</CENTER>
</TD>
</TR>
</TABLE>
<FONT FACE="Arial,Helvetica">&nbsp;</FONT>
<BR><FONT FACE="Arial,Helvetica">A patch application program can easily
be written by the interested reader.&nbsp;&nbsp;</FONT>
<BR>&nbsp;
<TABLE BORDER CELLSPACING=2 WIDTH="100%" HEIGHT="22" >
<TR>
<TD BGCOLOR="#C6E7C6">
<CENTER><FONT FACE="Arial,Helvetica"><FONT SIZE=+2><FONT COLOR="#0000FF">Final
Notes</FONT>&nbsp;</FONT></FONT>&nbsp;</CENTER>
</TD>
</TR>
</TABLE>
&nbsp;
<BR><FONT FACE="Arial,Helvetica">Inspection of the application files as
well as of 'muapp.dll' reveals messages like 'Microangelo licensing mechanism
has been tampered with or is corrupted. Execution halted' within the files.
So the software is supposed to be protected from patching. As it turned
out, however, this protection is not effective. The cracking approach taken
by us in the above example is straight forward and does not encounter any
problems.&nbsp;&nbsp;&nbsp;</FONT>
<BR><FONT FACE="Arial,Helvetica">&nbsp;</FONT>
<BR><FONT FACE="Arial,Helvetica">&nbsp;</FONT>
<TABLE BORDER CELLSPACING=2 WIDTH="100%" HEIGHT="22" >
<TR>
<TD BGCOLOR="#C6E7C6">
<CENTER><FONT FACE="Arial,Helvetica"><FONT COLOR="#0000FF"><FONT SIZE=+2>Ob
Duh</FONT></FONT>&nbsp;</FONT>&nbsp;</CENTER>
</TD>
</TR>
</TABLE>
<FONT FACE="Arial,Helvetica">&nbsp;</FONT>
<BR><FONT FACE="Arial,Helvetica">&nbsp;<I>Do I really have to remind you
all that by buying and NOT stealing the software you use will ensure that
these software houses will continue to&nbsp; produce even *better* software
for us to use and more importantly, to continue offering even more challenges
to breaking their often weak protection systems</I></FONT>

<P><I><FONT FACE="Arial,Helvetica">Ripping off software through serials
and cracks is for lamers.</FONT></I>

<P><I><FONT FACE="Arial,Helvetica">If you are looking for cracks or serial
numbers from these pages then your wasting your time, try searching elsewhere
on the Web under Warez, Cracks etc.</FONT></I>
<BR><I><FONT FACE="Arial,Helvetica">&nbsp;</FONT></I>
<BR>&nbsp;
<BR>
<HR SIZE="3" WIDTH="100%">
<BR>&nbsp;
<CENTER><TABLE BORDER=2 >
<TR>
<TD>&nbsp;<B><FONT FACE="Arial,Helvetica"><FONT SIZE=+1><A HREF="Main.html">Return</A></FONT></FONT></B>&nbsp;</TD>
</TR>
</TABLE></CENTER>

<CENTER>&nbsp;</CENTER>

<HR SIZE="3" WIDTH="100%">
<BR><FONT FACE="Arial,Helvetica"><FONT SIZE=-2>Essay by:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<A HREF="mailto:eisenbeiss@hotmail.com">eisenbeis</A></FONT></FONT>
<BR><FONT FACE="Arial,Helvetica"><FONT SIZE=-2>Page Created: 12th December
1998</FONT></FONT>
<BR><SCRIPT LANGUAGE="JavaScript">



<!--- hide script from old browsers



update= new Date(document.lastModified)



document.writeln("<FONT SIZE=-1>Last Updated: <EM>" + update.toLocaleString(update) + "</EM></FONT><BR>")



// end hiding --->



</SCRIPT>

</BODY>
</HTML>
