MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / __init__

Method __init__

python/architecture.py:225–506  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

223 next_address = 0
224
225 def __init__(self):
226 binaryninja._init_plugins()
227
228 if self.__class__.opcode_display_length > self.__class__.max_instr_length:
229 self.__class__.opcode_display_length = self.__class__.max_instr_length
230
231 self._cb = core.BNCustomArchitecture()
232 self._cb.context = 0
233 self._cb.init = self._cb.init.__class__(self._init)
234 self._cb.getEndianness = self._cb.getEndianness.__class__(self._get_endianness)
235 self._cb.getAddressSize = self._cb.getAddressSize.__class__(self._get_address_size)
236 self._cb.getDefaultIntegerSize = self._cb.getDefaultIntegerSize.__class__(self._get_default_integer_size)
237 self._cb.getInstructionAlignment = self._cb.getInstructionAlignment.__class__(self._get_instruction_alignment)
238 self._cb.getMaxInstructionLength = self._cb.getMaxInstructionLength.__class__(self._get_max_instruction_length)
239 self._cb.getOpcodeDisplayLength = self._cb.getOpcodeDisplayLength.__class__(self._get_opcode_display_length)
240 self._cb.getAssociatedArchitectureByAddress = self._cb.getAssociatedArchitectureByAddress.__class__(
241 self._get_associated_arch_by_address
242 )
243 self._cb.getInstructionInfo = self._cb.getInstructionInfo.__class__(self._get_instruction_info)
244 self._cb.getInstructionText = self._cb.getInstructionText.__class__(self._get_instruction_text)
245 self._cb.freeInstructionText = self._cb.freeInstructionText.__class__(self._free_instruction_text)
246 self._cb.getInstructionLowLevelIL = self._cb.getInstructionLowLevelIL.__class__(
247 self._get_instruction_low_level_il
248 )
249 self._cb.getRegisterName = self._cb.getRegisterName.__class__(self._get_register_name)
250 self._cb.getFlagName = self._cb.getFlagName.__class__(self._get_flag_name)
251 self._cb.getFlagWriteTypeName = self._cb.getFlagWriteTypeName.__class__(self._get_flag_write_type_name)
252 self._cb.getSemanticFlagClassName = self._cb.getSemanticFlagClassName.__class__(
253 self._get_semantic_flag_class_name
254 )
255 self._cb.getSemanticFlagGroupName = self._cb.getSemanticFlagGroupName.__class__(
256 self._get_semantic_flag_group_name
257 )
258 self._cb.getFullWidthRegisters = self._cb.getFullWidthRegisters.__class__(self._get_full_width_registers)
259 self._cb.getAllRegisters = self._cb.getAllRegisters.__class__(self._get_all_registers)
260 self._cb.getAllFlags = self._cb.getAllRegisters.__class__(self._get_all_flags)
261 self._cb.getAllFlagWriteTypes = self._cb.getAllRegisters.__class__(self._get_all_flag_write_types)
262 self._cb.getAllSemanticFlagClasses = self._cb.getAllSemanticFlagClasses.__class__(
263 self._get_all_semantic_flag_classes
264 )
265 self._cb.getAllSemanticFlagGroups = self._cb.getAllSemanticFlagGroups.__class__(
266 self._get_all_semantic_flag_groups
267 )
268 self._cb.getFlagRole = self._cb.getFlagRole.__class__(self._get_flag_role)
269 self._cb.getFlagsRequiredForFlagCondition = self._cb.getFlagsRequiredForFlagCondition.__class__(
270 self._get_flags_required_for_flag_condition
271 )
272 self._cb.getFlagsRequiredForSemanticFlagGroup = self._cb.getFlagsRequiredForSemanticFlagGroup.__class__(
273 self._get_flags_required_for_semantic_flag_group
274 )
275 self._cb.getFlagConditionsForSemanticFlagGroup = self._cb.getFlagConditionsForSemanticFlagGroup.__class__(
276 self._get_flag_conditions_for_semantic_flag_group
277 )
278 self._cb.freeFlagConditionsForSemanticFlagGroup = self._cb.freeFlagConditionsForSemanticFlagGroup.__class__(
279 self._free_flag_conditions_for_semantic_flag_group
280 )
281 self._cb.getFlagsWrittenByFlagWriteType = self._cb.getFlagsWrittenByFlagWriteType.__class__(
282 self._get_flags_written_by_flag_write_type

Callers 2

__init__Method · 0.45
__init__Method · 0.45

Calls 7

IntrinsicInputClass · 0.85
IntrinsicInfoClass · 0.85
RegisterInfoClass · 0.70
RegisterStackInfoClass · 0.70
itemsMethod · 0.45
appendMethod · 0.45
keysMethod · 0.45

Tested by

no test coverage detected