You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
563 B
20 lines
563 B
3 years ago
|
#pragma once
|
||
|
#include <transform.hpp>
|
||
|
#include <vmp2.hpp>
|
||
|
#include <vmhandlers.hpp>
|
||
|
|
||
|
namespace vm
|
||
|
{
|
||
|
class ctx_t
|
||
|
{
|
||
|
public:
|
||
|
explicit ctx_t( std::uintptr_t module_base, std::uintptr_t image_base, std::uintptr_t image_size,
|
||
|
std::uintptr_t vm_entry_rva );
|
||
|
|
||
|
bool init();
|
||
|
const std::uintptr_t module_base, image_base, vm_entry_rva, image_size;
|
||
|
vmp2::exec_type_t exec_type;
|
||
|
zydis_routine_t vm_entry, calc_jmp;
|
||
|
std::vector< vm::handler::handler_t > vm_handlers;
|
||
|
};
|
||
|
} // namespace vm
|