mirror of
https://github.com/geode-sdk/geode.git
synced 2024-12-02 12:17:10 -05:00
35 lines
733 B
C++
35 lines
733 B
C++
#ifndef DYNAMIC_BINARY_INSTRUMENT_H
|
|
#define DYNAMIC_BINARY_INSTRUMENT_H
|
|
|
|
#include "dobby_internal.h"
|
|
|
|
#include "Interceptor.h"
|
|
|
|
#include "InterceptRouting/InterceptRouting.h"
|
|
|
|
#include "TrampolineBridge/ClosureTrampolineBridge/AssemblyClosureTrampoline.h"
|
|
|
|
#define X64InterceptRouting InterceptRouting
|
|
#define ARM64InterceptRouting InterceptRouting
|
|
|
|
class DynamicBinaryInstrumentRouting : public X64InterceptRouting {
|
|
public:
|
|
DynamicBinaryInstrumentRouting(HookEntry *entry, void *handler) : X64InterceptRouting(entry) {
|
|
this->handler = handler;
|
|
}
|
|
|
|
void DispatchRouting();
|
|
|
|
public:
|
|
void *handler;
|
|
|
|
private:
|
|
virtual void BuildDynamicBinaryInstrumentRouting();
|
|
|
|
private:
|
|
void *prologue_dispatch_bridge;
|
|
|
|
;
|
|
};
|
|
|
|
#endif
|