summaryrefslogtreecommitdiff
path: root/src/plugins/HookSystem.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/HookSystem.hpp')
-rw-r--r--src/plugins/HookSystem.hpp21
1 files changed, 13 insertions, 8 deletions
diff --git a/src/plugins/HookSystem.hpp b/src/plugins/HookSystem.hpp
index 56227449..0ff7f888 100644
--- a/src/plugins/HookSystem.hpp
+++ b/src/plugins/HookSystem.hpp
@@ -22,14 +22,19 @@ class CFunctionHook {
void* m_pOriginal = nullptr;
private:
- void* m_pSource = nullptr;
- void* m_pFunctionAddr = nullptr;
- void* m_pTrampolineAddr = nullptr;
- void* m_pDestination = nullptr;
- size_t m_iHookLen = 0;
- size_t m_iTrampoLen = 0;
- HANDLE m_pOwner = nullptr;
- bool m_bActive = false;
+ void* m_pSource = nullptr;
+ void* m_pFunctionAddr = nullptr;
+ void* m_pTrampolineAddr = nullptr;
+ void* m_pDestination = nullptr;
+ size_t m_iHookLen = 0;
+ size_t m_iTrampoLen = 0;
+ HANDLE m_pOwner = nullptr;
+ bool m_bActive = false;
+
+ std::vector<std::pair<size_t, std::string>> m_vTrampolineRIPUses;
+
+ size_t probeMinimumJumpSize(void* start, size_t min);
+ size_t getInstructionLenAt(void* start);
friend class CHookSystem;
};