ServerClassInit<DT_BaseEntity::ignored>
0x00603a00 · 3002 bytes · __cdecl
_Z15ServerClassInitIN13DT_BaseEntity7ignoredEEiPT_
Decompiled
int (1 param)
/* int ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*) */
int ServerClassInit<DT_BaseEntity::ignored>(ignored *param_1)
{
int iVar1;
if (ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps == '\0') {
iVar1 = __cxa_guard_acquire(&ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::
g_SendProps);
if (iVar1 != 0) {
/* try { // try from 00603a8f to 00603a93 has its CatchHandler @ 006045bc */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps,
0xbfae4c,0,4,-1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
/* try { // try from 00603ac6 to 00603aca has its CatchHandler @ 006045eb */
SendPropDataTable(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::
g_SendProps + 0x54,0xc08854,(SendTable *)0x0,
(_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
*)DT_AnimTimeMustBeFirst::g_SendTable,'@');
/* try { // try from 00603b0d to 00603b11 has its CatchHandler @ 0060461c */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xa8,0xc5c0fc,0x94,4,8,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
((int)&__DT_REL[0x15c40].r_offset + 1),0xd0);
/* try { // try from 00603b64 to 00603b68 has its CatchHandler @ 0060460e */
SendPropFloat(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xfc,0xc5c10f,0x98,4,0x20,0.0,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 00603bab to 00603baf has its CatchHandler @ 00604615 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x150,0xc5c11e,0x38c,4,5,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00603bf2 to 00603bf6 has its CatchHandler @ 006045f2 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x1a4,0xc5c129,0x390,4,10,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00603c39 to 00603c3d has its CatchHandler @ 006045f9 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x1f8,0xc5c131,0x394,4,10,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00603c80 to 00603c84 has its CatchHandler @ 00604600 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x24c,0xc5c139,0x398,4,10,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00603cd7 to 00603cdb has its CatchHandler @ 00604607 */
SendPropVector(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x2a0,0xbfae62,0x39c,0xc,5,4.1326e-40,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
'@');
/* try { // try from 00603d1e to 00603d22 has its CatchHandler @ 0060463a */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x2f4,0xc0a9d0,0x122,2,0xc,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
/* try { // try from 00603d55 to 00603d59 has its CatchHandler @ 00604641 */
SendPropDataTable(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::
g_SendProps + 0x348,0xc5c141,(SendTable *)0x194,
(_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
*)DT_CollisionProperty::g_SendTable,'P');
/* try { // try from 00603d8c to 00603d90 has its CatchHandler @ 0060464b */
SendPropDataTable(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::
g_SendProps + 0x39c,0xc5c14d,(SendTable *)0x1f0,
(_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
*)DT_GlowProperty::g_SendTable,'P');
/* try { // try from 00603dd3 to 00603dd7 has its CatchHandler @ 00604655 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x3f0,0xc0b98c,0x120,1,8,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00603e1a to 00603e1e has its CatchHandler @ 0060465f */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x444,0xc0b998,0x121,1,8,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00603e61 to 00603e65 has its CatchHandler @ 00604669 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x498,0xc0aa08,0xd4,4,10,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00603ea8 to 00603eac has its CatchHandler @ 00604673 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x4ec,0xc0b9d0,0x124,4,0x20,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,0x80);
/* try { // try from 00603eef to 00603ef3 has its CatchHandler @ 0060467d */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x540,0xc5c154,0x24c,4,6,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
/* try { // try from 00603f36 to 00603f3a has its CatchHandler @ 00604687 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x594,0xc5c15f,0x234,4,5,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00603f8d to 00603f91 has its CatchHandler @ 00604691 */
SendPropFloat(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x5e8,0xc5c170,0x2c8,4,0,5.73972e-42,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 00603fe4 to 00603fe8 has its CatchHandler @ 0060469b */
SendPropFloat(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x63c,0xc5c17f,0x240,4,0xc,1.4013e-45,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 0060401b to 0060401f has its CatchHandler @ 006046a5 */
SendPropEHandle(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps
+ 0x690,0xc21570,0x220,4,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
&DAT_ffffffff);
/* try { // try from 00604052 to 00604056 has its CatchHandler @ 006046af */
SendPropEHandle(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps
+ 0x6e4,0xc5c196,0x224,4,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
&DAT_ffffffff);
/* try { // try from 00604089 to 0060408d has its CatchHandler @ 006046b9 */
SendPropEHandle(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps
+ 0x738,0xc0b9e8,0x188,4,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
&DAT_ffffffff);
/* try { // try from 006040d0 to 006040d4 has its CatchHandler @ 006046c3 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x78c,0xc5c1a6,0x185,1,6,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00604107 to 0060410b has its CatchHandler @ 006046cd */
SendPropEHandle(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps
+ 0x7e0,0xc5c1ba,0x118,4,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
&DAT_ffffffff);
/* try { // try from 0060414e to 00604152 has its CatchHandler @ 006046d7 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x834,0xc5c1cd,0x186,1,4,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00604195 to 00604199 has its CatchHandler @ 006046e1 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x888,0xc5c1d6,0x187,1,3,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 006041dc to 006041e0 has its CatchHandler @ 006046eb */
SendPropQAngles(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps
+ 0x8dc,0xc5c1e2,0x3a8,0xc,0xd,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
(__DT_REL + 0x5c40),0x80);
/* try { // try from 00604223 to 00604227 has its CatchHandler @ 006046f5 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x930,0xc5c1f0,0x2f8,1,8,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 0060426a to 0060426e has its CatchHandler @ 006046ff */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x984,0xc5c205,0x2f9,1,1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 006042b1 to 006042b5 has its CatchHandler @ 00604709 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0x9d8,0xc5c21b,0x2fa,1,1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 006042d8 to 006042dc has its CatchHandler @ 00604713 */
SendPropBool(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xa2c,0xc5c230,0x2fb);
/* try { // try from 0060431f to 00604323 has its CatchHandler @ 0060471d */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xa80,0xc5c244,0xc,4,-1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
/* try { // try from 00604366 to 0060436a has its CatchHandler @ 00604727 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xad4,0xc5c258,0xf4,4,-1,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
/* try { // try from 006043bd to 006043c1 has its CatchHandler @ 00604731 */
SendPropFloat(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xb28,0xc5c261,0x228,4,0,5.60519e-45,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 00604414 to 00604418 has its CatchHandler @ 0060473b */
SendPropFloat(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xb7c,0xc5c26f,0x22c,4,0,5.60519e-45,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 0060446b to 0060446f has its CatchHandler @ 00604745 */
SendPropFloat(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xbd0,0xc5c27d,0x230,4,0,5.60519e-45,0.0,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
0xa0);
/* try { // try from 006044b2 to 006044b6 has its CatchHandler @ 0060474f */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xc24,0xc5c28b,0x2fc,1,2,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 006044f9 to 006044fd has its CatchHandler @ 00604759 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xc78,0xc5c29a,0x2fd,1,2,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00604540 to 00604544 has its CatchHandler @ 00604763 */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xccc,0xc5c2a9,0x2fe,1,3,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
/* try { // try from 00604587 to 0060458b has its CatchHandler @ 0060476d */
SendPropInt(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps +
0xd20,0xc5c2b8,0x2ff,1,3,
(_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
__cxa_guard_release(&ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::
g_SendProps);
__cxa_atexit(__tcf_1,0,&__dso_handle);
}
}
SendTable::Construct
((SendTable *)DT_BaseEntity::g_SendTable,
(SendProp *)
(ServerClassInit<DT_BaseEntity::ignored>(DT_BaseEntity::ignored*)::g_SendProps + 0x54),
0x28,"DT_BaseEntity");
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.