-----------------------------------------------------+
These informations are for educational purposes only!|
-----------------------------------------------------+

=======
Program Name: MCW (Miracle C Compiler)
     Version: 2.2
     Cracker: Jok3r 
      Where?: Http://www.softseek.com (Search for it: MCW C Compiler)
       Tools: Hacker's View 6.xx
Tutorial No.: 1
========

[ Let's start ]

1. Run MCW.EXE, click HELP | About.. and then you will see that UGLY-as-hell
   NAG screen. Guess what? Whenevr you compile and/or build a file in MCW,
   that NAG screen will appear!

2. Now we know that the screen appears via an ABOUT box task, REMEMBER this!

3. Copy MCW.EXE to MCW.EXX (for backup) and copy MCW.EXE to
   CRACK.EXE (for use by Hacker's View)

4. Move CRACK.EXE to the Hacker's View (aka HV) folder, wherever that may be.

5. Load CRACK.EXE into HV (Hacker's View) and press F4, then choose HEX. 
(This is to change code modes...)

6. Press F7 (Search), we are going to search for: "about" (No quotes). 
(You should've remebered that kind of box, because it is useful when removing
NAGs!!!!)

7. Guess what we see buried into all this Hex Junk? Hmm... an ABOUTBOX call!
   Look at your LEFT for the address (00000610 <-- Our address!)

8. Press F4 once more and choose DECODE (To view the ASM code..). Press F5
(GOTO) and type in our address, in this case type in "0610" (no quotes, no 
need for the extra 0's either).

8. Ok, so the ABOUTBOX call looks like this:

00000610: 084142    or  [bx] [di] [00042],al

9. Im not going into every bit of ASM code because i would probably end up
teaching you assembler instead of how to crack MCW!!

10. What more do you need? You know that that is the call so RTN it, for 
those who don't know what a RTN is, it stands for RETURN, and here is how to
imply it...

11. Make sure that the cursor is on: 084142
    Press F3, and enter: C3
    Did you see that OR turn into a RTN? Well, it did!

12. Press F9 to update, and then press F10 to leave HV.

13. YOU ARE DONE!!!!

	Now, go double click CRACK.EXE. Goto HELP, then About. Hey, wait a
minute, nothing happens. Of course nothing happens, when the RTN is made the
NAG is eliminated and when you BUILD/COMPILE programs in MCW, the NAG does
NOT appear...kewl!

[ Patcher: Asm and Pascal ]

Pascal: 
------------------------------------BEGIN------------------------------------       			 

Uses Crt;

 Const A: Array[1..1] of Record {<-------- 1 byte to be patched}
                          A : Longint;
                          B : Byte;

                         End =
((A:$0610;B:$C3)); {<--------------- offset "0610" and byte "C3" = RTN}


Var Ch:Char;
    I:Byte;
    F:File;
    FN:file of byte;
    Size:longint;


Begin
Writeln('Jok3r''s [GH4] Patch);
Writeln('Http://gha.cjb.net');
Writeln('Crack for MCW 2.2 by Jok3r ''00');
 Assign(F,'MCW.EXE'); {<-------------- filename to be patched}
 {$I-} Reset(F,1); {$I+}
 If IOResult <> 0 then
    begin
    writeln('File not found!');
    halt(1);
    end;
 For I:=1 to 1 do {<---------------------- 1 byte to be patched}

 Begin
  Seek(F,A[I].A);
  Ch:=Char(A[I].B);
  Blockwrite(F,Ch,1);
 End;
 Writeln('File successfully patched!');
End.

-------------------------------------END-------------------------------------


ASM:
------------------------------------BEGIN------------------------------------       			 
DOSSEG
.MODEL SMALL
.STACK 500h
.DATA
.CODE
PatchL         EQU 6
Buffer         Db  PatchL Dup(1)
handle   dw ?
intro    db "Jok3r's Patch",0dh,0ah,"[ Http://gha.cjb.net ]",0dh,0ah,"Crack for MCW v2.2 by Jok3r [GH4] '00$"

FileName db "MCW.EXE",0 ;<------- filename to be patched
notfound db 0dh,0ah,"File not found!$"
cracked  db 0dh,0ah,"File successfully patched. Enjoy!$"
Cant     db 0dh,0ah,"Can't write to file.$"
Done     db "File has been made.$"
String   db C3h,0 ;<------------- byte C3 to be patched

START:
mov     ax,cs
mov     ds,ax
mov     dx,offset intro    ;point to the time prompt
mov     ah,9                    ;DOS: print string
int     21h
jmp openfile

openfile:

mov     ax,cs
mov     ds,ax
mov     ax,3d02h
mov     dx,offset FileName
int     21h
mov     handle,ax
cmp     ax,02h
je      filedontexist
jmp     write

filedontexist:
mov     ax,cs
mov     ds,ax
mov     dx,offset notfound
mov     ah,9                    ;DOS: print string
int     21h                     ;display the time prompt
jmp exit

Write:
mov     bx,handle
mov     cx,0000h
mov     dx,0610h ;<------------- offset "0610"
mov	ax,4200h
int     21h

mov     cx,patchl
mov     dx,offset String
mov     ah,40h
mov     cx,01h
int     21h
mov     ax,cs
mov     ds,ax
mov     dx,offset cracked
mov     ah,9                    ;DOS: print string
int     21h                     ;display the time prompt
jmp Exit


Exit:
mov     ah,3eh
int     21h
mov     ax,4c00h
int     21h
END START
-------------------------------------END-------------------------------------

[ IMPORTANT!!! ]
	
	You COULD of also NOPped it. NOP = No Operation, so it would of 
worked out exactly the same. BUT, in the cracking world, try ANYTHING else
before you do a NOP, in time you will see what I mean! Also, you could make
a very good patch with PCW, (Patch Creation Wizard, available at my site)
BTW: Instead of 'C3' for RTN, the NOP is a '90'. 
 
[ Notes ]

	The program 'CRACK.EXE' which should be included here is the patch 
for removing the NAG. It was made using my patch (The ASM one).  The patch
and source is 100% free as long as I get credit for my work...

[ Greetz ]

- The Keyboard Caper [tKc (Phrozen Crew)]  = Read his tuts they r0ck!
- Earthquaker                              = What up my dutch nigg4? kidd1n'
- Everyone at D3F, EQX, GH4, UCU, and ACU...

Special shoutoutz to Nyke Gyrl - what up gyrl?

[ Cont4ct ]

Well, you can find me via the following ways:

- ICQ   [UIN: 49655940          ]
- WWW   [URL: Jok3r.cjb.net     ] 
- Email [Jok3r@globalhacking.com]



Quote [ Not sure who said it ]

"
   If you give a person a crack,
   he will be hungry again.
   If you teach a person to crack,
   he will never be hungry again!  
                                   "


			C0pyr1ght3d © 2K, by d4 j0k3r

[ 2 - 4 - 2000 ]