From df48a9ee65c4fa3b60f3bfebb36aa03d8dd40f2d Mon Sep 17 00:00:00 2001 From: Brian Potchik Date: Sat, 21 Nov 2020 17:55:26 -0500 Subject: Add improved instruction mapping APIs. --- highlevelil.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'highlevelil.cpp') diff --git a/highlevelil.cpp b/highlevelil.cpp index 264af7c3..6c304d0e 100644 --- a/highlevelil.cpp +++ b/highlevelil.cpp @@ -384,6 +384,20 @@ size_t HighLevelILFunction::GetMediumLevelILExprIndex(size_t expr) const } +set HighLevelILFunction::GetMediumLevelILExprIndexes(size_t expr) const +{ + size_t count; + size_t* exprs = BNGetMediumLevelILExprIndexesFromHighLevelIL(m_object, expr, &count); + + set result; + for (size_t i = 0; i < count; i++) + result.insert(exprs[i]); + + BNFreeILInstructionList(exprs); + return result; +} + + void HighLevelILFunction::UpdateInstructionOperand(size_t i, size_t operandIndex, ExprId value) { BNUpdateHighLevelILOperand(m_object, i, operandIndex, value); -- cgit v1.3.1