binaryninjacore.h File Reference

Classes

struct  BNLowLevelILInstruction
 
struct  BNLowLevelILLabel
 
struct  BNRegisterInfo
 
struct  BNRegisterStackInfo
 
struct  BNLookupTableEntry
 
struct  BNRegisterValue
 
struct  BNRegisterValueWithConfidence
 
struct  BNValueRange
 
struct  BNPossibleValueSet
 
struct  BNRegisterOrConstant
 
struct  BNDataVariable
 
struct  BNDataVariableAndName
 
struct  BNMediumLevelILInstruction
 
struct  BNMediumLevelILLabel
 
struct  BNVariable
 
struct  BNHighLevelILInstruction
 
struct  BNLogListener
 
struct  BNNavigationHandler
 
struct  BNNameList
 
struct  BNNameSpace
 
struct  BNQualifiedName
 
struct  BNBinaryDataNotification
 
struct  BNFileAccessor
 
struct  BNCustomBinaryView
 
struct  BNCustomBinaryViewType
 
struct  BNTransformParameterInfo
 
struct  BNTransformParameter
 
struct  BNCustomTransform
 
struct  BNInstructionInfo
 
struct  BNRelocationInfo
 
struct  BNInstructionTextToken
 
struct  BNInstructionTextLine
 
struct  BNTypeDefinitionLine
 
struct  BNFlagConditionForSemanticClass
 
struct  BNNameAndType
 
struct  BNTypeWithConfidence
 
struct  BNCustomArchitecture
 
struct  BNBasicBlockEdge
 
struct  BNPoint
 
struct  BNEdgeStyle
 
struct  BNFlowGraphEdge
 
struct  BNHighlightColor
 
struct  BNDisassemblyTextLineTypeInfo
 
struct  BNDisassemblyTextLine
 
struct  BNLinearDisassemblyLine
 
struct  BNReferenceSource
 
struct  BNTypeFieldReference
 
struct  BNILReferenceSource
 
struct  BNTypeFieldReferenceSizeInfo
 
struct  BNTypeFieldReferenceTypeInfo
 
struct  BNVariableReferenceSource
 
struct  BNTypeField
 
struct  BNTypeReferenceSource
 
struct  BNTagReference
 
struct  BNUndoAction
 
struct  BNUndoEntry
 
struct  BNMergeResult
 
struct  BNCallingConventionWithConfidence
 
struct  BNBoolWithConfidence
 
struct  BNOffsetWithConfidence
 
struct  BNParameterVariablesWithConfidence
 
struct  BNRegisterSetWithConfidence
 
struct  BNFunctionParameter
 
struct  BNQualifiedNameAndType
 
struct  BNQualifiedNameTypeAndId
 
struct  BNStructureMember
 
struct  BNEnumerationMember
 
struct  BNFunctionRecognizer
 
struct  BNCustomRelocationHandler
 
struct  BNParsedType
 
struct  BNTypeParserResult
 
struct  BNTypeParserError
 
struct  BNQualifiedNameList
 
struct  BNUpdateChannel
 
struct  BNUpdateVersion
 
struct  BNStringReference
 
struct  BNPluginCommand
 
struct  BNCustomCallingConvention
 
struct  BNVariableNameAndType
 
struct  BNStackVariableReference
 
struct  BNIndirectBranchInfo
 
struct  BNArchitectureAndAddress
 
struct  BNUserVariableValue
 
struct  BNActiveAnalysisInfo
 
struct  BNAnalysisInfo
 
struct  BNAnalysisProgress
 
struct  BNAnalysisParameters
 
struct  BNDownloadInstanceResponse
 
struct  BNDownloadInstanceInputOutputCallbacks
 
struct  BNDownloadInstanceOutputCallbacks
 
struct  BNDownloadInstanceCallbacks
 
struct  BNDownloadProviderCallbacks
 
struct  BNWebsocketClientOutputCallbacks
 
struct  BNWebsocketClientCallbacks
 
struct  BNWebsocketProviderCallbacks
 
struct  BNScriptingInstanceCallbacks
 
struct  BNScriptingProviderCallbacks
 
struct  BNScriptingOutputListener
 
struct  BNMainThreadCallbacks
 
struct  BNTypeParserCallbacks
 
struct  BNTypePrinterCallbacks
 
struct  BNConstantReference
 
struct  BNFormInputField
 
struct  BNInteractionHandlerCallbacks
 
struct  BNObjectDestructionCallbacks
 
struct  BNTypeContext
 
struct  BNCustomDataRenderer
 
struct  BNAddressRange
 
struct  BNSystemCallInfo
 
struct  BNILBranchInstructionAndDependence
 
struct  BNPerformanceInfo
 
struct  BNMemoryUsageInfo
 
struct  BNRegisterStackAdjustment
 
struct  BNCustomFlowGraph
 
struct  BNRange
 
struct  BNLinearViewObjectIdentifier
 
struct  BNBinaryViewEvent
 
struct  BNDebugFunctionInfo
 
struct  BNSecretsProviderCallbacks
 

Macros

#define BN_CURRENT_CORE_ABI_VERSION   21
 
#define BN_MINIMUM_CORE_ABI_VERSION   20
 
#define BINARYNINJACOREAPI
 
#define PATH_SEP   "/"
 
#define BN_MAX_INSTRUCTION_LENGTH   256
 
#define BN_DEFAULT_INSTRUCTION_LENGTH   16
 
#define BN_DEFAULT_OPCODE_DISPLAY   8
 
#define BN_MAX_INSTRUCTION_BRANCHES   3
 
#define BN_MAX_STORED_DATA_LENGTH   0x3fffffff
 
#define BN_NULL_ID   -1
 
#define LLIL_TEMP(n)   (0x80000000 | (uint32_t)(n))
 
#define LLIL_REG_IS_TEMP(n)   (((n)&0x80000000) != 0)
 
#define LLIL_GET_TEMP_REG_INDEX(n)   ((n)&0x7fffffff)
 
#define BN_INVALID_REGISTER   0xffffffff
 
#define BN_AUTOCOERCE_EXTERN_PTR   0xfffffffd
 
#define BN_NOCOERCE_EXTERN_PTR   0xfffffffe
 
#define BN_INVALID_OPERAND   0xffffffff
 
#define BN_INVALID_EXPR   ((size_t)-1)
 
#define BN_MAX_STRING_LENGTH   128
 
#define LLVM_SVCS_CB_NOTE   0
 
#define LLVM_SVCS_CB_WARNING   1
 
#define LLVM_SVCS_CB_ERROR   2
 
#define LLVM_SVCS_DIALECT_UNSPEC   0
 
#define LLVM_SVCS_DIALECT_ATT   1
 
#define LLVM_SVCS_DIALECT_INTEL   2
 
#define LLVM_SVCS_CM_DEFAULT   0
 
#define LLVM_SVCS_CM_SMALL   1
 
#define LLVM_SVCS_CM_KERNEL   2
 
#define LLVM_SVCS_CM_MEDIUM   3
 
#define LLVM_SVCS_CM_LARGE   4
 
#define LLVM_SVCS_RM_STATIC   0
 
#define LLVM_SVCS_RM_PIC   1
 
#define LLVM_SVCS_RM_DYNAMIC_NO_PIC   2
 
#define BN_MAX_VARIABLE_OFFSET   0x7fffffffffLL
 
#define BN_MAX_VARIABLE_INDEX   0xfffff
 
#define BN_FULL_CONFIDENCE   255
 
#define BN_MINIMUM_CONFIDENCE   1
 
#define BN_DEFAULT_CONFIDENCE   96
 
#define BN_HEURISTIC_CONFIDENCE   192
 
#define BN_DEBUGINFO_CONFIDENCE   200
 
#define DEFAULT_INTERNAL_NAMESPACE   "BNINTERNALNAMESPACE"
 
#define DEFAULT_EXTERNAL_NAMESPACE   "BNEXTERNALNAMESPACE"
 
#define BN_DECLARE_CORE_ABI_VERSION
 
#define MAX_RELOCATION_SIZE   8
 

Typedefs

typedef bool(* BNCorePluginInitFunction) (void)
 
typedef void(* BNCorePluginDependencyFunction) (void)
 
typedef uint32_t(* BNCorePluginABIVersionFunction) (void)
 

Enumerations

enum  BNPluginLoadOrder { EarlyPluginLoadOrder , NormalPluginLoadOrder , LatePluginLoadOrder }
 
enum  PluginLoadStatus { NotAttemptedStatus , LoadSucceededStatus , LoadFailedStatus }
 
enum  BNLogLevel {
  DebugLog = 0 , InfoLog = 1 , WarningLog = 2 , ErrorLog = 3 ,
  AlertLog = 4
}
 Console log levels. More...
 
enum  BNEndianness { LittleEndian = 0 , BigEndian = 1 }
 
enum  BNModificationStatus { Original = 0 , Changed = 1 , Inserted = 2 }
 
enum  BNTransformType {
  BinaryCodecTransform = 0 , TextCodecTransform = 1 , UnicodeCodecTransform = 2 , DecodeTransform = 3 ,
  BinaryEncodeTransform = 4 , TextEncodeTransform = 5 , EncryptTransform = 6 , InvertingTransform = 7 ,
  HashTransform = 8
}
 
enum  BNBranchType {
  UnconditionalBranch = 0 , FalseBranch = 1 , TrueBranch = 2 , CallDestination = 3 ,
  FunctionReturn = 4 , SystemCall = 5 , IndirectBranch = 6 , ExceptionBranch = 7 ,
  UnresolvedBranch = 127 , UserDefinedBranch = 128
}
 
enum  BNInstructionTextTokenType {
  TextToken = 0 , InstructionToken = 1 , OperandSeparatorToken = 2 , RegisterToken = 3 ,
  IntegerToken = 4 , PossibleAddressToken = 5 , BeginMemoryOperandToken = 6 , EndMemoryOperandToken = 7 ,
  FloatingPointToken = 8 , AnnotationToken = 9 , CodeRelativeAddressToken = 10 , ArgumentNameToken = 11 ,
  HexDumpByteValueToken = 12 , HexDumpSkippedByteToken = 13 , HexDumpInvalidByteToken = 14 , HexDumpTextToken = 15 ,
  OpcodeToken = 16 , StringToken = 17 , CharacterConstantToken = 18 , KeywordToken = 19 ,
  TypeNameToken = 20 , FieldNameToken = 21 , NameSpaceToken = 22 , NameSpaceSeparatorToken = 23 ,
  TagToken = 24 , StructOffsetToken = 25 , StructOffsetByteValueToken = 26 , StructureHexDumpTextToken = 27 ,
  GotoLabelToken = 28 , CommentToken = 29 , PossibleValueToken = 30 , PossibleValueTypeToken = 31 ,
  ArrayIndexToken = 32 , IndentationToken = 33 , UnknownMemoryToken = 34 , CodeSymbolToken = 64 ,
  DataSymbolToken = 65 , LocalVariableToken = 66 , ImportToken = 67 , AddressDisplayToken = 68 ,
  IndirectImportToken = 69 , ExternalSymbolToken = 70
}
 
enum  BNInstructionTextTokenContext {
  NoTokenContext = 0 , LocalVariableTokenContext = 1 , DataVariableTokenContext = 2 , FunctionReturnTokenContext = 3 ,
  InstructionAddressTokenContext = 4 , ILInstructionIndexTokenContext = 5
}
 
enum  BNLinearDisassemblyLineType {
  BlankLineType , BasicLineType , CodeDisassemblyLineType , DataVariableLineType ,
  HexDumpLineType , FunctionHeaderLineType , FunctionHeaderStartLineType , FunctionHeaderEndLineType ,
  FunctionContinuationLineType , LocalVariableLineType , LocalVariableListEndLineType , FunctionEndLineType ,
  NoteStartLineType , NoteLineType , NoteEndLineType , SectionStartLineType ,
  SectionEndLineType , SectionSeparatorLineType , NonContiguousSeparatorLineType , AnalysisWarningLineType
}
 
enum  BNTokenEscapingType { NoTokenEscapingType = 0 , BackticksTokenEscapingType = 1 }
 
enum  BNAnalysisWarningActionType { NoAnalysisWarningAction = 0 , ForceAnalysisWarningAction = 1 , ShowStackGraphWarningAction = 2 }
 
enum  BNSymbolType {
  FunctionSymbol = 0 , ImportAddressSymbol = 1 , ImportedFunctionSymbol = 2 , DataSymbol = 3 ,
  ImportedDataSymbol = 4 , ExternalSymbol = 5 , LibraryFunctionSymbol = 6
}
 
enum  BNSymbolBinding { NoBinding , LocalBinding , GlobalBinding , WeakBinding }
 
enum  BNActionType { TemporaryAction = 0 , DataModificationAction = 1 , AnalysisAction = 2 , DataModificationAndAnalysisAction = 3 }
 
enum  BNLowLevelILOperation {
  LLIL_NOP , LLIL_SET_REG , LLIL_SET_REG_SPLIT , LLIL_SET_FLAG ,
  LLIL_SET_REG_STACK_REL , LLIL_REG_STACK_PUSH , LLIL_LOAD , LLIL_STORE ,
  LLIL_PUSH , LLIL_POP , LLIL_REG , LLIL_REG_SPLIT ,
  LLIL_REG_STACK_REL , LLIL_REG_STACK_POP , LLIL_REG_STACK_FREE_REG , LLIL_REG_STACK_FREE_REL ,
  LLIL_CONST , LLIL_CONST_PTR , LLIL_EXTERN_PTR , LLIL_FLOAT_CONST ,
  LLIL_FLAG , LLIL_FLAG_BIT , LLIL_ADD , LLIL_ADC ,
  LLIL_SUB , LLIL_SBB , LLIL_AND , LLIL_OR ,
  LLIL_XOR , LLIL_LSL , LLIL_LSR , LLIL_ASR ,
  LLIL_ROL , LLIL_RLC , LLIL_ROR , LLIL_RRC ,
  LLIL_MUL , LLIL_MULU_DP , LLIL_MULS_DP , LLIL_DIVU ,
  LLIL_DIVU_DP , LLIL_DIVS , LLIL_DIVS_DP , LLIL_MODU ,
  LLIL_MODU_DP , LLIL_MODS , LLIL_MODS_DP , LLIL_NEG ,
  LLIL_NOT , LLIL_SX , LLIL_ZX , LLIL_LOW_PART ,
  LLIL_JUMP , LLIL_JUMP_TO , LLIL_CALL , LLIL_CALL_STACK_ADJUST ,
  LLIL_TAILCALL , LLIL_RET , LLIL_NORET , LLIL_IF ,
  LLIL_GOTO , LLIL_FLAG_COND , LLIL_FLAG_GROUP , LLIL_CMP_E ,
  LLIL_CMP_NE , LLIL_CMP_SLT , LLIL_CMP_ULT , LLIL_CMP_SLE ,
  LLIL_CMP_ULE , LLIL_CMP_SGE , LLIL_CMP_UGE , LLIL_CMP_SGT ,
  LLIL_CMP_UGT , LLIL_TEST_BIT , LLIL_BOOL_TO_INT , LLIL_ADD_OVERFLOW ,
  LLIL_SYSCALL , LLIL_BP , LLIL_TRAP , LLIL_INTRINSIC ,
  LLIL_UNDEF , LLIL_UNIMPL , LLIL_UNIMPL_MEM , LLIL_FADD ,
  LLIL_FSUB , LLIL_FMUL , LLIL_FDIV , LLIL_FSQRT ,
  LLIL_FNEG , LLIL_FABS , LLIL_FLOAT_TO_INT , LLIL_INT_TO_FLOAT ,
  LLIL_FLOAT_CONV , LLIL_ROUND_TO_INT , LLIL_FLOOR , LLIL_CEIL ,
  LLIL_FTRUNC , LLIL_FCMP_E , LLIL_FCMP_NE , LLIL_FCMP_LT ,
  LLIL_FCMP_LE , LLIL_FCMP_GE , LLIL_FCMP_GT , LLIL_FCMP_O ,
  LLIL_FCMP_UO , LLIL_SET_REG_SSA , LLIL_SET_REG_SSA_PARTIAL , LLIL_SET_REG_SPLIT_SSA ,
  LLIL_SET_REG_STACK_REL_SSA , LLIL_SET_REG_STACK_ABS_SSA , LLIL_REG_SPLIT_DEST_SSA , LLIL_REG_STACK_DEST_SSA ,
  LLIL_REG_SSA , LLIL_REG_SSA_PARTIAL , LLIL_REG_SPLIT_SSA , LLIL_REG_STACK_REL_SSA ,
  LLIL_REG_STACK_ABS_SSA , LLIL_REG_STACK_FREE_REL_SSA , LLIL_REG_STACK_FREE_ABS_SSA , LLIL_SET_FLAG_SSA ,
  LLIL_FLAG_SSA , LLIL_FLAG_BIT_SSA , LLIL_CALL_SSA , LLIL_SYSCALL_SSA ,
  LLIL_TAILCALL_SSA , LLIL_CALL_PARAM , LLIL_CALL_STACK_SSA , LLIL_CALL_OUTPUT_SSA ,
  LLIL_LOAD_SSA , LLIL_STORE_SSA , LLIL_INTRINSIC_SSA , LLIL_REG_PHI ,
  LLIL_REG_STACK_PHI , LLIL_FLAG_PHI , LLIL_MEM_PHI
}
 
enum  BNLowLevelILFlagCondition {
  LLFC_E , LLFC_NE , LLFC_SLT , LLFC_ULT ,
  LLFC_SLE , LLFC_ULE , LLFC_SGE , LLFC_UGE ,
  LLFC_SGT , LLFC_UGT , LLFC_NEG , LLFC_POS ,
  LLFC_O , LLFC_NO , LLFC_FE , LLFC_FNE ,
  LLFC_FLT , LLFC_FLE , LLFC_FGE , LLFC_FGT ,
  LLFC_FO , LLFC_FUO
}
 
enum  BNFlagRole {
  SpecialFlagRole = 0 , ZeroFlagRole = 1 , PositiveSignFlagRole = 2 , NegativeSignFlagRole = 3 ,
  CarryFlagRole = 4 , OverflowFlagRole = 5 , HalfCarryFlagRole = 6 , EvenParityFlagRole = 7 ,
  OddParityFlagRole = 8 , OrderedFlagRole = 9 , UnorderedFlagRole = 10
}
 
enum  BNFunctionGraphType {
  InvalidILViewType = -1 , NormalFunctionGraph = 0 , LowLevelILFunctionGraph = 1 , LiftedILFunctionGraph = 2 ,
  LowLevelILSSAFormFunctionGraph = 3 , MediumLevelILFunctionGraph = 4 , MediumLevelILSSAFormFunctionGraph = 5 , MappedMediumLevelILFunctionGraph = 6 ,
  MappedMediumLevelILSSAFormFunctionGraph = 7 , HighLevelILFunctionGraph = 8 , HighLevelILSSAFormFunctionGraph = 9 , HighLevelLanguageRepresentationFunctionGraph = 10
}
 
enum  BNDisassemblyOption {
  ShowAddress = 0 , ShowOpcode = 1 , ExpandLongOpcode = 2 , ShowVariablesAtTopOfGraph = 3 ,
  ShowVariableTypesWhenAssigned = 4 , ShowCallParameterNames = 6 , ShowRegisterHighlight = 7 , ShowFunctionAddress = 8 ,
  ShowFunctionHeader = 9 , GroupLinearDisassemblyFunctions = 64 , HighLevelILLinearDisassembly = 65 , WaitForIL = 66 ,
  IndentHLILBody = 67 , ShowFlagUsage = 128 , ShowStackPointer = 129
}
 
enum  BNTypeClass {
  VoidTypeClass = 0 , BoolTypeClass = 1 , IntegerTypeClass = 2 , FloatTypeClass = 3 ,
  StructureTypeClass = 4 , EnumerationTypeClass = 5 , PointerTypeClass = 6 , ArrayTypeClass = 7 ,
  FunctionTypeClass = 8 , VarArgsTypeClass = 9 , ValueTypeClass = 10 , NamedTypeReferenceClass = 11 ,
  WideCharTypeClass = 12
}
 
enum  BNNamedTypeReferenceClass {
  UnknownNamedTypeClass = 0 , TypedefNamedTypeClass = 1 , ClassNamedTypeClass = 2 , StructNamedTypeClass = 3 ,
  UnionNamedTypeClass = 4 , EnumNamedTypeClass = 5
}
 
enum  BNStructureVariant { ClassStructureType = 0 , StructStructureType = 1 , UnionStructureType = 2 }
 
enum  BNMemberScope {
  NoScope , StaticScope , VirtualScope , ThunkScope ,
  FriendScope
}
 
enum  BNMemberAccess { NoAccess , PrivateAccess , ProtectedAccess , PublicAccess }
 
enum  BNReferenceType { PointerReferenceType = 0 , ReferenceReferenceType = 1 , RValueReferenceType = 2 , NoReference = 3 }
 
enum  BNPointerSuffix {
  Ptr64Suffix , UnalignedSuffix , RestrictSuffix , ReferenceSuffix ,
  LvalueSuffix
}
 
enum  BNNameType {
  NoNameType , ConstructorNameType , DestructorNameType , OperatorNewNameType ,
  OperatorDeleteNameType , OperatorAssignNameType , OperatorRightShiftNameType , OperatorLeftShiftNameType ,
  OperatorNotNameType , OperatorEqualNameType , OperatorNotEqualNameType , OperatorArrayNameType ,
  OperatorArrowNameType , OperatorStarNameType , OperatorIncrementNameType , OperatorDecrementNameType ,
  OperatorMinusNameType , OperatorPlusNameType , OperatorBitAndNameType , OperatorArrowStarNameType ,
  OperatorDivideNameType , OperatorModulusNameType , OperatorLessThanNameType , OperatorLessThanEqualNameType ,
  OperatorGreaterThanNameType , OperatorGreaterThanEqualNameType , OperatorCommaNameType , OperatorParenthesesNameType ,
  OperatorTildeNameType , OperatorXorNameType , OperatorBitOrNameType , OperatorLogicalAndNameType ,
  OperatorLogicalOrNameType , OperatorStarEqualNameType , OperatorPlusEqualNameType , OperatorMinusEqualNameType ,
  OperatorDivideEqualNameType , OperatorModulusEqualNameType , OperatorRightShiftEqualNameType , OperatorLeftShiftEqualNameType ,
  OperatorAndEqualNameType , OperatorOrEqualNameType , OperatorXorEqualNameType , VFTableNameType ,
  VBTableNameType , VCallNameType , TypeofNameType , LocalStaticGuardNameType ,
  StringNameType , VBaseDestructorNameType , VectorDeletingDestructorNameType , DefaultConstructorClosureNameType ,
  ScalarDeletingDestructorNameType , VectorConstructorIteratorNameType , VectorDestructorIteratorNameType , VectorVBaseConstructorIteratorNameType ,
  VirtualDisplacementMapNameType , EHVectorConstructorIteratorNameType , EHVectorDestructorIteratorNameType , EHVectorVBaseConstructorIteratorNameType ,
  CopyConstructorClosureNameType , UDTReturningNameType , LocalVFTableNameType , LocalVFTableConstructorClosureNameType ,
  OperatorNewArrayNameType , OperatorDeleteArrayNameType , PlacementDeleteClosureNameType , PlacementDeleteClosureArrayNameType ,
  OperatorReturnTypeNameType , RttiTypeDescriptor , RttiBaseClassDescriptor , RttiBaseClassArray ,
  RttiClassHierarchyDescriptor , RttiCompleteObjectLocator , OperatorUnaryMinusNameType , OperatorUnaryPlusNameType ,
  OperatorUnaryBitAndNameType , OperatorUnaryStarNameType
}
 
enum  BNCallingConventionName {
  NoCallingConvention , CdeclCallingConvention , PascalCallingConvention , ThisCallCallingConvention ,
  STDCallCallingConvention , FastcallCallingConvention , CLRCallCallingConvention , EabiCallCallingConvention ,
  VectorCallCallingConvention
}
 
enum  BNStringType { AsciiString = 0 , Utf16String = 1 , Utf32String = 2 , Utf8String = 3 }
 
enum  BNIntegerDisplayType {
  DefaultIntegerDisplayType , BinaryDisplayType , SignedOctalDisplayType , UnsignedOctalDisplayType ,
  SignedDecimalDisplayType , UnsignedDecimalDisplayType , SignedHexadecimalDisplayType , UnsignedHexadecimalDisplayType ,
  CharacterConstantDisplayType , PointerDisplayType , FloatDisplayType , DoubleDisplayType
}
 
enum  BNFlowGraphOption {
  FlowGraphUsesBlockHighlights , FlowGraphUsesInstructionHighlights , FlowGraphIncludesUserComments , FlowGraphAllowsPatching ,
  FlowGraphAllowsInlineInstructionEditing , FlowGraphShowsSecondaryRegisterHighlighting
}
 
enum  BNImplicitRegisterExtend { NoExtend , ZeroExtendToFullWidth , SignExtendToFullWidth }
 
enum  BNRegisterValueType {
  UndeterminedValue , EntryValue , ConstantValue , ConstantPointerValue ,
  ExternalPointerValue , StackFrameOffset , ReturnAddressValue , ImportedAddressValue ,
  SignedRangeValue , UnsignedRangeValue , LookupTableValue , InSetOfValues ,
  NotInSetOfValues
}
 
enum  BNDataFlowQueryOption { FromAddressesInLookupTableQueryOption }
 
enum  BNPluginOrigin { OfficialPluginOrigin , CommunityPluginOrigin , OtherPluginOrigin }
 
enum  BNPluginStatus {
  NotInstalledPluginStatus = 0x00000000 , InstalledPluginStatus = 0x00000001 , EnabledPluginStatus = 0x00000002 , UpdateAvailablePluginStatus = 0x00000010 ,
  DeletePendingPluginStatus = 0x00000020 , UpdatePendingPluginStatus = 0x00000040 , DisablePendingPluginStatus = 0x00000080 , PendingRestartPluginStatus = 0x00000200 ,
  BeingUpdatedPluginStatus = 0x00000400 , BeingDeletedPluginStatus = 0x00000800 , DependenciesBeingInstalledStatus = 0x00001000
}
 
enum  BNPluginType {
  CorePluginType , UiPluginType , ArchitecturePluginType , BinaryViewPluginType ,
  HelperPluginType
}
 
