fix underflow

This commit is contained in:
Duncan Ogilvie 2019-09-07 17:42:52 +02:00
parent 9f0eae62c1
commit 7c4e7d7daf
1 changed files with 11 additions and 8 deletions

View File

@ -4534,14 +4534,17 @@ static ZydisStatus ZydisDecodeInstruction(ZydisDecoderContext* context,
default:
break;
}
ZYDIS_CHECK(ZydisDecodeOperands(context, instruction, definition));
const ZydisRegister reg =
instruction->operands[instruction->operandCount - 1].reg.value;
if ((reg == ZYDIS_REGISTER_FLAGS ) || (reg == ZYDIS_REGISTER_EFLAGS) ||
(reg == ZYDIS_REGISTER_RFLAGS))
{
ZydisSetAccessedFlags(instruction, definition);
}
ZYDIS_CHECK(ZydisDecodeOperands(context, instruction, definition));
if (instruction->operandCount)
{
const ZydisRegister reg =
instruction->operands[instruction->operandCount - 1].reg.value;
if ((reg == ZYDIS_REGISTER_FLAGS) || (reg == ZYDIS_REGISTER_EFLAGS) ||
(reg == ZYDIS_REGISTER_RFLAGS))
{
ZydisSetAccessedFlags(instruction, definition);
}
}
}
return ZYDIS_STATUS_SUCCESS;