Попытка вызова функции ASM в C ++ .. обычная функция
Вы можете спросить, что это за функция .. __cdecl, __stdcall или __thiscall
Я думаю, что мне не хватает чего-то вроде
push ebp
mov ebp, esp
хотя я не думаю, что мне это нужно, кто-то однажды сказал мне, но я забыл, поэтому я застрял в той же проблеме. Я обычно присоединяю отладчик и исправляю это ... но я не могу в моем случае программа не позволяет отладчики.
У меня есть эта функция, это __ thiscall функция
00458BDE 90 NOP
00458BDF 90 NOP
00458BE0 /$ 8B5424 04 MOV EDX,DWORD PTR SS:[ESP+4]
00458BE4 |. 8B09 MOV ECX,DWORD PTR DS:[ECX]
00458BE6 |. E8 3589FCFF CALL Continuu.00421520
00458BEB \. C2 0400 RETN 4
00458BEE 90 NOP
00458BEF 90 NOP
Это то, что я пытался, не сработало
int testFuncAddr = 0x00421520;
__declspec(naked) void Test(int buffer, int key)
{
__asm{
push edx
push ecx
mov edx, key
mov ecx, buffer
call [testFuncAddr]
ret
}
}
На самом деле не знаю, что с этим делать, подытоживая.