binaryninja.architecture.CoreArchitecture¶
-
class
CoreArchitecture(handle)[source]¶ -
Methods
__init__(handle)x.__init__(…) initializes x; see help(type(x)) for signature always_branch(data, addr)always_branchreads the instruction(s) indataat virtual addressaddrand returns a string of bytes of the same length which always branches.assemble(code[, addr])assembleconverts the string of assembly instructionscodeloaded at virtual addressaddrto the byte representation of those instructions.convert_to_nop(data, addr)convert_to_nopreads the instruction(s) indataat virtual addressaddrand returns a string of nop instructions of the same length as data.get_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 flag 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 addressaddrwith datadata.get_instruction_low_level_il(data, addr, il)get_instruction_low_level_ilappends LowLevelILExpr objects toilfor the instruction at the given virtual addressaddrwith datadata.get_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 virtual addressaddrwith datadata.get_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 bytes of the same length which inverts the branch of provided instruction.is_always_branch_patch_available(data, addr)is_always_branch_patch_availabledetermines if the instructiondataataddrcan be made to always branch.is_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-like instruction that can be made into an instruction returns a value.is_skip_and_return_zero_patch_available(…)is_skip_and_return_zero_patch_availabledetermines if the instructiondataataddris a call-like instruction that can be made into an instruction returns zero.is_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_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 of bytes of the same length which doesn’t call and instead return a value.Attributes
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)