Tutorial
de Cracking
|
Reflechissons donc deux secondes
: ce message ne s'affiche qu'a condition que le code soit faux...
Donc, si
on arrive a retrouver ce message, on pourrait faire en sorte qu'il ne s'affiche
plus (en "noppant" un saut conditionnel par exemple...) Essayons ce
raisonement dans WinDasm...:
Lancer
Windasm.
Desassembler
le fichier StartClean. (cf cours de crack 1)
Faites
Refs => String Data
References....

Double
cliquez sur cette phrase : vous êtes amené a l'endroit
precis ou on y fait référence !
Cependant, de la même manière qu'il y avait
plusieurs fois le mot "name" dans le 1er cours, verifiez que "Incorrect
Code" n'est pas repeté plusieurs
fois dans le programme...(double cliquez
plusieurs fois dessus)
Par chance, il n'y a qu'une
seule occurance a cette phrase !
NB:
S'il y avait eu plusieurs occurance, il aurait fallu s'occuper de chacunes de
ces occurances, ou alors determiner celle qui nous interresse (cf 1ere partie
du cours).

Ce "C" signifie tout
simplement "Conditional".
Ca veut dire que c'est un saut conditionnel qui nous a envoyé a cette
partie du code. Réfléchissons un minimum : si on veut ne pas venir ici, il suffit
de nopper ce vilain saut !
On va donc aller a l'adresse indiquée par
le "Referenced by....",
a savoir 004027A3...Faites :
Goto =>
Goto Code Location... et rentrer l'adresse en question...

Donc,
dans l'éditeur hexadecimal, vous aller cherchez 741C...cependant, il
va falloir mettre plus d'instruction que "741C" parce qu'il peut y
avoir plusieurs fois "741C" dans le code Hexadecimal du programme
:)
Donc, on va chercher "741C" en rajoutant un peu devant et un
peu derrière : 83C40485C0741CC7054C7240
NB:
Si vous comprenez pas d'où sortent les chiffres avant et après, faites le rapprochemment
avec le listing.
Une fois la recherche
effectuée, vous remplacez le 741C
par 9090...
Etes-vous sûr
que ca marche vraiment ? Bien sur, le programme ne vous dit plus "Incorrect
Code", mais êtes vous pour autant enregistrer ? Un seul moyen de le savoir
: fermer le prog' et relancer le...
Sniff!...ben non, ca n'a pas marcher :(...enfin,
pas tout a fait...
Reprenons les choses pas-a-pas
:
On vous demande de rentrer un nom et un code...
Lorsque vous cliquez
sur "OK", le programme verifie le code :
Si il est bon, c'est cool
et vous êtes enregistré,
s'il n'est pas bon, on vous previent par un petit
message que le code est mauvais...
Donc,s'il y a le message "Incorrect
Code", ca veut dire que le programme a deja determiné que le code était
faux... Inutile donc d'essayer de changer le message qu'on nous affiche, c'est
bien avant qu'il faut agir :) Compris ??