Ejemplo n.º 1
0
 def get_possible_flag_values_after(self, flag):
     flag = self.function.arch.get_flag_index(flag)
     value = core.BNGetMediumLevelILPossibleFlagValuesAfterInstruction(
         self.function.handle, flag, self.instr_index)
     result = function.PossibleValueSet(self.function.arch, value)
     core.BNFreePossibleValueSet(value)
     return result
Ejemplo n.º 2
0
 def possible_values(self):
     """Possible values of expression using path-sensitive static data flow analysis (read-only)"""
     value = core.BNGetMediumLevelILPossibleExprValues(
         self.function.handle, self.expr_index)
     result = function.PossibleValueSet(self.function.arch, value)
     core.BNFreePossibleValueSet(value)
     return result
Ejemplo n.º 3
0
 def get_possible_reg_values_after(self, reg):
     reg = self.function.arch.get_reg_index(reg)
     value = core.BNGetMediumLevelILPossibleRegisterValuesAfterInstruction(
         self.function.handle, reg, self.instr_index)
     result = function.PossibleValueSet(self.function.arch, value)
     core.BNFreePossibleValueSet(value)
     return result
Ejemplo n.º 4
0
	def get_ssa_var_possible_values(self, ssa_var):
		var_data = core.BNVariable()
		var_data.type = ssa_var.var.source_type
		var_data.index = ssa_var.var.index
		var_data.storage = ssa_var.var.storage
		value = core.BNGetMediumLevelILPossibleSSAVarValues(self.function.handle, var_data, ssa_var.version, self.instr_index)
		result = function.PossibleValueSet(self.function.arch, value)
		core.BNFreePossibleValueSet(value)
		return result
Ejemplo n.º 5
0
 def get_possible_stack_contents_after(self, offset, size):
     value = core.BNGetMediumLevelILPossibleStackContentsAfterInstruction(
         self.function.handle, offset, size, self.instr_index)
     result = function.PossibleValueSet(self.function.arch, value)
     core.BNFreePossibleValueSet(value)
     return result