I'm trying to detour a function in an application. I have it's source available.
class Foot : public Something, public SomethingElse {
public:
Foot( double SomethingAgain, double Somethings,
Blahblah *AnotherThing = NULL );
virtual ~Foot();
virtual void detourmepls( const char *ARGUMENT );
};
This is how it was defined in the header file.
This is what I used to define it so I would call it from my dll using the correct address.
void (__cdecl* detourmepls)(const char *stuff);
What's the true calling convention for this virtual void function?
Any help is appreciated.
NEW EDITS AND INFOS:
I'm using MS Detours 1.5
detourmepls = (void(__thiscall*)(void *Pthis,void *Unknown,const char *))DetourFunction((PBYTE)ADDRESS, (PBYTE)hookedFunction);
This is how I tried the detour ( its pretty messed up. )