GNIDA.mediana.get_address_size C# (CSharp) Method

get_address_size() static private method

static private get_address_size ( INSTRUCTION &instr, byte prefixes, DISMODE mode ) : void
instr INSTRUCTION
prefixes byte
mode DISMODE
return void
        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;
            }
        }