diff --git a/src/Decoder.c b/src/Decoder.c index 699a052a..7f5cb1b9 100644 --- a/src/Decoder.c +++ b/src/Decoder.c @@ -3976,30 +3976,9 @@ static ZyanStatus ZydisNodeHandlerOpcode(ZydisDecoderState* state, break; } - ZyanBool illegal_rex2 = (instruction->opcode == 0x0F); - - if (instruction->opcode != 0xD5) - { - const ZyanU8 group = instruction->opcode & 0xF0; - if (instruction->opcode_map == ZYDIS_OPCODE_MAP_DEFAULT) - { - if ((group == 0x40) || (group == 0x70) || (group == 0xE0) || - ((group == 0xA0) && instruction->opcode != 0xA1)) - { - illegal_rex2 = ZYAN_TRUE; - } - } - else - { - if ((group == 0x30) || (group == 0x80)) - { - illegal_rex2 = ZYAN_TRUE; - } - } - } - - if (illegal_rex2) + if (instruction->opcode == 0x0F) { + // 2-byte/3-byte opcodes are not allowed with REX2 (`REX2.m0` is used instead). return ZYDIS_STATUS_ILLEGAL_REX2; } diff --git a/src/Generated/DecoderTables.inc b/src/Generated/DecoderTables.inc index b7b48d32..5f9b131c 100644 --- a/src/Generated/DecoderTables.inc +++ b/src/Generated/DecoderTables.inc @@ -21,8 +21,8 @@ const ZydisDecoderTreeNode FILTERS_REX2[][3] = const ZydisDecoderTreeNode FILTERS_OPCODE[][256] = { - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3), ZYDIS_DEFINITION(0x6, 0x26), ZYDIS_DEFINITION(0x7, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7), ZYDIS_DEFINITION(0x6, 0x3FB), ZYDIS_DEFINITION(0x7, 0x3FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x141), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x142), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x143), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x144), ZYDIS_DEFINITION(0x6, 0x10), ZYDIS_DEFINITION(0x7, 0x11), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x145), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x146), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x147), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x148), ZYDIS_DEFINITION(0x6, 0x654), ZYDIS_DEFINITION(0x7, 0x655), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x60), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x149), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14C), ZYDIS_DEFINITION(0x6, 0x5C), ZYDIS_DEFINITION(0x7, 0x5D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x61), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x150), ZYDIS_DEFINITION(0x6, 0x6FD), ZYDIS_DEFINITION(0x7, 0x6FE), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x62), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x151), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x152), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x153), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x154), ZYDIS_DEFINITION(0x6, 0x783), ZYDIS_DEFINITION(0x7, 0x784), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x63), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x155), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x156), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x157), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x158), ZYDIS_DEFINITION(0x6, 0xEF), ZYDIS_DEFINITION(0x7, 0xF0), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x64), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x65), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x66), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x67), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x68), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x69), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x70), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x71), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x72), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x73), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x74), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x85), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x86), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EMVEX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x7, 0x5D5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AB), ZYDIS_DEFINITION(0x6, 0x5D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x370), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x371), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x372), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x373), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x374), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x375), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x376), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x377), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x378), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x379), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x37A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_XOP, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AB), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38B), ZYDIS_DEFINITION(0x0, 0x211), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38D), ZYDIS_DEFINITION(0x0, 0x63D), ZYDIS_DEFINITION(0x0, 0x2C8), ZYDIS_DEFINITION(0x2, 0x31A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x10), ZYDIS_DEFINITION(0x2, 0x31C), ZYDIS_DEFINITION(0x2, 0x31D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B0), ZYDIS_DEFINITION(0x6, 0x71F), ZYDIS_DEFINITION(0x7, 0x720), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B6), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x507), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x508), ZYDIS_DEFINITION(0x4, 0x611), ZYDIS_DEFINITION(0x0, 0x612), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VEX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VEX, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x828), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x829), ZYDIS_DEFINITION(0x12, 0x17C), ZYDIS_DEFINITION(0x0, 0x2CF), ZYDIS_DEFINITION(0x4, 0x613), ZYDIS_DEFINITION(0x0, 0x614), ZYDIS_DEFINITION(0x0, 0x25B), ZYDIS_DEFINITION(0x3, 0x259), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3DE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x20), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E1), ZYDIS_DEFINITION(0x0, 0x77A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x830), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x831), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x832), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x833), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x834), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x835), ZYDIS_DEFINITION(0x9, 0x2ED), ZYDIS_DEFINITION(0x9, 0x2EC), ZYDIS_DEFINITION(0x9, 0x2EB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E2), ZYDIS_DEFINITION(0x3, 0x23C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x25), ZYDIS_DEFINITION(0x3, 0x409), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x26), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E6), ZYDIS_DEFINITION(0x0, 0x23F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x27), ZYDIS_DEFINITION(0x0, 0x40C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x28), ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x25A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x228), ZYDIS_DEFINITION(0x0, 0xC6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x836), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x837), ZYDIS_DEFINITION(0x0, 0xBA), ZYDIS_DEFINITION(0x0, 0x6E1), ZYDIS_DEFINITION(0x0, 0xC0), ZYDIS_DEFINITION(0x0, 0x6E4), ZYDIS_DEFINITION(0x0, 0xBB), ZYDIS_DEFINITION(0x0, 0x6E2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x838), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x839) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x22), ZYDIS_DEFINITION(0x0, 0xC2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x23), ZYDIS_DEFINITION(0x0, 0x25D), ZYDIS_DEFINITION(0x0, 0x75C), ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x737), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC), ZYDIS_DEFINITION(0x0, 0x1AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_MPX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_MPX, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x30), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x31), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x32), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x33), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E), ZYDIS_DEFINITION(0x0, 0x75F), ZYDIS_DEFINITION(0x0, 0x60F), ZYDIS_DEFINITION(0x0, 0x604), ZYDIS_DEFINITION(0x0, 0x609), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x35), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x3), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x4), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x46), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x47), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x48), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x49), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x50), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x51), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x52), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x53), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x54), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEE), ZYDIS_DEFINITION(0x0, 0x5D9), ZYDIS_DEFINITION(0x0, 0x52A), ZYDIS_DEFINITION(0x0, 0x118), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF3), ZYDIS_DEFINITION(0x0, 0x5DA), ZYDIS_DEFINITION(0x0, 0x52B), ZYDIS_DEFINITION(0x0, 0x637), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x100), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x101), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x102), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x103), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x104), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x105), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x106), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x107), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x108), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x109), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x110), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x111), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x112), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x113), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x114), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x115), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x116), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x117), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x118), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x119), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x120), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x121), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x122), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x123), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x124), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x125), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x126), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x127), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x128), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x129), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x130), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x131), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x132), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x133), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x134), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x135), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x136), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x137), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x138), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x139), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_UD0_COMPAT, 0x0) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3), ZYDIS_DEFINITION(0x6, 0x26), ZYDIS_DEFINITION(0x7, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7), ZYDIS_DEFINITION(0x6, 0x3FB), ZYDIS_DEFINITION(0x7, 0x3FC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x141), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x142), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x143), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x144), ZYDIS_DEFINITION(0x6, 0x10), ZYDIS_DEFINITION(0x7, 0x11), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x145), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x146), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x147), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x148), ZYDIS_DEFINITION(0x6, 0x654), ZYDIS_DEFINITION(0x7, 0x655), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x60), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x149), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14C), ZYDIS_DEFINITION(0x6, 0x5C), ZYDIS_DEFINITION(0x7, 0x5D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x61), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x150), ZYDIS_DEFINITION(0x6, 0x6FD), ZYDIS_DEFINITION(0x7, 0x6FE), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x62), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x151), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x152), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x153), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x154), ZYDIS_DEFINITION(0x6, 0x783), ZYDIS_DEFINITION(0x7, 0x784), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x63), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x155), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x156), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x157), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x158), ZYDIS_DEFINITION(0x6, 0xEF), ZYDIS_DEFINITION(0x7, 0xF0), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x64), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x65), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x66), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x67), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x68), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x69), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x6F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x70), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x71), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x72), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x73), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x74), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x75), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x76), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x77), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x78), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x79), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x80), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x81), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x82), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x83), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x84), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x85), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x86), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EMVEX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x7, 0x5D5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AB), ZYDIS_DEFINITION(0x6, 0x5D6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1A9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x36F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x370), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x371), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x372), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x373), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x374), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x375), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x376), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x377), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x378), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x379), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x37A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4BB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_XOP, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AB), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_DEFINITION(0x0, 0x772), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38B), ZYDIS_DEFINITION(0x0, 0x211), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38D), ZYDIS_DEFINITION(0x0, 0x63D), ZYDIS_DEFINITION(0x0, 0x2C8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x7F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x82), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x83), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x9C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x9D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1B6), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x6, 0x31E), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_DEFINITION(0x8, 0x31F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x507), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x508), ZYDIS_DEFINITION(0x4, 0x611), ZYDIS_DEFINITION(0x0, 0x612), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VEX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VEX, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x828), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x829), ZYDIS_DEFINITION(0x12, 0x17C), ZYDIS_DEFINITION(0x0, 0x2CF), ZYDIS_DEFINITION(0x4, 0x613), ZYDIS_DEFINITION(0x0, 0x614), ZYDIS_DEFINITION(0x0, 0x25B), ZYDIS_DEFINITION(0x3, 0x259), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3DE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x20), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3DF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E1), ZYDIS_DEFINITION(0x0, 0x77A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x830), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x831), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x832), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x833), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x834), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x835), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xCD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x26), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x3E6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xDC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x28), ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x25A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x228), ZYDIS_DEFINITION(0x0, 0xC6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x836), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x837), ZYDIS_DEFINITION(0x0, 0xBA), ZYDIS_DEFINITION(0x0, 0x6E1), ZYDIS_DEFINITION(0x0, 0xC0), ZYDIS_DEFINITION(0x0, 0x6E4), ZYDIS_DEFINITION(0x0, 0xBB), ZYDIS_DEFINITION(0x0, 0x6E2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x838), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x839) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x22), ZYDIS_DEFINITION(0x0, 0xC2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x23), ZYDIS_DEFINITION(0x0, 0x25D), ZYDIS_DEFINITION(0x0, 0x75C), ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x737), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC), ZYDIS_DEFINITION(0x0, 0x1AE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x26), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x28), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x29), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x2E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_MPX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_MPX, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x33), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x35), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x36), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x30), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x31), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x32), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x33), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x37), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x38), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x39), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x34), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x35), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x3), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPCODE, 0x4), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xAF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xB9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xBF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xC9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xCF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x12C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x46), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x47), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x48), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x49), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x4F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x50), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x51), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x52), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x53), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x54), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xDF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xED), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEE), ZYDIS_DEFINITION(0x0, 0x5D9), ZYDIS_DEFINITION(0x0, 0x52A), ZYDIS_DEFINITION(0x0, 0x118), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xEF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF3), ZYDIS_DEFINITION(0x0, 0x5DA), ZYDIS_DEFINITION(0x0, 0x52B), ZYDIS_DEFINITION(0x0, 0x637), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xFF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x100), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x101), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x102), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x103), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x104), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x105), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x106), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x107), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x108), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x109), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x110), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_DEFINITION(0x0, 0x9E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x111), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x112), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x113), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x114), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x115), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x116), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x117), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x118), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x119), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x120), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x121), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x122), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x123), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x124), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x125), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x126), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x127), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x128), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x129), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x130), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x131), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x132), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x133), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x134), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x135), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x136), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x137), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x138), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x139), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_UD0_COMPAT, 0x0) }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xE), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x10), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x11), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x12), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x13), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x14), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x15), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x16), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x17), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x18), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x19), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1A), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1E), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x1F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x20), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x21), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x22), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x23), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x24), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x3F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x40), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x41), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x42), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x43), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x44), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x45), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x46), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x47), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x48), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x49), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x4F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x50), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x51), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x52), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x53), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x54), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x56), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x57), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x58), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x59), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x60), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x61), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x62), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x63), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x64), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x65), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x66), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x67), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x68), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x69), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x6F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x70), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x71), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x72), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x73), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x74), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x75), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x76), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x77), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x78), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x79), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x7F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x80), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x81), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x82), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x83), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x84), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x85), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x86), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x87), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x88), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x89), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x8F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x90), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x91), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x92), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x93), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x94), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x95), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x96), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x97), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x98), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x99), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9D), ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0x9F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA0), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODRM_MOD_COMPACT, 0xA1), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, @@ -136,8 +136,8 @@ const ZydisDecoderTreeNode FILTERS_MODE_COMPACT[][2] = { ZYDIS_DEFINITION(0x11, 0x326), ZYDIS_DEFINITION(0x11, 0x327) }, { ZYDIS_DEFINITION(0x11, 0x328), ZYDIS_DEFINITION(0x11, 0x329) }, { ZYDIS_DEFINITION(0x11, 0x32A), ZYDIS_DEFINITION(0x11, 0x32B) }, - { ZYDIS_DEFINITION(0x0, 0x712), ZYDIS_DEFINITION(0x0, 0x713) }, - { ZYDIS_DEFINITION(0x0, 0x714), ZYDIS_DEFINITION(0x0, 0x715) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x5) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x7) }, { ZYDIS_DEFINITION(0x1, 0x25E), ZYDIS_DEFINITION(0x1, 0x25F) }, { ZYDIS_DEFINITION(0x1, 0x265), ZYDIS_DEFINITION(0x1, 0x266) }, { ZYDIS_DEFINITION(0x1, 0x263), ZYDIS_DEFINITION(0x1, 0x264) }, @@ -154,22 +154,22 @@ const ZydisDecoderTreeNode FILTERS_MODE_COMPACT[][2] = { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x26), ZYDIS_DEFINITION(0x1, 0x344) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x27), ZYDIS_DEFINITION(0x1, 0x341) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x28), ZYDIS_DEFINITION(0x1, 0x345) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x0), ZYDIS_DEFINITION(0xA, 0x2B7) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x1), ZYDIS_DEFINITION(0xA, 0x2A3) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x2), ZYDIS_DEFINITION(0xA, 0x26E) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x3), ZYDIS_DEFINITION(0xA, 0x28F) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x4), ZYDIS_DEFINITION(0xA, 0x2C7) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x5), ZYDIS_DEFINITION(0xA, 0x2B2) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x6), ZYDIS_DEFINITION(0xA, 0x273) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x7), ZYDIS_DEFINITION(0xA, 0x294) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x8), ZYDIS_DEFINITION(0xA, 0x2C2) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x9), ZYDIS_DEFINITION(0xA, 0x2AD) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xA), ZYDIS_DEFINITION(0xA, 0x2BC) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xB), ZYDIS_DEFINITION(0xA, 0x2A8) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xC), ZYDIS_DEFINITION(0xA, 0x27B) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xD), ZYDIS_DEFINITION(0xA, 0x299) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xE), ZYDIS_DEFINITION(0xA, 0x280) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xF), ZYDIS_DEFINITION(0xA, 0x29E) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xE) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x10) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x11), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x12) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x13), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x14) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x15), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x16) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x17), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x18) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x19), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x1A) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x1B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x1C) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x1D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x1E) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x1F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x20) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x21), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x22) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x23), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x24) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x25), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x26) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x27), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x28) }, { ZYDIS_DEFINITION(0x1, 0x602), ZYDIS_INVALID }, { ZYDIS_DEFINITION(0x1, 0x603), ZYDIS_INVALID }, { ZYDIS_DEFINITION(0x1, 0x75D), ZYDIS_INVALID }, @@ -185,38 +185,38 @@ const ZydisDecoderTreeNode FILTERS_MODE_COMPACT[][2] = { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x159) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x0) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x7) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x242) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x242) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x242) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x242) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x242) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x242) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x242) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x242) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15A) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15A) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15A) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15A) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15A) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15A) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15A) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x15A) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x2F) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x30) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x31) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x32) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x33) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x34) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x35) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x36) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x37) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x38) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x39) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x3A) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x3B) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x3C) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x3D) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x3E) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x3F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x40) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x41), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x42) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x43), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x44) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x45), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x46) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x47), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x48) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x49), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x4A) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x4B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x4C) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x4D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x4E) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x4F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x50) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x51), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x52) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x53), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x54) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x55), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x56) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x57), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x58) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x59), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x5A) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x5B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x5C) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x5D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x5E) }, { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x2) }, { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x3) }, { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x4) }, @@ -959,22 +959,22 @@ const ZydisDecoderTreeNode FILTERS_MODE_COMPACT[][2] = { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_VECTOR_LENGTH, 0x6E5), ZYDIS_INVALID }, { ZYDIS_DEFINITION(0x1, 0x397), ZYDIS_DEFINITION(0x1, 0x70) }, { ZYDIS_DEFINITION(0x1, 0x398), ZYDIS_DEFINITION(0x1, 0x71) }, - { ZYDIS_DEFINITION(0x9, 0x2B3), ZYDIS_DEFINITION(0x9, 0x2B4) }, - { ZYDIS_DEFINITION(0x9, 0x29F), ZYDIS_DEFINITION(0x9, 0x2A0) }, - { ZYDIS_DEFINITION(0x9, 0x26A), ZYDIS_DEFINITION(0x9, 0x26B) }, - { ZYDIS_DEFINITION(0x9, 0x28B), ZYDIS_DEFINITION(0x9, 0x28C) }, - { ZYDIS_DEFINITION(0x9, 0x2C3), ZYDIS_DEFINITION(0x9, 0x2C4) }, - { ZYDIS_DEFINITION(0x9, 0x2AE), ZYDIS_DEFINITION(0x9, 0x2AF) }, - { ZYDIS_DEFINITION(0x9, 0x26F), ZYDIS_DEFINITION(0x9, 0x270) }, - { ZYDIS_DEFINITION(0x9, 0x290), ZYDIS_DEFINITION(0x9, 0x291) }, - { ZYDIS_DEFINITION(0x9, 0x2BE), ZYDIS_DEFINITION(0x9, 0x2BF) }, - { ZYDIS_DEFINITION(0x9, 0x2A9), ZYDIS_DEFINITION(0x9, 0x2AA) }, - { ZYDIS_DEFINITION(0x9, 0x2B8), ZYDIS_DEFINITION(0x9, 0x2B9) }, - { ZYDIS_DEFINITION(0x9, 0x2A4), ZYDIS_DEFINITION(0x9, 0x2A5) }, - { ZYDIS_DEFINITION(0x9, 0x277), ZYDIS_DEFINITION(0x9, 0x278) }, - { ZYDIS_DEFINITION(0x9, 0x295), ZYDIS_DEFINITION(0x9, 0x296) }, - { ZYDIS_DEFINITION(0x9, 0x27C), ZYDIS_DEFINITION(0x9, 0x27D) }, - { ZYDIS_DEFINITION(0x9, 0x29A), ZYDIS_DEFINITION(0x9, 0x29B) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x5F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x60) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x61), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x62) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x63), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x64) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x65), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x66) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x67), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x68) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x69), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x6A) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x6B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x6C) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x6D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x6E) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x6F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x70) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x71), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x72) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x73), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x74) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x75), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x76) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x77), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x78) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x79), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x7A) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x7B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x7C) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x7D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x7E) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0xE, 0x2C) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0xE, 0x401) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0xE, 0x16) }, @@ -1079,10 +1079,10 @@ const ZydisDecoderTreeNode FILTERS_MODE_COMPACT[][2] = { ZYDIS_INVALID, ZYDIS_DEFINITION(0x3, 0x1) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x63E) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x39), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_ADDRESS_SIZE, 0x3A) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x10), ZYDIS_DEFINITION(0xA, 0xB2) }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x11), ZYDIS_DEFINITION(0xA, 0x283) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x13, 0x284) }, - { ZYDIS_DEFINITION(0x9, 0x285), ZYDIS_DEFINITION(0x9, 0x286) } + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD2) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD4) }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD5) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD6), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD7) } }; const ZydisDecoderTreeNode FILTERS_PREFIX_GROUP1[][2] = @@ -3244,7 +3244,7 @@ const ZydisDecoderTreeNode FILTERS_MODRM_REG[][8] = { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x72B), ZYDIS_DEFINITION(0x1, 0x499) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x56), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x57), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x58), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x59), ZYDIS_DEFINITION(0x1, 0x5B2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x29), ZYDIS_DEFINITION(0x1, 0x739), ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x73A), ZYDIS_INVALID }, - { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B), ZYDIS_DEFINITION(0x1, 0x2CC), ZYDIS_DEFINITION(0x1, 0x6E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E), ZYDIS_DEFINITION(0x1, 0xBD) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2B), ZYDIS_DEFINITION(0x1, 0x2CC), ZYDIS_DEFINITION(0x1, 0x6E5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x29), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x2A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x2B), ZYDIS_DEFINITION(0x1, 0xBD) }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xC4), ZYDIS_DEFINITION(0x1, 0xBE) }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x5B3), ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0xC1), ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0xC, 0xA1), ZYDIS_DEFINITION(0xC, 0xAD), ZYDIS_DEFINITION(0xC, 0xA9), ZYDIS_DEFINITION(0xC, 0xA3) }, @@ -3252,7 +3252,7 @@ const ZydisDecoderTreeNode FILTERS_MODRM_REG[][8] = { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x60B), ZYDIS_DEFINITION(0x1, 0x60C) }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5B) }, { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x5C), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, - { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32), ZYDIS_DEFINITION(0x1, 0x74D), ZYDIS_DEFINITION(0x1, 0x74E) }, + { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x2C), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x2D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x2E), ZYDIS_DEFINITION(0x1, 0x74D), ZYDIS_DEFINITION(0x1, 0x74E) }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x748), ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x75B), ZYDIS_INVALID }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x81), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, @@ -3504,7 +3504,7 @@ const ZydisDecoderTreeNode FILTERS_MANDATORY_PREFIX[][5] = { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x731), ZYDIS_DEFINITION(0x1, 0x72F), ZYDIS_INVALID, ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x116), ZYDIS_DEFINITION(0x1, 0x114), ZYDIS_INVALID, ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x117), ZYDIS_DEFINITION(0x1, 0x115), ZYDIS_INVALID, ZYDIS_INVALID }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x21D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x8), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x545), ZYDIS_DEFINITION(0x1, 0x547), ZYDIS_INVALID, ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x546), ZYDIS_DEFINITION(0x1, 0x548), ZYDIS_INVALID, ZYDIS_INVALID }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4AE), ZYDIS_DEFINITION(0x1, 0x4B0), ZYDIS_INVALID, ZYDIS_INVALID }, @@ -3893,16 +3893,16 @@ const ZydisDecoderTreeNode FILTERS_MANDATORY_PREFIX[][5] = { ZYDIS_DEFINITION(0x0, 0x40F), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x410), ZYDIS_DEFINITION(0x0, 0x411) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x8), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0xA) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_B, 0x0), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x461), ZYDIS_INVALID }, - { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, - { ZYDIS_DEFINITION(0x0, 0x37B), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x37C), ZYDIS_DEFINITION(0x0, 0x37D) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x80), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x38E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x84), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x85), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x86) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x11), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x12), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x13) }, - { ZYDIS_DEFINITION(0x0, 0xFD), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0xFE), ZYDIS_DEFINITION(0x0, 0xFF) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x90), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x91), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x92) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x14), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x15), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x16) }, - { ZYDIS_DEFINITION(0x0, 0x6E6), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x6E7), ZYDIS_DEFINITION(0x0, 0x6E8) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x9E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x9F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA0) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x17), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x18), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x19) }, - { ZYDIS_DEFINITION(0x0, 0x2DF), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x2E0), ZYDIS_DEFINITION(0x0, 0x2E1) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xAA), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xAB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xAC) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1A), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1C) }, - { ZYDIS_DEFINITION(0x0, 0x65E), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_DEFINITION(0x0, 0x65F), ZYDIS_DEFINITION(0x0, 0x660) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB6), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB8) }, { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1D), ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_OPERAND_SIZE, 0x1F) } }; @@ -3925,30 +3925,30 @@ const ZydisDecoderTreeNode FILTERS_OPERAND_SIZE[][3] = { ZYDIS_DEFINITION(0x0, 0x5DD), ZYDIS_DEFINITION(0x0, 0x5DE), ZYDIS_INVALID }, { ZYDIS_DEFINITION(0x0, 0x530), ZYDIS_DEFINITION(0x0, 0x532), ZYDIS_DEFINITION(0x0, 0x532) }, { ZYDIS_DEFINITION(0x0, 0x530), ZYDIS_DEFINITION(0x0, 0x531), ZYDIS_INVALID }, - { ZYDIS_DEFINITION(0x0, 0x390), ZYDIS_DEFINITION(0x0, 0x37E), ZYDIS_DEFINITION(0x0, 0x389) }, - { ZYDIS_DEFINITION(0x0, 0x391), ZYDIS_DEFINITION(0x0, 0x37F), ZYDIS_DEFINITION(0x0, 0x38A) }, - { ZYDIS_DEFINITION(0x0, 0x392), ZYDIS_DEFINITION(0x0, 0x380), ZYDIS_DEFINITION(0x0, 0x38B) }, - { ZYDIS_DEFINITION(0x0, 0x10A), ZYDIS_DEFINITION(0x0, 0x100), ZYDIS_DEFINITION(0x0, 0x105) }, - { ZYDIS_DEFINITION(0x0, 0x10B), ZYDIS_DEFINITION(0x0, 0x101), ZYDIS_DEFINITION(0x0, 0x106) }, - { ZYDIS_DEFINITION(0x0, 0x10C), ZYDIS_DEFINITION(0x0, 0x102), ZYDIS_DEFINITION(0x0, 0x107) }, - { ZYDIS_DEFINITION(0x0, 0x6EF), ZYDIS_DEFINITION(0x0, 0x6E9), ZYDIS_DEFINITION(0x0, 0x6EC) }, - { ZYDIS_DEFINITION(0x0, 0x6F0), ZYDIS_DEFINITION(0x0, 0x6EA), ZYDIS_DEFINITION(0x0, 0x6ED) }, - { ZYDIS_DEFINITION(0x0, 0x6F1), ZYDIS_DEFINITION(0x0, 0x6EB), ZYDIS_DEFINITION(0x0, 0x6EE) }, - { ZYDIS_DEFINITION(0x0, 0x2E8), ZYDIS_DEFINITION(0x0, 0x2E2), ZYDIS_DEFINITION(0x0, 0x2E5) }, - { ZYDIS_DEFINITION(0x0, 0x2E9), ZYDIS_DEFINITION(0x0, 0x2E3), ZYDIS_DEFINITION(0x0, 0x2E6) }, - { ZYDIS_DEFINITION(0x0, 0x2EA), ZYDIS_DEFINITION(0x0, 0x2E4), ZYDIS_DEFINITION(0x0, 0x2E7) }, - { ZYDIS_DEFINITION(0x0, 0x667), ZYDIS_DEFINITION(0x0, 0x661), ZYDIS_DEFINITION(0x0, 0x664) }, - { ZYDIS_DEFINITION(0x0, 0x668), ZYDIS_DEFINITION(0x0, 0x662), ZYDIS_DEFINITION(0x0, 0x665) }, - { ZYDIS_DEFINITION(0x0, 0x669), ZYDIS_DEFINITION(0x0, 0x663), ZYDIS_DEFINITION(0x0, 0x666) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x87), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x88), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x89) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x8A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x8B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x8C) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x8D), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x8E), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x8F) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x93), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x94), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x95) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x96), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x97), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x98) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x99), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x9A), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x9B) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA2), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA3) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA6) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA8), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xA9) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xAD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xAE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xAF) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB1), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB2) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB3), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB5) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xB9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xBA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xBB) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xBC), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xBD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xBE) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xBF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC0), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC1) }, { ZYDIS_DEFINITION(0x0, 0x267), ZYDIS_DEFINITION(0x0, 0x268), ZYDIS_DEFINITION(0x0, 0x269) }, { ZYDIS_DEFINITION(0x1, 0x1D4), ZYDIS_DEFINITION(0x1, 0x1D5), ZYDIS_DEFINITION(0x1, 0x1D5) }, { ZYDIS_DEFINITION(0x1, 0x1E7), ZYDIS_DEFINITION(0x1, 0x1E8), ZYDIS_DEFINITION(0x1, 0x1E8) }, { ZYDIS_DEFINITION(0x1, 0x1F0), ZYDIS_DEFINITION(0x1, 0x1F1), ZYDIS_DEFINITION(0x1, 0x1F1) }, { ZYDIS_DEFINITION(0x1, 0x1E4), ZYDIS_DEFINITION(0x1, 0x1E5), ZYDIS_DEFINITION(0x1, 0x1E5) }, - { ZYDIS_DEFINITION(0x3, 0x23D), ZYDIS_DEFINITION(0x3, 0x23E), ZYDIS_DEFINITION(0x3, 0x23E) }, - { ZYDIS_DEFINITION(0x3, 0x40A), ZYDIS_DEFINITION(0x3, 0x40B), ZYDIS_DEFINITION(0x3, 0x40B) }, - { ZYDIS_DEFINITION(0x0, 0x240), ZYDIS_DEFINITION(0x0, 0x241), ZYDIS_DEFINITION(0x0, 0x241) }, - { ZYDIS_DEFINITION(0x0, 0x40D), ZYDIS_DEFINITION(0x0, 0x40E), ZYDIS_DEFINITION(0x0, 0x40E) } + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xCA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xCB), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xCC) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xCE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xCF), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD0) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xD9), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xDA), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xDB) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xDD), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xDE), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xDF) } }; const ZydisDecoderTreeNode FILTERS_ADDRESS_SIZE[][3] = @@ -3993,7 +3993,7 @@ const ZydisDecoderTreeNode FILTERS_ADDRESS_SIZE[][3] = { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25F), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x25F) }, { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x260), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x260) }, { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x261), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_EVEX_B, 0x261) }, - { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54E) }, + { ZYDIS_INVALID, ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0x81) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B0), ZYDIS_DEFINITION(0x1, 0x4B0) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B2), ZYDIS_DEFINITION(0x1, 0x4B2) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x4B1), ZYDIS_DEFINITION(0x1, 0x4B1) }, @@ -4010,8 +4010,8 @@ const ZydisDecoderTreeNode FILTERS_ADDRESS_SIZE[][3] = { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2CF), ZYDIS_DEFINITION(0x1, 0x2CF) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2D2), ZYDIS_DEFINITION(0x1, 0x2D2) }, { ZYDIS_INVALID, ZYDIS_DEFINITION(0x1, 0x2D0), ZYDIS_DEFINITION(0x1, 0x2D0) }, - { ZYDIS_INVALID, ZYDIS_DEFINITION(0x9, 0x275), ZYDIS_DEFINITION(0x9, 0x2BD) }, - { ZYDIS_DEFINITION(0x9, 0x274), ZYDIS_DEFINITION(0x9, 0x276), ZYDIS_INVALID } + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC5), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC6) }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC7), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX2_PREFIX, 0xC8), ZYDIS_INVALID } }; const ZydisDecoderTreeNode FILTERS_VECTOR_LENGTH[][3] = @@ -12548,21 +12548,228 @@ const ZydisDecoderTreeNode FILTERS_EVEX_SCC[][16] = const ZydisDecoderTreeNode FILTERS_REX2_PREFIX[][2] = { - { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x75) }, - { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x76) }, - { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x77) }, - { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x78) }, - { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x79) }, - { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7A) }, - { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7B) }, - { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7C) }, - { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7D) }, - { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7E) }, - { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x7F) }, - { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x80) }, - { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x81) }, - { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x82) }, - { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x83) }, - { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_COMPACT, 0x84) }, - { ZYDIS_DEFINITION(0x2, 0x31B), ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MANDATORY_PREFIX, 0x1AC) } + { ZYDIS_DEFINITION(0x0, 0x75F), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x60F), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x604), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x609), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x712), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x713), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x714), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x715), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x21D), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x0), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x2B7), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x1), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x2A3), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x2), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x26E), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x3), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x28F), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x4), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x2C7), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x5), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x2B2), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x6), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x273), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x7), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x294), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x8), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x2C2), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x9), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x2AD), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xA), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x2BC), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xB), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x2A8), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xC), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x27B), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xD), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x299), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xE), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x280), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0xF), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x29E), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2C), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2D), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x2E), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x30), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x31), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x32), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x242), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x15A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x15A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x15A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x15A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x15A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x15A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x15A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x15A), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x33) }, + { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x34) }, + { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x35) }, + { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x36) }, + { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x37) }, + { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x38) }, + { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x39) }, + { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3A) }, + { ZYDIS_DEFINITION(0x0, 0x5D4), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3B) }, + { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3C) }, + { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3D) }, + { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3E) }, + { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x3F) }, + { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x40) }, + { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x41) }, + { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x42) }, + { ZYDIS_DEFINITION(0x0, 0x527), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2B3), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2B4), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x29F), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2A0), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x26A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x26B), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x28B), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x28C), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2C3), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2C4), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2AE), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2AF), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x26F), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x270), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x290), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x291), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2BE), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2BF), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2A9), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2AA), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2B8), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2B9), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2A4), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2A5), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x277), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x278), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x295), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x296), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x27C), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x27D), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x29A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x29B), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x2, 0x31A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x2, 0x31B), ZYDIS_INVALID }, + { ZYDIS_INVALID, ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_REX_W, 0x54E) }, + { ZYDIS_DEFINITION(0x2, 0x31C), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x2, 0x31D), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x37B), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x37C), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x37D), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x390), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x37E), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x389), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x391), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x37F), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x38A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x392), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x380), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x38B), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0xFD), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0xFE), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0xFF), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x10A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x100), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x105), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x10B), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x101), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x106), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x10C), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x102), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x107), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x6, 0x71F), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x7, 0x720), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6E6), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6E7), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6E8), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6EF), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6E9), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6EC), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6F0), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6EA), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6ED), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6F1), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6EB), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x6EE), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2DF), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E0), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E1), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E8), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E2), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E5), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E9), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E3), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E6), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2EA), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E4), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x2E7), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x65E), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x65F), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x660), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x667), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x661), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x664), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x668), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x662), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x665), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x669), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x663), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x666), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2ED), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2EC), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2EB), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x275), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x2BD), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x274), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x276), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x3, 0x23C), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x3, 0x23D), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x3, 0x23E), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x3, 0x23E), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x3, 0x409), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x3, 0x40A), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x3, 0x40B), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x3, 0x40B), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x10), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0xB2), ZYDIS_INVALID }, + { ZYDIS_FILTER(ZYDIS_NODETYPE_FILTER_MODE_AMD, 0x11), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0xA, 0x283), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x13, 0x284), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x285), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x9, 0x286), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x23F), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x240), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x241), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x241), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x40C), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x40D), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x40E), ZYDIS_INVALID }, + { ZYDIS_DEFINITION(0x0, 0x40E), ZYDIS_INVALID } }; diff --git a/src/Segment.c b/src/Segment.c index c247201b..79235954 100644 --- a/src/Segment.c +++ b/src/Segment.c @@ -87,13 +87,12 @@ ZyanStatus ZydisGetInstructionSegments(const ZydisDecodedInstruction* instructio segment_offset = instruction->raw.mvex.offset; segment_size = 4; break; + case ZYDIS_INSTRUCTION_ENCODING_REX2: + segment_type = ZYDIS_INSTR_SEGMENT_REX2; + segment_offset = instruction->raw.rex2.offset; + segment_size = 2; + break; default: - if (instruction->attributes & ZYDIS_ATTRIB_HAS_REX2) - { - segment_type = ZYDIS_INSTR_SEGMENT_REX2; - segment_offset = instruction->raw.rex2.offset; - segment_size = 2; - } break; } if (segment_type)