PatSW
Messages postés24Date d'inscriptionsamedi 28 décembre 2002StatutMembreDernière intervention 1 février 2005
-
23 juil. 2004 à 21:02
cs_patatalo
Messages postés1466Date d'inscriptionvendredi 2 janvier 2004StatutModérateurDernière intervention14 février 2014
-
28 juil. 2004 à 16:07
Bonjour,
je suis présentement en train de modifier un fichier execute que jai décompiler avec W32Dasm et toute mes modifications jusqu'a présent sont parfaite mais je bloc sur une seul et derniere chose.
J'ai changer une "procedure" de place mais je ne sais pas comment réécrire les JMP CALL ect;
je doit mettre cette procedure a loffset :00409428
comment faire pour modifier le "jmp 0045B005" par exemple qui se retrouvera a :004547CF
en gros je voudrai savoir commen recalculer la valeur hexadecimal;
je sais que E9 veu dire "jmp" mais je ne sais pas comment est calculer ladresse :004547BC E944680000
E9 = jmp
4680000 = 0045B005 -> comment sa fait ici?
ToutEnMasm
Messages postés587Date d'inscriptionjeudi 28 novembre 2002StatutMembreDernière intervention13 décembre 20223 23 juil. 2004 à 23:15
Salut,
D'habitude on trouve une adresse relative,c'est a dire :
on part de l'adresse du jmp 004547BC , on prend l'adresse d'arrivée 00409428 ,on fait une soustraction ou une addition en prétant attention au fait que le déplacement peut être négatif ou positif.
Pour y voir plus clair ,prendre l'exemple non modifié:
004547BC E944680000 jmp 0045B005
soustraire 4547BC de 0045B005,si l'opération es bonne on retrouve les chiffres suivants de l'instruction 4468 sinon faire l'inverse.
Pour des informations plus pointues sur les instructions voir le livre deux d'intel
PatSW
Messages postés24Date d'inscriptionsamedi 28 décembre 2002StatutMembreDernière intervention 1 février 2005 26 juil. 2004 à 18:32
J'avais déja trouver une solution:
dans win32dasm, si on fait debug et ensuite patch code,
le code asm est retranscrit avec le code hexadecimal.
Cela ma permis de continuer mes modifs mais sans comprendre vraiment pourquoi, mais grace a ta reponse je comprend, ce qui me permet dans savoir plus sur l'asm, code que j'aimerais bien maîtriser!