enum  BNMediumLevelILOperation {
  MLIL_NOP , MLIL_SET_VAR , MLIL_SET_VAR_FIELD , MLIL_SET_VAR_SPLIT ,
  MLIL_LOAD , MLIL_LOAD_STRUCT , MLIL_STORE , MLIL_STORE_STRUCT ,
  MLIL_VAR , MLIL_VAR_FIELD , MLIL_VAR_SPLIT , MLIL_ADDRESS_OF ,
  MLIL_ADDRESS_OF_FIELD , MLIL_CONST , MLIL_CONST_PTR , MLIL_EXTERN_PTR ,
  MLIL_FLOAT_CONST , MLIL_IMPORT , MLIL_ADD , MLIL_ADC ,
  MLIL_SUB , MLIL_SBB , MLIL_AND , MLIL_OR ,
  MLIL_XOR , MLIL_LSL , MLIL_LSR , MLIL_ASR ,
  MLIL_ROL , MLIL_RLC , MLIL_ROR , MLIL_RRC ,
  MLIL_MUL , MLIL_MULU_DP , MLIL_MULS_DP , MLIL_DIVU ,
  MLIL_DIVU_DP , MLIL_DIVS , MLIL_DIVS_DP , MLIL_MODU ,
  MLIL_MODU_DP , MLIL_MODS , MLIL_MODS_DP , MLIL_NEG ,
  MLIL_NOT , MLIL_SX , MLIL_ZX , MLIL_LOW_PART ,
  MLIL_JUMP , MLIL_JUMP_TO , MLIL_RET_HINT , MLIL_CALL ,
  MLIL_CALL_UNTYPED , MLIL_CALL_OUTPUT , MLIL_CALL_PARAM , MLIL_RET ,
  MLIL_NORET , MLIL_IF , MLIL_GOTO , MLIL_CMP_E ,
  MLIL_CMP_NE , MLIL_CMP_SLT , MLIL_CMP_ULT , MLIL_CMP_SLE ,
  MLIL_CMP_ULE , MLIL_CMP_SGE , MLIL_CMP_UGE , MLIL_CMP_SGT ,
  MLIL_CMP_UGT , MLIL_TEST_BIT , MLIL_BOOL_TO_INT , MLIL_ADD_OVERFLOW ,
  MLIL_SYSCALL , MLIL_SYSCALL_UNTYPED , MLIL_TAILCALL , MLIL_TAILCALL_UNTYPED ,
  MLIL_INTRINSIC , MLIL_FREE_VAR_SLOT , MLIL_BP , MLIL_TRAP ,
  MLIL_UNDEF , MLIL_UNIMPL , MLIL_UNIMPL_MEM , MLIL_FADD ,
  MLIL_FSUB , MLIL_FMUL , MLIL_FDIV , MLIL_FSQRT ,
  MLIL_FNEG , MLIL_FABS , MLIL_FLOAT_TO_INT , MLIL_INT_TO_FLOAT ,
  MLIL_FLOAT_CONV , MLIL_ROUND_TO_INT , MLIL_FLOOR , MLIL_CEIL ,
  MLIL_FTRUNC , MLIL_FCMP_E , MLIL_FCMP_NE , MLIL_FCMP_LT ,
  MLIL_FCMP_LE , MLIL_FCMP_GE , MLIL_FCMP_GT , MLIL_FCMP_O ,
  MLIL_FCMP_UO , MLIL_SET_VAR_SSA , MLIL_SET_VAR_SSA_FIELD , MLIL_SET_VAR_SPLIT_SSA ,
  MLIL_SET_VAR_ALIASED , MLIL_SET_VAR_ALIASED_FIELD , MLIL_VAR_SSA , MLIL_VAR_SSA_FIELD ,
  MLIL_VAR_ALIASED , MLIL_VAR_ALIASED_FIELD , MLIL_VAR_SPLIT_SSA , MLIL_CALL_SSA ,
  MLIL_CALL_UNTYPED_SSA , MLIL_SYSCALL_SSA , MLIL_SYSCALL_UNTYPED_SSA , MLIL_TAILCALL_SSA ,
  MLIL_TAILCALL_UNTYPED_SSA , MLIL_CALL_PARAM_SSA , MLIL_CALL_OUTPUT_SSA , MLIL_LOAD_SSA ,
  MLIL_LOAD_STRUCT_SSA , MLIL_STORE_SSA , MLIL_STORE_STRUCT_SSA , MLIL_INTRINSIC_SSA ,
  MLIL_FREE_VAR_SLOT_SSA , MLIL_VAR_PHI , MLIL_MEM_PHI
}
 
enum  BNVariableSourceType { StackVariableSourceType , RegisterVariableSourceType , FlagVariableSourceType }
 
enum  BNHighLevelILOperation {
  HLIL_NOP , HLIL_BLOCK , HLIL_IF , HLIL_WHILE ,
  HLIL_DO_WHILE , HLIL_FOR , HLIL_SWITCH , HLIL_CASE ,
  HLIL_BREAK , HLIL_CONTINUE , HLIL_JUMP , HLIL_RET ,
  HLIL_NORET , HLIL_GOTO , HLIL_LABEL , HLIL_VAR_DECLARE ,
  HLIL_VAR_INIT , HLIL_ASSIGN , HLIL_ASSIGN_UNPACK , HLIL_VAR ,
  HLIL_STRUCT_FIELD , HLIL_ARRAY_INDEX , HLIL_SPLIT , HLIL_DEREF ,
  HLIL_DEREF_FIELD , HLIL_ADDRESS_OF , HLIL_CONST , HLIL_CONST_PTR ,
  HLIL_EXTERN_PTR , HLIL_FLOAT_CONST , HLIL_IMPORT , HLIL_ADD ,
  HLIL_ADC , HLIL_SUB , HLIL_SBB , HLIL_AND ,
  HLIL_OR , HLIL_XOR , HLIL_LSL , HLIL_LSR ,
  HLIL_ASR , HLIL_ROL , HLIL_RLC , HLIL_ROR ,
  HLIL_RRC , HLIL_MUL , HLIL_MULU_DP , HLIL_MULS_DP ,
  HLIL_DIVU , HLIL_DIVU_DP , HLIL_DIVS , HLIL_DIVS_DP ,
  HLIL_MODU , HLIL_MODU_DP , HLIL_MODS , HLIL_MODS_DP ,
  HLIL_NEG , HLIL_NOT , HLIL_SX , HLIL_ZX ,
  HLIL_LOW_PART , HLIL_CALL , HLIL_CMP_E , HLIL_CMP_NE ,
  HLIL_CMP_SLT , HLIL_CMP_ULT , HLIL_CMP_SLE , HLIL_CMP_ULE ,
  HLIL_CMP_SGE , HLIL_CMP_UGE , HLIL_CMP_SGT , HLIL_CMP_UGT ,
  HLIL_TEST_BIT , HLIL_BOOL_TO_INT , HLIL_ADD_OVERFLOW , HLIL_SYSCALL ,
  HLIL_TAILCALL , HLIL_INTRINSIC , HLIL_BP , HLIL_TRAP ,
  HLIL_UNDEF , HLIL_UNIMPL , HLIL_UNIMPL_MEM , HLIL_FADD ,
  HLIL_FSUB , HLIL_FMUL , HLIL_FDIV , HLIL_FSQRT ,
  HLIL_FNEG , HLIL_FABS , HLIL_FLOAT_TO_INT , HLIL_INT_TO_FLOAT ,
  HLIL_FLOAT_CONV , HLIL_ROUND_TO_INT , HLIL_FLOOR , HLIL_CEIL ,
  HLIL_FTRUNC , HLIL_FCMP_E , HLIL_FCMP_NE , HLIL_FCMP_LT ,
  HLIL_FCMP_LE , HLIL_FCMP_GE , HLIL_FCMP_GT , HLIL_FCMP_O ,
  HLIL_FCMP_UO , HLIL_WHILE_SSA , HLIL_DO_WHILE_SSA , HLIL_FOR_SSA ,
  HLIL_VAR_INIT_SSA , HLIL_ASSIGN_MEM_SSA , HLIL_ASSIGN_UNPACK_MEM_SSA , HLIL_VAR_SSA ,
  HLIL_ARRAY_INDEX_SSA , HLIL_DEREF_SSA , HLIL_DEREF_FIELD_SSA , HLIL_CALL_SSA ,
  HLIL_SYSCALL_SSA , HLIL_INTRINSIC_SSA , HLIL_VAR_PHI , HLIL_MEM_PHI
}
 
enum  BNRelocationType {
  ELFGlobalRelocationType , ELFCopyRelocationType , ELFJumpSlotRelocationType , StandardRelocationType ,
  IgnoredRelocation , UnhandledRelocation
}
 
enum  BNTypeDefinitionLineType {
  TypedefLineType , StructDefinitionLineType , StructFieldLineType , StructDefinitionEndLineType ,
  EnumDefinitionLineType , EnumMemberLineType , EnumDefinitionEndLineType , PaddingLineType ,
  UndefinedXrefLineType
}
 
enum  BNThemeColor {
  AddressColor , ModifiedColor , InsertedColor , NotPresentColor ,
  SelectionColor , OutlineColor , BackgroundHighlightDarkColor , BackgroundHighlightLightColor ,
  BoldBackgroundHighlightDarkColor , BoldBackgroundHighlightLightColor , AlphanumericHighlightColor , PrintableHighlightColor ,
  GraphBackgroundDarkColor , GraphBackgroundLightColor , GraphNodeDarkColor , GraphNodeLightColor ,
  GraphNodeOutlineColor , TrueBranchColor , FalseBranchColor , UnconditionalBranchColor ,
  AltTrueBranchColor , AltFalseBranchColor , AltUnconditionalBranchColor , RegisterColor ,
  NumberColor , CodeSymbolColor , DataSymbolColor , StackVariableColor ,
  ImportColor , InstructionHighlightColor , TokenHighlightColor , TokenSelectionColor ,
  AnnotationColor , OpcodeColor , LinearDisassemblyFunctionHeaderColor , LinearDisassemblyBlockColor ,
  LinearDisassemblyNoteColor , LinearDisassemblySeparatorColor , StringColor , TypeNameColor ,
  FieldNameColor , KeywordColor , UncertainColor , NameSpaceColor ,
  NameSpaceSeparatorColor , GotoLabelColor , CommentColor , ScriptConsoleOutputColor ,
  ScriptConsoleWarningColor , ScriptConsoleErrorColor , ScriptConsoleEchoColor , BlueStandardHighlightColor ,
  GreenStandardHighlightColor , CyanStandardHighlightColor , RedStandardHighlightColor , MagentaStandardHighlightColor ,
  YellowStandardHighlightColor , OrangeStandardHighlightColor , WhiteStandardHighlightColor , BlackStandardHighlightColor ,
  MiniGraphOverlayColor , FeatureMapBaseColor , FeatureMapNavLineColor , FeatureMapNavHighlightColor ,
  FeatureMapDataVariableColor , FeatureMapAsciiStringColor , FeatureMapUnicodeStringColor , FeatureMapFunctionColor ,
  FeatureMapImportColor , FeatureMapExternColor , FeatureMapLibraryColor , SidebarBackgroundColor ,
  SidebarInactiveIconColor , SidebarActiveIconColor , SidebarHeaderBackgroundColor , SidebarHeaderTextColor ,
  SidebarWidgetBackgroundColor , ActivePaneBackgroundColor , InactivePaneBackgroundColor
}
 
enum  BNEdgePenStyle {
  NoPen = 0 , SolidLine = 1 , DashLine = 2 , DotLine = 3 ,
  DashDotLine = 4 , DashDotDotLine = 5
}
 
enum  BNHighlightColorStyle { StandardHighlightColor = 0 , MixedHighlightColor = 1 , CustomHighlightColor = 2 }
 
enum  BNHighlightStandardColor {
  NoHighlightColor = 0 , BlueHighlightColor = 1 , GreenHighlightColor = 2 , CyanHighlightColor = 3 ,
  RedHighlightColor = 4 , MagentaHighlightColor = 5 , YellowHighlightColor = 6 , OrangeHighlightColor = 7 ,
  WhiteHighlightColor = 8 , BlackHighlightColor = 9
}
 
enum  BNTypeReferenceType { DirectTypeReferenceType , IndirectTypeReferenceType , UnknownTypeReferenceType }
 
enum  BNTagTypeType { UserTagType , NotificationTagType , BookmarksTagType }
 
enum  BNTagReferenceType { AddressTagReference , FunctionTagReference , DataTagReference }
 
enum  BNMergeStatus { NOT_APPLICABLE = 0 , OK = 1 , CONFLICT = 2 }
 
enum  BNTypeParserErrorSeverity {
  IgnoredSeverity = 0 , NoteSeverity = 1 , RemarkSeverity = 2 , WarningSeverity = 3 ,
  ErrorSeverity = 4 , FatalSeverity = 5
}
 
enum  BNUpdateResult { UpdateFailed = 0 , UpdateSuccess = 1 , AlreadyUpToDate = 2 , UpdateAvailable = 3 }
 
enum  BNPluginCommandType {
  DefaultPluginCommand , AddressPluginCommand , RangePluginCommand , FunctionPluginCommand ,
  LowLevelILFunctionPluginCommand , LowLevelILInstructionPluginCommand , MediumLevelILFunctionPluginCommand , MediumLevelILInstructionPluginCommand ,
  HighLevelILFunctionPluginCommand , HighLevelILInstructionPluginCommand
}
 
enum  BNFunctionUpdateType { UserFunctionUpdate , FullAutoFunctionUpdate , IncrementalAutoFunctionUpdate }
 
enum  BNWorkflowState {
  WorkflowInitial , WorkflowIdle , WorkflowRun , WorkflowHalt ,
  WorkflowHold , WorkflowInvalid
}
 
enum  BNAnalysisState {
  InitialState , HoldState , IdleState , DisassembleState ,
  AnalyzeState , ExtendedAnalyzeState
}
 
enum  BNAnalysisMode { FullAnalysisMode , IntermediateAnalysisMode , BasicAnalysisMode , ControlFlowAnalysisMode }
 
enum  BNFindFlag { FindCaseSensitive = 0 , FindCaseInsensitive = 1 }
 
enum  BNFindRangeType { AllRangeType , CustomRangeType , CurrentFunctionRangeType }
 
enum  BNFindType {
  FindTypeRawString , FindTypeEscapedString , FindTypeText , FindTypeConstant ,
  FindTypeBytes
}
 
enum  BNScriptingProviderInputReadyState { NotReadyForInput , ReadyForScriptExecution , ReadyForScriptProgramInput }
 
enum  BNScriptingProviderExecuteResult { InvalidScriptInput , IncompleteScriptInput , SuccessfulScriptExecution , ScriptExecutionCancelled }
 
enum  BNSaveOption { RemoveUndoData , TrimSnapshots }
 
enum  BNMessageBoxIcon { InformationIcon , QuestionIcon , WarningIcon , ErrorIcon }
 
enum  BNMessageBoxButtonSet { OKButtonSet , YesNoButtonSet , YesNoCancelButtonSet }
 
enum  BNMessageBoxButtonResult { NoButton = 0 , YesButton = 1 , OKButton = 2 , CancelButton = 3 }
 
enum  BNFormInputFieldType {
  LabelFormField , SeparatorFormField , TextLineFormField , MultilineTextFormField ,
  IntegerFormField , AddressFormField , ChoiceFormField , OpenFileNameFormField ,
  SaveFileNameFormField , DirectoryNameFormField
}
 
enum  BNSegmentFlag {
  SegmentExecutable = 1 , SegmentWritable = 2 , SegmentReadable = 4 , SegmentContainsData = 8 ,
  SegmentContainsCode = 0x10 , SegmentDenyWrite = 0x20 , SegmentDenyExecute = 0x40
}
 
enum  BNSectionSemantics {
  DefaultSectionSemantics , ReadOnlyCodeSectionSemantics , ReadOnlyDataSectionSemantics , ReadWriteDataSectionSemantics ,
  ExternalSectionSemantics
}
 
enum  BNILBranchDependence { NotBranchDependent , TrueBranchDependent , FalseBranchDependent }
 
enum  BNMetadataType {
  InvalidDataType , BooleanDataType , StringDataType , UnsignedIntegerDataType ,
  SignedIntegerDataType , DoubleDataType , RawDataType , KeyValueDataType ,
  ArrayDataType
}
 
enum  BNFunctionAnalysisSkipOverride { DefaultFunctionAnalysisSkip , NeverSkipFunctionAnalysis , AlwaysSkipFunctionAnalysis }
 
enum  BNReportType { PlainTextReportType , MarkdownReportType , HTMLReportType , FlowGraphReportType }
 
enum  BNAnalysisSkipReason {
  NoSkipReason , AlwaysSkipReason , ExceedFunctionSizeSkipReason , ExceedFunctionAnalysisTimeSkipReason ,
  ExceedFunctionUpdateCountSkipReason , NewAutoFunctionAnalysisSuppressedReason , BasicAnalysisSkipReason , IntermediateAnalysisSkipReason
}
 
enum  BNSettingsScope {
  SettingsInvalidScope = 0 , SettingsAutoScope = 1 , SettingsDefaultScope = 2 , SettingsUserScope = 4 ,
  SettingsProjectScope = 8 , SettingsResourceScope = 0x10
}
 
enum  BNLinearViewObjectIdentifierType { SingleLinearViewObject , AddressLinearViewObject , AddressRangeLinearViewObject }
 
enum  BNBinaryViewEventType { BinaryViewFinalizationEvent , BinaryViewInitialAnalysisCompletionEvent }
 
enum  BNDeadStoreElimination { DefaultDeadStoreElimination , PreventDeadStoreElimination , AllowDeadStoreElimination }
 

Functions

char * BNAllocString (const char *contents)
 
void BNFreeString (char *str)
 
char ** BNAllocStringList (const char **contents, size_t size)
 
void BNFreeStringList (char **strs, size_t count)
 
void BNShutdown (void)
 
bool BNIsShutdownRequested (void)
 
char * BNGetVersionString (void)
 
uint32_t BNGetBuildId (void)
 
uint32_t BNGetCurrentCoreABIVersion (void)
 
uint32_t BNGetMinimumCoreABIVersion (void)
 
char * BNGetSerialNumber (void)
 
uint64_t BNGetLicenseExpirationTime (void)
 
bool BNIsLicenseValidated (void)
 
char * BNGetLicensedUserEmail (void)
 
char * BNGetProduct (void)
 
char * BNGetProductType (void)
 
int BNGetLicenseCount (void)
 
bool BNIsUIEnabled (void)
 
void BNSetLicense (const char *licenseData)
 
bool BNAuthenticateEnterpriseServerWithCredentials (const char *username, const char *password, bool remember)
 
bool BNAuthenticateEnterpriseServerWithMethod (const char *method, bool remember)
 
size_t BNGetEnterpriseServerAuthenticationMethods (char ***methods, char ***names)
 
bool BNDeauthenticateEnterpriseServer (void)
 
void BNCancelEnterpriseServerAuthentication (void)
 
bool BNConnectEnterpriseServer (void)
 
bool BNAcquireEnterpriseServerLicense (uint64_t timeout)
 
bool BNReleaseEnterpriseServerLicense (void)
 
bool BNIsEnterpriseServerConnected (void)
 
bool BNIsEnterpriseServerAuthenticated (void)
 
char * BNGetEnterpriseServerUsername (void)
 
char * BNGetEnterpriseServerToken (void)
 
char * BNGetEnterpriseServerUrl (void)
 
bool BNSetEnterpriseServerUrl (const char *url)
 
char * BNGetEnterpriseServerName (void)
 
char * BNGetEnterpriseServerId (void)
 
uint64_t BNGetEnterpriseServerVersion (void)
 
char * BNGetEnterpriseServerBuildId (void)
 
uint64_t BNGetEnterpriseServerLicenseExpirationTime (void)
 
uint64_t BNGetEnterpriseServerLicenseDuration (void)
 
uint64_t BNGetEnterpriseServerReservationTimeLimit (void)
 
bool BNIsEnterpriseServerLicenseStillActivated (void)
 
char * BNGetEnterpriseServerLastError (void)
 
bool BNIsEnterpriseServerInitialized (void)
 
void BNRegisterObjectDestructionCallbacks (BNObjectDestructionCallbacks *callbacks)
 
void BNUnregisterObjectDestructionCallbacks (BNObjectDestructionCallbacks *callbacks)
 
char * BNGetUniqueIdentifierString (void)
 
bool BNInitPlugins (bool allowUserPlugins)
 
bool BNInitCorePlugins (void)
 
void BNDisablePlugins (void)
 
bool BNIsPluginsEnabled (void)
 
void BNInitUserPlugins (void)
 
void BNInitRepoPlugins (void)
 
char * BNGetInstallDirectory (void)
 
char * BNGetBundledPluginDirectory (void)
 
void BNSetBundledPluginDirectory (const char *path)
 
char * BNGetUserDirectory (void)
 
char * BNGetUserPluginDirectory (void)
 
char * BNGetRepositoriesDirectory (void)
 
char * BNGetSettingsFileName (void)
 
void BNSaveLastRun (void)
 
char * BNGetPathRelativeToBundledPluginDirectory (const char *path)
 
char * BNGetPathRelativeToUserPluginDirectory (const char *path)
 
char * BNGetPathRelativeToUserDirectory (const char *path)
 
bool BNExecuteWorkerProcess (const char *path, const char *args[], BNDataBuffer *input, char **output, char **error, bool stdoutIsText, bool stderrIsText)
 
void BNSetCurrentPluginLoadOrder (BNPluginLoadOrder order)
 
void BNAddRequiredPluginDependency (const char *name)
 
void BNAddOptionalPluginDependency (const char *name)
 
void BNLog (size_t session, BNLogLevel level, const char *logger_name, size_t tid, const char *fmt,...)
 
void BNLogDebug (const char *fmt,...)
 
void BNLogInfo (const char *fmt,...)
 
void BNLogWarn (const char *fmt,...)
 
void BNLogError (const char *fmt,...)
 
void BNLogAlert (const char *fmt,...)
 
void BNLogString (size_t session, BNLogLevel level, const char *logger_name, size_t tid, const char *str)
 
BNLogger * BNNewLoggerReference (BNLogger *logger)
 
void BNFreeLogger (BNLogger *logger)
 
void BNLoggerLog (BNLogger *logger, BNLogLevel level, const char *fmt,...)
 
void BNLoggerLogString (BNLogger *logger, BNLogLevel level, const char *msg)
 
char * BNLoggerGetName (BNLogger *logger)
 
size_t BNLoggerGetSessionId (BNLogger *logger)
 
BNLogger * BNLogCreateLogger (const char *loggerName, size_t sessionId)
 
BNLogger * BNLogGetLogger (const char *loggerName, size_t sessionId)
 
char ** BNLogGetLoggerNames (size_t *count)
 
void BNLogRegisterLoggerCallback (void(*cb)(const char *name, void *ctxt), void *ctxt)
 
void BNRegisterLogListener (BNLogListener *listener)
 
void BNUnregisterLogListener (BNLogListener *listener)
 
void BNUpdateLogListeners (void)
 
void BNLogToStdout (BNLogLevel minimumLevel)
 
void BNLogToStderr (BNLogLevel minimumLevel)
 
bool BNLogToFile (BNLogLevel minimumLevel, const char *path, bool append)
 
void BNCloseLogs (void)
 
BNTemporaryFile * BNCreateTemporaryFile (void)
 
BNTemporaryFile * BNCreateTemporaryFileWithContents (BNDataBuffer *data)
 
BNTemporaryFile * BNNewTemporaryFileReference (BNTemporaryFile *file)
 
void BNFreeTemporaryFile (BNTemporaryFile *file)
 
char * BNGetTemporaryFilePath (BNTemporaryFile *file)
 
BNDataBuffer * BNGetTemporaryFileContents (BNTemporaryFile *file)
 
BNDataBuffer * BNCreateDataBuffer (const void *data, size_t len)
 
BNDataBuffer * BNDuplicateDataBuffer (BNDataBuffer *buf)
 
void BNFreeDataBuffer (BNDataBuffer *buf)
 
void * BNGetDataBufferContents (BNDataBuffer *buf)
 
void * BNGetDataBufferContentsAt (BNDataBuffer *buf, size_t offset)
 
size_t BNGetDataBufferLength (BNDataBuffer *buf)
 
BNDataBuffer * BNGetDataBufferSlice (BNDataBuffer *buf, size_t start, size_t len)
 
void BNSetDataBufferLength (BNDataBuffer *buf, size_t len)
 
void BNClearDataBuffer (BNDataBuffer *buf)
 
void BNSetDataBufferContents (BNDataBuffer *buf, void *data, size_t len)
 
void BNAssignDataBuffer (BNDataBuffer *dest, BNDataBuffer *src)
 
void BNAppendDataBuffer (BNDataBuffer *dest, BNDataBuffer *src)
 
void BNAppendDataBufferContents (BNDataBuffer *dest, const void *src, size_t len)
 
uint8_t BNGetDataBufferByte (BNDataBuffer *buf, size_t offset)
 
void BNSetDataBufferByte (BNDataBuffer *buf, size_t offset, uint8_t val)
 
char * BNDataBufferToEscapedString (BNDataBuffer *buf)
 
BNDataBuffer * BNDecodeEscapedString (const char *str)
 
char * BNDataBufferToBase64 (BNDataBuffer *buf)
 
BNDataBuffer * BNDecodeBase64 (const char *str)
 
BNDataBuffer * BNZlibCompress (BNDataBuffer *buf)
 
BNDataBuffer * BNZlibDecompress (BNDataBuffer *buf)
 
BNSaveSettings * BNCreateSaveSettings (void)
 
BNSaveSettings * BNNewSaveSettingsReference (BNSaveSettings *settings)
 
void BNFreeSaveSettings (BNSaveSettings *settings)
 
bool BNIsSaveSettingsOptionSet (BNSaveSettings *settings, BNSaveOption option)
 
void BNSetSaveSettingsOption (BNSaveSettings *settings, BNSaveOption option, bool state)
 
BNFileMetadata * BNCreateFileMetadata (void)
 
BNFileMetadata * BNNewFileReference (BNFileMetadata *file)
 
void BNFreeFileMetadata (BNFileMetadata *file)
 
void BNCloseFile (BNFileMetadata *file)
 
void BNSetFileMetadataNavigationHandler (BNFileMetadata *file, BNNavigationHandler *handler)
 
bool BNIsFileModified (BNFileMetadata *file)
 
bool BNIsAnalysisChanged (BNFileMetadata *file)
 
void BNMarkFileModified (BNFileMetadata *file)
 
void BNMarkFileSaved (BNFileMetadata *file)
 
bool BNIsBackedByDatabase (BNFileMetadata *file, const char *binaryViewType)
 
bool BNCreateDatabase (BNBinaryView *data, const char *path, BNSaveSettings *settings)
 
bool BNCreateDatabaseWithProgress (BNBinaryView *data, const char *path, void *ctxt, bool(*progress)(void *ctxt, size_t progress, size_t total), BNSaveSettings *settings)
 
BNBinaryView * BNOpenExistingDatabase (BNFileMetadata *file, const char *path)
 
BNBinaryView * BNOpenExistingDatabaseWithProgress (BNFileMetadata *file, const char *path, void *ctxt, bool(*progress)(void *ctxt, size_t progress, size_t total))
 
BNBinaryView * BNOpenDatabaseForConfiguration (BNFileMetadata *file, const char *path)
 
bool BNSaveAutoSnapshot (BNBinaryView *data, BNSaveSettings *settings)
 
bool BNSaveAutoSnapshotWithProgress (BNBinaryView *data, void *ctxt, bool(*progress)(void *ctxt, size_t progress, size_t total), BNSaveSettings *settings)
 
void BNGetSnapshotData (BNFileMetadata *file, BNKeyValueStore *data, BNKeyValueStore *cache, void *ctxt, bool(*progress)(void *ctxt, size_t current, size_t total))
 
void BNApplySnapshotData (BNFileMetadata *file, BNBinaryView *view, BNKeyValueStore *data, BNKeyValueStore *cache, void *ctxt, bool(*progress)(void *ctxt, size_t current, size_t total), bool openForConfiguration, bool restoreRawView)
 
BNDatabase * BNGetFileMetadataDatabase (BNFileMetadata *file)
 
BNKeyValueStore * BNCreateKeyValueStore (void)
 
BNKeyValueStore * BNCreateKeyValueStoreFromDataBuffer (BNDataBuffer *buffer)
 
BNKeyValueStore * BNNewKeyValueStoreReference (BNKeyValueStore *store)
 
void BNFreeKeyValueStore (BNKeyValueStore *store)
 
char ** BNGetKeyValueStoreKeys (BNKeyValueStore *store, size_t *count)
 
bool BNKeyValueStoreHasValue (BNKeyValueStore *store, const char *name)
 
char * BNGetKeyValueStoreValue (BNKeyValueStore *store, const char *name)
 
BNDataBuffer * BNGetKeyValueStoreBuffer (BNKeyValueStore *store, const char *name)
 
bool BNSetKeyValueStoreValue (BNKeyValueStore *store, const char *name, const char *value)
 
bool BNSetKeyValueStoreBuffer (BNKeyValueStore *store, const char *name, const BNDataBuffer *value)
 
BNDataBuffer * BNGetKeyValueStoreSerializedData (BNKeyValueStore *store)
 
void BNBeginKeyValueStoreNamespace (BNKeyValueStore *store, const char *name)
 
void BNEndKeyValueStoreNamespace (BNKeyValueStore *store)
 
bool BNIsKeyValueStoreEmpty (BNKeyValueStore *store)
 
size_t BNGetKeyValueStoreValueSize (BNKeyValueStore *store)
 
size_t BNGetKeyValueStoreDataSize (BNKeyValueStore *store)
 
size_t BNGetKeyValueStoreValueStorageSize (BNKeyValueStore *store)
 
