static void get_address_size(ref INSTRUCTION instr, byte[] prefixes, DISMODE mode)
{
if (mode == DISMODE.DISASSEMBLE_MODE_64)
{
if (prefixes[PREF_ADDRSIZE_INDEX] != 0xFF)
instr.addrsize = ADDR_SIZE_32;
else
instr.addrsize = ADDR_SIZE_64;
}
else
{
if (prefixes[PREF_ADDRSIZE_INDEX] != 0xFF)
mode ^= (DISMODE.DISASSEMBLE_MODE_16 | DISMODE.DISASSEMBLE_MODE_32);
if (mode == DISMODE.DISASSEMBLE_MODE_16)
instr.addrsize = ADDR_SIZE_16;
else
instr.addrsize = ADDR_SIZE_32;
}
}