Go to the documentation of this file.
16#ifndef LIEF_PE_UTILS_H
17#define LIEF_PE_UTILS_H
Class that is used to a read stream of data from different sources.
Definition BinaryStream.hpp:33
Class which represents a PE binary This is the main interface to manage and modify a PE executable.
Definition PE/Binary.hpp:52
Class that represents a PE import.
Definition Import.hpp:39
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
ALGORITHMS
Cryptography algorithms.
Definition PE/enums.hpp:686
ALGORITHMS algo_from_oid(const std::string &oid)
result< PE_TYPE > get_type_from_stream(BinaryStream &stream)
std::string get_imphash(const Binary &binary, IMPHASH_MODE mode=IMPHASH_MODE::DEFAULT)
Compute the hash of imported functions.
result< PE_TYPE > get_type(const std::string &file)
if the input file is a PE one, return PE32 or PE32+
result< Import > resolve_ordinals(const Import &import, bool strict=false, bool use_std=false)
Take a PE::Import as entry and try to resolve imports by ordinal.
bool is_pe(BinaryStream &stream)
IMPHASH_MODE
Enum to define the behavior of LIEF::PE::get_imphash.
Definition PE/utils.hpp:33
@ VT
Definition PE/utils.hpp:37
@ DEFAULT
Definition PE/utils.hpp:34
@ LIEF
Definition PE/utils.hpp:35
@ PEFILE
Definition PE/utils.hpp:36
LIEF namespace.
Definition Abstract/Binary.hpp:36
tl::expected< T, lief_errors > result
Wrapper that contains an Object (T) or an error.
Definition errors.hpp:75
#define LIEF_API
Definition visibility.h:41
#define LIEF_LOCAL
Definition visibility.h:42