size_t BNGetKeyValueStoreNamespaceSize (BNKeyValueStore *store)
 
BNDatabase * BNNewDatabaseReference (BNDatabase *database)
 
void BNFreeDatabase (BNDatabase *database)
 
void BNSetDatabaseCurrentSnapshot (BNDatabase *database, int64_t id)
 
BNSnapshot * BNGetDatabaseCurrentSnapshot (BNDatabase *database)
 
BNSnapshot ** BNGetDatabaseSnapshots (BNDatabase *database, size_t *count)
 
BNSnapshot * BNGetDatabaseSnapshot (BNDatabase *database, int64_t id)
 
int64_t BNWriteDatabaseSnapshotData (BNDatabase *database, int64_t *parents, size_t parentCount, BNBinaryView *file, const char *name, BNKeyValueStore *data, bool autoSave, void *ctxt, bool(*progress)(void *, size_t, size_t))
 
bool BNTrimDatabaseSnapshot (BNDatabase *database, int64_t id)
 
bool BNRemoveDatabaseSnapshot (BNDatabase *database, int64_t id)
 
char ** BNGetDatabaseGlobalKeys (BNDatabase *database, size_t *count)
 
int BNDatabaseHasGlobal (BNDatabase *database, const char *key)
 
char * BNReadDatabaseGlobal (BNDatabase *database, const char *key)
 
bool BNWriteDatabaseGlobal (BNDatabase *database, const char *key, const char *val)
 
BNDataBuffer * BNReadDatabaseGlobalData (BNDatabase *database, const char *key)
 
bool BNWriteDatabaseGlobalData (BNDatabase *database, const char *key, BNDataBuffer *val)
 
BNFileMetadata * BNGetDatabaseFile (BNDatabase *database)
 
BNKeyValueStore * BNReadDatabaseAnalysisCache (BNDatabase *database)
 
bool BNWriteDatabaseAnalysisCache (BNDatabase *database, BNKeyValueStore *val)
 
BNSnapshot * BNNewSnapshotReference (BNSnapshot *snapshot)
 
void BNFreeSnapshot (BNSnapshot *snapshot)
 
void BNFreeSnapshotList (BNSnapshot **snapshots, size_t count)
 
BNDatabase * BNGetSnapshotDatabase (BNSnapshot *snapshot)
 
int64_t BNGetSnapshotId (BNSnapshot *snapshot)
 
BNSnapshot * BNGetSnapshotFirstParent (BNSnapshot *snapshot)
 
BNSnapshot ** BNGetSnapshotParents (BNSnapshot *snapshot, size_t *count)
 
BNSnapshot ** BNGetSnapshotChildren (BNSnapshot *snapshot, size_t *count)
 
char * BNGetSnapshotName (BNSnapshot *snapshot)
 
bool BNIsSnapshotAutoSave (BNSnapshot *snapshot)
 
bool BNSnapshotHasContents (BNSnapshot *snapshot)
 
bool BNSnapshotHasUndo (BNSnapshot *snapshot)
 
BNDataBuffer * BNGetSnapshotFileContents (BNSnapshot *snapshot)
 
BNDataBuffer * BNGetSnapshotFileContentsHash (BNSnapshot *snapshot)
 
BNKeyValueStore * BNReadSnapshotData (BNSnapshot *snapshot)
 
BNKeyValueStore * BNReadSnapshotDataWithProgress (BNSnapshot *snapshot, void *ctxt, bool(*progress)(void *ctxt, size_t progress, size_t total))
 
BNUndoEntryBNGetSnapshotUndoEntries (BNSnapshot *snapshot, size_t *count)
 
BNUndoEntryBNGetSnapshotUndoEntriesWithProgress (BNSnapshot *snapshot, void *ctxt, bool(*progress)(void *ctxt, size_t progress, size_t total), size_t *count)
 
bool BNSnapshotHasAncestor (BNSnapshot *snapshot, BNSnapshot *other)
 
bool BNRebase (BNBinaryView *data, uint64_t address)
 
bool BNRebaseWithProgress (BNBinaryView *data, uint64_t address, void *ctxt, bool(*progress)(void *ctxt, size_t progress, size_t total))
 
bool BNCreateSnapshotedView (BNBinaryView *data, const char *viewName)
 
bool BNCreateSnapshotedViewWithProgress (BNBinaryView *data, const char *viewName, void *ctxt, bool(*progress)(void *ctxt, size_t progress, size_t total))
 
BNMergeResult BNMergeUserAnalysis (BNFileMetadata *file, const char *name, void *ctxt, bool(*progress)(void *ctxt, size_t progress, size_t total), char **excludedHashes, size_t excludedHashesCount)
 
char * BNGetOriginalFilename (BNFileMetadata *file)
 
void BNSetOriginalFilename (BNFileMetadata *file, const char *name)
 
char * BNGetFilename (BNFileMetadata *file)
 
void BNSetFilename (BNFileMetadata *file, const char *name)
 
void BNBeginUndoActions (BNFileMetadata *file)
 
void BNCommitUndoActions (BNFileMetadata *file)
 
bool BNUndo (BNFileMetadata *file)
 
bool BNRedo (BNFileMetadata *file)
 
BNUndoEntryBNGetUndoEntries (BNFileMetadata *file, size_t *count)
 
void BNFreeUndoEntries (BNUndoEntry *entries, size_t count)
 
void BNClearUndoEntries (BNFileMetadata *file)
 
BNUser * BNNewUserReference (BNUser *user)
 
void BNFreeUser (BNUser *user)
 
BNUser ** BNGetUsers (BNFileMetadata *file, size_t *count)
 
void BNFreeUserList (BNUser **users, size_t count)
 
char * BNGetUserName (BNUser *user)
 
char * BNGetUserEmail (BNUser *user)
 
char * BNGetUserId (BNUser *user)
 
bool BNOpenProject (BNFileMetadata *file)
 
void BNCloseProject (BNFileMetadata *file)
 
bool BNIsProjectOpen (BNFileMetadata *file)
 
char * BNGetCurrentView (BNFileMetadata *file)
 
uint64_t BNGetCurrentOffset (BNFileMetadata *file)
 
bool BNNavigate (BNFileMetadata *file, const char *view, uint64_t offset)
 
BNBinaryView * BNGetFileViewOfType (BNFileMetadata *file, const char *name)
 
char ** BNGetExistingViews (BNFileMetadata *file, size_t *count)
 
size_t BNFileMetadataGetSessionId (BNFileMetadata *file)
 
bool BNIsSnapshotDataAppliedWithoutError (BNFileMetadata *view)
 
BNBinaryView * BNNewViewReference (BNBinaryView *view)
 
void BNFreeBinaryView (BNBinaryView *view)
 
BNFileMetadata * BNGetFileForView (BNBinaryView *view)
 
char * BNGetViewType (BNBinaryView *view)
 
BNBinaryView * BNGetParentView (BNBinaryView *view)
 
size_t BNReadViewData (BNBinaryView *view, void *dest, uint64_t offset, size_t len)
 
BNDataBuffer * BNReadViewBuffer (BNBinaryView *view, uint64_t offset, size_t len)
 
size_t BNWriteViewData (BNBinaryView *view, uint64_t offset, const void *data, size_t len)
 
size_t BNWriteViewBuffer (BNBinaryView *view, uint64_t offset, BNDataBuffer *data)
 
size_t BNInsertViewData (BNBinaryView *view, uint64_t offset, const void *data, size_t len)
 
size_t BNInsertViewBuffer (BNBinaryView *view, uint64_t offset, BNDataBuffer *data)
 
size_t BNRemoveViewData (BNBinaryView *view, uint64_t offset, uint64_t len)
 
void BNNotifyDataWritten (BNBinaryView *view, uint64_t offset, size_t len)
 
void BNNotifyDataInserted (BNBinaryView *view, uint64_t offset, size_t len)
 
void BNNotifyDataRemoved (BNBinaryView *view, uint64_t offset, uint64_t len)
 
size_t BNGetEntropy (BNBinaryView *view, uint64_t offset, size_t len, size_t blockSize, float *result)
 
BNModificationStatus BNGetModification (BNBinaryView *view, uint64_t offset)
 
size_t BNGetModificationArray (BNBinaryView *view, uint64_t offset, BNModificationStatus *result, size_t len)
 
bool BNIsValidOffset (BNBinaryView *view, uint64_t offset)
 
bool BNIsOffsetReadable (BNBinaryView *view, uint64_t offset)
 
bool BNIsOffsetWritable (BNBinaryView *view, uint64_t offset)
 
bool BNIsOffsetExecutable (BNBinaryView *view, uint64_t offset)
 
bool BNIsOffsetBackedByFile (BNBinaryView *view, uint64_t offset)
 
bool BNIsOffsetCodeSemantics (BNBinaryView *view, uint64_t offset)
 
bool BNIsOffsetExternSemantics (BNBinaryView *view, uint64_t offset)
 
bool BNIsOffsetWritableSemantics (BNBinaryView *view, uint64_t offset)
 
uint64_t BNGetNextValidOffset (BNBinaryView *view, uint64_t offset)
 
uint64_t BNGetStartOffset (BNBinaryView *view)
 
uint64_t BNGetEndOffset (BNBinaryView *view)
 
uint64_t BNGetViewLength (BNBinaryView *view)
 
uint64_t BNGetEntryPoint (BNBinaryView *view)
 
BNArchitecture * BNGetDefaultArchitecture (BNBinaryView *view)
 
void BNSetDefaultArchitecture (BNBinaryView *view, BNArchitecture *arch)
 
BNPlatform * BNGetDefaultPlatform (BNBinaryView *view)
 
void BNSetDefaultPlatform (BNBinaryView *view, BNPlatform *platform)
 
BNEndianness BNGetDefaultEndianness (BNBinaryView *view)
 
bool BNIsRelocatable (BNBinaryView *view)
 
size_t BNGetViewAddressSize (BNBinaryView *view)
 
bool BNIsViewModified (BNBinaryView *view)
 
bool BNIsExecutableView (BNBinaryView *view)
 
bool BNSaveToFile (BNBinaryView *view, BNFileAccessor *file)
 
bool BNSaveToFilename (BNBinaryView *view, const char *filename)
 
void BNDefineRelocation (BNBinaryView *view, BNArchitecture *arch, BNRelocationInfo *info, uint64_t target, uint64_t reloc)
 
void BNDefineSymbolRelocation (BNBinaryView *view, BNArchitecture *arch, BNRelocationInfo *info, BNSymbol *target, uint64_t reloc)
 
BNRangeBNGetRelocationRanges (BNBinaryView *view, size_t *count)
 
BNRangeBNGetRelocationRangesAtAddress (BNBinaryView *view, uint64_t addr, size_t *count)
 
bool BNRangeContainsRelocation (BNBinaryView *view, uint64_t addr, size_t size)
 
void BNRegisterDataNotification (BNBinaryView *view, BNBinaryDataNotification *notify)
 
void BNUnregisterDataNotification (BNBinaryView *view, BNBinaryDataNotification *notify)
 
bool BNCanAssemble (BNBinaryView *view, BNArchitecture *arch)
 
