geode/loader/dobby/source/InterceptRouting/Routing/DynamicBinaryInstrument/dynamic-binary-instrument.h

36 lines
733 B
C
Raw Normal View History

2022-07-30 12:24:03 -04:00
#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