Category : Unprotects for Games and Such
Archive   : LOSTADMR.ZIP
Filename : LOSTADMR.UNP

 
Output of file : LOSTADMR.UNP contained in archive : LOSTADMR.ZIP
UNPROTECT for THE LOST ADMIRAL, by QQP.

From: Thomcat
Aardvark Adventure BBS
206-633-2952.


Using your favorite hex editor, search for these bytes.

C7 86 24 FF 01 00 83 3E F0 02 00 75 0C 9A 02 17

and replace the 9A 02 with an EB 03


What this is in code, for you assemblers
C7 86 24 FF 01 00 Mov Word Ptr [BP+FF24],0001 ; setup some values
83 3E F0 02 00 Cmp Word Ptr [02F0],+00 ; is this a sample game?
75 0C Jnz 086D ; jump forward if so
9A 02 17 ss ss CALL SSSS:1702 ; SSSS is segment
0B C0 Or AX,AX ; return for error/esc
74 03 Jz 086D ; jump around
E9 97 06 Jmp 0F04 ; etc.

So what we did is we replaced the CALL with a short jump around the offending
code. Since AX is zero to begin with, we test fine for no errors/esc's.
SSSS represents whatever segment the code happens to fall in, and is patched
with the fixup code at the beginning of the program. But our patch is only
two bytes long, so they can fixup all they want, we will jmp around it.
-Thomcat


  3 Responses to “Category : Unprotects for Games and Such
Archive   : LOSTADMR.ZIP
Filename : LOSTADMR.UNP

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/