Advertisement
Guest User

Untitled

a guest
Feb 12th, 2022
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.56 KB | None | 0 0
  1. char __userpurge sub_100032C7@<al>(
  2.         int a1,
  3.         int a2,
  4.         int a3,
  5.         int a4,
  6.         int a5,
  7.         int a6,
  8.         int a7,
  9.         int a8,
  10.         int a9,
  11.         int a10,
  12.         int a11,
  13.         int a12,
  14.         int a13,
  15.         int a14,
  16.         int a15,
  17.         int a16,
  18.         unsigned __int16 a17,
  19.         int a18,
  20.         int a19,
  21.         int a20)
  22. {
  23.   int v20; // ebx
  24.   const void *v21; // esi
  25.   char *v22; // ebx
  26.   const void *v23; // esi
  27.   char *v24; // esi
  28.   SFSAMP *SAMP; // eax
  29.   struct stSAMP *Info; // eax
  30.   int v28; // [esp-18h] [ebp-144h]
  31.   int v29; // [esp-14h] [ebp-140h]
  32.   int v30; // [esp-10h] [ebp-13Ch]
  33.   int v31; // [esp-Ch] [ebp-138h]
  34.   int v32; // [esp-Ch] [ebp-138h]
  35.   int v33; // [esp-8h] [ebp-134h]
  36.   int v34; // [esp-8h] [ebp-134h]
  37.   int v35; // [esp-4h] [ebp-130h]
  38.   int v36; // [esp-4h] [ebp-130h]
  39.   int v37; // [esp-4h] [ebp-130h]
  40.   char v38[276]; // [esp+Ch] [ebp-120h] BYREF
  41.   int v39; // [esp+128h] [ebp-4h]
  42.   char vars0; // [esp+12Ch] [ebp+0h] BYREF
  43.  
  44.   v20 = a20;
  45.   if ( *(_DWORD *)(a20 + 4) == 134 )
  46.   {
  47.     v21 = *(const void **)a20;
  48.     a16 = 0;
  49.     qmemcpy(v38, v21, sizeof(v38));
  50.     v39 = 0;
  51.     BitStream::ReadBits((BitStream *)v38, (unsigned __int8 *)&a17, 16, 1);
  52.     BitStream::Read((BitStream *)v38, &vars0, 63);
  53.     BitStream::ReadBits((BitStream *)v38, (unsigned __int8 *)&a16, 16, 1);
  54.     v22 = (char *)unknown_libname_2((unsigned __int16)a16);
  55.     BitStream::Read((BitStream *)v38, v22, (unsigned __int16)a16);
  56.     v22[(unsigned __int16)a16] = 0;
  57.     if ( byte_10020874 )
  58.       SAMPFUNCS::Log((SAMPFUNCS *)dword_10020880, "{FFFFFF}[{FF0000}ShowTextDraw{FFFFFF}] ID: %d, Text: %s", a17, v22);
  59.     if ( (unsigned __int8)sub_10002331(-1) )
  60.     {
  61.       if ( (unsigned __int8)sub_10002325(0)
  62.         || (sub_10001138(v22), (unsigned __int8)sub_10002A3B(&vars0, v28, v29, v30, v31, v33, v35)) )
  63.       {
  64.         if ( (unsigned __int8)sub_10002D31(a17) )
  65.         {
  66.           sub_10001138(v22);
  67.           sub_100031AB(a17, v28, v29, v30, v31, v33, v36);
  68.           j_j_j___free_base(v22);
  69. LABEL_18:
  70.           BitStream::~BitStream((BitStream *)v38);
  71.           return 0;
  72.         }
  73.         sub_10002474(a17, &vars0);
  74.         BitStream::ResetWritePointer((BitStream *)v38);
  75.         a15 = a17;
  76.         BitStream::WriteBits((BitStream *)v38, (const unsigned __int8 *)&a15, 16, 1);
  77.         BitStream::Write((BitStream *)v38, &vars0, 63);
  78.         a15 = (unsigned __int16)a16;
  79.         BitStream::WriteBits((BitStream *)v38, (const unsigned __int8 *)&a15, 16, 1);
  80.         BitStream::Write((BitStream *)v38, v22, (unsigned __int16)a16);
  81.       }
  82.     }
  83.     j_j_j___free_base(v22);
  84.     v39 = -1;
  85.     BitStream::~BitStream((BitStream *)v38);
  86.     v20 = a20;
  87.   }
  88.   if ( *(_DWORD *)(v20 + 4) == 105 )
  89.   {
  90.     v23 = *(const void **)v20;
  91.     a20 = 0;
  92.     qmemcpy(v38, v23, sizeof(v38));
  93.     v39 = 1;
  94.     BitStream::ReadBits((BitStream *)v38, (unsigned __int8 *)&a16, 16, 1);
  95.     BitStream::ReadBits((BitStream *)v38, (unsigned __int8 *)&a20, 16, 1);
  96.     v24 = (char *)unknown_libname_2((unsigned __int16)a20);
  97.     BitStream::Read((BitStream *)v38, v24, (unsigned __int16)a20);
  98.     v24[(unsigned __int16)a20] = 0;
  99.     if ( byte_10020874 )
  100.       SAMPFUNCS::Log(
  101.         (SAMPFUNCS *)dword_10020880,
  102.         "{FFFFFF}[{FF0000}TextDrawSetString{FFFFFF}] ID: %d, Text: %s",
  103.         (unsigned __int16)a16,
  104.         v24);
  105.     if ( (unsigned __int8)sub_10002331(-1) && (unsigned __int8)sub_10002D31((unsigned __int16)a16) )
  106.     {
  107.       sub_10001138(v24);
  108.       sub_100031AB((unsigned __int16)a16, v28, v29, v30, v32, v34, v37);
  109. LABEL_20:
  110.       j_j_j___free_base(v24);
  111.       goto LABEL_18;
  112.     }
  113.     SAMP = SAMPFUNCS::getSAMP((SAMPFUNCS *)dword_10020880);
  114.     Info = SFSAMP::getInfo(SAMP);
  115.     if ( !stTextdrawPool::IsExists(*(stTextdrawPool **)(*(_DWORD *)((char *)Info + 973) + 16)) )
  116.       goto LABEL_20;
  117.     j_j_j___free_base(v24);
  118.     v39 = -1;
  119.     BitStream::~BitStream((BitStream *)v38);
  120.   }
  121.   if ( *(_DWORD *)(v20 + 4) == 135 )
  122.   {
  123.     qmemcpy(v38, *(const void **)v20, sizeof(v38));
  124.     v39 = 2;
  125.     BitStream::ReadBits((BitStream *)v38, (unsigned __int8 *)&a20, 16, 1);
  126.     if ( byte_10020874 )
  127.       SAMPFUNCS::Log(
  128.         (SAMPFUNCS *)dword_10020880,
  129.         "{FFFFFF}[{FF0000}TextDrawHideForPlayer{FFFFFF}] ID: %d",
  130.         (unsigned __int16)a20);
  131.     if ( (unsigned __int8)sub_10002331(-1) )
  132.     {
  133.       if ( (unsigned __int8)sub_10002D31((unsigned __int16)a20) )
  134.         sub_100025A0((unsigned __int16)a20);
  135.     }
  136.     BitStream::~BitStream((BitStream *)v38);
  137.   }
  138.   return 1;
  139. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement