16#ifndef LIEF_PE_LOAD_CONFIGURATION_V6_H
17#define LIEF_PE_LOAD_CONFIGURATION_V6_H
20#include "LIEF/visibility.h"
22#include "LIEF/PE/LoadConfigurations/LoadConfigurationV5.hpp"
35 static constexpr VERSION WIN_VERSION = VERSION::WIN_10_0_15002;
51 return guardrf_verify_stackpointer_function_pointer_;
56 return hotpatch_table_offset_;
59 void guard_rf_verify_stackpointer_function_pointer(uint64_t value) {
60 guardrf_verify_stackpointer_function_pointer_ = value;
62 void hotpatch_table_offset(uint32_t value) {
63 hotpatch_table_offset_ = value;
66 static bool classof(
const LoadConfiguration* config) {
67 return config->version() == WIN_VERSION;
70 ~LoadConfigurationV6()
override =
default;
72 void accept(Visitor& visitor)
const override;
74 std::ostream& print(std::ostream& os)
const override;
77 uint64_t guardrf_verify_stackpointer_function_pointer_ = 0;
78 uint32_t hotpatch_table_offset_ = 0;
Load Configuration enhanced with Return Flow Guard.
Definition LoadConfigurationV5.hpp:32
Load Configuration enhanced with Hotpatch and improved RFG.
Definition LoadConfigurationV6.hpp:33
uint64_t guard_rf_verify_stackpointer_function_pointer() const
VA of the Function verifying the stack pointer.
Definition LoadConfigurationV6.hpp:50
VERSION version() const override
(SDK) Version of the structure
Definition LoadConfigurationV6.hpp:45
uint32_t hotpatch_table_offset() const
Offset to the hotpatch table.
Definition LoadConfigurationV6.hpp:55
LIEF namespace.
Definition Abstract/Binary.hpp:32
Definition LoadConfigurationV6.hpp:29