bool BNIsNeverBranchPatchAvailable (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNIsAlwaysBranchPatchAvailable (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNIsInvertBranchPatchAvailable (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNIsSkipAndReturnZeroPatchAvailable (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNIsSkipAndReturnValuePatchAvailable (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNConvertToNop (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNAlwaysBranch (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNInvertBranch (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNSkipAndReturnValue (BNBinaryView *view, BNArchitecture *arch, uint64_t addr, uint64_t value)
 
size_t BNGetInstructionLength (BNBinaryView *view, BNArchitecture *arch, uint64_t addr)
 
bool BNFindNextData (BNBinaryView *view, uint64_t start, BNDataBuffer *data, uint64_t *result, BNFindFlag flags)
 
bool BNFindNextText (BNBinaryView *view, uint64_t start, const char *data, uint64_t *result, BNDisassemblySettings *settings, BNFindFlag flags, BNFunctionGraphType graph)
 
bool BNFindNextConstant (BNBinaryView *view, uint64_t start, uint64_t constant, uint64_t *result, BNDisassemblySettings *settings, BNFunctionGraphType graph)
 
bool BNFindNextDataWithProgress (BNBinaryView *view, uint64_t start, uint64_t end, BNDataBuffer *data, uint64_t *result, BNFindFlag flags, void *ctxt, bool(*progress)(void *ctxt, size_t current, size_t total))
 
bool BNFindNextTextWithProgress (BNBinaryView *view, uint64_t start, uint64_t end, const char *data, uint64_t *result, BNDisassemblySettings *settings, BNFindFlag flags, BNFunctionGraphType graph, void *ctxt, bool(*progress)(void *ctxt, size_t current, size_t total))
 
bool BNFindNextConstantWithProgress (BNBinaryView *view, uint64_t start, uint64_t end, uint64_t constant, uint64_t *result, BNDisassemblySettings *settings, BNFunctionGraphType graph, void *ctxt, bool(*progress)(void *ctxt, size_t current, size_t total))
 
bool BNFindAllDataWithProgress (BNBinaryView *view, uint64_t start, uint64_t end, BNDataBuffer *data, BNFindFlag flags, void *ctxt, bool(*progress)(void *ctxt, size_t current, size_t total), void *matchCtxt, bool(*matchCallback)(void *matchCtxt, uint64_t addr, BNDataBuffer *match))
 
bool BNFindAllTextWithProgress (BNBinaryView *view, uint64_t start, uint64_t end, const char *data, BNDisassemblySettings *settings, BNFindFlag flags, BNFunctionGraphType graph, void *ctxt, bool(*progress)(void *ctxt, size_t current, size_t total), void *matchCtxt, bool(*matchCallback)(void *matchCtxt, uint64_t addr, const char *match, BNLinearDisassemblyLine *line))
 
bool BNFindAllConstantWithProgress (BNBinaryView *view, uint64_t start, uint64_t end, uint64_t constant, BNDisassemblySettings *settings, BNFunctionGraphType graph, void *ctxt, bool(*progress)(void *ctxt, size_t current, size_t total), void *matchCtxt, bool(*matchCallback)(void *matchCtxt, uint64_t addr, BNLinearDisassemblyLine *line))
 
void BNAddAutoSegment (BNBinaryView *view, uint64_t start, uint64_t length, uint64_t dataOffset, uint64_t dataLength, uint32_t flags)
 
void BNRemoveAutoSegment (BNBinaryView *view, uint64_t start, uint64_t length)
 
void BNAddUserSegment (BNBinaryView *view, uint64_t start, uint64_t length, uint64_t dataOffset, uint64_t dataLength, uint32_t flags)
 
void BNRemoveUserSegment (BNBinaryView *view, uint64_t start, uint64_t length)
 
BNSegment ** BNGetSegments (BNBinaryView *view, size_t *count)
 
void BNFreeSegmentList (BNSegment **segments, size_t count)
 
BNSegment * BNGetSegmentAt (BNBinaryView *view, uint64_t addr)
 
bool BNGetAddressForDataOffset (BNBinaryView *view, uint64_t offset, uint64_t *addr)
 
void BNAddAutoSection (BNBinaryView *view, const char *name, uint64_t start, uint64_t length, BNSectionSemantics semantics, const char *type, uint64_t align, uint64_t entrySize, const char *linkedSection, const char *infoSection, uint64_t infoData)
 
void BNRemoveAutoSection (BNBinaryView *view, const char *name)
 
void BNAddUserSection (BNBinaryView *view, const char *name, uint64_t start, uint64_t length, BNSectionSemantics semantics, const char *type, uint64_t align, uint64_t entrySize, const char *linkedSection, const char *infoSection, uint64_t infoData)
 
void BNRemoveUserSection (BNBinaryView *view, const char *name)
 
BNSection ** BNGetSections (BNBinaryView *view, size_t *count)
 
BNSection ** BNGetSectionsAt (BNBinaryView *view, uint64_t addr, size_t *count)
 
void BNFreeSectionList (BNSection **sections, size_t count)
 
BNSection * BNGetSectionByName (BNBinaryView *view, const char *name)
 
char ** BNGetUniqueSectionNames (BNBinaryView *view, const char **names, size_t count)
 
BNNameSpaceBNGetNameSpaces (BNBinaryView *view, size_t *count)
 
void BNFreeNameSpaceList (BNNameSpace *nameSpace, size_t count)
 
BNNameSpace BNGetExternalNameSpace ()
 
BNNameSpace BNGetInternalNameSpace ()
 
void BNFreeNameSpace (BNNameSpace *name)
 
BNAddressRangeBNGetAllocatedRanges (BNBinaryView *view, size_t *count)
 
void BNFreeAddressRanges (BNAddressRange *ranges)
 
BNRegisterValueWithConfidence BNGetGlobalPointerValue (BNBinaryView *view)
 
BNBinaryView * BNCreateBinaryDataView (BNFileMetadata *file)
 
BNBinaryView * BNCreateBinaryDataViewFromBuffer (BNFileMetadata *file, BNDataBuffer *buf)
 
BNBinaryView * BNCreateBinaryDataViewFromData (BNFileMetadata *file, const void *data, size_t len)
 
BNBinaryView * BNCreateBinaryDataViewFromFilename (BNFileMetadata *file, const char *filename)
 
BNBinaryView * BNCreateBinaryDataViewFromFile (BNFileMetadata *file, BNFileAccessor *accessor)
 
BNBinaryView * BNCreateCustomBinaryView (const char *name, BNFileMetadata *file, BNBinaryView *parent, BNCustomBinaryView *view)
 
BNBinaryViewType * BNGetBinaryViewTypeByName (const char *name)
 
BNBinaryViewType ** BNGetBinaryViewTypes (size_t *count)
 
BNBinaryViewType ** BNGetBinaryViewTypesForData (BNBinaryView *data, size_t *count)
 
void BNFreeBinaryViewTypeList (BNBinaryViewType **types)
 
char * BNGetBinaryViewTypeName (BNBinaryViewType *type)
 
char * BNGetBinaryViewTypeLongName (BNBinaryViewType *type)
 
bool BNIsBinaryViewTypeDeprecated (BNBinaryViewType *type)
 
BNBinaryView * BNCreateBinaryViewOfType (BNBinaryViewType *type, BNBinaryView *data)
 
BNBinaryView * BNParseBinaryViewOfType (BNBinaryViewType *type, BNBinaryView *data)
 
bool BNIsBinaryViewTypeValidForData (BNBinaryViewType *type, BNBinaryView *data)
 
BNSettings * BNGetBinaryViewDefaultLoadSettingsForData (BNBinaryViewType *type, BNBinaryView *data)
 
BNSettings * BNGetBinaryViewLoadSettingsForData (BNBinaryViewType *type, BNBinaryView *data)
 
BNBinaryViewType * BNRegisterBinaryViewType (const char *name, const char *longName, BNCustomBinaryViewType *type)
 
void BNRegisterArchitectureForViewType (BNBinaryViewType *type, uint32_t id, BNEndianness endian, BNArchitecture *arch)
 
BNArchitecture * BNGetArchitectureForViewType (BNBinaryViewType *type, uint32_t id, BNEndianness endian)
 
void BNRegisterPlatformForViewType (BNBinaryViewType *type, uint32_t id, BNArchitecture *arch, BNPlatform *platform)
 
BNPlatform * BNGetPlatformForViewType (BNBinaryViewType *type, uint32_t id, BNArchitecture *arch)
 
void BNRegisterDefaultPlatformForViewType (BNBinaryViewType *type, BNArchitecture *arch, BNPlatform *platform)
 
void BNRegisterPlatformRecognizerForViewType (BNBinaryViewType *type, uint64_t id, BNEndianness endian, BNPlatform *(*callback)(void *ctx, BNBinaryView *view, BNMetadata *metadata), void *ctx)
 
BNPlatform * BNRecognizePlatformForViewType (BNBinaryViewType *type, uint64_t id, BNEndianness endian, BNBinaryView *view, BNMetadata *metadata)
 
void BNRegisterBinaryViewEvent (BNBinaryViewEventType type, void(*callback)(void *ctx, BNBinaryView *view), void *ctx)
 
BNBinaryReader * BNCreateBinaryReader (BNBinaryView *view)
 
void BNFreeBinaryReader (BNBinaryReader *stream)
 
BNEndianness BNGetBinaryReaderEndianness (BNBinaryReader *stream)
 
void BNSetBinaryReaderEndianness (BNBinaryReader *stream, BNEndianness endian)
 
bool BNReadData (BNBinaryReader *stream, void *dest, size_t len)
 
bool BNRead8 (BNBinaryReader *stream, uint8_t *result)
 
bool BNRead16 (BNBinaryReader *stream, uint16_t *result)
 
bool BNRead32 (BNBinaryReader *stream, uint32_t *result)
 
bool BNRead64 (BNBinaryReader *stream, uint64_t *result)
 
bool BNReadLE16 (BNBinaryReader *stream, uint16_t *result)
 
bool BNReadLE32 (BNBinaryReader *stream, uint32_t *result)
 
bool BNReadLE64 (BNBinaryReader *stream, uint64_t *result)
 
bool BNReadBE16 (BNBinaryReader *stream, uint16_t *result)
 
bool BNReadBE32 (BNBinaryReader *stream, uint32_t *result)
 
bool BNReadBE64 (BNBinaryReader *stream, uint64_t *result)
 
uint64_t BNGetReaderPosition (BNBinaryReader *stream)
 
void BNSeekBinaryReader (BNBinaryReader *stream, uint64_t offset)
 
void BNSeekBinaryReaderRelative (BNBinaryReader *stream, int64_t offset)
 
bool BNIsEndOfFile (BNBinaryReader *stream)
 
BNBinaryWriter * BNCreateBinaryWriter (BNBinaryView *view)
 
void BNFreeBinaryWriter (BNBinaryWriter *stream)
 
BNEndianness BNGetBinaryWriterEndianness (BNBinaryWriter *stream)
 
void BNSetBinaryWriterEndianness (BNBinaryWriter *stream, BNEndianness endian)
 
bool BNWriteData (BNBinaryWriter *stream, const void *src, size_t len)
 
bool BNWrite8 (BNBinaryWriter *stream, uint8_t val)
 
bool BNWrite16 (BNBinaryWriter *stream, uint16_t val)
 
bool BNWrite32 (BNBinaryWriter *stream, uint32_t val)
 
bool BNWrite64 (BNBinaryWriter *stream, uint64_t val)
 
bool BNWriteLE16 (BNBinaryWriter *stream, uint16_t val)
 
bool BNWriteLE32 (BNBinaryWriter *stream, uint32_t val)
 
bool BNWriteLE64 (BNBinaryWriter *stream, uint64_t val)
 
bool BNWriteBE16 (BNBinaryWriter *stream, uint16_t val)
 
bool BNWriteBE32 (BNBinaryWriter *stream, uint32_t val)
 
bool BNWriteBE64 (BNBinaryWriter *stream, uint64_t val)
 
uint64_t BNGetWriterPosition (BNBinaryWriter *stream)
 
void BNSeekBinaryWriter (BNBinaryWriter *stream, uint64_t offset)
 
void BNSeekBinaryWriterRelative (BNBinaryWriter *stream, int64_t offset)
 
BNTransform * BNGetTransformByName (const char *name)
 
BNTransform ** BNGetTransformTypeList (size_t *count)
 
void BNFreeTransformTypeList (BNTransform **xforms)
 
BNTransform * BNRegisterTransformType (BNTransformType type, const char *name, const char *longName, const char *group, BNCustomTransform *xform)
 
BNTransformType BNGetTransformType (BNTransform *xform)
 
char * BNGetTransformName (BNTransform *xform)
 
char * BNGetTransformLongName (BNTransform *xform)
 
char * BNGetTransformGroup (BNTransform *xform)
 
BNTransformParameterInfoBNGetTransformParameterList (BNTransform *xform, size_t *count)
 
void BNFreeTransformParameterList (BNTransformParameterInfo *params, size_t count)
 
bool BNDecode (BNTransform *xform, BNDataBuffer *input, BNDataBuffer *output, BNTransformParameter *params, size_t paramCount)
 
bool BNEncode (BNTransform *xform, BNDataBuffer *input, BNDataBuffer *output, BNTransformParameter *params, size_t paramCount)
 
BNArchitecture * BNGetArchitectureByName (const char *name)
 
BNArchitecture ** BNGetArchitectureList (size_t *count)
 
void BNFreeArchitectureList (BNArchitecture **archs)
 
BNArchitecture * BNRegisterArchitecture (const char *name, BNCustomArchitecture *arch)
 
BNArchitecture * BNRegisterArchitectureExtension (const char *name, BNArchitecture *base, BNCustomArchitecture *arch)
 
void BNAddArchitectureRedirection (BNArchitecture *arch, BNArchitecture *from, BNArchitecture *to)
 
BNArchitecture * BNRegisterArchitectureHook (BNArchitecture *base, BNCustomArchitecture *arch)
 
void BNFinalizeArchitectureHook (BNArchitecture *base)
 
BNArchitecture * BNGetNativeTypeParserArchitecture ()
 
char * BNGetArchitectureName (BNArchitecture *arch)
 
BNEndianness BNGetArchitectureEndianness (BNArchitecture *arch)
 
size_t BNGetArchitectureAddressSize (BNArchitecture *arch)
 
size_t BNGetArchitectureDefaultIntegerSize (BNArchitecture *arch)
 
size_t BNGetArchitectureInstructionAlignment (BNArchitecture *arch)
 
size_t BNGetArchitectureMaxInstructionLength (BNArchitecture *arch)
 
size_t BNGetArchitectureOpcodeDisplayLength (BNArchitecture *arch)
 
BNArchitecture * BNGetAssociatedArchitectureByAddress (BNArchitecture *arch, uint64_t *addr)
 
bool BNGetInstructionInfo (BNArchitecture *arch, const uint8_t *data, uint64_t addr, size_t maxLen, BNInstructionInfo *result)
 
bool BNGetInstructionText (BNArchitecture *arch, const uint8_t *data, uint64_t addr, size_t *len, BNInstructionTextToken **result, size_t *count)
 
bool BNGetInstructionLowLevelIL (BNArchitecture *arch, const uint8_t *data, uint64_t addr, size_t *len, BNLowLevelILFunction *il)
 
void BNFreeInstructionText (BNInstructionTextToken *tokens, size_t count)
 
void BNFreeInstructionTextLines (BNInstructionTextLine *lines, size_t count)
 
char * BNGetArchitectureRegisterName (BNArchitecture *arch, uint32_t reg)
 
char * BNGetArchitectureFlagName (BNArchitecture *arch, uint32_t flag)
 
char * BNGetArchitectureFlagWriteTypeName (BNArchitecture *arch, uint32_t flags)
 
char * BNGetArchitectureSemanticFlagClassName (BNArchitecture *arch, uint32_t semClass)
 
char * BNGetArchitectureSemanticFlagGroupName (BNArchitecture *arch, uint32_t semGroup)
 
uint32_t * BNGetFullWidthArchitectureRegisters (BNArchitecture *arch, size_t *count)
 
uint32_t * BNGetAllArchitectureRegisters (BNArchitecture *arch, size_t *count)
 
uint32_t * BNGetAllArchitectureFlags (BNArchitecture *arch, size_t *count)
 
uint32_t * BNGetAllArchitectureFlagWriteTypes (BNArchitecture *arch, size_t *count)
 
uint32_t * BNGetAllArchitectureSemanticFlagClasses (BNArchitecture *arch, size_t *count)
 
uint32_t * BNGetAllArchitectureSemanticFlagGroups (BNArchitecture *arch, size_t *count)
 
BNFlagRole BNGetArchitectureFlagRole (BNArchitecture *arch, uint32_t flag, uint32_t semClass)
 
uint32_t * BNGetArchitectureFlagsRequiredForFlagCondition (BNArchitecture *arch, BNLowLevelILFlagCondition cond, uint32_t semClass, size_t *count)
 
uint32_t * BNGetArchitectureFlagsRequiredForSemanticFlagGroup (BNArchitecture *arch, uint32_t semGroup, size_t *count)
 
BNFlagConditionForSemanticClassBNGetArchitectureFlagConditionsForSemanticFlagGroup (BNArchitecture *arch, uint32_t semGroup, size_t *count)
 
void BNFreeFlagConditionsForSemanticFlagGroup (BNFlagConditionForSemanticClass *conditions)
 
uint32_t * BNGetArchitectureFlagsWrittenByFlagWriteType (BNArchitecture *arch, uint32_t writeType, size_t *count)
 
uint32_t BNGetArchitectureSemanticClassForFlagWriteType (BNArchitecture *arch, uint32_t writeType)
 
size_t BNGetArchitectureFlagWriteLowLevelIL (BNArchitecture *arch, BNLowLevelILOperation op, size_t size, uint32_t flagWriteType, uint32_t flag, BNRegisterOrConstant *operands, size_t operandCount, BNLowLevelILFunction *il)
 
size_t BNGetDefaultArchitectureFlagWriteLowLevelIL (BNArchitecture *arch, BNLowLevelILOperation op, size_t size, BNFlagRole role, BNRegisterOrConstant *operands, size_t operandCount, BNLowLevelILFunction *il)
 
size_t BNGetArchitectureFlagConditionLowLevelIL (BNArchitecture *arch, BNLowLevelILFlagCondition cond, uint32_t semClass, BNLowLevelILFunction *il)
 
size_t BNGetDefaultArchitectureFlagConditionLowLevelIL (BNArchitecture *arch, BNLowLevelILFlagCondition cond, uint32_t semClass, BNLowLevelILFunction *il)
 
size_t BNGetArchitectureSemanticFlagGroupLowLevelIL (BNArchitecture *arch, uint32_t semGroup, BNLowLevelILFunction *il)
 
uint32_t * BNGetModifiedArchitectureRegistersOnWrite (BNArchitecture *arch, uint32_t reg, size_t *count)
 
void BNFreeRegisterList (uint32_t *regs)
 
BNRegisterInfo BNGetArchitectureRegisterInfo (BNArchitecture *arch, uint32_t reg)
 
uint32_t BNGetArchitectureStackPointerRegister (BNArchitecture *arch)
 
uint32_t BNGetArchitectureLinkRegister (BNArchitecture *arch)
 
uint32_t * BNGetArchitectureGlobalRegisters (BNArchitecture *arch, size_t *count)
 
bool BNIsArchitectureGlobalRegister (BNArchitecture *arch, uint32_t reg)
 
uint32_t * BNGetArchitectureSystemRegisters (BNArchitecture *arch, size_t *count)
 
bool BNIsArchitectureSystemRegister (BNArchitecture *arch, uint32_t reg)
 
uint32_t BNGetArchitectureRegisterByName (BNArchitecture *arch, const char *name)
 
char * BNGetArchitectureRegisterStackName (BNArchitecture *arch, uint32_t regStack)
 
uint32_t * BNGetAllArchitectureRegisterStacks (BNArchitecture *arch, size_t *count)
 
BNRegisterStackInfo BNGetArchitectureRegisterStackInfo (BNArchitecture *arch, uint32_t regStack)
 
uint32_t BNGetArchitectureRegisterStackForRegister (BNArchitecture *arch, uint32_t reg)
 
char * BNGetArchitectureIntrinsicName (BNArchitecture *arch, uint32_t intrinsic)
 
uint32_t * BNGetAllArchitectureIntrinsics (BNArchitecture *arch, size_t *count)
 
BNNameAndTypeBNGetArchitectureIntrinsicInputs (BNArchitecture *arch, uint32_t intrinsic, size_t *count)
 
void BNFreeNameAndTypeList (BNNameAndType *nt, size_t count)
 
BNTypeWithConfidenceBNGetArchitectureIntrinsicOutputs (BNArchitecture *arch, uint32_t intrinsic, size_t *count)
 
void BNFreeOutputTypeList (BNTypeWithConfidence *types, size_t count)
 
bool BNCanArchitectureAssemble (BNArchitecture *arch)
 
bool BNAssemble (BNArchitecture *arch, const char *code, uint64_t addr, BNDataBuffer *result, char **errors)
 
bool BNIsArchitectureNeverBranchPatchAvailable (BNArchitecture *arch, const uint8_t *data, uint64_t addr, size_t len)
 
bool BNIsArchitectureAlwaysBranchPatchAvailable (BNArchitecture *arch, const uint8_t *data, uint64_t addr, size_t len)
 
bool BNIsArchitectureInvertBranchPatchAvailable (BNArchitecture *arch, const uint8_t *data, uint64_t addr, size_t len)
 
bool BNIsArchitectureSkipAndReturnZeroPatchAvailable (BNArchitecture *arch, const uint8_t *data, uint64_t addr, size_t len)
 
bool BNIsArchitectureSkipAndReturnValuePatchAvailable (BNArchitecture *arch, const uint8_t *data, uint64_t addr, size_t len)
 
bool BNArchitectureConvertToNop (BNArchitecture *arch, uint8_t *data, uint64_t addr, size_t len)
 
bool BNArchitectureAlwaysBranch (BNArchitecture *arch, uint8_t *data, uint64_t addr, size_t len)
 
bool BNArchitectureInvertBranch (BNArchitecture *arch, uint8_t *data, uint64_t addr, size_t len)
 
bool BNArchitectureSkipAndReturnValue (BNArchitecture *arch, uint8_t *data, uint64_t addr, size_t len, uint64_t value)
 
void BNRegisterArchitectureFunctionRecognizer (BNArchitecture *arch, BNFunctionRecognizer *rec)
 
bool BNIsBinaryViewTypeArchitectureConstantDefined (BNArchitecture *arch, const char *type, const char *name)
 
uint64_t BNGetBinaryViewTypeArchitectureConstant (BNArchitecture *arch, const char *type, const char *name, uint64_t defaultValue)
 
void BNSetBinaryViewTypeArchitectureConstant (BNArchitecture *arch, const char *type, const char *name, uint64_t value)
 
void BNArchitectureRegisterRelocationHandler (BNArchitecture *arch, const char *viewName, BNRelocationHandler *handler)
 
BNRelocationHandler * BNCreateRelocationHandler (BNCustomRelocationHandler *handler)
 
BNRelocationHandler * BNArchitectureGetRelocationHandler (BNArchitecture *arch, const char *viewName)
 
BNRelocationHandler * BNNewRelocationHandlerReference (BNRelocationHandler *handler)
 
void BNFreeRelocationHandler (BNRelocationHandler *handler)
 
bool BNRelocationHandlerGetRelocationInfo (BNRelocationHandler *handler, BNBinaryView *data, BNArchitecture *arch, BNRelocationInfo *info, size_t infoCount)
 
bool BNRelocationHandlerApplyRelocation (BNRelocationHandler *handler, BNBinaryView *view, BNArchitecture *arch, BNRelocation *reloc, uint8_t *dest, size_t len)
 
bool BNRelocationHandlerDefaultApplyRelocation (BNRelocationHandler *handler, BNBinaryView *view, BNArchitecture *arch, BNRelocation *reloc, uint8_t *dest, size_t len)
 
size_t BNRelocationHandlerGetOperandForExternalRelocation (BNRelocationHandler *handler, const uint8_t *data, uint64_t addr, size_t length, const BNLowLevelILFunction *il, BNRelocation *relocation)
 
void BNAddAnalysisOption (BNBinaryView *view, const char *name)
 
void BNAddFunctionForAnalysis (BNBinaryView *view, BNPlatform *platform, uint64_t addr)
 
void BNAddEntryPointForAnalysis (BNBinaryView *view, BNPlatform *platform, uint64_t addr)
 
void BNRemoveAnalysisFunction (BNBinaryView *view, BNFunction *func)
 
BNFunction * BNCreateUserFunction (BNBinaryView *view, BNPlatform *platform, uint64_t addr)
 
void BNRemoveUserFunction (BNBinaryView *view, BNFunction *func)
 
bool BNHasInitialAnalysis (BNBinaryView *view)
 
void BNSetAnalysisHold (BNBinaryView *view, bool enable)
 
void BNUpdateAnalysisAndWait (BNBinaryView *view)
 
void BNUpdateAnalysis (BNBinaryView *view)
 
void BNAbortAnalysis (BNBinaryView *view)
 
bool BNIsFunctionUpdateNeeded (BNFunction *func)
 
void BNRequestAdvancedFunctionAnalysisData (BNFunction *func)
 
void BNReleaseAdvancedFunctionAnalysisData (BNFunction *func)
 
void BNReleaseAdvancedFunctionAnalysisDataMultiple (BNFunction *func, size_t count)
 
BNFunction * BNNewFunctionReference (BNFunction *func)
 
void BNFreeFunction (BNFunction *func)
 
BNFunction ** BNGetAnalysisFunctionList (BNBinaryView *view, size_t *count)
 
void BNFreeFunctionList (BNFunction **funcs, size_t count)
 
bool BNHasFunctions (BNBinaryView *view)
 
bool BNHasSymbols (BNBinaryView *view)
 
bool BNHasDataVariables (BNBinaryView *view)
 
BNFunction * BNGetAnalysisFunction (BNBinaryView *view, BNPlatform *platform, uint64_t addr)
 
BNFunction * BNGetRecentAnalysisFunctionForAddress (BNBinaryView *view, uint64_t addr)
 
BNFunction ** BNGetAnalysisFunctionsForAddress (BNBinaryView *view, uint64_t addr, size_t *count)
 
BNFunction ** BNGetAnalysisFunctionsContainingAddress (BNBinaryView *view, uint64_t addr, size_t *count)
 
BNFunction * BNGetAnalysisEntryPoint (BNBinaryView *view)
 
char * BNGetGlobalCommentForAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t * BNGetGlobalCommentedAddresses (BNBinaryView *view, size_t *count)
 
void BNSetGlobalCommentForAddress (BNBinaryView *view, uint64_t addr, const char *comment)
 
BNBinaryView * BNGetFunctionData (BNFunction *func)
 
BNArchitecture * BNGetFunctionArchitecture (BNFunction *func)
 
BNPlatform * BNGetFunctionPlatform (BNFunction *func)
 
uint64_t BNGetFunctionStart (BNFunction *func)
 
BNSymbol * BNGetFunctionSymbol (BNFunction *func)
 
bool BNWasFunctionAutomaticallyDiscovered (BNFunction *func)
 
bool BNFunctionHasUserAnnotations (BNFunction *func)
 
BNBoolWithConfidence BNCanFunctionReturn (BNFunction *func)
 
void BNSetFunctionAutoType (BNFunction *func, BNType *type)
 
void BNSetFunctionUserType (BNFunction *func, BNType *type)
 
char * BNGetFunctionComment (BNFunction *func)
 
char * BNGetCommentForAddress (BNFunction *func, uint64_t addr)
 
uint64_t * BNGetCommentedAddresses (BNFunction *func, size_t *count)
 
void BNFreeAddressList (uint64_t *addrs)
 
void BNSetFunctionComment (BNFunction *func, const char *comment)
 
void BNSetCommentForAddress (BNFunction *func, uint64_t addr, const char *comment)
 
void BNAddUserCodeReference (BNFunction *func, BNArchitecture *fromArch, uint64_t fromAddr, uint64_t toAddr)
 
void BNRemoveUserCodeReference (BNFunction *func, BNArchitecture *fromArch, uint64_t fromAddr, uint64_t toAddr)
 
void BNAddUserTypeReference (BNFunction *func, BNArchitecture *fromArch, uint64_t fromAddr, BNQualifiedName *name)
 
void BNRemoveUserTypeReference (BNFunction *func, BNArchitecture *fromArch, uint64_t fromAddr, BNQualifiedName *name)
 
void BNAddUserTypeFieldReference (BNFunction *func, BNArchitecture *fromArch, uint64_t fromAddr, BNQualifiedName *name, uint64_t offset, size_t size)
 
void BNRemoveUserTypeFieldReference (BNFunction *func, BNArchitecture *fromArch, uint64_t fromAddr, BNQualifiedName *name, uint64_t offset, size_t size)
 
BNBasicBlock * BNNewBasicBlockReference (BNBasicBlock *block)
 
void BNFreeBasicBlock (BNBasicBlock *block)
 
BNBasicBlock ** BNGetFunctionBasicBlockList (BNFunction *func, size_t *count)
 
void BNFreeBasicBlockList (BNBasicBlock **blocks, size_t count)
 
BNBasicBlock * BNGetFunctionBasicBlockAtAddress (BNFunction *func, BNArchitecture *arch, uint64_t addr)
 
BNBasicBlock * BNGetRecentBasicBlockForAddress (BNBinaryView *view, uint64_t addr)
 
BNBasicBlock ** BNGetBasicBlocksForAddress (BNBinaryView *view, uint64_t addr, size_t *count)
 
BNBasicBlock ** BNGetBasicBlocksStartingAtAddress (BNBinaryView *view, uint64_t addr, size_t *count)
 
uint64_t BNGetFunctionHighestAddress (BNFunction *func)
 
uint64_t BNGetFunctionLowestAddress (BNFunction *func)
 
BNAddressRangeBNGetFunctionAddressRanges (BNFunction *func, size_t *count)
 
BNLowLevelILFunction * BNGetFunctionLowLevelIL (BNFunction *func)
 
BNLowLevelILFunction * BNGetFunctionLowLevelILIfAvailable (BNFunction *func)
 
size_t BNGetLowLevelILForInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr)
 
size_t * BNGetLowLevelILInstructionsForAddress (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
size_t * BNGetLowLevelILExitsForInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
void BNFreeILInstructionList (size_t *list)
 
BNMediumLevelILFunction * BNGetFunctionMediumLevelIL (BNFunction *func)
 
BNMediumLevelILFunction * BNGetFunctionMediumLevelILIfAvailable (BNFunction *func)
 
BNMediumLevelILFunction * BNGetFunctionMappedMediumLevelIL (BNFunction *func)
 
BNMediumLevelILFunction * BNGetFunctionMappedMediumLevelILIfAvailable (BNFunction *func)
 
BNHighLevelILFunction * BNGetFunctionHighLevelIL (BNFunction *func)
 
BNHighLevelILFunction * BNGetFunctionHighLevelILIfAvailable (BNFunction *func)
 
BNLanguageRepresentationFunction * BNGetFunctionLanguageRepresentation (BNFunction *func)
 
BNLanguageRepresentationFunction * BNGetFunctionLanguageRepresentationIfAvailable (BNFunction *func)
 
BNRegisterValue BNGetRegisterValueAtInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, uint32_t reg)
 
BNRegisterValue BNGetRegisterValueAfterInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, uint32_t reg)
 
BNRegisterValue BNGetStackContentsAtInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, int64_t offset, size_t size)
 
BNRegisterValue BNGetStackContentsAfterInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, int64_t offset, size_t size)
 
BNRegisterValue BNGetParameterValueAtInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNType *functionType, size_t i)
 
BNRegisterValue BNGetParameterValueAtLowLevelILInstruction (BNFunction *func, size_t instr, BNType *functionType, size_t i)
 
void BNFreePossibleValueSet (BNPossibleValueSet *value)
 
uint32_t * BNGetRegistersReadByInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
uint32_t * BNGetRegistersWrittenByInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNStackVariableReferenceBNGetStackVariablesReferencedByInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNStackVariableReferenceBNGetStackVariablesReferencedByInstructionIfAvailable (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
void BNFreeStackVariableReferenceList (BNStackVariableReference *refs, size_t count)
 
BNConstantReferenceBNGetConstantsReferencedByInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNConstantReferenceBNGetConstantsReferencedByInstructionIfAvailable (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
void BNFreeConstantReferenceList (BNConstantReference *refs)
 
BNLowLevelILFunction * BNGetFunctionLiftedIL (BNFunction *func)
 
BNLowLevelILFunction * BNGetFunctionLiftedILIfAvailable (BNFunction *func)
 
size_t BNGetLiftedILForInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr)
 
size_t * BNGetLiftedILInstructionsForAddress (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
size_t * BNGetLiftedILFlagUsesForDefinition (BNFunction *func, size_t i, uint32_t flag, size_t *count)
 
size_t * BNGetLiftedILFlagDefinitionsForUse (BNFunction *func, size_t i, uint32_t flag, size_t *count)
 
uint32_t * BNGetFlagsReadByLiftedILInstruction (BNFunction *func, size_t i, size_t *count)
 
uint32_t * BNGetFlagsWrittenByLiftedILInstruction (BNFunction *func, size_t i, size_t *count)
 
BNType * BNGetFunctionType (BNFunction *func)
 
BNTypeWithConfidence BNGetFunctionReturnType (BNFunction *func)
 
BNRegisterSetWithConfidence BNGetFunctionReturnRegisters (BNFunction *func)
 
BNCallingConventionWithConfidence BNGetFunctionCallingConvention (BNFunction *func)
 
BNParameterVariablesWithConfidence BNGetFunctionParameterVariables (BNFunction *func)
 
void BNFreeParameterVariables (BNParameterVariablesWithConfidence *vars)
 
BNBoolWithConfidence BNFunctionHasVariableArguments (BNFunction *func)
 
BNOffsetWithConfidence BNGetFunctionStackAdjustment (BNFunction *func)
 
BNRegisterStackAdjustmentBNGetFunctionRegisterStackAdjustments (BNFunction *func, size_t *count)
 
void BNFreeRegisterStackAdjustments (BNRegisterStackAdjustment *adjustments)
 
BNRegisterSetWithConfidence BNGetFunctionClobberedRegisters (BNFunction *func)
 
void BNFreeRegisterSet (BNRegisterSetWithConfidence *regs)
 
void BNSetAutoFunctionReturnType (BNFunction *func, BNTypeWithConfidence *type)
 
void BNSetAutoFunctionReturnRegisters (BNFunction *func, BNRegisterSetWithConfidence *regs)
 
void BNSetAutoFunctionCallingConvention (BNFunction *func, BNCallingConventionWithConfidence *convention)
 
void BNSetAutoFunctionParameterVariables (BNFunction *func, BNParameterVariablesWithConfidence *vars)
 
void BNSetAutoFunctionHasVariableArguments (BNFunction *func, BNBoolWithConfidence *varArgs)
 
void BNSetAutoFunctionCanReturn (BNFunction *func, BNBoolWithConfidence *returns)
 
void BNSetAutoFunctionStackAdjustment (BNFunction *func, BNOffsetWithConfidence *stackAdjust)
 
void BNSetAutoFunctionRegisterStackAdjustments (BNFunction *func, BNRegisterStackAdjustment *adjustments, size_t count)
 
void BNSetAutoFunctionClobberedRegisters (BNFunction *func, BNRegisterSetWithConfidence *regs)
 
void BNSetUserFunctionReturnType (BNFunction *func, BNTypeWithConfidence *type)
 
void BNSetUserFunctionReturnRegisters (BNFunction *func, BNRegisterSetWithConfidence *regs)
 
void BNSetUserFunctionCallingConvention (BNFunction *func, BNCallingConventionWithConfidence *convention)
 
void BNSetUserFunctionParameterVariables (BNFunction *func, BNParameterVariablesWithConfidence *vars)
 
void BNSetUserFunctionHasVariableArguments (BNFunction *func, BNBoolWithConfidence *varArgs)
 
void BNSetUserFunctionCanReturn (BNFunction *func, BNBoolWithConfidence *returns)
 
void BNSetUserFunctionStackAdjustment (BNFunction *func, BNOffsetWithConfidence *stackAdjust)
 
void BNSetUserFunctionRegisterStackAdjustments (BNFunction *func, BNRegisterStackAdjustment *adjustments, size_t count)
 
void BNSetUserFunctionClobberedRegisters (BNFunction *func, BNRegisterSetWithConfidence *regs)
 
void BNApplyImportedTypes (BNFunction *func, BNSymbol *sym, BNType *type)
 
void BNApplyAutoDiscoveredFunctionType (BNFunction *func, BNType *type)
 
bool BNFunctionHasExplicitlyDefinedType (BNFunction *func)
 
BNDisassemblyTextLineBNGetFunctionTypeTokens (BNFunction *func, BNDisassemblySettings *settings, size_t *count)
 
BNRegisterValueWithConfidence BNGetFunctionGlobalPointerValue (BNFunction *func)
 
BNRegisterValueWithConfidence BNGetFunctionRegisterValueAtExit (BNFunction *func, uint32_t reg)
 
bool BNGetInstructionContainingAddress (BNFunction *func, BNArchitecture *arch, uint64_t addr, uint64_t *start)
 
BNFunction * BNGetBasicBlockFunction (BNBasicBlock *block)
 
BNArchitecture * BNGetBasicBlockArchitecture (BNBasicBlock *block)
 
BNBasicBlock * BNGetBasicBlockSource (BNBasicBlock *block)
 
uint64_t BNGetBasicBlockStart (BNBasicBlock *block)
 
uint64_t BNGetBasicBlockEnd (BNBasicBlock *block)
 
uint64_t BNGetBasicBlockLength (BNBasicBlock *block)
 
BNBasicBlockEdgeBNGetBasicBlockOutgoingEdges (BNBasicBlock *block, size_t *count)
 
BNBasicBlockEdgeBNGetBasicBlockIncomingEdges (BNBasicBlock *block, size_t *count)
 
void BNFreeBasicBlockEdgeList (BNBasicBlockEdge *edges, size_t count)
 
bool BNBasicBlockHasUndeterminedOutgoingEdges (BNBasicBlock *block)
 
bool BNBasicBlockCanExit (BNBasicBlock *block)
 
void BNBasicBlockSetCanExit (BNBasicBlock *block, bool value)
 
bool BNBasicBlockHasInvalidInstructions (BNBasicBlock *block)
 
size_t BNGetBasicBlockIndex (BNBasicBlock *block)
 
BNBasicBlock ** BNGetBasicBlockDominators (BNBasicBlock *block, size_t *count, bool post)
 
BNBasicBlock ** BNGetBasicBlockStrictDominators (BNBasicBlock *block, size_t *count, bool post)
 
BNBasicBlock * BNGetBasicBlockImmediateDominator (BNBasicBlock *block, bool post)
 
BNBasicBlock ** BNGetBasicBlockDominatorTreeChildren (BNBasicBlock *block, size_t *count, bool post)
 
BNBasicBlock ** BNGetBasicBlockDominanceFrontier (BNBasicBlock *block, size_t *count, bool post)
 
BNBasicBlock ** BNGetBasicBlockIteratedDominanceFrontier (BNBasicBlock **blocks, size_t incomingCount, size_t *outputCount)
 
bool BNIsILBasicBlock (BNBasicBlock *block)
 
bool BNIsLowLevelILBasicBlock (BNBasicBlock *block)
 
bool BNIsMediumLevelILBasicBlock (BNBasicBlock *block)
 
bool BNIsHighLevelILBasicBlock (BNBasicBlock *block)
 
BNFunctionGraphType BNGetBasicBlockFunctionGraphType (BNBasicBlock *block)
 
BNLowLevelILFunction * BNGetBasicBlockLowLevelILFunction (BNBasicBlock *block)
 
BNMediumLevelILFunction * BNGetBasicBlockMediumLevelILFunction (BNBasicBlock *block)
 
BNHighLevelILFunction * BNGetBasicBlockHighLevelILFunction (BNBasicBlock *block)
 
bool BNGetBasicBlockInstructionContainingAddress (BNBasicBlock *block, uint64_t addr, uint64_t *start)
 
BNBasicBlock * BNGetBasicBlockSourceBlock (BNBasicBlock *block)
 
BNDisassemblyTextLineBNGetBasicBlockDisassemblyText (BNBasicBlock *block, BNDisassemblySettings *settings, size_t *count)
 
void BNFreeDisassemblyTextLines (BNDisassemblyTextLine *lines, size_t count)
 
char * BNGetDisplayStringForInteger (BNBinaryView *binaryView, BNIntegerDisplayType type, uint64_t value, size_t inputWidth, bool isSigned)
 
BNDisassemblyTextRenderer * BNCreateDisassemblyTextRenderer (BNFunction *func, BNDisassemblySettings *settings)
 
BNDisassemblyTextRenderer * BNCreateLowLevelILDisassemblyTextRenderer (BNLowLevelILFunction *func, BNDisassemblySettings *settings)
 
BNDisassemblyTextRenderer * BNCreateMediumLevelILDisassemblyTextRenderer (BNMediumLevelILFunction *func, BNDisassemblySettings *settings)
 
BNDisassemblyTextRenderer * BNCreateHighLevelILDisassemblyTextRenderer (BNHighLevelILFunction *func, BNDisassemblySettings *settings)
 
BNDisassemblyTextRenderer * BNNewDisassemblyTextRendererReference (BNDisassemblyTextRenderer *renderer)
 
void BNFreeDisassemblyTextRenderer (BNDisassemblyTextRenderer *renderer)
 
BNFunction * BNGetDisassemblyTextRendererFunction (BNDisassemblyTextRenderer *renderer)
 
BNLowLevelILFunction * BNGetDisassemblyTextRendererLowLevelILFunction (BNDisassemblyTextRenderer *renderer)
 
BNMediumLevelILFunction * BNGetDisassemblyTextRendererMediumLevelILFunction (BNDisassemblyTextRenderer *renderer)
 
BNHighLevelILFunction * BNGetDisassemblyTextRendererHighLevelILFunction (BNDisassemblyTextRenderer *renderer)
 
BNBasicBlock * BNGetDisassemblyTextRendererBasicBlock (BNDisassemblyTextRenderer *renderer)
 
BNArchitecture * BNGetDisassemblyTextRendererArchitecture (BNDisassemblyTextRenderer *renderer)
 
BNDisassemblySettings * BNGetDisassemblyTextRendererSettings (BNDisassemblyTextRenderer *renderer)
 
void BNSetDisassemblyTextRendererBasicBlock (BNDisassemblyTextRenderer *renderer, BNBasicBlock *block)
 
void BNSetDisassemblyTextRendererArchitecture (BNDisassemblyTextRenderer *renderer, BNArchitecture *arch)
 
void BNSetDisassemblyTextRendererSettings (BNDisassemblyTextRenderer *renderer, BNDisassemblySettings *settings)
 
bool BNIsILDisassemblyTextRenderer (BNDisassemblyTextRenderer *renderer)
 
bool BNDisassemblyTextRendererHasDataFlow (BNDisassemblyTextRenderer *renderer)
 
BNInstructionTextTokenBNGetDisassemblyTextRendererInstructionAnnotations (BNDisassemblyTextRenderer *renderer, uint64_t addr, size_t *count)
 
bool BNGetDisassemblyTextRendererInstructionText (BNDisassemblyTextRenderer *renderer, uint64_t addr, size_t *len, BNDisassemblyTextLine **result, size_t *count)
 
bool BNGetDisassemblyTextRendererLines (BNDisassemblyTextRenderer *renderer, uint64_t addr, size_t *len, BNDisassemblyTextLine **result, size_t *count)
 
BNDisassemblyTextLineBNPostProcessDisassemblyTextRendererLines (BNDisassemblyTextRenderer *renderer, uint64_t addr, size_t len, BNDisassemblyTextLine *inLines, size_t inCount, size_t *outCount, const char *indentSpaces)
 
void BNResetDisassemblyTextRendererDeduplicatedComments (BNDisassemblyTextRenderer *renderer)
 
bool BNGetDisassemblyTextRendererSymbolTokens (BNDisassemblyTextRenderer *renderer, uint64_t addr, size_t size, size_t operand, BNInstructionTextToken **result, size_t *count)
 
BNInstructionTextTokenBNGetDisassemblyTextRendererStackVariableReferenceTokens (BNDisassemblyTextRenderer *renderer, BNStackVariableReference *ref, size_t *count)
 
bool BNIsIntegerToken (BNInstructionTextTokenType type)
 
BNInstructionTextTokenBNGetDisassemblyTextRendererIntegerTokens (BNDisassemblyTextRenderer *renderer, BNInstructionTextToken *token, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNDisassemblyTextLineBNDisassemblyTextRendererWrapComment (BNDisassemblyTextRenderer *renderer, const BNDisassemblyTextLine *inLine, size_t *outLineCount, const char *comment, bool hasAutoAnnotations, const char *leadingSpaces, const char *indentSpaces)
 
void BNMarkFunctionAsRecentlyUsed (BNFunction *func)
 
void BNMarkBasicBlockAsRecentlyUsed (BNBasicBlock *block)
 
BNReferenceSourceBNGetCodeReferences (BNBinaryView *view, uint64_t addr, size_t *count)
 
BNReferenceSourceBNGetCodeReferencesInRange (BNBinaryView *view, uint64_t addr, uint64_t len, size_t *count)
 
void BNFreeCodeReferences (BNReferenceSource *refs, size_t count)
 
void BNFreeTypeFieldReferences (BNTypeFieldReference *refs, size_t count)
 
void BNFreeILReferences (BNILReferenceSource *refs, size_t count)
 
uint64_t * BNGetCodeReferencesFrom (BNBinaryView *view, BNReferenceSource *src, size_t *count)
 
uint64_t * BNGetCodeReferencesFromInRange (BNBinaryView *view, BNReferenceSource *src, uint64_t len, size_t *count)
 
uint64_t * BNGetDataReferences (BNBinaryView *view, uint64_t addr, size_t *count)
 
uint64_t * BNGetDataReferencesInRange (BNBinaryView *view, uint64_t addr, uint64_t len, size_t *count)
 
uint64_t * BNGetDataReferencesFrom (BNBinaryView *view, uint64_t addr, size_t *count)
 
uint64_t * BNGetDataReferencesFromInRange (BNBinaryView *view, uint64_t addr, uint64_t len, size_t *count)
 
void BNAddUserDataReference (BNBinaryView *view, uint64_t fromAddr, uint64_t toAddr)
 
void BNRemoveUserDataReference (BNBinaryView *view, uint64_t fromAddr, uint64_t toAddr)
 
void BNFreeDataReferences (uint64_t *refs)
 
void BNFreeTypeReferences (BNTypeReferenceSource *refs, size_t count)
 
void BNFreeTypeFieldReferenceSizeInfo (BNTypeFieldReferenceSizeInfo *refs, size_t count)
 
void BNFreeTypeFieldReferenceTypeInfo (BNTypeFieldReferenceTypeInfo *refs, size_t count)
 
void BNFreeTypeFieldReferenceSizes (size_t *refs, size_t count)
 
void BNFreeTypeFieldReferenceTypes (BNTypeWithConfidence *refs, size_t count)
 
BNReferenceSourceBNGetCodeReferencesForType (BNBinaryView *view, BNQualifiedName *type, size_t *count)
 
uint64_t * BNGetDataReferencesForType (BNBinaryView *view, BNQualifiedName *type, size_t *count)
 
BNTypeReferenceSourceBNGetTypeReferencesForType (BNBinaryView *view, BNQualifiedName *type, size_t *count)
 
BNTypeFieldReferenceBNGetCodeReferencesForTypeField (BNBinaryView *view, BNQualifiedName *type, uint64_t offset, size_t *count)
 
uint64_t * BNGetDataReferencesForTypeField (BNBinaryView *view, BNQualifiedName *type, uint64_t offset, size_t *count)
 
BNTypeReferenceSourceBNGetTypeReferencesForTypeField (BNBinaryView *view, BNQualifiedName *type, uint64_t offset, size_t *count)
 
BNTypeReferenceSourceBNGetCodeReferencesForTypeFrom (BNBinaryView *view, BNReferenceSource *addr, size_t *count)
 
BNTypeReferenceSourceBNGetCodeReferencesForTypeFromInRange (BNBinaryView *view, BNReferenceSource *addr, uint64_t len, size_t *count)
 
BNTypeReferenceSourceBNGetCodeReferencesForTypeFieldsFrom (BNBinaryView *view, BNReferenceSource *addr, size_t *count)
 
BNTypeReferenceSourceBNGetCodeReferencesForTypeFieldsFromInRange (BNBinaryView *view, BNReferenceSource *addr, uint64_t len, size_t *count)
 
uint64_t * BNGetAllFieldsReferenced (BNBinaryView *view, BNQualifiedName *type, size_t *count)
 
BNTypeFieldReferenceSizeInfoBNGetAllSizesReferenced (BNBinaryView *view, BNQualifiedName *type, size_t *count)
 
BNTypeFieldReferenceTypeInfoBNGetAllTypesReferenced (BNBinaryView *view, BNQualifiedName *type, size_t *count)
 
size_t * BNGetSizesReferenced (BNBinaryView *view, BNQualifiedName *type, uint64_t offset, size_t *count)
 
BNTypeWithConfidenceBNGetTypesReferenced (BNBinaryView *view, BNQualifiedName *type, uint64_t offset, size_t *count)
 
void BNRegisterGlobalFunctionRecognizer (BNFunctionRecognizer *rec)
 
bool BNGetStringAtAddress (BNBinaryView *view, uint64_t addr, BNStringReference *strRef)
 
BNStringReferenceBNGetStrings (BNBinaryView *view, size_t *count)
 
BNStringReferenceBNGetStringsInRange (BNBinaryView *view, uint64_t start, uint64_t len, size_t *count)
 
void BNFreeStringReferenceList (BNStringReference *strings)
 
BNVariableNameAndTypeBNGetStackLayout (BNFunction *func, size_t *count)
 
void BNFreeVariableNameAndTypeList (BNVariableNameAndType *vars, size_t count)
 
void BNCreateAutoStackVariable (BNFunction *func, int64_t offset, BNTypeWithConfidence *type, const char *name)
 
void BNCreateUserStackVariable (BNFunction *func, int64_t offset, BNTypeWithConfidence *type, const char *name)
 
void BNDeleteAutoStackVariable (BNFunction *func, int64_t offset)
 
void BNDeleteUserStackVariable (BNFunction *func, int64_t offset)
 
bool BNGetStackVariableAtFrameOffset (BNFunction *func, BNArchitecture *arch, uint64_t addr, int64_t offset, BNVariableNameAndType *var)
 
void BNFreeVariableNameAndType (BNVariableNameAndType *var)
 
BNVariableNameAndTypeBNGetFunctionVariables (BNFunction *func, size_t *count)
 
void BNCreateAutoVariable (BNFunction *func, const BNVariable *var, BNTypeWithConfidence *type, const char *name, bool ignoreDisjointUses)
 
void BNCreateUserVariable (BNFunction *func, const BNVariable *var, BNTypeWithConfidence *type, const char *name, bool ignoreDisjointUses)
 
void BNDeleteUserVariable (BNFunction *func, const BNVariable *var)
 
bool BNIsVariableUserDefined (BNFunction *func, const BNVariable *var)
 
BNTypeWithConfidence BNGetVariableType (BNFunction *func, const BNVariable *var)
 
char * BNGetVariableName (BNFunction *func, const BNVariable *var)
 
char * BNGetRealVariableName (BNFunction *func, BNArchitecture *arch, const BNVariable *var)
 
uint64_t BNToVariableIdentifier (const BNVariable *var)
 
BNVariable BNFromVariableIdentifier (uint64_t id)
 
BNDeadStoreElimination BNGetFunctionVariableDeadStoreElimination (BNFunction *func, const BNVariable *var)
 
void BNSetFunctionVariableDeadStoreElimination (BNFunction *func, const BNVariable *var, BNDeadStoreElimination mode)
 
BNReferenceSourceBNGetFunctionCallSites (BNFunction *func, size_t *count)
 
uint64_t * BNGetCallees (BNBinaryView *view, BNReferenceSource *callSite, size_t *count)
 
BNReferenceSourceBNGetCallers (BNBinaryView *view, uint64_t callee, size_t *count)
 
void BNSetAutoIndirectBranches (BNFunction *func, BNArchitecture *sourceArch, uint64_t source, BNArchitectureAndAddress *branches, size_t count)
 
void BNSetUserIndirectBranches (BNFunction *func, BNArchitecture *sourceArch, uint64_t source, BNArchitectureAndAddress *branches, size_t count)
 
BNIndirectBranchInfoBNGetIndirectBranches (BNFunction *func, size_t *count)
 
BNIndirectBranchInfoBNGetIndirectBranchesAt (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
void BNFreeIndirectBranchList (BNIndirectBranchInfo *branches)
 
uint64_t * BNGetUnresolvedIndirectBranches (BNFunction *func, size_t *count)
 
bool BNHasUnresolvedIndirectBranches (BNFunction *func)
 
void BNSetAutoCallTypeAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTypeWithConfidence *type)
 
void BNSetUserCallTypeAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTypeWithConfidence *type)
 
void BNSetAutoCallStackAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr, int64_t adjust, uint8_t confidence)
 
void BNSetUserCallStackAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr, int64_t adjust, uint8_t confidence)
 
void BNSetAutoCallRegisterStackAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNRegisterStackAdjustment *adjust, size_t count)
 
void BNSetUserCallRegisterStackAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNRegisterStackAdjustment *adjust, size_t count)
 
void BNSetAutoCallRegisterStackAdjustmentForRegisterStack (BNFunction *func, BNArchitecture *arch, uint64_t addr, uint32_t regStack, int32_t adjust, uint8_t confidence)
 
void BNSetUserCallRegisterStackAdjustmentForRegisterStack (BNFunction *func, BNArchitecture *arch, uint64_t addr, uint32_t regStack, int32_t adjust, uint8_t confidence)
 
BNTypeWithConfidence BNGetCallTypeAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr)
 
