IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

x86 32-bits / 64-bits Assembleur Discussion :

Convertir opcode en ASM


Sujet :

x86 32-bits / 64-bits Assembleur

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2019
    Messages : 15
    Points : 8
    Points
    8
    Par défaut Convertir opcode en ASM
    Bonjour,

    Je souhaite convertir du code hexadecimal en assembleur x86_x64 sur linux (un peu comme objdump).
    Cependant je n'arrive pas a comprendre comment fonctionne les opcodes.
    Par exemple : objdump traduit "48 89 e5" en "mov %rsp,%rbp".

    J'crois voir certaine chose car l'opcode "55" correspond a un "push %rbp" je suppose donc que le "5" de "e5" sert a dire qu'on travail sur le registre %rbp ... en revanche le 48 reste un vrai mystere pour moi ... le 89 m'a l'air d'indiqué qu'on fait un mov mais j'suis pas bien bien sur ...

    Quelqu'un aurait-il une idée pour convertir de l'hexa en assembleur ? une API ? ou de la doc bien faite pour comprendre le fonctionnement des opcodes et de leurs conversions ?

    J'ai lu le code source d'objdump mais j'vois pas bien comment il fait malgré tout ... en plus les 3000 lignes par fichier n'aide pas bcp :3

    Si ça interesse qq un c'ets pour coder en C un gdb lite on va dire.

    Merci de votre aide et bonne journée à vous.

  2. #2
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Bonjour,

    Toute la doc nécessaire est disponible sur le site de Intel (mais il faut chercher un peu)
    Si les cons volaient, il ferait nuit à midi.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2019
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par droggo Voir le message
    Bonjour,

    Toute la doc nécessaire est disponible sur le site de Intel (mais il faut chercher un peu)
    J'ai deja regardé mais difficile a lire comme doc mdrr j'esperais qu'il y avait mieux ... mais bon visiblement il va falloir que j'me la retape en entier

    Merci et si vous avez une autre solution efficace je prend toujours !!! Surtout si c'est une api deja existante (mais ca m'etonnerai un peu qu'il en existe une ...)

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2019
    Messages : 15
    Points : 8
    Points
    8
    Par défaut
    pour ceux que ca interesse : j'ai trouvé une API de la gnu : libopcode ... ainsi qu'un wrappeur dessus appeler libopdis ... j'sais pas encore ce que ca vaut mais j'vous tiendrai au courrant.

  5. #5
    Expert éminent Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 035
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 035
    Points : 8 400
    Points
    8 400
    Par défaut
    salut,

    un lien peut être intéressant : http://ref.x86asm.net/coder64.html

    sinon effectivement il faut se palucher les manuels Intel (de mémoire je crois le 1er et le 3e surtout), et c'est assez lourdingue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 21/01/2015, 14h22
  2. convertir de l'asm gnu en windows 16 ou 32 bits
    Par Linquisiteur dans le forum x86 32-bits / 64-bits
    Réponses: 2
    Dernier message: 10/05/2013, 18h11
  3. Réponses: 5
    Dernier message: 06/02/2013, 08h41
  4. Convertir Code C++ en asm
    Par Sharpy dans le forum C++
    Réponses: 7
    Dernier message: 02/11/2007, 23h37
  5. Convertir du code ASM 68020 en C++
    Par )3lade dans le forum Linux
    Réponses: 5
    Dernier message: 13/01/2006, 10h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo