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 :

Differencier les call rel16 et rel32 avec ptrace


Sujet :

x86 32-bits / 64-bits Assembleur

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Août 2011
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2011
    Messages : 13
    Points : 8
    Points
    8
    Par défaut Differencier les call rel16 et rel32 avec ptrace
    Bonjour,

    Je me sers de ptrace pour recenser les instructions CALL.
    Pour ce faire, je dumpe les registres et récupère l'instruction suivante grâce au registre RIP (64 bits). Du coup, dans le cas d'une instruction CALL (rel12 ou rel32), je récupère l'opcode 0xe8 suivi de l'offset de la prochaine instruction.

    J'aimerais donc savoir comment je peux différencier les call rel16 des call rel32.

    Merci.

  2. #2
    Membre confirmé Avatar de bifur
    passe le balais et l'aspirateur
    Inscrit en
    Mars 2008
    Messages
    314
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : passe le balais et l'aspirateur

    Informations forums :
    Inscription : Mars 2008
    Messages : 314
    Points : 550
    Points
    550
    Par défaut
    avant (sur les processeur non 64bit d'intel j'entend) ça dépendait du mode du segment de code executé (16 ou 32 bit)

    si on souhaitait faire un call16 sur un segment executé en 32 bit il fallait mettre un préfixe a l'instruction (0x66 ou 0x67 je ne sais plus de mémoire, a vérifier) et pareille si on voulait faire un call32 sur un segment executé en mode 16bit


    grosso modo toute les instruction fonctionnait comme ça (pas seulement les call) il y avait deux préfixe, un pour changer la taille des données utilisé et un autre pour changer la taille des adressages utilisé

Discussions similaires

  1. alterner les couleurs dans un tableau avec xsl
    Par Eithelgul dans le forum XSL/XSLT/XPATH
    Réponses: 14
    Dernier message: 03/05/2015, 23h29
  2. [MySQL] Differencier les champs avec et sans accent.
    Par Rakken dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 08/12/2006, 18h18
  3. Differencier les input
    Par topolino dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 07/05/2005, 20h35
  4. Afficher tous les champs d'une table avec dbexpress et MySQL
    Par LHT dans le forum Bases de données
    Réponses: 2
    Dernier message: 25/06/2004, 17h11
  5. Changer les couleurs de la palette avec du RGB
    Par le mage tophinus dans le forum x86 16-bits
    Réponses: 11
    Dernier message: 13/01/2003, 08h55

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