L L4D2node

ServerClassInit<DT_BasePlayer::ignored>

0x007b4130 · 2512 bytes · __cdecl

_Z15ServerClassInitIN13DT_BasePlayer7ignoredEEiPT_

Decompiled

int (1 param)

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

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

{
  int iVar1;
  undefined1 *puVar2;
  code *pcVar3;
  undefined4 uVar4;
  
  if (ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps == '\0') {
    iVar1 = __cxa_guard_acquire(&ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::
                                 g_SendProps);
    if (iVar1 != 0) {
                    /* try { // try from 007b41bf to 007b41c3 has its CatchHandler @ 007b4b02 */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps,
                  0xbfae4c,0,4,-1,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 007b41f7 to 007b41fb has its CatchHandler @ 007b4b31 */
      SendPropDataTable(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::
                        g_SendProps + 0x54,0xc087aa,(SendTable *)0x0,
                        (_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
                         *)CBaseCombatCharacter::m_pClassSendTable,'P');
                    /* try { // try from 007b422e to 007b4232 has its CatchHandler @ 007b4b4f */
      SendPropDataTable(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::
                        g_SendProps + 0xa8,0xcb8764,(SendTable *)0x1c7c,
                        (_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
                         *)DT_PlayerState::g_SendTable,'P');
                    /* try { // try from 007b4285 to 007b4289 has its CatchHandler @ 007b4b56 */
      SendPropFloat(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                    0xfc,0xc6d02b,-0x3b8,4,10,1.12104e-44,-64.0,
                    (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x42800000,
                    0xa0);
                    /* try { // try from 007b42dc to 007b42e0 has its CatchHandler @ 007b4b5d */
      SendPropFloat(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                    0x150,0xc6d03e,-0x3bc,4,10,1.12104e-44,-64.0,
                    (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x42800000,
                    0xa0);
                    /* try { // try from 007b4333 to 007b4337 has its CatchHandler @ 007b4b64 */
      SendPropFloat(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                    0x1a4,0xc6d051,-0x3c0,4,10,3.67342e-40,0.0,
                    (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x43000000,
                    0xa0);
                    /* try { // try from 007b436a to 007b436e has its CatchHandler @ 007b4b6b */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0x1f8,0xcb8767,0x1d24,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b43a1 to 007b43a5 has its CatchHandler @ 007b4b72 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0x24c,0xcb8772,0x1d14,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b43d8 to 007b43dc has its CatchHandler @ 007b4b79 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0x2a0,0xc5d13b,600,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      (__DT_REL + 0x5c40));
                    /* try { // try from 007b440f to 007b4413 has its CatchHandler @ 007b4b80 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0x2f4,0xcb877f,0x2064,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b4446 to 007b444a has its CatchHandler @ 007b4b87 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0x348,0xcb878d,0x200c,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b448d to 007b4491 has its CatchHandler @ 007b4b91 */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x39c,0xc2ed66,0x100,4,0x10,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b44d4 to 007b44d8 has its CatchHandler @ 007b4b9b */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x3f0,0xc5cfef,0x104,1,3,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b451b to 007b451f has its CatchHandler @ 007b4ba5 */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x444,0xcb8799,0x1d30,4,0xf,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 007b4562 to 007b4566 has its CatchHandler @ 007b4baf */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x498,0xcb87aa,0x1d34,4,4,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,'\0');
                    /* try { // try from 007b45b9 to 007b45bd has its CatchHandler @ 007b4bb9 */
      SendPropFloat(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                    0x4ec,0xcb87bc,0x1ff8,4,0xc,1.12104e-44,0.0,
                    (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x45000000,
                    0xa0);
                    /* try { // try from 007b4600 to 007b4604 has its CatchHandler @ 007b4bc3 */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x540,0xc09a70,0x150,4,10,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                  ((int)&__DT_REL[0x5c40].r_offset + 1),0xb0);
                    /* try { // try from 007b4647 to 007b464b has its CatchHandler @ 007b4bcd */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x594,0xcb87c9,0x1d64,4,3,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b467e to 007b4682 has its CatchHandler @ 007b4bd7 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0x5e8,0xcb87d9,0x1d7c,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b46c5 to 007b46c9 has its CatchHandler @ 007b4be1 */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x63c,0xcb87eb,0x1d68,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b470c to 007b4710 has its CatchHandler @ 007b4beb */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x690,0xcb87f2,0x1d70,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b4763 to 007b4767 has its CatchHandler @ 007b4bf5 */
      SendPropFloat(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                    0x6e4,0xcb87fe,0x1d74,4,0x20,0.0,0.0,
                    (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
                    0xa0);
                    /* try { // try from 007b47aa to 007b47ae has its CatchHandler @ 007b4bff */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x738,0xcb880a,0x1d6c,4,8,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b47e1 to 007b47e5 has its CatchHandler @ 007b4c09 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0x78c,0xcb8818,0x1d84,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b4818 to 007b481c has its CatchHandler @ 007b4c13 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0x7e0,0xcb8825,0x1f84,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b484f to 007b4853 has its CatchHandler @ 007b4c1d */
      InternalSendPropArray(0xfeee34,2,(char *)0x4,(_func_int_void_ptr_int *)"m_hViewModel",'\0');
                    /* try { // try from 007b488e to 007b4892 has its CatchHandler @ 007b4c27 */
      SendPropString(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                     0x888,0xcb8832,0x2118,0x12,
                     (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x0,0x90);
                    /* try { // try from 007b48e5 to 007b48e9 has its CatchHandler @ 007b4c31 */
      SendPropVector(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                     0x8dc,0xcb8844,0x2000,0xc,0,4.48416e-44,0.0,
                     (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0xc7ec9090,
                     0xc0);
                    /* try { // try from 007b492c to 007b4930 has its CatchHandler @ 007b4c3b */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x930,0xcb8856,0x1ffc,4,0,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b4973 to 007b4977 has its CatchHandler @ 007b4c45 */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x984,0xcb886b,0x2188,4,2,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b49ba to 007b49be has its CatchHandler @ 007b4c4f */
      SendPropInt(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps +
                  0x9d8,0xc5d1d7,0x253,1,2,
                  (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)0x1,'\0');
                    /* try { // try from 007b49f1 to 007b49f5 has its CatchHandler @ 007b4c59 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0xa2c,0xcb8880,0x1c60,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b4a28 to 007b4a2c has its CatchHandler @ 007b4c63 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0xa80,0xcb8893,0x1c64,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b4a5f to 007b4a63 has its CatchHandler @ 007b4c6d */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0xad4,0xcb88aa,0x1c14,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
                    /* try { // try from 007b4a96 to 007b4a9a has its CatchHandler @ 007b4c77 */
      SendPropEHandle(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps
                      + 0xb28,0xcb88be,0x2088,4,
                      (_func_void_SendProp_ptr_void_ptr_void_ptr_DVariant_ptr_int_int *)
                      &DAT_ffffffff);
      uVar4 = 0x80;
      pcVar3 = SendProxy_SendLocalDataTable;
      puVar2 = DT_LocalPlayerExclusive::g_SendTable;
                    /* try { // try from 007b4acd to 007b4ad1 has its CatchHandler @ 007b4c81 */
      SendPropDataTable(ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::
                        g_SendProps + 0xb7c,0xc5b0c3,(SendTable *)0x0,
                        (_func_void_ptr_SendProp_ptr_void_ptr_void_ptr_CSendProxyRecipients_ptr_int
                         *)DT_LocalPlayerExclusive::g_SendTable,0xb0);
      __cxa_guard_release(&ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::
                           g_SendProps);
      __cxa_atexit(__tcf_2,0,&__dso_handle,puVar2,pcVar3,uVar4);
    }
  }
  SendTable::Construct
            ((SendTable *)DT_BasePlayer::g_SendTable,
             (SendProp *)
             (ServerClassInit<DT_BasePlayer::ignored>(DT_BasePlayer::ignored*)::g_SendProps + 0x54),
             0x23,"DT_BasePlayer");
  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)