binaryninja.architecture.ArchitectureHook¶
-
class
binaryninja.architecture.ArchitectureHook(base_arch)[source]¶ -
Methods
__init__(base_arch)always_branch(data, addr)always_branchreads the instruction(s) indataat virtual addressaddrand returns a string of bytesassemble(code[, addr])assembleconverts the string of assembly instructionscodeloaded at virtual addressaddrto theconvert_to_nop(data, addr)convert_to_nopreads the instruction(s) indataat virtual addressaddrand returns a string of nopget_associated_arch_by_address(addr)get_default_flag_condition_low_level_il(...)param LowLevelILFlagCondition cond: get_default_flag_write_low_level_il(op, ...)param LowLevelILOperation op: get_flag_by_name(flag)get_flag_by_nameget flag name for flag index.get_flag_condition_low_level_il(cond, ...)param LowLevelILFlagCondition cond: Flag condition to be computed get_flag_index(flag)get_flag_name(flag)get_flag_namegets a flag name from a flag number.get_flag_role(flag[, sem_class])get_flag_rolegets the role of a given flag.get_flag_write_low_level_il(op, size, ...)param LowLevelILOperation op: get_flag_write_type_by_name(write_type)get_flag_write_type_by_namegets the flag write type name for the flage write type.get_flag_write_type_name(write_type)get_flag_write_type_namegets the flag write type name for the given flag.get_flags_required_for_flag_condition(cond)get_instruction_info(data, addr)get_instruction_inforeturns an InstructionInfo object for the instruction at the given virtual addressget_instruction_low_level_il(data, addr, il)get_instruction_low_level_ilappends LowLevelILExpr objects toilfor the instruction at the givenget_instruction_low_level_il_instruction(bv, ...)get_instruction_text(data, addr)get_instruction_textreturns a list of InstructionTextToken objects for the instruction at the given virtualget_intrinsic_index(intrinsic)get_intrinsic_name(intrinsic)get_intrinsic_namegets an intrinsic name from an intrinsic number.get_low_level_il_from_bytes(data, addr)get_low_level_il_from_bytesconverts the instruction in bytes toilat the given virtual addressget_modified_regs_on_write(reg)get_modified_regs_on_writereturns a list of register names that are modified whenregis written.get_reg_index(reg)get_reg_name(reg)get_reg_namegets a register name from a register number.get_reg_stack_for_reg(reg)get_reg_stack_index(reg_stack)get_reg_stack_name(reg_stack)get_reg_stack_namegets a register stack name from a register stack number.get_semantic_flag_class_by_name(sem_class)get_semantic_flag_class_by_namegets the semantic flag class index by name.get_semantic_flag_class_index(sem_class)get_semantic_flag_class_name(class_index)get_semantic_flag_class_namegets the name of a semantic flag class from the index.get_semantic_flag_group_by_name(sem_group)get_semantic_flag_group_by_namegets the semantic flag group index by name.get_semantic_flag_group_index(sem_group)get_semantic_flag_group_low_level_il(...)param str sem_group: get_semantic_flag_group_name(group_index)get_semantic_flag_group_namegets the name of a semantic flag group from the index.get_view_type_constant(type_name, const_name)get_view_type_constantretrieves the view type constant for the given type_name and const_name.invert_branch(data, addr)invert_branchreads the instruction(s) indataat virtual addressaddrand returns a string of bytesis_always_branch_patch_available(data, addr)is_always_branch_patch_availabledetermines if the instructiondataataddrcan be made tois_invert_branch_patch_available(data, addr)is_always_branch_patch_availabledetermines if the instructiondataataddrcan be inverted.is_never_branch_patch_available(data, addr)is_never_branch_patch_availabledetermines if the instructiondataataddrcan be made to never branch.is_skip_and_return_value_patch_available(...)is_skip_and_return_value_patch_availabledetermines if the instructiondataataddris a call-likeis_skip_and_return_zero_patch_available(...)is_skip_and_return_zero_patch_availabledetermines if the instructiondataataddris a call-likeis_view_type_constant_defined(type_name, ...)param str type_name: the BinaryView type name of the constant to query perform_always_branch(data, addr)Deprecated method provided for compatibility. perform_assemble(code, addr)Deprecated method provided for compatibility. perform_convert_to_nop(data, addr)Deprecated method provided for compatibility. perform_get_associated_arch_by_address(addr)Deprecated method provided for compatibility. perform_get_flag_condition_low_level_il(...)Deprecated method provided for compatibility. perform_get_flag_role(flag, sem_class)Deprecated method provided for compatibility. perform_get_flag_write_low_level_il(op, ...)Deprecated method provided for compatibility. perform_get_flags_required_for_flag_condition(...)Deprecated method provided for compatibility. perform_get_instruction_info(data, addr)Deprecated method provided for compatibility. perform_get_instruction_low_level_il(data, ...)Deprecated method provided for compatibility. perform_get_instruction_text(data, addr)Deprecated method provided for compatibility. perform_get_semantic_flag_group_low_level_il(...)Deprecated method provided for compatibility. perform_invert_branch(data, addr)Deprecated method provided for compatibility. perform_is_always_branch_patch_available(...)Deprecated method provided for compatibility. perform_is_invert_branch_patch_available(...)Deprecated method provided for compatibility. perform_is_never_branch_patch_available(...)Deprecated method provided for compatibility. perform_is_skip_and_return_value_patch_available(...)Deprecated method provided for compatibility. perform_is_skip_and_return_zero_patch_available(...)Deprecated method provided for compatibility. perform_skip_and_return_value(data, addr, value)Deprecated method provided for compatibility. register()register_calling_convention(cc)register_calling_conventionregisters a new calling convention for the Architecture.set_view_type_constant(type_name, ...)set_view_type_constantcreates a new binaryview type constant.skip_and_return_value(data, addr, value)skip_and_return_valuereads the instruction(s) indataat virtual addressaddrand returns a string ofAttributes
address_sizecalling_conventionsDict of CallingConvention objects (read-only) default_int_sizeendiannessflag_conditions_for_semantic_flag_groupflag_rolesflag_write_typesflagsflags_required_for_flag_conditionflags_required_for_semantic_flag_groupflags_written_by_flag_write_typefull_width_regsList of full width register strings (read-only) global_regsinstr_alignmentintrinsicslink_reglistmax_instr_lengthnamenext_addressopcode_display_lengthreg_stacksregssemantic_class_for_flag_write_typesemantic_flag_classessemantic_flag_groupsstack_pointerstandalone_platformArchitecture standalone platform (read-only)