I'm trying to call a C++ method from a class that doesn't derive from CBaseEntity/CBasePlayer, but since it's using Microsoft's thiscall convention, I'd presumably have to pass the "this" pointer in ECX for this to work. Is there any way to achieve this in pure SourceMod, or am I out of luck? I did find this issue, but the related PR seems dead years ago:
https://github.com/alliedmodders/sourcemod/issues/1850
If SDKCall is no go, is there any way to use DHooks for this? I know it allows me to specify parameter CPU registers, but I'm interested in calling the function, not detouring it.