BNOffsetWithConfidence BNGetCallStackAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr)
 
BNRegisterStackAdjustmentBNGetCallRegisterStackAdjustment (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNRegisterStackAdjustment BNGetCallRegisterStackAdjustmentForRegisterStack (BNFunction *func, BNArchitecture *arch, uint64_t addr, uint32_t regStack)
 
bool BNIsCallInstruction (BNFunction *func, BNArchitecture *arch, uint64_t addr)
 
BNInstructionTextLineBNGetFunctionBlockAnnotations (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNIntegerDisplayType BNGetIntegerConstantDisplayType (BNFunction *func, BNArchitecture *arch, uint64_t instrAddr, uint64_t value, size_t operand)
 
void BNSetIntegerConstantDisplayType (BNFunction *func, BNArchitecture *arch, uint64_t instrAddr, uint64_t value, size_t operand, BNIntegerDisplayType type)
 
bool BNIsFunctionTooLarge (BNFunction *func)
 
bool BNIsFunctionAnalysisSkipped (BNFunction *func)
 
BNAnalysisSkipReason BNGetAnalysisSkipReason (BNFunction *func)
 
BNFunctionAnalysisSkipOverride BNGetFunctionAnalysisSkipOverride (BNFunction *func)
 
void BNSetFunctionAnalysisSkipOverride (BNFunction *func, BNFunctionAnalysisSkipOverride skip)
 
char * BNGetGotoLabelName (BNFunction *func, uint64_t labelId)
 
void BNSetUserGotoLabelName (BNFunction *func, uint64_t labelId, const char *name)
 
BNAnalysisParameters BNGetParametersForAnalysis (BNBinaryView *view)
 
void BNSetParametersForAnalysis (BNBinaryView *view, BNAnalysisParameters params)
 
uint64_t BNGetMaxFunctionSizeForAnalysis (BNBinaryView *view)
 
void BNSetMaxFunctionSizeForAnalysis (BNBinaryView *view, uint64_t size)
 
bool BNGetNewAutoFunctionAnalysisSuppressed (BNBinaryView *view)
 
void BNSetNewAutoFunctionAnalysisSuppressed (BNBinaryView *view, bool suppress)
 
BNAnalysisCompletionEvent * BNAddAnalysisCompletionEvent (BNBinaryView *view, void *ctxt, void(*callback)(void *ctxt))
 
BNAnalysisCompletionEvent * BNNewAnalysisCompletionEventReference (BNAnalysisCompletionEvent *event)
 
void BNFreeAnalysisCompletionEvent (BNAnalysisCompletionEvent *event)
 
void BNCancelAnalysisCompletionEvent (BNAnalysisCompletionEvent *event)
 
BNAnalysisInfoBNGetAnalysisInfo (BNBinaryView *view)
 
void BNFreeAnalysisInfo (BNAnalysisInfo *info)
 
BNAnalysisProgress BNGetAnalysisProgress (BNBinaryView *view)
 
BNBackgroundTask * BNGetBackgroundAnalysisTask (BNBinaryView *view)
 
uint64_t BNGetNextFunctionStartAfterAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t BNGetNextBasicBlockStartAfterAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t BNGetNextDataAfterAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t BNGetNextDataVariableStartAfterAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t BNGetPreviousFunctionStartBeforeAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t BNGetPreviousBasicBlockStartBeforeAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t BNGetPreviousBasicBlockEndBeforeAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t BNGetPreviousDataBeforeAddress (BNBinaryView *view, uint64_t addr)
 
uint64_t BNGetPreviousDataVariableStartBeforeAddress (BNBinaryView *view, uint64_t addr)
 
BNLinearViewObject * BNCreateLinearViewDisassembly (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewLiftedIL (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewLowLevelIL (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewLowLevelILSSAForm (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewMediumLevelIL (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewMediumLevelILSSAForm (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewMappedMediumLevelIL (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewMappedMediumLevelILSSAForm (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewHighLevelIL (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewHighLevelILSSAForm (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewLanguageRepresentation (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewDataOnly (BNBinaryView *view, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionDisassembly (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionLiftedIL (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionLowLevelIL (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionLowLevelILSSAForm (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionMediumLevelIL (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionMediumLevelILSSAForm (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionMappedMediumLevelIL (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionMappedMediumLevelILSSAForm (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionHighLevelIL (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionHighLevelILSSAForm (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNCreateLinearViewSingleFunctionLanguageRepresentation (BNFunction *func, BNDisassemblySettings *settings)
 
BNLinearViewObject * BNNewLinearViewObjectReference (BNLinearViewObject *obj)
 
void BNFreeLinearViewObject (BNLinearViewObject *obj)
 
BNLinearViewObject * BNGetFirstLinearViewObjectChild (BNLinearViewObject *obj)
 
BNLinearViewObject * BNGetLastLinearViewObjectChild (BNLinearViewObject *obj)
 
BNLinearViewObject * BNGetPreviousLinearViewObjectChild (BNLinearViewObject *parent, BNLinearViewObject *child)
 
BNLinearViewObject * BNGetNextLinearViewObjectChild (BNLinearViewObject *parent, BNLinearViewObject *child)
 
BNLinearViewObject * BNGetLinearViewObjectChildForAddress (BNLinearViewObject *parent, uint64_t addr)
 
BNLinearViewObject * BNGetLinearViewObjectChildForIdentifier (BNLinearViewObject *parent, BNLinearViewObjectIdentifier *id)
 
BNLinearDisassemblyLineBNGetLinearViewObjectLines (BNLinearViewObject *obj, BNLinearViewObject *prev, BNLinearViewObject *next, size_t *count)
 
void BNFreeLinearDisassemblyLines (BNLinearDisassemblyLine *lines, size_t count)
 
uint64_t BNGetLinearViewObjectStart (BNLinearViewObject *obj)
 
uint64_t BNGetLinearViewObjectEnd (BNLinearViewObject *obj)
 
BNLinearViewObjectIdentifier BNGetLinearViewObjectIdentifier (BNLinearViewObject *obj)
 
void BNFreeLinearViewObjectIdentifier (BNLinearViewObjectIdentifier *id)
 
int BNCompareLinearViewObjectChildren (BNLinearViewObject *obj, BNLinearViewObject *a, BNLinearViewObject *b)
 
uint64_t BNGetLinearViewObjectOrderingIndexTotal (BNLinearViewObject *obj)
 
uint64_t BNGetLinearViewObjectOrderingIndexForChild (BNLinearViewObject *parent, BNLinearViewObject *child)
 
BNLinearViewObject * BNGetLinearViewObjectChildForOrderingIndex (BNLinearViewObject *parent, uint64_t idx)
 
BNLinearViewCursor * BNCreateLinearViewCursor (BNLinearViewObject *root)
 
BNLinearViewCursor * BNDuplicateLinearViewCursor (BNLinearViewCursor *cursor)
 
BNLinearViewCursor * BNNewLinearViewCursorReference (BNLinearViewCursor *cursor)
 
void BNFreeLinearViewCursor (BNLinearViewCursor *cursor)
 
bool BNIsLinearViewCursorBeforeBegin (BNLinearViewCursor *cursor)
 
bool BNIsLinearViewCursorAfterEnd (BNLinearViewCursor *cursor)
 
BNLinearViewObject * BNGetLinearViewCursorCurrentObject (BNLinearViewCursor *cursor)
 
BNLinearViewObjectIdentifierBNGetLinearViewCursorPath (BNLinearViewCursor *cursor, size_t *count)
 
void BNFreeLinearViewCursorPath (BNLinearViewObjectIdentifier *objs, size_t count)
 
BNLinearViewObject ** BNGetLinearViewCursorPathObjects (BNLinearViewCursor *cursor, size_t *count)
 
void BNFreeLinearViewCursorPathObjects (BNLinearViewObject **objs, size_t count)
 
BNAddressRange BNGetLinearViewCursorOrderingIndex (BNLinearViewCursor *cursor)
 
uint64_t BNGetLinearViewCursorOrderingIndexTotal (BNLinearViewCursor *cursor)
 
void BNSeekLinearViewCursorToBegin (BNLinearViewCursor *cursor)
 
void BNSeekLinearViewCursorToEnd (BNLinearViewCursor *cursor)
 
void BNSeekLinearViewCursorToAddress (BNLinearViewCursor *cursor, uint64_t addr)
 
bool BNSeekLinearViewCursorToPath (BNLinearViewCursor *cursor, BNLinearViewObjectIdentifier *ids, size_t count)
 
bool BNSeekLinearViewCursorToPathAndAddress (BNLinearViewCursor *cursor, BNLinearViewObjectIdentifier *ids, size_t count, uint64_t addr)
 
bool BNSeekLinearViewCursorToCursorPath (BNLinearViewCursor *cursor, BNLinearViewCursor *path)
 
bool BNSeekLinearViewCursorToCursorPathAndAddress (BNLinearViewCursor *cursor, BNLinearViewCursor *path, uint64_t addr)
 
void BNSeekLinearViewCursorToOrderingIndex (BNLinearViewCursor *cursor, uint64_t idx)
 
bool BNLinearViewCursorNext (BNLinearViewCursor *cursor)
 
bool BNLinearViewCursorPrevious (BNLinearViewCursor *cursor)
 
BNLinearDisassemblyLineBNGetLinearViewCursorLines (BNLinearViewCursor *cursor, size_t *count)
 
int BNCompareLinearViewCursors (BNLinearViewCursor *a, BNLinearViewCursor *b)
 
void BNDefineDataVariable (BNBinaryView *view, uint64_t addr, BNTypeWithConfidence *type)
 
void BNDefineUserDataVariable (BNBinaryView *view, uint64_t addr, BNTypeWithConfidence *type)
 
void BNUndefineDataVariable (BNBinaryView *view, uint64_t addr)
 
void BNUndefineUserDataVariable (BNBinaryView *view, uint64_t addr)
 
BNDataVariableBNGetDataVariables (BNBinaryView *view, size_t *count)
 
void BNFreeDataVariables (BNDataVariable *vars, size_t count)
 
void BNFreeDataVariablesAndName (BNDataVariableAndName *vars, size_t count)
 
bool BNGetDataVariableAtAddress (BNBinaryView *view, uint64_t addr, BNDataVariable *var)
 
bool BNParseTypeString (BNBinaryView *view, const char *text, BNQualifiedNameAndType *result, char **errors, BNQualifiedNameList *typesAllowRedefinition)
 
bool BNParseTypesString (BNBinaryView *view, const char *text, const char *const *options, size_t optionCount, const char *const *includeDirs, size_t includeDirCount, BNTypeParserResult *result, char **errors, BNQualifiedNameList *typesAllowRedefinition)
 
void BNFreeQualifiedNameAndType (BNQualifiedNameAndType *obj)
 
void BNFreeQualifiedNameAndTypeArray (BNQualifiedNameAndType *obj, size_t count)
 
char * BNEscapeTypeName (const char *name, BNTokenEscapingType escaping)
 
char * BNUnescapeTypeName (const char *name, BNTokenEscapingType escaping)
 
BNQualifiedNameAndTypeBNGetAnalysisTypeList (BNBinaryView *view, size_t *count)
 
void BNFreeTypeList (BNQualifiedNameAndType *types, size_t count)
 
void BNFreeTypeIdList (BNQualifiedNameTypeAndId *types, size_t count)
 
BNQualifiedNameBNGetAnalysisTypeNames (BNBinaryView *view, size_t *count, const char *matching)
 
void BNFreeTypeNameList (BNQualifiedName *names, size_t count)
 
BNType * BNGetAnalysisTypeByName (BNBinaryView *view, BNQualifiedName *name)
 
BNType * BNGetAnalysisTypeById (BNBinaryView *view, const char *id)
 
char * BNGetAnalysisTypeId (BNBinaryView *view, BNQualifiedName *name)
 
BNQualifiedName BNGetAnalysisTypeNameById (BNBinaryView *view, const char *id)
 
bool BNIsAnalysisTypeAutoDefined (BNBinaryView *view, BNQualifiedName *name)
 
BNQualifiedName BNDefineAnalysisType (BNBinaryView *view, const char *id, BNQualifiedName *defaultName, BNType *type)
 
void BNDefineUserAnalysisType (BNBinaryView *view, BNQualifiedName *name, BNType *type)
 
void BNDefineAnalysisTypes (BNBinaryView *view, BNQualifiedNameTypeAndId *types, size_t count, bool(*progress)(void *, size_t, size_t), void *progressContext)
 
void BNDefineUserAnalysisTypes (BNBinaryView *view, BNQualifiedNameAndType *types, size_t count, bool(*progress)(void *, size_t, size_t), void *progressContext)
 
void BNUndefineAnalysisType (BNBinaryView *view, const char *id)
 
void BNUndefineUserAnalysisType (BNBinaryView *view, BNQualifiedName *name)
 
void BNRenameAnalysisType (BNBinaryView *view, BNQualifiedName *oldName, BNQualifiedName *newName)
 
char * BNGenerateAutoTypeId (const char *source, BNQualifiedName *name)
 
char * BNGenerateAutoPlatformTypeId (BNPlatform *platform, BNQualifiedName *name)
 
char * BNGenerateAutoDemangledTypeId (BNQualifiedName *name)
 
char * BNGetAutoPlatformTypeIdSource (BNPlatform *platform)
 
char * BNGetAutoDemangledTypeIdSource (void)
 
char * BNGenerateAutoDebugTypeId (BNQualifiedName *name)
 
char * BNGetAutoDebugTypeIdSource (void)
 
void BNRegisterPlatformTypes (BNBinaryView *view, BNPlatform *platform)
 
void BNReanalyzeAllFunctions (BNBinaryView *view)
 
void BNReanalyzeFunction (BNFunction *func, BNFunctionUpdateType type)
 
void BNMarkUpdatesRequired (BNFunction *func, BNFunctionUpdateType type)
 
void BNMarkCallerUpdatesRequired (BNFunction *func, BNFunctionUpdateType type)
 
BNWorkflow * BNGetWorkflowForBinaryView (BNBinaryView *view)
 
BNWorkflow * BNGetWorkflowForFunction (BNFunction *func)
 
BNHighlightColor BNGetInstructionHighlight (BNFunction *func, BNArchitecture *arch, uint64_t addr)
 
void BNSetAutoInstructionHighlight (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNHighlightColor color)
 
void BNSetUserInstructionHighlight (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNHighlightColor color)
 
BNHighlightColor BNGetBasicBlockHighlight (BNBasicBlock *block)
 
void BNSetAutoBasicBlockHighlight (BNBasicBlock *block, BNHighlightColor color)
 
void BNSetUserBasicBlockHighlight (BNBasicBlock *block, BNHighlightColor color)
 
BNTagType * BNCreateTagType (BNBinaryView *view)
 
BNTagType * BNNewTagTypeReference (BNTagType *tagType)
 
void BNFreeTagType (BNTagType *tagType)
 
void BNFreeTagTypeList (BNTagType **tagTypes, size_t count)
 
BNBinaryView * BNTagTypeGetView (BNTagType *tagType)
 
char * BNTagTypeGetId (BNTagType *tagType)
 
char * BNTagTypeGetName (BNTagType *tagType)
 
void BNTagTypeSetName (BNTagType *tagType, const char *name)
 
char * BNTagTypeGetIcon (BNTagType *tagType)
 
void BNTagTypeSetIcon (BNTagType *tagType, const char *icon)
 
bool BNTagTypeGetVisible (BNTagType *tagType)
 
void BNTagTypeSetVisible (BNTagType *tagType, bool visible)
 
BNTagTypeType BNTagTypeGetType (BNTagType *tagType)
 
void BNTagTypeSetType (BNTagType *tagType, BNTagTypeType type)
 
BNTag * BNCreateTag (BNTagType *type, const char *data)
 
BNTag * BNNewTagReference (BNTag *tag)
 
void BNFreeTag (BNTag *tag)
 
void BNFreeTagList (BNTag **tags, size_t count)
 
char * BNTagGetId (BNTag *tag)
 
BNTagType * BNTagGetType (BNTag *tag)
 
char * BNTagGetData (BNTag *tag)
 
void BNTagSetData (BNTag *tag, const char *data)
 
void BNAddTagType (BNBinaryView *view, BNTagType *tagType)
 
void BNRemoveTagType (BNBinaryView *view, BNTagType *tagType)
 
BNTagType * BNGetTagType (BNBinaryView *view, const char *name)
 
BNTagType * BNGetTagTypeWithType (BNBinaryView *view, const char *name, BNTagTypeType type)
 
BNTagType * BNGetTagTypeById (BNBinaryView *view, const char *id)
 
BNTagType * BNGetTagTypeByIdWithType (BNBinaryView *view, const char *id, BNTagTypeType type)
 
BNTagType ** BNGetTagTypes (BNBinaryView *view, size_t *count)
 
void BNAddTag (BNBinaryView *view, BNTag *tag, bool user)
 
BNTag * BNGetTag (BNBinaryView *view, const char *tagId)
 
void BNRemoveTag (BNBinaryView *view, BNTag *tag, bool user)
 
BNTagReferenceBNGetAllTagReferences (BNBinaryView *view, size_t *count)
 
BNTagReferenceBNGetAllAddressTagReferences (BNBinaryView *view, size_t *count)
 
BNTagReferenceBNGetAllFunctionTagReferences (BNBinaryView *view, size_t *count)
 
BNTagReferenceBNGetAllTagReferencesOfType (BNBinaryView *view, BNTagType *tagType, size_t *count)
 
BNTagReferenceBNGetTagReferencesOfType (BNBinaryView *view, BNTagType *tagType, size_t *count)
 
BNTagReferenceBNGetDataTagReferences (BNBinaryView *view, size_t *count)
 
BNTagReferenceBNGetAutoDataTagReferences (BNBinaryView *view, size_t *count)
 
BNTagReferenceBNGetUserDataTagReferences (BNBinaryView *view, size_t *count)
 
void BNRemoveTagReference (BNBinaryView *view, BNTagReference ref)
 
void BNFreeTagReferences (BNTagReference *refs, size_t count)
 
BNTag ** BNGetDataTags (BNBinaryView *view, uint64_t addr, size_t *count)
 
BNTag ** BNGetAutoDataTags (BNBinaryView *view, uint64_t addr, size_t *count)
 
BNTag ** BNGetUserDataTags (BNBinaryView *view, uint64_t addr, size_t *count)
 
BNTag ** BNGetDataTagsOfType (BNBinaryView *view, uint64_t addr, BNTagType *tagType, size_t *count)
 
BNTag ** BNGetAutoDataTagsOfType (BNBinaryView *view, uint64_t addr, BNTagType *tagType, size_t *count)
 
BNTag ** BNGetUserDataTagsOfType (BNBinaryView *view, uint64_t addr, BNTagType *tagType, size_t *count)
 
BNTagReferenceBNGetDataTagsInRange (BNBinaryView *view, uint64_t start, uint64_t end, size_t *count)
 
BNTagReferenceBNGetAutoDataTagsInRange (BNBinaryView *view, uint64_t start, uint64_t end, size_t *count)
 
BNTagReferenceBNGetUserDataTagsInRange (BNBinaryView *view, uint64_t start, uint64_t end, size_t *count)
 
void BNAddAutoDataTag (BNBinaryView *view, uint64_t addr, BNTag *tag)
 
void BNRemoveAutoDataTag (BNBinaryView *view, uint64_t addr, BNTag *tag)
 
void BNRemoveAutoDataTagsOfType (BNBinaryView *view, uint64_t addr, BNTagType *tagType)
 
void BNAddUserDataTag (BNBinaryView *view, uint64_t addr, BNTag *tag)
 
void BNRemoveUserDataTag (BNBinaryView *view, uint64_t addr, BNTag *tag)
 
void BNRemoveUserDataTagsOfType (BNBinaryView *view, uint64_t addr, BNTagType *tagType)
 
size_t BNGetTagReferencesOfTypeCount (BNBinaryView *view, BNTagType *tagType)
 
size_t BNGetAllTagReferencesOfTypeCount (BNBinaryView *view, BNTagType *tagType)
 
void BNGetAllTagReferenceTypeCounts (BNBinaryView *view, BNTagType ***tagTypes, size_t **counts, size_t *count)
 
void BNFreeTagReferenceTypeCounts (BNTagType **tagTypes, size_t *counts)
 
BNTagReferenceBNGetFunctionAllTagReferences (BNFunction *func, size_t *count)
 
BNTagReferenceBNGetFunctionTagReferencesOfType (BNFunction *func, BNTagType *tagType, size_t *count)
 
BNTagReferenceBNGetAddressTagReferences (BNFunction *func, size_t *count)
 
BNTagReferenceBNGetAutoAddressTagReferences (BNFunction *func, size_t *count)
 
BNTagReferenceBNGetUserAddressTagReferences (BNFunction *func, size_t *count)
 
BNTag ** BNGetAddressTags (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNTag ** BNGetAutoAddressTags (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNTag ** BNGetUserAddressTags (BNFunction *func, BNArchitecture *arch, uint64_t addr, size_t *count)
 
BNTag ** BNGetAddressTagsOfType (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTagType *tagType, size_t *count)
 
BNTag ** BNGetAutoAddressTagsOfType (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTagType *tagType, size_t *count)
 
BNTag ** BNGetUserAddressTagsOfType (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTagType *tagType, size_t *count)
 
BNTagReferenceBNGetAddressTagsInRange (BNFunction *func, BNArchitecture *arch, uint64_t start, uint64_t end, size_t *count)
 
BNTagReferenceBNGetAutoAddressTagsInRange (BNFunction *func, BNArchitecture *arch, uint64_t start, uint64_t end, size_t *count)
 
BNTagReferenceBNGetUserAddressTagsInRange (BNFunction *func, BNArchitecture *arch, uint64_t start, uint64_t end, size_t *count)
 
void BNAddAutoAddressTag (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTag *tag)
 
void BNRemoveAutoAddressTag (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTag *tag)
 
void BNRemoveAutoAddressTagsOfType (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTagType *tagType)
 
void BNAddUserAddressTag (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTag *tag)
 
void BNRemoveUserAddressTag (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTag *tag)
 
void BNRemoveUserAddressTagsOfType (BNFunction *func, BNArchitecture *arch, uint64_t addr, BNTagType *tagType)
 
BNTagReferenceBNGetFunctionTagReferences (BNFunction *func, size_t *count)
 
BNTagReferenceBNGetAutoFunctionTagReferences (BNFunction *func, size_t *count)
 
BNTagReferenceBNGetUserFunctionTagReferences (BNFunction *func, size_t *count)
 
BNTag ** BNGetFunctionTags (BNFunction *func, size_t *count)
 
BNTag ** BNGetAutoFunctionTags (BNFunction *func, size_t *count)
 
BNTag ** BNGetUserFunctionTags (BNFunction *func, size_t *count)
 
BNTag ** BNGetFunctionTagsOfType (BNFunction *func, BNTagType *tagType, size_t *count)
 
BNTag ** BNGetAutoFunctionTagsOfType (BNFunction *func, BNTagType *tagType, size_t *count)
 
BNTag ** BNGetUserFunctionTagsOfType (BNFunction *func, BNTagType *tagType, size_t *count)
 
void BNAddAutoFunctionTag (BNFunction *func, BNTag *tag)
 
void BNRemoveAutoFunctionTag (BNFunction *func, BNTag *tag)
 
void BNRemoveAutoFunctionTagsOfType (BNFunction *func, BNTagType *tagType)
 
void BNAddUserFunctionTag (BNFunction *func, BNTag *tag)
 
void BNRemoveUserFunctionTag (BNFunction *func, BNTag *tag)
 
void BNRemoveUserFunctionTagsOfType (BNFunction *func, BNTagType *tagType)
 
BNPerformanceInfoBNGetFunctionAnalysisPerformanceInfo (BNFunction *func, size_t *count)
 
void BNFreeAnalysisPerformanceInfo (BNPerformanceInfo *info, size_t count)
 
BNFlowGraph * BNGetUnresolvedStackAdjustmentGraph (BNFunction *func)
 
void BNSetUserVariableValue (BNFunction *func, const BNVariable *var, const BNArchitectureAndAddress *defSite, const BNPossibleValueSet *value)
 
void BNClearUserVariableValue (BNFunction *func, const BNVariable *var, const BNArchitectureAndAddress *defSite)
 
BNUserVariableValueBNGetAllUserVariableValues (BNFunction *func, size_t *count)
 
void BNFreeUserVariableValues (BNUserVariableValue *result)
 
bool BNParsePossibleValueSet (BNBinaryView *view, const char *valueText, BNRegisterValueType state, BNPossibleValueSet *result, uint64_t here, char **errors)
 
void BNRequestFunctionDebugReport (BNFunction *func, const char *name)
 
BNILReferenceSourceBNGetMediumLevelILVariableReferences (BNFunction *func, BNVariable *var, size_t *count)
 
BNVariableReferenceSourceBNGetMediumLevelILVariableReferencesFrom (BNFunction *func, BNArchitecture *arch, uint64_t address, size_t *count)
 
BNVariableReferenceSourceBNGetMediumLevelILVariableReferencesInRange (BNFunction *func, BNArchitecture *arch, uint64_t address, uint64_t len, size_t *count)
 
BNILReferenceSourceBNGetMediumLevelILVariableReferencesIfAvailable (BNFunction *func, BNVariable *var, size_t *count)
 
BNVariableReferenceSourceBNGetMediumLevelILVariableReferencesFromIfAvailable (BNFunction *func, BNArchitecture *arch, uint64_t address, size_t *count)
 
BNVariableReferenceSourceBNGetMediumLevelILVariableReferencesInRangeIfAvailable (BNFunction *func, BNArchitecture *arch, uint64_t address, uint64_t len, size_t *count)
 
BNILReferenceSourceBNGetHighLevelILVariableReferences (BNFunction *func, BNVariable *var, size_t *count)
 
BNVariableReferenceSourceBNGetHighLevelILVariableReferencesFrom (BNFunction *func, BNArchitecture *arch, uint64_t address, size_t *count)
 
BNVariableReferenceSourceBNGetHighLevelILVariableReferencesInRange (BNFunction *func, BNArchitecture *arch, uint64_t address, uint64_t len, size_t *count)
 
BNILReferenceSourceBNGetHighLevelILVariableReferencesIfAvailable (BNFunction *func, BNVariable *var, size_t *count)
 
BNVariableReferenceSourceBNGetHighLevelILVariableReferencesFromIfAvailable (BNFunction *func, BNArchitecture *arch, uint64_t address, size_t *count)
 
BNVariableReferenceSourceBNGetHighLevelILVariableReferencesInRangeIfAvailable (BNFunction *func, BNArchitecture *arch, uint64_t address, uint64_t len, size_t *count)
 
void BNFreeVariableList (BNVariable *vars)
 
void BNFreeVariableReferenceSourceList (BNVariableReferenceSource *vars, size_t count)
 
BNAnalysisContext * BNCreateAnalysisContext (void)
 
BNAnalysisContext * BNNewAnalysisContextReference (BNAnalysisContext *analysisContext)
 
void BNFreeAnalysisContext (BNAnalysisContext *analysisContext)
 
BNFunction * BNAnalysisContextGetFunction (BNAnalysisContext *analysisContext)
 
BNLowLevelILFunction * BNAnalysisContextGetLowLevelILFunction (BNAnalysisContext *analysisContext)
 
BNMediumLevelILFunction * BNAnalysisContextGetMediumLevelILFunction (BNAnalysisContext *analysisContext)
 
BNHighLevelILFunction * BNAnalysisContextGetHighLevelILFunction (BNAnalysisContext *analysisContext)
 
void BNSetBasicBlockList (BNAnalysisContext *analysisContext, BNBasicBlock **basicBlocks, size_t count)
 
void BNSetLiftedILFunction (BNAnalysisContext *analysisContext, BNLowLevelILFunction *liftedIL)
 
void BNSetLowLevelILFunction (BNAnalysisContext *analysisContext, BNLowLevelILFunction *lowLevelIL)
 
void BNSetMediumLevelILFunction (BNAnalysisContext *analysisContext, BNMediumLevelILFunction *mediumLevelIL)
 
void BNSetHighLevelILFunction (BNAnalysisContext *analysisContext, BNHighLevelILFunction *highLevelIL)
 
bool BNAnalysisContextInform (BNAnalysisContext *analysisContext, const char *request)
 
BNActivity * BNCreateActivity (const char *name, void *ctxt, void(*action)(void *, BNAnalysisContext *))
 
BNActivity * BNNewActivityReference (BNActivity *activity)
 
void BNFreeActivity (BNActivity *activity)
 
char * BNActivityGetName (BNActivity *activity)
 
BNWorkflow * BNCreateWorkflow (const char *name)
 
BNWorkflow * BNNewWorkflowReference (BNWorkflow *workflow)
 
void BNFreeWorkflow (BNWorkflow *workflow)
 
BNWorkflow ** BNGetWorkflowList (size_t *count)
 
void BNFreeWorkflowList (BNWorkflow **workflows, size_t count)
 
BNWorkflow * BNWorkflowInstance (const char *name)
 
bool BNRegisterWorkflow (BNWorkflow *workflow, const char *description)
 
BNWorkflow * BNWorkflowClone (BNWorkflow *workflow, const char *name, const char *activity)
 
bool BNWorkflowRegisterActivity (BNWorkflow *workflow, BNActivity *activity, const char **subactivities, size_t size, const char *description)
 
bool BNWorkflowContains (BNWorkflow *workflow, const char *activity)
 
char * BNWorkflowGetConfiguration (BNWorkflow *workflow, const char *activity)
 
char * BNGetWorkflowName (BNWorkflow *workflow)
 
bool BNWorkflowIsRegistered (BNWorkflow *workflow)
 
size_t BNWorkflowSize (BNWorkflow *workflow)
 
BNActivity * BNWorkflowGetActivity (BNWorkflow *workflow, const char *activity)
 
const char ** BNWorkflowGetActivityRoots (BNWorkflow *workflow, const char *activity, size_t *inoutSize)
 
const char ** BNWorkflowGetSubactivities (BNWorkflow *workflow, const char *activity, bool immediate, size_t *inoutSize)
 
bool BNWorkflowAssignSubactivities (BNWorkflow *workflow, const char *activity, const char **activities, size_t size)
 
bool BNWorkflowClear (BNWorkflow *workflow)
 
bool BNWorkflowInsert (BNWorkflow *workflow, const char *activity, const char **activities, size_t size)
 
bool BNWorkflowRemove (BNWorkflow *workflow, const char *activity)
 
bool BNWorkflowReplace (BNWorkflow *workflow, const char *activity, const char *newActivity)
 
BNFlowGraph * BNWorkflowGetGraph (BNWorkflow *workflow, const char *activity, bool sequential)
 
void BNWorkflowShowReport (BNWorkflow *workflow, const char *name)
 
BNDisassemblySettings * BNCreateDisassemblySettings (void)
 
BNDisassemblySettings * BNNewDisassemblySettingsReference (BNDisassemblySettings *settings)
 
BNDisassemblySettings * BNDuplicateDisassemblySettings (BNDisassemblySettings *settings)
 
void BNFreeDisassemblySettings (BNDisassemblySettings *settings)
 
bool BNIsDisassemblySettingsOptionSet (BNDisassemblySettings *settings, BNDisassemblyOption option)
 
void BNSetDisassemblySettingsOption (BNDisassemblySettings *settings, BNDisassemblyOption option, bool state)
 
size_t BNGetDisassemblyWidth (BNDisassemblySettings *settings)
 
void BNSetDisassemblyWidth (BNDisassemblySettings *settings, size_t width)
 
size_t BNGetDisassemblyMaximumSymbolWidth (BNDisassemblySettings *settings)
 
void BNSetDisassemblyMaximumSymbolWidth (BNDisassemblySettings *settings, size_t width)
 
size_t BNGetDisassemblyGutterWidth (BNDisassemblySettings *settings)
 
void BNSetDisassemblyGutterWidth (BNDisassemblySettings *settings, size_t width)
 
BNFlowGraph * BNCreateFlowGraph ()
 
BNFlowGraph * BNCreateFunctionGraph (BNFunction *func, BNFunctionGraphType type, BNDisassemblySettings *settings)
 
BNFlowGraph * BNCreateLowLevelILFunctionGraph (BNLowLevelILFunction *func, BNDisassemblySettings *settings)
 
BNFlowGraph * BNCreateMediumLevelILFunctionGraph (BNMediumLevelILFunction *func, BNDisassemblySettings *settings)
 
BNFlowGraph * BNCreateHighLevelILFunctionGraph (BNHighLevelILFunction *func, BNDisassemblySettings *settings)
 
BNFlowGraph * BNCreateCustomFlowGraph (BNCustomFlowGraph *callbacks)
 
BNFlowGraph * BNNewFlowGraphReference (BNFlowGraph *graph)
 
void BNFreeFlowGraph (BNFlowGraph *graph)
 
BNFunction * BNGetFunctionForFlowGraph (BNFlowGraph *graph)
 
void BNSetFunctionForFlowGraph (BNFlowGraph *graph, BNFunction *func)
 
BNBinaryView * BNGetViewForFlowGraph (BNFlowGraph *graph)
 
void BNSetViewForFlowGraph (BNFlowGraph *graph, BNBinaryView *view)
 
int BNGetHorizontalFlowGraphNodeMargin (BNFlowGraph *graph)
 
int BNGetVerticalFlowGraphNodeMargin (BNFlowGraph *graph)
 
void BNSetFlowGraphNodeMargins (BNFlowGraph *graph, int horiz, int vert)
 
BNFlowGraphLayoutRequest * BNStartFlowGraphLayout (BNFlowGraph *graph, void *ctxt, void(*func)(void *ctxt))
 
bool BNIsFlowGraphLayoutComplete (BNFlowGraph *graph)
 
BNFlowGraphLayoutRequest * BNNewFlowGraphLayoutRequestReference (BNFlowGraphLayoutRequest *layout)
 
void BNFreeFlowGraphLayoutRequest (BNFlowGraphLayoutRequest *layout)
 
bool BNIsFlowGraphLayoutRequestComplete (BNFlowGraphLayoutRequest *layout)
 
BNFlowGraph * BNGetGraphForFlowGraphLayoutRequest (BNFlowGraphLayoutRequest *layout)
 
void BNAbortFlowGraphLayoutRequest (BNFlowGraphLayoutRequest *graph)
 
bool BNIsILFlowGraph (BNFlowGraph *graph)
 
bool BNIsLowLevelILFlowGraph (BNFlowGraph *graph)
 
bool BNIsMediumLevelILFlowGraph (BNFlowGraph *graph)
 
bool BNIsHighLevelILFlowGraph (BNFlowGraph *graph)
 
BNLowLevelILFunction * BNGetFlowGraphLowLevelILFunction (BNFlowGraph *graph)
 
BNMediumLevelILFunction * BNGetFlowGraphMediumLevelILFunction (BNFlowGraph *graph)
 
BNHighLevelILFunction * BNGetFlowGraphHighLevelILFunction (BNFlowGraph *graph)
 
void BNSetFlowGraphLowLevelILFunction (BNFlowGraph *graph, BNLowLevelILFunction *func)
 
void BNSetFlowGraphMediumLevelILFunction (BNFlowGraph *graph, BNMediumLevelILFunction *func)
 
void BNSetFlowGraphHighLevelILFunction (BNFlowGraph *graph, BNHighLevelILFunction *func)
 
BNFlowGraphNode ** BNGetFlowGraphNodes (BNFlowGraph *graph, size_t *count)
 
BNFlowGraphNode * BNGetFlowGraphNode (BNFlowGraph *graph, size_t i)
 
BNFlowGraphNode ** BNGetFlowGraphNodesInRegion (BNFlowGraph *graph, int left, int top, int right, int bottom, size_t *count)
 
void BNFreeFlowGraphNodeList (BNFlowGraphNode **nodes, size_t count)
 
bool BNFlowGraphHasNodes (BNFlowGraph *graph)
 
size_t BNAddFlowGraphNode (BNFlowGraph *graph, BNFlowGraphNode *node)
 
int BNGetFlowGraphWidth (BNFlowGraph *graph)
 
int BNGetFlowGraphHeight (BNFlowGraph *graph)
 
BNFlowGraphNode * BNCreateFlowGraphNode (BNFlowGraph *graph)
 
BNFlowGraphNode * BNNewFlowGraphNodeReference (BNFlowGraphNode *node)
 
void BNFreeFlowGraphNode (BNFlowGraphNode *node)
 
BNFlowGraph * BNGetFlowGraphNodeOwner (BNFlowGraphNode *node)
 
BNBasicBlock * BNGetFlowGraphBasicBlock (BNFlowGraphNode *node)
 
void BNSetFlowGraphBasicBlock (BNFlowGraphNode *node, BNBasicBlock *block)
 
int BNGetFlowGraphNodeX (BNFlowGraphNode *node)
 
int BNGetFlowGraphNodeY (BNFlowGraphNode *node)
 
int BNGetFlowGraphNodeWidth (BNFlowGraphNode *node)
 
int BNGetFlowGraphNodeHeight (BNFlowGraphNode *node)
 
BNDisassemblyTextLineBNGetFlowGraphNodeLines (BNFlowGraphNode *node, size_t *count)
 
void BNSetFlowGraphNodeLines (BNFlowGraphNode *node, BNDisassemblyTextLine *lines, size_t count)
 
BNFlowGraphEdgeBNGetFlowGraphNodeOutgoingEdges (BNFlowGraphNode *node, size_t *count)
 
BNFlowGraphEdgeBNGetFlowGraphNodeIncomingEdges (BNFlowGraphNode *node, size_t *count)
 
void BNFreeFlowGraphNodeEdgeList (BNFlowGraphEdge *edges, size_t count)
 
void BNAddFlowGraphNodeOutgoingEdge (BNFlowGraphNode *node, BNBranchType type, BNFlowGraphNode *target, BNEdgeStyle edgeStyle)
 
BNHighlightColor BNGetFlowGraphNodeHighlight (BNFlowGraphNode *node)
 
void BNSetFlowGraphNodeHighlight (BNFlowGraphNode *node, BNHighlightColor color)
 
void BNFinishPrepareForLayout (BNFlowGraph *graph)
 
bool BNFlowGraphUpdateQueryMode (BNFlowGraph *graph)
 
bool BNFlowGraphHasUpdates (BNFlowGraph *graph)
 
BNFlowGraph * BNUpdateFlowGraph (BNFlowGraph *graph)
 
void BNSetFlowGraphOption (BNFlowGraph *graph, BNFlowGraphOption option, bool value)
 
bool BNIsFlowGraphOptionSet (BNFlowGraph *graph, BNFlowGraphOption option)
 
bool BNIsNodeValidForFlowGraph (BNFlowGraph *graph, BNFlowGraphNode *node)
 
BNSymbol * BNCreateSymbol (BNSymbolType type, const char *shortName, const char *fullName, const char *rawName, uint64_t addr, BNSymbolBinding binding, const BNNameSpace *nameSpace, uint64_t ordinal)
 
BNSymbol * BNNewSymbolReference (BNSymbol *sym)
 
void BNFreeSymbol (BNSymbol *sym)
 
BNSymbolType BNGetSymbolType (BNSymbol *sym)
 
BNSymbolBinding BNGetSymbolBinding (BNSymbol *sym)
 
BNNameSpace BNGetSymbolNameSpace (BNSymbol *sym)
 
char * BNGetSymbolShortName (BNSymbol *sym)
 
char * BNGetSymbolFullName (BNSymbol *sym)
 
char * BNGetSymbolRawName (BNSymbol *sym)
 
void * BNGetSymbolRawBytes (BNSymbol *sym, size_t *count)
 
void BNFreeSymbolRawBytes (void *bytes)
 
uint64_t BNGetSymbolAddress (BNSymbol *sym)
 
uint64_t BNGetSymbolOrdinal (BNSymbol *sym)
 
bool BNIsSymbolAutoDefined (BNSymbol *sym)
 
BNSymbol * BNGetSymbolByAddress (BNBinaryView *view, uint64_t addr, const BNNameSpace *nameSpace)
 
BNSymbol * BNGetSymbolByRawName (BNBinaryView *view, const char *name, const BNNameSpace *nameSpace)
 
BNSymbol ** BNGetSymbolsByName (BNBinaryView *view, const char *name, size_t *count, const BNNameSpace *nameSpace)
 
BNSymbol ** BNGetSymbolsByRawName (BNBinaryView *view, const char *name, size_t *count, const BNNameSpace *nameSpace)
 
BNSymbol ** BNGetSymbols (BNBinaryView *view, size_t *count, const BNNameSpace *nameSpace)
 
BNSymbol ** BNGetSymbolsInRange (BNBinaryView *view, uint64_t start, uint64_t len, size_t *count, const BNNameSpace *nameSpace)
 
BNSymbol ** BNGetSymbolsOfType (BNBinaryView *view, BNSymbolType type, size_t *count, const BNNameSpace *nameSpace)
 
BNSymbol ** BNGetSymbolsOfTypeInRange (BNBinaryView *view, BNSymbolType type, uint64_t start, uint64_t len, size_t *count, const BNNameSpace *nameSpace)
 
void BNFreeSymbolList (BNSymbol **syms, size_t count)
 
BNSymbol ** BNGetVisibleSymbols (BNBinaryView *view, size_t *count, const BNNameSpace *nameSpace)
 
void BNDefineAutoSymbol (BNBinaryView *view, BNSymbol *sym)
 
void BNUndefineAutoSymbol (BNBinaryView *view, BNSymbol *sym)
 
void BNDefineUserSymbol (BNBinaryView *view, BNSymbol *sym)
 
void BNUndefineUserSymbol (BNBinaryView *view, BNSymbol *sym)
 
void BNDefineImportedFunction (BNBinaryView *view, BNSymbol *importAddressSym, BNFunction *func, BNType *type)
 
BNSymbol * BNDefineAutoSymbolAndVariableOrFunction (BNBinaryView *view, BNPlatform *platform, BNSymbol *sym, BNType *type)
 
void BNBeginBulkModifySymbols (BNBinaryView *view)
 
void BNEndBulkModifySymbols (BNBinaryView *view)
 
BNDebugInfo * BNGetDebugInfo (BNBinaryView *view)
 
void BNApplyDebugInfo (BNBinaryView *view, BNDebugInfo *newDebugInfo)
 
void BNSetDebugInfo (BNBinaryView *view, BNDebugInfo *newDebugInfo)
 
BNSymbol * BNImportedFunctionFromImportAddressSymbol (BNSymbol *sym, uint64_t addr)
 
BNLowLevelILFunction * BNCreateLowLevelILFunction (BNArchitecture *arch, BNFunction *func)
 
BNLowLevelILFunction * BNNewLowLevelILFunctionReference (BNLowLevelILFunction *func)
 
void BNFreeLowLevelILFunction (BNLowLevelILFunction *func)
 
BNFunction * BNGetLowLevelILOwnerFunction (BNLowLevelILFunction *func)
 
uint64_t BNLowLevelILGetCurrentAddress (BNLowLevelILFunction *func)
 
void BNLowLevelILSetCurrentAddress (BNLowLevelILFunction *func, BNArchitecture *arch, uint64_t addr)
 
void BNLowLevelILSetCurrentSourceBlock (BNLowLevelILFunction *func, BNBasicBlock *source)
 
size_t BNLowLevelILGetInstructionStart (BNLowLevelILFunction *func, BNArchitecture *arch, uint64_t addr)
 
void BNLowLevelILClearIndirectBranches (BNLowLevelILFunction *func)
 
void BNLowLevelILSetIndirectBranches (BNLowLevelILFunction *func, BNArchitectureAndAddress *branches, size_t count)
 
size_t BNLowLevelILAddExpr (BNLowLevelILFunction *func, BNLowLevelILOperation operation, size_t size, uint32_t flags, uint64_t a, uint64_t b, uint64_t c, uint64_t d)
 
size_t BNLowLevelILAddExprWithLocation (BNLowLevelILFunction *func, uint64_t addr, uint32_t sourceOperand, BNLowLevelILOperation operation, size_t size, uint32_t flags, uint64_t a, uint64_t b, uint64_t c, uint64_t d)
 
void BNLowLevelILSetExprSourceOperand (BNLowLevelILFunction *func, size_t expr, uint32_t operand)
 
size_t BNLowLevelILAddInstruction (BNLowLevelILFunction *func, size_t expr)
 
size_t BNLowLevelILGoto (BNLowLevelILFunction *func, BNLowLevelILLabel *label)
 
size_t BNLowLevelILGotoWithLocation (BNLowLevelILFunction *func, BNLowLevelILLabel *label, uint64_t addr, uint32_t sourceOperand)
 
size_t BNLowLevelILIf (BNLowLevelILFunction *func, uint64_t op, BNLowLevelILLabel *t, BNLowLevelILLabel *f)
 
size_t BNLowLevelILIfWithLocation (BNLowLevelILFunction *func, uint64_t op, BNLowLevelILLabel *t, BNLowLevelILLabel *f, uint64_t addr, uint32_t sourceOperand)
 
void BNLowLevelILInitLabel (BNLowLevelILLabel *label)
 
void BNLowLevelILMarkLabel (BNLowLevelILFunction *func, BNLowLevelILLabel *label)
 
void BNFinalizeLowLevelILFunction (BNLowLevelILFunction *func)
 
void BNGenerateLowLevelILSSAForm (BNLowLevelILFunction *func)
 
void BNPrepareToCopyLowLevelILFunction (BNLowLevelILFunction *func, BNLowLevelILFunction *src)
 
void BNPrepareToCopyLowLevelILBasicBlock (BNLowLevelILFunction *func, BNBasicBlock *block)
 
BNLowLevelILLabelBNGetLabelForLowLevelILSourceInstruction (BNLowLevelILFunction *func, size_t instr)
 
size_t BNLowLevelILAddLabelMap (BNLowLevelILFunction *func, uint64_t *values, BNLowLevelILLabel **labels, size_t count)
 
size_t BNLowLevelILAddOperandList (BNLowLevelILFunction *func, uint64_t *operands, size_t count)
 
uint64_t * BNLowLevelILGetOperandList (BNLowLevelILFunction *func, size_t expr, size_t operand, size_t *count)
 
void BNLowLevelILFreeOperandList (uint64_t *operands)
 
BNLowLevelILInstruction BNGetLowLevelILByIndex (BNLowLevelILFunction *func, size_t i)
 
size_t BNGetLowLevelILIndexForInstruction (BNLowLevelILFunction *func, size_t i)
 
size_t BNGetLowLevelILInstructionForExpr (BNLowLevelILFunction *func, size_t expr)
 
size_t BNGetLowLevelILInstructionCount (BNLowLevelILFunction *func)
 
size_t BNGetLowLevelILExprCount (BNLowLevelILFunction *func)
 
void BNUpdateLowLevelILOperand (BNLowLevelILFunction *func, size_t instr, size_t operandIndex, uint64_t value)
 
void BNReplaceLowLevelILExpr (BNLowLevelILFunction *func, size_t expr, size_t newExpr)
 
void BNAddLowLevelILLabelForAddress (BNLowLevelILFunction *func, BNArchitecture *arch, uint64_t addr)
 
BNLowLevelILLabelBNGetLowLevelILLabelForAddress (BNLowLevelILFunction *func, BNArchitecture *arch, uint64_t addr)
 
bool BNGetLowLevelILExprText (BNLowLevelILFunction *func, BNArchitecture *arch, size_t i, BNInstructionTextToken **tokens, size_t *count)
 
bool BNGetLowLevelILInstructionText (BNLowLevelILFunction *il, BNFunction *func, BNArchitecture *arch, size_t i, BNInstructionTextToken **tokens, size_t *count)
 
uint32_t BNGetLowLevelILTemporaryRegisterCount (BNLowLevelILFunction *func)
 
uint32_t BNGetLowLevelILTemporaryFlagCount (BNLowLevelILFunction *func)
 
BNBasicBlock ** BNGetLowLevelILBasicBlockList (BNLowLevelILFunction *func, size_t *count)
 
BNBasicBlock * BNGetLowLevelILBasicBlockForInstruction (BNLowLevelILFunction *func, size_t i)
 
BNLowLevelILFunction * BNGetLowLevelILSSAForm (BNLowLevelILFunction *func)
 
BNLowLevelILFunction * BNGetLowLevelILNonSSAForm (BNLowLevelILFunction *func)
 
size_t BNGetLowLevelILSSAInstructionIndex (BNLowLevelILFunction *func, size_t instr)
 
size_t BNGetLowLevelILNonSSAInstructionIndex (BNLowLevelILFunction *func, size_t instr)
 
size_t BNGetLowLevelILSSAExprIndex (BNLowLevelILFunction *func, size_t expr)
 
size_t BNGetLowLevelILNonSSAExprIndex (BNLowLevelILFunction *func, size_t expr)
 
size_t BNGetLowLevelILSSARegisterDefinition (BNLowLevelILFunction *func, uint32_t reg, size_t version)
 
size_t BNGetLowLevelILSSAFlagDefinition (BNLowLevelILFunction *func, uint32_t reg, size_t version)
 
size_t BNGetLowLevelILSSAMemoryDefinition (BNLowLevelILFunction *func, size_t version)
 
size_t * BNGetLowLevelILSSARegisterUses (BNLowLevelILFunction *func, uint32_t reg, size_t version, size_t *count)
 
size_t * BNGetLowLevelILSSAFlagUses (BNLowLevelILFunction *func, uint32_t reg, size_t version, size_t *count)
 
size_t * BNGetLowLevelILSSAMemoryUses (BNLowLevelILFunction *func, size_t version, size_t *count)
 
BNRegisterValue BNGetLowLevelILSSARegisterValue (BNLowLevelILFunction *func, uint32_t reg, size_t version)
 
BNRegisterValue BNGetLowLevelILSSAFlagValue (BNLowLevelILFunction *func, uint32_t flag, size_t version)
 
BNRegisterValue BNGetLowLevelILExprValue (BNLowLevelILFunction *func, size_t expr)
 
BNPossibleValueSet BNGetLowLevelILPossibleExprValues (BNLowLevelILFunction *func, size_t expr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNRegisterValue BNGetLowLevelILRegisterValueAtInstruction (BNLowLevelILFunction *func, uint32_t reg, size_t instr)
 
BNRegisterValue BNGetLowLevelILRegisterValueAfterInstruction (BNLowLevelILFunction *func, uint32_t reg, size_t instr)
 
BNPossibleValueSet BNGetLowLevelILPossibleRegisterValuesAtInstruction (BNLowLevelILFunction *func, uint32_t reg, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNPossibleValueSet BNGetLowLevelILPossibleRegisterValuesAfterInstruction (BNLowLevelILFunction *func, uint32_t reg, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNRegisterValue BNGetLowLevelILFlagValueAtInstruction (BNLowLevelILFunction *func, uint32_t flag, size_t instr)
 
BNRegisterValue BNGetLowLevelILFlagValueAfterInstruction (BNLowLevelILFunction *func, uint32_t flag, size_t instr)
 
BNPossibleValueSet BNGetLowLevelILPossibleFlagValuesAtInstruction (BNLowLevelILFunction *func, uint32_t flag, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNPossibleValueSet BNGetLowLevelILPossibleFlagValuesAfterInstruction (BNLowLevelILFunction *func, uint32_t flag, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNRegisterValue BNGetLowLevelILStackContentsAtInstruction (BNLowLevelILFunction *func, int64_t offset, size_t len, size_t instr)
 
BNRegisterValue BNGetLowLevelILStackContentsAfterInstruction (BNLowLevelILFunction *func, int64_t offset, size_t len, size_t instr)
 
BNPossibleValueSet BNGetLowLevelILPossibleStackContentsAtInstruction (BNLowLevelILFunction *func, int64_t offset, size_t len, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNPossibleValueSet BNGetLowLevelILPossibleStackContentsAfterInstruction (BNLowLevelILFunction *func, int64_t offset, size_t len, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
uint32_t * BNGetLowLevelRegisters (BNLowLevelILFunction *func, size_t *count)
 
uint32_t * BNGetLowLevelRegisterStacks (BNLowLevelILFunction *func, size_t *count)
 
uint32_t * BNGetLowLevelFlags (BNLowLevelILFunction *func, size_t *count)
 
size_t * BNGetLowLevelRegisterSSAVersions (BNLowLevelILFunction *func, const uint32_t var, size_t *count)
 
size_t * BNGetLowLevelRegisterStackSSAVersions (BNLowLevelILFunction *func, const uint32_t var, size_t *count)
 
size_t * BNGetLowLevelFlagSSAVersions (BNLowLevelILFunction *func, const uint32_t var, size_t *count)
 
size_t * BNGetLowLevelMemoryVersions (BNLowLevelILFunction *func, size_t *count)
 
void BNFreeLLILVariablesList (uint32_t *vars)
 
void BNFreeLLILVariableVersionList (size_t *versions)
 
BNMediumLevelILFunction * BNGetMediumLevelILForLowLevelIL (BNLowLevelILFunction *func)
 
BNMediumLevelILFunction * BNGetMappedMediumLevelIL (BNLowLevelILFunction *func)
 
size_t BNGetMediumLevelILInstructionIndex (BNLowLevelILFunction *func, size_t instr)
 
size_t BNGetMediumLevelILExprIndex (BNLowLevelILFunction *func, size_t expr)
 
size_t * BNGetMediumLevelILExprIndexes (BNLowLevelILFunction *func, size_t expr, size_t *count)
 
size_t BNGetMappedMediumLevelILInstructionIndex (BNLowLevelILFunction *func, size_t instr)
 
size_t BNGetMappedMediumLevelILExprIndex (BNLowLevelILFunction *func, size_t expr)
 
BNMediumLevelILFunction * BNCreateMediumLevelILFunction (BNArchitecture *arch, BNFunction *func)
 
BNMediumLevelILFunction * BNNewMediumLevelILFunctionReference (BNMediumLevelILFunction *func)
 
void BNFreeMediumLevelILFunction (BNMediumLevelILFunction *func)
 
BNFunction * BNGetMediumLevelILOwnerFunction (BNMediumLevelILFunction *func)
 
uint64_t BNMediumLevelILGetCurrentAddress (BNMediumLevelILFunction *func)
 
void BNMediumLevelILSetCurrentAddress (BNMediumLevelILFunction *func, BNArchitecture *arch, uint64_t addr)
 
size_t BNMediumLevelILGetInstructionStart (BNMediumLevelILFunction *func, BNArchitecture *arch, uint64_t addr)
 
size_t BNMediumLevelILAddExpr (BNMediumLevelILFunction *func, BNMediumLevelILOperation operation, size_t size, uint64_t a, uint64_t b, uint64_t c, uint64_t d, uint64_t e)
 
size_t BNMediumLevelILAddExprWithLocation (BNMediumLevelILFunction *func, BNMediumLevelILOperation operation, uint64_t addr, uint32_t sourceOperand, size_t size, uint64_t a, uint64_t b, uint64_t c, uint64_t d, uint64_t e)
 
size_t BNMediumLevelILAddInstruction (BNMediumLevelILFunction *func, size_t expr)
 
size_t BNMediumLevelILGoto (BNMediumLevelILFunction *func, BNMediumLevelILLabel *label)
 
size_t BNMediumLevelILGotoWithLocation (BNMediumLevelILFunction *func, BNMediumLevelILLabel *label, uint64_t addr, uint32_t sourceOperand)
 
size_t BNMediumLevelILIf (BNMediumLevelILFunction *func, uint64_t op, BNMediumLevelILLabel *t, BNMediumLevelILLabel *f)
 
size_t BNMediumLevelILIfWithLocation (BNMediumLevelILFunction *func, uint64_t op, BNMediumLevelILLabel *t, BNMediumLevelILLabel *f, uint64_t addr, uint32_t sourceOperand)
 
void BNMediumLevelILInitLabel (BNMediumLevelILLabel *label)
 
void BNMediumLevelILMarkLabel (BNMediumLevelILFunction *func, BNMediumLevelILLabel *label)
 
void BNFinalizeMediumLevelILFunction (BNMediumLevelILFunction *func)
 
void BNGenerateMediumLevelILSSAForm (BNMediumLevelILFunction *func, bool analyzeConditionals, bool handleAliases, BNVariable *knownNotAliases, size_t knownNotAliasCount, BNVariable *knownAliases, size_t knownAliasCount)
 
void BNPrepareToCopyMediumLevelILFunction (BNMediumLevelILFunction *func, BNMediumLevelILFunction *src)
 
void BNPrepareToCopyMediumLevelILBasicBlock (BNMediumLevelILFunction *func, BNBasicBlock *block)
 
BNMediumLevelILLabelBNGetLabelForMediumLevelILSourceInstruction (BNMediumLevelILFunction *func, size_t instr)
 
size_t BNMediumLevelILAddLabelMap (BNMediumLevelILFunction *func, uint64_t *values, BNMediumLevelILLabel **labels, size_t count)
 
size_t BNMediumLevelILAddOperandList (BNMediumLevelILFunction *func, uint64_t *operands, size_t count)
 
uint64_t * BNMediumLevelILGetOperandList (BNMediumLevelILFunction *func, size_t expr, size_t operand, size_t *count)
 
void BNMediumLevelILFreeOperandList (uint64_t *operands)
 
BNMediumLevelILInstruction BNGetMediumLevelILByIndex (BNMediumLevelILFunction *func, size_t i)
 
size_t BNGetMediumLevelILIndexForInstruction (BNMediumLevelILFunction *func, size_t i)
 
size_t BNGetMediumLevelILInstructionForExpr (BNMediumLevelILFunction *func, size_t expr)
 
size_t BNGetMediumLevelILInstructionCount (BNMediumLevelILFunction *func)
 
size_t BNGetMediumLevelILExprCount (BNMediumLevelILFunction *func)
 
void BNUpdateMediumLevelILOperand (BNMediumLevelILFunction *func, size_t instr, size_t operandIndex, uint64_t value)
 
void BNMarkMediumLevelILInstructionForRemoval (BNMediumLevelILFunction *func, size_t instr)
 
void BNReplaceMediumLevelILInstruction (BNMediumLevelILFunction *func, size_t instr, size_t expr)
 
void BNReplaceMediumLevelILExpr (BNMediumLevelILFunction *func, size_t expr, size_t newExpr)
 
bool BNGetMediumLevelILExprText (BNMediumLevelILFunction *func, BNArchitecture *arch, size_t i, BNInstructionTextToken **tokens, size_t *count, BNDisassemblySettings *settings)
 
bool BNGetMediumLevelILInstructionText (BNMediumLevelILFunction *il, BNFunction *func, BNArchitecture *arch, size_t i, BNInstructionTextToken **tokens, size_t *count, BNDisassemblySettings *settings)
 
BNBasicBlock ** BNGetMediumLevelILBasicBlockList (BNMediumLevelILFunction *func, size_t *count)
 
BNBasicBlock * BNGetMediumLevelILBasicBlockForInstruction (BNMediumLevelILFunction *func, size_t i)
 
BNMediumLevelILFunction * BNGetMediumLevelILSSAForm (BNMediumLevelILFunction *func)
 
BNMediumLevelILFunction * BNGetMediumLevelILNonSSAForm (BNMediumLevelILFunction *func)
 
size_t BNGetMediumLevelILSSAInstructionIndex (BNMediumLevelILFunction *func, size_t instr)
 
size_t BNGetMediumLevelILNonSSAInstructionIndex (BNMediumLevelILFunction *func, size_t instr)
 
size_t BNGetMediumLevelILSSAExprIndex (BNMediumLevelILFunction *func, size_t expr)
 
size_t BNGetMediumLevelILNonSSAExprIndex (BNMediumLevelILFunction *func, size_t expr)
 
size_t BNGetMediumLevelILSSAVarDefinition (BNMediumLevelILFunction *func, const BNVariable *var, size_t version)
 
size_t BNGetMediumLevelILSSAMemoryDefinition (BNMediumLevelILFunction *func, size_t version)
 
size_t * BNGetMediumLevelILSSAVarUses (BNMediumLevelILFunction *func, const BNVariable *var, size_t version, size_t *count)
 
size_t * BNGetMediumLevelILSSAMemoryUses (BNMediumLevelILFunction *func, size_t version, size_t *count)
 
bool BNIsMediumLevelILSSAVarLive (BNMediumLevelILFunction *func, const BNVariable *var, size_t version)
 
BNVariableBNGetMediumLevelILVariables (BNMediumLevelILFunction *func, size_t *count)
 
BNVariableBNGetMediumLevelILAliasedVariables (BNMediumLevelILFunction *func, size_t *count)
 
size_t * BNGetMediumLevelILVariableSSAVersions (BNMediumLevelILFunction *func, const BNVariable *var, size_t *count)
 
size_t * BNGetMediumLevelILVariableDefinitions (BNMediumLevelILFunction *func, const BNVariable *var, size_t *count)
 
size_t * BNGetMediumLevelILVariableUses (BNMediumLevelILFunction *func, const BNVariable *var, size_t *count)
 
BNRegisterValue BNGetMediumLevelILSSAVarValue (BNMediumLevelILFunction *func, const BNVariable *var, size_t version)
 
BNRegisterValue BNGetMediumLevelILExprValue (BNMediumLevelILFunction *func, size_t expr)
 
BNPossibleValueSet BNGetMediumLevelILPossibleSSAVarValues (BNMediumLevelILFunction *func, const BNVariable *var, size_t version, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNPossibleValueSet BNGetMediumLevelILPossibleExprValues (BNMediumLevelILFunction *func, size_t expr, BNDataFlowQueryOption *options, size_t optionCount)
 
size_t BNGetMediumLevelILSSAVarVersionAtILInstruction (BNMediumLevelILFunction *func, const BNVariable *var, size_t instr)
 
size_t BNGetMediumLevelILSSAMemoryVersionAtILInstruction (BNMediumLevelILFunction *func, size_t instr)
 
BNVariable BNGetMediumLevelILVariableForRegisterAtInstruction (BNMediumLevelILFunction *func, uint32_t reg, size_t instr)
 
BNVariable BNGetMediumLevelILVariableForFlagAtInstruction (BNMediumLevelILFunction *func, uint32_t flag, size_t instr)
 
BNVariable BNGetMediumLevelILVariableForStackLocationAtInstruction (BNMediumLevelILFunction *func, int64_t offset, size_t instr)
 
BNRegisterValue BNGetMediumLevelILRegisterValueAtInstruction (BNMediumLevelILFunction *func, uint32_t reg, size_t instr)
 
BNRegisterValue BNGetMediumLevelILRegisterValueAfterInstruction (BNMediumLevelILFunction *func, uint32_t reg, size_t instr)
 
BNPossibleValueSet BNGetMediumLevelILPossibleRegisterValuesAtInstruction (BNMediumLevelILFunction *func, uint32_t reg, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNPossibleValueSet BNGetMediumLevelILPossibleRegisterValuesAfterInstruction (BNMediumLevelILFunction *func, uint32_t reg, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNRegisterValue BNGetMediumLevelILFlagValueAtInstruction (BNMediumLevelILFunction *func, uint32_t flag, size_t instr)
 
BNRegisterValue BNGetMediumLevelILFlagValueAfterInstruction (BNMediumLevelILFunction *func, uint32_t flag, size_t instr)
 
BNPossibleValueSet BNGetMediumLevelILPossibleFlagValuesAtInstruction (BNMediumLevelILFunction *func, uint32_t flag, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNPossibleValueSet BNGetMediumLevelILPossibleFlagValuesAfterInstruction (BNMediumLevelILFunction *func, uint32_t flag, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNRegisterValue BNGetMediumLevelILStackContentsAtInstruction (BNMediumLevelILFunction *func, int64_t offset, size_t len, size_t instr)
 
BNRegisterValue BNGetMediumLevelILStackContentsAfterInstruction (BNMediumLevelILFunction *func, int64_t offset, size_t len, size_t instr)
 
BNPossibleValueSet BNGetMediumLevelILPossibleStackContentsAtInstruction (BNMediumLevelILFunction *func, int64_t offset, size_t len, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNPossibleValueSet BNGetMediumLevelILPossibleStackContentsAfterInstruction (BNMediumLevelILFunction *func, int64_t offset, size_t len, size_t instr, BNDataFlowQueryOption *options, size_t optionCount)
 
BNILBranchDependence BNGetMediumLevelILBranchDependence (BNMediumLevelILFunction *func, size_t curInstr, size_t branchInstr)
 
BNILBranchInstructionAndDependenceBNGetAllMediumLevelILBranchDependence (BNMediumLevelILFunction *func, size_t instr, size_t *count)
 
void BNFreeILBranchDependenceList (BNILBranchInstructionAndDependence *branches)
 
BNLowLevelILFunction * BNGetLowLevelILForMediumLevelIL (BNMediumLevelILFunction *func)
 
size_t BNGetLowLevelILInstructionIndex (BNMediumLevelILFunction *func, size_t instr)
 
size_t BNGetLowLevelILExprIndex (BNMediumLevelILFunction *func, size_t expr)
 
size_t * BNGetLowLevelILExprIndexes (BNMediumLevelILFunction *func, size_t expr, size_t *count)
 
BNHighLevelILFunction * BNGetHighLevelILForMediumLevelIL (BNMediumLevelILFunction *func)
 
size_t BNGetHighLevelILInstructionIndex (BNMediumLevelILFunction *func, size_t instr)
 
size_t BNGetHighLevelILExprIndex (BNMediumLevelILFunction *func, size_t expr)
 
size_t * BNGetHighLevelILExprIndexes (BNMediumLevelILFunction *func, size_t expr, size_t *count)
 
BNTypeWithConfidence BNGetMediumLevelILExprType (BNMediumLevelILFunction *func, size_t expr)
 
BNHighLevelILFunction * BNCreateHighLevelILFunction (BNArchitecture *arch, BNFunction *func)
 
BNHighLevelILFunction * BNNewHighLevelILFunctionReference (BNHighLevelILFunction *func)
 
void BNFreeHighLevelILFunction (BNHighLevelILFunction *func)
 
BNFunction * BNGetHighLevelILOwnerFunction (BNHighLevelILFunction *func)
 
uint64_t BNHighLevelILGetCurrentAddress (BNHighLevelILFunction *func)
 
void BNHighLevelILSetCurrentAddress (BNHighLevelILFunction *func, BNArchitecture *arch, uint64_t addr)
 
size_t BNHighLevelILAddExpr (BNHighLevelILFunction *func, BNHighLevelILOperation operation, size_t size, uint64_t a, uint64_t b, uint64_t c, uint64_t d, uint64_t e)
 
size_t BNHighLevelILAddExprWithLocation (BNHighLevelILFunction *func, BNHighLevelILOperation operation, uint64_t addr, uint32_t sourceOperand, size_t size, uint64_t a, uint64_t b, uint64_t c, uint64_t d, uint64_t e)
 
size_t BNGetHighLevelILRootExpr (BNHighLevelILFunction *func)
 
void BNSetHighLevelILRootExpr (BNHighLevelILFunction *func, size_t expr)
 
void BNFinalizeHighLevelILFunction (BNHighLevelILFunction *func)
 
void BNGenerateHighLevelILSSAForm (BNHighLevelILFunction *func, BNVariable *aliases, size_t aliasCount)
 
size_t BNHighLevelILAddOperandList (BNHighLevelILFunction *func, uint64_t *operands, size_t count)
 
uint64_t * BNHighLevelILGetOperandList (BNHighLevelILFunction *func, size_t expr, size_t operand, size_t *count)
 
void BNHighLevelILFreeOperandList (uint64_t *operands)
 
BNHighLevelILInstruction BNGetHighLevelILByIndex (BNHighLevelILFunction *func, size_t i, bool asFullAst)
 
size_t BNGetHighLevelILIndexForInstruction (BNHighLevelILFunction *func, size_t i)
 
size_t BNGetHighLevelILInstructionForExpr (BNHighLevelILFunction *func, size_t expr)
 
size_t BNGetHighLevelILInstructionCount (BNHighLevelILFunction *func)
 
size_t BNGetHighLevelILExprCount (BNHighLevelILFunction *func)
 
BNMediumLevelILFunction * BNGetMediumLevelILForHighLevelILFunction (BNHighLevelILFunction *func)
 
size_t BNGetMediumLevelILExprIndexFromHighLevelIL (BNHighLevelILFunction *func, size_t expr)
 
size_t * BNGetMediumLevelILExprIndexesFromHighLevelIL (BNHighLevelILFunction *func, size_t expr, size_t *count)
 
void BNUpdateHighLevelILOperand (BNHighLevelILFunction *func, size_t instr, size_t operandIndex, uint64_t value)
 
void BNReplaceHighLevelILExpr (BNHighLevelILFunction *func, size_t expr, size_t newExpr)
 
BNDisassemblyTextLineBNGetHighLevelILExprText (BNHighLevelILFunction *func, size_t expr, bool asFullAst, size_t *count, BNDisassemblySettings *settings)
 
BNTypeWithConfidence BNGetHighLevelILExprType (BNHighLevelILFunction *func, size_t expr)
 
BNBasicBlock ** BNGetHighLevelILBasicBlockList (BNHighLevelILFunction *func, size_t *count)
 
BNBasicBlock * BNGetHighLevelILBasicBlockForInstruction (BNHighLevelILFunction *func, size_t i)
 
BNHighLevelILFunction * BNGetHighLevelILSSAForm (BNHighLevelILFunction *func)
 
BNHighLevelILFunction * BNGetHighLevelILNonSSAForm (BNHighLevelILFunction *func)
 
size_t BNGetHighLevelILSSAInstructionIndex (BNHighLevelILFunction *func, size_t instr)
 
size_t BNGetHighLevelILNonSSAInstructionIndex (BNHighLevelILFunction *func, size_t instr)
 
size_t BNGetHighLevelILSSAExprIndex (BNHighLevelILFunction *func, size_t expr)
 
size_t BNGetHighLevelILNonSSAExprIndex (BNHighLevelILFunction *func, size_t expr)
 
size_t BNGetHighLevelILSSAVarDefinition (BNHighLevelILFunction *func, const BNVariable *var, size_t version)
 
size_t BNGetHighLevelILSSAMemoryDefinition (BNHighLevelILFunction *func, size_t version)
 
size_t * BNGetHighLevelILSSAVarUses (BNHighLevelILFunction *func, const BNVariable *var, size_t version, size_t *count)
 
size_t * BNGetHighLevelILSSAMemoryUses (BNHighLevelILFunction *func, size_t version, size_t *count)
 
bool BNIsHighLevelILSSAVarLive (BNHighLevelILFunction *func, const BNVariable *var, size_t version)
 
bool BNIsHighLevelILSSAVarLiveAt (BNHighLevelILFunction *func, const BNVariable *var, const size_t version, const size_t instr)
 
bool BNIsHighLevelILVarLiveAt (BNHighLevelILFunction *func, const BNVariable *var, const size_t instr)
 
BNVariableBNGetHighLevelILVariables (BNHighLevelILFunction *func, size_t *count)
 
BNVariableBNGetHighLevelILAliasedVariables (BNHighLevelILFunction *func, size_t *count)
 
size_t * BNGetHighLevelILVariableSSAVersions (BNHighLevelILFunction *func, const BNVariable *var, size_t *count)
 
size_t * BNGetHighLevelILVariableDefinitions (BNHighLevelILFunction *func, const BNVariable *var, size_t *count)
 
size_t * BNGetHighLevelILVariableUses (BNHighLevelILFunction *func, const BNVariable *var, size_t *count)
 
size_t BNGetHighLevelILSSAVarVersionAtILInstruction (BNHighLevelILFunction *func, const BNVariable *var, size_t instr)
 
size_t BNGetHighLevelILSSAMemoryVersionAtILInstruction (BNHighLevelILFunction *func, size_t instr)
 
size_t BNGetHighLevelILExprIndexForLabel (BNHighLevelILFunction *func, uint64_t label)
 
size_t * BNGetHighLevelILUsesForLabel (BNHighLevelILFunction *func, uint64_t label, size_t *count)
 
bool BNHighLevelILExprLessThan (BNHighLevelILFunction *leftFunc, size_t leftExpr, BNHighLevelILFunction *rightFunc, size_t rightExpr)
 
bool BNHighLevelILExprEqual (BNHighLevelILFunction *leftFunc, size_t leftExpr, BNHighLevelILFunction *rightFunc, size_t rightExpr)
 
BNTypeLibrary * BNNewTypeLibrary (BNArchitecture *arch, const char *name)
 
BNTypeLibrary * BNNewTypeLibraryReference (BNTypeLibrary *lib)
 
BNTypeLibrary * BNDuplicateTypeLibrary (BNTypeLibrary *lib)
 
BNTypeLibrary * BNLoadTypeLibraryFromFile (const char *path)
 
void BNFreeTypeLibrary (BNTypeLibrary *lib)
 
BNTypeLibrary * BNLookupTypeLibraryByName (BNArchitecture *arch, const char *name)
 
BNTypeLibrary * BNLookupTypeLibraryByGuid (BNArchitecture *arch, const char *guid)
 
BNTypeLibrary ** BNGetArchitectureTypeLibraries (BNArchitecture *arch, size_t *count)
 
void BNFreeTypeLibraryList (BNTypeLibrary **lib, size_t count)
 
void BNFinalizeTypeLibrary (BNTypeLibrary *lib)
 
BNArchitecture * BNGetTypeLibraryArchitecture (BNTypeLibrary *lib)
 
void BNSetTypeLibraryName (BNTypeLibrary *lib, const char *name)
 
char * BNGetTypeLibraryName (BNTypeLibrary *lib)
 
void BNAddTypeLibraryAlternateName (BNTypeLibrary *lib, const char *name)
 
char ** BNGetTypeLibraryAlternateNames (BNTypeLibrary *lib, size_t *count)
 
void BNSetTypeLibraryDependencyName (BNTypeLibrary *lib, const char *name)
 
char * BNGetTypeLibraryDependencyName (BNTypeLibrary *lib)
 
void BNSetTypeLibraryGuid (BNTypeLibrary *lib, const char *name)
 
char * BNGetTypeLibraryGuid (BNTypeLibrary *lib)
 
void BNClearTypeLibraryPlatforms (BNTypeLibrary *lib)
 
void BNAddTypeLibraryPlatform (BNTypeLibrary *lib, BNPlatform *platform)
 
char ** BNGetTypeLibraryPlatforms (BNTypeLibrary *lib, size_t *count)
 
void BNTypeLibraryStoreMetadata (BNTypeLibrary *lib, const char *key, BNMetadata *value)
 
BNMetadata * BNTypeLibraryQueryMetadata (BNTypeLibrary *lib, const char *key)
 
void BNTypeLibraryRemoveMetadata (BNTypeLibrary *lib, const char *key)
 
void BNAddTypeLibraryNamedObject (BNTypeLibrary *lib, BNQualifiedName *name, BNType *type)
 
void BNAddTypeLibraryNamedType (BNTypeLibrary *lib, BNQualifiedName *name, BNType *type)
 
void BNAddTypeLibraryNamedTypeSource (BNTypeLibrary *lib, BNQualifiedName *name, const char *source)
 
BNType * BNGetTypeLibraryNamedObject (BNTypeLibrary *lib, BNQualifiedName *name)
 
BNType * BNGetTypeLibraryNamedType (BNTypeLibrary *lib, BNQualifiedName *name)
 
BNQualifiedNameAndTypeBNGetTypeLibraryNamedObjects (BNTypeLibrary *lib, size_t *count)
 
BNQualifiedNameAndTypeBNGetTypeLibraryNamedTypes (BNTypeLibrary *lib, size_t *count)
 
void BNWriteTypeLibraryToFile (BNTypeLibrary *lib, const char *path)
 
void BNAddBinaryViewTypeLibrary (BNBinaryView *view, BNTypeLibrary *lib)
 
BNTypeLibrary * BNGetBinaryViewTypeLibrary (BNBinaryView *view, const char *name)
 
BNTypeLibrary ** BNGetBinaryViewTypeLibraries (BNBinaryView *view, size_t *count)
 
BNType * BNBinaryViewImportTypeLibraryType (BNBinaryView *view, BNTypeLibrary *lib, BNQualifiedName *name)
 
BNType * BNBinaryViewImportTypeLibraryObject (BNBinaryView *view, BNTypeLibrary *lib, BNQualifiedName *name)
 
void BNBinaryViewExportTypeToTypeLibrary (BNBinaryView *view, BNTypeLibrary *lib, BNQualifiedName *name, BNType *type)
 
void BNBinaryViewExportObjectToTypeLibrary (BNBinaryView *view, BNTypeLibrary *lib, BNQualifiedName *name, BNType *type)
 
BNLanguageRepresentationFunction * BNCreateLanguageRepresentationFunction (BNArchitecture *arch, BNFunction *func)
 
BNLanguageRepresentationFunction * BNNewLanguageRepresentationFunctionReference (BNLanguageRepresentationFunction *func)
 
void BNFreeLanguageRepresentationFunction (BNLanguageRepresentationFunction *func)
 
BNFunction * BNGetLanguageRepresentationOwnerFunction (BNLanguageRepresentationFunction *func)
 
bool BNTypesEqual (BNType *a, BNType *b)
 
bool BNTypesNotEqual (BNType *a, BNType *b)
 
BNType * BNCreateVoidType (void)
 
BNType * BNCreateBoolType (void)
 
BNType * BNCreateIntegerType (size_t width, BNBoolWithConfidence *sign, const char *altName)
 
BNType * BNCreateFloatType (size_t width, const char *altName)
 
BNType * BNCreateWideCharType (size_t width, const char *altName)
 
BNType * BNCreateStructureType (BNStructure *s)
 
BNType * BNCreateEnumerationType (BNArchitecture *arch, BNEnumeration *e, size_t width, BNBoolWithConfidence *isSigned)
 
BNType * BNCreateEnumerationTypeOfWidth (BNEnumeration *e, size_t width, BNBoolWithConfidence *isSigned)
 
BNType * BNCreatePointerType (BNArchitecture *arch, const BNTypeWithConfidence *const type, BNBoolWithConfidence *cnst, BNBoolWithConfidence *vltl, BNReferenceType refType)
 
BNType * BNCreatePointerTypeOfWidth (size_t width, const BNTypeWithConfidence *const type, BNBoolWithConfidence *cnst, BNBoolWithConfidence *vltl, BNReferenceType refType)
 
BNType * BNCreateArrayType (const BNTypeWithConfidence *const type, uint64_t elem)
 
BNType * BNCreateFunctionType (BNTypeWithConfidence *returnValue, BNCallingConventionWithConfidence *callingConvention, BNFunctionParameter *params, size_t paramCount, BNBoolWithConfidence *varArg, BNBoolWithConfidence *canReturn, BNOffsetWithConfidence *stackAdjust, uint32_t *regStackAdjustRegs, BNOffsetWithConfidence *regStackAdjustValues, size_t regStackAdjustCount, BNRegisterSetWithConfidence *returnRegs, BNNameType ft)
 
BNType * BNNewTypeReference (BNType *type)
 
BNType * BNDuplicateType (BNType *type)
 
char * BNGetTypeAndName (BNType *type, BNQualifiedName *name, BNTokenEscapingType escaping)
 
void BNFreeType (BNType *type)
 
BNTypeBuilder * BNCreateTypeBuilderFromType (BNType *type)
 
BNTypeBuilder * BNCreateVoidTypeBuilder (void)
 
BNTypeBuilder * BNCreateBoolTypeBuilder (void)
 
BNTypeBuilder * BNCreateIntegerTypeBuilder (size_t width, BNBoolWithConfidence *sign, const char *altName)
 
BNTypeBuilder * BNCreateFloatTypeBuilder (size_t width, const char *altName)
 
BNTypeBuilder * BNCreateWideCharTypeBuilder (size_t width, const char *altName)
 
BNTypeBuilder * BNCreateStructureTypeBuilder (BNStructure *s)
 
BNTypeBuilder * BNCreateStructureTypeBuilderWithBuilder (BNStructureBuilder *s)
 
BNTypeBuilder * BNCreateEnumerationTypeBuilder (BNArchitecture *arch, BNEnumeration *e, size_t width, BNBoolWithConfidence *isSigned)
 
BNTypeBuilder * BNCreateEnumerationTypeBuilderWithBuilder (BNArchitecture *arch, BNEnumerationBuilder *e, size_t width, BNBoolWithConfidence *isSigned)
 
BNTypeBuilder * BNCreatePointerTypeBuilder (BNArchitecture *arch, const BNTypeWithConfidence *const type, BNBoolWithConfidence *cnst, BNBoolWithConfidence *vltl, BNReferenceType refType)
 
BNTypeBuilder * BNCreatePointerTypeBuilderOfWidth (size_t width, const BNTypeWithConfidence *const type, BNBoolWithConfidence *cnst, BNBoolWithConfidence *vltl, BNReferenceType refType)
 
BNTypeBuilder * BNCreateArrayTypeBuilder (const BNTypeWithConfidence *const type, uint64_t elem)
 
BNTypeBuilder * BNCreateFunctionTypeBuilder (BNTypeWithConfidence *returnValue, BNCallingConventionWithConfidence *callingConvention, BNFunctionParameter *params, size_t paramCount, BNBoolWithConfidence *varArg, BNBoolWithConfidence *canReturn, BNOffsetWithConfidence *stackAdjust, uint32_t *regStackAdjustRegs, BNOffsetWithConfidence *regStackAdjustValues, size_t regStackAdjustCount, BNRegisterSetWithConfidence *returnRegs, BNNameType ft)
 
BNType * BNFinalizeTypeBuilder (BNTypeBuilder *type)
 
BNTypeBuilder * BNDuplicateTypeBuilder (BNTypeBuilder *type)
 
char * BNGetTypeBuilderTypeAndName (BNTypeBuilder *type, BNQualifiedName *name)
 
void BNFreeTypeBuilder (BNTypeBuilder *type)
 
BNQualifiedName BNTypeGetTypeName (BNType *nt)
 
BNTypeClass BNGetTypeClass (BNType *type)
 
uint64_t BNGetTypeWidth (BNType *type)
 
size_t BNGetTypeAlignment (BNType *type)
 
BNIntegerDisplayType BNGetIntegerTypeDisplayType (BNType *type)
 
void BNSetIntegerTypeDisplayType (BNTypeBuilder *type, BNIntegerDisplayType displayType)
 
BNBoolWithConfidence BNIsTypeSigned (BNType *type)
 
BNBoolWithConfidence BNIsTypeConst (BNType *type)
 
BNBoolWithConfidence BNIsTypeVolatile (BNType *type)
 
bool BNIsTypeFloatingPoint (BNType *type)
 
BNTypeWithConfidence BNGetChildType (BNType *type)
 
BNCallingConventionWithConfidence BNGetTypeCallingConvention (BNType *type)
 
BNFunctionParameterBNGetTypeParameters (BNType *type, size_t *count)
 
void BNFreeTypeParameterList (BNFunctionParameter *types, size_t count)
 
BNBoolWithConfidence BNTypeHasVariableArguments (BNType *type)
 
BNBoolWithConfidence BNFunctionTypeCanReturn (BNType *type)
 
BNStructure * BNGetTypeStructure (BNType *type)
 
BNEnumeration * BNGetTypeEnumeration (BNType *type)
 
BNNamedTypeReference * BNGetTypeNamedTypeReference (BNType *type)
 
uint64_t BNGetTypeElementCount (BNType *type)
 
uint64_t BNGetTypeOffset (BNType *type)
 
BNOffsetWithConfidence BNGetTypeStackAdjustment (BNType *type)
 
BNQualifiedName BNTypeGetStructureName (BNType *type)
 
BNNamedTypeReference * BNGetRegisteredTypeName (BNType *type)
 
BNReferenceType BNTypeGetReferenceType (BNType *type)
 
char * BNGetTypeAlternateName (BNType *type)
 
uint32_t BNTypeGetSystemCallNumber (BNType *type)
 
bool BNTypeIsSystemCall (BNType *type)
 
char * BNGetTypeString (BNType *type, BNPlatform *platform, BNTokenEscapingType escaping)
 
char * BNGetTypeStringBeforeName (BNType *type, BNPlatform *platform, BNTokenEscapingType escaping)
 
char * BNGetTypeStringAfterName (BNType *type, BNPlatform *platform, BNTokenEscapingType escaping)
 
BNInstructionTextTokenBNGetTypeTokens (BNType *type, BNPlatform *platform, uint8_t baseConfidence, BNTokenEscapingType escaping, size_t *count)
 
BNInstructionTextTokenBNGetTypeTokensBeforeName (BNType *type, BNPlatform *platform, uint8_t baseConfidence, BNTokenEscapingType escaping, size_t *count)
 
BNInstructionTextTokenBNGetTypeTokensAfterName (BNType *type, BNPlatform *platform, uint8_t baseConfidence, BNTokenEscapingType escaping, size_t *count)
 
BNType * BNTypeWithReplacedStructure (BNType *type, BNStructure *from, BNStructure *to)
 
BNType * BNTypeWithReplacedEnumeration (BNType *type, BNEnumeration *from, BNEnumeration *to)
 
BNType * BNTypeWithReplacedNamedTypeReference (BNType *type, BNNamedTypeReference *from, BNNamedTypeReference *to)
 
bool BNAddTypeMemberTokens (BNType *type, BNBinaryView *data, BNInstructionTextToken **tokens, size_t *tokenCount, int64_t offset, char ***nameList, size_t *nameCount, size_t size, bool indirect)
 
BNTypeDefinitionLineBNGetTypeLines (BNType *type, BNBinaryView *data, const char *name, int lineWidth, bool collapsed, BNTokenEscapingType escaping, size_t *count)
 
void BNFreeTypeDefinitionLineList (BNTypeDefinitionLine *list, size_t count)
 
BNQualifiedName BNTypeBuilderGetTypeName (BNTypeBuilder *nt)
 
void BNTypeBuilderSetTypeName (BNTypeBuilder *type, BNQualifiedName *name)
 
void BNTypeBuilderSetAlternateName (BNTypeBuilder *type, const char *name)
 
BNTypeClass BNGetTypeBuilderClass (BNTypeBuilder *type)
 
void BNTypeBuilderSetSystemCallNumber (BNTypeBuilder *type, bool v, uint32_t n)
 
uint64_t BNGetTypeBuilderWidth (BNTypeBuilder *type)
 
size_t BNGetTypeBuilderAlignment (BNTypeBuilder *type)
 
BNBoolWithConfidence BNIsTypeBuilderSigned (BNTypeBuilder *type)
 
BNBoolWithConfidence BNIsTypeBuilderConst (BNTypeBuilder *type)
 
BNBoolWithConfidence BNIsTypeBuilderVolatile (BNTypeBuilder *type)
 
bool BNIsTypeBuilderFloatingPoint (BNTypeBuilder *type)
 
BNTypeWithConfidence BNGetTypeBuilderChildType (BNTypeBuilder *type)
 
BNCallingConventionWithConfidence BNGetTypeBuilderCallingConvention (BNTypeBuilder *type)
 
BNFunctionParameterBNGetTypeBuilderParameters (BNTypeBuilder *type, size_t *count)
 
BNBoolWithConfidence BNTypeBuilderHasVariableArguments (BNTypeBuilder *type)
 
BNBoolWithConfidence BNFunctionTypeBuilderCanReturn (BNTypeBuilder *type)
 
BNStructure * BNGetTypeBuilderStructure (BNTypeBuilder *type)
 
BNEnumeration * BNGetTypeBuilderEnumeration (BNTypeBuilder *type)
 
BNNamedTypeReference * BNGetTypeBuilderNamedTypeReference (BNTypeBuilder *type)
 
uint64_t BNGetTypeBuilderElementCount (BNTypeBuilder *type)
 
uint64_t BNGetTypeBuilderOffset (BNTypeBuilder *type)
 
void BNSetFunctionTypeBuilderCanReturn (BNTypeBuilder *type, BNBoolWithConfidence *canReturn)
 
void BNSetFunctionTypeBuilderParameters (BNTypeBuilder *type, BNFunctionParameter *params, size_t paramCount)
 
void BNTypeBuilderSetConst (BNTypeBuilder *type, BNBoolWithConfidence *cnst)
 
void BNTypeBuilderSetVolatile (BNTypeBuilder *type, BNBoolWithConfidence *vltl)
 
void BNTypeBuilderSetSigned (BNTypeBuilder *type, BNBoolWithConfidence *sign)
 
void BNTypeBuilderSetChildType (BNTypeBuilder *type, BNTypeWithConfidence *child)
 
BNOffsetWithConfidence BNGetTypeBuilderStackAdjustment (BNTypeBuilder *type)
 
BNQualifiedName BNTypeBuilderGetStructureName (BNTypeBuilder *type)
 
BNReferenceType BNTypeBuilderGetReferenceType (BNTypeBuilder *type)
 
char * BNGetTypeBuilderAlternateName (BNTypeBuilder *type)
 
bool BNTypeBuilderIsSystemCall (BNTypeBuilder *type)
 
uint32_t BNTypeBuilderGetSystemCallNumber (BNTypeBuilder *type)
 
void BNTypeBuilderSetStackAdjustment (BNTypeBuilder *type, BNOffsetWithConfidence *adjust)
 
char * BNGetTypeBuilderString (BNTypeBuilder *type, BNPlatform *platform)
 
char * BNGetTypeBuilderStringBeforeName (BNTypeBuilder *type, BNPlatform *platform)
 
char * BNGetTypeBuilderStringAfterName (BNTypeBuilder *type, BNPlatform *platform)
 
BNInstructionTextTokenBNGetTypeBuilderTokens (BNTypeBuilder *type, BNPlatform *platform, uint8_t baseConfidence, size_t *count)
 
BNInstructionTextTokenBNGetTypeBuilderTokensBeforeName (BNTypeBuilder *type, BNPlatform *platform, uint8_t baseConfidence, size_t *count)
 
BNInstructionTextTokenBNGetTypeBuilderTokensAfterName (BNTypeBuilder *type, BNPlatform *platform, uint8_t baseConfidence, size_t *count)
 
BNType * BNCreateNamedTypeReference (BNNamedTypeReference *nt, size_t width, size_t align, BNBoolWithConfidence *cnst, BNBoolWithConfidence *vltl)
 
BNType * BNCreateNamedTypeReferenceFromTypeAndId (const char *id, BNQualifiedName *name, BNType *type)
 
BNType * BNCreateNamedTypeReferenceFromType (BNBinaryView *view, BNQualifiedName *name)
 
BNTypeBuilder * BNCreateNamedTypeReferenceBuilder (BNNamedTypeReference *nt, size_t width, size_t align, BNBoolWithConfidence *cnst, BNBoolWithConfidence *vltl)
 
BNTypeBuilder * BNCreateNamedTypeReferenceBuilderWithBuilder (BNNamedTypeReferenceBuilder *nt, size_t width, size_t align, BNBoolWithConfidence *cnst, BNBoolWithConfidence *vltl)
 
BNTypeBuilder * BNCreateNamedTypeReferenceBuilderFromTypeAndId (const char *id, BNQualifiedName *name, BNType *type)
 
BNTypeBuilder * BNCreateNamedTypeReferenceBuilderFromType (BNBinaryView *view, BNQualifiedName *name)
 
BNNamedTypeReference * BNCreateNamedType (BNNamedTypeReferenceClass cls, const char *id, BNQualifiedName *name)
 
BNNamedTypeReferenceClass BNGetTypeReferenceClass (BNNamedTypeReference *nt)
 
char * BNGetTypeReferenceId (BNNamedTypeReference *nt)
 
BNQualifiedName BNGetTypeReferenceName (BNNamedTypeReference *nt)
 
void BNFreeQualifiedName (BNQualifiedName *name)
 
void BNFreeNamedTypeReference (BNNamedTypeReference *nt)
 
BNNamedTypeReference * BNNewNamedTypeReference (BNNamedTypeReference *nt)
 
BNNamedTypeReferenceBuilder * BNCreateNamedTypeBuilder (BNNamedTypeReferenceClass cls, const char *id, BNQualifiedName *name)
 
void BNFreeNamedTypeReferenceBuilder (BNNamedTypeReferenceBuilder *s)
 
void BNSetNamedTypeReferenceBuilderTypeClass (BNNamedTypeReferenceBuilder *s, BNNamedTypeReferenceClass type)
 
void BNSetNamedTypeReferenceBuilderTypeId (BNNamedTypeReferenceBuilder *s, const char *id)
 
void BNSetNamedTypeReferenceBuilderName (BNNamedTypeReferenceBuilder *s, BNQualifiedName *name)
 
BNNamedTypeReference * BNFinalizeNamedTypeReferenceBuilder (BNNamedTypeReferenceBuilder *s)
 
BNNamedTypeReferenceClass BNGetTypeReferenceBuilderClass (BNNamedTypeReferenceBuilder *nt)
 
char * BNGetTypeReferenceBuilderId (BNNamedTypeReferenceBuilder *nt)
 
BNQualifiedName BNGetTypeReferenceBuilderName (BNNamedTypeReferenceBuilder *nt)
 
BNStructureBuilder * BNCreateStructureBuilder (void)
 
BNStructureBuilder * BNCreateStructureBuilderWithOptions (BNStructureVariant type, bool packed)
 
BNStructureBuilder * BNCreateStructureBuilderFromStructure (BNStructure *s)
 
BNStructureBuilder * BNDuplicateStructureBuilder (BNStructureBuilder *s)
 
BNStructure * BNFinalizeStructureBuilder (BNStructureBuilder *s)
 
BNStructure * BNNewStructureReference (BNStructure *s)
 
void BNFreeStructure (BNStructure *s)
 
void BNFreeStructureBuilder (BNStructureBuilder *s)
 
BNStructureMemberBNGetStructureMemberByName (BNStructure *s, const char *name)
 
BNStructureMemberBNGetStructureMemberAtOffset (BNStructure *s, int64_t offset, size_t *idx)
 
void BNFreeStructureMember (BNStructureMember *s)
 
BNStructureMemberBNGetStructureMembers (BNStructure *s, size_t *count)
 
void BNFreeStructureMemberList (BNStructureMember *members, size_t count)
 
uint64_t BNGetStructureWidth (BNStructure *s)
 
size_t BNGetStructureAlignment (BNStructure *s)
 
bool BNIsStructurePacked (BNStructure *s)
 
bool BNIsStructureUnion (BNStructure *s)
 
BNStructureVariant BNGetStructureType (BNStructure *s)
 
BNStructure * BNStructureWithReplacedStructure (BNStructure *s, BNStructure *from, BNStructure *to)
 
BNStructure * BNStructureWithReplacedEnumeration (BNStructure *s, BNEnumeration *from, BNEnumeration *to)
 
BNStructure * BNStructureWithReplacedNamedTypeReference (BNStructure *s, BNNamedTypeReference *from, BNNamedTypeReference *to)
 
BNStructureMemberBNGetStructureBuilderMemberByName (BNStructureBuilder *s, const char *name)
 
BNStructureMemberBNGetStructureBuilderMemberAtOffset (BNStructureBuilder *s, int64_t offset, size_t *idx)
 
BNStructureMemberBNGetStructureBuilderMembers (BNStructureBuilder *s, size_t *count)
 
uint64_t BNGetStructureBuilderWidth (BNStructureBuilder *s)
 
void BNSetStructureBuilderWidth (BNStructureBuilder *s, uint64_t width)
 
size_t BNGetStructureBuilderAlignment (BNStructureBuilder *s)
 
void BNSetStructureBuilderAlignment (BNStructureBuilder *s, size_t align)
 
bool BNIsStructureBuilderPacked (BNStructureBuilder *s)
 
void BNSetStructureBuilderPacked (BNStructureBuilder *s, bool packed)
 
bool BNIsStructureBuilderUnion (BNStructureBuilder *s)
 
void BNSetStructureBuilderType (BNStructureBuilder *s, BNStructureVariant type)
 
BNStructureVariant BNGetStructureBuilderType (BNStructureBuilder *s)
 
void BNAddStructureBuilderMember (BNStructureBuilder *s, const BNTypeWithConfidence *const type, const char *name, BNMemberAccess access, BNMemberScope scope)
 
void BNAddStructureBuilderMemberAtOffset (BNStructureBuilder *s, const BNTypeWithConfidence *const type, const char *name, uint64_t offset, bool overwriteExisting, BNMemberAccess access, BNMemberScope scope)
 
void BNRemoveStructureBuilderMember (BNStructureBuilder *s, size_t idx)
 
void BNReplaceStructureBuilderMember (BNStructureBuilder *s, size_t idx, const BNTypeWithConfidence *const type, const char *name, bool overwriteExisting)
 
BNEnumerationBuilder * BNCreateEnumerationBuilder (void)
 
BNEnumerationBuilder * BNCreateEnumerationBuilderFromEnumeration (BNEnumeration *e)
 
BNEnumerationBuilder * BNDuplicateEnumerationBuilder (BNEnumerationBuilder *e)
 
BNEnumeration * BNFinalizeEnumerationBuilder (BNEnumerationBuilder *e)
 
BNEnumeration * BNNewEnumerationReference (BNEnumeration *e)
 
void BNFreeEnumeration (BNEnumeration *e)
 
void BNFreeEnumerationBuilder (BNEnumerationBuilder *e)
 
BNEnumerationMemberBNGetEnumerationMembers (BNEnumeration *e, size_t *count)
 
void BNFreeEnumerationMemberList (BNEnumerationMember *members, size_t count)
 
BNEnumerationMemberBNGetEnumerationBuilderMembers (BNEnumerationBuilder *e, size_t *count)
 
void BNAddEnumerationBuilderMember (BNEnumerationBuilder *e, const char *name)
 
void BNAddEnumerationBuilderMemberWithValue (BNEnumerationBuilder *e, const char *name, uint64_t value)
 
void BNRemoveEnumerationBuilderMember (BNEnumerationBuilder *e, size_t idx)
 
void BNReplaceEnumerationBuilderMember (BNEnumerationBuilder *e, size_t idx, const char *name, uint64_t value)
 
BNStructure * BNCreateStructureFromOffsetAccess (BNBinaryView *view, BNQualifiedName *name, bool *newMember)
 
BNTypeWithConfidence BNCreateStructureMemberFromAccess (BNBinaryView *view, BNQualifiedName *name, uint64_t offset)
 
bool BNPreprocessSource (const char *source, const char *fileName, char **output, char **errors, const char **includeDirs, size_t includeDirCount)
 
bool BNParseTypesFromSource (BNPlatform *platform, const char *source, const char *fileName, BNTypeParserResult *result, char **errors, const char **includeDirs, size_t includeDirCount, const char *autoTypeSource)
 
bool BNParseTypesFromSourceFile (BNPlatform *platform, const char *fileName, BNTypeParserResult *result, char **errors, const char **includeDirs, size_t includeDirCount, const char *autoTypeSource)
 
BNTypeParser * BNRegisterTypeParser (const char *name, BNTypeParserCallbacks *callbacks)
 
BNTypeParser ** BNGetTypeParserList (size_t *count)
 
void BNFreeTypeParserList (BNTypeParser **parsers)
 
BNTypeParser * BNGetTypeParserByName (const char *name)
 
char * BNGetTypeParserName (BNTypeParser *parser)
 
bool BNTypeParserPreprocessSource (BNTypeParser *parser, const char *source, const char *fileName, BNPlatform *platform, const BNQualifiedNameTypeAndId *existingTypes, size_t existingTypeCount, const char *const *options, size_t optionCount, const char *const *includeDirs, size_t includeDirCount, char **output, BNTypeParserError **errors, size_t *errorCount)
 
bool BNTypeParserParseTypesFromSource (BNTypeParser *parser, const char *source, const char *fileName, BNPlatform *platform, const BNQualifiedNameTypeAndId *existingTypes, size_t existingTypeCount, const char *const *options, size_t optionCount, const char *const *includeDirs, size_t includeDirCount, const char *autoTypeSource, BNTypeParserResult *result, BNTypeParserError **errors, size_t *errorCount)
 
bool BNTypeParserParseTypeString (BNTypeParser *parser, const char *source, BNPlatform *platform, const BNQualifiedNameTypeAndId *existingTypes, size_t existingTypeCount, BNQualifiedNameAndType *result, BNTypeParserError **errors, size_t *errorCount)
 
BNTypePrinter * BNRegisterTypePrinter (const char *name, BNTypePrinterCallbacks *callbacks)
 
BNTypePrinter ** BNGetTypePrinterList (size_t *count)
 
void BNFreeTypePrinterList (BNTypePrinter **printers)
 
BNTypePrinter * BNGetTypePrinterByName (const char *name)
 
char * BNGetTypePrinterName (BNTypePrinter *printer)
 
bool BNGetTypePrinterTypeTokens (BNTypePrinter *printer, BNType *type, BNPlatform *platform, BNQualifiedName *name, uint8_t baseConfidence, BNTokenEscapingType escaping, BNInstructionTextToken **result, size_t *resultCount)
 
bool BNGetTypePrinterTypeTokensBeforeName (BNTypePrinter *printer, BNType *type, BNPlatform *platform, uint8_t baseConfidence, BNType *parentType, BNTokenEscapingType escaping, BNInstructionTextToken **result, size_t *resultCount)
 
bool BNGetTypePrinterTypeTokensAfterName (BNTypePrinter *printer, BNType *type, BNPlatform *platform, uint8_t baseConfidence, BNType *parentType, BNTokenEscapingType escaping, BNInstructionTextToken **result, size_t *resultCount)
 
bool BNGetTypePrinterTypeString (BNTypePrinter *printer, BNType *type, BNPlatform *platform, BNQualifiedName *name, BNTokenEscapingType escaping, char **result)
 
bool BNGetTypePrinterTypeStringBeforeName (BNTypePrinter *printer, BNType *type, BNPlatform *platform, BNTokenEscapingType escaping, char **result)
 
bool BNGetTypePrinterTypeStringAfterName (BNTypePrinter *printer, BNType *type, BNPlatform *platform, BNTokenEscapingType escaping, char **result)
 
bool BNGetTypePrinterTypeLines (BNTypePrinter *printer, BNType *type, BNBinaryView *data, BNQualifiedName *name, int lineWidth, bool collapsed, BNTokenEscapingType escaping, BNTypeDefinitionLine **result, size_t *resultCount)
 
void BNFreeTypeParserResult (BNTypeParserResult *result)
 
void BNFreeTypeParserErrors (BNTypeParserError *errors, size_t count)
 
BNUpdateChannelBNGetUpdateChannels (size_t *count, char **errors)
 
void BNFreeUpdateChannelList (BNUpdateChannel *list, size_t count)
 
BNUpdateVersionBNGetUpdateChannelVersions (const char *channel, size_t *count, char **errors)
 
void BNFreeUpdateChannelVersionList (BNUpdateVersion *list, size_t count)
 
bool BNAreUpdatesAvailable (const char *channel, uint64_t *expireTime, uint64_t *serverTime, char **errors)