BinaryView is the base class for creating views on binary data (e.g.
ELF, PE, Mach-O). BinaryView should be subclassed to create a new BinaryView
Public Member Functions | |
| BinaryView (BNBinaryView *view) | |
| virtual bool | Init () |
| FileMetadata * | GetFile () const |
| Ref< BinaryView > | GetParentView () 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< BNModificationStatus > | GetModification (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< Architecture > | GetDefaultArchitecture () const |
| void | SetDefaultArchitecture (Architecture *arch) |
| Ref< Platform > | GetDefaultPlatform () 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, DataVariable > | GetDataVariables () |
| bool | GetDataVariableAtAddress (uint64_t addr, DataVariable &var) |
| std::vector< Ref< Function > > | GetAnalysisFunctionList () |
| bool | HasFunctions () const |
| Ref< Function > | GetAnalysisFunction (Platform *platform, uint64_t addr) |
| Ref< Function > | GetRecentAnalysisFunctionForAddress (uint64_t addr) |
| std::vector< Ref< Function > > | GetAnalysisFunctionsForAddress (uint64_t addr) |
| std::vector< Ref< Function > > | GetAnalysisFunctionsContainingAddress (uint64_t addr) |
| Ref< Function > | GetAnalysisEntryPoint () |
| Ref< BasicBlock > | GetRecentBasicBlockForAddress (uint64_t addr) |
| std::vector< Ref< BasicBlock > > | GetBasicBlocksForAddress (uint64_t addr) |
| std::vector< Ref< BasicBlock > > | GetBasicBlocksStartingAtAddress (uint64_t addr) |
| std::vector< ReferenceSource > | GetCodeReferences (uint64_t addr) |
| std::vector< ReferenceSource > | GetCodeReferences (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< ReferenceSource > | GetCodeReferencesForType (const QualifiedName &type) |
| std::vector< uint64_t > | GetDataReferencesForType (const QualifiedName &type) |
| std::vector< TypeReferenceSource > | GetTypeReferencesForType (const QualifiedName &type) |
| std::vector< TypeFieldReference > | GetCodeReferencesForTypeField (const QualifiedName &type, uint64_t offset) |
| std::vector< uint64_t > | GetDataReferencesForTypeField (const QualifiedName &type, uint64_t offset) |
| std::vector< TypeReferenceSource > | GetTypeReferencesForTypeField (const QualifiedName &type, uint64_t offset) |
| std::vector< TypeReferenceSource > | GetCodeReferencesForTypeFrom (ReferenceSource src) |
| std::vector< TypeReferenceSource > | GetCodeReferencesForTypeFrom (ReferenceSource src, uint64_t len) |
| std::vector< TypeReferenceSource > | GetCodeReferencesForTypeFieldFrom (ReferenceSource src) |
| std::vector< TypeReferenceSource > | GetCodeReferencesForTypeFieldFrom (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< Structure > | CreateStructureBasedOnFieldAccesses (const QualifiedName &type) |
| std::vector< uint64_t > | GetCallees (ReferenceSource addr) |
| std::vector< ReferenceSource > | GetCallers (uint64_t addr) |
| Ref< Symbol > | GetSymbolByAddress (uint64_t addr, const NameSpace &nameSpace=NameSpace()) |
| Ref< Symbol > | GetSymbolByRawName (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< Symbol > | DefineAutoSymbolAndVariableOrFunction (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< TagType > | GetTagType (const std::string &name) |
| Ref< TagType > | GetTagType (const std::string &name, TagType::Type type) |
| Ref< TagType > | GetTagTypeByName (const std::string &name) |
| Ref< TagType > | GetTagTypeByName (const std::string &name, TagType::Type type) |
| Ref< TagType > | GetTagTypeById (const std::string &id) |
| Ref< TagType > | GetTagTypeById (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< Tag > | GetTag (const std::string &tagId) |
| std::vector< TagReference > | GetAllTagReferences () |
| std::vector< TagReference > | GetAllAddressTagReferences () |
| std::vector< TagReference > | GetAllFunctionTagReferences () |
| std::vector< TagReference > | GetAllTagReferencesOfType (Ref< TagType > tagType) |
| std::vector< TagReference > | GetTagReferencesOfType (Ref< TagType > tagType) |
| size_t | GetTagReferencesOfTypeCount (Ref< TagType > tagType) |
| size_t | GetAllTagReferencesOfTypeCount (Ref< TagType > tagType) |
| std::map< Ref< TagType >, size_t > | GetAllTagReferenceTypeCounts () |
| std::vector< TagReference > | GetDataTagReferences () |
| std::vector< TagReference > | GetAutoDataTagReferences () |
| std::vector< TagReference > | GetUserDataTagReferences () |
| 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< TagReference > | GetDataTagsInRange (uint64_t start, uint64_t end) |
| std::vector< TagReference > | GetAutoDataTagsInRange (uint64_t start, uint64_t end) |
| std::vector< TagReference > | GetUserDataTagsInRange (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< Tag > | CreateAutoDataTag (uint64_t addr, const std::string &tagTypeName, const std::string &data, bool unique=false) |
| Ref< Tag > | CreateUserDataTag (uint64_t addr, const std::string &tagTypeName, const std::string &data, bool unique=false) |
| Ref< Tag > | CreateAutoDataTag (uint64_t addr, Ref< TagType > tagType, const std::string &data, bool unique=false) |
| Ref< Tag > | CreateUserDataTag (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< BNStringReference > | GetStrings () |
| std::vector< BNStringReference > | GetStrings (uint64_t start, uint64_t len) |
| Ref< AnalysisCompletionEvent > | AddAnalysisCompletionEvent (const std::function< void()> &callback) |
| AnalysisInfo | GetAnalysisInfo () |
| BNAnalysisProgress | GetAnalysisProgress () |
| Ref< BackgroundTask > | GetBackgroundAnalysisTask () |
| 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< QualifiedName > | GetTypeNames (const std::string &matching="") |
| Ref< Type > | GetTypeByName (const QualifiedName &name) |
| Ref< Type > | GetTypeById (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< Workflow > | GetWorkflow () 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< Segment > | GetSegmentAt (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< Section > | GetSectionByName (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< BNAddressRange > | GetAllocatedRanges () |
| void | StoreMetadata (const std::string &key, Ref< Metadata > value, bool isAuto=false) |
| Ref< Metadata > | QueryMetadata (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< Settings > | GetLoadSettings (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< NameSpace > | GetNameSpaces () const |
| bool | HasSymbols () const |
| bool | HasDataVariables () const |
| Ref< Structure > | CreateStructureFromOffsetAccess (const QualifiedName &type, bool *newMemberAdded) const |
| Confidence< Ref< Type > > | CreateStructureMemberFromAccess (const QualifiedName &name, uint64_t offset) const |
| Ref< Logger > | CreateLogger (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 () |
Static Public Member Functions | |
| 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) |
Protected Member Functions | |
| 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 | |
| Ref< FileMetadata > | m_file |
| The underlying file. More... | |
Additional Inherited Members | |
Public Attributes inherited from BinaryNinja::CoreRefCountObject< BNBinaryView, BNNewViewReference, BNFreeBinaryView > | |
| std::atomic< int > | m_refs |
| bool | m_registeredRef |
| BNBinaryView * | m_object |
|
protected |
BinaryView constructor.
| typeName | name of the BinaryView (e.g. ELF, PE, Mach-O, ...) |
| file | a file to create a view from |
| parentView | optional view that contains the raw data used by this view |
| BinaryView::BinaryView | ( | BNBinaryView * | view | ) |
| void BinaryView::AbortAnalysis | ( | ) |
| Ref< AnalysisCompletionEvent > BinaryView::AddAnalysisCompletionEvent | ( | const std::function< void()> & | callback | ) |
| void BinaryView::AddAnalysisOption | ( | const std::string & | name | ) |
| void BinaryView::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 BinaryView::AddAutoSegment | ( | uint64_t | start, |
| uint64_t | length, | ||
| uint64_t | dataOffset, | ||
| uint64_t | dataLength, | ||
| uint32_t | flags | ||
| ) |
| void BinaryView::AddEntryPointForAnalysis | ( | Platform * | platform, |
| uint64_t | start | ||
| ) |
| void BinaryView::AddFunctionForAnalysis | ( | Platform * | platform, |
| uint64_t | addr | ||
| ) |
| void BinaryNinja::BinaryView::AddUndoAction | ( | UndoAction * | action | ) |
| void BinaryView::AddUserDataReference | ( | uint64_t | fromAddr, |
| uint64_t | toAddr | ||
| ) |
| void BinaryView::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 BinaryView::AddUserSegment | ( | uint64_t | start, |
| uint64_t | length, | ||
| uint64_t | dataOffset, | ||
| uint64_t | dataLength, | ||
| uint32_t | flags | ||
| ) |
| bool BinaryView::AlwaysBranch | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
| void BinaryView::BeginBulkModifySymbols | ( | ) |
| void BinaryView::BeginUndoActions | ( | ) |
| bool BinaryView::CanAssemble | ( | Architecture * | arch | ) |
| void BinaryView::CommitUndoActions | ( | ) |
| bool BinaryView::ConvertToNop | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
| Ref< Tag > BinaryView::CreateAutoDataTag | ( | uint64_t | addr, |
| const std::string & | tagTypeName, | ||
| const std::string & | data, | ||
| bool | unique = false |
||
| ) |
| Ref< Tag > BinaryView::CreateAutoDataTag | ( | uint64_t | addr, |
| Ref< TagType > | tagType, | ||
| const std::string & | data, | ||
| bool | unique = false |
||
| ) |
| bool BinaryNinja::BinaryView::CreateDatabase | ( | const std::string & | path, |
| const std::function< bool(size_t progress, size_t total)> & | progressCallback, | ||
| Ref< SaveSettings > | settings = new SaveSettings() |
||
| ) |
| bool BinaryNinja::BinaryView::CreateDatabase | ( | const std::string & | path, |
| Ref< SaveSettings > | settings = new SaveSettings() |
||
| ) |
| Ref< Structure > BinaryNinja::BinaryView::CreateStructureBasedOnFieldAccesses | ( | const QualifiedName & | type | ) |
| Ref< Structure > BinaryView::CreateStructureFromOffsetAccess | ( | const QualifiedName & | type, |
| bool * | newMemberAdded | ||
| ) | const |
| Confidence< Ref< Type > > BinaryView::CreateStructureMemberFromAccess | ( | const QualifiedName & | name, |
| uint64_t | offset | ||
| ) | const |
| Ref< Tag > BinaryView::CreateUserDataTag | ( | uint64_t | addr, |
| const std::string & | tagTypeName, | ||
| const std::string & | data, | ||
| bool | unique = false |
||
| ) |
| Ref< Tag > BinaryView::CreateUserDataTag | ( | uint64_t | addr, |
| Ref< TagType > | tagType, | ||
| const std::string & | data, | ||
| bool | unique = false |
||
| ) |
| void BinaryView::CreateUserFunction | ( | Platform * | platform, |
| uint64_t | start | ||
| ) |
| Ref< Symbol > BinaryView::DefineAutoSymbolAndVariableOrFunction | ( | Ref< Platform > | platform, |
| Ref< Symbol > | sym, | ||
| Ref< Type > | type | ||
| ) |
| void BinaryView::DefineDataVariable | ( | uint64_t | addr, |
| const Confidence< Ref< Type > > & | type | ||
| ) |
| void BinaryView::DefineImportedFunction | ( | Ref< Symbol > | importAddressSym, |
| Ref< Function > | func, | ||
| Ref< Type > | type = nullptr |
||
| ) |
| void BinaryView::DefineRelocation | ( | Architecture * | arch, |
| BNRelocationInfo & | info, | ||
| Ref< Symbol > | target, | ||
| uint64_t | reloc | ||
| ) |
| void BinaryView::DefineRelocation | ( | Architecture * | arch, |
| BNRelocationInfo & | info, | ||
| uint64_t | target, | ||
| uint64_t | reloc | ||
| ) |
| QualifiedName BinaryView::DefineType | ( | const std::string & | id, |
| const QualifiedName & | defaultName, | ||
| Ref< Type > | type | ||
| ) |
| void BinaryView::DefineTypes | ( | const std::vector< std::pair< std::string, QualifiedNameAndType > > & | types, |
| std::function< bool(size_t, size_t)> | progress = {} |
||
| ) |
| void BinaryView::DefineUserDataVariable | ( | uint64_t | addr, |
| const Confidence< Ref< Type > > & | type | ||
| ) |
| void BinaryView::DefineUserType | ( | const QualifiedName & | name, |
| Ref< Type > | type | ||
| ) |
| void BinaryView::DefineUserTypes | ( | const std::vector< QualifiedNameAndType > & | types, |
| std::function< bool(size_t, size_t)> | progress = {} |
||
| ) |
| void BinaryView::EndBulkModifySymbols | ( | ) |
| bool BinaryView::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 | ||
| ) |
| bool BinaryView::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 BinaryView::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 BinaryView::FindNextConstant | ( | uint64_t | start, |
| uint64_t | constant, | ||
| uint64_t & | result, | ||
| Ref< DisassemblySettings > | settings, | ||
| BNFunctionGraphType | graph = NormalFunctionGraph |
||
| ) |
| bool BinaryView::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 BinaryView::FindNextData | ( | uint64_t | start, |
| const DataBuffer & | data, | ||
| uint64_t & | result, | ||
| BNFindFlag | flags = FindCaseSensitive |
||
| ) |
| bool BinaryView::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 BinaryView::FindNextText | ( | uint64_t | start, |
| const std::string & | data, | ||
| uint64_t & | result, | ||
| Ref< DisassemblySettings > | settings, | ||
| BNFindFlag | flags = FindCaseSensitive, |
||
| BNFunctionGraphType | graph = NormalFunctionGraph |
||
| ) |
| bool BinaryView::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 BinaryView::GetAddressForDataOffset | ( | uint64_t | offset, |
| uint64_t & | addr | ||
| ) |
| bool BinaryNinja::BinaryView::GetAddressInput | ( | uint64_t & | result, |
| const std::string & | prompt, | ||
| const std::string & | title | ||
| ) |
| bool BinaryNinja::BinaryView::GetAddressInput | ( | uint64_t & | result, |
| const std::string & | prompt, | ||
| const std::string & | title, | ||
| uint64_t | currentAddress | ||
| ) |
| size_t BinaryView::GetAddressSize | ( | ) | const |
| std::vector< TagReference > BinaryView::GetAllAddressTagReferences | ( | ) |
| vector< uint64_t > BinaryView::GetAllFieldsReferenced | ( | const QualifiedName & | type | ) |
| std::vector< TagReference > BinaryView::GetAllFunctionTagReferences | ( | ) |
| vector< BNAddressRange > BinaryView::GetAllocatedRanges | ( | ) |
| std::map< uint64_t, std::vector< size_t > > BinaryView::GetAllSizesReferenced | ( | const QualifiedName & | type | ) |
| std::vector< TagReference > BinaryView::GetAllTagReferences | ( | ) |
| std::vector< TagReference > BinaryView::GetAllTagReferencesOfType | ( | Ref< TagType > | tagType | ) |
| std::map< uint64_t, std::vector< Confidence< Ref< Type > > > > BinaryView::GetAllTypesReferenced | ( | const QualifiedName & | type | ) |
| AnalysisInfo BinaryView::GetAnalysisInfo | ( | ) |
| BNAnalysisProgress BinaryView::GetAnalysisProgress | ( | ) |
| std::vector< TagReference > BinaryView::GetAutoDataTagReferences | ( | ) |
| std::vector< TagReference > BinaryView::GetAutoDataTagsInRange | ( | uint64_t | start, |
| uint64_t | end | ||
| ) |
| std::vector< Ref< Tag > > BinaryView::GetAutoDataTagsOfType | ( | uint64_t | addr, |
| Ref< TagType > | tagType | ||
| ) |
| Ref< BackgroundTask > BinaryView::GetBackgroundAnalysisTask | ( | ) |
| vector< Ref< BasicBlock > > BinaryView::GetBasicBlocksForAddress | ( | uint64_t | addr | ) |
| vector< Ref< BasicBlock > > BinaryView::GetBasicBlocksStartingAtAddress | ( | uint64_t | addr | ) |
| vector< uint64_t > BinaryView::GetCallees | ( | ReferenceSource | addr | ) |
| vector< ReferenceSource > BinaryView::GetCallers | ( | uint64_t | addr | ) |
| vector< ReferenceSource > BinaryView::GetCodeReferences | ( | uint64_t | addr | ) |
| vector< ReferenceSource > BinaryView::GetCodeReferences | ( | uint64_t | addr, |
| uint64_t | len | ||
| ) |
| vector< ReferenceSource > BinaryView::GetCodeReferencesForType | ( | const QualifiedName & | type | ) |
| vector< TypeFieldReference > BinaryView::GetCodeReferencesForTypeField | ( | const QualifiedName & | type, |
| uint64_t | offset | ||
| ) |
| vector< TypeReferenceSource > BinaryView::GetCodeReferencesForTypeFieldFrom | ( | ReferenceSource | src | ) |
| vector< TypeReferenceSource > BinaryView::GetCodeReferencesForTypeFieldFrom | ( | ReferenceSource | src, |
| uint64_t | len | ||
| ) |
| vector< TypeReferenceSource > BinaryView::GetCodeReferencesForTypeFrom | ( | ReferenceSource | src | ) |
| vector< TypeReferenceSource > BinaryView::GetCodeReferencesForTypeFrom | ( | ReferenceSource | src, |
| uint64_t | len | ||
| ) |
| vector< uint64_t > BinaryView::GetCodeReferencesFrom | ( | ReferenceSource | src | ) |
| vector< uint64_t > BinaryView::GetCodeReferencesFrom | ( | ReferenceSource | src, |
| uint64_t | len | ||
| ) |
| vector< uint64_t > BinaryView::GetCommentedAddresses | ( | ) | const |
| string BinaryView::GetCommentForAddress | ( | uint64_t | addr | ) | const |
| uint64_t BinaryView::GetCurrentOffset | ( | ) |
| string BinaryView::GetCurrentView | ( | ) |
| vector< uint64_t > BinaryView::GetDataReferences | ( | uint64_t | addr | ) |
| vector< uint64_t > BinaryView::GetDataReferences | ( | uint64_t | addr, |
| uint64_t | len | ||
| ) |
| vector< uint64_t > BinaryView::GetDataReferencesForType | ( | const QualifiedName & | type | ) |
| vector< uint64_t > BinaryView::GetDataReferencesForTypeField | ( | const QualifiedName & | type, |
| uint64_t | offset | ||
| ) |
| vector< uint64_t > BinaryView::GetDataReferencesFrom | ( | uint64_t | addr | ) |
| vector< uint64_t > BinaryView::GetDataReferencesFrom | ( | uint64_t | addr, |
| uint64_t | len | ||
| ) |
| std::vector< TagReference > BinaryView::GetDataTagReferences | ( | ) |
| std::vector< TagReference > BinaryView::GetDataTagsInRange | ( | uint64_t | start, |
| uint64_t | end | ||
| ) |
| bool BinaryView::GetDataVariableAtAddress | ( | uint64_t | addr, |
| DataVariable & | var | ||
| ) |
| map< uint64_t, DataVariable > BinaryView::GetDataVariables | ( | ) |
| Ref< Architecture > BinaryView::GetDefaultArchitecture | ( | ) | const |
| BNEndianness BinaryView::GetDefaultEndianness | ( | ) | const |
| uint64_t BinaryView::GetEnd | ( | ) | const |
| vector< float > BinaryView::GetEntropy | ( | uint64_t | offset, |
| size_t | len, | ||
| size_t | blockSize | ||
| ) |
| uint64_t BinaryView::GetEntryPoint | ( | ) | const |
|
static |
|
inline |
| size_t BinaryView::GetInstructionLength | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
|
static |
| uint64_t BinaryView::GetLength | ( | ) | const |
| vector< string > BinaryView::GetLoadSettingsTypeNames | ( | ) |
| uint64_t BinaryView::GetMaxFunctionSizeForAnalysis | ( | ) |
| BNModificationStatus BinaryView::GetModification | ( | uint64_t | offset | ) |
| vector< BNModificationStatus > BinaryView::GetModification | ( | uint64_t | offset, |
| size_t | len | ||
| ) |
| set< NameSpace > BinaryView::GetNameSpaces | ( | ) | const |
| bool BinaryView::GetNewAutoFunctionAnalysisSuppressed | ( | ) |
| uint64_t BinaryView::GetNextBasicBlockStartAfterAddress | ( | uint64_t | addr | ) |
| uint64_t BinaryView::GetNextDataAfterAddress | ( | uint64_t | addr | ) |
| uint64_t BinaryView::GetNextDataVariableStartAfterAddress | ( | uint64_t | addr | ) |
| uint64_t BinaryView::GetNextFunctionStartAfterAddress | ( | uint64_t | addr | ) |
| uint64_t BinaryView::GetNextValidOffset | ( | uint64_t | offset | ) | const |
| BNAnalysisParameters BinaryView::GetParametersForAnalysis | ( | ) |
| Ref< BinaryView > BinaryView::GetParentView | ( | ) | const |
| uint64_t BinaryView::GetPreviousBasicBlockEndBeforeAddress | ( | uint64_t | addr | ) |
| uint64_t BinaryView::GetPreviousBasicBlockStartBeforeAddress | ( | uint64_t | addr | ) |
| uint64_t BinaryView::GetPreviousDataBeforeAddress | ( | uint64_t | addr | ) |
| uint64_t BinaryView::GetPreviousDataVariableStartBeforeAddress | ( | uint64_t | addr | ) |
| uint64_t BinaryView::GetPreviousFunctionStartBeforeAddress | ( | uint64_t | addr | ) |
| vector< uint8_t > BinaryView::GetRawMetadata | ( | const std::string & | key | ) |
| Ref< BasicBlock > BinaryView::GetRecentBasicBlockForAddress | ( | uint64_t | addr | ) |
| vector< pair< uint64_t, uint64_t > > BinaryView::GetRelocationRanges | ( | ) | const |
| vector< pair< uint64_t, uint64_t > > BinaryView::GetRelocationRangesAtAddress | ( | uint64_t | addr | ) | const |
| std::vector< size_t > BinaryView::GetSizesReferenced | ( | const QualifiedName & | type, |
| uint64_t | offset | ||
| ) |
| uint64_t BinaryView::GetStart | ( | ) | const |
| bool BinaryView::GetStringAtAddress | ( | uint64_t | addr, |
| BNStringReference & | strRef | ||
| ) |
| string BinaryView::GetStringMetadata | ( | const std::string & | key | ) |
| vector< BNStringReference > BinaryView::GetStrings | ( | ) |
| vector< BNStringReference > BinaryView::GetStrings | ( | uint64_t | start, |
| uint64_t | len | ||
| ) |
| Ref< Symbol > BinaryView::GetSymbolByAddress | ( | uint64_t | addr, |
| const NameSpace & | nameSpace = NameSpace() |
||
| ) |
| Ref< Symbol > BinaryView::GetSymbolByRawName | ( | const std::string & | name, |
| const NameSpace & | nameSpace = NameSpace() |
||
| ) |
| vector< Ref< Symbol > > BinaryView::GetSymbols | ( | uint64_t | start, |
| uint64_t | len, | ||
| const NameSpace & | nameSpace = NameSpace() |
||
| ) |
| vector< Ref< Symbol > > BinaryView::GetSymbolsByName | ( | const std::string & | name, |
| const NameSpace & | nameSpace = NameSpace() |
||
| ) |
| vector< Ref< Symbol > > BinaryView::GetSymbolsOfType | ( | BNSymbolType | type, |
| const NameSpace & | nameSpace = NameSpace() |
||
| ) |
| vector< Ref< Symbol > > BinaryView::GetSymbolsOfType | ( | BNSymbolType | type, |
| uint64_t | start, | ||
| uint64_t | len, | ||
| const NameSpace & | nameSpace = NameSpace() |
||
| ) |
| std::vector< TagReference > BinaryView::GetTagReferencesOfType | ( | Ref< TagType > | tagType | ) |
| Ref< TagType > BinaryView::GetTagType | ( | const std::string & | name, |
| TagType::Type | type | ||
| ) |
| Ref< TagType > BinaryView::GetTagTypeById | ( | const std::string & | id, |
| TagType::Type | type | ||
| ) |
| Ref< TagType > BinaryView::GetTagTypeByName | ( | const std::string & | name, |
| TagType::Type | type | ||
| ) |
| Ref< Type > BinaryView::GetTypeByName | ( | const QualifiedName & | name | ) |
| string BinaryView::GetTypeId | ( | const QualifiedName & | name | ) |
| string BinaryView::GetTypeName | ( | ) | const |
| QualifiedName BinaryView::GetTypeNameById | ( | const std::string & | id | ) |
| vector< QualifiedName > BinaryView::GetTypeNames | ( | const std::string & | matching = "" | ) |
| vector< TypeReferenceSource > BinaryView::GetTypeReferencesForType | ( | const QualifiedName & | type | ) |
| vector< TypeReferenceSource > BinaryView::GetTypeReferencesForTypeField | ( | const QualifiedName & | type, |
| uint64_t | offset | ||
| ) |
| map< QualifiedName, Ref< Type > > BinaryView::GetTypes | ( | ) |
| std::vector< Confidence< Ref< Type > > > BinaryView::GetTypesReferenced | ( | const QualifiedName & | type, |
| uint64_t | offset | ||
| ) |
| uint64_t BinaryView::GetUIntMetadata | ( | const std::string & | key | ) |
| vector< string > BinaryView::GetUniqueSectionNames | ( | const std::vector< std::string > & | names | ) |
| std::vector< TagReference > BinaryView::GetUserDataTagReferences | ( | ) |
| std::vector< TagReference > BinaryView::GetUserDataTagsInRange | ( | uint64_t | start, |
| uint64_t | end | ||
| ) |
| std::vector< Ref< Tag > > BinaryView::GetUserDataTagsOfType | ( | uint64_t | addr, |
| Ref< TagType > | tagType | ||
| ) |
| std::vector< Ref< Symbol > > BinaryView::GetVisibleSymbols | ( | const NameSpace & | nameSpace = NameSpace() | ) |
| bool BinaryView::HasDataVariables | ( | ) | const |
| bool BinaryView::HasFunctions | ( | ) | const |
| bool BinaryView::HasInitialAnalysis | ( | ) |
| bool BinaryView::HasSymbols | ( | ) | const |
|
inlinevirtual |
| size_t BinaryView::Insert | ( | uint64_t | offset, |
| const void * | data, | ||
| size_t | len | ||
| ) |
| size_t BinaryView::InsertBuffer | ( | uint64_t | offset, |
| const DataBuffer & | data | ||
| ) |
| bool BinaryView::InvertBranch | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
| bool BinaryView::IsAlwaysBranchPatchAvailable | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
| bool BinaryView::IsAnalysisChanged | ( | ) | const |
| bool BinaryView::IsExecutable | ( | ) | const |
| bool BinaryView::IsInvertBranchPatchAvailable | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
| bool BinaryView::IsModified | ( | ) | const |
| bool BinaryView::IsNeverBranchPatchAvailable | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
| bool BinaryView::IsOffsetBackedByFile | ( | uint64_t | offset | ) | const |
| bool BinaryView::IsOffsetCodeSemantics | ( | uint64_t | offset | ) | const |
| bool BinaryView::IsOffsetExecutable | ( | uint64_t | offset | ) | const |
| bool BinaryView::IsOffsetExternSemantics | ( | uint64_t | offset | ) | const |
| bool BinaryView::IsOffsetReadable | ( | uint64_t | offset | ) | const |
| bool BinaryView::IsOffsetWritable | ( | uint64_t | offset | ) | const |
| bool BinaryView::IsOffsetWritableSemantics | ( | uint64_t | offset | ) | const |
| bool BinaryView::IsRelocatable | ( | ) | const |
| bool BinaryView::IsSkipAndReturnValuePatchAvailable | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
| bool BinaryView::IsSkipAndReturnZeroPatchAvailable | ( | Architecture * | arch, |
| uint64_t | addr | ||
| ) |
| bool BinaryView::IsTypeAutoDefined | ( | const QualifiedName & | name | ) |
| bool BinaryView::IsValidOffset | ( | uint64_t | offset | ) | const |
| bool BinaryView::Navigate | ( | const std::string & | view, |
| uint64_t | offset | ||
| ) |
|
protected |
|
protected |
|
protected |
|
static |
| bool BinaryView::ParsePossibleValueSet | ( | const std::string & | value, |
| BNRegisterValueType | state, | ||
| PossibleValueSet & | result, | ||
| uint64_t | here, | ||
| std::string & | errors | ||
| ) |
| bool BinaryView::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 = {} |
||
| ) |
| bool BinaryNinja::BinaryView::ParseTypeString | ( | const std::string & | text, |
| QualifiedNameAndType & | result, | ||
| std::string & | errors, | ||
| const std::set< QualifiedName > & | typesAllowRedefinition = {} |
||
| ) |
| bool BinaryNinja::BinaryView::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 = {} |
||
| ) |
|
protected |
|
protected |
|
protectedvirtual |
|
protectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
protectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
|
inlineprotectedvirtual |
PerformRead provides a mapping between the flat file and virtual offsets in the file.
| dest | the address to write len number of bytes. |
| offset | the virtual offset to find and read len bytes from |
| len | the number of bytes to read from offset and write to dest |
|
inlineprotectedvirtual |
|
protectedvirtual |
|
inlineprotectedvirtual |
| bool BinaryView::RangeContainsRelocation | ( | uint64_t | addr, |
| size_t | size | ||
| ) | const |
| size_t BinaryView::Read | ( | void * | dest, |
| uint64_t | offset, | ||
| size_t | len | ||
| ) |
| DataBuffer BinaryView::ReadBuffer | ( | uint64_t | offset, |
| size_t | len | ||
| ) |
| void BinaryView::Reanalyze | ( | ) |
| bool BinaryView::Redo | ( | ) |
| void BinaryView::RegisterNotification | ( | BinaryDataNotification * | notify | ) |
| void BinaryView::RegisterPlatformTypes | ( | Platform * | platform | ) |
| size_t BinaryView::Remove | ( | uint64_t | offset, |
| uint64_t | len | ||
| ) |
| void BinaryView::RemoveAnalysisFunction | ( | Function * | func | ) |
| void BinaryView::RemoveAutoSection | ( | const std::string & | name | ) |
| void BinaryView::RemoveAutoSegment | ( | uint64_t | start, |
| uint64_t | length | ||
| ) |
| void BinaryView::RemoveMetadata | ( | const std::string & | key | ) |
| void BinaryView::RemoveTagReference | ( | const TagReference & | ref | ) |
| void BinaryView::RemoveUserDataReference | ( | uint64_t | fromAddr, |
| uint64_t | toAddr | ||
| ) |
| void BinaryView::RemoveUserFunction | ( | Function * | func | ) |
| void BinaryView::RemoveUserSection | ( | const std::string & | name | ) |
| void BinaryView::RemoveUserSegment | ( | uint64_t | start, |
| uint64_t | length | ||
| ) |
| void BinaryView::RenameType | ( | const QualifiedName & | oldName, |
| const QualifiedName & | newName | ||
| ) |
| bool BinaryNinja::BinaryView::Save | ( | const std::string & | path | ) |
| bool BinaryView::Save | ( | FileAccessor * | file | ) |
| bool BinaryNinja::BinaryView::SaveAutoSnapshot | ( | const std::function< bool(size_t progress, size_t total)> & | progressCallback, |
| Ref< SaveSettings > | settings = new SaveSettings() |
||
| ) |
| bool BinaryView::SaveAutoSnapshot | ( | Ref< SaveSettings > | settings = new SaveSettings() | ) |
| void BinaryView::SetAnalysisHold | ( | bool | enable | ) |
| void BinaryView::SetCommentForAddress | ( | uint64_t | addr, |
| const std::string & | comment | ||
| ) |
| void BinaryView::SetDefaultArchitecture | ( | Architecture * | arch | ) |
| void BinaryView::SetDefaultPlatform | ( | Platform * | platform | ) |
| void BinaryView::SetMaxFunctionSizeForAnalysis | ( | uint64_t | size | ) |
| void BinaryView::SetNewAutoFunctionAnalysisSuppressed | ( | bool | suppress | ) |
| void BinaryView::SetParametersForAnalysis | ( | BNAnalysisParameters | params | ) |
| void BinaryView::ShowGraphReport | ( | const std::string & | title, |
| FlowGraph * | graph | ||
| ) |
| void BinaryView::ShowHTMLReport | ( | const std::string & | title, |
| const std::string & | contents, | ||
| const std::string & | plainText | ||
| ) |
| void BinaryView::ShowMarkdownReport | ( | const std::string & | title, |
| const std::string & | contents, | ||
| const std::string & | plainText | ||
| ) |
| void BinaryView::ShowPlainTextReport | ( | const std::string & | title, |
| const std::string & | contents | ||
| ) |
| bool BinaryView::SkipAndReturnValue | ( | Architecture * | arch, |
| uint64_t | addr, | ||
| uint64_t | value | ||
| ) |
| void BinaryView::StoreMetadata | ( | const std::string & | key, |
| Ref< Metadata > | value, | ||
| bool | isAuto = false |
||
| ) |
| void BinaryView::UndefineDataVariable | ( | uint64_t | addr | ) |
| void BinaryView::UndefineType | ( | const std::string & | id | ) |
| void BinaryView::UndefineUserDataVariable | ( | uint64_t | addr | ) |
| void BinaryView::UndefineUserType | ( | const QualifiedName & | name | ) |
| bool BinaryView::Undo | ( | ) |
| void BinaryView::UnregisterNotification | ( | BinaryDataNotification * | notify | ) |
| void BinaryView::UpdateAnalysis | ( | ) |
| void BinaryView::UpdateAnalysisAndWait | ( | ) |
| size_t BinaryView::Write | ( | uint64_t | offset, |
| const void * | data, | ||
| size_t | len | ||
| ) |
| size_t BinaryView::WriteBuffer | ( | uint64_t | offset, |
| const DataBuffer & | data | ||
| ) |
|
protected |
The underlying file.