Index du Forum
IDENTIFICATION SERVEUR : 10.0.97.1 - CLIENT : 3.80.177.176

 FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres   Groupes d'utilisateursGroupes d'utilisateurs   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

Chessmaster 2100 v1.1 IIgs (Software Toolworks, 1988)

 
Poster un nouveau sujet   Répondre au sujet     Index du Forum -> PROTECTION MALEFIQUE
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2949
Localisation: Le Chesnay, France

MessagePosté le: Lun 14 Mar 2016, 19:57    Sujet du message: Chessmaster 2100 v1.1 IIgs (Software Toolworks, 1988) Répondre en citant

#808 - The "best" just got even better!!! First we took The Chessmaster 2000 and added 10 Man-Years of work by our programmers and graphic artists... then you annoyed me a lot with that one, grrr!

Protection type
There are two 3.5" disks that one can copy easily. The first one is the program, the second a set of games. When you launch the game, after the title and the introductory sample, you are asked to enter an answer to a question related to a previous party. As with other Software Toolworks products, you have two tries. If you fail, the game quits.

How to copy
Use ZZCopy or Photonix II to copy both disks. Then, store them in a dry and safe place.

Annoying reverse engineering
Pfew... It was an annoying one. At first, you search for the text pattern "Where" or "When" in the arrays segment of the game and you find nothing. Then you follow the code (a sort of boot-tracing) and you find nothing. You also search for calls or jumps to the quit code and you find nothing, etc. The list is long unless you realize that it is a password protected title.
Such a protection, especially when run from a desktop application, means random values to determine which question to ask. Randomness in a desktop app means QuickDraw II (yes, trust me) so you search for the pattern A2 04 86 22 00 00 E1 (8604 is the _Random call) and you find one in the routine at $01/8C6D. Happy I was! That routine is called at $01/35FB which is part of a loop of two tries. That's good, I think I've found it!
The routine, starting at $35EE, sets a counter to 0 then calls $8C6D until it reaches 2. If we reach $3609 then we've set something wrong two times, this is confirmed by the previous check at $35FF that loops if the accumulator contains 0. If not, we can continue.
We'll patch the BRA $35F4 to tell it to jump to $3611, the address the code goes it we are good.

How to crack
Launch Block.Warden and
Code:

Prefix /CMASTER/CHESSMASTER
Follow file CM2100
At offset $362D: 02 -> 1F
Write the block back onto disk


The disk images are available at http://www.brutaldeluxe.fr/crack/
Note that the menu bar is not displayed with the emulators I've tried, both on the original and cracked versions.

Reboot and... enjoy,

LoGo
3/2016
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
toinet
Site Admin


Inscrit le: 15 Juin 2007
Messages: 2949
Localisation: Le Chesnay, France

MessagePosté le: Lun 14 Mar 2016, 19:57    Sujet du message: Répondre en citant

The code and the Block.Warden view

Code:

The main loop and the call to the protection
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
01/35EE: 64C4                       STZ   $C4            ; Nb of tries
01/35F0: 8002                       BRA   $35F4          ; GO TO $3611 ($1F)
01/35F2: E6C4                       INC   $C4            ; Try the protection
01/35F4: A5C4                       LDA   $C4                                   
01/35F6: C90200                     CMP   #$0002                               
01/35F9: B007                       BCS   $3602          ; unless we're >= 2
01/35FB: 226D8C01                   JSL   $018C6D        ; Call the protection
01/35FF: A8                         TAY                                         
01/3600: F0F0                       BEQ   $35F2          ; Bad answer, retry
01/3602: A5C4                       LDA   $C4                                   
01/3604: C90200                     CMP   #$0002                               
01/3607: D008                       BNE   $3611          ; Did it run 2 times?
01/3609: F40100                     PEA   $0001          ; Quit then
01/360C: 22DE3201                   JSL   $0132DE                               
01/3610: 7A                         PLY                  ; ...never return
01/3611: 22D74C01                   JSL   $014CD7        ; Play the game
01/3615: A204912200                 _ShowCursor                                 
01/361C: B003                       BCS   $3621                                 
01/361E: A90000                     LDA   #$0000                               
01/3621: 8F020002                   STAL  $020002                               
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS

Block: $029E (670)      Volume name: CMASTER         Sunday     14-Mar-16  6:55
Prefix: /CMASTER/CHESSMASTER/                                                   
Following: CM2100, Type S16, Rel block 28, Byte $00362D                         
(c) Q      00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F            Edit mode
1988ZSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
    Z 000: 00 F4 00 00 A2 04 38 22 00 00 E1 B0 03 A9 00 00   .t..".8"..a0.)..   
  b Z 010: 8F 00 00 00 F4 00 00 F4 00 00 A2 04 55 22 00 00   ....t..t..".U"..   
B y Z 020: E1 B0 03 A9 00 00 8F 00 00 00 64 C4 80>02<E6 C4   a0.)......dD..fD   
L   Z 030: A5 C4 C9 02 00 B0 07 22 00 00 00 A8 F0 F0 A5 C4   %DI..0."...(pp%D   
O G Z 040: C9 02 00 D0 08 F4 01 00 22 00 00 00 7A 22 00 00   I..P.t.."...z"..   
C l Z 050: 00 A2 04 91 22 00 00 E1 B0 03 A9 00 00 8F 00 00   .".."..a0.).....   
K e Z 060: 00 22 00 00 00 F4 08 01 A2 0F 31 22 00 00 E1 B0   ."...t..".1"..a0   
  n Z 070: 03 A9 00 00 8F 00 00 00 3B 18 69 38 00 1B 2B 6B   .)......;.i8..+k   
W   Z 080: 0B 3B 38 E9 FB 00 5B 69 F4 00 1B A9 FF 00 E2 20   .;8i{.[it..).b   
A B Z 090: 8F 00 00 00 C2 20 E2 20 8F 00 00 00 C2 20 9C 00   ....B b ....B ..   
R r Z 0A0: 00 AD 00 00 29 FF 00 48 22 00 00 00 7A F4 FF 00   .-..).H"...zt.   
D e Z 0B0: AE 00 00 AD 00 00 85 F6 86 F8 A5 F6 A6 F8 22 00   ...-...v.x%v&x".   
E d Z 0C0: 00 00 7A 3B 18 69 06 00 1B 2B 6B 00 E2 20 8B AF   ..z;.i...+k.b ./   
N o Z 0D0: 00 00 00 48 AB C2 30 AD 00 00 1A 8D 00 00 E2 30   ...H+B0-......b0   
  n Z 0E0: AF 32 C0 E0 29 BF 8F 32 C0 E0 AB 18 6B 0B 3B 38   /2@`)?.2@`+.k.;8   
    Z 0F0: E9 FB 00 5B 69 F2 00 1B AD 00 00 CD 00 00 F0 15   i{.[ir..-..M..p.   
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet     Index du Forum -> PROTECTION MALEFIQUE Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com