Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifndef DETOUR_H
- #define DETOUR_H
- // Include files
- #include "global.h"
- class Detour
- {
- public:
- // Constructor and destructor
- Detour(void * targetFunc, void * detourFunc);
- ~Detour(void);
- // Fetches the trampoline
- inline byte * Trampoline(void) { return m_trampoline; }
- // Patch functions
- bool Unpatch(void);
- bool Patch(void);
- private:
- // Private functions
- size_t SizeRequired(void);
- int SetAddressProtection(void * addr, int protection);
- // Private arrays
- static byte m_jmpOperator[];
- static uint m_jmpOffset;
- static size_t m_jmpSize;
- // Private variables
- byte * m_trampoline;
- byte * m_detourFunc;
- byte * m_targetFunc;
- size_t m_preludeSize;
- };
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement