diff options
Diffstat (limited to 'python/mediumlevelil.py')
| -rw-r--r-- | python/mediumlevelil.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/python/mediumlevelil.py b/python/mediumlevelil.py index 68da31f3..acfc7478 100644 --- a/python/mediumlevelil.py +++ b/python/mediumlevelil.py @@ -470,6 +470,14 @@ class MediumLevelILInstruction(object): return self.low_level_il @property + def llils(self): + exprs = self.function.get_low_level_il_expr_indexes(self.expr_index) + result = [] + for expr in exprs: + result.append(lowlevelil.LowLevelILInstruction(self._function.low_level_il.ssa_form, expr)) + return result + + @property def high_level_il(self): """High level IL form of this expression""" expr = self._function.get_high_level_il_expr_index(self._expr_index) @@ -1162,6 +1170,15 @@ class MediumLevelILFunction(object): return None return result + def get_low_level_il_expr_indexes(self, expr): + count = ctypes.c_ulonglong() + exprs = core.BNGetLowLevelILExprIndexes(self.handle, expr, count) + result = [] + for i in range(0, count.value): + result.append(exprs[i]) + core.BNFreeILInstructionList(exprs) + return result + def get_high_level_il_instruction_index(self, instr): high_il = self.high_level_il if high_il is None: |
