class CDB { public: CDB(); private: CDB *pCDB; public: static CDB *In(); void Send(const char *format, ...); public: ~CDB(){} }; CDB::CDB() { pCDB = (CDB*)0x10488E0; } CDB *CDB::In() { static CDB Cached; return &Cached; } void CDB::Send(const char *format, ...) { typedef void(__fastcall *__Send)(CDB *pCDB, const char *format, ...); __Send _Send = (__Send) 0x0052ABE0; _Send(this->pCDB, format); }