Create a function delegate to the function you want to call.
Like this:
Code:
// Function delegate..
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
private delegate int InternalGameFuncDelegate(int X, int Y, [MarshalAs(UnmanagedType.LPStr)] string Text);
// Create the function ptr..
var func = (InternalGameFuncDelegate)Marshal.GetDelegateForFunctionPointer(new IntPtr(0x12345), typeof(InternalGameFuncDelegate));
// Call the function..
func( 123, 456, "Hello world!" );
Assuming your C# dll is injected and all. Also keep in mind, you will need to find the right return type as well as the calling convention for the function for it to not corrupt the stack.