Index du Forum
IDENTIFICATION SERVEUR : 10.0.97.1 - CLIENT : 54.221.147.93

 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 

Battle Chess IIgs (Interplay, 1989)

 
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: Mer 06 Jan 2016, 9:12    Sujet du message: Battle Chess IIgs (Interplay, 1989) Répondre en citant

This is the crack of the Apple IIgs version of the chess game where pieces are animated and the interface well made. Disk image and time saving by 4am.

Protection type
This is a password protected game, or off-disk protection. You have three tries. If you fail, the game quits.

How to copy
Use ZZCopy of Photonix II to copy your original disk that you will put in a dry and safe place.

Sort of boot-trace
When we fail three times, a message is displayed: "Insert your startup..." and "Press mouse button to...".
Those are located respectively at $3D43 and $9BD1.
Going deeper, $3D43 is called at $3DD2 and $9BD1 is called at $9C69 and $9DBA.
We know we have to enter an answer, let's find where it is stored in memory and reverse engineer from here.
Let's enter "BRUTAL", when searched in RAM by entering '\"BRUTAL"\<10.BFF7P from the IIgs monitor, the answer is $B91A.

So, the protection string starts at $B918. It is a long Pascal string (one word for length as a header).
Now, we search for $B91A in memory and we find a comparison opcode in the $AAxx range.

If we go upper, the routine starts at $AADE where it gets random values, then asks for the answer.
On exit: if jumps to $3D76 (good, we have a match with our first search) or zeroes $B908 (default value is $FFFF)

A call to $AADE is found at $30FF in the program, we have it!

How to crack
Launch Block.Warden.
Prefix /BATTLE.CHESS
Follow file BCGAME
At offset $FF: 20 DE AA -> 9C 08 B9
We replace the call to the protection and zeroes the flag that tells if we correctly entered the answer to the password.

The disk image is available at http://www.brutaldeluxe.fr/crack/

Reboot and... enjoy,
LoGo
12/2015


Derničre édition par toinet le Lun 11 Jan 2016, 16:20; édité 1 fois
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: Mer 06 Jan 2016, 9:20    Sujet du message: Répondre en citant

Excerpt from the code: the call to the protection and the protection code

Code:

00/30E9: A905                       LDA   #$05                                 
00/30EB: 8DE70B                     STA   $0BE7                                 
00/30EE: C230                       REP   #$30                                 
00/30F0: 9C000C                     STZ   $0C00                                 
00/30F3: 200C0C                     JSR   $0C0C                                 
00/30F6: 205189                     JSR   $8951                                 
00/30F9: 209035                     JSR   $3590                                 
00/30FC: 20E032                     JSR   $32E0                                 
00/30FF: 20DEAA                     JSR   $AADE           ; Call the protection
00/3102: 60                         RTS                                         
00/3103: 446F20796F                 ASC   'Do you really want to start ovI     
00/3125: E230                       SEP   #$30                                 
00/3127: A900                       LDA   #$00                                 
00/3129: 48                         PHA                                         
00/312A: C230                       REP   #$30                                 
00/312C: F40331                     PEA   $3103                                 
00/312F: 20069C                     JSR   $9C06                                 
00/3132: 9001                       BCC   $3135                                 
00/3134: 60                         RTS                                         
00/3135: A234B8                     LDX   #$B834                               

-------

00/AADE: 08                         PHP                                         
00/AADF: C230                       REP   #$30                                 
00/AAE1: 0B                         PHD                                         
00/AAE2: 3B                         TSC                                         
00/AAE3: 38                         SEC                                         
00/AAE4: E90E00                     SBC   #$000E                               
00/AAE7: 1B                         TCS                                         
00/AAE8: 1A                         INC                                         
00/AAE9: 5B                         TCD                                         
00/AAEA: A90300                     LDA   #$0003          ; Number of tries
00/AAED: 850C                       STA   $0C                                   
00/AAEF: F45600                     PEA   $0056                                 
00/AAF2: F40080                     PEA   $8000                                 
00/AAF5: E230                       SEP   #$30                                 
00/AAF7: A902                       LDA   #$02                                 
00/AAF9: 48                         PHA                                         
00/AAFA: C230                       REP   #$30                                 
00/AAFC: 20CC89                     JSR   $89CC                                 
00/AAFF: A90480                     LDA   #$8004                               
00/AB02: 8D458E                     STA   $8E45                                 
...
00/AD43: A00000                     LDY   #$0000                               
00/AD46: AE18B9                     LDX   $B918                                 
00/AD49: F021                       BEQ   $AD6C                                 
00/AD4B: E220                       SEP   #$20                                 
00/AD4D: B706                       LDA   [$06],Y                               
00/AD4F: C961                       CMP   #$61                                 
00/AD51: 9003                       BCC   $AD56                                 
00/AD53: 38                         SEC                                         
00/AD54: E920                       SBC   #$20                                 
00/AD56: D91AB9                     CMP   $B91A,Y                               
00/AD59: D011                       BNE   $AD6C                                 
00/AD5B: C8                         INY                                         
00/AD5C: CA                         DEX                                         
00/AD5D: D0EE                       BNE   $AD4D                                 
00/AD5F: B706                       LDA   [$06],Y                               
00/AD61: C90D                       CMP   #$0D                                 
00/AD63: D007                       BNE   $AD6C                                 
00/AD65: C230                       REP   #$30                                 
00/AD67: 9C08B9                     STZ   $B908           ; We are good! Tell the program
00/AD6A: 800C                       BRA   $AD78           ; exit routine                     
00/AD6C: C230                       REP   #$30                                 
00/AD6E: C60C                       DEC   $0C             ; Next try           
00/AD70: F003                       BEQ   $AD75                                 
00/AD72: 4C24AB                     JMP   $AB24           ; Retry
00/AD75: 4C763D                     JMP   $3D76           ; Quit
00/AD78: 3B                         TSC                                         
00/AD79: 18                         CLC                                         
00/AD7A: 690E00                     ADC   #$000E                               
00/AD7D: 1B                         TCS                                         
00/AD7E: 2B                         PLD                                         
00/AD7F: 28                         PLP                                         
00/AD80: 60                         RTS                                         
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