From da77a3011450e694a506c8d16ef084a28bc58214 Mon Sep 17 00:00:00 2001 From: Rusty Wagner Date: Wed, 15 Mar 2017 19:51:15 -0400 Subject: APIs for performing range analysis --- mediumlevelil.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'mediumlevelil.cpp') diff --git a/mediumlevelil.cpp b/mediumlevelil.cpp index dcd1fe8e..51dd067d 100644 --- a/mediumlevelil.cpp +++ b/mediumlevelil.cpp @@ -262,6 +262,12 @@ size_t MediumLevelILFunction::GetIndexForInstruction(size_t i) const } +size_t MediumLevelILFunction::GetInstructionForExpr(size_t expr) const +{ + return BNGetMediumLevelILInstructionForExpr(m_object, expr); +} + + size_t MediumLevelILFunction::GetInstructionCount() const { return BNGetMediumLevelILInstructionCount(m_object); @@ -444,6 +450,20 @@ RegisterValue MediumLevelILFunction::GetExprValue(size_t expr) } +RegisterValue MediumLevelILFunction::GetPossibleSSAVarValues(const BNILVariable& var, size_t idx, size_t instr) +{ + BNRegisterValue value = BNGetMediumLevelILPossibleSSAVarValues(m_object, &var, idx, instr); + return RegisterValue::FromAPIObject(value); +} + + +RegisterValue MediumLevelILFunction::GetPossibleExprValues(size_t expr) +{ + BNRegisterValue value = BNGetMediumLevelILPossibleExprValues(m_object, expr); + return RegisterValue::FromAPIObject(value); +} + + size_t MediumLevelILFunction::GetSSAVarIndexAtInstruction(const BNILVariable& var, size_t instr) const { return BNGetMediumLevelILSSAVarIndexAtILInstruction(m_object, &var, instr); -- cgit v1.3.1