Partage
  • Partager sur Facebook
  • Partager sur Twitter

Modification d'instruction en assembleur X86 64

modification du paramètre de PSHUFD

    29 septembre 2018 à 18:20:45

    Bonjour,

      J'aimerais savoir s'il est possible de réaliser la chose suivante, j'essaye depuis un moment mais sans succès.

    Dans mon code x86 64 bits j'ai une instruction PSHUFD xmm0, xmm0, 0, et j'aimerais modifier la valeur 0

    en modifiant directement cette valeur dans le segment de code:

    mov  al, 160

    mov rcx, my_label

    mov [rcx + 2], al

    my_label:

      pshufd xmm0, xmm0, 0  <- c'est cette valeur que je veux modifier

    mais malheureusement cela ne fonctionne pas car l'instruction mov [rcx+2],al provoque une erreur de segmentation.

    Quelqu'un aurait il une idée ?

    Cordialement,

    JM

    -
    Edité par Jean-MichelRicher 29 septembre 2018 à 18:21:35

    • Partager sur Facebook
    • Partager sur Twitter
      29 septembre 2018 à 20:12:02

      Bonsoir.

      Habituellement la section .text qui contient le code d'un programme est en lecture seule et donc n'est pas modifiable (sinon c'est la porte ouverte à de nombreux virus).

      Mais il y a peut être une possibilité en modifiant les options de cette section pour la passer en read/write mais j'ignore comment.

      Bon courage !!!

      La nuit portant conseil, je pense que la meilleure solution c'est de créer une nouvelle section en lecture/écriture et d'y mettre la procèdure avec les instructions que vous voulez modifier. Puis d'appeler cette procèdure par un call depuis la section text qui contient le reste du code !!

      -
      Edité par PaulDurelin 30 septembre 2018 à 14:58:22

      • Partager sur Facebook
      • Partager sur Twitter

      Modification d'instruction en assembleur X86 64

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown