BinaryNinja::BinaryData Class Reference

Public Member Functions

 BinaryData (FileMetadata *file)
 
 BinaryData (FileMetadata *file, const DataBuffer &data)
 
 BinaryData (FileMetadata *file, const void *data, size_t len)
 
 BinaryData (FileMetadata *file, const std::string &path)
 
 BinaryData (FileMetadata *file, FileAccessor *accessor)
 
- Public Member Functions inherited from BinaryNinja::BinaryView
 BinaryView (BNBinaryView *view)
 
virtual bool Init ()
 
FileMetadataGetFile () const
 
Ref< BinaryViewGetParentView () const
 
std::string GetTypeName () const
 
bool IsModified () const
 
bool IsAnalysisChanged () const
 
bool CreateDatabase (const std::string &path, Ref< SaveSettings > settings=new SaveSettings())
 
bool CreateDatabase (const std::string &path, const std::function< bool(size_t progress, size_t total)> &progressCallback, Ref< SaveSettings > settings=new SaveSettings())
 
bool SaveAutoSnapshot (Ref< SaveSettings > settings=new SaveSettings())
 
bool SaveAutoSnapshot (const std::function< bool(size_t progress, size_t total)> &progressCallback, Ref< SaveSettings > settings=new SaveSettings())
 
void BeginUndoActions ()
 
void AddUndoAction (UndoAction *action)
 
void CommitUndoActions ()
 
bool Undo ()
 
bool Redo ()
 
std::string GetCurrentView ()
 
uint64_t GetCurrentOffset ()
 
bool Navigate (const std::string &view, uint64_t offset)
 
size_t Read (void *dest, uint64_t offset, size_t len)
 
DataBuffer ReadBuffer (uint64_t offset, size_t len)
 
size_t Write (uint64_t offset, const void *data, size_t len)
 
size_t WriteBuffer (uint64_t offset, const DataBuffer &data)
 
size_t Insert (uint64_t offset, const void *data, size_t len)
 
size_t InsertBuffer (uint64_t offset, const DataBuffer &data)
 
size_t Remove (uint64_t offset, uint64_t len)
 
std::vector< float > GetEntropy (uint64_t offset, size_t len, size_t blockSize)
 
BNModificationStatus GetModification (uint64_t offset)
 
std::vector< BNModificationStatusGetModification (uint64_t offset, size_t len)
 
bool IsValidOffset (uint64_t offset) const
 
bool IsOffsetReadable (uint64_t offset) const
 
bool IsOffsetWritable (uint64_t offset) const
 
bool IsOffsetExecutable (uint64_t offset) const
 
bool IsOffsetBackedByFile (uint64_t offset) const
 
bool IsOffsetCodeSemantics (uint64_t offset) const
 
bool IsOffsetWritableSemantics (uint64_t offset) const
 
bool IsOffsetExternSemantics (uint64_t offset) const
 
uint64_t GetNextValidOffset (uint64_t offset) const
 
uint64_t GetStart () const
 
uint64_t GetEnd () const
 
uint64_t GetLength () const
 
uint64_t GetEntryPoint () const
 
Ref< ArchitectureGetDefaultArchitecture () const
 
void SetDefaultArchitecture (Architecture *arch)
 
Ref< PlatformGetDefaultPlatform () const
 
void SetDefaultPlatform (Platform *platform)
 
BNEndianness GetDefaultEndianness () const
 
bool IsRelocatable () const
 
size_t GetAddressSize () const
 
bool IsExecutable () const
 
bool Save (FileAccessor *file)
 
bool Save (const std::string &path)
 
void DefineRelocation (Architecture *arch, BNRelocationInfo &info, uint64_t target, uint64_t reloc)
 
void DefineRelocation (Architecture *arch, BNRelocationInfo &info, Ref< Symbol > target, uint64_t reloc)
 
std::vector< std::pair< uint64_t, uint64_t > > GetRelocationRanges () const
 
std::vector< std::pair< uint64_t, uint64_t > > GetRelocationRangesAtAddress (uint64_t addr) const
 
bool RangeContainsRelocation (uint64_t addr, size_t size) const
 
void RegisterNotification (BinaryDataNotification *notify)
 
void UnregisterNotification (BinaryDataNotification *notify)
 
void AddAnalysisOption (const std::string &name)
 
void AddFunctionForAnalysis (Platform *platform, uint64_t addr)
 
void AddEntryPointForAnalysis (Platform *platform, uint64_t start)
 
void RemoveAnalysisFunction (Function *func)
 
void CreateUserFunction (Platform *platform, uint64_t start)
 
void RemoveUserFunction (Function *func)
 
bool HasInitialAnalysis ()
 
void SetAnalysisHold (bool enable)
 
void UpdateAnalysisAndWait ()
 
void UpdateAnalysis ()
 
void AbortAnalysis ()
 
void DefineDataVariable (uint64_t addr, const Confidence< Ref< Type > > &type)
 
void DefineUserDataVariable (uint64_t addr, const Confidence< Ref< Type > > &type)
 
void UndefineDataVariable (uint64_t addr)
 
void UndefineUserDataVariable (uint64_t addr)
 
std::map< uint64_t, DataVariableGetDataVariables ()
 
bool GetDataVariableAtAddress (uint64_t addr, DataVariable &var)
 
std::vector< Ref< Function > > GetAnalysisFunctionList ()
 
bool HasFunctions () const
 
Ref< FunctionGetAnalysisFunction (Platform *platform, uint64_t addr)
 
Ref< FunctionGetRecentAnalysisFunctionForAddress (uint64_t addr)
 
std::vector< Ref< Function > > GetAnalysisFunctionsForAddress (uint64_t addr)
 
std::vector< Ref< Function > > GetAnalysisFunctionsContainingAddress (uint64_t addr)
 
Ref< FunctionGetAnalysisEntryPoint ()
 
Ref< BasicBlockGetRecentBasicBlockForAddress (uint64_t addr)
 
std::vector< Ref< BasicBlock > > GetBasicBlocksForAddress (uint64_t addr)
 
std::vector< Ref< BasicBlock > > GetBasicBlocksStartingAtAddress (uint64_t addr)
 
std::vector< ReferenceSourceGetCodeReferences (uint64_t addr)
 
std::vector< ReferenceSourceGetCodeReferences (uint64_t addr, uint64_t len)
 
std::vector< uint64_t > GetCodeReferencesFrom (ReferenceSource src)
 
std::vector< uint64_t > GetCodeReferencesFrom (ReferenceSource src, uint64_t len)
 
std::vector< uint64_t > GetDataReferences (uint64_t addr)
 
std::vector< uint64_t > GetDataReferences (uint64_t addr, uint64_t len)
 
std::vector< uint64_t > GetDataReferencesFrom (uint64_t addr)
 
std::vector< uint64_t > GetDataReferencesFrom (uint64_t addr, uint64_t len)
 
void AddUserDataReference (uint64_t fromAddr, uint64_t toAddr)
 
void RemoveUserDataReference (uint64_t fromAddr, uint64_t toAddr)
 
std::vector< ReferenceSourceGetCodeReferencesForType (const QualifiedName &type)
 
std::vector< uint64_t > GetDataReferencesForType (const QualifiedName &type)
 
std::vector< TypeReferenceSourceGetTypeReferencesForType (const QualifiedName &type)
 
std::vector< TypeFieldReferenceGetCodeReferencesForTypeField (const QualifiedName &type, uint64_t offset)
 
std::vector< uint64_t > GetDataReferencesForTypeField (const QualifiedName &type, uint64_t offset)
 
std::vector< TypeReferenceSourceGetTypeReferencesForTypeField (const QualifiedName &type, uint64_t offset)
 
std::vector< TypeReferenceSourceGetCodeReferencesForTypeFrom (ReferenceSource src)
 
std::vector< TypeReferenceSourceGetCodeReferencesForTypeFrom (ReferenceSource src, uint64_t len)
 
std::vector< TypeReferenceSourceGetCodeReferencesForTypeFieldFrom (ReferenceSource src)
 
std::vector< TypeReferenceSourceGetCodeReferencesForTypeFieldFrom (ReferenceSource src, uint64_t len)
 
std::vector< uint64_t > GetAllFieldsReferenced (const QualifiedName &type)
 
std::map< uint64_t, std::vector< size_t > > GetAllSizesReferenced (const QualifiedName &type)
 
std::map< uint64_t, std::vector< Confidence< Ref< Type > > > > GetAllTypesReferenced (const QualifiedName &type)
 
std::vector< size_t > GetSizesReferenced (const QualifiedName &type, uint64_t offset)
 
std::vector< Confidence< Ref< Type > > > GetTypesReferenced (const QualifiedName &type, uint64_t offset)
 
Ref< StructureCreateStructureBasedOnFieldAccesses (const QualifiedName &type)
 
std::vector< uint64_t > GetCallees (ReferenceSource addr)
 
std::vector< ReferenceSourceGetCallers (uint64_t addr)
 
Ref< SymbolGetSymbolByAddress (uint64_t addr, const NameSpace &nameSpace=NameSpace())
 
Ref< SymbolGetSymbolByRawName (const std::string &name, const NameSpace &nameSpace=NameSpace())
 
std::vector< Ref< Symbol > > GetSymbolsByName (const std::string &name, const NameSpace &nameSpace=NameSpace())
 
std::vector< Ref< Symbol > > GetSymbols (const NameSpace &nameSpace=NameSpace())
 
std::vector< Ref< Symbol > > GetSymbols (uint64_t start, uint64_t len, const NameSpace &nameSpace=NameSpace())
 
std::vector< Ref< Symbol > > GetSymbolsOfType (BNSymbolType type, const NameSpace &nameSpace=NameSpace())
 
std::vector< Ref< Symbol > > GetSymbolsOfType (BNSymbolType type, uint64_t start, uint64_t len, const NameSpace &nameSpace=NameSpace())
 
std::vector< Ref< Symbol > > GetVisibleSymbols (const NameSpace &nameSpace=NameSpace())
 
void DefineAutoSymbol (Ref< Symbol > sym)
 
Ref< SymbolDefineAutoSymbolAndVariableOrFunction (Ref< Platform > platform, Ref< Symbol > sym, Ref< Type > type)
 
void UndefineAutoSymbol (Ref< Symbol > sym)
 
void DefineUserSymbol (Ref< Symbol > sym)
 
void UndefineUserSymbol (Ref< Symbol > sym)
 
void DefineImportedFunction (Ref< Symbol > importAddressSym, Ref< Function > func, Ref< Type > type=nullptr)
 
void BeginBulkModifySymbols ()
 
void EndBulkModifySymbols ()
 
void AddTagType (Ref< TagType > tagType)
 
void RemoveTagType (Ref< TagType > tagType)
 
Ref< TagTypeGetTagType (const std::string &name)
 
Ref< TagTypeGetTagType (const std::string &name, TagType::Type type)
 
Ref< TagTypeGetTagTypeByName (const std::string &name)
 
Ref< TagTypeGetTagTypeByName (const std::string &name, TagType::Type type)
 
Ref< TagTypeGetTagTypeById (const std::string &id)
 
Ref< TagTypeGetTagTypeById (const std::string &id, TagType::Type type)
 
std::vector< Ref< TagType > > GetTagTypes ()
 
void AddTag (Ref< Tag > tag, bool user=false)
 
void RemoveTag (Ref< Tag > tag, bool user=false)
 
Ref< TagGetTag (const std::string &tagId)
 
std::vector< TagReferenceGetAllTagReferences ()
 
std::vector< TagReferenceGetAllAddressTagReferences ()
 
std::vector< TagReferenceGetAllFunctionTagReferences ()
 
std::vector< TagReferenceGetAllTagReferencesOfType (Ref< TagType > tagType)
 
std::vector< TagReferenceGetTagReferencesOfType (Ref< TagType > tagType)
 
size_t GetTagReferencesOfTypeCount (Ref< TagType > tagType)
 
size_t GetAllTagReferencesOfTypeCount (Ref< TagType > tagType)
 
std::map< Ref< TagType >, size_t > GetAllTagReferenceTypeCounts ()
 
std::vector< TagReferenceGetDataTagReferences ()
 
std::vector< TagReferenceGetAutoDataTagReferences ()
 
std::vector< TagReferenceGetUserDataTagReferences ()
 
std::vector< Ref< Tag > > GetDataTags (uint64_t addr)
 
std::vector< Ref< Tag > > GetAutoDataTags (uint64_t addr)
 
std::vector< Ref< Tag > > GetUserDataTags (uint64_t addr)
 
std::vector< Ref< Tag > > GetDataTagsOfType (uint64_t addr, Ref< TagType > tagType)
 
std::vector< Ref< Tag > > GetAutoDataTagsOfType (uint64_t addr, Ref< TagType > tagType)
 
std::vector< Ref< Tag > > GetUserDataTagsOfType (uint64_t addr, Ref< TagType > tagType)
 
std::vector< TagReferenceGetDataTagsInRange (uint64_t start, uint64_t end)
 
std::vector< TagReferenceGetAutoDataTagsInRange (uint64_t start, uint64_t end)
 
std::vector< TagReferenceGetUserDataTagsInRange (uint64_t start, uint64_t end)
 
void AddAutoDataTag (uint64_t addr, Ref< Tag > tag)
 
void RemoveAutoDataTag (uint64_t addr, Ref< Tag > tag)
 
void RemoveAutoDataTagsOfType (uint64_t addr, Ref< TagType > tagType)
 
void AddUserDataTag (uint64_t addr, Ref< Tag > tag)
 
void RemoveUserDataTag (uint64_t addr, Ref< Tag > tag)
 
void RemoveUserDataTagsOfType (uint64_t addr, Ref< TagType > tagType)
 
void RemoveTagReference (const TagReference &ref)
 
Ref< TagCreateAutoDataTag (uint64_t addr, const std::string &tagTypeName, const std::string &data, bool unique=false)
 
Ref< TagCreateUserDataTag (uint64_t addr, const std::string &tagTypeName, const std::string &data, bool unique=false)
 
Ref< TagCreateAutoDataTag (uint64_t addr, Ref< TagType > tagType, const std::string &data, bool unique=false)
 
Ref< TagCreateUserDataTag (uint64_t addr, Ref< TagType > tagType, const std::string &data, bool unique=false)
 
bool CanAssemble (Architecture *arch)
 
bool IsNeverBranchPatchAvailable (Architecture *arch, uint64_t addr)
 
bool IsAlwaysBranchPatchAvailable (Architecture *arch, uint64_t addr)
 
bool IsInvertBranchPatchAvailable (Architecture *arch, uint64_t addr)
 
bool IsSkipAndReturnZeroPatchAvailable (Architecture *arch, uint64_t addr)
 
bool IsSkipAndReturnValuePatchAvailable (Architecture *arch, uint64_t addr)
 
bool ConvertToNop (Architecture *arch, uint64_t addr)
 
bool AlwaysBranch (Architecture *arch, uint64_t addr)
 
bool InvertBranch (Architecture *arch, uint64_t addr)
 
bool SkipAndReturnValue (Architecture *arch, uint64_t addr, uint64_t value)
 
size_t GetInstructionLength (Architecture *arch, uint64_t addr)
 
bool GetStringAtAddress (uint64_t addr, BNStringReference &strRef)
 
std::vector< BNStringReferenceGetStrings ()
 
std::vector< BNStringReferenceGetStrings (uint64_t start, uint64_t len)
 
Ref< AnalysisCompletionEventAddAnalysisCompletionEvent (const std::function< void()> &callback)
 
AnalysisInfo GetAnalysisInfo ()
 
BNAnalysisProgress GetAnalysisProgress ()
 
Ref< BackgroundTaskGetBackgroundAnalysisTask ()
 
uint64_t GetNextFunctionStartAfterAddress (uint64_t addr)
 
uint64_t GetNextBasicBlockStartAfterAddress (uint64_t addr)
 
uint64_t GetNextDataAfterAddress (uint64_t addr)
 
uint64_t GetNextDataVariableStartAfterAddress (uint64_t addr)
 
uint64_t GetPreviousFunctionStartBeforeAddress (uint64_t addr)
 
uint64_t GetPreviousBasicBlockStartBeforeAddress (uint64_t addr)
 
uint64_t GetPreviousBasicBlockEndBeforeAddress (uint64_t addr)
 
uint64_t GetPreviousDataBeforeAddress (uint64_t addr)
 
uint64_t GetPreviousDataVariableStartBeforeAddress (uint64_t addr)
 
bool ParsePossibleValueSet (const std::string &value, BNRegisterValueType state, PossibleValueSet &result, uint64_t here, std::string &errors)
 
bool ParseTypeString (const std::string &text, QualifiedNameAndType &result, std::string &errors, const std::set< QualifiedName > &typesAllowRedefinition={})
 
bool ParseTypeString (const std::string &text, std::map< QualifiedName, Ref< Type > > &types, std::map< QualifiedName, Ref< Type > > &variables, std::map< QualifiedName, Ref< Type > > &functions, std::string &errors, const std::set< QualifiedName > &typesAllowRedefinition={})
 
bool ParseTypesFromSource (const std::string &text, const std::vector< std::string > &options, const std::vector< std::string > &includeDirs, TypeParserResult &result, std::string &errors, const std::set< QualifiedName > &typesAllowRedefinition={})
 
std::map< QualifiedName, Ref< Type > > GetTypes ()
 
std::vector< QualifiedNameGetTypeNames (const std::string &matching="")
 
Ref< TypeGetTypeByName (const QualifiedName &name)
 
Ref< TypeGetTypeById (const std::string &id)
 
std::string GetTypeId (const QualifiedName &name)
 
QualifiedName GetTypeNameById (const std::string &id)
 
bool IsTypeAutoDefined (const QualifiedName &name)
 
QualifiedName DefineType (const std::string &id, const QualifiedName &defaultName, Ref< Type > type)
 
void DefineTypes (const std::vector< std::pair< std::string, QualifiedNameAndType > > &types, std::function< bool(size_t, size_t)> progress={})
 
void DefineUserType (const QualifiedName &name, Ref< Type > type)
 
void DefineUserTypes (const std::vector< QualifiedNameAndType > &types, std::function< bool(size_t, size_t)> progress={})
 
void UndefineType (const std::string &id)
 
void UndefineUserType (const QualifiedName &name)
 
void RenameType (const QualifiedName &oldName, const QualifiedName &newName)
 
void RegisterPlatformTypes (Platform *platform)
 
bool FindNextData (uint64_t start, const DataBuffer &data, uint64_t &result, BNFindFlag flags=FindCaseSensitive)
 
bool FindNextText (uint64_t start, const std::string &data, uint64_t &result, Ref< DisassemblySettings > settings, BNFindFlag flags=FindCaseSensitive, BNFunctionGraphType graph=NormalFunctionGraph)
 
bool FindNextConstant (uint64_t start, uint64_t constant, uint64_t &result, Ref< DisassemblySettings > settings, BNFunctionGraphType graph=NormalFunctionGraph)
 
bool FindNextData (uint64_t start, uint64_t end, const DataBuffer &data, uint64_t &addr, BNFindFlag flags, const std::function< bool(size_t current, size_t total)> &progress)
 
bool FindNextText (uint64_t start, uint64_t end, const std::string &data, uint64_t &addr, Ref< DisassemblySettings > settings, BNFindFlag flags, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &progress)
 
bool FindNextConstant (uint64_t start, uint64_t end, uint64_t constant, uint64_t &addr, Ref< DisassemblySettings > settings, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &progress)
 
bool FindAllData (uint64_t start, uint64_t end, const DataBuffer &data, BNFindFlag flags, const std::function< bool(size_t current, size_t total)> &progress, const std::function< bool(uint64_t addr, const DataBuffer &match)> &matchCallback)
 
bool FindAllText (uint64_t start, uint64_t end, const std::string &data, Ref< DisassemblySettings > settings, BNFindFlag flags, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &progress, const std::function< bool(uint64_t addr, const std::string &match, const LinearDisassemblyLine &line)> &matchCallback)
 
bool FindAllConstant (uint64_t start, uint64_t end, uint64_t constant, Ref< DisassemblySettings > settings, BNFunctionGraphType graph, const std::function< bool(size_t current, size_t total)> &progress, const std::function< bool(uint64_t addr, const LinearDisassemblyLine &line)> &matchCallback)
 
void Reanalyze ()
 
Ref< WorkflowGetWorkflow () const
 
void ShowPlainTextReport (const std::string &title, const std::string &contents)
 
void ShowMarkdownReport (const std::string &title, const std::string &contents, const std::string &plainText)
 
void ShowHTMLReport (const std::string &title, const std::string &contents, const std::string &plainText)
 
void ShowGraphReport (const std::string &title, FlowGraph *graph)
 
bool GetAddressInput (uint64_t &result, const std::string &prompt, const std::string &title)
 
bool GetAddressInput (uint64_t &result, const std::string &prompt, const std::string &title, uint64_t currentAddress)
 
void AddAutoSegment (uint64_t start, uint64_t length, uint64_t dataOffset, uint64_t dataLength, uint32_t flags)
 
void RemoveAutoSegment (uint64_t start, uint64_t length)
 
void AddUserSegment (uint64_t start, uint64_t length, uint64_t dataOffset, uint64_t dataLength, uint32_t flags)
 
void RemoveUserSegment (uint64_t start, uint64_t length)
 
std::vector< Ref< Segment > > GetSegments ()
 
Ref< SegmentGetSegmentAt (uint64_t addr)
 
bool GetAddressForDataOffset (uint64_t offset, uint64_t &addr)
 
void AddAutoSection (const std::string &name, uint64_t start, uint64_t length, BNSectionSemantics semantics=DefaultSectionSemantics, const std::string &type="", uint64_t align=1, uint64_t entrySize=0, const std::string &linkedSection="", const std::string &infoSection="", uint64_t infoData=0)
 
void RemoveAutoSection (const std::string &name)
 
void AddUserSection (const std::string &name, uint64_t start, uint64_t length, BNSectionSemantics semantics=DefaultSectionSemantics, const std::string &type="", uint64_t align=1, uint64_t entrySize=0, const std::string &linkedSection="", const std::string &infoSection="", uint64_t infoData=0)
 
void RemoveUserSection (const std::string &name)
 
std::vector< Ref< Section > > GetSections ()
 
std::vector< Ref< Section > > GetSectionsAt (uint64_t addr)
 
Ref< SectionGetSectionByName (const std::string &name)
 
std::vector< std::string > GetUniqueSectionNames (const std::vector< std::string > &names)
 
std::string GetCommentForAddress (uint64_t addr) const
 
std::vector< uint64_t > GetCommentedAddresses () const
 
void SetCommentForAddress (uint64_t addr, const std::string &comment)
 
std::vector< BNAddressRangeGetAllocatedRanges ()
 
void StoreMetadata (const std::string &key, Ref< Metadata > value, bool isAuto=false)
 
Ref< MetadataQueryMetadata (const std::string &key)
 
void RemoveMetadata (const std::string &key)
 
std::string GetStringMetadata (const std::string &key)
 
std::vector< uint8_t > GetRawMetadata (const std::string &key)
 
uint64_t GetUIntMetadata (const std::string &key)
 
std::vector< std::string > GetLoadSettingsTypeNames ()
 
Ref< SettingsGetLoadSettings (const std::string &typeName)
 
void SetLoadSettings (const std::string &typeName, Ref< Settings > settings)
 
BNAnalysisParameters GetParametersForAnalysis ()
 
void SetParametersForAnalysis (BNAnalysisParameters params)
 
uint64_t GetMaxFunctionSizeForAnalysis ()
 
void SetMaxFunctionSizeForAnalysis (uint64_t size)
 
bool GetNewAutoFunctionAnalysisSuppressed ()
 
void SetNewAutoFunctionAnalysisSuppressed (bool suppress)
 
std::set< NameSpaceGetNameSpaces () const
 
bool HasSymbols () const
 
bool HasDataVariables () const
 
Ref< StructureCreateStructureFromOffsetAccess (const QualifiedName &type, bool *newMemberAdded) const
 
Confidence< Ref< Type > > CreateStructureMemberFromAccess (const QualifiedName &name, uint64_t offset) const
 
Ref< LoggerCreateLogger (const std::string &name)
 
- Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNBinaryView, BNNewViewReference, BNFreeBinaryView >
 CoreRefCountObject ()
 
virtual ~CoreRefCountObject ()
 
BNBinaryView * GetObject () const
 
void AddRef ()
 
void Release ()
 
void AddRefForRegistration ()
 
void ReleaseForRegistration ()
 

Additional Inherited Members

- Static Public Member Functions inherited from BinaryNinja::BinaryView
static NameSpace GetInternalNameSpace ()
 
static NameSpace GetExternalNameSpace ()
 
static bool ParseExpression (Ref< BinaryView > view, const std::string &expression, uint64_t &offset, uint64_t here, std::string &errorString)
 
- Static Public Member Functions inherited from BinaryNinja::CoreRefCountObject< BNBinaryView, BNNewViewReference, BNFreeBinaryView >
static BNBinaryView * GetObject (CoreRefCountObject *obj)
 
- Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNBinaryView, BNNewViewReference, BNFreeBinaryView >
std::atomic< int > m_refs
 
bool m_registeredRef
 
BNBinaryView * m_object
 
- Protected Member Functions inherited from BinaryNinja::BinaryView
 BinaryView (const std::string &typeName, FileMetadata *file, BinaryView *parentView=nullptr)
 BinaryView constructor. More...
 
virtual size_t PerformRead (void *dest, uint64_t offset, size_t len)
 PerformRead provides a mapping between the flat file and virtual offsets in the file. More...
 
virtual size_t PerformWrite (uint64_t offset, const void *data, size_t len)
 
virtual size_t PerformInsert (uint64_t offset, const void *data, size_t len)
 
virtual size_t PerformRemove (uint64_t offset, uint64_t len)
 
virtual BNModificationStatus PerformGetModification (uint64_t offset)
 
virtual bool PerformIsValidOffset (uint64_t offset)
 
virtual bool PerformIsOffsetReadable (uint64_t offset)
 
virtual bool PerformIsOffsetWritable (uint64_t offset)
 
virtual bool PerformIsOffsetExecutable (uint64_t offset)
 
virtual bool PerformIsOffsetBackedByFile (uint64_t offset)
 
virtual uint64_t PerformGetNextValidOffset (uint64_t offset)
 
virtual uint64_t PerformGetStart () const
 
virtual uint64_t PerformGetLength () const
 
virtual uint64_t PerformGetEntryPoint () const
 
virtual bool PerformIsExecutable () const
 
virtual BNEndianness PerformGetDefaultEndianness () const
 
virtual bool PerformIsRelocatable () const
 
virtual size_t PerformGetAddressSize () const
 
virtual bool PerformSave (FileAccessor *file)
 
void PerformDefineRelocation (Architecture *arch, BNRelocationInfo &info, uint64_t target, uint64_t reloc)
 
void PerformDefineRelocation (Architecture *arch, BNRelocationInfo &info, Ref< Symbol > sym, uint64_t reloc)
 
void NotifyDataWritten (uint64_t offset, size_t len)
 
void NotifyDataInserted (uint64_t offset, size_t len)
 
void NotifyDataRemoved (uint64_t offset, uint64_t len)
 
- Protected Attributes inherited from BinaryNinja::BinaryView
Ref< FileMetadatam_file
 The underlying file. More...
 

Constructor & Destructor Documentation

◆ BinaryData() [1/5]

BinaryData::BinaryData ( FileMetadata file)

◆ BinaryData() [2/5]

BinaryData::BinaryData ( FileMetadata file,
const DataBuffer data 
)

◆ BinaryData() [3/5]

BinaryData::BinaryData ( FileMetadata file,
const void *  data,
size_t  len 
)

◆ BinaryData() [4/5]

BinaryNinja::BinaryData::BinaryData ( FileMetadata file,
const std::string &  path 
)

◆ BinaryData() [5/5]

BinaryData::BinaryData ( FileMetadata file,
FileAccessor accessor 
)

The documentation for this class was generated from the following files: