Заменяете старый GetCSWpnData c паттерном на этот
WeaponInfo_t* GetCSWpnData()
{
return Utils::CallVTable< WeaponInfo_t * (__thiscall*)(void*) >(this, 457)(this);
}
В utils.h добавляете следующий код
template <typename T>
static T CallVTable(void* pAddr, int iIndex)...