16#ifndef LIEF_PE_UTILS_H
17#define LIEF_PE_UTILS_H
21#include "LIEF/PE/enums.hpp"
22#include "LIEF/visibility.h"
23#include "LIEF/errors.hpp"
44LIEF_API
bool is_pe(
const std::string& file);
47LIEF_API
bool is_pe(
const std::vector<uint8_t>& raw);
86LIEF_API
ALGORITHMS algo_from_oid(
const std::string& oid);
Class that is used to a read stream of data from different sources.
Definition BinaryStream.hpp:34
Class which represents a PE binary This is the main interface to manage and modify a PE executable.
Definition PE/Binary.hpp:54
Class that represents a PE import.
Definition Import.hpp:39
ALGORITHMS
Cryptography algorithms.
Definition PE/enums.hpp:686
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.
IMPHASH_MODE
Enum to define the behavior of LIEF::PE::get_imphash.
Definition PE/utils.hpp:33
LIEF namespace.
Definition Abstract/Binary.hpp:32
tl::expected< T, lief_errors > result
Wrapper that contains an Object (T) or an error.
Definition errors.hpp:72