I have address of virtual function in export table , is it possible to get implementation function address, that makes whole logic of virtual ?
Code sample:
this is virtual function that goes to export table
class CORE_API FArchive
{
public:
virtual ~FArchive()
{}
virtual void messageboxer(char* messagetext){}
};
and this is virtual function implementation
class FArchiveFileReader : public FArchive
{
public:
void messageboxer(char* messagetext)
{
MessageBoxA(0, messagetext, "alert", MB_ICONERROR);
}
};
So in export table goes only virtual - like that ?messageboxer@FArchive@@UAEXPAD@Z
If i go on that address(in memmory via debugger) i get this https://i.stack.imgur.com/se3Tb.png - i dont see there nothing usefull, like jmp or call. and this https://i.stack.imgur.com/ZmKgV.png is where function implementation is, is it connected somehow ? so i can calculate it.
Or having virtual function address from export table - is nothing, in terms of getting address of function(with actual logic) ?
If so - can someone give me an simple and good article describing on how to get address of actual function(not virtual).
P.S. And sorry if i talk little strange, english isnt my common language, if you think that some place in my text is unclear, pls tell me where and i would try to explain better !
Hope someoe would help me
thx!