Welcome to the BeaEngine Sweet Home - x86 x86-64 disassembler library - (IA-32 & Intel64)

ARGTYPE Structure

Cette structure permet d'obtenir des informations sur l'argument analysé.

struct ARGTYPE {
   char ArgMnemonic[16];
   long ArgType;
   long ArgSize;
   long AccessMode;
   MEMORYTYPE Memory;
   long SegmentReg;
} ;

Membres

ArgMnemonic

[out] Ce champ renvoie, quand cela est possible, l'argument au format ASCII.

ArgType

[out] Ce champ indique le type d'argument. (MyDisasm.Argumentxx.ArgType & 0xFFFF0000) permet de savoir s'il s'agit d'un registre, d'un accès mémoire ou d'une constante. LOWORD(MyDisasm.Argumentxx.ArgType) est utilisé dans le cas où nous sommes en présence d'un REGISTER_TYPE. Dans ce cas, nous obtenons la liste des registres utilisés. Pour obtenir une liste exhaustive , voir les constantes utilisées par BeaEngine ICI

ArgSize

[out] Ce champ renvoie la taille de l'argument utilisé.

AccessMode

[out] Ce champ permet de savoir si l'argument utilisé est en mode lecture seule (READ=0x1) ou en mode écriture (WRITE=0x2).

Memory

[out] Structure de type MEMORYTYPE qui est renseignée seulement si MyDisasm.Argument1.ArgType == MEMORY_TYPE.

SegmentReg

[out] Ce champ précise, dans le cas d'un adressage mémoire, le registre de segment utilisé en utilisant l'une des constantes suivantes :

#define ESReg 1
#define DSReg 2
#define FSReg 3
#define GSReg 4
#define CSReg 5
#define SSReg 6

Valid XHTML 1.0 Strict

Valid CSS!