Forgot to mention: newer versions of the game uses ShowStringW
Function:
?ShowStringW@CMyBitmap@@SA?AUC3_SIZE@@HHKPBGPBDH_NW4RENDER_TEXT_STYLE@@KUC3_POS@@@Z
Example:
typedef struct {
int width;
int height;
} C3_SIZE;
typedef struct {
int x;
int y;
} C3_POS;
enum RENDER_TEXT_STYLE {
STYLE_DEFAULT = 0,
STYLE_BOLD = 1,
};
typedef C3_SIZE(__cdecl* tShowStringW)(int, int, DWORD, const wchar_t*, const char*, int, bool, RENDER_TEXT_STYLE, DWORD, C3_POS);
tShowStringW oShowStringW = nullptr;
C3_SIZE __cdecl hkShowStringW(int iPosX, int iPosY, DWORD color, const wchar_t* pszString, const char* pszFont, int nFontSize, bool bAntialias, RENDER_TEXT_STYLE style, DWORD secondColor, C3_POS ptOffset)
{
//call og function
}