L L4D2node

ServerClassInit<DT_TerrorPlayerResource::ignored>

0x009f3730 · 3284 bytes · __cdecl

_Z15ServerClassInitIN23DT_TerrorPlayerResource7ignoredEEiPT_

Decompiled

int (1 param)

/* int ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*) */

int ServerClassInit<DT_TerrorPlayerResource::ignored>(ignored *param_1)

{
  int iVar1;
  code *pcVar2;
  undefined4 uVar3;
  SendProp local_4f8 [84];
  SendProp local_4a4 [84];
  SendProp local_450 [84];
  SendProp local_3fc [84];
  SendProp local_3a8 [84];
  SendProp local_354 [84];
  SendProp local_300 [84];
  SendProp local_2ac [84];
  SendProp local_258 [84];
  SendProp local_204 [84];
  SendProp local_1b0 [84];
  SendProp local_15c [84];
  SendProp local_108 [84];
  SendProp local_b4 [84];
  SendProp local_60 [84];
  
  if (ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)::
      g_SendProps == '\0') {
    iVar1 = __cxa_guard_acquire(&ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                                 ::g_SendProps);
    if (iVar1 != 0) {
                    /* try { // try from 009f37c7 to 009f37cb has its CatchHandler @ 009f4408 */
      SendPropInt(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                  ::g_SendProps,0xbfae4c,0,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f37ff to 009f3803 has its CatchHandler @ 009f443d */
      SendPropDataTable(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                        ::g_SendProps + 0x54,0xc087aa,(SendTable *)0x0,
                        (_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
                         *)CPlayerResource::m_pClassSendTable,'P');
                    /* try { // try from 009f3848 to 009f384c has its CatchHandler @ 009f445e */
      SendPropInt((char *)local_4f8,0xd1b502,0x864,4,0x10,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f388b to 009f388f has its CatchHandler @ 009f4444 */
      SendPropArray3(0x1020b68,"m_maxHealth",0x864,4,0x21,local_4f8,SendProxy_DataTableToDataTable,
                     0x80);
      SendProp::~SendProp(local_4f8);
                    /* try { // try from 009f38dc to 009f38e0 has its CatchHandler @ 009f4457 */
      SendPropInt((char *)local_4a4,0xd1b50e,0x8e8,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f391f to 009f3923 has its CatchHandler @ 009f447a */
      SendPropArray3(0x1020bbc,"m_primaryWeapon",0x8e8,4,0x21,local_4a4,
                     SendProxy_DataTableToDataTable,0x80);
      SendProp::~SendProp(local_4a4);
                    /* try { // try from 009f3970 to 009f3974 has its CatchHandler @ 009f4488 */
      SendPropInt((char *)local_450,0xd1b51e,0x96c,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f39b3 to 009f39b7 has its CatchHandler @ 009f4492 */
      SendPropArray3(0x1020c10,"m_grenade",0x96c,4,0x21,local_450,SendProxy_DataTableToDataTable,
                     0x80);
      SendProp::~SendProp(local_450);
                    /* try { // try from 009f3a04 to 009f3a08 has its CatchHandler @ 009f44a0 */
      SendPropInt((char *)local_3fc,0xd1b528,0x9f0,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f3a47 to 009f3a4b has its CatchHandler @ 009f44aa */
      SendPropArray3(0x1020c64,"m_firstAidSlot",0x9f0,4,0x21,local_3fc,
                     SendProxy_DataTableToDataTable,0x80);
      SendProp::~SendProp(local_3fc);
                    /* try { // try from 009f3a98 to 009f3a9c has its CatchHandler @ 009f44b8 */
      SendPropInt((char *)local_3a8,0xd1b537,0xa74,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f3adb to 009f3adf has its CatchHandler @ 009f44c2 */
      SendPropArray3(0x1020cb8,"m_pillsSlot",0xa74,4,0x21,local_3a8,SendProxy_DataTableToDataTable,
                     0x80);
      SendProp::~SendProp(local_3a8);
                    /* try { // try from 009f3b2c to 009f3b30 has its CatchHandler @ 009f44d0 */
      SendPropInt((char *)local_354,0xd14548,0xaf8,1,1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f3b6f to 009f3b73 has its CatchHandler @ 009f44da */
      SendPropArray3(0x1020d0c,"m_isGhost",0xaf8,1,0x21,local_354,SendProxy_DataTableToDataTable,
                     0x80);
      SendProp::~SendProp(local_354);
                    /* try { // try from 009f3bc0 to 009f3bc4 has its CatchHandler @ 009f44e8 */
      SendPropInt((char *)local_300,0xc2ed93,0xb19,1,1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f3c03 to 009f3c07 has its CatchHandler @ 009f44f2 */
      SendPropArray3(0x1020d60,"m_isIncapacitated",0xb19,1,0x21,local_300,
                     SendProxy_DataTableToDataTable,0x80);
      SendProp::~SendProp(local_300);
                    /* try { // try from 009f3c54 to 009f3c58 has its CatchHandler @ 009f4500 */
      SendPropInt((char *)local_2ac,0xd1b543,0xb3a,1,1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f3c97 to 009f3c9b has its CatchHandler @ 009f450a */
      SendPropArray3(0x1020db4,"m_wantsToPlay",0xb3a,1,0x21,local_2ac,SendProxy_DataTableToDataTable
                     ,0x80);
      SendProp::~SendProp(local_2ac);
                    /* try { // try from 009f3ce8 to 009f3cec has its CatchHandler @ 009f4518 */
      SendPropInt((char *)local_258,0xc6cf6c,0xb5c,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f3d2b to 009f3d2f has its CatchHandler @ 009f4522 */
      SendPropArray3(0x1020e08,"m_zombieClass",0xb5c,4,0x21,local_258,SendProxy_DataTableToDataTable
                     ,0x80);
      SendProp::~SendProp(local_258);
                    /* try { // try from 009f3d7c to 009f3d80 has its CatchHandler @ 009f4530 */
      SendPropInt((char *)local_204,0xd1b551,0xbe0,4,0x10,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f3dbf to 009f3dc3 has its CatchHandler @ 009f453a */
      SendPropArray3(0x1020e5c,"m_tankTickets",0xbe0,4,0x21,local_204,SendProxy_DataTableToDataTable
                     ,0x80);
      SendProp::~SendProp(local_204);
                    /* try { // try from 009f3e10 to 009f3e14 has its CatchHandler @ 009f4548 */
      SendPropInt((char *)local_1b0,0xd1b55f,0xc64,1,1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f3e53 to 009f3e57 has its CatchHandler @ 009f4552 */
      SendPropArray3(0x1020eb0,"m_listenServerHost",0xc64,1,0x21,local_1b0,
                     SendProxy_DataTableToDataTable,0x80);
      SendProp::~SendProp(local_1b0);
                    /* try { // try from 009f3ea4 to 009f3ea8 has its CatchHandler @ 009f4560 */
      SendPropInt((char *)local_15c,0xd1b572,0xc88,4,2,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 009f3ee7 to 009f3eeb has its CatchHandler @ 009f456a */
      SendPropArray3(0x1020f04,"m_TeamSwitchRule",0xc88,4,0x21,local_15c,
                     SendProxy_DataTableToDataTable,0x80);
      SendProp::~SendProp(local_15c);
      uVar3 = 0x80;
      pcVar2 = SendProxy_FloatToFloat;
                    /* try { // try from 009f3f48 to 009f3f4c has its CatchHandler @ 009f4578 */
      SendPropFloat((char *)local_108,0xd1b583,0xd0c,4,0x20,5.60519e-45,0.0,
                    (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
                    0xa0);
                    /* try { // try from 009f3f8b to 009f3f8f has its CatchHandler @ 009f4582 */
      SendPropArray3(0x1020f58,"m_flSurvivalRecordTime",0xd0c,4,0x21,local_108,
                     SendProxy_DataTableToDataTable,0x80,pcVar2,uVar3);
      SendProp::~SendProp(local_108);
                    /* try { // try from 009f3fdc to 009f3fe0 has its CatchHandler @ 009f4590 */
      SendPropInt((char *)local_b4,0xd1b59a,0xd90,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f401f to 009f4023 has its CatchHandler @ 009f459a */
      SendPropArray3(0x1020fac,"m_nSurvivalTopMedal",0xd90,4,0x21,local_b4,
                     SendProxy_DataTableToDataTable,0x80);
      SendProp::~SendProp(local_b4);
                    /* try { // try from 009f404d to 009f4051 has its CatchHandler @ 009f45a8 */
      SendPropTime((char *)local_60,0xd1b5ae,0xe14);
                    /* try { // try from 009f4090 to 009f4094 has its CatchHandler @ 009f45b2 */
      SendPropArray3(0x1021000,"m_flBecomeGhostAt",0xe14,4,0x21,local_60,
                     SendProxy_DataTableToDataTable,0x80);
      SendProp::~SendProp(local_60);
                    /* try { // try from 009f40ef to 009f40f3 has its CatchHandler @ 009f45c0 */
      SendPropFloat(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                    ::g_SendProps + 0x594,0xd1b5c0,0xe98,4,0x20,0.0,0.0,
                    (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
                    0xa0);
                    /* try { // try from 009f4146 to 009f414a has its CatchHandler @ 009f45ca */
      SendPropFloat(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                    ::g_SendProps + 0x5e8,0xd1b5d8,0xe9c,4,0x20,0.0,0.0,
                    (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
                    0xa0);
                    /* try { // try from 009f418d to 009f4191 has its CatchHandler @ 009f45d4 */
      SendPropInt(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                  ::g_SendProps + 0x63c,0xd1b5f4,0xea0,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f41b4 to 009f41b8 has its CatchHandler @ 009f45de */
      SendPropBool(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                   ::g_SendProps + 0x690,0xd1b60d,0xea4);
                    /* try { // try from 009f41db to 009f41df has its CatchHandler @ 009f45e8 */
      SendPropBool(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                   ::g_SendProps + 0x6e4,0xd1b618,0xea5);
                    /* try { // try from 009f4222 to 009f4226 has its CatchHandler @ 009f45f2 */
      SendPropInt(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                  ::g_SendProps + 0x738,0xd1b632,0xea8,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f4269 to 009f426d has its CatchHandler @ 009f45fc */
      SendPropInt(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                  ::g_SendProps + 0x78c,0xd1b64a,0xeac,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f42b0 to 009f42b4 has its CatchHandler @ 009f4606 */
      SendPropInt(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                  ::g_SendProps + 0x7e0,0xd1b665,0xeb0,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f42d7 to 009f42db has its CatchHandler @ 009f4610 */
      SendPropBool(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                   ::g_SendProps + 0x834,0xd1b672,0xeb4);
                    /* try { // try from 009f42fe to 009f4302 has its CatchHandler @ 009f461a */
      SendPropBool(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                   ::g_SendProps + 0x888,0xd1b68f,0xeb5);
                    /* try { // try from 009f4345 to 009f4349 has its CatchHandler @ 009f4624 */
      SendPropInt(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                  ::g_SendProps + 0x8dc,0xd1b69e,0xeb8,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f438c to 009f4390 has its CatchHandler @ 009f462e */
      SendPropInt(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                  ::g_SendProps + 0x930,0xd1b6b0,0xebc,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 009f43d3 to 009f43d7 has its CatchHandler @ 009f4638 */
      SendPropInt(ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                  ::g_SendProps + 0x984,0xd1b6bf,0xec0,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
      __cxa_guard_release(&ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)
                           ::g_SendProps);
      __cxa_atexit(__tcf_0,0,&__dso_handle);
    }
  }
  SendTable::Construct
            ((SendTable *)DT_TerrorPlayerResource::g_SendTable,
             (SendProp *)
             (ServerClassInit<DT_TerrorPlayerResource::ignored>(DT_TerrorPlayerResource::ignored*)::
              g_SendProps + 0x54),0x1d,"DT_TerrorPlayerResource");
  return 1;
}

SourceMod gamedata

paste into addons/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.



        

        

          

Type inference is best-effort from the C signature - sanity-check the DHooks types before shipping.

Return-type handling cheatsheet (DHookReturn)