LIEF: Library to Instrument Executable Formats Version 1.0.0
Loading...
Searching...
No Matches
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
 NLIEFLIEF namespace
  NARTNamespace related to the LIEF's ART module
   Ndetails
    NART_17
     NJavaNamespace related to the Java part of ART 17
      Cbrooks_read_barrier_t
      Cjobject_t
      Cjobject_t< no_brooks_read_barrier_t >
    Cno_brooks_read_barrier_t
   CFile
   CHash
   CHeader
   CParserClass which parses an ART file and transforms it into an ART::File object
  NassemblyNamespace related to assembly/disassembly support
   Naarch64AArch64 architecture-related namespace
    NoperandsNamespace that wraps the different aarch64 operands
     CImmediateThis class represents an immediate operand (i.e. a constant)
     CMemoryThis class represents a memory operand
      Cshift_info_tThis structure holds shift info (type + value)
      Coffset_tWraps a memory offset as an integer offset or as a register offset
     CPCRelativeThis class represents a PC-relative operand
     CRegisterThis class represents a register operand
      Creg_t
    CInstructionThis class represents an AArch64 instruction
    COperandThis class represents an operand for an AArch64 instruction
     CIteratorForward iterator that lazily disassembles aarch64 Operand
   NarmARM architecture-related namespace
    CInstructionThis class represents an ARM/Thumb instruction
   NebpfEBPF architecture-related namespace
    NoperandsNamespace that wraps the different eBPF operands
     CImmediateThis class represents an immediate operand (i.e. a constant)
     CMemoryThis class represents a memory operand
     CPCRelativeThis class represents a PC-relative operand
     CRegisterThis class represents a register operand
    CInstructionThis class represents an eBPF instruction
    COperandThis class represents an operand for an eBPF instruction
     CIteratorForward iterator that lazily disassembles ebpf Operand
   NmipsMips architecture-related namespace
    NoperandsNamespace that wraps the different Mips operands
     CImmediateThis class represents an immediate operand (i.e. a constant)
     CMemoryThis class represents a memory operand
      Coffset_tWraps the memory offset as either an integer displacement or an index register
     CPCRelativeThis class represents a PC-relative operand
     CRegisterThis class represents a register operand
    CInstructionThis class represents a Mips instruction (including mips64, mips32)
    COperandThis class represents an operand for a Mips instruction
     CIteratorForward iterator that lazily disassembles mips Operand
   NpowerpcPowerPC architecture-related namespace
    NoperandsNamespace that wraps the different PowerPC operands
     CImmediateThis class represents an immediate operand (i.e. a constant)
     CMemoryThis class represents a memory operand
      Coffset_tWraps the memory offset as either an integer displacement or an index register
     CPCRelativeThis class represents a PC-relative operand
     CRegisterThis class represents a register operand
    CInstruction
    COperandThis class represents an operand for a PowerPC instruction
     CIteratorForward iterator that lazily disassembles powerpc Operand
   NriscvRISC-V architecture-related namespace
    NoperandsNamespace that wraps the different RISC-V operands
     CImmediateThis class represents an immediate operand (i.e. a constant)
     CMemoryThis class represents a memory operand
     CPCRelativeThis class represents a PC-relative operand
     CRegisterThis class represents a register operand
      Creg_t
    CInstructionThis class represents a RISC-V (32 or 64 bit) instruction
    COperandThis class represents an operand for a RISC-V instruction
     CIteratorForward iterator that lazily disassembles riscv Operand
   Nx86X86/x86-64 architecture-related namespace
    NoperandsNamespace that wraps the different x86/x86-64 operands
     CImmediateThis class represents an immediate operand (i.e. a constant)
     CMemoryThis class represents a memory operand
     CPCRelativeThis class represents a RIP/EIP-relative operand
     CRegisterThis class represents a register operand
    CInstructionThis class represents a x86/x86-64 instruction
    COperandThis class represents an operand for an x86/x86-64 instruction
     CIteratorForward iterator that lazily disassembles x86 Operand
   CAssemblerConfigThis class exposes the different elements that can be configured to assemble code
   CEngineThis class interfaces the assembler/disassembler support
   CInstructionThis class represents an assembly instruction
    CIteratorLazy-forward iterator that disassembles instructions on demand
  NCOFF
   CAuxiliarybfAndefSymbol
   CAuxiliaryCLRTokenAuxiliary symbol associated with the CLR_TOKEN storage class
   CAuxiliaryFileThis auxiliary symbol represents a filename (auxiliary format 4)
   CAuxiliaryFunctionDefinitionThis auxiliary symbols marks the beginning of a function definition
   CAuxiliarySectionDefinitionThis auxiliary symbol exposes information about the associated section
   CAuxiliarySymbolClass that represents an auxiliary symbol
   CAuxiliaryWeakExternal"Weak externals" are a mechanism for object files that allows flexibility at link time. A module can contain an unresolved external symbol (sym1), but it can also include an auxiliary record that indicates that if sym1 is not present at link time, another external symbol (sym2) is used to resolve references instead
   CBigObjHeaderThis class represents the header for a COFF object compiled with /bigobj support (i.e. the number of sections can exceed 65536)
   CBinaryClass that represents a COFF Binary
   CHeaderClass that represents the COFF header. It is subclassed by LIEF::COFF::RegularHeader and LIEF::COFF::BigObjHeader for normal vs /bigobj files
   CParser
   CParserConfigClass used to configure the COFF parser
   CRegularHeaderThis class represents the COFF header for non-bigobj
   CRelocationThis class represents a COFF relocation
   CSectionThis class represents a COFF section
    CComdatInfoThis structure wraps comdat information which is composed of the symbol associated with the comdat section and its selection flag
   CStringThis class represents a string located in the COFF string table
   CSymbolThis class represents a COFF symbol
    Cparsing_context_t
  Ndetails
   Ccanbe_unique
  NDEX
   CClassClass which represents a DEX Class (i.e. a Java/Kotlin class)
   CCodeInfo
   CFieldClass which represents a DEX Field
   CFileClass that represents a DEX file
   Cfill_array_data
   CHashClass which implements a visitor to compute a deterministic hash for LIEF DEX objects
   CHeaderClass which represents the DEX header. This is the first structure that begins the DEX format
   CMapItemClass which represents an element of the MapList object
   CMapListClass which represents the map_list structure that follows the main DEX header
   CMethodClass which represents a DEX::Method
   Cpacked_switch
   CParserClass which parses a DEX file to produce a DEX::File object
   CPrototypeClass which represents a DEX method prototype
   Csparse_switch
   CTypeClass which represents a DEX type as described in the format specifications: https://source.android.com/devices/tech/dalvik/dex-format#typedescriptor
  NdscNamespace related to the dyld shared cache support
   CDyldSharedCacheThis class represents a dyld shared cache file
   CDylibThis class represents a library embedded in a dyld shared cache. It mirrors the original dyld_cache_image_info structure
    CIteratorDylib Iterator
    Cextract_opt_tThis structure is used to tweak the extraction process while calling Dylib::get. These options allow to deoptimize the dylib and get an accurate representation of the origin Mach-O binary
   CMappingInfoThis class represents a dyld_cache_mapping_info entry
    CIteratorMappingInfo Iterator
   CSubCacheThis class represents a subcache in the case of large/split dyld shared cache
    CIteratorSubCache Iterator
  NdwarfNamespace for the DWARF debug format
   Neditor
    CArrayTypeThis class represents an array type (DW_TAG_array_type)
    CBaseTypeThis class represents a primitive type like int, char
    CCompilationUnitThis class represents an editable DWARF compilation unit
    CEnumTypeThis class represents an editable enum type (DW_TAG_enumeration_type)
     CValueThis class represents an enum value
    CFunctionThis class represents an editable DWARF function (DW_TAG_subprogram)
     Crange_t
     CParameterThis class represents a parameter of the current function (DW_TAG_formal_parameter)
     CLexicalBlockThis class mirrors the DW_TAG_lexical_block DWARF tag
     CLabelThis class mirrors the DW_TAG_label DWARF tag
    CFunctionTypeThis class represents a function type (DW_TAG_subroutine_type)
     CParameterThis class represents a function's parameter
    CPointerTypeThis class represents a pointer to another type
    CStructTypeThis class represents a struct-like type which can be:
     CMemberThis class represents a member of the struct-like
    CTypeThis class is the base class for any types created when editing DWARF debug info
    CTypeDefThis class represents a typedef (DW_TAG_typedef)
    CVariableThis class represents an editable DWARF variable which can be scoped by a function or a compilation unit (DW_TAG_variable)
   Nparameters
    CFormalThis class represents a regular function parameter
    CTemplateValueThis class represents a template value parameter
    CTemplateTypeThis class represents a template type parameter
   Ntypes
    CArrayThis class represents a DW_TAG_array_type
     Csize_info_tStructure that wraps information about the dimension of this array
    CAtomicThis class represents a DW_TAG_atomic_type
    CBaseThis class wraps the DW_TAG_base_type type which can be used – for instance – to represent integers or primitive types
    CClassThis class represents a DWARF class type (DW_TAG_class_type)
    CClassLikeThis class abstracts a DWARF aggregate: DW_TAG_structure_type, DW_TAG_class_type, DW_TAG_union_type
     CMemberThis represents a class/struct/union attribute
    CCoarrayThis class represents a DW_TAG_coarray_type
    CConstThis class represents a DW_TAG_const_type
    CDynamicThis class represents a DW_TAG_dynamic_type
    CEnumThis class represents a DW_TAG_enumeration_type
     CEntryThis class represents an enum entry which is essentially composed of a name and its value (integer)
    CFileThis class represents a DW_TAG_file_type
    CImmutableThis class represents a DW_TAG_immutable_type
    CInterfaceThis class represents a DW_TAG_interface_type
    CPackedThis class represents a DWARF packed type (DW_TAG_packed_type)
    CPointerThis class represents a DW_TAG_pointer_type DWARF type
    CPointerToMemberThis class represents a DW_TAG_ptr_to_member_type
    CReferenceThis class represents a DW_TAG_reference_type
    CRestrictThis class represents a DW_TAG_restrict_type
    CRValueReferenceThis class represents a DW_TAG_rvalue_reference_type
    CSetTyThis class represents a DW_TAG_set_type
    CSharedThis class represents a DW_TAG_shared_type
    CStringTyThis class represents a DW_TAG_string_type
    CStructureThis class represents a DWARF struct type (DW_TAG_structure_type)
    CSubroutineThis class represents a DW_TAG_subroutine_type
    CTemplateAliasThis class represents a DW_TAG_template_alias
    CThrownThis class represents a DW_TAG_thrown_type
    CTypedefThis class represents a DW_TAG_typedef type
    CUnionThis class represents a DWARF union type (DW_TAG_union_type)
    CVolatileThis class represents a DW_TAG_volatile_type
   CCompilationUnitThis class represents a DWARF compilation unit
    CIterator
    CLanguageLanguages supported by the DWARF (v5) format. See: https://dwarfstd.org/languages.html
   CDebugInfoThis class represents a DWARF debug information. It can embed different compilation units which can be accessed through compilation_units()
   CEditorThis class exposes the main API to create DWARF information
   CFunctionThis class represents a DWARF function which can be associated with either: DW_TAG_subprogram or DW_TAG_inlined_subroutine
    CIterator
   CLexicalBlockThis class represents a DWARF lexical block (DW_TAG_lexical_block)
    CIterator
   CParameterThis class represents a DWARF parameter which can be either:
    CLocationThis class exposes information about the location of a parameter
    CRegisterLocThis class represents a register location
   CScopeThis class materializes a scope in which Function, Variable, Type, ... can be defined
   CTypeThis class represents a DWARF Type which includes:
    CIterator
   CVariableThis class represents a DWARF variable which can be owned by a dwarf::Function or a dwarf::CompilationUnit
    CIterator
  NELFNamespace related to the LIEF's ELF module
   CAArch64FeatureThis class represents the GNU_PROPERTY_AARCH64_FEATURE_1_AND property
   CAArch64PAuthThis class represents the GNU_PROPERTY_AARCH64_FEATURE_PAUTH property
   CAndroidIdentClass representing the ".note.android.ident" section
   CBinaryClass which represents an ELF binary
   CBuilderClass which takes an ELF::Binary object and reconstructs a valid binary
    Cconfig_tConfiguration options to tweak the building process
   CCoreAuxvClass representing core auxv object
   CCoreFileClass representing a core NT_FILE which describes the mapped files of the process
    Centry_tCore file entry
   CCorePrPsInfoClass representing the NT_PRPSINFO core note. This kind of note represents general information about the process
    Cinfo_t
   CCorePrStatusClass representing core PrPsInfo object
    Csiginfo_t
    Ctimeval_t
    Cpr_status_tStatus information from a core dump
    CRegisters
   CCoreSigInfoClass representing a core siginfo object
   CDynamicEntryClass which represents an entry in the dynamic table These entries are located in the .dynamic section or the PT_DYNAMIC segment
   CDynamicEntryArrayClass that represent an Array in the dynamic table. This entry is associated with constructors:
   CDynamicEntryAuxiliaryClass which represents a DT_AUXILIARY entry in the dynamic table This kind of entry is used to specify a shared object that should be loaded before the current one
   CDynamicEntryFilterClass which represents a DT_FILTER entry in the dynamic table This kind of entry is used to specify a shared object for which the current one is a filter
   CDynamicEntryFlags
   CDynamicEntryLibraryClass which represents a DT_NEEDED entry in the dynamic table
   CDynamicEntryRpathClass which represents a DT_RPATH entry. This attribute is deprecated (cf. man ld) in favor of DT_RUNPATH (See DynamicEntryRunPath)
   CDynamicEntryRunPathClass that represents a DT_RUNPATH which is used by the loader to resolve libraries (DynamicEntryLibrary)
   CDynamicSharedObjectClass which represents a DT_SONAME entry in the dynamic table This kind of entry is usually used to name the original library
   CGenericThis class represents a property which doesn't have a concrete LIEF implementation
   CGnuHashClass which provides a view over the GNU Hash implementation. Most of the fields are read-only since the values are re-computed by the LIEF::ELF::Builder
   CHashClass which implements a visitor to compute a deterministic hash for LIEF ELF objects
   CHeaderClass which represents the ELF's header. This class mirrors the raw ELF Elfxx_Ehdr structure
   CNeededThis class represents the GNU_PROPERTY_1_NEEDED note property
   CNoteClass which represents an ELF note. This class can be instantiated using the static Note::create functions
   CNoteAbiClass that wraps the NT_GNU_ABI_TAG note
   CNoteGnuPropertyClass that wraps the NT_GNU_PROPERTY_TYPE_0 note
    CPropertyThis class wraps the different properties that can be used in a NT_GNU_PROPERTY_TYPE_0 note
   CNoteNoCopyOnProtectedThis class provides an interface over the GNU_PROPERTY_NO_COPY_ON_PROTECTED property. This property indicates that the linker shouldn't copy relocations against protected symbols
   CParserClass which parses and transforms an ELF file into a ELF::Binary object
   CParserConfigThis structure is used to tweak the ELF Parser (ELF::Parser)
   CQNXStackClass representing the QNX QNT_STACK note
   CRelocationClass that represents an ELF relocation
   CSectionClass which represents an ELF Section
   CSegmentClass which represents the ELF segments
   CStackSizeThis class provides an interface over the GNU_PROPERTY_STACK_SIZE property
   CSymbolClass which represents an ELF symbol
   CSymbolVersionClass which represents an entry defined in the DT_VERSYM dynamic entry
   CSymbolVersionAuxClass which represents an Auxiliary Symbol version
   CSymbolVersionAuxRequirement
   CSymbolVersionDefinitionClass which represents an entry defined in DT_VERDEF or .gnu.version_d
   CSymbolVersionRequirementClass which represents an entry in the DT_VERNEED or .gnu.version_r table
   CSysvHashClass which represents the SYSV hash for the symbols resolution
   CX86FeaturesThis class interfaces the different GNU_PROPERTY_X86_FEATURE_* properties which includes:
   CX86ISAThis class interfaces the different GNU_PROPERTY_X86_ISA_* properties which includes:
  Nlogging
   CScoped
  NMachONamespace related to the LIEF's Mach-O module
   Ndetails
    Cfunction_variant_fixup_t
    Cruntime_table_entry_t
   CAtomInfoClass which represents the LC_ATOM_INFO command
   CBinaryClass which represents a MachO binary
    Crange_t
    CKeyCmp
   CBinaryParserClass used to parse a single binary (i.e. non-FAT)
   CBindingInfoClass that provides an interface over a binding operation
   CBindingInfoIterator
   CBuilderClass used to rebuild a Mach-O file
    Cconfig_tOptions to tweak the building process
   CBuildToolVersionClass that represents a tool's version that was involved in the build of the binary
   CBuildVersion
   CChainedBindingInfoThis class represents a symbol binding operation associated with the LC_DYLD_CHAINED_FIXUPS command
   CChainedPointerAnalysis
    Cdyld_chained_ptr_arm64e_rebase_t
    Cdyld_chained_ptr_arm64e_bind_t
    Cdyld_chained_ptr_arm64e_auth_rebase_t
    Cdyld_chained_ptr_arm64e_auth_bind_t
    Cdyld_chained_ptr_64_rebase_t
    Cdyld_chained_ptr_arm64e_bind24_t
    Cdyld_chained_ptr_arm64e_auth_bind24_t
    Cdyld_chained_ptr_64_bind_t
    Cdyld_chained_ptr_64_kernel_cache_rebase_t
    Cdyld_chained_ptr_32_rebase_t
    Cdyld_chained_ptr_32_bind_t
    Cdyld_chained_ptr_32_cache_rebase_t
    Cdyld_chained_ptr_32_firmware_rebase_t
    Cdyld_chained_ptr_arm64e_segmented_rebase_t
    Cdyld_chained_ptr_arm64e_auth_segmented_rebase_t
    Cunion_pointer_t
   CCodeSignature
   CCodeSignatureDir
   CDataCodeEntryInterface over an entry in the DataInCode command
   CDataInCodeInterface of the LC_DATA_IN_CODE command This command is used to list slices of code sections that contain data. The slices information are stored as an array of DataCodeEntry
   CDyldBindingInfoThis class represents a symbol binding operation associated with the LC_DYLD_INFO bytecode
   CDyldChainedFixupsClass that represents the LC_DYLD_CHAINED_FIXUPS command
    Cchained_starts_in_segmentStructure that mirrors the raw dyld_chained_starts_in_segment which aims at providing information about the chained rebase/bind fixups
   CDyldChainedFixupsCreator
    Cbinding_info_t
    Creloc_info_t
   CDyldEnvironmentClass that represents a LC_DYLD_ENVIRONMENT command which is used by the Mach-O linker/loader to initialize an environment variable
   CDyldExportsTrieClass that represents the LC_DYLD_EXPORTS_TRIE command
   CDyldInfoClass that represents the LC_DYLD_INFO and LC_DYLD_INFO_ONLY commands
   CDylibCommandClass which represents a library dependency
   CDylinkerCommandClass that represents the Mach-O linker, also named loader. Most of the time, DylinkerCommand::name() should return /usr/lib/dyld
   CDynamicSymbolCommandClass that represents the LC_DYSYMTAB command
   CEncryptionInfoClass that represents the LC_ENCRYPTION_INFO / LC_ENCRYPTION_INFO_64 commands
   CExportInfoClass that provides an interface over the Dyld export info
   CFatBinaryClass which represents a Mach-O (fat) binary This object is also used for representing Mach-O binaries that are NOT FAT
   CFilesetCommandClass associated with the LC_FILESET_ENTRY commands
   CFunctionStartsClass which represents the LC_FUNCTION_STARTS command
   CFunctionVariantFixupsClass which represents the LC_FUNCTION_VARIANT_FIXUPS command
    CFixupA single relocation associated with a function-variant. It mirrors the FunctionVariantFixups::InternalFixup structure used by dyld and describes a slot that must be fixed up to point to the variant referenced by variant_index()
   CFunctionVariantsClass representing the LC_FUNCTION_VARIANTS load command
    CRuntimeTableEntryThis class exposes information about a given implementation
    CRuntimeTableRepresents a runtime table of function variants sharing a common namespace (referred to internally as FunctionVariantsRuntimeTable in dyld)
   CHashClass which implements a visitor to compute a deterministic hash for LIEF MachO objects
   CHeaderClass that represents the Mach-O header
   CIndirectBindingInfoThis class represents a binding operation inferred from the indirect symbol table
   CLazyLoadDylibInfoClass representing the LC_LAZY_LOAD_DYLIB_INFO load command
    CFixupA single lazy-binding fixup decoded from the chain referenced by chain_start_image_offset and decoded according to pointer_format
   CLinkEdit
   CLinkerOptHintClass which represents the LC_LINKER_OPTIMIZATION_HINT command
   CLoadCommandBase class for the Mach-O load commands
   CMainCommandClass that represents the LC_MAIN command. This kind of command can be used to determine the entrypoint of an executable
   CNoteCommandClass that represents the LC_NOTE command
   CParserThe main interface to parse a Mach-O binary
   CParserConfigThis structure is used to tweak the MachO Parser (MachO::Parser)
   CRelocationClass that represents a Mach-O relocation
   CRelocationDyldClass that represents a relocation found in the DyldInfo structure
   CRelocationFixupClass that represents a rebase relocation found in the LC_DYLD_CHAINED_FIXUPS command
   CRelocationObjectClass that represents a relocation present in the MachO object file (.o). Usually, this kind of relocation is found in the MachO::Section
   CRoutineClass that represents the LC_ROUTINE/LC_ROUTINE64 commands. According to the Mach-O loader.h documentation:
   CRPathCommandClass that represents the LC_RPATH command
   CSectionClass that represents a Mach-O section
   CSegmentCommandClass which represents a LoadCommand::TYPE::SEGMENT / LoadCommand::TYPE::SEGMENT_64 command
   CSegmentSplitInfoClass that represents the LoadCommand::TYPE::SEGMENT_SPLIT_INFO command
   CSourceVersionClass that represents the MachO LoadCommand::TYPE::SOURCE_VERSION This command is used to provide the version of the sources used to build the binary
   CStubThis class represents a stub entry in sections like __stubs,__auth_stubs
    Ctarget_info_t
    CIterator
   CSubClientClass that represents the SubClient command. According to the Mach-O loader.h documentation:
   CSubFrameworkClass that represents the SubFramework command. According to the Mach-O loader.h documentation:
   CSymbolClass that represents a Symbol in a Mach-O file
   CSymbolCommandClass that represents the LC_SYMTAB command
   CThreadCommandClass that represents the LC_THREAD / LC_UNIXTHREAD commands and that can be used to get the binary entrypoint when the LC_MAIN (MainCommand) is not present
   CThreadLocalVariablesThis class represents a MachO section with type Section::TYPE::THREAD_LOCAL_VARIABLES (S_THREAD_LOCAL_VARIABLES)
    CThunkDescriptor for a single thread-local variable
    CIteratorRandom-access iterator that materializes Thunk values on the fly from the raw section content
   CTwoLevelHintsClass which represents the LC_TWOLEVEL_HINTS command
   CUnknownCommandGeneric class when the command is not recognized by LIEF
   CUUIDCommandClass that represents the UUID command
   CVersionMinClass that wraps the LC_VERSION_MIN_MACOSX, LC_VERSION_MIN_IPHONEOS, ... commands
  NOAT
   CBinary
   CClass
   CDexFile
   CHash
   CHeader
    Celement_t
   CMethod
   CParserClass to parse an OAT file to produce an OAT::Binary
  NobjcNamespace related to ObjC metadata
   CCategoryThis class represents an Objective-C category (e.g. @interface NSString (MyAdditions))
    CIterator
   CClassThis class represents an Objective-C class (@interface)
    CIterator
   CDeclOptThis structure wraps options to tweak the generated output of functions like LIEF::objc::Metadata::to_decl
   CIVarThis class represents an instance variable (ivar)
    CIterator
   CMetadataThis class is the main interface to inspect Objective-C metadata
   CMethodThis class represents an Objective-C Method
    CIterator
   CPropertyThis class represents a @property in Objective-C
    CIterator
   CProtocolThis class represents an Objective-C @protocol
    CIterator
  Npdb
   Ntypes
    CArrayThis class represents a LF_ARRAY PDB type
    CAttributeThis class represents an attribute (LF_MEMBER) in an aggregate (class, struct, union, ...)
     CIterator
    CBitFieldThis class represents a LF_BITFIELD PDB type
    CClassInterface for the LF_CLASS PDB type
    CClassLikeThis class abstracts the following PDB types: LF_STRUCTURE, LF_INTERFACE, LF_CLASS or LF_UNION
    CEnumThis class represents a LF_ENUM PDB type
     CEntryThis class represents an enum entry which is essentially composed of a name and its value (integer)
    CFunctionThis class represents a LF_PROCEDURE PDB type
    CInterfaceInterface for the LF_INTERFACE PDB type
    CMethodThis class represents a Method (LF_ONEMETHOD) that can be defined in a ClassLike PDB type (Class, Structure, Union, Interface)
     CIterator
    CModifierThis class represents a LF_MODIFIER PDB type
    CPointerThis class represents a LF_POINTER PDB type
    CSimpleThis class represents primitive types (int, float, ...) which are also named simple types in the PDB format
    CStructureInterface for the LF_STRUCTURE PDB type
    CUnionThis class represents a LF_UNION PDB type
   CBuildMetadataThis class wraps build metadata represented by the codeview symbols: S_COMPILE3, S_COMPILE2, S_BUILDINFO, S_ENVBLOCK
    Cversion_tThis structure represents a version for the backend or the frontend
    Cbuild_info_tThis structure represents information wrapped by the S_BUILDINFO symbol
   CCompilationUnitThis class represents a CompilationUnit (or Module) in a PDB file
    CIterator
   CDebugInfoThis class provides an interface for PDB files. One can instantiate this class using LIEF::pdb::load() or LIEF::pdb::DebugInfo::from_file
   CFunction
    CIterator
   CPublicSymbolThis class provides general information (RVA, name) about a symbol from the PDB's public symbol stream (or Public symbol hash stream)
    CIterator
   CTypeThis is the base class for any PDB type
    CIterator
  NPENamespace related to the LIEF's PE module
   Ndetails
    Carm64_epilog_scope_t
    Carm64_packed_t
    Carm64_unpacked_t
    Cunwind_code_t
   Nunwind_aarch64This namespace wraps code related to PE-ARM64 unwinding code
    CPackedFunctionThis class represents a packed AArch64 exception entry
    CUnpackedFunctionThis class represents an unpacked AArch64 exception entry
     Cepilog_scope_tThis structure describes an epilog scope
   Nunwind_x64This namespace wraps code related to PE-x64 unwinding code
    CCodeBase class for all unwind operations
    CAllocThis class represents a stack-allocation operation (UNWIND_OPCODES::ALLOC_SMALL or UNWIND_OPCODES::ALLOC_LARGE)
    CPushNonVolPush a nonvolatile integer register, decrementing RSP by 8
    CPushMachFramePush a machine frame
    CSetFPRegEstablish the frame pointer register by setting the register to some offset of the current RSP
    CSaveNonVolatileSave a nonvolatile integer register on the stack using a MOV instead of a PUSH
    CSaveXMM128
    CEpilogDescribes the function's epilog
    CSpare
   CAttributeInterface over PKCS #7 attribute
   CBinaryClass which represents a PE binary This is the main interface to manage and modify a PE executable
   CBuilderClass that is used to rebuild a raw PE binary from a PE::Binary object
    Cconfig_tThis structure is used to configure the build operation
   CCHPEMetadataBase class for any Compiled Hybrid Portable Executable (CHPE) metadata
   CCHPEMetadataARM64This class represents ARM64-specific metadata used in CHPE (Compatible Hybrid PE) binaries, particularly for hybrid architectures like ARM64EC and ARM64X
    Crange_entry_tStructure that describes architecture-specific ranges
    Credirection_entry_tStructure that describes a redirection
    Ccode_range_entry_point_tMirror of IMAGE_ARM64EC_CODE_RANGE_ENTRY_POINT: Represents a mapping between code range and its entry point
   CCHPEMetadataX86This class represents hybrid metadata for X86
   CCodeIntegrity
   CCodeViewInterface for the (generic) Debug CodeView (IMAGE_DEBUG_TYPE_CODEVIEW)
   CCodeViewPDBCodeView PDB specialization
   CContentInfo
    CContent
   CContentTypeInterface over the structure described by the OID 1.2.840.113549.1.9.3 (PKCS #9)
   CDataDirectoryClass that represents a PE data directory entry
   CDebugThis class represents a generic entry in the debug data directory. For known types, this class is extended to provide a dedicated API (see: CodeView)
   CDelayImportClass that represents a PE delayed import
   CDelayImportEntryClass that represents an entry (i.e. an import) in the delay import table (DelayImport)
   CDosHeaderClass which represents the DosHeader, the first structure present at the beginning of a PE file
   CDynamicFixupThis is the base class for any fixups located in DynamicRelocation
   CDynamicFixupARM64KernelThis class wraps fixups associated with the (special) symbol value: IMAGE_DYNAMIC_RELOCATION_ARM64_KERNEL_IMPORT_CALL_TRANSFER (8)
    Creloc_entry_tMirror IMAGE_IMPORT_CONTROL_TRANSFER_ARM64_RELOCATION
   CDynamicFixupARM64XThis class represents IMAGE_DYNAMIC_RELOCATION_ARM64X
    Creloc_entry_t
   CDynamicFixupControlTransferThis class wraps fixups associated with the (special) symbol value: IMAGE_DYNAMIC_RELOCATION_GUARD_IMPORT_CONTROL_TRANSFER (3)
    Creloc_entry_tMirror IMAGE_IMPORT_CONTROL_TRANSFER_DYNAMIC_RELOCATION
   CDynamicFixupGenericThis class represents a generic entry where fixups are regular relocations (LIEF::PE::Relocation)
   CDynamicFixupUnknownThis class represents a special dynamic relocation where the format of the fixups is not supported by LIEF
   CDynamicRelocationThis is the base class for any IMAGE_DYNAMIC_RELOCATION32, IMAGE_DYNAMIC_RELOCATION32_V2, IMAGE_DYNAMIC_RELOCATION64, IMAGE_DYNAMIC_RELOCATION64_V2 dynamic relocations
   CDynamicRelocationV1This class represents a dynamic relocation (IMAGE_DYNAMIC_RELOCATION32 or IMAGE_DYNAMIC_RELOCATION64)
   CDynamicRelocationV2This class represents a dynamic relocation (IMAGE_DYNAMIC_RELOCATION64_V2 or IMAGE_DYNAMIC_RELOCATION32_V2)
   CEnclaveConfigurationThis class represents the enclave configuration
   CEnclaveImportDefines an entry in the array of images that an enclave can import
   CExceptionInfoThis class is the base class for any exception or runtime function entry
   CExDllCharacteristicsThis class represents the IMAGE_DEBUG_TYPE_EX_DLLCHARACTERISTICS debug entry
   CExportClass which represents a PE Export
   CExportEntryClass which represents a PE Export entry (cf. PE::Export)
    Cforward_information_t
   CFactoryThis factory is used to create PE from scratch
   CFPOThis class represents the IMAGE_DEBUG_TYPE_FPO debug entry
    Centry_tRepresents the stack frame layout for a x86 function when frame pointer omission (FPO) optimization is used
   CFunctionOverrideThis class represents IMAGE_DYNAMIC_RELOCATION_FUNCTION_OVERRIDE
    Cimage_bdd_dynamic_relocation_tMirror IMAGE_BDD_DYNAMIC_RELOCATION
    Cimage_bdd_info_tMirror IMAGE_BDD_INFO
   CFunctionOverrideInfo
   CGenericContent
   CGenericTypeInterface over an attribute for which the internal structure is not supported by LIEF
   CHashClass which implements a visitor to compute a deterministic hash for LIEF PE objects
   CHeaderClass that represents the PE header (which follows the DosHeader)
   CImportClass that represents a PE import
   CImportEntryClass that represents an entry (i.e. an import) in the import table (Import)
   CLoadConfigurationThis class represents the load configuration data associated with the IMAGE_LOAD_CONFIG_DIRECTORY
    Cguard_function_t
   CMsCounterSignThis class exposes the MS Counter Signature attribute
   CMsManifestBinaryIDInterface over the structure described by the OID 1.3.6.1.4.1.311.10.3.28 (szOID_PLATFORM_MANIFEST_BINARY_ID)
   CMsSpcNestedSignatureInterface over the structure described by the OID 1.3.6.1.4.1.311.2.4.1
   CMsSpcStatementTypeInterface over the structure described by the OID 1.3.6.1.4.1.311.2.1.11
   COptionalHeaderClass which represents the PE OptionalHeader structure
   CParserMain interface to parse PE binaries. In particular, the static Parser::parse functions should be used to get a LIEF::PE::Binary instance
   CParserConfigThis structure is used to configure the behavior of the PE Parser (PE::Parser)
   CPDBChecksumThis class represents the PDB Checksum debug entry which is essentially an array of bytes representing the checksum of the PDB content
   CPKCS9AtSequenceNumberInterface over the structure described by the OID 1.2.840.113549.1.9.25.4 (PKCS #9)
   CPKCS9CounterSignatureInterface over the structure described by the OID 1.2.840.113549.1.9.6 (PKCS #9)
   CPKCS9MessageDigestInterface over the structure described by the OID 1.2.840.113549.1.9.4 (PKCS #9)
   CPKCS9SigningTimeInterface over the structure described by the OID 1.2.840.113549.1.9.5 (PKCS #9)
   CPKCS9TSTInfoInterface over the structure described by the OID 1.2.840.113549.1.9.16.1.4 (PKCS #9)
   CPogoThis class represents a Profile Guided Optimization entry from the debug directory (IMAGE_DEBUG_TYPE_POGO)
   CPogoEntry
   CRelocationClass which represents the Base Relocation Block We usually find this structure in the .reloc section
   CRelocationEntryClass which represents an entry of the PE relocation table
   CReproThis class represents a reproducible build entry from the debug directory. (IMAGE_DEBUG_TYPE_REPRO). This entry is usually generated with the undocumented /Brepro linker flag
   CResourceAccelerator
   CResourceDataClass which represents a Data Node in the PE resources tree
   CResourceDialogThis class is the base class for either a regular (legacy) Dialog or an extended Dialog. These different kinds of Dialogs are documented by MS at the following addresses:
    Cordinal_or_str_tThis structure wraps either an ordinal value (uint16_t) or a string. The ordinal value should refer to an existing resource id in the resource tree
    CItemThis class represents an element of the dialog. It can be for instance, a button, or a caption
   CResourceDialogExtendedImplementation for the new extended dialogbox format
    CItemThis class represents a DLGTEMPLATEEX item (DLGITEMTEMPLATEEX)
    Cfont_tFont information for the font to use for the text in the dialog box and its controls
   CResourceDialogRegularImplementation for a regular/legacy dialog box
    CItemThis class represents a DLGTEMPLATE item: DLGITEMTEMPLATE
    Cfont_tThis structure represents additional font information that might be embedded at the end of the DLGTEMPLATE stream
   CResourceDirectory
   CResourceIcon
   CResourceNodeClass which represents a Node in the resource tree
   CResourcesManagerThe Resource Manager provides an enhanced API to manipulate the resource tree
    Cstring_entry_tThis structure represent an entry in the string table (RT_STRING)
   CResourceStringFileInfoRepresentation of the StringFileInfo structure
   CResourceStringTableThis class represents the StringTable structure. This structure can be seen as a dictionary of key-value pairs with keys and values defined as UTF-16 strings
    Centry_tAn entry in this table which is composed of an UTF-16 key and an UTF-16 value
   CResourceVarThis class represents an element of the ResourceVarFileInfo structure It typically contains a list of language and code page identifier pairs that the version of the application or DLL supports
   CResourceVarFileInfoRepresentation of the VarFileInfo structure
   CResourceVersionRepresentation of the data associated with the RT_VERSION entry
    Cfixed_file_info_tThis structure represents the VS_FIXEDFILEINFO structure defined in verrsrc.h
   CRichEntryClass which represents an entry associated to the RichHeader
   CRichHeaderClass which represents the not-so-documented rich header
   CRsaInfoObject that wraps a RSA key
   CRuntimeFunctionAArch64This class represents an entry in the exception table (.pdata section) for the AArch64 architecture
   CRuntimeFunctionX64This class represents an entry in the exception table (.pdata section) for the x86-64 architecture
    Cunwind_info_tThis structure represents the UNWIND_INFO which records the effects a function has on the stack pointer, and where the nonvolatile registers are saved on the stack
   CSectionClass which represents a PE section
   CSignatureMain interface for the PKCS #7 signature scheme
   CSignatureParser
   CSignerInfo
   CSigningCertificateV2SigningCertificateV2 ::= SEQUENCE { certs SEQUENCE OF ESSCertIDv2, policies SEQUENCE OF PolicyInformation OPTIONAL }
   CSpcIndirectData
   CSpcRelaxedPeMarkerCheck
   CSpcSpOpusInfoInterface over the structure described by the OID 1.3.6.1.4.1.311.2.1.12
   CTLSClass which represents the PE Thread Local Storage
   CVCFeatureThis class represents the IMAGE_DEBUG_TYPE_VC_FEATURE debug entry
   CVolatileMetadataThis class represents volatile metadata which can be enabled at link time with /volatileMetadata
    Crange_t
   Cx509Interface over a x509 certificate
  Nruntime
   Nandroid
    CHostThis class exposes Android-specific host information
    CModuleThis class exposes Android-specific API for a module
    CProcessThis class exposes Android-specific API for the current process
    CPropertyThis class represents an Android property such as ro.boot.hardware
   NLinux
    CHostThis class exposes Linux-specific host information
    CModuleThis class exposes a Linux-specific API for a module
    CProcessThis class exposes Linux-specific API for the current process
   Nosx
    CHost
     Cversion_t
    CModuleThis class exposes an OSX-specific API for a module
    CProcessThis class exposes OSX-specific API for the current process
   Nwindows
    CHostThis class exposes Windows-specific host information
     Cversion_t
    Cinjection_context_tDescribes how to spawn a new process and inject a library into it
    CLdrDataTableEntryThis class exposes a user-friendly interface over a LDR_DATA_TABLE_ENTRY, the structure used by the Windows loader to describe a module loaded in the current process
     CIteratorBidirectional iterator over the LdrDataTableEntry mirroring the doubly-linked list used by Windows
    CModuleThis class exposes a Windows-specific API for a module
    CPEBThis class exposes a user-friendly interface over the Process Environment Block (PEB) of the current process
    CProcessThis class exposes Windows-specific API for the current process
   CHostThis class represents the current host
   CMemoryThis class exposes API to access and manage memory
    CChunkRepresents a contiguous chunk of memory allocated or inspected by the runtime
    CScopedPermissionsRAII interface to change the permission within a determined scope
   CModuleThis class represents an in-memory module which can be an executable or a library
    CIterator
   CProcessThis structure represents the current process and provides functions to query process-level information
    CEnvVarsThis structure wraps environment variables
  NVDEX
   CFileMain class for the VDEX module which represents a VDEX file
   CHash
   CHeader
   CParserClass which parses a VDEX file and transforms it into a VDEX::File object
  CAbstractHash
  CASN1Reader
  CBinaryGeneric interface representing a binary executable
  CBinaryStreamClass that is used to a read stream of data from different sources
  Cdebug_location_tThis structure holds a debug location (source filename & line)
  CDebugInfoThis class provides a generic interface for accessing debug information from different formats such as DWARF and PDB
  CDeclOptConfiguration options for generated code from debug info
  CDumpStreamThis stream interface provides facilities to parse a dumped binary
  CFileStreamStream interface over a std::ifstream
  Cfilter_iteratorIterator which returns a ref on container's values given predicates
  CFunctionClass that represents a function in the binary
  CHash
  CHeader
  Citerator_adaptor_baseCRTP base class for adapting an iterator to a different type
  Citerator_facade_baseCRTP base class which implements the entire standard iterator facade in terms of a minimal subset of the interface
  Citerator_range
   CReferenceProxy
  Clief_version_t
  CMemoryStream
  CObject
  Cok_error_tOpaque structure that is used by LIEF to avoid writing result<void> f(...). Instead, it makes the output explicit such as:
  Cok_tOpaque structure used by ok_error_t
  Coptional
  CParserMain interface to parse an executable regardless of its format
  Cpointee_iteratorAn iterator type that allows iterating over the pointees via some other iterator
  Cpointer_iterator
  Crange_t
  Cref_iteratorIterator which returns reference on container's values
  CRelocationClass which represents an abstracted Relocation
  CresultWrapper that contains an Object (T) or an error
  CScopedStream
  CScopeOStream
  CSectionClass which represents an abstracted section
  CSpanStream
  CSymbolThis class represents a symbol in an executable format
  CToggleEndianness
  Cvector_iostream
  CVectorStream
  CVisitor
 CElf_Binary_t
 CElf_DynamicEntry_Array_t
 CElf_DynamicEntry_Auxiliary_t
 CElf_DynamicEntry_Filter_t
 CElf_DynamicEntry_Flags_t
 CElf_DynamicEntry_Library_t
 CElf_DynamicEntry_Rpath_t
 CElf_DynamicEntry_RunPath_t
 CElf_DynamicEntry_SharedObject_t
 CElf_DynamicEntry_t
 CElf_Header_t
 CElf_Section_t
 CElf_Segment_t
 CElf_Symbol_t
 CEnableBitMaskOperators
 CEnableBitMaskOperators< LIEF::ELF::Section::FLAGS >
 CEnableBitMaskOperators< LIEF::ELF::Segment::FLAGS >
 CEnableBitMaskOperators< LIEF::Function::FLAGS >
 CEnableBitMaskOperators< LIEF::Header::MODES >
 CEnableBitMaskOperators< LIEF::MachO::ExportInfo::FLAGS >
 CEnableBitMaskOperators< LIEF::MachO::Header::FLAGS >
 CEnableBitMaskOperators< LIEF::MachO::Section::FLAGS >
 CEnableBitMaskOperators< LIEF::MachO::SegmentCommand::FLAGS >
 CEnableBitMaskOperators< LIEF::MachO::SegmentCommand::VM_PROTECTIONS >
 CEnableBitMaskOperators< LIEF::PE::ExDllCharacteristics::CHARACTERISTICS >
 CEnableBitMaskOperators< LIEF::PE::Header::CHARACTERISTICS >
 CEnableBitMaskOperators< LIEF::PE::OptionalHeader::DLL_CHARACTERISTICS >
 CEnableBitMaskOperators< LIEF::PE::ResourceAccelerator::FLAGS >
 CEnableBitMaskOperators< LIEF::PE::ResourceDialog::CONTROL_STYLES >
 CEnableBitMaskOperators< LIEF::PE::ResourceDialog::DIALOG_STYLES >
 CEnableBitMaskOperators< LIEF::PE::ResourceDialog::WINDOW_EXTENDED_STYLES >
 CEnableBitMaskOperators< LIEF::PE::ResourceDialog::WINDOW_STYLES >
 CEnableBitMaskOperators< LIEF::PE::RuntimeFunctionX64::UNWIND_FLAGS >
 CEnableBitMaskOperators< LIEF::PE::Section::CHARACTERISTICS >
 CEnableBitMaskOperators< LIEF::PE::Signature::VERIFICATION_CHECKS >
 CEnableBitMaskOperators< LIEF::PE::Signature::VERIFICATION_FLAGS >
 CEnableBitMaskOperators< LIEF::PE::x509::VERIFICATION_FLAGS >
 CMacho_Binary_tLIEF::MachO::Binary C Handler
 CMacho_Command_t
 CMacho_Header_t
 CMacho_Section_t
 CMacho_Segment_t
 CMacho_Symbol_t
 CPe_Binary_tLIEF::PE::Binary C Handler
 CPe_DataDirectory_t
 CPe_DosHeader_t
 CPe_Header_t
 CPe_Import_t
 CPe_ImportEntry_t
 CPe_OptionalHeader_t
 CPe_Section_t