ServerClassInit<DT_CSPlayer::ignored>
0x0065ce40 · 2760 bytes · __cdecl
_Z15ServerClassInitIN11DT_CSPlayer7ignoredEEiPT_
Decompiled
int (1 param)
/* int ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*) */
int ServerClassInit<DT_CSPlayer::ignored>(ignored *param_1)
{
int iVar1;
SendProp local_60 [84];
if (ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps == '\0') {
iVar1 = __cxa_guard_acquire(&ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::
g_SendProps);
if (iVar1 != 0) {
/* try { // try from 0065ced7 to 0065cedb has its CatchHandler @ 0065d90c */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps,0xbfae4c
,0,4,-1,(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0'
);
/* try { // try from 0065cf0f to 0065cf13 has its CatchHandler @ 0065d93b */
SendPropDataTable(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x54,0xc087aa,(SendTable *)0x0,
(_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
*)CBasePlayer::m_pClassSendTable,'P');
/* try { // try from 0065cf2e to 0065cf32 has its CatchHandler @ 0065d950 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xa8,"DT_BaseAnimating");
/* try { // try from 0065cf4d to 0065cf51 has its CatchHandler @ 0065d942 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xfc,"DT_BaseAnimating");
/* try { // try from 0065cf6c to 0065cf70 has its CatchHandler @ 0065d949 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x150,"DT_BaseAnimating");
/* try { // try from 0065cf8b to 0065cf8f has its CatchHandler @ 0065d96e */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x1a4,"DT_BaseAnimating");
/* try { // try from 0065cfaa to 0065cfae has its CatchHandler @ 0065d975 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x1f8,"DT_BaseAnimating");
/* try { // try from 0065cfc9 to 0065cfcd has its CatchHandler @ 0065d97c */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x24c,"DT_BaseAnimating");
/* try { // try from 0065cfe8 to 0065cfec has its CatchHandler @ 0065d983 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x2a0,"DT_BaseEntity");
/* try { // try from 0065d007 to 0065d00b has its CatchHandler @ 0065d98a */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x2f4,"DT_BaseAnimatingOverlay");
/* try { // try from 0065d026 to 0065d02a has its CatchHandler @ 0065d991 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x348,"DT_BaseFlex");
/* try { // try from 0065d045 to 0065d049 has its CatchHandler @ 0065d99b */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x39c,"DT_BaseFlex");
/* try { // try from 0065d064 to 0065d068 has its CatchHandler @ 0065d9a5 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x3f0,"DT_CollisionProperty");
/* try { // try from 0065d083 to 0065d087 has its CatchHandler @ 0065d9af */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x444,"DT_CollisionProperty");
/* try { // try from 0065d0a2 to 0065d0a6 has its CatchHandler @ 0065d9b9 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x498,"DT_ServerAnimationData");
/* try { // try from 0065d0c1 to 0065d0c5 has its CatchHandler @ 0065d9c3 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x4ec,"DT_AnimTimeMustBeFirst");
/* try { // try from 0065d0e0 to 0065d0e4 has its CatchHandler @ 0065d9cd */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x540,"DT_BaseEntity");
/* try { // try from 0065d0ff to 0065d103 has its CatchHandler @ 0065d9d7 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x594,"DT_BasePlayer");
/* try { // try from 0065d11e to 0065d122 has its CatchHandler @ 0065d9e1 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x5e8,"DT_BasePlayer");
/* try { // try from 0065d13d to 0065d141 has its CatchHandler @ 0065d9eb */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x63c,"DT_BasePlayer");
/* try { // try from 0065d15c to 0065d160 has its CatchHandler @ 0065d9f5 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x690,"DT_BaseFlex");
/* try { // try from 0065d17b to 0065d17f has its CatchHandler @ 0065d9ff */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x6e4,"DT_BaseFlex");
/* try { // try from 0065d19a to 0065d19e has its CatchHandler @ 0065da09 */
SendPropExclude(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x738,"DT_BaseFlex");
/* try { // try from 0065d1d1 to 0065d1d5 has its CatchHandler @ 0065da13 */
SendPropDataTable(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x78c,0xc6d33e,(SendTable *)0x0,
(_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
*)DT_CSLocalPlayerExclusive::g_SendTable,0xb0);
/* try { // try from 0065d208 to 0065d20c has its CatchHandler @ 0065da1d */
SendPropDataTable(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x7e0,0xc6d34a,(SendTable *)0x0,
(_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
*)DT_CSNonLocalPlayerExclusive::g_SendTable,0xd0);
/* try { // try from 0065d24f to 0065d253 has its CatchHandler @ 0065da27 */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0x834,
0xc6d359,0x2890,4,3,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d296 to 0065d29a has its CatchHandler @ 0065da31 */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0x888,
0xc6d370,0x29a0,4,8,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d2dc to 0065d2e0 has its CatchHandler @ 0065da3b */
SendPropInt((char *)local_60,0xc6d37d,0x29a4,4,8,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d31f to 0065d323 has its CatchHandler @ 0065da45 */
SendPropArray3(0xfc55dc,"m_AddonModelWeaponIDs",0x29a4,4,5,local_60,
SendProxy_DataTableToDataTable,0x80);
SendProp::~SendProp(local_60);
/* try { // try from 0065d336 to 0065d33a has its CatchHandler @ 0065da53 */
iVar1 = Q_log2(10);
/* try { // try from 0065d379 to 0065d37d has its CatchHandler @ 0065da5d */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0x930,
0xc6d393,0x23bc,4,iVar1 + 1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d3c0 to 0065d3c4 has its CatchHandler @ 0065da62 */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0x984,
0xc6d3a2,0x23f0,4,0x10,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d407 to 0065d40b has its CatchHandler @ 0065da6c */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0x9d8,
0xc6d3ad,0x283c,1,1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d44e to 0065d452 has its CatchHandler @ 0065da76 */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xa2c,
0xc6d3bb,0x283d,1,1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d45d to 0065d461 has its CatchHandler @ 0065da80 */
iVar1 = Q_log2(9);
/* try { // try from 0065d4a0 to 0065d4a4 has its CatchHandler @ 0065da8a */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xa80,
0xc6d3c8,0x290c,4,iVar1 + 1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d4e7 to 0065d4eb has its CatchHandler @ 0065da8c */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xad4,
0xc6d3d1,0x1f70,4,8,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
/* try { // try from 0065d52e to 0065d532 has its CatchHandler @ 0065da96 */
SendPropAngle(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xb28,0xc6d3de,-0x2990,4,0xb,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
(__DT_REL + 0x5c40),0xc0);
/* try { // try from 0065d575 to 0065d579 has its CatchHandler @ 0065daa0 */
SendPropAngle(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xb7c,0xc6d3f0,-0x2994,4,0xb,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
(__DT_REL + 0x5c40),0xc0);
/* try { // try from 0065d59c to 0065d5a0 has its CatchHandler @ 0065daaa */
SendPropBool(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xbd0
,0xc6d402,0x2428);
/* try { // try from 0065d5c3 to 0065d5c7 has its CatchHandler @ 0065dab4 */
SendPropBool(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xc24
,0xc6d410,0x242a);
/* try { // try from 0065d5ea to 0065d5ee has its CatchHandler @ 0065dabe */
SendPropBool(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xc78
,0xc6d421,0x2429);
/* try { // try from 0065d631 to 0065d635 has its CatchHandler @ 0065dac8 */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xccc,
0xc6d433,0x242c,4,8,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d658 to 0065d65c has its CatchHandler @ 0065dad2 */
SendPropBool(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xd20
,0xc6d447,0x2844);
/* try { // try from 0065d67f to 0065d683 has its CatchHandler @ 0065dadc */
SendPropBool(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xd74
,0xc6d45e,0x23e0);
/* try { // try from 0065d6a6 to 0065d6aa has its CatchHandler @ 0065dae6 */
SendPropBool(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xdc8
,0xc6d46c,0x23e1);
/* try { // try from 0065d6fd to 0065d701 has its CatchHandler @ 0065daf0 */
SendPropFloat(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xe1c,0xc6d479,0x2888,4,0,5.60519e-45,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 0065d754 to 0065d758 has its CatchHandler @ 0065dafa */
SendPropFloat(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xe70,0xc6d48b,0x288c,4,0,5.60519e-45,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 0065d7ab to 0065d7af has its CatchHandler @ 0065db04 */
SendPropFloat(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xec4,0xc6d49d,0x2908,4,0,5.60519e-45,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 0065d802 to 0065d806 has its CatchHandler @ 0065db0e */
SendPropFloat(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xf18,0xc6d4b5,0x2904,4,0,5.60519e-45,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 0065d839 to 0065d83d has its CatchHandler @ 0065db18 */
SendPropEHandle(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0xf6c,0xc6d4ce,0x2894,4,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
&DAT_ffffffff);
/* try { // try from 0065d880 to 0065d884 has its CatchHandler @ 0065db22 */
SendPropInt(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0xfc0,
0xc6d4d9,0x2a38,4,4,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0065d8d7 to 0065d8db has its CatchHandler @ 0065db2c */
SendPropVector(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps +
0x1014,0xc6d4e6,0x28d4,0xc,-1,5.73972e-42,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xc0);
__cxa_guard_release(&ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps
);
__cxa_atexit(__tcf_4,0,&__dso_handle);
}
}
SendTable::Construct
((SendTable *)DT_CSPlayer::g_SendTable,
(SendProp *)
(ServerClassInit<DT_CSPlayer::ignored>(DT_CSPlayer::ignored*)::g_SendProps + 0x54),0x31
,"DT_CSPlayer");
return 1;
}
SourceMod gamedata
paste intoaddons/sourcemod/gamedata/<your_plugin>.txt
used as the SourceMod key — change to fit your plugin's convention
SourceMod library name (server / engine / matchmaking)
Just a Signatures{} block, ready to drop into a gamedata
file. Wire it up in your plugin however you like - SDKCall, DHooks,
raw memory ops, or anything else.
Signatures + Functions block. The plugin uses
DHookCreateFromConf - DHooks reads return type, this-type,
calling convention, and argument types straight from the gamedata. Less
boilerplate in the plugin, types travel with the gamedata.
Gamedata KeyValues
DHooks plugin example
Type inference is best-effort from the C signature - sanity-check the DHooks types before shipping.