Ist problemlos realisierbar . Ist aber unschön mit inline asm. Würde aber inline asm vermeiden wenn es sich um standard calling conventions handelt. Ist eigentlich ziemlich simpel du musst nur in der lage sein folgende sachen zu reversen:
*Adresse der Funktion
*Calling Convention
*Argumente der Funktion
sagen wir du hast folgende Funktion reversed (richtige calling convention,richtige reihenfolge der argumente und den rückgabewert)
Code:
void __stdcall SendPacket(int length,BYTE* pPacket);
Adresse:
dann:
Code:
typedef void (__stdcall *tSendPacket)(int length,BYTE* pPacket);
tSendPacket SendPacket = (tSendPacket)(0xDEADBEEF);
jetzt kannst du die funktion einfach so in deinem code aufrufen:
Code:
SendPacket(length,pPacket);
Wenns crashed:
*Calling convention nochmal überprüfen
*Funktionsadresse überprüfen
*Reihenfolge der Argumente überprüfen
habs ausm kopf geschrieben daher kein anspruch auf richtigkeit

.