Je vais essayer de mettre quelques cracks sur le blog a partir de maintenant, je pense que ca peut être interessant :)

Je prépare un jeu de billard sur PSP et PC. J'ai donc besoin de quelques sources d'inspirations:) Parmi les quelques jeux de billard populaires sur PC, il y a un shareware que j'aime bien: DDD Pool. Par contre il est limité à 90 minutes d'utilisation, ce qui est assez génant... Voici donc le crack qui fait sauter la vérification de la clé + une petite explication.

Explication du crack:
C'est une protection assez basique: il faut entrer un numéro de série. Si il est bon, la limite de temps saute et le mot "trial" n'est plus affiché.
Je n'ai même pas essayé de trouver le sérial car le jeu est en directX en plein ecran et le débuggeur plante assez méchamment (il faut rebooter le pc...) si on essaie de mettre des points d'arret. Il faut donc essayer de modifier l'exe sans debugger, d'ailleurs si quelqu'un sait comment debugger des jeux directx sans double ecran je suis preneur !
Le plus simple, pour ce crack, est surement de desassembler l'exe pour chercher, par exemple, la chaîne "trial"...Effectivement avec W32dasm, une recherche de "trial" nous fait arriver sur la portion de code suivante:



Le test surligné est bien LE test d'enregistrement puisque le mot "trial" n'est plus affiché si j'inverse le test. Par contre le timer à 90 minutes est toujours la, donc l'inversion du saut ne suffit pas. La fonction 0041DAF0 est la fonction de vérification du sérial, et la variable 004A6B7C est un booleen qui determine si on est enregistré ou pas. D'ailleurs une recherche de 004A6B7C avec W32Dasm nous montre que cette variable est comparée plusieurs fois avec 0. On va donc forcer sa valeur à 1, juste après le retour de la fonction de vérif !



Sur la capture le code en rouge est le code que j'ai modifié avec Ollydbg: la fonction "Assemble" est très pratique ! Le code modifié fait exactement la même taille que le code original, et les registres ont les mêmes valeurs: j'ai en fait remplacé le test de la variable d'enregistrement (qui ne sert plus à rien) par une affectation de "1" au booléen.

Télécharger le crack de DDD Pool v1.2