Исходник Псевдо-код что то похожего на ресольвер (Blaze-Hack)

main public enemy
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции[?]
647
Поинты[?]
0
Сделал этот псевдо за минуту + пару хуйни все таки отреверсил (много так то )
много приколов нашел ( по типу двух явмодиферов кек )
Сомнительно что ето вообще ресольвера..
ну вроде похоже xD 0x000cb мне чуть помог не более p.s я ебал эти загадки иды

C++:
int __thiscall (float *this, int a2, int a3)
{
  char *v3; // esi
  int result; // eax
  int v5; // esi
  int v6; // eax
  __int64 v7; // xmm0_8
  float v8; // eax
  int v9; // ecx
  double v10; // st7
  float v11; // xmm1_4
  float *v12; // eax
  float v13; // xmm6_4
  float v14; // xmm3_4
  float *v15; // eax
  char *v16; // eax
  int v17; // esi
  int (__stdcall *v18)(int); // edx
  signed __int16 *v19; // eax
  int v20; // edx
  float speed; // xmm2_4
  float v22; // xmm0_4
  float v23; // xmm1_4
  float v24; // xmm4_4
  float v25; // xmm2_4
  bool v26; // cf
  bool v27; // zf
  float v28; // xmm1_4
  float *v29; // eax
  int v30; // ecx
  float yawmodifer; // xmm3_4
  float *v32; // eax
  float *v33; // esi
  float *v34; // eax
  float v35; // xmm0_4
  char *v36; // esi
  char *v37; // ecx
  float *v38; // edi
  float *v39; // eax
  float v40; // xmm0_4
  float v41; // xmm0_4
  float v42; // xmm3_4
  float v43; // xmm2_4
  float v44; // xmm0_4
  double v45; // st7
  float v46; // xmm2_4
  float v47; // xmm0_4
  float v48; // xmm1_4
  int v49; // edi
  int (__thiscall *v50)(int); // eax
  signed int v51; // edx
  int v52; // eax
  int v53; // esi
  int v54; // eax
  int v55; // eax
  int v56; // esi
  int v57; // eax
  float v58; // xmm0_4
  char v59; // al
  float v60; // xmm0_4
  float v61; // xmm1_4
  float v62; // xmm2_4
  float v63; // xmm0_4
  bool v64; // cl
  __int64 v65; // rax
  int v66; // edx
  signed __int64 v67; // rt2
  int v68; // edx
  int v69; // [esp+10h] [ebp-74h]
  int v70; // [esp+20h] [ebp-64h]
  float v71; // [esp+24h] [ebp-60h]
  float v72; // [esp+28h] [ebp-5Ch]
  float *v73; // [esp+2Ch] [ebp-58h]
  float yawmodiferV2; // [esp+30h] [ebp-54h]
  float v75; // [esp+34h] [ebp-50h]
  int v76; // [esp+38h] [ebp-4Ch]
  float v77; // [esp+3Ch] [ebp-48h]
  float v78; // [esp+40h] [ebp-44h]
  double v79; // [esp+44h] [ebp-40h]
  float v80; // [esp+4Ch] [ebp-38h]
  int v81; // [esp+58h] [ebp-2Ch]
  float v82; // [esp+5Ch] [ebp-28h]
  __int64 v83; // [esp+60h] [ebp-24h]
  float v84; // [esp+68h] [ebp-1Ch]
  float v85; // [esp+6Ch] [ebp-18h]
  float v86; // [esp+70h] [ebp-14h]
  float v87; // [esp+74h] [ebp-10h]
  char v88; // [esp+78h] [ebp-Ch]

  v73 = this;
  *(_BYTE *)(a3 + 6404) = 0;
  v3 = (char *)sub_2C57EA60();
  result = (int)&v3[76 * (*(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 40))(a2 + 8)];
  v76 = result;
  *(_BYTE *)(result + 52) = 0;
  if ( byte_2C71A7CE )
  {
    if ( *(_DWORD *)(result + 72) )
    {
      result = (*(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 36))(a2 + 8);
      if ( !(_BYTE)result )
      {
        v5 = *(_DWORD *)(a2 + 14592);
        v81 = v5;
        if ( v5 )
        {
          result = *(_DWORD *)(a3 + 6380) - 1;
          LODWORD(v79) = result;
          if ( result >= 0 )
          {
            if ( *(float *)(v76 + 36) != *(float *)(a3 + 6332) || SLODWORD(v79) >= 2 )
            {
              v6 = m_vecVelocity((char *)a2);
              v7 = *(_QWORD *)v6;
              v8 = *(float *)(v6 + 8);
              v83 = v7;
              v75 = *(float *)&v7;
              v84 = v8;
              yawmodiferV2 = *((float *)&v7 + 1);
              v72 = v8;
              *(float *)&v79 = (float)((float)(v75 * v75) + (float)(yawmodiferV2 * yawmodiferV2)) + (float)(v8 * v8);
              libm_sse2_pow_precise(v9);
              if ( *(float *)&v79 > (float)312.0 )
              {
                sub_2C57C600(&v79);
                v75 = *(float *)&v79 * 312.0;
                yawmodiferV2 = *((float *)&v79 + 1) * 312.0;
                v72 = v80 * 312.0;
              }
              v82 = *(float *)(v5 + 128);
              v10 = fmaxf(*(float *)(dword_2C71AD10 + 16) - *(float *)(v5 + 108), 0);
              v79 = v10;
              v71 = 1.0;
              LODWORD(v79) = 0;
              v77 = COERCE_DOUBLE(*(_QWORD *)&v10 & xmmword_2C6E76B0);
              v78 = *(float *)(v5 + 168) + *(float *)m_flDuckAmount((char *)a2);
              if ( v78 <= 1.0 )
              {
                v12 = (float *)&v79;
                if ( v78 >= 0.0 )
                  v12 = &v78;
                v11 = *v12;
              }
              else
              {
                v11 = 1.0;
              }
              v13 = *(float *)(v5 + 164);
              v14 = v77 * 6.0;
              if ( (float)(v77 * 6.0) < (float)(v11 - v13) )
              {
                v11 = v14 + v13;
              }
              else if ( (float)(v11 - v13) < COERCE_FLOAT(LODWORD(v14) ^ xmmword_2C6E76D0) )
              {
                v11 = v13 - v14;
              }
              v77 = 1.0;
              LODWORD(v79) = 0;
              v78 = v11;
              if ( v11 <= 1.0 )
              {
                v15 = (float *)&v79;
                if ( v11 >= 0.0 )
                  v15 = &v78;
                v71 = *v15;
              }
              else
              {
                v71 = 1.0;
              }
              v69 = 1132593152;
              sub_2C57C5C0();
              v78 = fminf((float)((float)(v75 * v75) + (float)(yawmodiferV2 * yawmodiferV2)) + (float)(v72 * v72));
              v16 = ActiveWeapon(*(char **)dword_2C721A04);
              v69 = dword_2C71AD34;
              v17 = *(_DWORD *)v16;
              v18 = *(int (__stdcall **)(int))(*(_DWORD *)dword_2C71AD34 + 16);
              v69 = *(_DWORD *)v16;
              result = v18(v69);
              if ( result )
              {
                v69 = dword_2C71AD34;
                v19 = (signed __int16 *)(*(int (__stdcall **)(int))(*(_DWORD *)dword_2C71AD34 + 16))(v17);
                result = sub_2C623F40(v19);
                LODWORD(v79) = result;
                if ( result )
                {
                  v69 = dword_2C71AD34;
                  v20 = *(_DWORD *)dword_2C71AD34;
                  v69 = v17;
                  if ( (*(int (__stdcall **)(int))(v20 + 16))(v17) )
                  {
                    *(float *)&v79 = fmaxf(*(_DWORD *)(LODWORD(v79) + 304), 981668463);
                    speed = *(float *)&v79;
                  }
                  else
                  {
                    speed = 260.0;
                  }
                  v22 = speed * 0.51999998;
                  v75 = 1.0;
                  LODWORD(v79) = 0;
                  v23 = v78 / v22;
                  v24 = v78 / (float)(speed * 0.34);
                  v25 = 1.0;
                  v26 = (float)(v78 / v22) < 1.0;
                  v27 = (float)(v78 / v22) == 1.0;
                  v78 = v78 / v22;
                  v77 = v24;
                  if ( v26 || v27 )
                  {
                    v29 = (float *)&v79;
                    if ( v23 >= 0.0 )
                      v29 = &v78;
                    v28 = *v29;
                  }
                  else
                  {
                    v28 = 1.0;
                  }
                  v30 = v81;
                  yawmodifer = 1.0 - (float)((float)((float)(*(float *)(v81 + 284) * 0.30000001) + 0.2) * v28);
                  yawmodiferV2 = 1.0 - (float)((float)((float)(*(float *)(v81 + 284) * 0.30000001) + 0.2) * v28);
                  if ( v71 > 0.0 )
                  {
                    LODWORD(v79) = 1065353216;
                    v81 = 0;
                    if ( v24 <= 1.0 )
                    {
                      v32 = (float *)&v81;
                      if ( v24 >= 0.0 )
                        v32 = &v77;
                      v25 = *v32;
                    }
                    yawmodifer = yawmodifer + (float)((float)(v71 * v25) * (float)(0.5 - yawmodifer));
                    yawmodiferV2 = yawmodifer;
                  }
                  v71 = *(float *)(v30 + 816);
                  *(float *)&v79 = v71 * yawmodifer;
                  v78 = *(float *)(v30 + 820);
                  v75 = *(float *)(m_angEyeAngles((char *)a2) + 4);
                  remainderf(v75 - v82, 1135869952);
                  if ( *(float *)(*(_DWORD *)(a3 + 6228) + 432) <= 0.0 )
                    sub_2C57F0C0((char *)a2);
                  v33 = (float *)m_vecOrigin((char *)a2);
                  v34 = (float *)m_vecViewOffset((char *)a2);
                  *(float *)&v83 = *v33 + *v34;
                  *((float *)&v83 + 1) = v33[1] + v34[1];
                  v35 = v33[2] + v34[2];
                  v36 = *(char **)dword_2C721A04;
                  v37 = *(char **)dword_2C721A04;
                  v84 = v35;
                  v38 = (float *)m_vecOrigin(v37);
                  v39 = (float *)m_vecViewOffset(v36);
                  v85 = *v38 + *v39;
                  v86 = v38[1] + v39[1];
                  v87 = v38[2] + v39[2];
                  v72 = angles_clamp(&v85, (float *)&v88, (float *)&v83)[1];
                  if ( v72 > 180.0 || v72 < -180.0 )
                  {
                    v40 = sub_2C57C580(v72 / 360.0);
                    v77 = roundf(LODWORD(v40)) * 360.0;
                    if ( v72 >= 0.0 )
                      v41 = v72 - v77;
                    else
                      v41 = v72 + v77;
                    v72 = v41;
                  }
                  v42 = v75;
                  v43 = v75;
                  if ( v75 > 180.0 || v75 < -180.0 )// clamp / normalize
                                                //
                  {
                    v44 = sub_2C57C580(v75 / 360.0);
                    v45 = roundf(LODWORD(v44));
                    v42 = v75;
                    v77 = v45 * 360.0;
                    if ( v75 >= 0.0 )
                      v43 = v75 - v77;
                    else
                      v43 = v77 + v75;
                  }
                  if ( (float)(v43 + 60.0) <= v72 || v72 <= (float)(v43 - 60.0) )// -60 60 shit delta
                                                //
                  {
                    v48 = *(float *)&v79;
                    v47 = v78;
                    v46 = yawmodiferV2;
                    HIBYTE(v70) = 0;
                  }
                  else
                  {
                    v46 = yawmodiferV2;
                    v47 = v71;
                    HIBYTE(v70) = 1;
                    v48 = v78 * yawmodiferV2;
                  }
                  v49 = a2 + 8;
                  v50 = *(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 40);
                  yawmodiferV2 = v48 + v42;
                  v71 = (float)(v47 * v46) + v42;
                  v27 = *((_BYTE *)&xmmword_2C713418 + v50(a2 + 8)) == 0;
                  result = v76;
                  if ( v27 )
                  {
                    v51 = *(_DWORD *)(v76 + 48);
                    if ( v51 >= 1 )
                    {
                      if ( (_BYTE)word_2C71A78C )
                      {
                        v61 = *(float *)(v76 + 44);
                        v62 = *(float *)&v79;
                        v63 = *(float *)(v76 + 44) + 36.0;
                        *(_DWORD *)(v76 + 8) = 1;
                        v64 = v63 > v62 && v62 > (float)(v61 - 36.0);
                        v65 = v51;
                        v67 = v65 % 3;
                        result = v65 / 3;
                        v66 = v67;
                        if ( (_DWORD)v67 )
                        {
                          v68 = v66 - 1;
                          if ( v68 )
                          {
                            if ( v68 == 1 )
                            {
                              if ( v64 && HIBYTE(v70) )
                              {
                                result = *(_DWORD *)(a2 + 14592);
                                *(float *)(result + 128) = v71;
                              }
                              else
                              {
                                result = *(_DWORD *)(a2 + 14592);
                                *(float *)(result + 128) = yawmodiferV2;
                              }
                            }
                          }
                          else if ( v64 && HIBYTE(v70) )
                          {
                            result = *(_DWORD *)(a2 + 14592);
                            *(float *)(result + 128) = yawmodiferV2;
                          }
                          else
                          {
                            result = *(_DWORD *)(a2 + 14592);
                            *(float *)(result + 128) = v71;
                          }
                        }
                        else
                        {
                          result = *(_DWORD *)(a2 + 14592);
                          *(float *)(result + 128) = v75;
                        }
                      }
                    }
                    else
                    {
                      *(_DWORD *)(v76 + 8) = 3;
                      v52 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                      v53 = (int)&v73[v52];
                      v54 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                      if ( sub_2C57C580(*(float *)(v53 + 72) - v73[v54 + 82]) <= 25.0 )
                      {
                        v59 = byte_2C71C518;
                      }
                      else
                      {
                        v55 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                        v56 = (int)&v73[v55];
                        v57 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                        v58 = v73[v57 + 82];
                        v59 = v58 > *(float *)(v56 + 72);
                        byte_2C71C518 = v58 > *(float *)(v56 + 72);
                      }
                      if ( v59 )
                        v60 = v71;
                      else
                        v60 = yawmodiferV2;
                      result = *(_DWORD *)(a2 + 14592);
                      *(float *)(result + 128) = v60;
                    }
                  }
                  else
                  {
                    *(_DWORD *)(v76 + 8) = 0;
                  }
                }
              }
            }
            else
            {
              result = *(_DWORD *)(v76 + 28);
              *(_DWORD *)(a3 + 6356) = result;
              *(_BYTE *)(a3 + 6404) = 1;
            }
          }
        }
      }
    }
  }
  return result;
}
 
Участник
Статус
Оффлайн
Регистрация
27 Дек 2018
Сообщения
1,428
Реакции[?]
376
Поинты[?]
0
Эт не ресик、как обладатель сурсов это тебе говорю
 
ЮГЕЙМ КОНТОРА ПИДОРАСОВ
Забаненный
Статус
Оффлайн
Регистрация
8 Янв 2020
Сообщения
298
Реакции[?]
143
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
main public enemy
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции[?]
647
Поинты[?]
0

Вложения

фбр, здесь мемов нет - снимай штаны
Забаненный
Статус
Оффлайн
Регистрация
10 Фев 2020
Сообщения
164
Реакции[?]
59
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
я чуть инсульт не получил
сэр я могу тоже сделать с фаталити и сказать на вам нахуй сурс фаталити:
C++:
void fun_3f288d0(int32_t ecx) {
    int32_t v2;
    void* esp3;
    void* ecx4;
    int32_t* ecx5;
    int32_t eax6;
    int32_t eax7;
    int32_t eax8;
    uint32_t eax9;
    int32_t eax10;
    void* eax11;
    int32_t* eax12;

    v2 = reinterpret_cast<int32_t>(__return_address());
    esp3 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4);
    ecx4 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(esp3) + 4);
    ecx5 = reinterpret_cast<int32_t*>(reinterpret_cast<uint32_t>(ecx4) - eax6 & ~(eax7 - (eax8 + reinterpret_cast<uint1_t>(eax9 < eax10 + reinterpret_cast<uint1_t>(reinterpret_cast<uint32_t>(ecx4) < reinterpret_cast<uint32_t>(eax11))))));
    eax12 = reinterpret_cast<int32_t*>(reinterpret_cast<uint32_t>(esp3) & 0xfffff000);
    while (reinterpret_cast<uint32_t>(ecx5) < reinterpret_cast<uint32_t>(eax12)) {
        eax12 = eax12 - 0x400;
    }
    *ecx5 = v2;
    goto *ecx5;
}

void** fun_3f27657(void** ecx, void** a2, void** a3, void** a4);

void fun_3f28903(void** ecx, void** a2, void** a3, void** a4);

void** fun_3f2750b(void** ecx, void** a2, uint32_t a3) {
    void** v4;
    void** edi5;
    void** ecx6;
    void** esi7;
    void** edx8;
    void** esi9;

    v4 = ecx;
    edi5 = ecx;
    ecx6 = a2;
    esi7 = ecx6;
    *reinterpret_cast<void***>(edi5 + 16) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(edi5 + 20) = reinterpret_cast<void**>(15);
    edx8 = esi7 + 1;
    *reinterpret_cast<void***>(edi5) = reinterpret_cast<void**>(0);
    do {
        ++esi7;
    } while (*reinterpret_cast<void***>(esi7));
    esi9 = reinterpret_cast<void**>(reinterpret_cast<unsigned char>(esi7) - reinterpret_cast<unsigned char>(edx8));
    if (reinterpret_cast<unsigned char>(esi9) > reinterpret_cast<unsigned char>(15)) {
        v4 = reinterpret_cast<void**>(0);
        fun_3f27657(edi5, esi9, v4, ecx6);
    } else {
        *reinterpret_cast<void***>(edi5 + 16) = esi9;
        fun_3f28903(ecx6, edi5, ecx6, esi9);
        *reinterpret_cast<void***>(reinterpret_cast<unsigned char>(esi9) + reinterpret_cast<unsigned char>(edi5)) = reinterpret_cast<void**>(0);
    }
    return edi5;
}

void fun_3f2774f(void** ecx, void** a2);

void fun_3f2775b(void** ecx, uint32_t a2);

void fun_3f27712(void** ecx);

void fun_3f276e5(void** ecx);

void** fun_3f2747b(void** ecx, void** a2, void* a3, void** a4, uint32_t a5, ...) {
    uint32_t edi6;
    void** edi7;
    void** esi8;
    int32_t ebx9;
    void** ecx10;

    *reinterpret_cast<void***>(ecx) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(ecx + 4) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(ecx + 8) = reinterpret_cast<void**>(0);
    edi6 = reinterpret_cast<uint32_t>(reinterpret_cast<int32_t>(reinterpret_cast<uint32_t>(a3) - reinterpret_cast<unsigned char>(a2)) >> 2);
    if (!edi6) {
        addr_3f274da_2:
        return ecx;
    } else {
        if (edi6 > 0x3fffffff) {
            fun_3f2774f(ecx, edi7);
            if (reinterpret_cast<unsigned char>(*reinterpret_cast<void***>(ecx + 20)) >= reinterpret_cast<unsigned char>(16))
                goto addr_3f274f3_6;
        } else {
            fun_3f2775b(ecx, edi6);
            esi8 = *reinterpret_cast<void***>(ecx);
            fun_3f28903(a2, esi8, a2, reinterpret_cast<uint32_t>(a3) - reinterpret_cast<unsigned char>(a2));
            *reinterpret_cast<void***>(ecx + 4) = esi8 + edi6 * 4;
            fun_3f27712(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4 + 0xfffffffc);
            goto addr_3f274da_2;
        }
    }
    addr_3f274fb_8:
    *reinterpret_cast<void***>(ecx + 16) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(ecx + 20) = reinterpret_cast<void**>(15);
    *reinterpret_cast<void***>(ecx) = reinterpret_cast<void**>(0);
    goto ebx9;
    addr_3f274f3_6:
    ecx10 = *reinterpret_cast<void***>(ecx);
    fun_3f276e5(ecx10);
    goto addr_3f274fb_8;
}

void fun_3f28895(void** a1);

struct s0 {
    signed char[8] pad8;
    int32_t f8;
};

struct s1 {
    signed char[12] pad12;
    int32_t f12;
};

void fun_3f28850(void** ecx, int32_t a2, void** a3, void* a4, void** a5);

void** fun_3f2778d(void** ecx, void** a2);

struct s2 {
    int32_t f0;
    int32_t f4;
};

struct s3 {
    int32_t f0;
    int32_t f4;
};

struct s4 {
    signed char[4] pad4;
    void** f4;
};

void fun_3f27743(void** ecx, void** a2);

void fun_3f27d88(void** ecx, void** a2);

void** g20;

struct s5 {
    void** f0;
    signed char[3] pad4;
    void** f4;
    signed char[3] pad8;
    void** f8;
};

int32_t g3f2b0b8 = 0x7770ca70;

void** g38;

void** g34;

void fun_3f288fd(void** ecx, void** a2, void** a3, void** a4);

void** g24;

void fun_3f277ee(void** ecx, int32_t a2, int32_t a3, void** a4);

int32_t fun_3f275bd(void** ecx, void** a2, void* a3, void** a4, uint32_t a5, ...) {
    int32_t v6;
    int32_t ebp7;
    int32_t edx8;
    struct s0* ebp9;
    int32_t eax10;
    struct s1* ebp11;
    int32_t ebp12;
    int32_t eax13;
    int32_t ebp14;
    void** ecx15;
    uint32_t eax16;
    void** esi17;
    void** esi18;
    void** eax19;
    void** ebx20;
    int32_t ebp21;
    int32_t ebp22;
    struct s2* edi23;
    int32_t ebp24;
    struct s3* edi25;
    struct s4* edi26;
    int32_t ebp27;
    int32_t ebp28;
    int32_t ebp29;
    int32_t ebp30;
    int32_t esi31;
    int32_t ebp32;
    int32_t ebp33;
    int32_t ebp34;
    int32_t esi35;
    void** esi36;
    struct s5** ecx37;
    struct s5* esi38;
    void** ecx39;
    void** ecx40;
    void** edx41;
    void* v42;
    void** eax43;
    void** ecx44;
    void** eax45;
    void** ecx46;
    int32_t edi47;
    int32_t ebp48;
    int32_t ebp49;
    int32_t ebp50;

    v6 = reinterpret_cast<int32_t>(__return_address());
    fun_3f28895(32);
    *reinterpret_cast<void***>(ebp7 - 36) = ecx;
    edx8 = ebp9->f8;
    eax10 = ebp11->f12;
    *reinterpret_cast<int32_t*>(ebp12 - 32) = eax10;
    eax13 = eax10 - edx8;
    *reinterpret_cast<int32_t*>(ebp14 - 40) = edx8;
    __asm__("cdq ");
    ecx15 = reinterpret_cast<void**>(36);
    eax16 = reinterpret_cast<uint32_t>(eax13 / reinterpret_cast<signed char>(36));
    if (!eax16) {
        addr_3f27649_2:
        fun_3f28850(ecx15, v6, a2, a3, a4);
        goto v6;
    } else {
        if (eax16 > 0x71c71c7) {
            fun_3f2774f(36, 32);
            esi17 = reinterpret_cast<void**>(0x7fffffff);
            if (reinterpret_cast<unsigned char>(a2) <= reinterpret_cast<unsigned char>(0x7fffffff))
                goto addr_3f27674_6;
        } else {
            esi18 = reinterpret_cast<void**>(eax16 * 36);
            eax19 = fun_3f2778d(esi18, 32);
            ebx20 = eax19;
            *reinterpret_cast<void***>(ebp21 - 44) = ecx;
            *reinterpret_cast<void***>(ecx) = ebx20;
            *reinterpret_cast<void***>(ecx + 4) = ebx20;
            ecx15 = reinterpret_cast<void**>(reinterpret_cast<unsigned char>(esi18) + reinterpret_cast<unsigned char>(ebx20));
            *reinterpret_cast<void***>(ecx + 8) = ecx15;
            *reinterpret_cast<uint32_t*>(ebp22 - 4) = 0;
            edi23 = reinterpret_cast<struct s2*>(ebp24 - 28);
            edi23->f0 = 0;
            edi25 = reinterpret_cast<struct s3*>(&edi23->f4);
            edi25->f0 = 0;
            edi25->f4 = 0;
            edi26 = *reinterpret_cast<struct s4**>(ebp27 - 36);
            *reinterpret_cast<void***>(ebp28 - 28) = ebx20;
            *reinterpret_cast<void***>(ebp29 - 24) = ebx20;
            *reinterpret_cast<struct s4**>(ebp30 - 20) = edi26;
            esi31 = *reinterpret_cast<int32_t*>(ebp32 - 40);
            *reinterpret_cast<signed char*>(ebp33 - 4) = 1;
            if (esi31 == *reinterpret_cast<int32_t*>(ebp34 - 32))
                goto addr_3f27646_17; else
                goto addr_3f2762b_18;
        }
    }
    fun_3f27743(36, ecx);
    if (reinterpret_cast<uint32_t>(eax13 % reinterpret_cast<signed char>(36)) >= 0x1000)
        goto addr_3f276ed_21;
    addr_3f27701_22:
    fun_3f27d88(ecx15, ecx15);
    goto esi35;
    addr_3f276ed_21:
    esi36 = g20;
    ecx37 = reinterpret_cast<struct s5**>(reinterpret_cast<unsigned char>(36) - reinterpret_cast<unsigned char>(esi36));
    if (reinterpret_cast<uint32_t>(ecx37 + 0xffffffff) > 31) {
        g3f2b0b8();
        esi38 = *ecx37;
        if (!esi38)
            goto addr_3f27736_25;
        ecx39 = esi38->f0;
        if (ecx39)
            goto addr_3f2771f_27;
    } else {
        ecx15 = esi36;
        goto addr_3f27701_22;
    }
    addr_3f27736_25:
    goto 0x7fffffff;
    addr_3f2771f_27:
    fun_3f276e5(ecx39);
    esi38->f0 = reinterpret_cast<void**>(0);
    esi38->f4 = reinterpret_cast<void**>(0);
    esi38->f8 = reinterpret_cast<void**>(0);
    goto addr_3f27736_25;
    addr_3f27674_6:
    ecx40 = g38;
    edx41 = reinterpret_cast<void**>(reinterpret_cast<unsigned char>(a2) | 15);
    if (reinterpret_cast<unsigned char>(edx41) <= reinterpret_cast<unsigned char>(0x7fffffff) && ((v42 = reinterpret_cast<void*>(reinterpret_cast<unsigned char>(ecx40) >> 1), reinterpret_cast<unsigned char>(ecx40) <= reinterpret_cast<unsigned char>(0x7fffffff - reinterpret_cast<uint32_t>(v42))) && (esi17 = edx41, eax43 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(v42) + reinterpret_cast<unsigned char>(ecx40)), reinterpret_cast<unsigned char>(edx41) < reinterpret_cast<unsigned char>(eax43)))) {
        esi17 = eax43;
    }
    ecx44 = esi17 + 1;
    eax45 = fun_3f2778d(ecx44, ecx);
    g34 = a2;
    g38 = esi17;
    fun_3f288fd(ecx44, eax45, a4, a2);
    *reinterpret_cast<signed char*>(reinterpret_cast<unsigned char>(eax45) + reinterpret_cast<unsigned char>(a2)) = 0;
    if (reinterpret_cast<unsigned char>(ecx40) >= reinterpret_cast<unsigned char>(16)) {
        ecx46 = g24;
        fun_3f276e5(ecx46);
    }
    g24 = eax45;
    return 36;
    addr_3f27646_17:
    edi26->f4 = ebx20;
    goto addr_3f27649_2;
    addr_3f2762b_18:
    edi47 = *reinterpret_cast<int32_t*>(ebp48 - 32);
    do {
        ecx15 = ebx20;
        fun_3f277ee(ecx15, esi31, v6, a2);
        ebx20 = ebx20 + 36;
        esi31 = esi31 + 36;
        *reinterpret_cast<void***>(ebp49 - 24) = ebx20;
    } while (esi31 != edi47);
    edi26 = *reinterpret_cast<struct s4**>(ebp50 - 36);
    goto addr_3f27646_17;
}

void fun_3f28270(void** ecx, int32_t a2, int32_t a3);

struct s6 {
    signed char[12] pad12;
    uint32_t f12;
};

struct s7 {
    signed char[16] pad16;
    uint32_t f16;
};

struct s8 {
    signed char[8] pad8;
    void*** f8;
};

struct s9 {
    signed char[8] pad8;
    void** f8;
};

struct s10 {
    signed char[16] pad16;
    uint32_t f16;
};

struct s11 {
    signed char[8] pad8;
    void** f8;
};

struct s12 {
    signed char[20] pad20;
    int32_t f20;
};

/* (image base) */
int32_t image_base_ = 0x3f282fa;

struct s13 {
    signed char[20] pad20;
    int32_t f20;
};

void fun_3f279ce(void** ecx);

void* g0;

struct s14 {
    signed char[4] pad4;
    int32_t f4;
};

void fun_3f27959(void** ecx, void* a2, int32_t a3, int32_t a4, int32_t a5, uint32_t a6, ...) {
    int32_t ebp7;
    uint32_t ebx8;
    struct s6* ebp9;
    uint32_t edi10;
    struct s7* ebp11;
    void** esi12;
    struct s8* ebp13;
    struct s9* ebp14;
    int32_t ebp15;
    uint32_t eax16;
    struct s10* ebp17;
    struct s11* ebp18;
    int32_t ecx19;
    struct s12* ebp20;
    struct s13* ebp21;
    int32_t ebp22;
    int32_t ebp23;
    int32_t ebp24;
    struct s14* ebp25;

    fun_3f28270(ecx, 0x3f2eeb0, 12);
    *reinterpret_cast<signed char*>(ebp7 - 25) = 0;
    ebx8 = ebp9->f12;
    edi10 = ebp11->f16;
    esi12 = reinterpret_cast<void**>(reinterpret_cast<int32_t>(ebp13->f8) + ebx8 * edi10);
    ebp14->f8 = esi12;
    *reinterpret_cast<uint32_t*>(ebp15 - 4) = 0;
    while (eax16 = edi10, --edi10, ebp17->f16 = edi10, !!eax16) {
        esi12 = reinterpret_cast<void**>(reinterpret_cast<unsigned char>(esi12) - ebx8);
        ebp18->f8 = esi12;
        ecx19 = ebp20->f20;
        image_base_(ecx19);
        ecx = esi12;
        ebp21->f20(ecx);
    }
    *reinterpret_cast<signed char*>(ebp22 - 25) = 1;
    *reinterpret_cast<int32_t*>(ebp23 - 4) = -2;
    fun_3f279ce(ecx);
    g0 = *reinterpret_cast<void**>(ebp24 - 16);
    goto ebp25->f4;
}

uint32_t fun_3f27d46(uint32_t a1);

int32_t fun_3f27d73(void** ecx, uint32_t a2) {
    uint32_t eax3;
    uint32_t eax4;

    eax3 = fun_3f27d46(a2);
    eax4 = -eax3;
    return reinterpret_cast<int32_t>(-(eax4 - (eax4 + reinterpret_cast<uint1_t>(eax4 < eax4 + reinterpret_cast<uint1_t>(!!eax3))))) - 1;
}

uint32_t g3f30008 = 0xbb40e64e;

int32_t fun_3f287b7(void* a1, int32_t a2);

int32_t g4210f10;

uint32_t g4210f0c;

int32_t g4210f08;

int32_t g4210f04;

int32_t g4210f00;

int32_t g4210efc;

int16_t g4210f28;

int16_t g4210f1c;

int16_t g4210ef8;

int16_t g4210ef4;

int16_t g4210ef0;

int16_t g4210eec;

uint32_t g4210f20;

int32_t g4210f14;

int32_t g4210f18;

void* g4210f24;

int32_t g4210e60;

int32_t g4210e1c;

int32_t g4210e10;

int32_t g4210e14;

int32_t g4210e20;

int32_t g4210e24;

uint32_t fun_3f28117(int32_t a1, void* a2);

uint32_t fun_3f27918(uint32_t ecx, void* a2, int32_t a3, void** a4) {
    uint32_t eflags5;
    int1_t zf6;
    uint32_t eax7;
    int32_t v8;
    int32_t eax9;
    int32_t edx10;
    int32_t ebx11;
    int32_t esi12;
    int32_t edi13;
    int16_t ss14;
    int16_t cs15;
    int16_t ds16;
    int16_t es17;
    int16_t fs18;
    int16_t gs19;
    int32_t ebp20;
    int32_t eax21;
    uint32_t eax22;

    *reinterpret_cast<int1_t*>(reinterpret_cast<int32_t>(&eflags5) + 1) = 0;
    zf6 = ecx == g3f30008;
    if (zf6) {
        return eax7;
    }
    eax9 = fun_3f287b7(23, v8);
    *reinterpret_cast<int1_t*>(&eflags5) = 0;
    *reinterpret_cast<int1_t*>(&eflags5) = __intrinsic();
    *reinterpret_cast<int1_t*>(&eflags5) = eax9 == 0;
    *reinterpret_cast<int1_t*>(&eflags5) = eax9 < 0;
    *reinterpret_cast<int1_t*>(reinterpret_cast<int32_t>(&eflags5) + 1) = 0;
    *reinterpret_cast<int1_t*>(&eflags5) = __undefined();
    if (!*reinterpret_cast<int1_t*>(&eflags5))
        goto addr_3f28153_5;
    addr_3f28158_6:
    g4210f10 = eax9;
    g4210f0c = ecx;
    g4210f08 = edx10;
    g4210f04 = ebx11;
    g4210f00 = esi12;
    g4210efc = edi13;
    g4210f28 = ss14;
    g4210f1c = cs15;
    g4210ef8 = ds16;
    g4210ef4 = es17;
    g4210ef0 = fs18;
    g4210eec = gs19;
    g4210f20 = eflags5 & 0xfcffff;
    g4210f14 = ebp20;
    g4210f18 = reinterpret_cast<int32_t>(__return_address());
    g4210f24 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4 + 8);
    g4210e60 = 0x10001;
    eax21 = g4210f18;
    g4210e1c = eax21;
    g4210e10 = 0xc0000409;
    g4210e14 = 1;
    g4210e20 = 1;
    g4210e24 = 2;
    eax22 = fun_3f28117(0x3f2b0fc, 23);
    return eax22;
    addr_3f28153_5:
    ecx = 2;
    __asm__("int 0x29");
    goto addr_3f28158_6;
}

int32_t g3f2b074 = 0x74233130;

void fun_3f288fd(void** ecx, void** a2, void** a3, void** a4) {
    goto g3f2b074;
}

void fun_3f278d6() {
    int32_t* esi1;
    int32_t edx2;
    int32_t edx3;
    int32_t edx4;

    esi1 = reinterpret_cast<int32_t*>(0x41f6018);
    do {
        ++esi1;
        *reinterpret_cast<int32_t*>(*esi1 + edx2) = *reinterpret_cast<int32_t*>(*esi1 + edx3) - 0xa00000 + edx4;
    } while (!reinterpret_cast<int1_t>(esi1 == 0x4210d64));
    return;
}

struct s16 {
    struct s16* f0;
    signed char[16] pad20;
    uint32_t f20;
    void** f24;
    void** f28;
};

struct s15 {
    signed char[20] pad20;
    uint32_t f20;
    struct s16* f24;
    struct s16* f28;
};

int32_t g3f2b010 = 0x75f42990;

int32_t g3f2b014 = 0x75f35f20;

void fun_3f273a9(void** ecx) {
    struct s15* esi2;
    void** v3;
    struct s15* v4;
    int32_t eax5;
    int32_t ecx6;
    int32_t v7;
    struct s16* eax8;
    struct s16* edi9;
    struct s16* v10;
    struct s16* v11;
    struct s16* esi12;
    struct s16* eax13;
    int32_t eax14;
    void** ebx15;
    void** edx16;
    void** edi17;
    int32_t esi18;

    esi2 = reinterpret_cast<struct s15*>(0x4211150);
    v3 = ecx;
    v4 = reinterpret_cast<struct s15*>(0x4211150);
    do {
        if (esi2->f20 >= 16) {
        }
        eax5 = reinterpret_cast<int32_t>(g3f2b010());
        ecx6 = eax5;
        v7 = ecx6;
        if (ecx6 && (eax8 = esi2->f28, edi9 = esi2->f24, v10 = eax8, v11 = edi9, edi9 != eax8)) {
            esi12 = eax8;
            do {
                eax13 = edi9;
                if (edi9->f20 >= 16) {
                    eax13 = edi9->f0;
                }
                eax14 = reinterpret_cast<int32_t>(g3f2b014(ecx6, eax13));
                if (eax14 && (ebx15 = edi9->f28, edx16 = edi9->f24, edx16 != ebx15)) {
                    edi17 = v3;
                    esi18 = eax14;
                    do {
                        ++edx16;
                        *reinterpret_cast<uint32_t*>(reinterpret_cast<int32_t>(*edx16) + reinterpret_cast<unsigned char>(edi17) + 1) = esi18 - reinterpret_cast<int32_t>(*edx16) - reinterpret_cast<unsigned char>(edi17) - 5;
                    } while (edx16 != ebx15);
                    edi9 = v11;
                    esi12 = v10;
                }
                ecx6 = v7;
                edi9 = reinterpret_cast<struct s16*>(reinterpret_cast<int32_t>(edi9) + 36);
                v11 = edi9;
            } while (edi9 != esi12);
            esi2 = v4;
        }
        esi2 = reinterpret_cast<struct s15*>(reinterpret_cast<int32_t>(esi2) + 36);
        v4 = esi2;
    } while (!reinterpret_cast<int1_t>(esi2 == 0x4211294));
    return;
}

int32_t g3f2b008 = 0x75f38f60;

int32_t g3f2b004 = 0x75f37c70;

int32_t g3f2b00c = 0x75f39010;

void fun_3f27123(void** ecx) {
    int32_t esi2;
    int32_t edi3;
    int32_t esi4;
    int32_t ebx5;
    int32_t eax6;
    int32_t ebx7;
    int32_t eax8;
    int32_t eax9;
    int32_t eax10;
    int32_t eax11;
    int32_t eax12;
    int32_t eax13;
    int32_t eax14;
    int32_t eax15;
    int32_t eax16;
    int32_t eax17;
    int32_t eax18;
    int32_t eax19;
    int32_t eax20;
    int32_t eax21;
    int32_t eax22;
    int32_t esi23;
    int32_t eax24;
    int32_t eax25;
    int32_t eax26;
    int32_t eax27;
    int32_t eax28;
    int32_t eax29;
    int32_t esi30;
    int32_t eax31;
    int32_t eax32;
    int32_t eax33;
    int32_t eax34;
    int32_t eax35;

    esi2 = g3f2b008;
    eax6 = reinterpret_cast<int32_t>(esi2("ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    ebx7 = g3f2b014;
    eax8 = reinterpret_cast<int32_t>(ebx7(eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax9 = reinterpret_cast<int32_t>(esi2("msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax10 = reinterpret_cast<int32_t>(ebx7(eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x3eb9) = eax10;
    *reinterpret_cast<int32_t*>(ecx + 0x25f0) = eax8;
    eax11 = reinterpret_cast<int32_t>(esi2("ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax12 = reinterpret_cast<int32_t>(ebx7(eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x45dea) = eax12;
    eax13 = reinterpret_cast<int32_t>(esi2("gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax14 = reinterpret_cast<int32_t>(ebx7(eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x12d0f3) = eax14;
    eax15 = reinterpret_cast<int32_t>(esi2("ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax16 = reinterpret_cast<int32_t>(ebx7(eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x359b) = eax16;
    eax17 = reinterpret_cast<int32_t>(esi2("msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax18 = reinterpret_cast<int32_t>(ebx7(eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x69b13) = eax18;
    eax19 = reinterpret_cast<int32_t>(esi2("msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax20 = reinterpret_cast<int32_t>(ebx7(eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x6a32a) = eax20;
    *reinterpret_cast<int32_t*>(ecx + 0x88593) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x88680) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x88970) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x88ca0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x88ea3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x88f90) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x891f3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x892e0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x895e0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x89910) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x89ff3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8a0e0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8a3e0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8a710) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8aeb3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8afa0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8b2a0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8b5d0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8bcb3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8bda0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8c0a0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8c3d0) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8cad3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8cbbf) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8cebf) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8d1ef) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x10e4cd) = eax8;
    eax21 = reinterpret_cast<int32_t>(esi2("msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax22 = reinterpret_cast<int32_t>(ebx7(eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    esi23 = g3f2b004;
    *reinterpret_cast<int32_t*>(ecx + 0x3eb74) = eax22;
    *reinterpret_cast<int32_t*>(ecx + 0x3ebb9) = eax22;
    eax24 = g3f2b00c;
    *reinterpret_cast<int32_t*>(ecx + 0x11606a) = eax24;
    eax25 = g3f2b008;
    *reinterpret_cast<int32_t*>(ecx + 0x125f7c) = esi23;
    *reinterpret_cast<int32_t*>(ecx + 0x7fb98) = esi23;
    *reinterpret_cast<int32_t*>(ecx + 0x28158) = esi23;
    *reinterpret_cast<int32_t*>(ecx + 0x116106) = eax25;
    eax26 = reinterpret_cast<int32_t>(eax25("ucrtbase.dll", "_fdtest", eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax27 = reinterpret_cast<int32_t>(ebx7(eax26, "ucrtbase.dll", "_fdtest", eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x20914) = eax27;
    *reinterpret_cast<int32_t*>(ecx + 0x20dc4) = eax27;
    eax28 = reinterpret_cast<int32_t>(g3f2b008("ucrtbase.dll", "atol", eax26, "ucrtbase.dll", "_fdtest", eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax29 = reinterpret_cast<int32_t>(ebx7(eax28, "ucrtbase.dll", "atol", eax26, "ucrtbase.dll", "_fdtest", eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x7a2a5) = esi23;
    esi30 = g3f2b008;
    *reinterpret_cast<int32_t*>(ecx + 0x3d384) = eax29;
    *reinterpret_cast<int32_t*>(ecx + 0x8888f) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x88baf) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x894f3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x89823) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8a2f3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8a623) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8b1b3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8b4e3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8bfb3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8c2e3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8cdd3) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0x8d103) = eax8;
    *reinterpret_cast<int32_t*>(ecx + 0xb9a79) = eax8;
    eax31 = reinterpret_cast<int32_t>(esi30("gdi32.dll", "DeleteObject", eax28, "ucrtbase.dll", "atol", eax26, "ucrtbase.dll", "_fdtest", eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax32 = reinterpret_cast<int32_t>(ebx7(eax31, "gdi32.dll", "DeleteObject", eax28, "ucrtbase.dll", "atol", eax26, "ucrtbase.dll", "_fdtest", eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x113b6f) = eax32;
    eax33 = reinterpret_cast<int32_t>(esi30("user32.dll", "FindWindowA", eax31, "gdi32.dll", "DeleteObject", eax28, "ucrtbase.dll", "atol", eax26, "ucrtbase.dll", "_fdtest", eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    eax34 = reinterpret_cast<int32_t>(ebx7(eax33, "user32.dll", "FindWindowA", eax31, "gdi32.dll", "DeleteObject", eax28, "ucrtbase.dll", "atol", eax26, "ucrtbase.dll", "_fdtest", eax21, "msvcp140.dll", "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", eax19, "msvcp140.dll", "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", eax17, "msvcp140.dll", "?write@?$basic_ostream@_WU?$char_traits@_W@std@@@std@@QAEAAV12@PB_W_J@Z", eax15, "ucrtbase.dll", "ungetc", eax13, "gdi32.dll", "AddFontMemResourceEx", eax11, "ucrtbase.dll", "_beginthreadex", eax9, "msvcp140.dll", "?id@?$codecvt@DDU_Mbstatet@@@std@@2V0locale@2@A", eax6, "ucrtbase.dll", "tolower", edi3, esi4, ebx5));
    *reinterpret_cast<int32_t*>(ecx + 0x116070) = eax34;
    esi30();
    eax35 = reinterpret_cast<int32_t>(ebx7());
    *reinterpret_cast<int32_t*>(ecx + 0x131a10) = eax35;
    return;
}

void fun_3f270cf(void** ecx) {
    int32_t edi2;
    int32_t edi3;
    int32_t esi4;
    int32_t ebx5;
    int32_t eax6;
    int32_t esi7;
    int32_t eax8;
    int32_t eax9;
    int32_t eax10;
    int32_t eax11;

    edi2 = g3f2b008;
    eax6 = reinterpret_cast<int32_t>(edi2("msvcp140.dll", "?_Id_cnt@id@locale@std@@0HA", edi3, esi4, ebx5, __return_address()));
    esi7 = g3f2b014;
    eax8 = reinterpret_cast<int32_t>(esi7(eax6, "msvcp140.dll", "?_Id_cnt@id@locale@std@@0HA", edi3, esi4, ebx5, __return_address()));
    *reinterpret_cast<int32_t*>(ecx + 0x1c067c) = eax8;
    eax9 = reinterpret_cast<int32_t>(edi2("gdi32.dll", "SelectObject", eax6, "msvcp140.dll", "?_Id_cnt@id@locale@std@@0HA", edi3, esi4, ebx5, __return_address()));
    eax10 = reinterpret_cast<int32_t>(esi7());
    *reinterpret_cast<int32_t*>(ecx + 0x1c062c) = eax10;
    edi2();
    eax11 = reinterpret_cast<int32_t>(esi7());
    *reinterpret_cast<int32_t*>(ecx + 0x1c05c4) = eax11;
    goto eax9;
}

void fun_3f278f8(void** ecx) {
    void** edx2;

    *reinterpret_cast<uint32_t*>(ecx + 0x1c31d4) = *reinterpret_cast<uint32_t*>(ecx + 0x1c31d4) ^ 0x5204;
    edx2 = g20;
    *reinterpret_cast<uint32_t*>(ecx + 0x1c31d4) = reinterpret_cast<unsigned char>(edx2) ^ *reinterpret_cast<uint32_t*>(ecx + 0x1c31d4);
    return;
}

void fun_3f285fd();

void fun_3f27d88(void** ecx, void** a2) {
    fun_3f285fd();
    return;
}

struct s17 {
    void** f0;
    signed char[3] pad4;
    void** f4;
    signed char[3] pad8;
    void** f8;
};

void fun_3f276e5(void** ecx) {
    uint32_t edx2;
    struct s17** ecx3;
    struct s17* esi4;
    void** ecx5;
    int32_t esi6;

    if (edx2 < 0x1000) {
        addr_3f27701_2:
        fun_3f27d88(ecx, ecx);
        return;
    } else {
        ecx3 = reinterpret_cast<struct s17**>(reinterpret_cast<unsigned char>(ecx) - reinterpret_cast<unsigned char>(*reinterpret_cast<void***>(ecx + 0xfffffffc)));
        if (reinterpret_cast<uint32_t>(ecx3 + 0xffffffff) > 31) {
            g3f2b0b8();
            esi4 = *ecx3;
            if (!esi4)
                goto addr_3f27736_6;
            ecx5 = esi4->f0;
            if (ecx5)
                goto addr_3f2771f_8;
        } else {
            ecx = *reinterpret_cast<void***>(ecx + 0xfffffffc);
            goto addr_3f27701_2;
        }
    }
    addr_3f27736_6:
    goto esi6;
    addr_3f2771f_8:
    fun_3f276e5(ecx5);
    esi4->f0 = reinterpret_cast<void**>(0);
    esi4->f4 = reinterpret_cast<void**>(0);
    esi4->f8 = reinterpret_cast<void**>(0);
    goto addr_3f27736_6;
}

void fun_3f27056(void** a1);

int32_t fun_3f27929(void** a1);

struct s18 {
    int32_t f0;
    uint32_t f4;
    uint32_t f8;
};

struct s18* fun_3f2703e(struct s18* ecx);

void fun_3f2874b(struct s18* ecx);

struct s18* fun_3f26fc3(struct s18* ecx, int32_t a2);

void fun_3f2775b(void** ecx, uint32_t a2) {
    void** esi3;
    void** edi4;
    void** eax5;
    int32_t esi6;
    int32_t ebp7;
    void** eax8;
    void* ebp9;
    struct s18* ecx10;
    int32_t eax11;

    if (a2 <= 0x3fffffff) {
        esi3 = reinterpret_cast<void**>(a2 << 2);
        eax5 = fun_3f2778d(esi3, edi4);
        *reinterpret_cast<void***>(ecx) = eax5;
        *reinterpret_cast<void***>(ecx + 4) = eax5;
        *reinterpret_cast<void***>(ecx + 8) = reinterpret_cast<void**>(reinterpret_cast<unsigned char>(eax5) + reinterpret_cast<unsigned char>(esi3));
        goto a2;
    }
    fun_3f27056(edi4);
    if (reinterpret_cast<unsigned char>(ecx) >= reinterpret_cast<unsigned char>(0x1000))
        goto addr_3f27795_5;
    if (!ecx) {
        goto esi6;
    } else {
        fun_3f27929(ecx);
        goto ebp7;
    }
    addr_3f27795_5:
    eax8 = ecx + 35;
    if (reinterpret_cast<unsigned char>(eax8) <= reinterpret_cast<unsigned char>(ecx)) {
        ebp9 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4 - 4 - 4 - 4 + 4 + 4 - 4);
        ecx10 = reinterpret_cast<struct s18*>(reinterpret_cast<int32_t>(ebp9) - 12);
        fun_3f2703e(ecx10);
        fun_3f2874b(ecx10);
        fun_3f26fc3(ecx10, 0x3f2efd8);
        goto reinterpret_cast<int32_t>(ebp9) - 12;
    } else {
        eax11 = fun_3f27929(eax8);
        if (!eax11) {
            goto g3f2b0b8;
        } else {
            *reinterpret_cast<int32_t*>((reinterpret_cast<uint32_t>(eax11 + 35) & 0xffffffe0) - 4) = eax11;
            goto ebp7;
        }
    }
}

int32_t g3f2b060 = 0x742336b0;

void fun_3f28903(void** ecx, void** a2, void** a3, void** a4) {
    goto g3f2b060;
}

void fun_3f27712(void** ecx) {
    void** esi2;
    void** ecx3;

    esi2 = *reinterpret_cast<void***>(ecx);
    if (esi2 && (ecx3 = *reinterpret_cast<void***>(esi2), !!ecx3)) {
        fun_3f276e5(ecx3);
        *reinterpret_cast<void***>(esi2) = reinterpret_cast<void**>(0);
        *reinterpret_cast<void***>(esi2 + 4) = reinterpret_cast<void**>(0);
        *reinterpret_cast<void***>(esi2 + 8) = reinterpret_cast<void**>(0);
    }
    return;
}

struct s19 {
    void** f0;
    signed char[3] pad4;
    void** f4;
    signed char[3] pad8;
    void** f8;
};

void fun_3f27459(struct s19* ecx) {
    void** ecx2;

    ecx2 = ecx->f0;
    if (ecx2) {
        fun_3f276e5(ecx2);
        ecx->f0 = reinterpret_cast<void**>(0);
        ecx->f4 = reinterpret_cast<void**>(0);
        ecx->f8 = reinterpret_cast<void**>(0);
    }
    return;
}

void fun_3f274e8(void** ecx) {
    void** ecx2;

    if (reinterpret_cast<unsigned char>(*reinterpret_cast<void***>(ecx + 20)) >= reinterpret_cast<unsigned char>(16)) {
        ecx2 = *reinterpret_cast<void***>(ecx);
        fun_3f276e5(ecx2);
    }
    *reinterpret_cast<void***>(ecx + 16) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(ecx + 20) = reinterpret_cast<void**>(15);
    *reinterpret_cast<void***>(ecx) = reinterpret_cast<void**>(0);
    return;
}

void** fun_3f2778d(void** ecx, void** a2) {
    void** eax3;
    void* ebp4;
    struct s18* ecx5;
    int32_t eax6;

    if (reinterpret_cast<unsigned char>(ecx) < reinterpret_cast<unsigned char>(0x1000)) {
        if (!ecx) {
            return 0;
        } else {
            fun_3f27929(ecx);
            goto a2;
        }
    } else {
        eax3 = ecx + 35;
        if (reinterpret_cast<unsigned char>(eax3) <= reinterpret_cast<unsigned char>(ecx)) {
            ebp4 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4);
            ecx5 = reinterpret_cast<struct s18*>(reinterpret_cast<int32_t>(ebp4) - 12);
            fun_3f2703e(ecx5);
            fun_3f2874b(ecx5);
            fun_3f26fc3(ecx5, 0x3f2efd8);
            goto reinterpret_cast<int32_t>(ebp4) - 12;
        } else {
            eax6 = fun_3f27929(eax3);
            if (!eax6) {
                goto g3f2b0b8;
            } else {
                *reinterpret_cast<int32_t*>((reinterpret_cast<uint32_t>(eax6 + 35) & 0xffffffe0) - 4) = eax6;
                goto a2;
            }
        }
    }
}

void fun_3f28861(void** a1);

struct s20 {
    signed char[8] pad8;
    void** f8;
};

struct s21 {
    void** f0;
    signed char[3] pad4;
    int32_t f4;
};

struct s22 {
    int32_t f0;
    int32_t f4;
};

void fun_3f2883b(void** ecx, int32_t a2, int32_t a3, int32_t a4, void** a5);

void fun_3f277ee(void** ecx, int32_t a2, int32_t a3, void** a4) {
    int32_t ebp5;
    void** eax6;
    struct s20* ebp7;
    int32_t ebp8;
    void** ecx9;
    int1_t cf10;
    void** edi11;
    int32_t ebp12;
    int32_t ebp13;
    int32_t ebp14;
    int32_t ebp15;
    void** esi16;
    int32_t ecx17;
    void** tmp32_18;
    void** eax19;
    void** v20;
    int32_t ebp21;
    int32_t ebp22;
    struct s21* edi23;
    struct s21* esi24;
    struct s22* edi25;
    struct s22* esi26;
    int32_t ebp27;
    int32_t ebp28;
    void** esi29;
    void** ecx30;
    void** eax31;
    int32_t ebp32;
    void* eax33;
    int32_t ebp34;
    uint32_t edi35;
    void** v36;
    int32_t ebp37;
    void** esi38;
    void** v39;
    int32_t ebp40;
    int32_t ebp41;
    void* ebp42;

    fun_3f28861(16);
    *reinterpret_cast<void***>(ebp5 - 20) = ecx;
    eax6 = ebp7->f8;
    *reinterpret_cast<void***>(ebp8 - 28) = ecx;
    ecx9 = eax6;
    *reinterpret_cast<void***>(ecx + 16) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(ecx + 20) = reinterpret_cast<void**>(0);
    cf10 = reinterpret_cast<unsigned char>(*reinterpret_cast<void***>(eax6 + 20)) < reinterpret_cast<unsigned char>(16);
    edi11 = *reinterpret_cast<void***>(eax6 + 16);
    *reinterpret_cast<void***>(ebp12 - 16) = eax6;
    *reinterpret_cast<void***>(ebp13 - 20) = edi11;
    *reinterpret_cast<void***>(ebp14 - 24) = eax6;
    if (!cf10) {
        ecx9 = *reinterpret_cast<void***>(eax6);
        *reinterpret_cast<void***>(ebp15 - 24) = ecx9;
    }
    if (reinterpret_cast<unsigned char>(edi11) >= reinterpret_cast<unsigned char>(16)) {
        esi16 = reinterpret_cast<void**>(reinterpret_cast<unsigned char>(edi11) | 15);
        if (reinterpret_cast<unsigned char>(esi16) > reinterpret_cast<unsigned char>(0x7fffffff)) {
            esi16 = reinterpret_cast<void**>(0x7fffffff);
        }
        ecx17 = 0;
        tmp32_18 = esi16 + 1;
        *reinterpret_cast<unsigned char*>(&ecx17) = reinterpret_cast<uint1_t>(reinterpret_cast<unsigned char>(tmp32_18) < reinterpret_cast<unsigned char>(esi16));
        eax19 = fun_3f2778d(reinterpret_cast<uint32_t>(-ecx17) | reinterpret_cast<unsigned char>(tmp32_18), 16);
        v20 = *reinterpret_cast<void***>(ebp21 - 24);
        *reinterpret_cast<void***>(ecx) = eax19;
        fun_3f288fd(eax19, eax19, v20, edi11 + 1);
        eax6 = *reinterpret_cast<void***>(ebp22 - 16);
    } else {
        *reinterpret_cast<void***>(ecx) = *reinterpret_cast<void***>(ecx9);
        edi23 = reinterpret_cast<struct s21*>(ecx + 4);
        esi24 = reinterpret_cast<struct s21*>(ecx9 + 4);
        edi23->f0 = esi24->f0;
        edi25 = reinterpret_cast<struct s22*>(&edi23->f4);
        esi26 = reinterpret_cast<struct s22*>(&esi24->f4);
        edi25->f0 = esi26->f0;
        edi25->f4 = esi26->f4;
        edi11 = *reinterpret_cast<void***>(ebp27 - 20);
        esi16 = reinterpret_cast<void**>(15);
    }
    *reinterpret_cast<void***>(ebp28 - 4) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(ecx + 16) = edi11;
    *reinterpret_cast<void***>(ecx + 20) = esi16;
    esi29 = ecx + 24;
    *reinterpret_cast<void***>(esi29) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(esi29 + 4) = reinterpret_cast<void**>(0);
    *reinterpret_cast<void***>(esi29 + 8) = reinterpret_cast<void**>(0);
    ecx30 = *reinterpret_cast<void***>(eax6 + 24);
    eax31 = *reinterpret_cast<void***>(eax6 + 28);
    *reinterpret_cast<void***>(ebp32 - 20) = ecx30;
    if (ecx30 != eax31) {
        eax33 = reinterpret_cast<void*>(reinterpret_cast<unsigned char>(eax31) - reinterpret_cast<unsigned char>(ecx30));
        *reinterpret_cast<void**>(ebp34 - 16) = eax33;
        edi35 = reinterpret_cast<uint32_t>(reinterpret_cast<int32_t>(eax33) >> 2);
        fun_3f2775b(esi29, edi35);
        v36 = *reinterpret_cast<void***>(ebp37 - 16);
        esi38 = *reinterpret_cast<void***>(esi29);
        v39 = *reinterpret_cast<void***>(ebp40 - 20);
        fun_3f28903(esi29, esi38, v39, v36);
        *reinterpret_cast<uint32_t*>(ebp41 - 16) = 0;
        *reinterpret_cast<void***>(ecx + 28) = esi38 + edi35 * 4;
        ecx30 = reinterpret_cast<void**>(reinterpret_cast<int32_t>(ebp42) + 0xfffffff0);
        fun_3f27712(ecx30);
    }
    fun_3f2883b(ecx30, __return_address(), a2, a3, a4);
    return;
}

int32_t g3f2b048 = 0x7414ea90;

void fun_3f27743(void** ecx, void** a2) {
    void** edi3;
    void** eax4;
    int32_t esi5;
    int32_t ebp6;
    void** eax7;
    void* ebp8;
    struct s18* ecx9;
    int32_t eax10;

    g3f2b048();
    g3f2b048();
    if (!0) {
        eax4 = fun_3f2778d(0xfcb3300, edi3);
        *reinterpret_cast<void***>(ecx) = eax4;
        *reinterpret_cast<void***>(ecx + 4) = eax4;
        *reinterpret_cast<void***>(ecx + 8) = eax4 + 0xfcb3300;
        goto "string too long";
    }
    fun_3f27056(edi3);
    if (reinterpret_cast<unsigned char>(ecx) >= reinterpret_cast<unsigned char>(0x1000))
        goto addr_3f27795_7;
    if (!ecx) {
        goto esi5;
    } else {
        fun_3f27929(ecx);
        goto ebp6;
    }
    addr_3f27795_7:
    eax7 = ecx + 35;
    if (reinterpret_cast<unsigned char>(eax7) <= reinterpret_cast<unsigned char>(ecx)) {
        ebp8 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4 - 4 + 4 - 4 - 4 + 4 - 4 - 4 - 4 - 4 + 4 + 4 - 4);
        ecx9 = reinterpret_cast<struct s18*>(reinterpret_cast<int32_t>(ebp8) - 12);
        fun_3f2703e(ecx9);
        fun_3f2874b(ecx9);
        fun_3f26fc3(ecx9, 0x3f2efd8);
        goto reinterpret_cast<int32_t>(ebp8) - 12;
    } else {
        eax10 = fun_3f27929(eax7);
        if (!eax10) {
            goto g3f2b0b8;
        } else {
            *reinterpret_cast<int32_t*>((reinterpret_cast<uint32_t>(eax10 + 35) & 0xffffffe0) - 4) = eax10;
            goto ebp6;
        }
    }
}

void fun_3f27056(void** a1) {
    void* ebp2;
    struct s18* ecx3;

    ebp2 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4);
    ecx3 = reinterpret_cast<struct s18*>(reinterpret_cast<int32_t>(ebp2) - 12);
    fun_3f2703e(ecx3);
    fun_3f2874b(ecx3);
    fun_3f26fc3(ecx3, 0x3f2efd8);
    goto reinterpret_cast<int32_t>(ebp2) - 12;
}

int32_t fun_3f28769(void** ecx);

int32_t fun_3f28763(void** ecx);

struct s18* fun_3f28238(struct s18* ecx);

int32_t fun_3f27929(void** a1) {
    void* esp2;
    void** ecx3;
    int32_t eax4;
    int32_t eax5;
    void* ebp6;
    struct s18* ecx7;
    void* esp8;
    struct s18* ecx9;
    void* esp10;
    void* ebp11;
    int32_t* esp12;
    int32_t v13;
    int32_t ebx14;
    int32_t* esp15;
    int32_t esi16;
    int32_t* esp17;
    int32_t edi18;
    uint32_t eax19;
    uint32_t* esp20;
    void** esp21;

    esp2 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4);
    do {
        eax4 = fun_3f28769(ecx3);
        if (eax4)
            break;
        eax5 = fun_3f28763(a1);
        ecx3 = a1;
        esp2 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp2) - 4 - 4 + 4 + 4 - 4 - 4 + 4 + 4);
    } while (eax5);
    goto addr_3f2794a_4;
    return eax4;
    addr_3f2794a_4:
    if (a1 == 0xffffffff) {
        ebp6 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp2) - 4);
        ecx7 = reinterpret_cast<struct s18*>(reinterpret_cast<int32_t>(ebp6) - 12);
        fun_3f2703e(ecx7);
        fun_3f2874b(ecx7);
        fun_3f26fc3(ecx7, 0x3f2efd8);
        goto reinterpret_cast<int32_t>(ebp6) - 12;
    } else {
        esp8 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp2) - 4);
        ecx9 = reinterpret_cast<struct s18*>(reinterpret_cast<int32_t>(esp8) - 12);
        fun_3f28238(ecx9);
        fun_3f2874b(ecx9);
        esp10 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp8) - 12 - 4 + 4 - 4 - 4 - 4 + 4 - 4 - 4);
        ebp11 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp10) + 16);
        esp12 = reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(esp10) - v13 - 4);
        *esp12 = ebx14;
        esp15 = esp12 - 1;
        *esp15 = esi16;
        esp17 = esp15 - 1;
        *esp17 = edi18;
        eax19 = g3f30008;
        esp20 = reinterpret_cast<uint32_t*>(esp17 - 1);
        *esp20 = eax19 ^ reinterpret_cast<uint32_t>(ebp11);
        esp21 = reinterpret_cast<void**>(esp20 - 1);
        *esp21 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp8) - 12);
        g0 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp11) - 16);
        goto *esp21;
    }
}

void fun_3f2883b(void** ecx, int32_t a2, int32_t a3, int32_t a4, void** a5) {
    int32_t ebp6;
    int32_t* esp7;
    void* ebp8;

    g0 = *reinterpret_cast<void**>(ebp6 - 12);
    esp7 = reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(ebp8) + 4 - 4);
    *esp7 = reinterpret_cast<int32_t>(__return_address());
    goto *esp7;
}

int32_t g3f2b088 = 0x7769a9c0;

int32_t fun_3f28769(void** ecx) {
    goto g3f2b088;
}

struct s23 {
    signed char[8] pad8;
    int32_t f8;
};

struct s24 {
    signed char[16] pad16;
    int32_t f16;
};

struct s25 {
    signed char[12] pad12;
    int32_t f12;
};

struct s26 {
    signed char[8] pad8;
    int32_t f8;
};

struct s27 {
    signed char[20] pad20;
    int32_t f20;
};

struct s28 {
    signed char[20] pad20;
    int32_t f20;
};

struct s29 {
    signed char[4] pad4;
    int32_t f4;
};

void fun_3f279de(void** ecx, int32_t a2, int32_t a3, int32_t a4, int32_t a5) {
    int32_t esi6;
    int32_t ebp7;
    int32_t edi8;
    struct s23* ebp9;
    int32_t ebp10;
    struct s24* ebp11;
    struct s25* ebp12;
    struct s26* ebp13;
    int32_t ecx14;
    struct s27* ebp15;
    struct s28* ebp16;
    int32_t ebp17;
    int32_t ebp18;
    struct s29* ebp19;

    fun_3f28270(ecx, 0x3f2eed0, 24);
    esi6 = 0;
    *reinterpret_cast<int32_t*>(ebp7 - 4) = 0;
    edi8 = ebp9->f8;
    while (*reinterpret_cast<int32_t*>(ebp10 - 36) = esi6, esi6 != ebp11->f16) {
        edi8 = edi8 - ebp12->f12;
        ebp13->f8 = edi8;
        ecx14 = ebp15->f20;
        image_base_(ecx14);
        ebp16->f20(edi8);
        ++esi6;
    }
    *reinterpret_cast<int32_t*>(ebp17 - 4) = -2;
    g0 = *reinterpret_cast<void**>(ebp18 - 16);
    goto ebp19->f4;
}

uint32_t g421112c;

uint32_t g3f30010 = 1;

uint32_t g4211130;

int32_t fun_3f282fb() {
    int32_t v1;
    int32_t eax2;
    uint32_t eax3;
    uint32_t edi4;
    uint32_t edi5;
    uint32_t ecx6;
    uint32_t eax7;
    uint32_t eax8;

    g421112c = 0;
    g3f30010 = g3f30010 | 1;
    eax2 = fun_3f287b7(10, v1);
    if (eax2) {
        if (__intrinsic() ^ 0x756e6547 | __intrinsic() ^ 0x6c65746e | __intrinsic() ^ 0x49656e69 || (eax3 = __intrinsic() & 0xfff3ff0, eax3 != 0x106c0) && (eax3 != 0x20660 && (eax3 != 0x20670 && (eax3 != 0x30650 && (eax3 != 0x30660 && eax3 != 0x30670))))) {
            edi4 = g4211130;
        } else {
            edi5 = g4211130;
            edi4 = edi5 | 1;
            g4211130 = edi4;
        }
        ecx6 = __intrinsic();
        if (__intrinsic() >= 7) {
            ecx6 = ecx6;
            if (__intrinsic() & 0x200) {
                g4211130 = edi4 | 2;
            }
        }
        eax7 = g3f30010;
        eax8 = eax7 | 2;
        g421112c = 1;
        g3f30010 = eax8;
        if (!(ecx6 & 0x100000) || ((g421112c = 2, g3f30010 = eax8 | 4, (ecx6 & 0x8000000) == 0) || !(ecx6 & 0x10000000))) {
        }
    }
    return 0;
}

signed char fun_3f287bd() {
    return 1;
}

int32_t g3f2b098 = 0x77697960;

void fun_3f28793() {
    goto g3f2b098;
}

signed char fun_3f27ba0() {
    fun_3f287bd();
    return 1;
}

int32_t g3f30014 = 1;

int32_t fun_3f284cf() {
    int32_t eax1;
    int1_t zf2;

    eax1 = 0;
    zf2 = g3f30014 == 0;
    *reinterpret_cast<unsigned char*>(&eax1) = reinterpret_cast<uint1_t>(!zf2);
    return eax1;
}

int32_t g3f2b0a0 = 0x77697930;

int32_t fun_3f28787(void** ecx) {
    goto g3f2b0a0;
}

struct s30 {
    signed char[8] pad8;
    int32_t f8;
    uint32_t f12;
    signed char[20] pad36;
    int32_t f36;
};

struct s31 {
    signed char[60] pad60;
    int32_t f60;
};

struct s32 {
    signed char[6] pad6;
    uint16_t f6;
    signed char[12] pad20;
    uint16_t f20;
};

struct s30* fun_3f27a6e(struct s31* a1, uint32_t a2) {
    struct s32* ecx3;
    struct s30* edx4;
    struct s30* esi5;
    struct s30* eax6;
    uint32_t ecx7;

    ecx3 = reinterpret_cast<struct s32*>(a1->f60 + reinterpret_cast<int32_t>(a1));
    edx4 = reinterpret_cast<struct s30*>(reinterpret_cast<int32_t>(ecx3) + 24 + ecx3->f20);
    esi5 = edx4 + ecx3->f6;
    if (edx4 == esi5) {
        addr_3f27aa9_2:
        eax6 = reinterpret_cast<struct s30*>(0);
    } else {
        ecx7 = a2;
        do {
            if (ecx7 < edx4->f12)
                continue;
            if (ecx7 < edx4->f8 + edx4->f12)
                goto addr_3f27aae_6;
            ++edx4;
        } while (edx4 != esi5);
        goto addr_3f27aa9_2;
    }
    addr_3f27aab_8:
    return eax6;
    addr_3f27aae_6:
    eax6 = edx4;
    goto addr_3f27aab_8;
}

int32_t g3f2b0b0 = 0x77696da0;

int32_t fun_3f28799() {
    goto g3f2b0b0;
}

uint32_t fun_3f27f13(void** ecx, uint32_t a2);

uint32_t fun_3f27e0c(void** ecx, int32_t a2);

unsigned char fun_3f27b1d();

unsigned char fun_3f27b3c();

uint32_t fun_3f27db9(void** ecx, int32_t a2, uint32_t a3, int32_t a4) {
    uint32_t eax5;
    uint32_t eax6;
    uint32_t eax7;
    uint32_t eax8;
    unsigned char al9;

    eax5 = a3;
    if (!eax5) {
        eax6 = fun_3f27f13(ecx, static_cast<uint32_t>(static_cast<unsigned char>(reinterpret_cast<uint1_t>(!!a4))));
    } else {
        eax7 = eax5 - 1;
        if (!eax7) {
            eax6 = fun_3f27e0c(ecx, a2);
        } else {
            eax8 = eax7 - 1;
            if (!eax8) {
                al9 = fun_3f27b1d();
                goto addr_3f27de4_7;
            } else {
                if (!(eax8 - 1)) {
                    al9 = fun_3f27b3c();
                    goto addr_3f27de4_7;
                } else {
                    eax6 = 1;
                    goto addr_3f27e08_11;
                }
            }
        }
    }
    addr_3f27e08_11:
    return eax6;
    addr_3f27de4_7:
    eax6 = al9;
    goto addr_3f27e08_11;
}

struct s33 {
    signed char[4] pad4;
    int32_t f4;
};

struct s33* g18;

int32_t g4210dec = 0;

signed char fun_3f27ab2(void** ecx) {
    int32_t eax2;
    struct s33* eax3;
    int32_t edx4;
    int1_t zf5;

    eax2 = fun_3f284cf();
    if (!eax2) {
        addr_3f27adc_2:
        return 0;
    } else {
        eax3 = g18;
        edx4 = eax3->f4;
        do {
            zf5 = g4210dec == edx4;
            if (zf5) {
                g4210dec = edx4;
            }
            if (!0)
                goto addr_3f27adc_2;
        } while (edx4);
    }
    return 1;
}

signed char fun_3f27be6(void** ecx, int32_t a2);

unsigned char fun_3f27b0f(void** ecx) {
    signed char al2;

    al2 = fun_3f27be6(ecx, 0);
    return static_cast<unsigned char>(reinterpret_cast<uint1_t>(!!al2));
}

void fun_3f286e1(void** ecx) {
    int32_t* esi2;
    int32_t edi3;

    esi2 = reinterpret_cast<int32_t*>(0x3f2d934);
    if (!1) {
        do {
            edi3 = *esi2;
            if (edi3) {
                image_base_(edi3);
                edi3(edi3);
            }
            ++esi2;
        } while (reinterpret_cast<uint32_t>(esi2) < 0x3f2d934);
    }
    return;
}

int32_t g3f2b040 = 0x77b886b0;

void fun_3f2869a(void** ecx) {
    g3f2b040();
    goto 0x4211138;
}

struct s34 {
    uint32_t f0;
    int32_t f4;
};

struct s34* fun_3f286b2();

struct s35 {
    uint32_t f0;
    int32_t f4;
};

struct s35* fun_3f286b8();

void fun_3f286be(void** ecx) {
    struct s34* eax2;
    int32_t ecx3;
    struct s35* eax4;
    int32_t ecx5;

    eax2 = fun_3f286b2();
    ecx3 = eax2->f4;
    eax2->f0 = eax2->f0 | 36;
    eax2->f4 = ecx3;
    eax4 = fun_3f286b8();
    ecx5 = eax4->f4;
    eax4->f0 = eax4->f0 | 2;
    eax4->f4 = ecx5;
    return;
}

int32_t g3f2b0b4 = 0x77696c20;

int32_t fun_3f287ab(void** ecx) {
    goto g3f2b0b4;
}

int32_t fun_3f284cb();

int32_t fun_3f2877b();

void fun_3f28781(int32_t ecx);

signed char fun_3f27ae4(void** ecx) {
    int32_t eax2;
    int32_t eax3;
    int32_t eax4;

    eax2 = fun_3f284cf();
    if (!eax2) {
        eax3 = fun_3f284cb();
        eax4 = fun_3f2877b();
        if (!eax4) {
            fun_3f28781(eax3);
        } else {
            return 0;
        }
    } else {
        fun_3f282fb();
    }
    return 1;
}

int32_t g3f2b094 = 0x77696ca0;

void fun_3f287a5(void** ecx) {
    goto g3f2b094;
}

int32_t* fun_3f286db(void** ecx) {
    return 0x4211294;
}

/* (image base) */
int16_t image_base_;

int32_t g3f2003c;

struct s36 {
    signed char[8] pad8;
    int32_t f8;
};

struct s37 {
    signed char[4] pad4;
    int32_t f4;
};

signed char fun_3f27c6d(void** ecx, int32_t* a2) {
    int32_t ebp3;
    int1_t zf4;
    int32_t eax5;
    uint32_t v6;
    struct s36* ebp7;
    struct s30* eax8;
    int32_t ebp9;
    int32_t ebp10;
    int32_t ebp11;
    struct s37* ebp12;

    fun_3f28270(ecx, 0x3f2eef0, 8);
    *reinterpret_cast<uint32_t*>(ebp3 - 4) = 0;
    zf4 = image_base_ == 0x5a4d;
    if (!zf4 || ((eax5 = g3f2003c, *reinterpret_cast<int32_t*>(eax5 + 0x3f20000) != 0x4550) || (*reinterpret_cast<int16_t*>(eax5 + 0x3f20018) != 0x10b || ((v6 = reinterpret_cast<uint32_t>(ebp7->f8 - 0x3f20000), eax8 = fun_3f27a6e(0x3f20000, v6), eax8 == 0) || eax8->f36 < 0)))) {
        *reinterpret_cast<int32_t*>(ebp9 - 4) = -2;
    } else {
        *reinterpret_cast<int32_t*>(ebp10 - 4) = -2;
    }
    g0 = *reinterpret_cast<void**>(ebp11 - 16);
    goto ebp12->f4;
}

int32_t fun_3f287c0();

int32_t g3f2b090 = 0x777105f0;

void fun_3f27b7d(void** ecx) {
    int32_t eax2;
    int32_t eax3;

    eax2 = fun_3f284cf();
    if (!eax2) {
        eax3 = fun_3f287c0();
        if (!eax3) {
            goto g3f2b090;
        } else {
            return;
        }
    } else {
        fun_3f28793();
        return;
    }
}

void fun_3f2875d();

void fun_3f286a6(void** ecx) {
    fun_3f2875d();
    return;
}

void fun_3f2870d(void** ecx) {
    int32_t* esi2;
    int32_t edi3;

    esi2 = reinterpret_cast<int32_t*>(0x3f2d93c);
    if (!1) {
        do {
            edi3 = *esi2;
            if (edi3) {
                image_base_(edi3);
                edi3(edi3);
            }
            ++esi2;
        } while (reinterpret_cast<uint32_t>(esi2) < 0x3f2d93c);
    }
    return;
}

int32_t fun_3f27d01(signed char a1);

int32_t fun_3f27fa8(void** ecx) {
    int32_t v2;
    int32_t ebp3;
    int32_t eax4;

    v2 = *reinterpret_cast<int32_t*>(ebp3 - 32);
    eax4 = fun_3f27d01(*reinterpret_cast<signed char*>(&v2));
    return eax4;
}

signed char g4210df0 = 0;

unsigned char fun_3f27d1e(void** ecx, int32_t a2, signed char a3) {
    int1_t zf4;

    zf4 = g4210df0 == 0;
    if (zf4 || !a3) {
        fun_3f287bd();
        fun_3f287bd();
    }
    return 1;
}

signed char fun_3f27fb5(int32_t ecx) {
    signed char al2;

    al2 = fun_3f27ba0();
    return al2;
}

int32_t g3f2b000 = 0x75f35ed0;

uint32_t fun_3f26f50(void** ecx, int32_t a2, uint32_t a3, int32_t a4) {
    uint32_t eax5;
    void** eax6;

    if (a3 != 1) {
        eax5 = 0;
    } else {
        eax6 = reinterpret_cast<void**>(g3f2b000());
        if (eax6) {
            fun_3f288fd(ecx, eax6, 0x3f30018, 0x2c6000);
            fun_3f278d6();
            fun_3f273a9(eax6);
            fun_3f27123(eax6);
            fun_3f270cf(eax6);
            fun_3f278f8(eax6);
            eax6 + 0x15f2a2(eax6, 1, 0);
        }
        eax5 = 1;
    }
    return eax5;
}

int32_t g3f2b0f8 = 0;

uint32_t fun_3f280c9(void** ecx, int32_t a2, uint32_t a3, int32_t a4) {
    int32_t esi5;

    esi5 = g3f2b0f8;
    if (esi5) {
        image_base_(esi5, a2, a3, a4);
        esi5(esi5, a2, a3, a4);
    }
    goto __return_address();
}

uint32_t fun_3f28602();

int32_t g3f30004 = 0x44bf19b1;

void fun_3f2864f() {
    uint32_t ecx1;
    uint32_t eax2;

    ecx1 = g3f30008;
    if (ecx1 == 0xbb40e64e || !(0xffff0000 & ecx1)) {
        eax2 = fun_3f28602();
        ecx1 = eax2;
        if (ecx1 != 0xbb40e64e) {
            if (!(0xffff0000 & ecx1)) {
                ecx1 = ecx1 | (eax2 | 0x4711) << 16;
            }
        } else {
            ecx1 = 0xbb40e64f;
        }
        g3f30008 = ecx1;
    }
    g3f30004 = reinterpret_cast<int32_t>(~ecx1);
    return;
}

struct s38 {
    signed char[12] pad12;
    uint32_t f12;
};

uint32_t g4210e0c;

struct s39 {
    signed char[16] pad16;
    int32_t f16;
};

struct s40 {
    signed char[16] pad16;
    int32_t f16;
};

struct s41 {
    signed char[8] pad8;
    int32_t f8;
};

struct s42 {
    signed char[8] pad8;
    int32_t f8;
};

struct s43 {
    signed char[8] pad8;
    int32_t f8;
};

struct s44 {
    signed char[8] pad8;
    int32_t f8;
};

struct s45 {
    signed char[8] pad8;
    int32_t f8;
};

struct s46 {
    signed char[8] pad8;
    int32_t f8;
};

struct s47 {
    signed char[4] pad4;
    int32_t f4;
};

struct s48 {
    signed char[8] pad8;
    int32_t f8;
};

struct s49 {
    signed char[8] pad8;
    int32_t f8;
};

void fun_3f27fc3(void** ecx, int32_t a2, int32_t a3, int32_t a4) {
    uint32_t edi5;
    struct s38* ebp6;
    int1_t less_or_equal7;
    int32_t ebp8;
    int32_t ebx9;
    struct s39* ebp10;
    struct s40* ebp11;
    int32_t v12;
    struct s41* ebp13;
    uint32_t eax14;
    int32_t ebp15;
    int32_t v16;
    struct s42* ebp17;
    uint32_t eax18;
    int32_t ebp19;
    int32_t ebp20;
    int32_t v21;
    struct s43* ebp22;
    uint32_t eax23;
    int32_t ebp24;
    int32_t v25;
    struct s44* ebp26;
    int32_t v27;
    struct s45* ebp28;
    int32_t v29;
    struct s46* ebp30;
    int32_t ebp31;
    struct s47* ebp32;
    int32_t v33;
    struct s48* ebp34;
    uint32_t eax35;
    int32_t ebp36;
    int32_t v37;
    struct s49* ebp38;
    uint32_t eax39;
    int32_t ebp40;

    fun_3f28270(ecx, 0x3f2ef58, 12);
    edi5 = ebp6->f12;
    if (edi5 || (less_or_equal7 = reinterpret_cast<int32_t>(g4210e0c) <= reinterpret_cast<int32_t>(edi5), !less_or_equal7)) {
        *reinterpret_cast<uint32_t*>(ebp8 - 4) = 0;
        if (edi5 != 1 && edi5 != 2) {
            ebx9 = ebp10->f16;
            goto addr_3f28029_4;
        }
        ebx9 = ebp11->f16;
        v12 = ebp13->f8;
        eax14 = fun_3f280c9(ecx, v12, edi5, ebx9);
        *reinterpret_cast<uint32_t*>(ebp15 - 28) = eax14;
        if (!eax14 || (v16 = ebp17->f8, eax18 = fun_3f27db9(ecx, v16, edi5, ebx9), *reinterpret_cast<uint32_t*>(ebp19 - 28) = eax18, eax18 == 0)) {
            addr_3f280b0_6:
            *reinterpret_cast<int32_t*>(ebp20 - 4) = -2;
        } else {
            addr_3f28029_4:
            v21 = ebp22->f8;
            eax23 = fun_3f26f50(ecx, v21, edi5, ebx9);
            *reinterpret_cast<uint32_t*>(ebp24 - 28) = eax23;
            if (edi5 == 1 && !eax23) {
                v25 = ebp26->f8;
                fun_3f26f50(ecx, v25, eax23, ebx9);
                v27 = ebp28->f8;
                fun_3f27db9(ecx, v27, eax23, ebx9);
                v29 = ebp30->f8;
                fun_3f280c9(ecx, v29, eax23, ebx9);
                goto addr_3f2805f_8;
            }
        }
    }
    g0 = *reinterpret_cast<void**>(ebp31 - 16);
    goto ebp32->f4;
    addr_3f2805f_8:
    if ((!edi5 || edi5 == 3) && (v33 = ebp34->f8, eax35 = fun_3f27db9(ecx, v33, edi5, ebx9), *reinterpret_cast<uint32_t*>(ebp36 - 28) = eax35, !!eax35)) {
        v37 = ebp38->f8;
        eax39 = fun_3f280c9(ecx, v37, edi5, ebx9);
        *reinterpret_cast<uint32_t*>(ebp40 - 28) = eax39;
        goto addr_3f280b0_6;
    }
}

int32_t g3f2b018 = 0x75f39ca0;

int32_t g3f2b03c = 0x75f56210;

int32_t g3f2b01c = 0x75f43bf0;

int32_t g3f2b020 = 0x75f3f420;

uint32_t fun_3f28117(int32_t a1, void* a2) {
    int32_t ebp3;

    g3f2b018(0, ebp3, __return_address());
    g3f2b03c(a1, 0, ebp3, __return_address());
    g3f2b01c();
    g3f2b020();
    goto 0xc0000409;
}

struct s18* fun_3f28238(struct s18* ecx) {
    ecx->f4 = 0;
    ecx->f8 = 0;
    ecx->f4 = reinterpret_cast<uint32_t>("bad allocation");
    ecx->f0 = 0x3f2b114;
    return ecx;
}

uint32_t g4211134;

void fun_3f285f5(int32_t a1, void* a2, int32_t a3, void* a4, int32_t a5, int32_t a6) {
    g4211134 = 0;
    return;
}

int32_t g3f2b078 = 0x74233c30;

int32_t fun_3f28757(void* a1, int32_t a2, int32_t a3, void* a4, int32_t a5, int32_t a6) {
    goto g3f2b078;
}

int32_t g3f2b038 = 0x75f35e60;

int32_t g3f2b034 = 0x75f31a60;

int32_t g3f2b030 = 0x75f43c00;

int32_t g3f2b02c = 0x75f37f40;

uint32_t fun_3f28602() {
    void* ebp1;
    void* v2;
    uint32_t eax3;
    uint32_t eax4;
    uint32_t v5;
    uint32_t v6;

    ebp1 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4);
    v2 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(ebp1) - 12);
    g3f2b038(v2);
    eax3 = reinterpret_cast<uint32_t>(g3f2b034(v2));
    eax4 = reinterpret_cast<uint32_t>(g3f2b030(v2));
    g3f2b02c(reinterpret_cast<int32_t>(ebp1) - 20, v2);
    return v5 ^ v6 ^ (eax3 ^ eax4) ^ reinterpret_cast<uint32_t>(reinterpret_cast<int32_t>(ebp1) - 4);
}

void fun_3f28895(void** a1) {
    void* esp2;
    int32_t* esp3;
    int32_t ebx4;
    int32_t* esp5;
    int32_t esi6;
    int32_t* esp7;
    int32_t edi8;
    void* ebp9;
    uint32_t eax10;
    uint32_t* esp11;
    int32_t* esp12;

    esp2 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4 - 4);
    esp3 = reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(esp2) - reinterpret_cast<unsigned char>(a1) - 4);
    *esp3 = ebx4;
    esp5 = esp3 - 1;
    *esp5 = esi6;
    esp7 = esp5 - 1;
    *esp7 = edi8;
    ebp9 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp2) + 12);
    eax10 = g3f30008;
    esp11 = reinterpret_cast<uint32_t*>(esp7 - 1);
    *esp11 = eax10 ^ reinterpret_cast<uint32_t>(ebp9);
    esp12 = reinterpret_cast<int32_t*>(esp11 - 1);
    *esp12 = reinterpret_cast<int32_t>(__return_address());
    g0 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp9) - 12);
    goto *esp12;
}

void fun_3f28270(void** ecx, int32_t a2, int32_t a3) {
    void* esp4;
    void* ebp5;
    int32_t* esp6;
    int32_t ebx7;
    int32_t* esp8;
    int32_t esi9;
    int32_t* esp10;
    int32_t edi11;
    uint32_t eax12;
    uint32_t* esp13;
    int32_t* esp14;

    esp4 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4 - 4);
    ebp5 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp4) + 16);
    esp6 = reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(esp4) - a3 - 4);
    *esp6 = ebx7;
    esp8 = esp6 - 1;
    *esp8 = esi9;
    esp10 = esp8 - 1;
    *esp10 = edi11;
    eax12 = g3f30008;
    esp13 = reinterpret_cast<uint32_t*>(esp10 - 1);
    *esp13 = eax12 ^ reinterpret_cast<uint32_t>(ebp5);
    esp14 = reinterpret_cast<int32_t*>(esp13 - 1);
    *esp14 = reinterpret_cast<int32_t>(__return_address());
    g0 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp5) - 16);
    goto *esp14;
}

int32_t g4210df4 = 0;

int32_t fun_3f2878d();

uint32_t fun_3f27d46(uint32_t a1) {
    int1_t zf2;
    int32_t eax3;
    uint32_t eax4;

    zf2 = g4210df4 == -1;
    if (!zf2) {
        eax3 = fun_3f2878d();
    } else {
        eax3 = fun_3f28799();
    }
    eax4 = reinterpret_cast<uint32_t>(-eax3);
    return ~(eax4 - (eax4 + reinterpret_cast<uint1_t>(eax4 < eax4 + reinterpret_cast<uint1_t>(!!eax3)))) & a1;
}

int32_t g3f2b080 = 0x7769e540;

void fun_3f285fd() {
    goto g3f2b080;
}

struct s18* fun_3f2703e(struct s18* ecx) {
    ecx->f4 = 0;
    ecx->f8 = 0;
    ecx->f4 = reinterpret_cast<uint32_t>("bad array new length");
    ecx->f0 = 0x3f2b130;
    return ecx;
}

struct s50 {
    void** f0;
    signed char[3] pad4;
    void** f4;
    signed char[3] pad8;
    void** f8;
};

void fun_3f27563(struct s50* ecx) {
    struct s50* edi2;
    struct s50* v3;
    void** esi4;
    void** ebx5;

    edi2 = ecx;
    v3 = edi2;
    esi4 = edi2->f0;
    if (esi4) {
        ebx5 = edi2->f4;
        if (esi4 != ebx5) {
            do {
                fun_3f27459(esi4 + 24);
                fun_3f274e8(esi4);
                esi4 = esi4 + 36;
            } while (esi4 != ebx5);
            edi2 = v3;
            esi4 = edi2->f0;
        }
        __asm__("cdq ");
        fun_3f276e5(esi4);
        edi2->f0 = reinterpret_cast<void**>(0);
        edi2->f4 = reinterpret_cast<void**>(0);
        edi2->f8 = reinterpret_cast<void**>(0);
    }
    return;
}

void fun_3f2774f(void** ecx, void** a2) {
    void** esi3;
    void** edi4;
    void** eax5;
    int32_t esi6;
    int32_t ebp7;
    void** eax8;
    void* ebp9;
    struct s18* ecx10;
    int32_t eax11;

    g3f2b048();
    if (reinterpret_cast<uint32_t>(__return_address()) <= 0x3fffffff) {
        esi3 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(__return_address()) << 2);
        eax5 = fun_3f2778d(esi3, edi4);
        *reinterpret_cast<void***>(ecx) = eax5;
        *reinterpret_cast<void***>(ecx + 4) = eax5;
        *reinterpret_cast<void***>(ecx + 8) = reinterpret_cast<void**>(reinterpret_cast<unsigned char>(eax5) + reinterpret_cast<unsigned char>(esi3));
        return;
    }
    fun_3f27056(edi4);
    if (reinterpret_cast<unsigned char>(ecx) >= reinterpret_cast<unsigned char>(0x1000))
        goto addr_3f27795_6;
    if (!ecx) {
        goto esi6;
    } else {
        fun_3f27929(ecx);
        goto ebp7;
    }
    addr_3f27795_6:
    eax8 = ecx + 35;
    if (reinterpret_cast<unsigned char>(eax8) <= reinterpret_cast<unsigned char>(ecx)) {
        ebp9 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4 - 4 + 4 - 4 - 4 - 4 - 4 + 4 + 4 - 4);
        ecx10 = reinterpret_cast<struct s18*>(reinterpret_cast<int32_t>(ebp9) - 12);
        fun_3f2703e(ecx10);
        fun_3f2874b(ecx10);
        fun_3f26fc3(ecx10, 0x3f2efd8);
        goto reinterpret_cast<int32_t>(ebp9) - 12;
    } else {
        eax11 = fun_3f27929(eax8);
        if (!eax11) {
            goto g3f2b0b8;
        } else {
            *reinterpret_cast<int32_t*>((reinterpret_cast<uint32_t>(eax11 + 35) & 0xffffffe0) - 4) = eax11;
            goto ebp7;
        }
    }
}

struct s51 {
    void** f0;
    signed char[3] pad4;
    void** f4;
    signed char[3] pad8;
    void** f8;
};

void** fun_3f27657(void** ecx, void** a2, void** a3, void** a4) {
    void** esi5;
    void** ecx6;
    void** edx7;
    void* v8;
    void** eax9;
    void** ecx10;
    void** edi11;
    void** eax12;
    void** ecx13;
    uint32_t edx14;
    int32_t esi15;
    struct s51** ecx16;
    struct s51* esi17;
    void** ecx18;

    esi5 = reinterpret_cast<void**>(0x7fffffff);
    if (reinterpret_cast<unsigned char>(a2) <= reinterpret_cast<unsigned char>(0x7fffffff)) {
        ecx6 = *reinterpret_cast<void***>(ecx + 20);
        edx7 = reinterpret_cast<void**>(reinterpret_cast<unsigned char>(a2) | 15);
        if (reinterpret_cast<unsigned char>(edx7) <= reinterpret_cast<unsigned char>(0x7fffffff) && ((v8 = reinterpret_cast<void*>(reinterpret_cast<unsigned char>(ecx6) >> 1), reinterpret_cast<unsigned char>(ecx6) <= reinterpret_cast<unsigned char>(0x7fffffff - reinterpret_cast<uint32_t>(v8))) && (esi5 = edx7, eax9 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(v8) + reinterpret_cast<unsigned char>(ecx6)), reinterpret_cast<unsigned char>(edx7) < reinterpret_cast<unsigned char>(eax9)))) {
            esi5 = eax9;
        }
        ecx10 = esi5 + 1;
        eax12 = fun_3f2778d(ecx10, edi11);
        *reinterpret_cast<void***>(ecx + 16) = a2;
        *reinterpret_cast<void***>(ecx + 20) = esi5;
        fun_3f288fd(ecx10, eax12, a4, a2);
        *reinterpret_cast<signed char*>(reinterpret_cast<unsigned char>(eax12) + reinterpret_cast<unsigned char>(a2)) = 0;
        if (reinterpret_cast<unsigned char>(ecx6) >= reinterpret_cast<unsigned char>(16)) {
            ecx13 = *reinterpret_cast<void***>(ecx);
            fun_3f276e5(ecx13);
        }
        *reinterpret_cast<void***>(ecx) = eax12;
        return ecx;
    }
    fun_3f27743(ecx, edi11);
    if (edx14 >= 0x1000)
        goto addr_3f276ed_9;
    addr_3f27701_10:
    fun_3f27d88(ecx, ecx);
    goto esi15;
    addr_3f276ed_9:
    ecx16 = reinterpret_cast<struct s51**>(reinterpret_cast<unsigned char>(ecx) - reinterpret_cast<unsigned char>(*reinterpret_cast<void***>(ecx + 0xfffffffc)));
    if (reinterpret_cast<uint32_t>(ecx16 + 0xffffffff) > 31) {
        g3f2b0b8();
        esi17 = *ecx16;
        if (!esi17)
            goto addr_3f27736_13;
        ecx18 = esi17->f0;
        if (ecx18)
            goto addr_3f2771f_15;
    } else {
        ecx = *reinterpret_cast<void***>(ecx + 0xfffffffc);
        goto addr_3f27701_10;
    }
    addr_3f27736_13:
    goto 0x7fffffff;
    addr_3f2771f_15:
    fun_3f276e5(ecx18);
    esi17->f0 = reinterpret_cast<void**>(0);
    esi17->f4 = reinterpret_cast<void**>(0);
    esi17->f8 = reinterpret_cast<void**>(0);
    goto addr_3f27736_13;
}

void fun_3f28861(void** a1) {
    void* esp2;
    int32_t* esp3;
    int32_t ebx4;
    int32_t* esp5;
    int32_t esi6;
    int32_t* esp7;
    int32_t edi8;
    void* ebp9;
    uint32_t eax10;
    uint32_t* esp11;
    int32_t* esp12;

    esp2 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4 - 4);
    esp3 = reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(esp2) - reinterpret_cast<unsigned char>(a1) - 4);
    *esp3 = ebx4;
    esp5 = esp3 - 1;
    *esp5 = esi6;
    esp7 = esp5 - 1;
    *esp7 = edi8;
    ebp9 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(esp2) + 12);
    eax10 = g3f30008;
    esp11 = reinterpret_cast<uint32_t*>(esp7 - 1);
    *esp11 = eax10 ^ reinterpret_cast<uint32_t>(ebp9);
    esp12 = reinterpret_cast<int32_t*>(esp11 - 1);
    *esp12 = reinterpret_cast<int32_t>(__return_address());
    g0 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp9) - 12);
    goto *esp12;
}

int32_t g3f2b050 = 0x74237a70;

void fun_3f2874b(struct s18* ecx) {
    goto g3f2b050;
}

struct s52 {
    uint32_t f0;
    uint32_t f4;
};

int32_t g3f2b064 = 0x74237850;

struct s18* fun_3f26fc3(struct s18* ecx, int32_t a2) {
    struct s52* eax3;

    eax3 = reinterpret_cast<struct s52*>(&ecx->f4);
    ecx->f0 = 0x3f2b108;
    eax3->f0 = 0;
    eax3->f4 = 0;
    g3f2b064();
    return ecx;
}

void fun_3f28850(void** ecx, int32_t a2, void** a3, void* a4, void** a5) {
    uint32_t ecx6;
    int32_t ebp7;
    uint32_t ebp8;
    int32_t ebp9;
    void** esp10;
    void* ebp11;

    ecx6 = *reinterpret_cast<uint32_t*>(ebp7 - 16) ^ ebp8;
    fun_3f27918(ecx6, __return_address(), a2, a3);
    g0 = *reinterpret_cast<void**>(ebp9 - 12);
    esp10 = reinterpret_cast<void**>(reinterpret_cast<int32_t>(ebp11) + 4 - 4);
    *esp10 = __return_address();
    goto *esp10;
}

int32_t g3f2b0ac = 0x7770da80;

void fun_3f2876f() {
    goto g3f2b0ac;
}

int32_t g3f2b084 = 0x77708d60;

int32_t fun_3f28763(void** ecx) {
    goto g3f2b084;
}

struct s53 {
    signed char[20] pad20;
    int32_t f20;
};

void fun_3f279ce(void** ecx) {
    signed char al2;
    int32_t v3;
    struct s53* ebp4;
    int32_t esi5;
    int32_t ebx6;
    int32_t edi7;

    if (!al2) {
        v3 = ebp4->f20;
        fun_3f279de(ecx, esi5, ebx6, edi7, v3);
    }
    return;
}

int32_t g3f2b024 = 0x75f38a80;

int32_t fun_3f287b7(void* a1, int32_t a2) {
    goto g3f2b024;
}

int32_t fun_3f284cb() {
    return 1;
}

int32_t g3f2b0a4 = 0x776ad7c0;

int32_t fun_3f2877b() {
    goto g3f2b0a4;
}

int32_t g3f2b0bc = 0x77692fb0;

void fun_3f28781(int32_t ecx) {
    goto g3f2b0bc;
}

int32_t fun_3f287c0() {
    return 0;
}

unsigned char fun_3f27b3c() {
    fun_3f287bd();
    fun_3f287bd();
    return 1;
}

int32_t g3f2b0a8 = 0x7770c5e0;

void fun_3f28775(int32_t ecx) {
    goto g3f2b0a8;
}

signed char fun_3f27bad(void** a1) {
    signed char al2;
    signed char al3;

    if (!a1) {
        g4210df0 = 1;
    }
    fun_3f282fb();
    al2 = fun_3f287bd();
    if (al2) {
        al3 = fun_3f287bd();
        if (al3) {
            return 1;
        } else {
            fun_3f287bd();
        }
    }
    return 0;
}

signed char g4210df1 = 0;

int32_t g4210df8 = 0;

int32_t g4210dfc = 0;

int32_t g4210e00;

int32_t g4210e04;

int32_t g4210e08;

void fun_3f284db(void** ecx, int32_t a2);

signed char fun_3f27be6(void** ecx, int32_t a2) {
    int1_t zf3;
    int32_t eax4;
    int32_t eax5;
    int32_t eax6;
    signed char al7;
    int1_t zf8;
    int32_t eax9;
    struct s30* eax10;
    signed char al11;

    zf3 = g4210df1 == 0;
    if (!zf3) {
        return 1;
    }
    if (!a2 || a2 == 1) {
        eax4 = fun_3f284cf();
        if (!eax4 || a2) {
            g4210df4 = -1;
            g4210df8 = -1;
            g4210dfc = -1;
            g4210e00 = -1;
            g4210e04 = -1;
            g4210e08 = -1;
            goto addr_3f27c59_6;
        } else {
            eax5 = fun_3f28787(ecx);
            if (eax5 || (eax6 = fun_3f28787(0x4210df4), !!eax6)) {
                al7 = 0;
            } else {
                addr_3f27c59_6:
                g4210df1 = 1;
                al7 = 1;
            }
            return al7;
        }
    }
    fun_3f284db(ecx, 5);
    fun_3f28270(ecx, 0x3f2eef0, 8);
    zf8 = image_base_ == 0x5a4d;
    if (!zf8)
        goto addr_3f27ce8_12;
    eax9 = g3f2003c;
    if (*reinterpret_cast<int32_t*>(eax9 + 0x3f20000) != 0x4550)
        goto addr_3f27ce8_12;
    if (*reinterpret_cast<int16_t*>(eax9 + 0x3f20018) != 0x10b)
        goto addr_3f27ce8_12;
    eax10 = fun_3f27a6e(0x3f20000, a2 - 0x3f20000);
    if (!eax10)
        goto addr_3f27ce8_12;
    if (eax10->f36 >= 0)
        goto addr_3f27cc7_17;
    addr_3f27ce8_12:
    al11 = 0;
    addr_3f27cf1_18:
    g0 = reinterpret_cast<void*>(0x3f2eef0);
    return al11;
    addr_3f27cc7_17:
    al11 = 1;
    goto addr_3f27cf1_18;
}

int32_t g3f2b028 = 0x75f3a480;

void fun_3f284db(void** ecx, int32_t a2) {
    void* ebp3;
    int32_t ebx4;
    int32_t eax5;
    void* v6;
    int32_t v7;
    int32_t v8;
    int32_t v9;
    int32_t eax10;
    int32_t ebx11;
    int32_t ebx12;
    int32_t eax13;

    ebp3 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4);
    eax5 = fun_3f287b7(23, ebx4);
    if (eax5) {
        __asm__("int 0x29");
    }
    fun_3f285f5(3, 23, ebx4, v6, v7, v8);
    fun_3f28757(reinterpret_cast<int32_t>(ebp3) - 0x324, 0, 0x2cc, 23, ebx4, v9);
    fun_3f28757(reinterpret_cast<int32_t>(ebp3) - 88, 0, 80, 23, ebx4, 0x10001);
    eax10 = reinterpret_cast<int32_t>(g3f2b028(23, ebx4, 0x10001));
    ebx11 = eax10 - 1;
    ebx12 = -ebx11;
    g3f2b018(0, 23, ebx4, 0x10001);
    eax13 = reinterpret_cast<int32_t>(g3f2b03c());
    if (!eax13 && !(reinterpret_cast<unsigned char>(*reinterpret_cast<unsigned char*>(&ebx12) - reinterpret_cast<unsigned char>(*reinterpret_cast<unsigned char*>(&ebx12) + (*reinterpret_cast<unsigned char*>(&ebx12) < reinterpret_cast<unsigned char>(*reinterpret_cast<unsigned char*>(&ebx12) + reinterpret_cast<uint1_t>(!!ebx11))))) + 1)) {
        fun_3f285f5(3, reinterpret_cast<int32_t>(ebp3) - 8, 0, 23, ebx4, 0x10001);
    }
    return;
}

int32_t g3f2b09c = 0x7769e5a0;

int32_t fun_3f2878d() {
    goto g3f2b09c;
}

int32_t fun_3f27d01(signed char a1) {
    int32_t eax2;
    int32_t tmp32_3;

    eax2 = fun_3f284cf();
    if (eax2 && !a1) {
        tmp32_3 = g4210dec;
        g4210dec = 0;
        eax2 = tmp32_3;
    }
    return eax2;
}

uint32_t g4210de8 = 0;

int32_t fun_3f27eef(void** ecx);

struct s54 {
    signed char[4] pad4;
    int32_t f4;
};

struct s55 {
    signed char[12] pad12;
    uint32_t f12;
};

struct s56 {
    signed char[8] pad8;
    int32_t f8;
};

struct s57 {
    signed char[16] pad16;
    int32_t f16;
};

struct s58 {
    signed char[16] pad16;
    int32_t f16;
};

struct s59 {
    signed char[8] pad8;
    int32_t f8;
};

struct s60 {
    signed char[8] pad8;
    int32_t f8;
};

struct s61 {
    signed char[8] pad8;
    int32_t f8;
};

struct s62 {
    signed char[8] pad8;
    int32_t f8;
};

struct s63 {
    signed char[8] pad8;
    int32_t f8;
};

struct s64 {
    signed char[8] pad8;
    int32_t f8;
};

struct s65 {
    signed char[4] pad4;
    int32_t f4;
};

struct s66 {
    signed char[8] pad8;
    int32_t f8;
};

struct s67 {
    signed char[8] pad8;
    int32_t f8;
};

struct s68 {
    signed char[4] pad4;
    int32_t f4;
};

struct s69 {
    signed char[12] pad12;
    int32_t f12;
};

struct s70 {
    signed char[8] pad8;
    int32_t f8;
};

uint32_t fun_3f27e0c(void** ecx, int32_t a2) {
    signed char al3;
    void** ecx4;
    signed char al5;
    int32_t ebp6;
    signed char bl7;
    int32_t ebp8;
    int32_t ebp9;
    int1_t zf10;
    uint32_t eax11;
    unsigned char al12;
    int32_t eax13;
    signed char al14;
    int32_t ebp15;
    int32_t ebp16;
    int32_t ebp17;
    struct s54* ebp18;
    int32_t ebp19;
    int32_t ebp20;
    signed char al21;
    int32_t ebp22;
    int32_t ebp23;
    int1_t zf24;
    uint32_t edi25;
    struct s55* ebp26;
    int1_t less_or_equal27;
    int32_t ebp28;
    int32_t v29;
    struct s56* ebp30;
    unsigned char al31;
    uint32_t esi32;
    uint32_t esi33;
    int32_t ebp34;
    int32_t ebp35;
    int32_t ebp36;
    int32_t ebx37;
    struct s57* ebp38;
    struct s58* ebp39;
    int32_t v40;
    struct s59* ebp41;
    uint32_t eax42;
    int32_t ebp43;
    int32_t v44;
    struct s60* ebp45;
    uint32_t eax46;
    int32_t ebp47;
    int32_t ebp48;
    int32_t v49;
    struct s61* ebp50;
    uint32_t eax51;
    int32_t ebp52;
    int32_t v53;
    struct s62* ebp54;
    int32_t v55;
    struct s63* ebp56;
    int32_t v57;
    struct s64* ebp58;
    int32_t ebp59;
    struct s65* ebp60;
    int32_t v61;
    struct s66* ebp62;
    uint32_t eax63;
    int32_t ebp64;
    int32_t v65;
    struct s67* ebp66;
    uint32_t eax67;
    int32_t ebp68;
    int32_t ebp69;
    struct s68* ebp70;
    int32_t* eax71;
    signed char al72;
    int32_t v73;
    struct s69* ebp74;
    int32_t v75;
    struct s70* ebp76;
    int32_t esi77;

    fun_3f28270(ecx, 0x3f2ef10, 16);
    al3 = fun_3f27bad(0);
    ecx4 = reinterpret_cast<void**>(0);
    if (!al3) {
        addr_3f27ef9_2:
    } else {
        al5 = fun_3f27ab2(0);
        *reinterpret_cast<signed char*>(ebp6 - 29) = al5;
        bl7 = 1;
        *reinterpret_cast<signed char*>(ebp8 - 25) = 1;
        *reinterpret_cast<uint32_t*>(ebp9 - 4) = 0;
        zf10 = g4210de8 == 0;
        if (!zf10) {
            fun_3f284db(0, 7);
            fun_3f28270(0, 0x3f2ef30, 16);
            eax11 = g4210e0c;
            if (!reinterpret_cast<uint1_t>(reinterpret_cast<uint1_t>(reinterpret_cast<int32_t>(eax11) < reinterpret_cast<int32_t>(0)) | reinterpret_cast<uint1_t>(eax11 == 0)))
                goto addr_3f27f2c_6; else
                goto addr_3f27f28_7;
        } else {
            g4210de8 = 1;
            al12 = fun_3f27b0f(0);
            if (al12 && ((fun_3f286e1(0), fun_3f2869a(0), fun_3f286be(0), eax13 = fun_3f287ab(0), ecx4 = reinterpret_cast<void**>(0x3f2b0d8), !eax13) && (al14 = fun_3f27ae4(0x3f2b0d8), !!al14))) {
                fun_3f287a5(0x3f2b0d8);
                ecx4 = reinterpret_cast<void**>(0x3f2b0d0);
                g4210de8 = 2;
                bl7 = 0;
                *reinterpret_cast<signed char*>(ebp15 - 25) = 0;
            }
            *reinterpret_cast<int32_t*>(ebp16 - 4) = -2;
            fun_3f27eef(ecx4);
            if (bl7)
                goto addr_3f27ef9_2; else
                goto addr_3f27eb6_11;
        }
    }
    addr_3f27efb_12:
    g0 = *reinterpret_cast<void**>(ebp17 - 16);
    goto ebp18->f4;
    addr_3f27f2c_6:
    g4210e0c = eax11 - 1;
    *reinterpret_cast<uint32_t*>(ebp19 - 28) = 1;
    *reinterpret_cast<uint32_t*>(ebp20 - 4) = 0;
    al21 = fun_3f27ab2(0);
    *reinterpret_cast<signed char*>(ebp22 - 32) = al21;
    *reinterpret_cast<uint32_t*>(ebp23 - 4) = 1;
    zf24 = g4210de8 == 2;
    if (!zf24) {
        fun_3f284db(0, 7);
        fun_3f28270(0, 0x3f2ef58, 12);
        edi25 = ebp26->f12;
        if (edi25)
            goto addr_3f27fe5_15;
        less_or_equal27 = reinterpret_cast<int32_t>(g4210e0c) <= reinterpret_cast<int32_t>(edi25);
        if (less_or_equal27)
            goto addr_3f27fde_17;
    } else {
        fun_3f27b7d(0);
        fun_3f286a6(0);
        fun_3f2870d(0);
        g4210de8 = 0;
        *reinterpret_cast<uint32_t*>(ebp28 - 4) = 0;
        fun_3f27fa8(0);
        v29 = ebp30->f8;
        al31 = fun_3f27d1e(0, v29, 0);
        esi32 = al31;
        esi33 = -esi32;
        *reinterpret_cast<uint32_t*>(ebp34 - 28) = esi33 - (esi33 + reinterpret_cast<uint1_t>(esi33 < esi33 + reinterpret_cast<uint1_t>(!!esi32))) & 1;
        *reinterpret_cast<int32_t*>(ebp35 - 4) = -2;
        fun_3f27fb5(0);
        goto addr_3f27f95_19;
    }
    addr_3f27fe5_15:
    *reinterpret_cast<uint32_t*>(ebp36 - 4) = 0;
    if (edi25 != 1 && edi25 != 2) {
        ebx37 = ebp38->f16;
        goto addr_3f28029_21;
    }
    ebx37 = ebp39->f16;
    v40 = ebp41->f8;
    eax42 = fun_3f280c9(0, v40, edi25, ebx37);
    *reinterpret_cast<uint32_t*>(ebp43 - 28) = eax42;
    if (!eax42 || (v44 = ebp45->f8, eax46 = fun_3f27db9(0, v44, edi25, ebx37), *reinterpret_cast<uint32_t*>(ebp47 - 28) = eax46, eax46 == 0)) {
        addr_3f280b0_23:
        *reinterpret_cast<int32_t*>(ebp48 - 4) = -2;
    } else {
        addr_3f28029_21:
        v49 = ebp50->f8;
        eax51 = fun_3f26f50(0, v49, edi25, ebx37);
        *reinterpret_cast<uint32_t*>(ebp52 - 28) = eax51;
        if (edi25 == 1 && !eax51) {
            v53 = ebp54->f8;
            fun_3f26f50(0, v53, eax51, ebx37);
            v55 = ebp56->f8;
            fun_3f27db9(0, v55, eax51, ebx37);
            v57 = ebp58->f8;
            fun_3f280c9(0, v57, eax51, ebx37);
            goto addr_3f2805f_25;
        }
    }
    addr_3f280b9_26:
    g0 = *reinterpret_cast<void**>(ebp59 - 16);
    goto ebp60->f4;
    addr_3f2805f_25:
    if ((!edi25 || edi25 == 3) && (v61 = ebp62->f8, eax63 = fun_3f27db9(0, v61, edi25, ebx37), *reinterpret_cast<uint32_t*>(ebp64 - 28) = eax63, !!eax63)) {
        v65 = ebp66->f8;
        eax67 = fun_3f280c9(0, v65, edi25, ebx37);
        *reinterpret_cast<uint32_t*>(ebp68 - 28) = eax67;
        goto addr_3f280b0_23;
    }
    addr_3f27fde_17:
    goto addr_3f280b9_26;
    addr_3f27f95_19:
    g0 = *reinterpret_cast<void**>(ebp69 - 16);
    goto ebp70->f4;
    addr_3f27f28_7:
    goto addr_3f27f95_19;
    addr_3f27eb6_11:
    eax71 = fun_3f286db(ecx4);
    if (*eax71 && (al72 = fun_3f27c6d(ecx4, eax71), !!al72)) {
        v73 = ebp74->f12;
        v75 = ebp76->f8;
        esi77 = *eax71;
        image_base_(esi77, v75, 2, v73);
        esi77(esi77, v75, 2, v73);
    }
    ++g4210e0c;
    goto addr_3f27efb_12;
}

unsigned char fun_3f27b1d() {
    signed char al1;
    signed char al2;

    al1 = fun_3f287bd();
    if (al1) {
        al2 = fun_3f287bd();
        if (al2) {
            return 1;
        } else {
            fun_3f287bd();
        }
    }
    return 0;
}

int32_t fun_3f27eef(void** ecx) {
    int32_t v2;
    int32_t ebp3;
    int32_t eax4;

    v2 = *reinterpret_cast<int32_t*>(ebp3 - 29);
    eax4 = fun_3f27d01(*reinterpret_cast<signed char*>(&v2));
    return eax4;
}

struct s34* fun_3f286b2() {
    return 0x4211140;
}

struct s35* fun_3f286b8() {
    return 0x4211148;
}

int32_t g3f2b05c = 0x74237940;

void fun_3f2875d() {
    goto g3f2b05c;
}

void fun_3f27b49(int32_t a1, int32_t a2, int32_t a3, int32_t a4, int32_t a5, int32_t** a6) {
    int32_t eax7;
    int32_t ecx8;

    eax7 = fun_3f284cf();
    if (!eax7 && a2 == 1) {
        ecx8 = a4;
        image_base_(ecx8, a1, eax7, a3);
        a4(ecx8, a1, eax7, a3);
    }
    fun_3f28775(ecx8);
    return;
}

int32_t g3f2b058 = 0x74235fb0;

int32_t* fun_3f2873f() {
    goto g3f2b058;
}

int32_t g3f2b070 = 0x74234380;

void fun_3f28751(int32_t a1, int32_t a2, int32_t* a3, int32_t a4, int32_t a5, int32_t a6, int32_t a7) {
    goto g3f2b070;
}

int32_t g3f2b054 = 0x74235fc0;

int32_t* fun_3f28745() {
    goto g3f2b054;
}

int32_t fun_3f287c3(int32_t ecx, int32_t a2) {
    int1_t less3;

    less3 = reinterpret_cast<int32_t>(g421112c) < reinterpret_cast<int32_t>(1);
    if (less3 || a2 != 0xc00002b4 && a2 != 0xc00002b5) {
        return a2;
    }
}

struct s71 {
    signed char[12] pad12;
    uint32_t f12;
};

struct s72 {
    signed char[8] pad8;
    int32_t f8;
};

struct s73 {
    signed char[16] pad16;
    int32_t f16;
};

struct s74 {
    signed char[16] pad16;
    int32_t f16;
};

struct s75 {
    signed char[8] pad8;
    int32_t f8;
};

struct s76 {
    signed char[8] pad8;
    int32_t f8;
};

struct s77 {
    signed char[8] pad8;
    int32_t f8;
};

struct s78 {
    signed char[8] pad8;
    int32_t f8;
};

struct s79 {
    signed char[8] pad8;
    int32_t f8;
};

struct s80 {
    signed char[8] pad8;
    int32_t f8;
};

struct s81 {
    signed char[4] pad4;
    int32_t f4;
};

struct s82 {
    signed char[8] pad8;
    int32_t f8;
};

struct s83 {
    signed char[8] pad8;
    int32_t f8;
};

struct s84 {
    signed char[4] pad4;
    int32_t f4;
};

uint32_t fun_3f27f13(void** ecx, uint32_t a2) {
    uint32_t eax3;
    int32_t ebp4;
    int32_t ebp5;
    signed char al6;
    int32_t ebp7;
    int32_t ebp8;
    int1_t zf9;
    uint32_t edi10;
    struct s71* ebp11;
    int1_t less_or_equal12;
    int32_t ebp13;
    int32_t v14;
    struct s72* ebp15;
    unsigned char al16;
    uint32_t esi17;
    uint32_t esi18;
    int32_t ebp19;
    int32_t ebp20;
    int32_t ebp21;
    int32_t ebx22;
    struct s73* ebp23;
    struct s74* ebp24;
    int32_t v25;
    struct s75* ebp26;
    uint32_t eax27;
    int32_t ebp28;
    int32_t v29;
    struct s76* ebp30;
    uint32_t eax31;
    int32_t ebp32;
    int32_t ebp33;
    int32_t v34;
    struct s77* ebp35;
    uint32_t eax36;
    int32_t ebp37;
    int32_t v38;
    struct s78* ebp39;
    int32_t v40;
    struct s79* ebp41;
    int32_t v42;
    struct s80* ebp43;
    int32_t ebp44;
    struct s81* ebp45;
    int32_t v46;
    struct s82* ebp47;
    uint32_t eax48;
    int32_t ebp49;
    int32_t v50;
    struct s83* ebp51;
    uint32_t eax52;
    int32_t ebp53;
    int32_t ebp54;
    struct s84* ebp55;

    fun_3f28270(ecx, 0x3f2ef30, 16);
    eax3 = g4210e0c;
    if (!reinterpret_cast<uint1_t>(reinterpret_cast<uint1_t>(reinterpret_cast<int32_t>(eax3) < reinterpret_cast<int32_t>(0)) | reinterpret_cast<uint1_t>(eax3 == 0))) {
        g4210e0c = eax3 - 1;
        *reinterpret_cast<uint32_t*>(ebp4 - 28) = 1;
        *reinterpret_cast<uint32_t*>(ebp5 - 4) = 0;
        al6 = fun_3f27ab2(ecx);
        *reinterpret_cast<signed char*>(ebp7 - 32) = al6;
        *reinterpret_cast<uint32_t*>(ebp8 - 4) = 1;
        zf9 = g4210de8 == 2;
        if (!zf9) {
            fun_3f284db(ecx, 7);
            fun_3f28270(ecx, 0x3f2ef58, 12);
            edi10 = ebp11->f12;
            if (edi10)
                goto addr_3f27fe5_5;
            less_or_equal12 = reinterpret_cast<int32_t>(g4210e0c) <= reinterpret_cast<int32_t>(edi10);
            if (less_or_equal12)
                goto addr_3f27fde_7;
        } else {
            fun_3f27b7d(ecx);
            fun_3f286a6(ecx);
            fun_3f2870d(ecx);
            g4210de8 = 0;
            *reinterpret_cast<uint32_t*>(ebp13 - 4) = 0;
            fun_3f27fa8(ecx);
            v14 = ebp15->f8;
            al16 = fun_3f27d1e(ecx, v14, 0);
            esi17 = al16;
            esi18 = -esi17;
            *reinterpret_cast<uint32_t*>(ebp19 - 28) = esi18 - (esi18 + reinterpret_cast<uint1_t>(esi18 < esi18 + reinterpret_cast<uint1_t>(!!esi17))) & 1;
            *reinterpret_cast<int32_t*>(ebp20 - 4) = -2;
            fun_3f27fb5(0);
            goto addr_3f27f95_9;
        }
    } else {
        goto addr_3f27f95_9;
    }
    addr_3f27fe5_5:
    *reinterpret_cast<uint32_t*>(ebp21 - 4) = 0;
    if (edi10 != 1 && edi10 != 2) {
        ebx22 = ebp23->f16;
        goto addr_3f28029_12;
    }
    ebx22 = ebp24->f16;
    v25 = ebp26->f8;
    eax27 = fun_3f280c9(ecx, v25, edi10, ebx22);
    *reinterpret_cast<uint32_t*>(ebp28 - 28) = eax27;
    if (!eax27 || (v29 = ebp30->f8, eax31 = fun_3f27db9(ecx, v29, edi10, ebx22), *reinterpret_cast<uint32_t*>(ebp32 - 28) = eax31, eax31 == 0)) {
        addr_3f280b0_14:
        *reinterpret_cast<int32_t*>(ebp33 - 4) = -2;
    } else {
        addr_3f28029_12:
        v34 = ebp35->f8;
        eax36 = fun_3f26f50(ecx, v34, edi10, ebx22);
        *reinterpret_cast<uint32_t*>(ebp37 - 28) = eax36;
        if (edi10 == 1 && !eax36) {
            v38 = ebp39->f8;
            fun_3f26f50(ecx, v38, eax36, ebx22);
            v40 = ebp41->f8;
            fun_3f27db9(ecx, v40, eax36, ebx22);
            v42 = ebp43->f8;
            fun_3f280c9(ecx, v42, eax36, ebx22);
            goto addr_3f2805f_16;
        }
    }
    addr_3f280b9_17:
    g0 = *reinterpret_cast<void**>(ebp44 - 16);
    goto ebp45->f4;
    addr_3f2805f_16:
    if ((!edi10 || edi10 == 3) && (v46 = ebp47->f8, eax48 = fun_3f27db9(ecx, v46, edi10, ebx22), *reinterpret_cast<uint32_t*>(ebp49 - 28) = eax48, !!eax48)) {
        v50 = ebp51->f8;
        eax52 = fun_3f280c9(ecx, v50, edi10, ebx22);
        *reinterpret_cast<uint32_t*>(ebp53 - 28) = eax52;
        goto addr_3f280b0_14;
    }
    addr_3f27fde_7:
    goto addr_3f280b9_17;
    addr_3f27f95_9:
    g0 = *reinterpret_cast<void**>(ebp54 - 16);
    goto ebp55->f4;
}

uint32_t g4211168;

uint32_t g421116c;

uint32_t g4211170;

uint32_t g421118c;

uint32_t g4211190;

uint32_t g4211194;

uint32_t g42111b0;

uint32_t g42111b4;

uint32_t g42111b8;

uint32_t g42111d4;

uint32_t g42111d8;

uint32_t g42111dc;

uint32_t g42111f8;

uint32_t g42111fc;

uint32_t g4211200;

uint32_t g421121c;

uint32_t g4211220;

uint32_t g4211224;

uint32_t g4211240;

uint32_t g4211244;

uint32_t g4211248;

uint32_t g4211264;

uint32_t g4211268;

uint32_t g421126c;

uint32_t g4211288;

uint32_t g421128c;

uint32_t g4211290;

void fun_3f2a631(void** ecx);

void fun_3f2a5b1(int32_t a1, void** a2);

uint32_t fun_3f21000(int32_t ecx) {
    void* ebp2;
    void* eax3;
    void* v4;
    uint32_t eax5;
    uint32_t v6;
    uint32_t esi7;
    uint32_t v8;
    void* v9;
    void** v10;
    void** ecx11;
    void* v12;
    void** v13;
    void** edi14;
    void* v15;
    void** ecx16;
    void* v17;
    void** ecx18;
    void** ecx19;
    void* v20;
    void** ecx21;
    void** ecx22;
    void* v23;
    void** ecx24;
    void** ecx25;
    void* v26;
    void** ecx27;
    void** ecx28;
    void* v29;
    void** ecx30;
    void** ecx31;
    void* v32;
    void** ecx33;
    void** ecx34;
    void* v35;
    void** ecx36;
    void** ecx37;
    void* v38;
    void** ecx39;
    void** ecx40;
    void* v41;
    void** ecx42;
    void** ecx43;
    void* v44;
    void** ecx45;
    void** ecx46;
    void* v47;
    void** ecx48;
    void* v49;
    void** v50;
    void** ecx51;
    void** ecx52;
    void* v53;
    void** ecx54;
    void** ecx55;
    void* v56;
    void** ecx57;
    void** ecx58;
    void* v59;
    void** ecx60;
    void** ecx61;
    void* v62;
    void** ecx63;
    void** ecx64;
    void* v65;
    void** ecx66;
    void** ecx67;
    void* v68;
    void** ecx69;
    void** ecx70;
    void* v71;
    void** ecx72;
    void** ecx73;
    void* v74;
    void** ecx75;
    void** ecx76;
    void* v77;
    void** ecx78;
    void** ecx79;
    void* v80;
    void** ecx81;
    void** ecx82;
    void* v83;
    void** ecx84;
    void** ecx85;
    void* v86;
    void** ecx87;
    void** ecx88;
    void* v89;
    void** ecx90;
    void** ecx91;
    void* v92;
    void** ecx93;
    void** ecx94;
    void* v95;
    void** ecx96;
    void** ecx97;
    void* v98;
    void** ecx99;
    void** ecx100;
    void* v101;
    void** ecx102;
    void** ecx103;
    void* v104;
    void** ecx105;
    void** ecx106;
    void* v107;
    void** ecx108;
    void** ecx109;
    void* v110;
    void** ecx111;
    void** ecx112;
    void* v113;
    void** ecx114;
    void** ecx115;
    void* v116;
    void** ecx117;
    void** ecx118;
    void* v119;
    void** ecx120;
    void** ecx121;
    void* v122;
    void** ecx123;
    void** ecx124;
    void* v125;
    void** ecx126;
    void** ecx127;
    void* v128;
    void** ecx129;
    void** ecx130;
    void* v131;
    void** ecx132;
    void** ecx133;
    void* v134;
    void** ecx135;
    void** ecx136;
    void* v137;
    void** ecx138;
    void** ecx139;
    void* v140;
    void** ecx141;
    void** ecx142;
    void* v143;
    void** ecx144;
    void** ecx145;
    void* v146;
    void** ecx147;
    void** ecx148;
    void* v149;
    void** ecx150;
    void** ecx151;
    void* v152;
    void** ecx153;
    void** ecx154;
    void* v155;
    void** ecx156;
    void** ecx157;
    void* v158;
    void** ecx159;
    void** ecx160;
    void* v161;
    void** ecx162;
    void** ecx163;
    void* v164;
    void** ecx165;
    void** ecx166;
    void* v167;
    void** ecx168;
    void** ecx169;
    void* v170;
    void** ecx171;
    void** ecx172;
    void* v173;
    void** ecx174;
    void** ecx175;
    void* v176;
    void** ecx177;
    void** ecx178;
    void* v179;
    void** ecx180;
    void** ecx181;
    void* v182;
    void** ecx183;
    void** ecx184;
    void* v185;
    void** ecx186;
    void** ecx187;
    void* v188;
    void** ecx189;
    void** ecx190;
    void* v191;
    void** ecx192;
    void** ecx193;
    void* v194;
    void** ecx195;
    void** ecx196;
    void* v197;
    void** ecx198;
    void** ecx199;
    void* v200;
    void** ecx201;
    void** ecx202;
    void* v203;
    void** ecx204;
    void** ecx205;
    void* v206;
    void** ecx207;
    void* v208;
    void** v209;
    void* v210;
    void** ecx211;
    void* v212;
    void** ecx213;
    void** ecx214;
    void* v215;
    void** ecx216;
    void** ecx217;
    void* v218;
    void** ecx219;
    void** ecx220;
    void* v221;
    void** ecx222;
    void** ecx223;
    void* v224;
    void** ecx225;
    void** ecx226;
    void* v227;
    void** ecx228;
    void** ecx229;
    void* v230;
    void** ecx231;
    void** ecx232;
    void* v233;
    void** ecx234;
    void** ecx235;
    void* v236;
    void** ecx237;
    void** ecx238;
    void* v239;
    void** ecx240;
    void** ecx241;
    void* v242;
    void** ecx243;
    void** ecx244;
    void* v245;
    void** ecx246;
    void** ecx247;
    void* v248;
    void** ecx249;
    void* v250;
    void** v251;
    void** ecx252;
    void** ecx253;
    void* v254;
    void** ecx255;
    void** ecx256;
    void* v257;
    void** ecx258;
    void** ecx259;
    void* v260;
    void** ecx261;
    void** ecx262;
    void* v263;
    void** ecx264;
    void** ecx265;
    void* v266;
    void** ecx267;
    void** ecx268;
    void* v269;
    void** ecx270;
    void** ecx271;
    void* v272;
    void** ecx273;
    void** ecx274;
    void* v275;
    void** ecx276;
    void** ecx277;
    void* v278;
    void** ecx279;
    void** ecx280;
    void* v281;
    void** ecx282;
    void** ecx283;
    void* v284;
    void** ecx285;
    void** ecx286;
    void* v287;
    void** ecx288;
    void** ecx289;
    void* v290;
    void** ecx291;
    void** ecx292;
    void* v293;
    void** ecx294;
    void** ecx295;
    void* v296;
    void** ecx297;
    void** ecx298;
    void* v299;
    void** ecx300;
    void** ecx301;
    void* v302;
    void** ecx303;
    void** ecx304;
    void* v305;
    void** ecx306;
    void** ecx307;
    void* v308;
    void** ecx309;
    void** ecx310;
    void* v311;
    void** ecx312;
    void** ecx313;
    void* v314;
    void** ecx315;
    void** ecx316;
    void* v317;
    void** ecx318;
    void** ecx319;
    void* v320;
    void** ecx321;
    void** ecx322;
    void* v323;
    void** ecx324;
    void** ecx325;
    void* v326;
    void** ecx327;
    void** ecx328;
    void* v329;
    void** ecx330;
    void** ecx331;
    void* v332;
    void** ecx333;
    void** ecx334;
    void* v335;
    void** ecx336;
    void** ecx337;
    void* v338;
    void** ecx339;
    void** ecx340;
    void* v341;
    void** ecx342;
    void** ecx343;
    void* v344;
    void** ecx345;
    void** ecx346;
    void* v347;
    void** ecx348;
    void** ecx349;
    void* v350;
    void** ecx351;
    void** ecx352;
    void* v353;
    void** ecx354;
    void** ecx355;
    void* v356;
    void** ecx357;
    void** ecx358;
    void* v359;
    void** ecx360;
    void** ecx361;
    void* v362;
    void** ecx363;
    void** ecx364;
    void* v365;
    void** ecx366;
    void** ecx367;
    void* v368;
    void** ecx369;
    void** ecx370;
    void* v371;
    void** ecx372;
    void** ecx373;
    void* v374;
    void** ecx375;
    void** ecx376;
    void* v377;
    void** ecx378;
    void** ecx379;
    void* v380;
    void** ecx381;
    void** ecx382;
    void* v383;
    void** ecx384;
    void** ecx385;
    void* v386;
    void** ecx387;
    void** ecx388;
    void* v389;
    void** ecx390;
    void** ecx391;
    void* v392;
    void** ecx393;
    void** ecx394;
    void* v395;
    void** ecx396;
    void** ecx397;
    void* v398;
    void** ecx399;
    void** ecx400;
    void* v401;
    void** ecx402;
    void** ecx403;
    void* v404;
    void** ecx405;
    void** ecx406;
    void* v407;
    void** ecx408;
    void** ecx409;
    void* v410;
    void** ecx411;
    void* v412;
    void** v413;
    void* v414;
    void** ecx415;
    void* v416;
    void** ecx417;
    void** ecx418;
    void* v419;
    void** ecx420;
    void** ecx421;
    void* v422;
    void** ecx423;
    void** ecx424;
    void* v425;
    void** ecx426;
    void** ecx427;
    void* v428;
    void** ecx429;
    void** ecx430;
    void* v431;
    void** ecx432;
    void** ecx433;
    void* v434;
    void** ecx435;
    void** ecx436;
    void* v437;
    void** ecx438;
    void** ecx439;
    void* v440;
    void** ecx441;
    void** ecx442;
    void* v443;
    void** ecx444;
    void** ecx445;
    void* v446;
    void** ecx447;
    void** ecx448;
    void* v449;
    void** ecx450;
    void** ecx451;
    void* v452;
    void** ecx453;
    void** ecx454;
    void* v455;
    void** ecx456;
    void** ecx457;
    void* v458;
    void** ecx459;
    void** ecx460;
    void* v461;
    void** ecx462;
    void** ecx463;
    void* v464;
    void** ecx465;
    void** ecx466;
    void* v467;
    void** ecx468;
    void** ecx469;
    void* v470;
    void** ecx471;
    void** ecx472;
    void* v473;
    void** ecx474;
    void* v475;
    void** v476;
    void* v477;
    void** ecx478;
    void* v479;
    void** ecx480;
    void** ecx481;
    void* v482;
    void** ecx483;
    void** ecx484;
    void* v485;
    void** ecx486;
    void** ecx487;
    void* v488;
    void** ecx489;
    void* v490;
    void** v491;
    void* v492;
    void** ecx493;
    void* v494;
    void** ecx495;
    void** ecx496;
    void* v497;
    void** ecx498;
    void** ecx499;
    void* v500;
    void** ecx501;
    int32_t ecx502;
    void* eax503;
    void** ecx504;
    void** ecx505;
    void** ecx506;
    void* v507;
    void** ecx508;
    void** ecx509;
    void* v510;
    void** ecx511;
    void** ecx512;
    void* v513;
    void** ecx514;
    void** ecx515;
    void* v516;
    void** ecx517;
    void** ecx518;
    void* v519;
    void** ecx520;
    void** ecx521;
    void* v522;
    void** ecx523;
    void** ecx524;
    void* v525;
    void** ecx526;
    void** ecx527;
    void* v528;
    void** ecx529;
    void** ecx530;
    void* v531;
    void** ecx532;
    void** ecx533;
    void* v534;
    void** ecx535;
    void** ecx536;
    void* v537;
    void** ecx538;
    void** ecx539;
    void* v540;
    void** ecx541;
    void** ecx542;
    void* v543;
    void** ecx544;
    void** ecx545;
    void* v546;
    void** ecx547;
    void** ecx548;
    void* v549;
    void** ecx550;
    void** ecx551;
    void* v552;
    void** ecx553;
    void** ecx554;
    void* v555;
    void** ecx556;
    void** ecx557;
    void* v558;
    void** ecx559;
    void** ecx560;
    void* v561;
    void** ecx562;
    void** ecx563;
    void* v564;
    void** ecx565;
    void** ecx566;
    void* v567;
    void** ecx568;
    void** ecx569;
    void* v570;
    void** ecx571;
    void** ecx572;
    void* v573;
    void** ecx574;
    void** ecx575;
    void* v576;
    void** ecx577;
    void** ecx578;
    void* v579;
    void** ecx580;
    void** ecx581;
    void* v582;
    void** ecx583;
    void** ecx584;
    void* v585;
    void** ecx586;
    void** ecx587;
    void* v588;
    void** ecx589;
    void** ecx590;
    void* v591;
    void** ecx592;
    void** ecx593;
    void* v594;
    void** ecx595;
    void** ecx596;
    void* v597;
    void** ecx598;
    void** ecx599;
    void* v600;
    void** ecx601;
    void** ecx602;
    void* v603;
    void** ecx604;
    void** ecx605;
    void* v606;
    void** ecx607;
    void** ecx608;
    void* v609;
    void** ecx610;
    void** ecx611;
    void* v612;
    void** ecx613;
    void** ecx614;
    void* v615;
    void** ecx616;
    void** ecx617;
    void* v618;
    void** ecx619;
    void** ecx620;
    void* v621;
    void** ecx622;
    void** ecx623;
    void* v624;
    void** ecx625;
    void** ecx626;
    void* v627;
    void** ecx628;
    void** ecx629;
    void* v630;
    void** ecx631;
    void** ecx632;
    void* v633;
    void** ecx634;
    void** ecx635;
    void* v636;
    void** ecx637;
    void** ecx638;
    void* v639;
    void** ecx640;
    void** ecx641;
    void* v642;
    void** ecx643;
    void** ecx644;
    void* v645;
    void** ecx646;
    void** ecx647;
    void* v648;
    void** ecx649;
    void** ecx650;
    void* v651;
    void** ecx652;
    void** ecx653;
    void* v654;
    void** ecx655;
    void** ecx656;
    void* v657;
    void** ecx658;
    void** ecx659;
    void* v660;
    void** ecx661;
    void** ecx662;
    void* v663;
    void** ecx664;
    void** ecx665;
    void* v666;
    void** ecx667;
    void** ecx668;
    void* v669;
    void** ecx670;
    void** ecx671;
    void* v672;
    void** ecx673;
    void** ecx674;
    void* v675;
    void** ecx676;
    void** ecx677;
    void* v678;
    void** ecx679;
    void** ecx680;
    void* v681;
    void** ecx682;
    void** ecx683;
    void* v684;
    void** ecx685;
    void** ecx686;
    void* v687;
    void** ecx688;
    void** ecx689;
    void* v690;
    void** ecx691;
    void** ecx692;
    void* v693;
    void** ecx694;
    void** ecx695;
    void* v696;
    void** ecx697;
    void** ecx698;
    void* v699;
    void** ecx700;
    void** ecx701;
    void* v702;
    void** ecx703;
    void** ecx704;
    void* v705;
    void** ecx706;
    void** ecx707;
    void* v708;
    void** ecx709;
    void* v710;
    void** v711;
    void** ecx712;
    void** ecx713;
    void* v714;
    void** ecx715;
    void** ecx716;
    void* v717;
    void** ecx718;
    void** ecx719;
    void* v720;
    void** ecx721;
    void** ecx722;
    void* v723;
    void** ecx724;
    void** ecx725;
    void* v726;
    void** ecx727;
    void** ecx728;
    void* v729;
    void** ecx730;
    void** ecx731;
    void* v732;
    void** ecx733;
    void** ecx734;
    void* v735;
    void** ecx736;
    void** ecx737;
    void* v738;
    void** ecx739;
    void** ecx740;
    void* v741;
    void** ecx742;
    void** ecx743;
    void* v744;
    void** ecx745;
    void** ecx746;
    void* v747;
    void** ecx748;
    void** ecx749;
    void* v750;
    void** ecx751;
    void** ecx752;
    void* v753;
    void** ecx754;
    void** ecx755;
    void* v756;
    void** ecx757;
    void** ecx758;
    void* v759;
    void** ecx760;
    void** ecx761;
    void* v762;
    void** ecx763;
    void** ecx764;
    void* v765;
    void** ecx766;
    void** ecx767;
    void* v768;
    void** ecx769;
    void** ecx770;
    void* v771;
    void** ecx772;
    void** ecx773;
    void* v774;
    void** ecx775;
    void** ecx776;
    void* v777;
    void** ecx778;
    void** ecx779;
    void* v780;
    void** ecx781;
    void** ecx782;
    void* v783;
    void** ecx784;
    void** ecx785;
    void* v786;
    void** ecx787;
    void** ecx788;
    void* v789;
    void** ecx790;
    void** ecx791;
    void* v792;
    void** ecx793;
    void** ecx794;
    void* v795;
    void** ecx796;
    void** ecx797;
    void* v798;
    void** ecx799;
    void** ecx800;
    void* v801;
    void** ecx802;
    void** ecx803;
    void* v804;
    void** ecx805;
    void** ecx806;
    void* v807;
    void** ecx808;
    void** ecx809;
    void* v810;
    void** ecx811;
    void** ecx812;
    void* v813;
    void** ecx814;
    void** ecx815;
    void* v816;
    void** ecx817;
    void** ecx818;
    void* v819;
    void** ecx820;
    void** ecx821;
    void* v822;
    void** ecx823;
    void** ecx824;
    void* v825;
    void** ecx826;
    void** ecx827;
    void* v828;
    void** ecx829;
    void** ecx830;
    void* v831;
    void** ecx832;
    void** ecx833;
    void* v834;
    void** ecx835;
    void** ecx836;
    void* v837;
    void** ecx838;
    void** ecx839;
    void* v840;
    void** ecx841;
    void** ecx842;
    void* v843;
    void** ecx844;
    void** ecx845;
    void* v846;
    void** ecx847;
    void** ecx848;
    void* v849;
    void** ecx850;
    void** ecx851;
    void* v852;
    void** ecx853;
    void** ecx854;
    void* v855;
    void** ecx856;
    void** ecx857;
    void* v858;
    void** ecx859;
    void** ecx860;
    void* v861;
    void** ecx862;
    void** ecx863;
    void* v864;
    void** ecx865;
    void** ecx866;
    void* v867;
    void** ecx868;
    void** ecx869;
    void* v870;
    void** ecx871;
    void** ecx872;
    void* v873;
    void** ecx874;
    void** ecx875;
    void* v876;
    void** ecx877;
    void** ecx878;
    void* v879;
    void** ecx880;
    void* v881;
    void** v882;
    void* v883;
    void** ecx884;
    void* v885;
    void** ecx886;
    void** ecx887;
    void* v888;
    void** ecx889;
    void** ecx890;
    void* v891;
    void** ecx892;
    void** ecx893;
    void* v894;
    void** ecx895;
    void** ecx896;
    void* v897;
    void** ecx898;
    void** ecx899;
    void* v900;
    void** ecx901;
    void** ecx902;
    void* v903;
    void** ecx904;
    void** ecx905;
    void* v906;
    void** ecx907;
    void** ecx908;
    void* v909;
    void** ecx910;
    void** ecx911;
    void* v912;
    void** ecx913;
    void** ecx914;
    void* v915;
    void** ecx916;
    void** ecx917;
    void* v918;
    void** ecx919;
    void* v920;
    void** v921;
    void* v922;
    void** ecx923;
    void* v924;
    void** ecx925;
    void** ecx926;
    void* v927;
    void** ecx928;
    void** ecx929;
    void* v930;
    void** ecx931;
    void** ecx932;
    void* v933;
    void** ecx934;
    void** ecx935;
    void* v936;
    void** ecx937;
    void** ecx938;
    void* v939;
    void** ecx940;
    void** ecx941;
    void* v942;
    void** ecx943;
    void** ecx944;
    void* v945;
    void** ecx946;
    void** ecx947;
    void* v948;
    void** ecx949;
    void** ecx950;
    void* v951;
    void** ecx952;
    void** ecx953;
    void* v954;
    void** ecx955;
    void** ecx956;
    void* v957;
    void** ecx958;
    void** ecx959;
    void* v960;
    void** ecx961;
    void** ecx962;
    void* v963;
    void** ecx964;
    void* v965;
    void** v966;
    void* v967;
    void** ecx968;
    void* v969;
    void** ecx970;
    void** ecx971;
    void* v972;
    void** ecx973;
    void** ecx974;
    void* v975;
    void** ecx976;
    void** ecx977;
    void* v978;
    void** ecx979;
    void** ecx980;
    void* v981;
    void** ecx982;
    void** ecx983;
    void* v984;
    void** ecx985;
    void* v986;
    void** v987;
    void* v988;
    uint32_t eax989;

    ebp2 = reinterpret_cast<void*>(reinterpret_cast<int32_t>(__zero_stack_offset()) - 4);
    eax3 = g0;
    v4 = eax3;
    fun_3f288d0(ecx);
    eax5 = g3f30008;
    v6 = esi7;
    v8 = eax5 ^ reinterpret_cast<uint32_t>(ebp2);
    g0 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffff4);
    fun_3f2750b(0x4211150, "wintrust.dll", v8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe04, "WinVerifyTrust", v8);
    v9 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe8);
    v10 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe4);
    ecx11 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe1c);
    fun_3f2747b(ecx11, v10, v9, 0x15f85a, v8, ecx11, v10, v9, 0x15f85a, v8);
    g4211168 = 0;
    g421116c = 0;
    g4211170 = 0;
    v12 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe28);
    v13 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe04);
    fun_3f275bd(0x4211168, v13, v12, edi14, v8, 0x4211168, v13, v12, edi14, v8);
    v15 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe04);
    fun_3f27959(0x4211168, v15, 36, 1, 0x3f270a9, v8, 0x4211168, v15, 36, 1, 0x3f270a9, v8);
    fun_3f2750b(0x4211174, "kernel32.dll", v8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffebd4, "GetFileAttributesW", v8);
    ecx16 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff04);
    v17 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff14);
    ecx18 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffebec);
    fun_3f2747b(ecx18, ecx16, v17, ecx16, v8, ecx18, ecx16, v17, ecx16, v8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffebf8, "GetProcAddress", v8);
    ecx19 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb44);
    v20 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffbcc);
    ecx21 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffec10);
    fun_3f2747b(ecx21, ecx19, v20, ecx19, v8, ecx21, ecx19, v20, ecx19, v8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffec1c, "CloseHandle", v8);
    ecx22 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe5c);
    v23 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe78);
    ecx24 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffec34);
    fun_3f2747b(ecx24, ecx22, v23, ecx22, v8, ecx24, ecx22, v23, ecx22, v8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffec40, "GetModuleFileNameA", v8);
    ecx25 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe8);
    v26 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffff0);
    ecx27 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffec58);
    fun_3f2747b(ecx27, ecx25, v26, ecx25, 0x14aff8, ecx27, ecx25, v26, ecx25, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffec64, "Beep", 0x14aff8);
    ecx28 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb8);
    v29 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc0);
    ecx30 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffec7c);
    fun_3f2747b(ecx30, ecx28, v29, ecx28, 0x14aff8, ecx30, ecx28, v29, ecx28, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffec88, "VirtualProtect", 0x14aff8);
    ecx31 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffbcc);
    v32 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc54);
    ecx33 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeca0);
    fun_3f2747b(ecx33, ecx31, v32, ecx31, 0x14aff8, ecx33, ecx31, v32, ecx31, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffecac, "Sleep", 0x14aff8);
    ecx34 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff4c);
    v35 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff58);
    ecx36 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffecc4);
    fun_3f2747b(ecx36, ecx34, v35, ecx34, 0x14aff8, ecx36, ecx34, v35, ecx34, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffecd0, "SetCurrentDirectoryW", 0x14aff8);
    ecx37 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff24);
    v38 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff2c);
    ecx39 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffece8);
    fun_3f2747b(ecx39, ecx37, v38, ecx37, 0x14aff8, ecx39, ecx37, v38, ecx37, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffecf4, "CreateEventW", 0x14aff8);
    ecx40 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff1c);
    v41 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff24);
    ecx42 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffed0c);
    fun_3f2747b(ecx42, ecx40, v41, ecx40, 0x14aff8, ecx42, ecx40, v41, ecx40, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffed18, "GetCurrentProcessId", 0x14aff8);
    ecx43 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff58);
    v44 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff64);
    ecx45 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffed30);
    fun_3f2747b(ecx45, ecx43, v44, ecx43, 0x14aff8, ecx45, ecx43, v44, ecx43, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffed3c, "OpenProcess", 0x14aff8);
    ecx46 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff14);
    v47 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff1c);
    ecx48 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffed54);
    fun_3f2747b(ecx48, ecx46, v47, ecx46, 0x14aff8, ecx48, ecx46, v47, ecx46, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffed60, "Module32Next", 0x14aff8);
    v49 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe8);
    v50 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe4);
    ecx51 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffed78);
    fun_3f2747b(ecx51, v50, v49, 0x15f5ba, 0x14aff8, ecx51, v50, v49, 0x15f5ba, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffed84, "CreateHardLinkW", 0x14aff8);
    ecx52 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff2c);
    v53 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff34);
    ecx54 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffed9c);
    fun_3f2747b(ecx54, ecx52, v53, ecx52, 0x14aff8, ecx54, ecx52, v53, ecx52, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeda8, "TerminateProcess", 0x14aff8);
    ecx55 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff64);
    v56 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff70);
    ecx57 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffedc0);
    fun_3f2747b(ecx57, ecx55, v56, ecx55, 0x14aff8, ecx57, ecx55, v56, ecx55, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffedcc, "SetFileTime", 0x14aff8);
    ecx58 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe88);
    v59 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe90);
    ecx60 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffede4);
    fun_3f2747b(ecx60, ecx58, v59, ecx58, 0x14aff8, ecx60, ecx58, v59, ecx58, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffedf0, "GetModuleHandleA", 0x14aff8);
    ecx61 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe00);
    v62 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe28);
    ecx63 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffee08);
    fun_3f2747b(ecx63, ecx61, v62, ecx61, 0x14aff8, ecx63, ecx61, v62, ecx61, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffee14, "QueryPerformanceCounter", 0x14aff8);
    ecx64 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb0);
    v65 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb8);
    ecx66 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffee2c);
    fun_3f2747b(ecx66, ecx64, v65, ecx64, 0x14aff8, ecx66, ecx64, v65, ecx64, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffee38, "IsDebuggerPresent", 0x14aff8);
    ecx67 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea8);
    v68 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb0);
    ecx69 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffee50);
    fun_3f2747b(ecx69, ecx67, v68, ecx67, 0x14aff8, ecx69, ecx67, v68, ecx67, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffee5c, "DeleteFileW", 0x14aff8);
    ecx70 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea0);
    v71 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea8);
    ecx72 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffee74);
    fun_3f2747b(ecx72, ecx70, v71, ecx70, 0x14aff8, ecx72, ecx70, v71, ecx70, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffee80, "VirtualAlloc", 0x14aff8);
    ecx73 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdbc);
    v74 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffde0);
    ecx75 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffee98);
    fun_3f2747b(ecx75, ecx73, v74, ecx73, 0x14aff8, ecx75, ecx73, v74, ecx73, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeea4, "WaitForSingleObjectEx", 0x14aff8);
    ecx76 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe98);
    v77 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea0);
    ecx78 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeebc);
    fun_3f2747b(ecx78, ecx76, v77, ecx76, 0x14aff8, ecx78, ecx76, v77, ecx76, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeec8, "SetFileAttributesW", 0x14aff8);
    ecx79 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe90);
    v80 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe98);
    ecx81 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeee0);
    fun_3f2747b(ecx81, ecx79, v80, ecx79, 0x14aff8, ecx81, ecx79, v80, ecx79, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeeec, "SetEvent", 0x14aff8);
    ecx82 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd34);
    v83 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd3c);
    ecx84 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffef04);
    fun_3f2747b(ecx84, ecx82, v83, ecx82, 0x14aff8, ecx84, ecx82, v83, ecx82, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffef10, "FormatMessageA", 0x14aff8);
    ecx85 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd3c);
    v86 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd44);
    ecx87 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffef28);
    fun_3f2747b(ecx87, ecx85, v86, ecx85, 0x14aff8, ecx87, ecx85, v86, ecx85, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffef34, "GetDiskFreeSpaceExW", 0x14aff8);
    ecx88 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd44);
    v89 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd4c);
    ecx90 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffef4c);
    fun_3f2747b(ecx90, ecx88, v89, ecx88, 0x14aff8, ecx90, ecx88, v89, ecx88, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffef58, "ResetEvent", 0x14aff8);
    ecx91 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd4c);
    v92 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd54);
    ecx93 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffef70);
    fun_3f2747b(ecx93, ecx91, v92, ecx91, 0x14aff8, ecx93, ecx91, v92, ecx91, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffef7c, "GetCurrentThreadId", 0x14aff8);
    ecx94 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd54);
    v95 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd5c);
    ecx96 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffef94);
    fun_3f2747b(ecx96, ecx94, v95, ecx94, 0x14aff8, ecx96, ecx94, v95, ecx94, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffefa0, "RemoveDirectoryW", 0x14aff8);
    ecx97 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd5c);
    v98 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd64);
    ecx99 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffefb8);
    fun_3f2747b(ecx99, ecx97, v98, ecx97, 0x14aff8, ecx99, ecx97, v98, ecx97, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffefc4, "AreFileApisANSI", 0x14aff8);
    ecx100 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd64);
    v101 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd6c);
    ecx102 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffefdc);
    fun_3f2747b(ecx102, ecx100, v101, ecx100, 0x14aff8, ecx102, ecx100, v101, ecx100, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffefe8, "InitializeCriticalSectionAndSpinCount", 0x14aff8);
    ecx103 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdb4);
    v104 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdbc);
    ecx105 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff000);
    fun_3f2747b(ecx105, ecx103, v104, ecx103, 0x14aff8, ecx105, ecx103, v104, ecx103, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff00c, "FindClose", 0x14aff8);
    ecx106 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff70);
    v107 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff7c);
    ecx108 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff024);
    fun_3f2747b(ecx108, ecx106, v107, ecx106, 0x14aff8, ecx108, ecx106, v107, ecx106, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff030, "GetModuleHandleW", 0x14aff8);
    ecx109 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffde0);
    v110 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe00);
    ecx111 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff048);
    fun_3f2747b(ecx111, ecx109, v110, ecx109, 0x14aff8, ecx111, ecx109, v110, ecx109, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff054, "SetFilePointerEx", 0x14aff8);
    ecx112 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd74);
    v113 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd7c);
    ecx114 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff06c);
    fun_3f2747b(ecx114, ecx112, v113, ecx112, 0x14aff8, ecx114, ecx112, v113, ecx112, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff078, "GetTempPathW", 0x14aff8);
    ecx115 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd8c);
    v116 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd94);
    ecx117 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff090);
    fun_3f2747b(ecx117, ecx115, v116, ecx115, 0x14aff8, ecx117, ecx115, v116, ecx115, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff09c, "GetFullPathNameW", 0x14aff8);
    ecx118 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd84);
    v119 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd8c);
    ecx120 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff0b4);
    fun_3f2747b(ecx120, ecx118, v119, ecx118, 0x14aff8, ecx120, ecx118, v119, ecx118, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff0c0, "SetEndOfFile", 0x14aff8);
    ecx121 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd94);
    v122 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd9c);
    ecx123 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff0d8);
    fun_3f2747b(ecx123, ecx121, v122, ecx121, 0x14aff8, ecx123, ecx121, v122, ecx121, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff0e4, "GetLastError", 0x14aff8);
    ecx124 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff9e4);
    v125 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffa94);
    ecx126 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff0fc);
    fun_3f2747b(ecx126, ecx124, v125, ecx124, 0x14aff8, ecx126, ecx124, v125, ecx124, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff108, "CreateFileW", 0x14aff8);
    ecx127 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe78);
    v128 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe88);
    ecx129 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff120);
    fun_3f2747b(ecx129, ecx127, v128, ecx127, 0x14aff8, ecx129, ecx127, v128, ecx127, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff12c, "GetFileInformationByHandle", 0x14aff8);
    ecx130 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe28);
    v131 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe3c);
    ecx132 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff144);
    fun_3f2747b(ecx132, ecx130, v131, ecx130, 0x14aff8, ecx132, ecx130, v131, ecx130, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff150, "FindFirstFileExW", 0x14aff8);
    ecx133 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc54);
    v134 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc64);
    ecx135 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff168);
    fun_3f2747b(ecx135, ecx133, v134, ecx133, 0x14aff8, ecx135, ecx133, v134, ecx133, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff174, "GetFileAttributesExW", 0x14aff8);
    ecx136 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd2c);
    v137 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd34);
    ecx138 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff18c);
    fun_3f2747b(ecx138, ecx136, v137, ecx136, 0x14aff8, ecx138, ecx136, v137, ecx136, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff198, "FindNextFileW", 0x14aff8);
    ecx139 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd6c);
    v140 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd74);
    ecx141 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff1b0);
    fun_3f2747b(ecx141, ecx139, v140, ecx139, 0x14aff8, ecx141, ecx139, v140, ecx139, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff1bc, "GetVolumePathNameW", 0x14aff8);
    ecx142 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd1c);
    v143 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd24);
    ecx144 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff1d4);
    fun_3f2747b(ecx144, ecx142, v143, ecx142, 0x14aff8, ecx144, ecx142, v143, ecx142, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff1e0, "MultiByteToWideChar", 0x14aff8);
    ecx145 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd14);
    v146 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd1c);
    ecx147 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff1f8);
    fun_3f2747b(ecx147, ecx145, v146, ecx145, 0x14aff8, ecx147, ecx145, v146, ecx145, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff204, "WideCharToMultiByte", 0x14aff8);
    ecx148 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc64);
    v149 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc74);
    ecx150 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff21c);
    fun_3f2747b(ecx150, ecx148, v149, ecx148, 0x14aff8, ecx150, ecx148, v149, ecx148, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff228, "DeviceIoControl", 0x14aff8);
    ecx151 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd0c);
    v152 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd14);
    ecx153 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff240);
    fun_3f2747b(ecx153, ecx151, v152, ecx151, 0x14aff8, ecx153, ecx151, v152, ecx151, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff24c, "GetCurrentDirectoryW", 0x14aff8);
    ecx154 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcfc);
    v155 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd04);
    ecx156 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff264);
    fun_3f2747b(ecx156, ecx154, v155, ecx154, 0x14aff8, ecx156, ecx154, v155, ecx154, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff270, "CreateToolhelp32Snapshot", 0x14aff8);
    ecx157 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe0);
    v158 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe4);
    ecx159 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff288);
    fun_3f2747b(ecx159, ecx157, v158, ecx157, 0x14aff8, ecx159, ecx157, v158, ecx157, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff294, "CreateDirectoryW", 0x14aff8);
    ecx160 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcf4);
    v161 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcfc);
    ecx162 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff2ac);
    fun_3f2747b(ecx162, ecx160, v161, ecx160, 0x14aff8, ecx162, ecx160, v161, ecx160, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff2b8, "MoveFileExW", 0x14aff8);
    ecx163 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcec);
    v164 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcf4);
    ecx165 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff2d0);
    fun_3f2747b(ecx165, ecx163, v164, ecx163, 0x14aff8, ecx165, ecx163, v164, ecx163, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff2dc, "SetLastError", 0x14aff8);
    ecx166 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe3c);
    v167 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe50);
    ecx168 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff2f4);
    fun_3f2747b(ecx168, ecx166, v167, ecx166, 0x14aff8, ecx168, ecx166, v167, ecx166, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff300, "CopyFileW", 0x14aff8);
    ecx169 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdac);
    v170 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdb4);
    ecx171 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff318);
    fun_3f2747b(ecx171, ecx169, v170, ecx169, 0x14aff8, ecx171, ecx169, v170, ecx169, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff324, "Module32First", 0x14aff8);
    ecx172 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffdc);
    v173 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe0);
    ecx174 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff33c);
    fun_3f2747b(ecx174, ecx172, v173, ecx172, 0x14aff8, ecx174, ecx172, v173, ecx172, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff348, "CreateDirectoryExW", 0x14aff8);
    ecx175 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffda4);
    v176 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdac);
    ecx177 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff360);
    fun_3f2747b(ecx177, ecx175, v176, ecx175, 0x14aff8, ecx177, ecx175, v176, ecx175, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff36c, "FreeLibrary", 0x14aff8);
    ecx178 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd9c);
    v179 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffda4);
    ecx180 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff384);
    fun_3f2747b(ecx180, ecx178, v179, ecx178, 0x14aff8, ecx180, ecx178, v179, ecx178, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff390, "LoadLibraryExA", 0x14aff8);
    ecx181 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff40);
    v182 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff4c);
    ecx183 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff3a8);
    fun_3f2747b(ecx183, ecx181, v182, ecx181, 0x14aff8, ecx183, ecx181, v182, ecx181, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff3b4, "GetStartupInfoW", 0x14aff8);
    ecx184 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd7c);
    v185 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd84);
    ecx186 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff3cc);
    fun_3f2747b(ecx186, ecx184, v185, ecx184, 0x14aff8, ecx186, ecx184, v185, ecx184, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff3d8, "SetUnhandledExceptionFilter", 0x14aff8);
    ecx187 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc74);
    v188 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc84);
    ecx189 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff3f0);
    fun_3f2747b(ecx189, ecx187, v188, ecx187, 0x14aff8, ecx189, ecx187, v188, ecx187, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff3fc, "UnhandledExceptionFilter", 0x14aff8);
    ecx190 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff34);
    v191 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff40);
    ecx192 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff414);
    fun_3f2747b(ecx192, ecx190, v191, ecx190, 0x14aff8, ecx192, ecx190, v191, ecx190, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff420, "GetCurrentProcess", 0x14aff8);
    ecx193 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd24);
    v194 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd2c);
    ecx195 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff438);
    fun_3f2747b(ecx195, ecx193, v194, ecx193, 0x14aff8, ecx195, ecx193, v194, ecx193, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff444, "GetSystemTimeAsFileTime", 0x14aff8);
    ecx196 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd04);
    v197 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd0c);
    ecx198 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff45c);
    fun_3f2747b(ecx198, ecx196, v197, ecx196, 0x14aff8, ecx198, ecx196, v197, ecx196, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff468, "Process32First", 0x14aff8);
    ecx199 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd8);
    v200 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffdc);
    ecx201 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff480);
    fun_3f2747b(ecx201, ecx199, v200, ecx199, 0x14aff8, ecx201, ecx199, v200, ecx199, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff48c, "Process32Next", 0x14aff8);
    ecx202 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd4);
    v203 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd8);
    ecx204 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4a4);
    fun_3f2747b(ecx204, ecx202, v203, ecx202, 0x14aff8, ecx204, ecx202, v203, ecx202, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4b0, "IsProcessorFeaturePresent", 0x14aff8);
    ecx205 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd0);
    v206 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd4);
    ecx207 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4c8);
    fun_3f2747b(ecx207, ecx205, v206, ecx205, 0x14aff8, ecx207, ecx205, v206, ecx205, 0x14aff8);
    g421118c = 0;
    g4211190 = 0;
    g4211194 = 0;
    v208 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4d4);
    v209 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffebd4);
    fun_3f275bd(0x421118c, v209, v208, 0x15f950, 0x14aff8, 0x421118c, v209, v208, 0x15f950, 0x14aff8);
    v210 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffebd4);
    fun_3f27959(0x421118c, v210, 36, 64, 0x3f270a9, 0x14aff8, 0x421118c, v210, 36, 64, 0x3f270a9, 0x14aff8);
    fun_3f2750b(0x4211198, "msvcp140.dll", 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe268, "?_Xlength_error@std@@YAXPBD@Z", 0x14aff8);
    ecx211 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd0);
    v212 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd4);
    ecx213 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe280);
    fun_3f2747b(ecx213, ecx211, v212, ecx211, 0x14aff8, ecx213, ecx211, v212, ecx211, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe28c, "?tellg@?$basic_istream@DU?$char_traits@D@std@@@std@@QAE?AV?$fpos@U_Mbstatet@@@2@XZ", 0x14aff8);
    ecx214 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff04);
    v215 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff14);
    ecx216 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe2a4);
    fun_3f2747b(ecx216, ecx214, v215, ecx214, 0x14aff8, ecx216, ecx214, v215, ecx214, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe2b0, "?_Winerror_map@std@@YAHH@Z", 0x14aff8);
    ecx217 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd4);
    v218 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd8);
    ecx219 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe2c8);
    fun_3f2747b(ecx219, ecx217, v218, ecx217, 0x14aff8, ecx219, ecx217, v218, ecx217, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe2d4, "?_Getcvt@_Locinfo@std@@QBE?AU_Cvtvec@@XZ", 0x14aff8);
    ecx220 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff4c);
    v221 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff58);
    ecx222 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe2ec);
    fun_3f2747b(ecx222, ecx220, v221, ecx220, 0x14aff8, ecx222, ecx220, v221, ecx220, 0x14aff8);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe2f8, "?seekg@?$basic_istream@DU?$char_traits@D@std@@@std@@QAEAAV12@_JH@Z", 0x14aff8);
    ecx223 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe8);
    v224 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffff0);
    ecx225 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe310);
    fun_3f2747b(ecx225, ecx223, v224, ecx223, 0x1eb5, ecx225, ecx223, v224, ecx223, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe31c, "??1ios_base@std@@UAE@XZ", 0x1eb5);
    ecx226 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb70);
    v227 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffbcc);
    ecx228 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe334);
    fun_3f2747b(ecx228, ecx226, v227, ecx226, 0x1eb5, ecx228, ecx226, v227, ecx226, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe340, "_Cnd_do_broadcast_at_thread_exit", 0x1eb5);
    ecx229 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd8);
    v230 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffdc);
    ecx231 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe358);
    fun_3f2747b(ecx231, ecx229, v230, ecx229, 0x1eb5, ecx231, ecx229, v230, ecx229, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe364, "??0?$basic_streambuf@DU?$char_traits@D@std@@@std@@IAE@XZ", 0x1eb5);
    ecx232 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffde0);
    v233 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe00);
    ecx234 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe37c);
    fun_3f2747b(ecx234, ecx232, v233, ecx232, 0x1eb5, ecx234, ecx232, v233, ecx232, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe388, "??7ios_base@std@@QBE_NXZ", 0x1eb5);
    ecx235 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb8);
    v236 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc0);
    ecx237 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe3a0);
    fun_3f2747b(ecx237, ecx235, v236, ecx235, 0x1eb5, ecx237, ecx235, v236, ecx235, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe3ac, "?_Execute_once@std@@YAHAAUonce_flag@1@P6GHPAX1PAPAX@Z1@Z", 0x1eb5);
    ecx238 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffdc);
    v239 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe0);
    ecx240 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe3c4);
    fun_3f2747b(ecx240, ecx238, v239, ecx238, 0x1eb5, ecx240, ecx238, v239, ecx238, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe3d0, "?_Throw_C_error@std@@YAXH@Z", 0x1eb5);
    ecx241 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe0);
    v242 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe4);
    ecx243 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe3e8);
    fun_3f2747b(ecx243, ecx241, v242, ecx241, 0x1eb5, ecx243, ecx241, v242, ecx241, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe3f4, "?read@?$basic_istream@DU?$char_traits@D@std@@@std@@QAEAAV12@PAD_J@Z", 0x1eb5);
    ecx244 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff24);
    v245 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff2c);
    ecx246 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe40c);
    fun_3f2747b(ecx246, ecx244, v245, ecx244, 0x1eb5, ecx246, ecx244, v245, ecx244, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe418, "??0ios_base@std@@IAE@XZ", 0x1eb5);
    ecx247 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe58);
    v248 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe78);
    ecx249 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe430);
    fun_3f2747b(ecx249, ecx247, v248, ecx247, 0x1eb5, ecx249, ecx247, v248, ecx247, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe43c, "_Cnd_destroy_in_situ", 0x1eb5);
    v250 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe8);
    v251 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe4);
    ecx252 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe454);
    fun_3f2747b(ecx252, v251, v250, 0x15f728, 0x1eb5, ecx252, v251, v250, 0x15f728, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe460, "?init@?$basic_ios@DU?$char_traits@D@std@@@std@@IAEXPAV?$basic_streambuf@DU?$char_traits@D@std@@@2@_N@Z", 0x1eb5);
    ecx253 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffccc);
    v254 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcec);
    ecx255 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe478);
    fun_3f2747b(ecx255, ecx253, v254, ecx253, 0x1eb5, ecx255, ecx253, v254, ecx253, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe484, "?sbumpc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", 0x1eb5);
    ecx256 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff1c);
    v257 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff24);
    ecx258 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe49c);
    fun_3f2747b(ecx258, ecx256, v257, ecx256, 0x1eb5, ecx258, ecx256, v257, ecx256, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe4a8, "?clear@?$basic_ios@DU?$char_traits@D@std@@@std@@QAEXH_N@Z", 0x1eb5);
    ecx259 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdbc);
    v260 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffde0);
    ecx261 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe4c0);
    fun_3f2747b(ecx261, ecx259, v260, ecx259, 0x1eb5, ecx261, ecx259, v260, ecx259, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe4cc, "?getloc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QBE?AVlocale@2@XZ", 0x1eb5);
    ecx262 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff14);
    v263 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff1c);
    ecx264 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe4e4);
    fun_3f2747b(ecx264, ecx262, v263, ecx262, 0x1eb5, ecx264, ecx262, v263, ecx262, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe4f0, "?showmanyc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAE_JXZ", 0x1eb5);
    ecx265 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee8);
    v266 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeec);
    ecx267 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe508);
    fun_3f2747b(ecx267, ecx265, v266, ecx265, 0x1eb5, ecx267, ecx265, v266, ecx265, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe514, "?xsputn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAE_JPBD_J@Z", 0x1eb5);
    ecx268 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff2c);
    v269 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff34);
    ecx270 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe52c);
    fun_3f2747b(ecx270, ecx268, v269, ecx268, 0x1eb5, ecx270, ecx268, v269, ecx268, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe538, "?xsgetn@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAE_JPAD_J@Z", 0x1eb5);
    ecx271 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe88);
    v272 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe90);
    ecx273 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe550);
    fun_3f2747b(ecx273, ecx271, v272, ecx271, 0x1eb5, ecx273, ecx271, v272, ecx271, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe55c, "??1?$basic_streambuf@DU?$char_traits@D@std@@@std@@UAE@XZ", 0x1eb5);
    ecx274 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe04);
    v275 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe28);
    ecx276 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe574);
    fun_3f2747b(ecx276, ecx274, v275, ecx274, 0x1eb5, ecx276, ecx274, v275, ecx274, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe580, "_Mtx_unlock", 0x1eb5);
    ecx277 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee4);
    v278 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee8);
    ecx279 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe598);
    fun_3f2747b(ecx279, ecx277, v278, ecx277, 0x1eb5, ecx279, ecx277, v278, ecx277, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe5a4, "_Cnd_init_in_situ", 0x1eb5);
    ecx280 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeec);
    v281 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef0);
    ecx282 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe5bc);
    fun_3f2747b(ecx282, ecx280, v281, ecx280, 0x1eb5, ecx282, ecx280, v281, ecx280, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe5c8, "?_Xout_of_range@std@@YAXPBD@Z", 0x1eb5);
    ecx283 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef0);
    v284 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef4);
    ecx285 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe5e0);
    fun_3f2747b(ecx285, ecx283, v284, ecx283, 0x1eb5, ecx285, ecx283, v284, ecx283, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe5ec, "??0_Lockit@std@@QAE@H@Z", 0x1eb5);
    ecx286 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff58);
    v287 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff64);
    ecx288 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe604);
    fun_3f2747b(ecx288, ecx286, v287, ecx286, 0x1eb5, ecx288, ecx286, v287, ecx286, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe610, "_Mtx_current_owns", 0x1eb5);
    ecx289 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef4);
    v290 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef8);
    ecx291 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe628);
    fun_3f2747b(ecx291, ecx289, v290, ecx289, 0x1eb5, ecx291, ecx289, v290, ecx289, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe634, "??1_Lockit@std@@QAE@XZ", 0x1eb5);
    ecx292 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff64);
    v293 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff70);
    ecx294 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe64c);
    fun_3f2747b(ecx294, ecx292, v293, ecx292, 0x1eb5, ecx294, ecx292, v293, ecx292, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe658, "?_Getcat@?$codecvt@DDU_Mbstatet@@@std@@SAIPAPBVfacet@locale@2@PBV42@@Z", 0x1eb5);
    ecx295 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb0);
    v296 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb8);
    ecx297 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe670);
    fun_3f2747b(ecx297, ecx295, v296, ecx295, 0x1eb5, ecx297, ecx295, v296, ecx295, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe67c, "?_Assign@_ContextCallback@details@Concurrency@@AAEXPAX@Z", 0x1eb5);
    ecx298 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef8);
    v299 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffefc);
    ecx300 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe694);
    fun_3f2747b(ecx300, ecx298, v299, ecx298, 0x1eb5, ecx300, ecx298, v299, ecx298, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe6a0, "?_Getgloballocale@locale@std@@CAPAV_Locimp@12@XZ", 0x1eb5);
    ecx301 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed4);
    v302 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed8);
    ecx303 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe6b8);
    fun_3f2747b(ecx303, ecx301, v302, ecx301, 0x1eb5, ecx303, ecx301, v302, ecx301, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe6c4, "?good@ios_base@std@@QBE_NXZ", 0x1eb5);
    ecx304 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc24);
    v305 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc54);
    ecx306 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe6dc);
    fun_3f2747b(ecx306, ecx304, v305, ecx304, 0x1eb5, ecx306, ecx304, v305, ecx304, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe6e8, "?ReportUnhandledError@_ExceptionHolder@details@Concurrency@@AAEXXZ", 0x1eb5);
    ecx307 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea8);
    v308 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb0);
    ecx309 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe700);
    fun_3f2747b(ecx309, ecx307, v308, ecx307, 0x1eb5, ecx309, ecx307, v308, ecx307, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe70c, "?write@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@PBD_J@Z", 0x1eb5);
    ecx310 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb18);
    v311 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb44);
    ecx312 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe724);
    fun_3f2747b(ecx312, ecx310, v311, ecx310, 0x1eb5, ecx312, ecx310, v311, ecx310, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe730, "?widen@?$basic_ios@DU?$char_traits@D@std@@@std@@QBEDD@Z", 0x1eb5);
    ecx313 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff70);
    v314 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff7c);
    ecx315 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe748);
    fun_3f2747b(ecx315, ecx313, v314, ecx313, 0x1eb5, ecx315, ecx313, v314, ecx313, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe754, "?_Ipfx@?$basic_istream@DU?$char_traits@D@std@@@std@@QAE_N_N@Z", 0x1eb5);
    ecx316 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea0);
    v317 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea8);
    ecx318 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe76c);
    fun_3f2747b(ecx318, ecx316, v317, ecx316, 0x1eb5, ecx318, ecx316, v317, ecx316, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe778, "?sgetc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", 0x1eb5);
    ecx319 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe98);
    v320 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea0);
    ecx321 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe790);
    fun_3f2747b(ecx321, ecx319, v320, ecx319, 0x1eb5, ecx321, ecx319, v320, ecx319, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe79c, "?copyfmt@ios_base@std@@QAEAAV12@ABV12@@Z", 0x1eb5);
    ecx322 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe90);
    v323 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe98);
    ecx324 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe7b4);
    fun_3f2747b(ecx324, ecx322, v323, ecx322, 0x1eb5, ecx324, ecx322, v323, ecx322, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe7c0, "?flush@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV12@XZ", 0x1eb5);
    ecx325 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff40);
    v326 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff4c);
    ecx327 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe7d8);
    fun_3f2747b(ecx327, ecx325, v326, ecx325, 0x1eb5, ecx327, ecx325, v326, ecx325, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe7e4, "?setbuf@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAEPAV12@PAD_J@Z", 0x1eb5);
    ecx328 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee0);
    v329 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee4);
    ecx330 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe7fc);
    fun_3f2747b(ecx330, ecx328, v329, ecx328, 0x1eb5, ecx330, ecx328, v329, ecx328, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe808, "?_Throw_Cpp_error@std@@YAXH@Z", 0x1eb5);
    ecx331 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffefc);
    v332 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff00);
    ecx333 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe820);
    fun_3f2747b(ecx333, ecx331, v332, ecx331, 0x1eb5, ecx333, ecx331, v332, ecx331, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe82c, "?sputc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHD@Z", 0x1eb5);
    ecx334 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe28);
    v335 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe3c);
    ecx336 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe844);
    fun_3f2747b(ecx336, ecx334, v335, ecx334, 0x1eb5, ecx336, ecx334, v335, ecx334, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe850, "?_Osfx@?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEXXZ", 0x1eb5);
    ecx337 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff34);
    v338 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff40);
    ecx339 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe868);
    fun_3f2747b(ecx339, ecx337, v338, ecx337, 0x1eb5, ecx339, ecx337, v338, ecx337, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe874, "??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@H@Z", 0x1eb5);
    ecx340 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffec4);
    v341 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed0);
    ecx342 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe88c);
    fun_3f2747b(ecx342, ecx340, v341, ecx340, 0x1eb5, ecx342, ecx340, v341, ecx340, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe898, "??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@M@Z", 0x1eb5);
    ecx343 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb8);
    v344 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffec4);
    ecx345 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe8b0);
    fun_3f2747b(ecx345, ecx343, v344, ecx343, 0x1eb5, ecx345, ecx343, v344, ecx343, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe8bc, "??4?$_Yarn@G@std@@QAEAAV01@PBG@Z", 0x1eb5);
    ecx346 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe3c);
    v347 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe50);
    ecx348 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe8d4);
    fun_3f2747b(ecx348, ecx346, v347, ecx346, 0x1eb5, ecx348, ecx346, v347, ecx346, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe8e0, "?_Fiopen@std@@YAPAU_iobuf@@PBDHH@Z", 0x1eb5);
    ecx349 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff00);
    v350 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff04);
    ecx351 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe8f8);
    fun_3f2747b(ecx351, ecx349, v350, ecx349, 0x1eb5, ecx351, ecx349, v350, ecx349, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe904, "?_Syserror_map@std@@YAPBDH@Z", 0x1eb5);
    ecx352 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed0);
    v353 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed4);
    ecx354 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe91c);
    fun_3f2747b(ecx354, ecx352, v353, ecx352, 0x1eb5, ecx354, ecx352, v353, ecx352, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe928, "?_Winerror_message@std@@YAKKPADK@Z", 0x1eb5);
    ecx355 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa0);
    v356 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa4);
    ecx357 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe940);
    fun_3f2747b(ecx357, ecx355, v356, ecx355, 0x1eb5, ecx357, ecx355, v356, ecx355, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe94c, "?_Xbad_alloc@std@@YAXXZ", 0x1eb5);
    ecx358 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff9c);
    v359 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa0);
    ecx360 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe964);
    fun_3f2747b(ecx360, ecx358, v359, ecx358, 0x1eb5, ecx360, ecx358, v359, ecx358, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe970, "_Cnd_broadcast", 0x1eb5);
    ecx361 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff98);
    v362 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff9c);
    ecx363 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe988);
    fun_3f2747b(ecx363, ecx361, v362, ecx361, 0x1eb5, ecx363, ecx361, v362, ecx361, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe994, "?_Xinvalid_argument@std@@YAXPBD@Z", 0x1eb5);
    ecx364 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff94);
    v365 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff98);
    ecx366 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe9ac);
    fun_3f2747b(ecx366, ecx364, v365, ecx364, 0x1eb5, ecx366, ecx364, v365, ecx364, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe9b8, "?do_encoding@?$codecvt@_SDU_Mbstatet@@@std@@MBEHXZ", 0x1eb5);
    ecx367 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff90);
    v368 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff94);
    ecx369 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe9d0);
    fun_3f2747b(ecx369, ecx367, v368, ecx367, 0x1eb5, ecx369, ecx367, v368, ecx367, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe9dc, "?uflow@?$basic_streambuf@DU?$char_traits@D@std@@@std@@MAEHXZ", 0x1eb5);
    ecx370 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff8c);
    v371 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff90);
    ecx372 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe9f4);
    fun_3f2747b(ecx372, ecx370, v371, ecx370, 0x1eb5, ecx372, ecx370, v371, ecx370, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffea00, "?uncaught_exception@std@@YA_NXZ", 0x1eb5);
    ecx373 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff88);
    v374 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff8c);
    ecx375 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffea18);
    fun_3f2747b(ecx375, ecx373, v374, ecx373, 0x1eb5, ecx375, ecx373, v374, ecx373, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffea24, "_Cnd_signal", 0x1eb5);
    ecx376 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff84);
    v377 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff88);
    ecx378 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffea3c);
    fun_3f2747b(ecx378, ecx376, v377, ecx376, 0x1eb5, ecx378, ecx376, v377, ecx376, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffea48, "_Cnd_timedwait", 0x1eb5);
    ecx379 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff80);
    v380 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff84);
    ecx381 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffea60);
    fun_3f2747b(ecx381, ecx379, v380, ecx379, 0x1eb5, ecx381, ecx379, v380, ecx379, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffea6c, "_Cnd_wait", 0x1eb5);
    ecx382 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff7c);
    v383 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff80);
    ecx384 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffea84);
    fun_3f2747b(ecx384, ecx382, v383, ecx382, 0x1eb5, ecx384, ecx382, v383, ecx382, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffea90, "_Mtx_destroy_in_situ", 0x1eb5);
    ecx385 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffcc);
    v386 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd0);
    ecx387 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeaa8);
    fun_3f2747b(ecx387, ecx385, v386, ecx385, 0x1eb5, ecx387, ecx385, v386, ecx385, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeab4, "_Mtx_init_in_situ", 0x1eb5);
    ecx388 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc4);
    v389 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc8);
    ecx390 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeacc);
    fun_3f2747b(ecx390, ecx388, v389, ecx388, 0x1eb5, ecx390, ecx388, v389, ecx388, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffead8, "_Mtx_lock", 0x1eb5);
    ecx391 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc0);
    v392 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc4);
    ecx393 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeaf0);
    fun_3f2747b(ecx393, ecx391, v392, ecx391, 0x1eb5, ecx393, ecx391, v392, ecx391, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeafc, "_Query_perf_counter", 0x1eb5);
    ecx394 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc8);
    v395 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffcc);
    ecx396 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeb14);
    fun_3f2747b(ecx396, ecx394, v395, ecx394, 0x1eb5, ecx396, ecx394, v395, ecx394, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeb20, "_Query_perf_frequency", 0x1eb5);
    ecx397 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa4);
    v398 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa8);
    ecx399 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeb38);
    fun_3f2747b(ecx399, ecx397, v398, ecx397, 0x1eb5, ecx399, ecx397, v398, ecx397, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeb44, "_Thrd_detach", 0x1eb5);
    ecx400 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa8);
    v401 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffac);
    ecx402 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeb5c);
    fun_3f2747b(ecx402, ecx400, v401, ecx400, 0x1eb5, ecx402, ecx400, v401, ecx400, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeb68, "_Thrd_hardware_concurrency", 0x1eb5);
    ecx403 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffac);
    v404 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb0);
    ecx405 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeb80);
    fun_3f2747b(ecx405, ecx403, v404, ecx403, 0x1eb5, ecx405, ecx403, v404, ecx403, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffeb8c, "_Xtime_get_ticks", 0x1eb5);
    ecx406 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb0);
    v407 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb4);
    ecx408 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffeba4);
    fun_3f2747b(ecx408, ecx406, v407, ecx406, 0x1eb5, ecx408, ecx406, v407, ecx406, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffebb0, "?snextc@?$basic_streambuf@DU?$char_traits@D@std@@@std@@QAEHXZ", 0x1eb5);
    ecx409 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb4);
    v410 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb8);
    ecx411 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffebc8);
    fun_3f2747b(ecx411, ecx409, v410, ecx409, 0x1eb5, ecx411, ecx409, v410, ecx409, 0x1eb5);
    g42111b0 = 0;
    g42111b4 = 0;
    g42111b8 = 0;
    v412 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffebd4);
    v413 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe268);
    fun_3f275bd(0x42111b0, v413, v412, 0x15f80c, 0x1eb5, 0x42111b0, v413, v412, 0x15f80c, 0x1eb5);
    v414 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe268);
    fun_3f27959(0x42111b0, v414, 36, 67, 0x3f270a9, 0x1eb5, 0x42111b0, v414, 36, 67, 0x3f270a9, 0x1eb5);
    fun_3f2750b(0x42111bc, "vcruntime140.dll", 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcd74, "_CxxThrowException", 0x1eb5);
    ecx415 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc0c);
    v416 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc54);
    ecx417 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcd8c);
    fun_3f2747b(ecx417, ecx415, v416, ecx415, 0x1eb5, ecx417, ecx415, v416, ecx415, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcd98, "__std_exception_copy", 0x1eb5);
    ecx418 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb4);
    v419 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb8);
    ecx420 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcdb0);
    fun_3f2747b(ecx420, ecx418, v419, ecx418, 0x1eb5, ecx420, ecx418, v419, ecx418, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcdbc, "__current_exception", 0x1eb5);
    ecx421 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb0);
    v422 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb4);
    ecx423 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcdd4);
    fun_3f2747b(ecx423, ecx421, v422, ecx421, 0x1eb5, ecx423, ecx421, v422, ecx421, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcde0, "__std_exception_destroy", 0x1eb5);
    ecx424 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffac);
    v425 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb0);
    ecx426 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcdf8);
    fun_3f2747b(ecx426, ecx424, v425, ecx424, 0x1eb5, ecx426, ecx424, v425, ecx424, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffce04, "memmove", 0x1eb5);
    ecx427 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa8);
    v428 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffac);
    ecx429 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffce1c);
    fun_3f2747b(ecx429, ecx427, v428, ecx427, 0x1eb5, ecx429, ecx427, v428, ecx427, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffce28, "__CxxFrameHandler", 0x1eb5);
    ecx430 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa4);
    v431 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa8);
    ecx432 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffce40);
    fun_3f2747b(ecx432, ecx430, v431, ecx430, 0x1eb5, ecx432, ecx430, v431, ecx430, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffce4c, "__current_exception_context", 0x1eb5);
    ecx433 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc8);
    v434 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffcc);
    ecx435 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffce64);
    fun_3f2747b(ecx435, ecx433, v434, ecx433, 0x1eb5, ecx435, ecx433, v434, ecx433, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffce70, "__std_type_info_destroy_list", 0x1eb5);
    ecx436 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc0);
    v437 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc4);
    ecx438 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffce88);
    fun_3f2747b(ecx438, ecx436, v437, ecx436, 0x1eb5, ecx438, ecx436, v437, ecx436, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffce94, "memcpy", 0x1eb5);
    ecx439 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc4);
    v440 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc8);
    ecx441 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffceac);
    fun_3f2747b(ecx441, ecx439, v440, ecx439, 0x1eb5, ecx441, ecx439, v440, ecx439, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffceb8, "__std_terminate", 0x1eb5);
    ecx442 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffcc);
    v443 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd0);
    ecx444 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffced0);
    fun_3f2747b(ecx444, ecx442, v443, ecx442, 0x1eb5, ecx444, ecx442, v443, ecx442, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcedc, "_except_handler4_common", 0x1eb5);
    ecx445 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff7c);
    v446 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff80);
    ecx447 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcef4);
    fun_3f2747b(ecx447, ecx445, v446, ecx445, 0x1eb5, ecx447, ecx445, v446, ecx445, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf00, "_purecall", 0x1eb5);
    ecx448 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff80);
    v449 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff84);
    ecx450 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf18);
    fun_3f2747b(ecx450, ecx448, v449, ecx448, 0x1eb5, ecx450, ecx448, v449, ecx448, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf24, "_setjmp3", 0x1eb5);
    ecx451 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff84);
    v452 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff88);
    ecx453 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf3c);
    fun_3f2747b(ecx453, ecx451, v452, ecx451, 0x1eb5, ecx453, ecx451, v452, ecx451, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf48, "longjmp", 0x1eb5);
    ecx454 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff88);
    v455 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff8c);
    ecx456 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf60);
    fun_3f2747b(ecx456, ecx454, v455, ecx454, 0x1eb5, ecx456, ecx454, v455, ecx454, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf6c, "memchr", 0x1eb5);
    ecx457 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff8c);
    v458 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff90);
    ecx459 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf84);
    fun_3f2747b(ecx459, ecx457, v458, ecx457, 0x1eb5, ecx459, ecx457, v458, ecx457, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcf90, "memcmp", 0x1eb5);
    ecx460 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff90);
    v461 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff94);
    ecx462 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcfa8);
    fun_3f2747b(ecx462, ecx460, v461, ecx460, 0x1eb5, ecx462, ecx460, v461, ecx460, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcfb4, "memset", 0x1eb5);
    ecx463 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff94);
    v464 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff98);
    ecx465 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcfcc);
    fun_3f2747b(ecx465, ecx463, v464, ecx463, 0x1eb5, ecx465, ecx463, v464, ecx463, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcfd8, "strchr", 0x1eb5);
    ecx466 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff98);
    v467 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff9c);
    ecx468 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcff0);
    fun_3f2747b(ecx468, ecx466, v467, ecx466, 0x1eb5, ecx468, ecx466, v467, ecx466, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffcffc, "strrchr", 0x1eb5);
    ecx469 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff9c);
    v470 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa0);
    ecx471 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd014);
    fun_3f2747b(ecx471, ecx469, v470, ecx469, 0x1eb5, ecx471, ecx469, v470, ecx469, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd020, "strstr", 0x1eb5);
    ecx472 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa0);
    v473 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa4);
    ecx474 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd038);
    fun_3f2747b(ecx474, ecx472, v473, ecx472, 0x1eb5, ecx474, ecx472, v473, ecx472, 0x1eb5);
    g42111d4 = 0;
    g42111d8 = 0;
    g42111dc = 0;
    v475 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd044);
    v476 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcd74);
    fun_3f275bd(0x42111d4, v476, v475, 0x15f80c, 0x1eb5, 0x42111d4, v476, v475, 0x15f80c, 0x1eb5);
    v477 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffcd74);
    fun_3f27959(0x42111d4, v477, 36, 20, 0x3f270a9, 0x1eb5, 0x42111d4, v477, 36, 20, 0x3f270a9, 0x1eb5);
    fun_3f2750b(0x42111e0, "ntdll.dll", 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff954, "RtlEnterCriticalSection", 0x1eb5);
    ecx478 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe60);
    v479 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe78);
    ecx480 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff96c);
    fun_3f2747b(ecx480, ecx478, v479, ecx478, 0x1eb5, ecx480, ecx478, v479, ecx478, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff978, "RtlLeaveCriticalSection", 0x1eb5);
    ecx481 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcd4);
    v482 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcec);
    ecx483 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff990);
    fun_3f2747b(ecx483, ecx481, v482, ecx481, 0x1eb5, ecx483, ecx481, v482, ecx481, 0x1eb5);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff99c, "RtlInitializeSListHead", 0x1eb5);
    ecx484 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe8);
    v485 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffff0);
    ecx486 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff9b4);
    fun_3f2747b(ecx486, ecx484, v485, ecx484, 0x15f3da, ecx486, ecx484, v485, ecx484, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff9c0, "RtlDeleteCriticalSection", 0x15f3da);
    ecx487 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb8);
    v488 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc0);
    ecx489 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff9d8);
    fun_3f2747b(ecx489, ecx487, v488, ecx487, 0x15f3da, ecx489, ecx487, v488, ecx487, 0x15f3da);
    g42111f8 = 0;
    g42111fc = 0;
    g4211200 = 0;
    v490 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff9e4);
    v491 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff954);
    fun_3f275bd(0x42111f8, v491, v490, 0x15f998, 0x15f3da, 0x42111f8, v491, v490, 0x15f998, 0x15f3da);
    v492 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff954);
    fun_3f27959(0x42111f8, v492, 36, 4, 0x3f270a9, 0x15f3da, 0x42111f8, v492, 36, 4, 0x3f270a9, 0x15f3da);
    fun_3f2750b(0x4211204, "ucrtbase.dll", 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd044, "fgetpos", 0x15f3da);
    ecx493 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb08);
    v494 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb10);
    ecx495 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd05c);
    fun_3f2747b(ecx495, ecx493, v494, ecx493, 0x15f3da, ecx495, ecx493, v494, ecx493, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd068, "fputc", 0x15f3da);
    ecx496 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffafc);
    v497 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb08);
    ecx498 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd080);
    fun_3f2747b(ecx498, ecx496, v497, ecx496, 0x15f3da, ecx498, ecx496, v497, ecx496, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd08c, "calloc", 0x15f3da);
    ecx499 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffde4);
    v500 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe00);
    ecx501 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd0a4);
    fun_3f2747b(ecx501, ecx499, v500, ecx499, 0x15f3da, ecx501, ecx499, v500, ecx499, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd0b0, "_invalid_parameter_noinfo_noreturn", 0x15f3da);
    ecx502 = 0x1f3;
    eax503 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd044);
    while (ecx502) {
        --ecx502;
    }
    ecx504 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffc878);
    ecx505 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd0c8);
    fun_3f2747b(ecx505, ecx504, eax503, ecx504, 0x15f3da, ecx505, ecx504, eax503, ecx504, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd0d4, "__stdio_common_vsprintf", 0x15f3da);
    ecx506 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcd8);
    v507 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcec);
    ecx508 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd0ec);
    fun_3f2747b(ecx508, ecx506, v507, ecx506, 0x15f3da, ecx508, ecx506, v507, ecx506, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd0f8, "_atoi64", 0x15f3da);
    ecx509 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffaa4);
    v510 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffab4);
    ecx511 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd110);
    fun_3f2747b(ecx511, ecx509, v510, ecx509, 0x15f3da, ecx511, ecx509, v510, ecx509, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd11c, "_get_stream_buffer_pointers", 0x15f3da);
    ecx512 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffaf0);
    v513 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffafc);
    ecx514 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd134);
    fun_3f2747b(ecx514, ecx512, v513, ecx512, 0x15f3da, ecx514, ecx512, v513, ecx512, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd140, "_lock_file", 0x15f3da);
    ecx515 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb10);
    v516 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb18);
    ecx517 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd158);
    fun_3f2747b(ecx517, ecx515, v516, ecx515, 0x15f3da, ecx517, ecx515, v516, ecx515, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd164, "atoi", 0x15f3da);
    ecx518 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb4);
    v519 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb8);
    ecx520 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd17c);
    fun_3f2747b(ecx520, ecx518, v519, ecx518, 0x15f3da, ecx520, ecx518, v519, ecx518, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd188, "__stdio_common_vswprintf", 0x15f3da);
    ecx521 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe50);
    v522 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe58);
    ecx523 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd1a0);
    fun_3f2747b(ecx523, ecx521, v522, ecx521, 0x15f3da, ecx523, ecx521, v522, ecx521, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd1ac, "_unlock_file", 0x15f3da);
    ecx524 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed8);
    v525 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee0);
    ecx526 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd1c4);
    fun_3f2747b(ecx526, ecx524, v525, ecx524, 0x15f3da, ecx526, ecx524, v525, ecx524, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd1d0, "fgetc", 0x15f3da);
    ecx527 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffa94);
    v528 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffaa4);
    ecx529 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd1e8);
    fun_3f2747b(ecx529, ecx527, v528, ecx527, 0x15f3da, ecx529, ecx527, v528, ecx527, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd1f4, "fwrite", 0x15f3da);
    ecx530 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe40);
    v531 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe50);
    ecx532 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd20c);
    fun_3f2747b(ecx532, ecx530, v531, ecx530, 0x15f3da, ecx532, ecx530, v531, ecx530, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd218, "ungetc", 0x15f3da);
    ecx533 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffae4);
    v534 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffaf0);
    ecx535 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd230);
    fun_3f2747b(ecx535, ecx533, v534, ecx533, 0x15f3da, ecx535, ecx533, v534, ecx533, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd23c, "_CIcosh", 0x15f3da);
    ecx536 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb0);
    v537 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb4);
    ecx538 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd254);
    fun_3f2747b(ecx538, ecx536, v537, ecx536, 0x15f3da, ecx538, ecx536, v537, ecx536, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd260, "fsetpos", 0x15f3da);
    ecx539 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffebc);
    v540 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffec4);
    ecx541 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd278);
    fun_3f2747b(ecx541, ecx539, v540, ecx539, 0x15f3da, ecx541, ecx539, v540, ecx539, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd284, "abort", 0x15f3da);
    ecx542 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffac);
    v543 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffb0);
    ecx544 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd29c);
    fun_3f2747b(ecx544, ecx542, v543, ecx542, 0x15f3da, ecx544, ecx542, v543, ecx542, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd2a8, "atof", 0x15f3da);
    ecx545 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffec8);
    v546 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed0);
    ecx547 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd2c0);
    fun_3f2747b(ecx547, ecx545, v546, ecx545, 0x15f3da, ecx547, ecx545, v546, ecx545, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd2cc, "_fseeki64", 0x15f3da);
    ecx548 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff38);
    v549 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff40);
    ecx550 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd2e4);
    fun_3f2747b(ecx550, ecx548, v549, ecx548, 0x15f3da, ecx550, ecx548, v549, ecx548, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd2f0, "fread", 0x15f3da);
    ecx551 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffad8);
    v552 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffae4);
    ecx553 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd308);
    fun_3f2747b(ecx553, ecx551, v552, ecx551, 0x15f3da, ecx553, ecx551, v552, ecx551, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd314, "setvbuf", 0x15f3da);
    ecx554 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff44);
    v555 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff4c);
    ecx556 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd32c);
    fun_3f2747b(ecx556, ecx554, v555, ecx554, 0x15f3da, ecx556, ecx554, v555, ecx554, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd338, "fflush", 0x15f3da);
    ecx557 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff74);
    v558 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff7c);
    ecx559 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd350);
    fun_3f2747b(ecx559, ecx557, v558, ecx557, 0x15f3da, ecx559, ecx557, v558, ecx557, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd35c, "_cexit", 0x15f3da);
    ecx560 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa8);
    v561 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffac);
    ecx562 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd374);
    fun_3f2747b(ecx562, ecx560, v561, ecx560, 0x15f3da, ecx562, ecx560, v561, ecx560, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd380, "fclose", 0x15f3da);
    ecx563 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe2c);
    v564 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe3c);
    ecx565 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd398);
    fun_3f2747b(ecx565, ecx563, v564, ecx563, 0x15f3da, ecx565, ecx563, v564, ecx563, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd3a4, "strcat_s", 0x15f3da);
    ecx566 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffacc);
    v567 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffad8);
    ecx568 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd3bc);
    fun_3f2747b(ecx568, ecx566, v567, ecx566, 0x15f3da, ecx568, ecx566, v567, ecx566, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd3c8, "rand", 0x15f3da);
    ecx569 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb64);
    v570 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffbcc);
    ecx571 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd3e0);
    fun_3f2747b(ecx571, ecx569, v570, ecx569, 0x15f3da, ecx571, ecx569, v570, ecx569, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd3ec, "_fdtest", 0x15f3da);
    ecx572 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc0c);
    v573 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc54);
    ecx574 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd404);
    fun_3f2747b(ecx574, ecx572, v573, ecx572, 0x15f3da, ecx574, ecx572, v573, ecx572, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd410, "_configure_narrow_argv", 0x15f3da);
    ecx575 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa4);
    v576 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa8);
    ecx577 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd428);
    fun_3f2747b(ecx577, ecx575, v576, ecx575, 0x15f3da, ecx577, ecx575, v576, ecx575, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd434, "__stdio_common_vsprintf_s", 0x15f3da);
    ecx578 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffac0);
    v579 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffacc);
    ecx580 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd44c);
    fun_3f2747b(ecx580, ecx578, v579, ecx578, 0x15f3da, ecx580, ecx578, v579, ecx578, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd458, "toupper", 0x15f3da);
    ecx581 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc8);
    v582 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffcc);
    ecx583 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd470);
    fun_3f2747b(ecx583, ecx581, v582, ecx581, 0x15f3da, ecx583, ecx581, v582, ecx581, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd47c, "strtoul", 0x15f3da);
    ecx584 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe04);
    v585 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe28);
    ecx586 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd494);
    fun_3f2747b(ecx586, ecx584, v585, ecx584, 0x15f3da, ecx586, ecx584, v585, ecx584, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd4a0, "_crt_at_quick_exit", 0x15f3da);
    ecx587 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc0);
    v588 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc4);
    ecx589 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd4b8);
    fun_3f2747b(ecx589, ecx587, v588, ecx587, 0x15f3da, ecx589, ecx587, v588, ecx587, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd4c4, "strcpy_s", 0x15f3da);
    ecx590 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe64);
    v591 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe78);
    ecx592 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd4dc);
    fun_3f2747b(ecx592, ecx590, v591, ecx590, 0x15f3da, ecx592, ecx590, v591, ecx590, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd4e8, "_gmtime64", 0x15f3da);
    ecx593 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc4);
    v594 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc8);
    ecx595 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd500);
    fun_3f2747b(ecx595, ecx593, v594, ecx593, 0x15f3da, ecx595, ecx593, v594, ecx593, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd50c, "tolower", 0x15f3da);
    ecx596 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffab4);
    v597 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffac0);
    ecx598 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd524);
    fun_3f2747b(ecx598, ecx596, v597, ecx596, 0x15f3da, ecx598, ecx596, v597, ecx596, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd530, "wcslen", 0x15f3da);
    ecx599 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc78);
    v600 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc84);
    ecx601 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd548);
    fun_3f2747b(ecx601, ecx599, v600, ecx599, 0x15f3da, ecx601, ecx599, v600, ecx599, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd554, "_execute_onexit_table", 0x15f3da);
    ecx602 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffcc);
    v603 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd0);
    ecx604 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd56c);
    fun_3f2747b(ecx604, ecx602, v603, ecx602, 0x15f3da, ecx604, ecx602, v603, ecx602, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd578, "terminate", 0x15f3da);
    ecx605 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdc0);
    v606 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffde0);
    ecx607 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd590);
    fun_3f2747b(ecx607, ecx605, v606, ecx605, 0x15f3da, ecx607, ecx605, v606, ecx605, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd59c, "_W_Getdays", 0x15f3da);
    ecx608 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc68);
    v609 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc74);
    ecx610 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd5b4);
    fun_3f2747b(ecx610, ecx608, v609, ecx608, 0x15f3da, ecx610, ecx608, v609, ecx608, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd5c0, "free", 0x15f3da);
    ecx611 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb1c);
    v612 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffb44);
    ecx613 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd5d8);
    fun_3f2747b(ecx613, ecx611, v612, ecx611, 0x15f3da, ecx613, ecx611, v612, ecx611, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd5e4, "_crt_atexit", 0x15f3da);
    ecx614 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff7c);
    v615 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff80);
    ecx616 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd5fc);
    fun_3f2747b(ecx616, ecx614, v615, ecx614, 0x15f3da, ecx616, ecx614, v615, ecx614, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd608, "_CItanh", 0x15f3da);
    ecx617 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff80);
    v618 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff84);
    ecx619 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd620);
    fun_3f2747b(ecx619, ecx617, v618, ecx617, 0x15f3da, ecx619, ecx617, v618, ecx617, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd62c, "_W_Getmonths", 0x15f3da);
    ecx620 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc58);
    v621 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc64);
    ecx622 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd644);
    fun_3f2747b(ecx622, ecx620, v621, ecx620, 0x15f3da, ecx622, ecx620, v621, ecx620, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd650, "_except1", 0x15f3da);
    ecx623 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff84);
    v624 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff88);
    ecx625 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd668);
    fun_3f2747b(ecx625, ecx623, v624, ecx623, 0x15f3da, ecx625, ecx623, v624, ecx623, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd674, "_beginthreadex", 0x15f3da);
    ecx626 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff88);
    v627 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff8c);
    ecx628 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd68c);
    fun_3f2747b(ecx628, ecx626, v627, ecx626, 0x15f3da, ecx628, ecx626, v627, ecx626, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd698, "_errno", 0x15f3da);
    ecx629 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe7c);
    v630 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe88);
    ecx631 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd6b0);
    fun_3f2747b(ecx631, ecx629, v630, ecx629, 0x15f3da, ecx631, ecx629, v630, ecx629, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd6bc, "_strtoi64", 0x15f3da);
    ecx632 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff68);
    v633 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff70);
    ecx634 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd6d4);
    fun_3f2747b(ecx634, ecx632, v633, ecx632, 0x15f3da, ecx634, ecx632, v633, ecx632, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd6e0, "strtod", 0x15f3da);
    ecx635 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff5c);
    v636 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff64);
    ecx637 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd6f8);
    fun_3f2747b(ecx637, ecx635, v636, ecx635, 0x15f3da, ecx637, ecx635, v636, ecx635, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd704, "malloc", 0x15f3da);
    ecx638 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff08);
    v639 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff14);
    ecx640 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd71c);
    fun_3f2747b(ecx640, ecx638, v639, ecx638, 0x15f3da, ecx640, ecx638, v639, ecx638, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd728, "_initialize_onexit_table", 0x15f3da);
    ecx641 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff8c);
    v642 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff90);
    ecx643 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd740);
    fun_3f2747b(ecx643, ecx641, v642, ecx641, 0x15f3da, ecx643, ecx641, v642, ecx641, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd74c, "___lc_codepage_func", 0x15f3da);
    ecx644 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff50);
    v645 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff58);
    ecx646 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd764);
    fun_3f2747b(ecx646, ecx644, v645, ecx644, 0x15f3da, ecx646, ecx644, v645, ecx644, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd770, "_CIatan2", 0x15f3da);
    ecx647 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff90);
    v648 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff94);
    ecx649 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd788);
    fun_3f2747b(ecx649, ecx647, v648, ecx647, 0x15f3da, ecx649, ecx647, v648, ecx647, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd794, "_CIfmod", 0x15f3da);
    ecx650 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff94);
    v651 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff98);
    ecx652 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd7ac);
    fun_3f2747b(ecx652, ecx650, v651, ecx650, 0x15f3da, ecx652, ecx650, v651, ecx650, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd7b8, "_libm_sse2_asin_precise", 0x15f3da);
    ecx653 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff98);
    v654 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff9c);
    ecx655 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd7d0);
    fun_3f2747b(ecx655, ecx653, v654, ecx653, 0x15f3da, ecx655, ecx653, v654, ecx653, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd7dc, "_CIsinh", 0x15f3da);
    ecx656 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff9c);
    v657 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa0);
    ecx658 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd7f4);
    fun_3f2747b(ecx658, ecx656, v657, ecx656, 0x15f3da, ecx658, ecx656, v657, ecx656, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd800, "__acrt_iob_func", 0x15f3da);
    ecx659 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa0);
    v660 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffa4);
    ecx661 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd818);
    fun_3f2747b(ecx661, ecx659, v660, ecx659, 0x15f3da, ecx661, ecx659, v660, ecx659, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd824, "__stdio_common_vfprintf", 0x15f3da);
    ecx662 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed0);
    v663 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed4);
    ecx664 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd83c);
    fun_3f2747b(ecx664, ecx662, v663, ecx662, 0x15f3da, ecx664, ecx662, v663, ecx662, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd848, "_callnewh", 0x15f3da);
    ecx665 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff00);
    v666 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff04);
    ecx667 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd860);
    fun_3f2747b(ecx667, ecx665, v666, ecx665, 0x15f3da, ecx667, ecx665, v666, ecx665, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd86c, "_difftime64", 0x15f3da);
    ecx668 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffefc);
    v669 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff00);
    ecx670 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd884);
    fun_3f2747b(ecx670, ecx668, v669, ecx668, 0x15f3da, ecx670, ecx668, v669, ecx668, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd890, "_ftelli64", 0x15f3da);
    ecx671 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee0);
    v672 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee4);
    ecx673 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd8a8);
    fun_3f2747b(ecx673, ecx671, v672, ecx671, 0x15f3da, ecx673, ecx671, v672, ecx671, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd8b4, "_initialize_narrow_environment", 0x15f3da);
    ecx674 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed4);
    v675 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed8);
    ecx676 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd8cc);
    fun_3f2747b(ecx676, ecx674, v675, ecx674, 0x15f3da, ecx676, ecx674, v675, ecx674, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd8d8, "_initterm", 0x15f3da);
    ecx677 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef8);
    v678 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffefc);
    ecx679 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd8f0);
    fun_3f2747b(ecx679, ecx677, v678, ecx677, 0x15f3da, ecx679, ecx677, v678, ecx677, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd8fc, "_initterm_e", 0x15f3da);
    ecx680 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef4);
    v681 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef8);
    ecx682 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd914);
    fun_3f2747b(ecx682, ecx680, v681, ecx680, 0x15f3da, ecx682, ecx680, v681, ecx680, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd920, "_libm_sse2_acos_precise", 0x15f3da);
    ecx683 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef0);
    v684 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef4);
    ecx685 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd938);
    fun_3f2747b(ecx685, ecx683, v684, ecx683, 0x15f3da, ecx685, ecx683, v684, ecx683, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd944, "_libm_sse2_cos_precise", 0x15f3da);
    ecx686 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeec);
    v687 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffef0);
    ecx688 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd95c);
    fun_3f2747b(ecx688, ecx686, v687, ecx686, 0x15f3da, ecx688, ecx686, v687, ecx686, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd968, "_libm_sse2_exp_precise", 0x15f3da);
    ecx689 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee4);
    v690 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee8);
    ecx691 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd980);
    fun_3f2747b(ecx691, ecx689, v690, ecx689, 0x15f3da, ecx691, ecx689, v690, ecx689, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd98c, "_libm_sse2_log10_precise", 0x15f3da);
    ecx692 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee8);
    v693 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeec);
    ecx694 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd9a4);
    fun_3f2747b(ecx694, ecx692, v693, ecx692, 0x15f3da, ecx694, ecx692, v693, ecx692, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd9b0, "_libm_sse2_log_precise", 0x15f3da);
    ecx695 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd0);
    v696 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd4);
    ecx697 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd9c8);
    fun_3f2747b(ecx697, ecx695, v696, ecx695, 0x15f3da, ecx697, ecx695, v696, ecx695, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd9d4, "_libm_sse2_pow_precise", 0x15f3da);
    ecx698 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd4);
    v699 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd8);
    ecx700 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd9ec);
    fun_3f2747b(ecx700, ecx698, v699, ecx698, 0x15f3da, ecx700, ecx698, v699, ecx698, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffd9f8, "_libm_sse2_sin_precise", 0x15f3da);
    ecx701 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffd8);
    v702 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffdc);
    ecx703 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffda10);
    fun_3f2747b(ecx703, ecx701, v702, ecx701, 0x15f3da, ecx703, ecx701, v702, ecx701, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffda1c, "_libm_sse2_sqrt_precise", 0x15f3da);
    ecx704 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffdc);
    v705 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe0);
    ecx706 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffda34);
    fun_3f2747b(ecx706, ecx704, v705, ecx704, 0x15f3da, ecx706, ecx704, v705, ecx704, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffda40, "_libm_sse2_tan_precise", 0x15f3da);
    ecx707 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe0);
    v708 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe4);
    ecx709 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffda58);
    fun_3f2747b(ecx709, ecx707, v708, ecx707, 0x15f3da, ecx709, ecx707, v708, ecx707, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffda64, "strncmp", 0x15f3da);
    v710 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe8);
    v711 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffe4);
    ecx712 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffda7c);
    fun_3f2747b(ecx712, v711, v710, 0x15fcf2, 0x15f3da, ecx712, v711, v710, 0x15fcf2, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffda88, "_localtime64", 0x15f3da);
    ecx713 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcbc);
    v714 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcc0);
    ecx715 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdaa0);
    fun_3f2747b(ecx715, ecx713, v714, ecx713, 0x15f3da, ecx715, ecx713, v714, ecx713, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdaac, "_mktime64", 0x15f3da);
    ecx716 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc94);
    v717 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc98);
    ecx718 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdac4);
    fun_3f2747b(ecx718, ecx716, v717, ecx716, 0x15f3da, ecx718, ecx716, v717, ecx716, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdad0, "_pclose", 0x15f3da);
    ecx719 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc8c);
    v720 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc90);
    ecx721 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdae8);
    fun_3f2747b(ecx721, ecx719, v720, ecx719, 0x15f3da, ecx721, ecx719, v720, ecx719, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdaf4, "_popen", 0x15f3da);
    ecx722 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc88);
    v723 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc8c);
    ecx724 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb0c);
    fun_3f2747b(ecx724, ecx722, v723, ecx722, 0x15f3da, ecx724, ecx722, v723, ecx722, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb18, "_register_onexit_function", 0x15f3da);
    ecx725 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc84);
    v726 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc88);
    ecx727 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb30);
    fun_3f2747b(ecx727, ecx725, v726, ecx725, 0x15f3da, ecx727, ecx725, v726, ecx725, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb3c, "strcoll", 0x15f3da);
    ecx728 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcc8);
    v729 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffccc);
    ecx730 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb54);
    fun_3f2747b(ecx730, ecx728, v729, ecx728, 0x15f3da, ecx730, ecx728, v729, ecx728, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb60, "_seh_filter_dll", 0x15f3da);
    ecx731 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcc4);
    v732 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcc8);
    ecx733 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb78);
    fun_3f2747b(ecx733, ecx731, v732, ecx731, 0x15f3da, ecx733, ecx731, v732, ecx731, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb84, "setlocale", 0x15f3da);
    ecx734 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcc0);
    v735 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcc4);
    ecx736 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdb9c);
    fun_3f2747b(ecx736, ecx734, v735, ecx734, 0x15f3da, ecx736, ecx734, v735, ecx734, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdba8, "_time64", 0x15f3da);
    ecx737 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc90);
    v738 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc94);
    ecx739 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdbc0);
    fun_3f2747b(ecx739, ecx737, v738, ecx737, 0x15f3da, ecx739, ecx737, v738, ecx737, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdbcc, "acos", 0x15f3da);
    ecx740 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc98);
    v741 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc9c);
    ecx742 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdbe4);
    fun_3f2747b(ecx742, ecx740, v741, ecx740, 0x15f3da, ecx742, ecx740, v741, ecx740, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdbf0, "asin", 0x15f3da);
    ecx743 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffc9c);
    v744 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffca0);
    ecx745 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc08);
    fun_3f2747b(ecx745, ecx743, v744, ecx743, 0x15f3da, ecx745, ecx743, v744, ecx743, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc14, "atan", 0x15f3da);
    ecx746 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffca0);
    v747 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffca4);
    ecx748 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc2c);
    fun_3f2747b(ecx748, ecx746, v747, ecx746, 0x15f3da, ecx748, ecx746, v747, ecx746, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc38, "isgraph", 0x15f3da);
    ecx749 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffca4);
    v750 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffca8);
    ecx751 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc50);
    fun_3f2747b(ecx751, ecx749, v750, ecx749, 0x15f3da, ecx751, ecx749, v750, ecx749, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc5c, "atan2", 0x15f3da);
    ecx752 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffca8);
    v753 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcac);
    ecx754 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc74);
    fun_3f2747b(ecx754, ecx752, v753, ecx752, 0x15f3da, ecx754, ecx752, v753, ecx752, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc80, "ceil", 0x15f3da);
    ecx755 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcac);
    v756 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcb0);
    ecx757 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdc98);
    fun_3f2747b(ecx757, ecx755, v756, ecx755, 0x15f3da, ecx757, ecx755, v756, ecx755, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdca4, "clearerr", 0x15f3da);
    ecx758 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcb8);
    v759 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcbc);
    ecx760 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdcbc);
    fun_3f2747b(ecx760, ecx758, v759, ecx758, 0x15f3da, ecx760, ecx758, v759, ecx758, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdcc8, "clock", 0x15f3da);
    ecx761 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcb0);
    v762 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcb4);
    ecx763 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdce0);
    fun_3f2747b(ecx763, ecx761, v762, ecx761, 0x15f3da, ecx763, ecx761, v762, ecx761, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdcec, "system", 0x15f3da);
    ecx764 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcb4);
    v765 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcb8);
    ecx766 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd04);
    fun_3f2747b(ecx766, ecx764, v765, ecx764, 0x15f3da, ecx766, ecx764, v765, ecx764, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd10, "cos", 0x15f3da);
    ecx767 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd08);
    v768 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd0c);
    ecx769 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd28);
    fun_3f2747b(ecx769, ecx767, v768, ecx767, 0x15f3da, ecx769, ecx767, v768, ecx767, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd34, "exit", 0x15f3da);
    ecx770 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd28);
    v771 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd2c);
    ecx772 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd4c);
    fun_3f2747b(ecx772, ecx770, v771, ecx770, 0x15f3da, ecx772, ecx770, v771, ecx770, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd58, "feof", 0x15f3da);
    ecx773 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd80);
    v774 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd84);
    ecx775 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd70);
    fun_3f2747b(ecx775, ecx773, v774, ecx773, 0x15f3da, ecx775, ecx773, v774, ecx773, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd7c, "floor", 0x15f3da);
    ecx776 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffda0);
    v777 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffda4);
    ecx778 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdd94);
    fun_3f2747b(ecx778, ecx776, v777, ecx776, 0x15f3da, ecx778, ecx776, v777, ecx776, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdda0, "ferror", 0x15f3da);
    ecx779 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffda8);
    v780 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdac);
    ecx781 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffddb8);
    fun_3f2747b(ecx781, ecx779, v780, ecx779, 0x15f3da, ecx781, ecx779, v780, ecx779, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffddc4, "fgets", 0x15f3da);
    ecx782 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdb0);
    v783 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdb4);
    ecx784 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdddc);
    fun_3f2747b(ecx784, ecx782, v783, ecx782, 0x15f3da, ecx784, ecx782, v783, ecx782, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdde8, "fopen", 0x15f3da);
    ecx785 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcf0);
    v786 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcf4);
    ecx787 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffde00);
    fun_3f2747b(ecx787, ecx785, v786, ecx785, 0x15f3da, ecx787, ecx785, v786, ecx785, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffde0c, "freopen", 0x15f3da);
    ecx788 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcf8);
    v789 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffcfc);
    ecx790 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffde24);
    fun_3f2747b(ecx790, ecx788, v789, ecx788, 0x15f3da, ecx790, ecx788, v789, ecx788, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffde30, "frexp", 0x15f3da);
    ecx791 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd00);
    v792 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd04);
    ecx793 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffde48);
    fun_3f2747b(ecx793, ecx791, v792, ecx791, 0x15f3da, ecx793, ecx791, v792, ecx791, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffde54, "getc", 0x15f3da);
    ecx794 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd10);
    v795 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd14);
    ecx796 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffde6c);
    fun_3f2747b(ecx796, ecx794, v795, ecx794, 0x15f3da, ecx796, ecx794, v795, ecx794, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffde78, "getenv", 0x15f3da);
    ecx797 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd18);
    v798 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd1c);
    ecx799 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffde90);
    fun_3f2747b(ecx799, ecx797, v798, ecx797, 0x15f3da, ecx799, ecx797, v798, ecx797, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffde9c, "isalnum", 0x15f3da);
    ecx800 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd20);
    v801 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd24);
    ecx802 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdeb4);
    fun_3f2747b(ecx802, ecx800, v801, ecx800, 0x15f3da, ecx802, ecx800, v801, ecx800, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdec0, "isalpha", 0x15f3da);
    ecx803 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd70);
    v804 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd74);
    ecx805 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffded8);
    fun_3f2747b(ecx805, ecx803, v804, ecx803, 0x15f3da, ecx805, ecx803, v804, ecx803, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdee4, "iscntrl", 0x15f3da);
    ecx806 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd30);
    v807 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd34);
    ecx808 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdefc);
    fun_3f2747b(ecx808, ecx806, v807, ecx806, 0x15f3da, ecx808, ecx806, v807, ecx806, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf08, "isdigit", 0x15f3da);
    ecx809 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd98);
    v810 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd9c);
    ecx811 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf20);
    fun_3f2747b(ecx811, ecx809, v810, ecx809, 0x15f3da, ecx811, ecx809, v810, ecx809, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf2c, "islower", 0x15f3da);
    ecx812 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd88);
    v813 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd8c);
    ecx814 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf44);
    fun_3f2747b(ecx814, ecx812, v813, ecx812, 0x15f3da, ecx814, ecx812, v813, ecx812, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf50, "ispunct", 0x15f3da);
    ecx815 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd90);
    v816 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd94);
    ecx817 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf68);
    fun_3f2747b(ecx817, ecx815, v816, ecx815, 0x15f3da, ecx817, ecx815, v816, ecx815, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf74, "isspace", 0x15f3da);
    ecx818 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd78);
    v819 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd7c);
    ecx820 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf8c);
    fun_3f2747b(ecx820, ecx818, v819, ecx818, 0x15f3da, ecx820, ecx818, v819, ecx818, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdf98, "isupper", 0x15f3da);
    ecx821 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdb8);
    v822 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffdbc);
    ecx823 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdfb0);
    fun_3f2747b(ecx823, ecx821, v822, ecx821, 0x15f3da, ecx823, ecx821, v822, ecx821, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdfbc, "isxdigit", 0x15f3da);
    ecx824 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd68);
    v825 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd6c);
    ecx826 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdfd4);
    fun_3f2747b(ecx826, ecx824, v825, ecx824, 0x15f3da, ecx826, ecx824, v825, ecx824, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffdfe0, "ldexp", 0x15f3da);
    ecx827 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd60);
    v828 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd64);
    ecx829 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffdff8);
    fun_3f2747b(ecx829, ecx827, v828, ecx827, 0x15f3da, ecx829, ecx827, v828, ecx827, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe004, "localeconv", 0x15f3da);
    ecx830 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd58);
    v831 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd5c);
    ecx832 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe01c);
    fun_3f2747b(ecx832, ecx830, v831, ecx830, 0x15f3da, ecx832, ecx830, v831, ecx830, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe028, "pow", 0x15f3da);
    ecx833 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd50);
    v834 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd54);
    ecx835 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe040);
    fun_3f2747b(ecx835, ecx833, v834, ecx833, 0x15f3da, ecx835, ecx833, v834, ecx833, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe04c, "realloc", 0x15f3da);
    ecx836 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd48);
    v837 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd4c);
    ecx838 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe064);
    fun_3f2747b(ecx838, ecx836, v837, ecx836, 0x15f3da, ecx838, ecx836, v837, ecx836, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe070, "remove", 0x15f3da);
    ecx839 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd40);
    v840 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd44);
    ecx841 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe088);
    fun_3f2747b(ecx841, ecx839, v840, ecx839, 0x15f3da, ecx841, ecx839, v840, ecx839, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe094, "rename", 0x15f3da);
    ecx842 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd38);
    v843 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffd3c);
    ecx844 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe0ac);
    fun_3f2747b(ecx844, ecx842, v843, ecx842, 0x15f3da, ecx844, ecx842, v843, ecx842, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe0b8, "roundf", 0x15f3da);
    ecx845 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe94);
    v846 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe98);
    ecx847 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe0d0);
    fun_3f2747b(ecx847, ecx845, v846, ecx845, 0x15f3da, ecx847, ecx845, v846, ecx845, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe0dc, "sin", 0x15f3da);
    ecx848 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe9c);
    v849 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea0);
    ecx850 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe0f4);
    fun_3f2747b(ecx850, ecx848, v849, ecx848, 0x15f3da, ecx850, ecx848, v849, ecx848, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe100, "sqrt", 0x15f3da);
    ecx851 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea4);
    v852 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffea8);
    ecx853 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe118);
    fun_3f2747b(ecx853, ecx851, v852, ecx851, 0x15f3da, ecx853, ecx851, v852, ecx851, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe124, "srand", 0x15f3da);
    ecx854 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeac);
    v855 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb0);
    ecx856 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe13c);
    fun_3f2747b(ecx856, ecx854, v855, ecx854, 0x15f3da, ecx856, ecx854, v855, ecx854, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe148, "strcmp", 0x15f3da);
    ecx857 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb4);
    v858 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffeb8);
    ecx859 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe160);
    fun_3f2747b(ecx859, ecx857, v858, ecx857, 0x15f3da, ecx859, ecx857, v858, ecx857, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe16c, "strerror", 0x15f3da);
    ecx860 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe8c);
    v861 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe90);
    ecx862 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe184);
    fun_3f2747b(ecx862, ecx860, v861, ecx860, 0x15f3da, ecx862, ecx860, v861, ecx860, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe190, "strftime", 0x15f3da);
    ecx863 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff30);
    v864 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff34);
    ecx865 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe1a8);
    fun_3f2747b(ecx865, ecx863, v864, ecx863, 0x15f3da, ecx865, ecx863, v864, ecx863, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe1b4, "strlen", 0x15f3da);
    ecx866 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff18);
    v867 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff1c);
    ecx868 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe1cc);
    fun_3f2747b(ecx868, ecx866, v867, ecx866, 0x15f3da, ecx868, ecx866, v867, ecx866, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe1d8, "strpbrk", 0x15f3da);
    ecx869 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff20);
    v870 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff24);
    ecx871 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe1f0);
    fun_3f2747b(ecx871, ecx869, v870, ecx869, 0x15f3da, ecx871, ecx869, v870, ecx869, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe1fc, "strspn", 0x15f3da);
    ecx872 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff28);
    v873 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff2c);
    ecx874 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe214);
    fun_3f2747b(ecx874, ecx872, v873, ecx872, 0x15f3da, ecx874, ecx872, v873, ecx872, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe220, "tmpfile", 0x15f3da);
    ecx875 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffbc);
    v876 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc0);
    ecx877 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe238);
    fun_3f2747b(ecx877, ecx875, v876, ecx875, 0x15f3da, ecx877, ecx875, v876, ecx875, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xffffe244, "tmpnam", 0x15f3da);
    ecx878 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffec);
    v879 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffff0);
    ecx880 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe25c);
    fun_3f2747b(ecx880, ecx878, v879, ecx878, 0x15f3da, ecx880, ecx878, v879, ecx878, 0x15f3da);
    g421121c = 0;
    g4211220 = 0;
    g4211224 = 0;
    v881 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffe268);
    v882 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd044);
    fun_3f275bd(0x421121c, v882, v881, 0x15fd10, 0x15f3da, 0x421121c, v882, v881, 0x15fd10, 0x15f3da);
    v883 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffd044);
    fun_3f27959(0x421121c, v883, 36, 0x81, 0x3f270a9, 0x15f3da, 0x421121c, v883, 36, 0x81, 0x3f270a9, 0x15f3da);
    fun_3f2750b(0x4211228, "user32.dll", 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff6cc, "FlashWindowEx", 0x15f3da);
    ecx884 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff50);
    v885 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff58);
    ecx886 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff6e4);
    fun_3f2747b(ecx886, ecx884, v885, ecx884, 0x15f3da, ecx886, ecx884, v885, ecx884, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff6f0, "SetWindowLongW", 0x15f3da);
    ecx887 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff08);
    v888 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff14);
    ecx889 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff708);
    fun_3f2747b(ecx889, ecx887, v888, ecx887, 0x15f3da, ecx889, ecx887, v888, ecx887, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff714, "CallWindowProcW", 0x15f3da);
    ecx890 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff5c);
    v891 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff64);
    ecx892 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff72c);
    fun_3f2747b(ecx892, ecx890, v891, ecx890, 0x15f3da, ecx892, ecx890, v891, ecx890, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff738, "GetDesktopWindow", 0x15f3da);
    ecx893 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff68);
    v894 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff70);
    ecx895 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff750);
    fun_3f2747b(ecx895, ecx893, v894, ecx893, 0x15f3da, ecx895, ecx893, v894, ecx893, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff75c, "FindWindowA", 0x15f3da);
    ecx896 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff74);
    v897 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff7c);
    ecx898 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff774);
    fun_3f2747b(ecx898, ecx896, v897, ecx896, 0x15f3da, ecx898, ecx896, v897, ecx896, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff780, "GetAsyncKeyState", 0x15f3da);
    ecx899 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe7c);
    v900 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe88);
    ecx901 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff798);
    fun_3f2747b(ecx901, ecx899, v900, ecx899, 0x15f3da, ecx901, ecx899, v900, ecx899, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff7a4, "GetWindowRect", 0x15f3da);
    ecx902 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffec);
    v903 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffff0);
    ecx904 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff7bc);
    fun_3f2747b(ecx904, ecx902, v903, ecx902, 0x15f3da, ecx904, ecx902, v903, ecx902, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff7c8, "GetCursorPos", 0x15f3da);
    ecx905 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff44);
    v906 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff4c);
    ecx907 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff7e0);
    fun_3f2747b(ecx907, ecx905, v906, ecx905, 0x15f3da, ecx907, ecx905, v906, ecx905, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff7ec, "ScreenToClient", 0x15f3da);
    ecx908 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff38);
    v909 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff40);
    ecx910 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff804);
    fun_3f2747b(ecx910, ecx908, v909, ecx908, 0x15f3da, ecx910, ecx908, v909, ecx908, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff810, "GetForegroundWindow", 0x15f3da);
    ecx911 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffec8);
    v912 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed0);
    ecx913 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff828);
    fun_3f2747b(ecx913, ecx911, v912, ecx911, 0x15f3da, ecx913, ecx911, v912, ecx911, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff834, "GetDC", 0x15f3da);
    ecx914 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffebc);
    v915 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffec4);
    ecx916 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff84c);
    fun_3f2747b(ecx916, ecx914, v915, ecx914, 0x15f3da, ecx916, ecx914, v915, ecx914, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff858, "ReleaseDC", 0x15f3da);
    ecx917 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed8);
    v918 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee0);
    ecx919 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff870);
    fun_3f2747b(ecx919, ecx917, v918, ecx917, 0x15f3da, ecx919, ecx917, v918, ecx917, 0x15f3da);
    g4211240 = 0;
    g4211244 = 0;
    g4211248 = 0;
    v920 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff87c);
    v921 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff6cc);
    fun_3f275bd(0x4211240, v921, v920, 0x15f67a, 0x15f3da, 0x4211240, v921, v920, 0x15f67a, 0x15f3da);
    v922 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff6cc);
    fun_3f27959(0x4211240, v922, 36, 12, 0x3f270a9, 0x15f3da, 0x4211240, v922, 36, 12, 0x3f270a9, 0x15f3da);
    fun_3f2750b(0x421124c, "gdi32.dll", 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4d4, "SelectObject", 0x15f3da);
    ecx923 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff08);
    v924 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff14);
    ecx925 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4ec);
    fun_3f2747b(ecx925, ecx923, v924, ecx923, 0x15f3da, ecx925, ecx923, v924, ecx923, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4f8, "CreateCompatibleDC", 0x15f3da);
    ecx926 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff50);
    v927 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff58);
    ecx928 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff510);
    fun_3f2747b(ecx928, ecx926, v927, ecx926, 0x15f3da, ecx928, ecx926, v927, ecx926, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff51c, "CreateFontA", 0x15f3da);
    ecx929 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff5c);
    v930 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff64);
    ecx931 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff534);
    fun_3f2747b(ecx931, ecx929, v930, ecx929, 0x15f3da, ecx931, ecx929, v930, ecx929, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff540, "SetTextColor", 0x15f3da);
    ecx932 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff68);
    v933 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff70);
    ecx934 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff558);
    fun_3f2747b(ecx934, ecx932, v933, ecx932, 0x15f3da, ecx934, ecx932, v933, ecx932, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff564, "CreateDIBSection", 0x15f3da);
    ecx935 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff74);
    v936 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff7c);
    ecx937 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff57c);
    fun_3f2747b(ecx937, ecx935, v936, ecx935, 0x15f3da, ecx937, ecx935, v936, ecx935, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff588, "SetMapMode", 0x15f3da);
    ecx938 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff44);
    v939 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff4c);
    ecx940 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff5a0);
    fun_3f2747b(ecx940, ecx938, v939, ecx938, 0x15f3da, ecx940, ecx938, v939, ecx938, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff5ac, "SetBkColor", 0x15f3da);
    ecx941 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff38);
    v942 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff40);
    ecx943 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff5c4);
    fun_3f2747b(ecx943, ecx941, v942, ecx941, 0x15f3da, ecx943, ecx941, v942, ecx941, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff5d0, "SetTextAlign", 0x15f3da);
    ecx944 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffec8);
    v945 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed0);
    ecx946 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff5e8);
    fun_3f2747b(ecx946, ecx944, v945, ecx944, 0x15f3da, ecx946, ecx944, v945, ecx944, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff5f4, "GetTextExtentPoint32W", 0x15f3da);
    ecx947 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe7c);
    v948 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe88);
    ecx949 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff60c);
    fun_3f2747b(ecx949, ecx947, v948, ecx947, 0x15f3da, ecx949, ecx947, v948, ecx947, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff618, "ExtTextOutW", 0x15f3da);
    ecx950 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffebc);
    v951 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffec4);
    ecx952 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff630);
    fun_3f2747b(ecx952, ecx950, v951, ecx950, 0x15f3da, ecx952, ecx950, v951, ecx950, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff63c, "DeleteDC", 0x15f3da);
    ecx953 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffed8);
    v954 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffee0);
    ecx955 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff654);
    fun_3f2747b(ecx955, ecx953, v954, ecx953, 0x15f3da, ecx955, ecx953, v954, ecx953, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff660, "AddFontMemResourceEx", 0x15f3da);
    ecx956 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe64);
    v957 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe78);
    ecx958 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff678);
    fun_3f2747b(ecx958, ecx956, v957, ecx956, 0x15f3da, ecx958, ecx956, v957, ecx956, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff684, "GetPixel", 0x15f3da);
    ecx959 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe50);
    v960 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffe58);
    ecx961 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff69c);
    fun_3f2747b(ecx961, ecx959, v960, ecx959, 0x15f3da, ecx961, ecx959, v960, ecx959, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff6a8, "DeleteObject", 0x15f3da);
    ecx962 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffec);
    v963 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffff0);
    ecx964 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff6c0);
    fun_3f2747b(ecx964, ecx962, v963, ecx962, 0x15f3da, ecx964, ecx962, v963, ecx962, 0x15f3da);
    g4211264 = 0;
    g4211268 = 0;
    g421126c = 0;
    v965 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff6cc);
    v966 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4d4);
    fun_3f275bd(0x4211264, v966, v965, 0x15f638, 0x15f3da, 0x4211264, v966, v965, 0x15f638, 0x15f3da);
    v967 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff4d4);
    fun_3f27959(0x4211264, v967, 36, 14, 0x3f270a9, 0x15f3da, 0x4211264, v967, 36, 14, 0x3f270a9, 0x15f3da);
    fun_3f2750b(0x4211270, "D3DX9_43.dll", 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff87c, "D3DXCreateSprite", 0x15f3da);
    ecx968 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffec);
    v969 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffffff0);
    ecx970 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff894);
    fun_3f2747b(ecx970, ecx968, v969, ecx968, 0x15f3da, ecx970, ecx968, v969, ecx968, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff8a0, "D3DXMatrixMultiply", 0x15f3da);
    ecx971 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffbc);
    v972 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffffc0);
    ecx973 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff8b8);
    fun_3f2747b(ecx973, ecx971, v972, ecx971, 0x15f3da, ecx973, ecx971, v972, ecx971, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff8c4, "D3DXCreateTextureFromFileInMemory", 0x15f3da);
    ecx974 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff28);
    v975 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff2c);
    ecx976 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff8dc);
    fun_3f2747b(ecx976, ecx974, v975, ecx974, 0x15f3da, ecx976, ecx974, v975, ecx974, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff8e8, "D3DXMatrixRotationYawPitchRoll", 0x15f3da);
    ecx977 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff20);
    v978 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff24);
    ecx979 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff900);
    fun_3f2747b(ecx979, ecx977, v978, ecx977, 0x15f3da, ecx979, ecx977, v978, ecx977, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff90c, "D3DXMatrixScaling", 0x15f3da);
    ecx980 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff18);
    v981 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff1c);
    ecx982 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff924);
    fun_3f2747b(ecx982, ecx980, v981, ecx980, 0x15f3da, ecx982, ecx980, v981, ecx980, 0x15f3da);
    fun_3f2750b(reinterpret_cast<uint32_t>(ebp2) + 0xfffff930, "D3DXMatrixTranslation", 0x15f3da);
    ecx983 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff30);
    v984 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xffffff34);
    ecx985 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff948);
    fun_3f2747b(ecx985, ecx983, v984, ecx983, 0x15f3da, ecx985, ecx983, v984, ecx983, 0x15f3da);
    g4211288 = 0;
    g421128c = 0;
    g4211290 = 0;
    v986 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff954);
    v987 = reinterpret_cast<void**>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff87c);
    fun_3f275bd(0x4211288, v987, v986, 0x15f836, 0x15f3da, 0x4211288, v987, v986, 0x15f836, 0x15f3da);
    v988 = reinterpret_cast<void*>(reinterpret_cast<uint32_t>(ebp2) + 0xfffff87c);
    fun_3f27959(0x4211288, v988, 36, 6, 0x3f270a9, 0x15f3da, 0x4211288, v988, 36, 6, 0x3f270a9, 0x15f3da);
    fun_3f27d73(0x4211288, fun_3f2a631);
    g0 = v4;
    eax989 = fun_3f27918(v6 ^ reinterpret_cast<uint32_t>(ebp2), v4, fun_3f2a5b1, 0x29c);
    return eax989;
}

void fun_3f28456() {
    int32_t ebp1;
    int32_t eax2;
    int32_t edx3;
    int32_t ebp4;
    int32_t edx5;
    uint32_t eax6;
    int32_t ebp7;
    uint32_t eax8;
    uint32_t eax9;
    unsigned char bl10;
    uint32_t ebx11;
    int32_t ebp12;

    *reinterpret_cast<int32_t*>(ebp1 - 20) = eax2 + edx3;
    *reinterpret_cast<int32_t*>(ebp4 - 16) = edx5;
    eax6 = *reinterpret_cast<uint32_t*>(ebp7 - 20);
    if ((eax6 & 6) != 6)
        goto 0x3f284c4;
    eax8 = g3f30010;
    eax9 = eax8 | 8;
    g421112c = 3;
    g3f30010 = eax9;
    if (!(bl10 & 32))
        goto 0x3f284c4;
    g421112c = 5;
    g3f30010 = eax9 | 32;
    if ((ebx11 & 0xd0030000) != 0xd0030000)
        goto 0x3f284c4;
    if ((*reinterpret_cast<uint32_t*>(ebp12 - 20) & 0xe0) != 0xe0)
        goto 0x3f284c4;
    g3f30010 = g3f30010 | 64;
    g421112c = 6;
}

void fun_3f287e3() {
    uint32_t eax1;

    eax1 = *reinterpret_cast<uint32_t*>(reinterpret_cast<int32_t>(__return_address()) - 4) ^ 63;
    if (*reinterpret_cast<unsigned char*>(&eax1) & 0x81) {
        if (eax1 & 0x204) {
            if (eax1 & 0x102) {
                if (eax1 & 0x408) {
                    if (eax1 & 0x810) {
                        if (eax1 & 0x1020)
                            goto 0x3f28836;
                        goto *reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(__return_address()) + 4);
                    } else {
                        goto *reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(__return_address()) + 4);
                    }
                } else {
                    goto *reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(__return_address()) + 4);
                }
            }
        } else {
            goto *reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(__return_address()) + 4);
        }
    }
    goto *reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(__return_address()) + 4);
}

int32_t g3f2b068 = 0x742378c0;

void** fun_3f26ffe(void** ecx, unsigned char a2) {
    *reinterpret_cast<void***>(ecx) = reinterpret_cast<void**>(0x3f2b108);
    g3f2b068();
    if (a2 & 1) {
        fun_3f27d88(ecx + 4, ecx);
    }
    return ecx;
}

void fun_3f2702c(int32_t* ecx) {
    *ecx = 0x3f2b108;
    g3f2b068();
    return;
}

struct s85 {
    signed char[4] pad4;
    int32_t f4;
};

int32_t fun_3f27a11() {
    int32_t ebp1;
    int32_t ebp2;
    int32_t ebp3;
    int32_t ebp4;
    int32_t ebp5;
    int32_t* eax6;
    int32_t ebp7;
    int32_t esi8;
    int32_t ebp9;
    int32_t* eax10;
    int32_t ebp11;
    int32_t ebp12;

    *reinterpret_cast<int32_t*>(ebp1 - 32) = *reinterpret_cast<int32_t*>(ebp2 - 20);
    *reinterpret_cast<int32_t*>(ebp3 - 28) = **reinterpret_cast<int32_t**>(ebp4 - 32);
    if (**reinterpret_cast<int32_t**>(ebp5 - 28) == 0xe06d7363) {
        eax6 = fun_3f2873f();
        *eax6 = *reinterpret_cast<int32_t*>(ebp7 - 28);
        esi8 = (*reinterpret_cast<struct s85**>(ebp9 - 32))->f4;
        eax10 = fun_3f28745();
        *eax10 = esi8;
        fun_3f2876f();
    } else {
        *reinterpret_cast<int32_t*>(ebp11 - 40) = 0;
        return *reinterpret_cast<int32_t*>(ebp12 - 40);
    }
}

void fun_3f27a35() {
}

int32_t fun_3f27cd2() {
    int32_t ecx1;
    int32_t ebp2;

    ecx1 = 0;
    *reinterpret_cast<unsigned char*>(&ecx1) = reinterpret_cast<uint1_t>(***reinterpret_cast<int32_t***>(ebp2 - 20) == 0xc0000005);
    return ecx1;
}

struct s86 {
    signed char[16] pad16;
    int32_t f16;
};

struct s87 {
    signed char[12] pad12;
    int32_t f12;
};

struct s88 {
    signed char[8] pad8;
    int32_t f8;
};

void fun_3f28089() {
    int32_t* eax1;
    int32_t ebp2;
    int32_t** v3;
    int32_t v4;
    int32_t v5;
    struct s86* ebp6;
    int32_t v7;
    struct s87* ebp8;
    int32_t v9;
    struct s88* ebp10;

    eax1 = **reinterpret_cast<int32_t***>(ebp2 - 20);
    v3 = *reinterpret_cast<int32_t***>(ebp2 - 20);
    v4 = *eax1;
    v5 = ebp6->f16;
    v7 = ebp8->f12;
    v9 = ebp10->f8;
    fun_3f27b49(v9, v7, v5, fun_3f27db9, v4, v3);
    return;
}

void** fun_3f27d96(void** ecx, unsigned char a2) {
    *reinterpret_cast<void***>(ecx) = reinterpret_cast<void**>(0x3f2b0f4);
    if (a2 & 1) {
        fun_3f27d88(ecx, ecx);
    }
    return ecx;
}

void fun_3f28909() {
    goto fun_3f274e8;
}

struct s18* fun_3f2708e(struct s18* ecx, int32_t a2) {
    fun_3f26fc3(ecx, a2);
    ecx->f0 = 0x3f2b114;
    return ecx;
}

void fun_3f279c2() {
}

void fun_3f27ce5() {
}

void fun_3f27eec() {
}

void fun_3f27fa5() {
}

void fun_3f27fb2() {
}

void fun_3f280a8() {
}

void fun_3f280f4(void** ecx, int32_t a2, int32_t a3, int32_t a4) {
    if (a3 == 1) {
        fun_3f2864f();
    }
    fun_3f27fc3(ecx, a2, a3, a4);
    return;
}

void fun_3f282b6(int32_t a1, int32_t a2, int32_t a3, int32_t a4) {
    int32_t ebp5;
    int32_t* esp6;
    void* ebp7;

    g0 = *reinterpret_cast<void**>(ebp5 - 16);
    esp6 = reinterpret_cast<int32_t*>(reinterpret_cast<int32_t>(ebp7) + 4 - 4);
    *esp6 = reinterpret_cast<int32_t>(__return_address());
    goto *esp6;
}

void fun_3f28913() {
    goto fun_3f274e8;
}

struct s89 {
    signed char[4] pad4;
    int32_t f4;
};

int32_t fun_3f26ff0(struct s89* ecx) {
    int32_t eax2;

    eax2 = reinterpret_cast<int32_t>("Unknown exception");
    if (ecx->f4) {
        eax2 = ecx->f4;
    }
    return eax2;
}

void fun_3f282cb(int32_t ecx, int32_t* a2, int32_t a3, int32_t a4, int32_t a5) {
    int32_t v6;
    int32_t eax7;

    v6 = *a2;
    eax7 = fun_3f287c3(ecx, v6);
    *a2 = eax7;
    fun_3f28751(0x3f30008, fun_3f27918, a2, a3, a4, a5, v6);
    return;
}

void fun_3f2891e(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0x1fc, 36, 1, 0x3f270a9, __return_address());
    return;
}

void fun_3f282fa() {
    return;
}

void fun_3f28934() {
    goto fun_3f27563;
}

void fun_3f2893e() {
    fun_3f27563(0x4211168);
    goto fun_3f274e8;
}

void fun_3f28948() {
    goto fun_3f274e8;
}

void fun_3f28952() {
    goto fun_3f274e8;
}

void fun_3f2895d() {
    void* ebp1;

    fun_3f27459(reinterpret_cast<int32_t>(ebp1) - 0x142c + 24);
    goto fun_3f274e8;
}

void fun_3f28968() {
    goto fun_3f274e8;
}

void fun_3f28973() {
    goto 0x3f270a9;
}

void fun_3f2897e() {
    goto fun_3f274e8;
}

void fun_3f28989() {
    goto 0x3f270a9;
}

void fun_3f28994() {
    goto fun_3f274e8;
}

void fun_3f2899f() {
    goto 0x3f270a9;
}

void fun_3f289aa() {
    goto fun_3f274e8;
}

void fun_3f289b5() {
    goto 0x3f270a9;
}

void fun_3f289c0() {
    goto fun_3f274e8;
}

void fun_3f289cb() {
    goto 0x3f270a9;
}

void fun_3f289d6() {
    goto fun_3f274e8;
}

void fun_3f289e1() {
    goto 0x3f270a9;
}

void fun_3f289ec() {
    goto fun_3f274e8;
}

void fun_3f289f7() {
    goto 0x3f270a9;
}

void fun_3f28a02() {
    goto fun_3f274e8;
}

void fun_3f28a0d() {
    goto 0x3f270a9;
}

void fun_3f28a18() {
    goto fun_3f274e8;
}

void fun_3f28a23() {
    goto 0x3f270a9;
}

void fun_3f28a2e() {
    goto fun_3f274e8;
}

void fun_3f28a39() {
    goto 0x3f270a9;
}

void fun_3f28a44() {
    goto fun_3f274e8;
}

void fun_3f28a4f() {
    goto 0x3f270a9;
}

void fun_3f28a5a() {
    goto fun_3f274e8;
}

void fun_3f28a65() {
    goto 0x3f270a9;
}

void fun_3f28a70() {
    goto fun_3f274e8;
}

void fun_3f28a7b() {
    goto 0x3f270a9;
}

void fun_3f28a86() {
    goto fun_3f274e8;
}

void fun_3f28a91() {
    goto 0x3f270a9;
}

void fun_3f28a9c() {
    goto fun_3f274e8;
}

void fun_3f28aa7() {
    goto 0x3f270a9;
}

void fun_3f28ab2() {
    goto fun_3f274e8;
}

void fun_3f28abd() {
    goto 0x3f270a9;
}

void fun_3f28ac8() {
    goto fun_3f274e8;
}

void fun_3f28ad3() {
    goto 0x3f270a9;
}

void fun_3f28ade() {
    goto fun_3f274e8;
}

void fun_3f28ae9() {
    goto 0x3f270a9;
}

void fun_3f28af4() {
    goto fun_3f274e8;
}

void fun_3f28aff() {
    goto 0x3f270a9;
}

void fun_3f28b0a() {
    goto fun_3f274e8;
}

void fun_3f28b15() {
    goto 0x3f270a9;
}

void fun_3f28b20() {
    goto fun_3f274e8;
}

void fun_3f28b2b() {
    goto 0x3f270a9;
}

void fun_3f28b36() {
    goto fun_3f274e8;
}

void fun_3f28b41() {
    goto 0x3f270a9;
}

void fun_3f28b4c() {
    goto fun_3f274e8;
}

void fun_3f28b57() {
    goto 0x3f270a9;
}

void fun_3f28b62() {
    goto fun_3f274e8;
}

void fun_3f28b6d() {
    goto 0x3f270a9;
}

void fun_3f28b78() {
    goto fun_3f274e8;
}

void fun_3f28b83() {
    goto 0x3f270a9;
}

void fun_3f28b8e() {
    goto fun_3f274e8;
}

void fun_3f28b99() {
    goto 0x3f270a9;
}

void fun_3f28ba4() {
    goto fun_3f274e8;
}

void fun_3f28baf() {
    goto 0x3f270a9;
}

void fun_3f28bba() {
    goto fun_3f274e8;
}

void fun_3f28bc5() {
    goto 0x3f270a9;
}

void fun_3f28bd0() {
    goto fun_3f274e8;
}

void fun_3f28bdb() {
    goto 0x3f270a9;
}

void fun_3f28be6() {
    goto fun_3f274e8;
}

void fun_3f28bf1() {
    goto 0x3f270a9;
}

void fun_3f28bfc() {
    goto fun_3f274e8;
}

void fun_3f28c07() {
    goto 0x3f270a9;
}

void fun_3f28c12() {
    goto fun_3f274e8;
}

void fun_3f28c1d() {
    goto 0x3f270a9;
}

void fun_3f28c28() {
    goto fun_3f274e8;
}

void fun_3f28c33() {
    goto 0x3f270a9;
}

void fun_3f28c3e() {
    goto fun_3f274e8;
}

void fun_3f28c49() {
    goto 0x3f270a9;
}

void fun_3f28c54() {
    goto fun_3f274e8;
}

void fun_3f28c5f() {
    goto 0x3f270a9;
}

void fun_3f28c6a() {
    goto fun_3f274e8;
}

void fun_3f28c75() {
    goto 0x3f270a9;
}

void fun_3f28c80() {
    goto fun_3f274e8;
}

void fun_3f28c8b() {
    goto 0x3f270a9;
}

void fun_3f28c96() {
    goto fun_3f274e8;
}

void fun_3f28ca1() {
    goto 0x3f270a9;
}

void fun_3f28cac() {
    goto fun_3f274e8;
}

void fun_3f28cb7() {
    goto 0x3f270a9;
}

void fun_3f28cc2() {
    goto fun_3f274e8;
}

void fun_3f28ccd() {
    goto 0x3f270a9;
}

void fun_3f28cd8() {
    goto fun_3f274e8;
}

void fun_3f28ce3() {
    goto 0x3f270a9;
}

void fun_3f28cee() {
    goto fun_3f274e8;
}

void fun_3f28cf9() {
    goto 0x3f270a9;
}

void fun_3f28d04() {
    goto fun_3f274e8;
}

void fun_3f28d0f() {
    goto 0x3f270a9;
}

void fun_3f28d1a() {
    goto fun_3f274e8;
}

void fun_3f28d25() {
    goto 0x3f270a9;
}

void fun_3f28d30() {
    goto fun_3f274e8;
}

void fun_3f28d3b() {
    goto 0x3f270a9;
}

void fun_3f28d46() {
    goto fun_3f274e8;
}

void fun_3f28d51() {
    goto 0x3f270a9;
}

void fun_3f28d5c() {
    goto fun_3f274e8;
}

void fun_3f28d67() {
    goto 0x3f270a9;
}

void fun_3f28d72() {
    goto fun_3f274e8;
}

void fun_3f28d7d() {
    goto 0x3f270a9;
}

void fun_3f28d88() {
    goto fun_3f274e8;
}

void fun_3f28d93() {
    goto 0x3f270a9;
}

void fun_3f28d9e() {
    goto fun_3f274e8;
}

void fun_3f28da9() {
    goto 0x3f270a9;
}

void fun_3f28db4() {
    goto fun_3f274e8;
}

void fun_3f28dbf() {
    goto 0x3f270a9;
}

void fun_3f28dca() {
    goto fun_3f274e8;
}

void fun_3f28dd5() {
    goto 0x3f270a9;
}

void fun_3f28de0() {
    goto fun_3f274e8;
}

void fun_3f28deb() {
    goto 0x3f270a9;
}

void fun_3f28df6() {
    goto fun_3f274e8;
}

void fun_3f28e01() {
    goto 0x3f270a9;
}

void fun_3f28e0c() {
    goto fun_3f274e8;
}

void fun_3f28e17() {
    goto 0x3f270a9;
}

void fun_3f28e22() {
    goto fun_3f274e8;
}

void fun_3f28e2d() {
    goto 0x3f270a9;
}

void fun_3f28e38() {
    goto fun_3f274e8;
}

void fun_3f28e43() {
    goto 0x3f270a9;
}

void fun_3f28e4e() {
    goto fun_3f274e8;
}

void fun_3f28e59() {
    goto 0x3f270a9;
}

void fun_3f28e64() {
    goto fun_3f274e8;
}

void fun_3f28e6f() {
    goto 0x3f270a9;
}

void fun_3f28e7a() {
    goto fun_3f274e8;
}

void fun_3f28e85() {
    goto 0x3f270a9;
}

void fun_3f28e90() {
    goto fun_3f274e8;
}

void fun_3f28e9b() {
    goto 0x3f270a9;
}

void fun_3f28ea6() {
    goto fun_3f274e8;
}

void fun_3f28eb1() {
    goto 0x3f270a9;
}

void fun_3f28ebc() {
    goto fun_3f274e8;
}

void fun_3f28ec7(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0x142c, 36, 64, 0x3f270a9, __return_address());
    return;
}

void fun_3f28edd() {
    goto 0x3f27454;
}

void fun_3f28ee7() {
    goto 0x3f270bc;
}

void fun_3f28ef1() {
    goto fun_3f274e8;
}

void fun_3f28efb() {
    goto fun_3f274e8;
}

void fun_3f28f06() {
    goto 0x3f270a9;
}

void fun_3f28f11() {
    goto fun_3f274e8;
}

void fun_3f28f1c() {
    goto 0x3f270a9;
}

void fun_3f28f27() {
    goto fun_3f274e8;
}

void fun_3f28f32() {
    goto 0x3f270a9;
}

void fun_3f28f3d() {
    goto fun_3f274e8;
}

void fun_3f28f48() {
    goto 0x3f270a9;
}

void fun_3f28f53() {
    goto fun_3f274e8;
}

void fun_3f28f5e() {
    goto 0x3f270a9;
}

void fun_3f28f69() {
    goto fun_3f274e8;
}

void fun_3f28f74() {
    goto 0x3f270a9;
}

void fun_3f28f7f() {
    goto fun_3f274e8;
}

void fun_3f28f8a() {
    goto 0x3f270a9;
}

void fun_3f28f95() {
    goto fun_3f274e8;
}

void fun_3f28fa0() {
    goto 0x3f270a9;
}

void fun_3f28fab() {
    goto fun_3f274e8;
}

void fun_3f28fb6() {
    goto 0x3f270a9;
}

void fun_3f28fc1() {
    goto fun_3f274e8;
}

void fun_3f28fcc() {
    goto 0x3f270a9;
}

void fun_3f28fd7() {
    goto fun_3f274e8;
}

void fun_3f28fe2() {
    goto 0x3f270a9;
}

void fun_3f28fed() {
    goto fun_3f274e8;
}

void fun_3f28ff8() {
    goto 0x3f270a9;
}

void fun_3f29003() {
    goto fun_3f274e8;
}

void fun_3f2900e() {
    goto 0x3f270a9;
}

void fun_3f29019() {
    goto fun_3f274e8;
}

void fun_3f29024() {
    goto 0x3f270a9;
}

void fun_3f2902f() {
    goto fun_3f274e8;
}

void fun_3f2903a() {
    goto 0x3f270a9;
}

void fun_3f29045() {
    goto fun_3f274e8;
}

void fun_3f29050() {
    goto 0x3f270a9;
}

void fun_3f2905b() {
    goto fun_3f274e8;
}

void fun_3f29066() {
    goto 0x3f270a9;
}

void fun_3f29071() {
    goto fun_3f274e8;
}

void fun_3f2907c() {
    goto 0x3f270a9;
}

void fun_3f29087() {
    goto fun_3f274e8;
}

void fun_3f29092() {
    goto 0x3f270a9;
}

void fun_3f2909d() {
    goto fun_3f274e8;
}

void fun_3f290a8() {
    goto 0x3f270a9;
}

void fun_3f290b3() {
    goto fun_3f274e8;
}

void fun_3f290be() {
    goto 0x3f270a9;
}

void fun_3f290c9() {
    goto fun_3f274e8;
}

void fun_3f290d4() {
    goto 0x3f270a9;
}

void fun_3f290df() {
    goto fun_3f274e8;
}

void fun_3f290ea() {
    goto 0x3f270a9;
}

void fun_3f290f5() {
    goto fun_3f274e8;
}

void fun_3f29100() {
    goto 0x3f270a9;
}

void fun_3f2910b() {
    goto fun_3f274e8;
}

void fun_3f29116() {
    goto 0x3f270a9;
}

void fun_3f29121() {
    goto fun_3f274e8;
}

void fun_3f2912c() {
    goto 0x3f270a9;
}

void fun_3f29137() {
    goto fun_3f274e8;
}

void fun_3f29142() {
    goto 0x3f270a9;
}

void fun_3f2914d() {
    goto fun_3f274e8;
}

void fun_3f29158() {
    goto 0x3f270a9;
}

void fun_3f29163() {
    goto fun_3f274e8;
}

void fun_3f2916e() {
    goto 0x3f270a9;
}

void fun_3f29179() {
    goto fun_3f274e8;
}

void fun_3f29184() {
    goto 0x3f270a9;
}

void fun_3f2918f() {
    goto fun_3f274e8;
}

void fun_3f2919a() {
    goto 0x3f270a9;
}

void fun_3f291a5() {
    goto fun_3f274e8;
}

void fun_3f291b0() {
    goto 0x3f270a9;
}

void fun_3f291bb() {
    goto fun_3f274e8;
}

void fun_3f291c6() {
    goto 0x3f270a9;
}

void fun_3f291d1() {
    goto fun_3f274e8;
}

void fun_3f291dc() {
    goto 0x3f270a9;
}

void fun_3f291e7() {
    goto fun_3f274e8;
}

void fun_3f291f2() {
    goto 0x3f270a9;
}

void fun_3f291fd() {
    goto fun_3f274e8;
}

void fun_3f29208() {
    goto 0x3f270a9;
}

void fun_3f29213() {
    goto fun_3f274e8;
}

void fun_3f2921e() {
    goto 0x3f270a9;
}

void fun_3f29229() {
    goto fun_3f274e8;
}

void fun_3f29234() {
    goto 0x3f270a9;
}

void fun_3f2923f() {
    goto fun_3f274e8;
}

void fun_3f2924a() {
    goto 0x3f270a9;
}

void fun_3f29255() {
    goto fun_3f274e8;
}

void fun_3f29260() {
    goto 0x3f270a9;
}

void fun_3f2926b() {
    goto fun_3f274e8;
}

void fun_3f29276() {
    goto 0x3f270a9;
}

void fun_3f29281() {
    goto fun_3f274e8;
}

void fun_3f2928c() {
    goto 0x3f270a9;
}

void fun_3f29297() {
    goto fun_3f274e8;
}

void fun_3f292a2() {
    goto 0x3f270a9;
}

void fun_3f292ad() {
    goto fun_3f274e8;
}

void fun_3f292b8() {
    goto 0x3f270a9;
}

void fun_3f292c3() {
    goto fun_3f274e8;
}

void fun_3f292ce() {
    goto 0x3f270a9;
}

void fun_3f292d9() {
    goto fun_3f274e8;
}

void fun_3f292e4() {
    goto 0x3f270a9;
}

void fun_3f292ef() {
    goto fun_3f274e8;
}

void fun_3f292fa() {
    goto 0x3f270a9;
}

void fun_3f29305() {
    goto fun_3f274e8;
}

void fun_3f29310() {
    goto 0x3f270a9;
}

void fun_3f2931b() {
    goto fun_3f274e8;
}

void fun_3f29326() {
    goto 0x3f270a9;
}

void fun_3f29331() {
    goto fun_3f274e8;
}

void fun_3f2933c() {
    goto 0x3f270a9;
}

void fun_3f29347() {
    goto fun_3f274e8;
}

void fun_3f29352() {
    goto 0x3f270a9;
}

void fun_3f2935d() {
    goto fun_3f274e8;
}

void fun_3f29368() {
    goto 0x3f270a9;
}

void fun_3f29373() {
    goto fun_3f274e8;
}

void fun_3f2937e() {
    goto 0x3f270a9;
}

void fun_3f29389() {
    goto fun_3f274e8;
}

void fun_3f29394() {
    goto 0x3f270a9;
}

void fun_3f2939f() {
    goto fun_3f274e8;
}

void fun_3f293aa() {
    goto 0x3f270a9;
}

void fun_3f293b5() {
    goto fun_3f274e8;
}

void fun_3f293c0() {
    goto 0x3f270a9;
}

void fun_3f293cb() {
    goto fun_3f274e8;
}

void fun_3f293d6() {
    goto 0x3f270a9;
}

void fun_3f293e1() {
    goto fun_3f274e8;
}

void fun_3f293ec() {
    goto 0x3f270a9;
}

void fun_3f293f7() {
    goto fun_3f274e8;
}

void fun_3f29402() {
    goto 0x3f270a9;
}

void fun_3f2940d() {
    goto fun_3f274e8;
}

void fun_3f29418() {
    goto 0x3f270a9;
}

void fun_3f29423() {
    goto fun_3f274e8;
}

void fun_3f2942e() {
    goto 0x3f270a9;
}

void fun_3f29439() {
    goto fun_3f274e8;
}

void fun_3f29444() {
    goto 0x3f270a9;
}

void fun_3f2944f() {
    goto fun_3f274e8;
}

void fun_3f2945a() {
    goto 0x3f270a9;
}

void fun_3f29465() {
    goto fun_3f274e8;
}

void fun_3f29470() {
    goto 0x3f270a9;
}

void fun_3f2947b() {
    goto fun_3f274e8;
}

void fun_3f29486() {
    goto 0x3f270a9;
}

void fun_3f29491() {
    goto fun_3f274e8;
}

void fun_3f2949c() {
    goto 0x3f270a9;
}

void fun_3f294a7() {
    goto fun_3f274e8;
}

void fun_3f294b2(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0x1d98, 36, 67, 0x3f270a9, __return_address());
    return;
}

void fun_3f294c8() {
    goto 0x3f27454;
}

void fun_3f294d2() {
    goto 0x3f270bc;
}

void fun_3f294dc() {
    goto fun_3f274e8;
}

void fun_3f294e6() {
    goto fun_3f274e8;
}

void fun_3f294f1() {
    goto 0x3f270a9;
}

void fun_3f294fc() {
    goto fun_3f274e8;
}

void fun_3f29507() {
    goto 0x3f270a9;
}

void fun_3f29512() {
    goto fun_3f274e8;
}

void fun_3f2951d() {
    goto 0x3f270a9;
}

void fun_3f29528() {
    goto fun_3f274e8;
}

void fun_3f29533() {
    goto 0x3f270a9;
}

void fun_3f2953e() {
    goto fun_3f274e8;
}

void fun_3f29549() {
    goto 0x3f270a9;
}

void fun_3f29554() {
    goto fun_3f274e8;
}

void fun_3f2955f() {
    goto 0x3f270a9;
}

void fun_3f2956a() {
    goto fun_3f274e8;
}

void fun_3f29575() {
    goto 0x3f270a9;
}

void fun_3f29580() {
    goto fun_3f274e8;
}

void fun_3f2958b() {
    goto 0x3f270a9;
}

void fun_3f29596() {
    goto fun_3f274e8;
}

void fun_3f295a1() {
    goto 0x3f270a9;
}

void fun_3f295ac() {
    goto fun_3f274e8;
}

void fun_3f295b7() {
    goto 0x3f270a9;
}

void fun_3f295c2() {
    goto fun_3f274e8;
}

void fun_3f295cd() {
    goto 0x3f270a9;
}

void fun_3f295d8() {
    goto fun_3f274e8;
}

void fun_3f295e3() {
    goto 0x3f270a9;
}

void fun_3f295ee() {
    goto fun_3f274e8;
}

void fun_3f295f9() {
    goto 0x3f270a9;
}

void fun_3f29604() {
    goto fun_3f274e8;
}

void fun_3f2960f() {
    goto 0x3f270a9;
}

void fun_3f2961a() {
    goto fun_3f274e8;
}

void fun_3f29625() {
    goto 0x3f270a9;
}

void fun_3f29630() {
    goto fun_3f274e8;
}

void fun_3f2963b() {
    goto 0x3f270a9;
}

void fun_3f29646() {
    goto fun_3f274e8;
}

void fun_3f29651() {
    goto 0x3f270a9;
}

void fun_3f2965c() {
    goto fun_3f274e8;
}

void fun_3f29667() {
    goto 0x3f270a9;
}

void fun_3f29672() {
    goto fun_3f274e8;
}

void fun_3f2967d() {
    goto 0x3f270a9;
}

void fun_3f29688() {
    goto fun_3f274e8;
}

void fun_3f29693(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0x328c, 36, 20, 0x3f270a9, __return_address());
    return;
}

void fun_3f296a9() {
    goto 0x3f27454;
}

void fun_3f296b3() {
    goto 0x3f270bc;
}

void fun_3f296bd() {
    goto fun_3f274e8;
}

void fun_3f296c7() {
    goto fun_3f274e8;
}

void fun_3f296d2() {
    goto 0x3f270a9;
}

void fun_3f296dd() {
    goto fun_3f274e8;
}

void fun_3f296e8() {
    goto 0x3f270a9;
}

void fun_3f296f3() {
    goto fun_3f274e8;
}

void fun_3f296fe() {
    goto 0x3f270a9;
}

void fun_3f29709() {
    goto fun_3f274e8;
}

void fun_3f29714(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0x6ac, 36, 4, 0x3f270a9, __return_address());
    return;
}

void fun_3f2972a() {
    goto 0x3f27454;
}

void fun_3f29734() {
    goto 0x3f270bc;
}

void fun_3f2973e() {
    goto fun_3f274e8;
}

void fun_3f29748() {
    goto fun_3f274e8;
}

void fun_3f29753() {
    goto 0x3f270a9;
}

void fun_3f2975e() {
    goto fun_3f274e8;
}

void fun_3f29769() {
    goto 0x3f270a9;
}

void fun_3f29774() {
    goto fun_3f274e8;
}

void fun_3f2977f() {
    goto 0x3f270a9;
}

void fun_3f2978a() {
    goto fun_3f274e8;
}

void fun_3f29795() {
    goto 0x3f270a9;
}

void fun_3f297a0() {
    goto fun_3f274e8;
}

void fun_3f297ab() {
    goto 0x3f270a9;
}

void fun_3f297b6() {
    goto fun_3f274e8;
}

void fun_3f297c1() {
    goto 0x3f270a9;
}

void fun_3f297cc() {
    goto fun_3f274e8;
}

void fun_3f297d7() {
    goto 0x3f270a9;
}

void fun_3f297e2() {
    goto fun_3f274e8;
}

void fun_3f297ed() {
    goto 0x3f270a9;
}

void fun_3f297f8() {
    goto fun_3f274e8;
}

void fun_3f29803() {
    goto 0x3f270a9;
}

void fun_3f2980e() {
    goto fun_3f274e8;
}

void fun_3f29819() {
    goto 0x3f270a9;
}

void fun_3f29824() {
    goto fun_3f274e8;
}

void fun_3f2982f() {
    goto 0x3f270a9;
}

void fun_3f2983a() {
    goto fun_3f274e8;
}

void fun_3f29845() {
    goto 0x3f270a9;
}

void fun_3f29850() {
    goto fun_3f274e8;
}

void fun_3f2985b() {
    goto 0x3f270a9;
}

void fun_3f29866() {
    goto fun_3f274e8;
}

void fun_3f29871() {
    goto 0x3f270a9;
}

void fun_3f2987c() {
    goto fun_3f274e8;
}

void fun_3f29887() {
    goto 0x3f270a9;
}

void fun_3f29892() {
    goto fun_3f274e8;
}

void fun_3f2989d() {
    goto 0x3f270a9;
}

void fun_3f298a8() {
    goto fun_3f274e8;
}

void fun_3f298b3() {
    goto 0x3f270a9;
}

void fun_3f298be() {
    goto fun_3f274e8;
}

void fun_3f298c9() {
    goto 0x3f270a9;
}

void fun_3f298d4() {
    goto fun_3f274e8;
}

void fun_3f298df() {
    goto 0x3f270a9;
}

void fun_3f298ea() {
    goto fun_3f274e8;
}

void fun_3f298f5() {
    goto 0x3f270a9;
}

void fun_3f29900() {
    goto fun_3f274e8;
}

void fun_3f2990b() {
    goto 0x3f270a9;
}

void fun_3f29916() {
    goto fun_3f274e8;
}

void fun_3f29921() {
    goto 0x3f270a9;
}

void fun_3f2992c() {
    goto fun_3f274e8;
}

void fun_3f29937() {
    goto 0x3f270a9;
}

void fun_3f29942() {
    goto fun_3f274e8;
}

void fun_3f2994d() {
    goto 0x3f270a9;
}

void fun_3f29958() {
    goto fun_3f274e8;
}

void fun_3f29963() {
    goto 0x3f270a9;
}

void fun_3f2996e() {
    goto fun_3f274e8;
}

void fun_3f29979() {
    goto 0x3f270a9;
}

void fun_3f29984() {
    goto fun_3f274e8;
}

void fun_3f2998f() {
    goto 0x3f270a9;
}

void fun_3f2999a() {
    goto fun_3f274e8;
}

void fun_3f299a5() {
    goto 0x3f270a9;
}

void fun_3f299b0() {
    goto fun_3f274e8;
}

void fun_3f299bb() {
    goto 0x3f270a9;
}

void fun_3f299c6() {
    goto fun_3f274e8;
}

void fun_3f299d1() {
    goto 0x3f270a9;
}

void fun_3f299dc() {
    goto fun_3f274e8;
}

void fun_3f299e7() {
    goto 0x3f270a9;
}

void fun_3f299f2() {
    goto fun_3f274e8;
}

void fun_3f299fd() {
    goto 0x3f270a9;
}

void fun_3f29a08() {
    goto fun_3f274e8;
}

void fun_3f29a13() {
    goto 0x3f270a9;
}

void fun_3f29a1e() {
    goto fun_3f274e8;
}

void fun_3f29a29() {
    goto 0x3f270a9;
}

void fun_3f29a34() {
    goto fun_3f274e8;
}

void fun_3f29a3f() {
    goto 0x3f270a9;
}

void fun_3f29a4a() {
    goto fun_3f274e8;
}

void fun_3f29a55() {
    goto 0x3f270a9;
}

void fun_3f29a60() {
    goto fun_3f274e8;
}

void fun_3f29a6b() {
    goto 0x3f270a9;
}

void fun_3f29a76() {
    goto fun_3f274e8;
}

void fun_3f29a81() {
    goto 0x3f270a9;
}

void fun_3f29a8c() {
    goto fun_3f274e8;
}

void fun_3f29a97() {
    goto 0x3f270a9;
}

void fun_3f29aa2() {
    goto fun_3f274e8;
}

void fun_3f29aad() {
    goto 0x3f270a9;
}

void fun_3f29ab8() {
    goto fun_3f274e8;
}

void fun_3f29ac3() {
    goto 0x3f270a9;
}

void fun_3f29ace() {
    goto fun_3f274e8;
}

void fun_3f29ad9() {
    goto 0x3f270a9;
}

void fun_3f29ae4() {
    goto fun_3f274e8;
}

void fun_3f29aef() {
    goto 0x3f270a9;
}

void fun_3f29afa() {
    goto fun_3f274e8;
}

void fun_3f29b05() {
    goto 0x3f270a9;
}

void fun_3f29b10() {
    goto fun_3f274e8;
}

void fun_3f29b1b() {
    goto 0x3f270a9;
}

void fun_3f29b26() {
    goto fun_3f274e8;
}

void fun_3f29b31() {
    goto 0x3f270a9;
}

void fun_3f29b3c() {
    goto fun_3f274e8;
}

void fun_3f29b47() {
    goto 0x3f270a9;
}

void fun_3f29b52() {
    goto fun_3f274e8;
}

void fun_3f29b5d() {
    goto 0x3f270a9;
}

void fun_3f29b68() {
    goto fun_3f274e8;
}

void fun_3f29b73() {
    goto 0x3f270a9;
}

void fun_3f29b7e() {
    goto fun_3f274e8;
}

void fun_3f29b89() {
    goto 0x3f270a9;
}

void fun_3f29b94() {
    goto fun_3f274e8;
}

void fun_3f29b9f() {
    goto 0x3f270a9;
}

void fun_3f29baa() {
    goto fun_3f274e8;
}

void fun_3f29bb5() {
    goto 0x3f270a9;
}

void fun_3f29bc0() {
    goto fun_3f274e8;
}

void fun_3f29bcb() {
    goto 0x3f270a9;
}

void fun_3f29bd6() {
    goto fun_3f274e8;
}

void fun_3f29be1() {
    goto 0x3f270a9;
}

void fun_3f29bec() {
    goto fun_3f274e8;
}

void fun_3f29bf7() {
    goto 0x3f270a9;
}

void fun_3f29c02() {
    goto fun_3f274e8;
}

void fun_3f29c0d() {
    goto 0x3f270a9;
}

void fun_3f29c18() {
    goto fun_3f274e8;
}

void fun_3f29c23() {
    goto 0x3f270a9;
}

void fun_3f29c2e() {
    goto fun_3f274e8;
}

void fun_3f29c39() {
    goto 0x3f270a9;
}

void fun_3f29c44() {
    goto fun_3f274e8;
}

void fun_3f29c4f() {
    goto 0x3f270a9;
}

void fun_3f29c5a() {
    goto fun_3f274e8;
}

void fun_3f29c65() {
    goto 0x3f270a9;
}

void fun_3f29c70() {
    goto fun_3f274e8;
}

void fun_3f29c7b() {
    goto 0x3f270a9;
}

void fun_3f29c86() {
    goto fun_3f274e8;
}

void fun_3f29c91() {
    goto 0x3f270a9;
}

void fun_3f29c9c() {
    goto fun_3f274e8;
}

void fun_3f29ca7() {
    goto 0x3f270a9;
}

void fun_3f29cb2() {
    goto fun_3f274e8;
}

void fun_3f29cbd() {
    goto 0x3f270a9;
}

void fun_3f29cc8() {
    goto fun_3f274e8;
}

void fun_3f29cd3() {
    goto 0x3f270a9;
}

void fun_3f29cde() {
    goto fun_3f274e8;
}

void fun_3f29ce9() {
    goto 0x3f270a9;
}

void fun_3f29cf4() {
    goto fun_3f274e8;
}

void fun_3f29cff() {
    goto 0x3f270a9;
}

void fun_3f29d0a() {
    goto fun_3f274e8;
}

void fun_3f29d15() {
    goto 0x3f270a9;
}

void fun_3f29d20() {
    goto fun_3f274e8;
}

void fun_3f29d2b() {
    goto 0x3f270a9;
}

void fun_3f29d36() {
    goto fun_3f274e8;
}

void fun_3f29d41() {
    goto 0x3f270a9;
}

void fun_3f29d4c() {
    goto fun_3f274e8;
}

void fun_3f29d57() {
    goto 0x3f270a9;
}

void fun_3f29d62() {
    goto fun_3f274e8;
}

void fun_3f29d6d() {
    goto 0x3f270a9;
}

void fun_3f29d78() {
    goto fun_3f274e8;
}

void fun_3f29d83() {
    goto 0x3f270a9;
}

void fun_3f29d8e() {
    goto fun_3f274e8;
}

void fun_3f29d99() {
    goto 0x3f270a9;
}

void fun_3f29da4() {
    goto fun_3f274e8;
}

void fun_3f29daf() {
    goto 0x3f270a9;
}

void fun_3f29dba() {
    goto fun_3f274e8;
}

void fun_3f29dc5() {
    goto 0x3f270a9;
}

void fun_3f29dd0() {
    goto fun_3f274e8;
}

void fun_3f29ddb() {
    goto 0x3f270a9;
}

void fun_3f29de6() {
    goto fun_3f274e8;
}

void fun_3f29df1() {
    goto 0x3f270a9;
}

void fun_3f29dfc() {
    goto fun_3f274e8;
}

void fun_3f29e07() {
    goto 0x3f270a9;
}

void fun_3f29e12() {
    goto fun_3f274e8;
}

void fun_3f29e1d() {
    goto 0x3f270a9;
}

void fun_3f29e28() {
    goto fun_3f274e8;
}

void fun_3f29e33() {
    goto 0x3f270a9;
}

void fun_3f29e3e() {
    goto fun_3f274e8;
}

void fun_3f29e49() {
    goto 0x3f270a9;
}

void fun_3f29e54() {
    goto fun_3f274e8;
}

void fun_3f29e5f() {
    goto 0x3f270a9;
}

void fun_3f29e6a() {
    goto fun_3f274e8;
}

void fun_3f29e75() {
    goto 0x3f270a9;
}

void fun_3f29e80() {
    goto fun_3f274e8;
}

void fun_3f29e8b() {
    goto 0x3f270a9;
}

void fun_3f29e96() {
    goto fun_3f274e8;
}

void fun_3f29ea1() {
    goto 0x3f270a9;
}

void fun_3f29eac() {
    goto fun_3f274e8;
}

void fun_3f29eb7() {
    goto 0x3f270a9;
}

void fun_3f29ec2() {
    goto fun_3f274e8;
}

void fun_3f29ecd() {
    goto 0x3f270a9;
}

void fun_3f29ed8() {
    goto fun_3f274e8;
}

void fun_3f29ee3() {
    goto 0x3f270a9;
}

void fun_3f29eee() {
    goto fun_3f274e8;
}

void fun_3f29ef9() {
    goto 0x3f270a9;
}

void fun_3f29f04() {
    goto fun_3f274e8;
}

void fun_3f29f0f() {
    goto 0x3f270a9;
}

void fun_3f29f1a() {
    goto fun_3f274e8;
}

void fun_3f29f25() {
    goto 0x3f270a9;
}

void fun_3f29f30() {
    goto fun_3f274e8;
}

void fun_3f29f3b() {
    goto 0x3f270a9;
}

void fun_3f29f46() {
    goto fun_3f274e8;
}

void fun_3f29f51() {
    goto 0x3f270a9;
}

void fun_3f29f5c() {
    goto fun_3f274e8;
}

void fun_3f29f67() {
    goto 0x3f270a9;
}

void fun_3f29f72() {
    goto fun_3f274e8;
}

void fun_3f29f7d() {
    goto 0x3f270a9;
}

void fun_3f29f88() {
    goto fun_3f274e8;
}

void fun_3f29f93() {
    goto 0x3f270a9;
}

void fun_3f29f9e() {
    goto fun_3f274e8;
}

void fun_3f29fa9() {
    goto 0x3f270a9;
}

void fun_3f29fb4() {
    goto fun_3f274e8;
}

void fun_3f29fbf() {
    goto 0x3f270a9;
}

void fun_3f29fca() {
    goto fun_3f274e8;
}

void fun_3f29fd5() {
    goto 0x3f270a9;
}

void fun_3f29fe0() {
    goto fun_3f274e8;
}

void fun_3f29feb() {
    goto 0x3f270a9;
}

void fun_3f29ff6() {
    goto fun_3f274e8;
}

void fun_3f2a001() {
    goto 0x3f270a9;
}

void fun_3f2a00c() {
    goto fun_3f274e8;
}

void fun_3f2a017() {
    goto 0x3f270a9;
}

void fun_3f2a022() {
    goto fun_3f274e8;
}

void fun_3f2a02d() {
    goto 0x3f270a9;
}

void fun_3f2a038() {
    goto fun_3f274e8;
}

void fun_3f2a043() {
    goto 0x3f270a9;
}

void fun_3f2a04e() {
    goto fun_3f274e8;
}

void fun_3f2a059() {
    goto 0x3f270a9;
}

void fun_3f2a064() {
    goto fun_3f274e8;
}

void fun_3f2a06f() {
    goto 0x3f270a9;
}

void fun_3f2a07a() {
    goto fun_3f274e8;
}

void fun_3f2a085() {
    goto 0x3f270a9;
}

void fun_3f2a090() {
    goto fun_3f274e8;
}

void fun_3f2a09b() {
    goto 0x3f270a9;
}

void fun_3f2a0a6() {
    goto fun_3f274e8;
}

void fun_3f2a0b1() {
    goto 0x3f270a9;
}

void fun_3f2a0bc() {
    goto fun_3f274e8;
}

void fun_3f2a0c7() {
    goto 0x3f270a9;
}

void fun_3f2a0d2() {
    goto fun_3f274e8;
}

void fun_3f2a0dd() {
    goto 0x3f270a9;
}

void fun_3f2a0e8() {
    goto fun_3f274e8;
}

void fun_3f2a0f3() {
    goto 0x3f270a9;
}

void fun_3f2a0fe() {
    goto fun_3f274e8;
}

void fun_3f2a109() {
    goto 0x3f270a9;
}

void fun_3f2a114() {
    goto fun_3f274e8;
}

void fun_3f2a11f() {
    goto 0x3f270a9;
}

void fun_3f2a12a() {
    goto fun_3f274e8;
}

void fun_3f2a135() {
    goto 0x3f270a9;
}

void fun_3f2a140() {
    goto fun_3f274e8;
}

void fun_3f2a14b() {
    goto 0x3f270a9;
}

void fun_3f2a156() {
    goto fun_3f274e8;
}

void fun_3f2a161() {
    goto 0x3f270a9;
}

void fun_3f2a16c() {
    goto fun_3f274e8;
}

void fun_3f2a177() {
    goto 0x3f270a9;
}

void fun_3f2a182() {
    goto fun_3f274e8;
}

void fun_3f2a18d() {
    goto 0x3f270a9;
}

void fun_3f2a198() {
    goto fun_3f274e8;
}

void fun_3f2a1a3() {
    goto 0x3f270a9;
}

void fun_3f2a1ae() {
    goto fun_3f274e8;
}

void fun_3f2a1b9() {
    goto 0x3f270a9;
}

void fun_3f2a1c4() {
    goto fun_3f274e8;
}

void fun_3f2a1cf() {
    goto 0x3f270a9;
}

void fun_3f2a1da() {
    goto fun_3f274e8;
}

void fun_3f2a1e5() {
    goto 0x3f270a9;
}

void fun_3f2a1f0() {
    goto fun_3f274e8;
}

void fun_3f2a1fb() {
    goto 0x3f270a9;
}

void fun_3f2a206() {
    goto fun_3f274e8;
}

void fun_3f2a211() {
    goto 0x3f270a9;
}

void fun_3f2a21c() {
    goto fun_3f274e8;
}

void fun_3f2a227() {
    goto 0x3f270a9;
}

void fun_3f2a232() {
    goto fun_3f274e8;
}

void fun_3f2a23d() {
    goto 0x3f270a9;
}

void fun_3f2a248() {
    goto fun_3f274e8;
}

void fun_3f2a253(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0x2fbc, 36, 0x81, 0x3f270a9, __return_address());
    return;
}

void fun_3f2a26c() {
    goto 0x3f27454;
}

void fun_3f2a276() {
    goto 0x3f270bc;
}

void fun_3f2a280() {
    goto fun_3f274e8;
}

void fun_3f2a28a() {
    goto fun_3f274e8;
}

void fun_3f2a295() {
    goto 0x3f270a9;
}

void fun_3f2a2a0() {
    goto fun_3f274e8;
}

void fun_3f2a2ab() {
    goto 0x3f270a9;
}

void fun_3f2a2b6() {
    goto fun_3f274e8;
}

void fun_3f2a2c1() {
    goto 0x3f270a9;
}

void fun_3f2a2cc() {
    goto fun_3f274e8;
}

void fun_3f2a2d7() {
    goto 0x3f270a9;
}

void fun_3f2a2e2() {
    goto fun_3f274e8;
}

void fun_3f2a2ed() {
    goto 0x3f270a9;
}

void fun_3f2a2f8() {
    goto fun_3f274e8;
}

void fun_3f2a303() {
    goto 0x3f270a9;
}

void fun_3f2a30e() {
    goto fun_3f274e8;
}

void fun_3f2a319() {
    goto 0x3f270a9;
}

void fun_3f2a324() {
    goto fun_3f274e8;
}

void fun_3f2a32f() {
    goto 0x3f270a9;
}

void fun_3f2a33a() {
    goto fun_3f274e8;
}

void fun_3f2a345() {
    goto 0x3f270a9;
}

void fun_3f2a350() {
    goto fun_3f274e8;
}

void fun_3f2a35b() {
    goto 0x3f270a9;
}

void fun_3f2a366() {
    goto fun_3f274e8;
}

void fun_3f2a371() {
    goto 0x3f270a9;
}

void fun_3f2a37c() {
    goto fun_3f274e8;
}

void fun_3f2a387(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0x934, 36, 12, 0x3f270a9, __return_address());
    return;
}

void fun_3f2a39d() {
    goto 0x3f27454;
}

void fun_3f2a3a7() {
    goto 0x3f270bc;
}

void fun_3f2a3b1() {
    goto fun_3f274e8;
}

void fun_3f2a3bb() {
    goto fun_3f274e8;
}

void fun_3f2a3c6() {
    goto 0x3f270a9;
}

void fun_3f2a3d1() {
    goto fun_3f274e8;
}

void fun_3f2a3dc() {
    goto 0x3f270a9;
}

void fun_3f2a3e7() {
    goto fun_3f274e8;
}

void fun_3f2a3f2() {
    goto 0x3f270a9;
}

void fun_3f2a3fd() {
    goto fun_3f274e8;
}

void fun_3f2a408() {
    goto 0x3f270a9;
}

void fun_3f2a413() {
    goto fun_3f274e8;
}

void fun_3f2a41e() {
    goto 0x3f270a9;
}

void fun_3f2a429() {
    goto fun_3f274e8;
}

void fun_3f2a434() {
    goto 0x3f270a9;
}

void fun_3f2a43f() {
    goto fun_3f274e8;
}

void fun_3f2a44a() {
    goto 0x3f270a9;
}

void fun_3f2a455() {
    goto fun_3f274e8;
}

void fun_3f2a460() {
    goto 0x3f270a9;
}

void fun_3f2a46b() {
    goto fun_3f274e8;
}

void fun_3f2a476() {
    goto 0x3f270a9;
}

void fun_3f2a481() {
    goto fun_3f274e8;
}

void fun_3f2a48c() {
    goto 0x3f270a9;
}

void fun_3f2a497() {
    goto fun_3f274e8;
}

void fun_3f2a4a2() {
    goto 0x3f270a9;
}

void fun_3f2a4ad() {
    goto fun_3f274e8;
}

void fun_3f2a4b8() {
    goto 0x3f270a9;
}

void fun_3f2a4c3() {
    goto fun_3f274e8;
}

void fun_3f2a4ce() {
    goto 0x3f270a9;
}

void fun_3f2a4d9() {
    goto fun_3f274e8;
}

void fun_3f2a4e4(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0xb2c, 36, 14, 0x3f270a9, __return_address());
    return;
}

void fun_3f2a4fa() {
    goto 0x3f27454;
}

void fun_3f2a504() {
    goto 0x3f270bc;
}

void fun_3f2a50e() {
    goto fun_3f274e8;
}

void fun_3f2a518() {
    goto fun_3f274e8;
}

void fun_3f2a523() {
    goto 0x3f270a9;
}

void fun_3f2a52e() {
    goto fun_3f274e8;
}

void fun_3f2a539() {
    goto 0x3f270a9;
}

void fun_3f2a544() {
    goto fun_3f274e8;
}

void fun_3f2a54f() {
    goto 0x3f270a9;
}

void fun_3f2a55a() {
    goto fun_3f274e8;
}

void fun_3f2a565() {
    goto 0x3f270a9;
}

void fun_3f2a570() {
    goto fun_3f274e8;
}

void fun_3f2a57b() {
    goto 0x3f270a9;
}

void fun_3f2a586() {
    goto fun_3f274e8;
}

void fun_3f2a591(void** ecx) {
    void* ebp2;

    fun_3f27959(ecx, reinterpret_cast<int32_t>(ebp2) - 0x784, 36, 6, 0x3f270a9, __return_address());
    return;
}

void fun_3f2a5a7() {
    goto 0x3f27454;
}

int32_t g3f2b06c = 0x7423e140;

void fun_3f2a5b1(int32_t a1, void** a2) {
    uint32_t ecx3;
    uint32_t eax4;
    uint32_t ecx5;

    ecx3 = *reinterpret_cast<uint32_t*>(a2 + 0xffffc878) ^ reinterpret_cast<uint32_t>(a2 + 12);
    eax4 = fun_3f27918(ecx3, __return_address(), a1, a2);
    ecx5 = reinterpret_cast<unsigned char>(*reinterpret_cast<void***>(a2 + 0xfffffffc)) ^ eax4;
    fun_3f27918(ecx5, __return_address(), a1, a2);
    goto g3f2b06c;
}

void fun_3f2a5d9() {
    int32_t ebp1;

    if (*reinterpret_cast<int32_t*>(ebp1 - 44))
        goto fun_3f27563;
    return;
}

struct s90 {
    void** f0;
    signed char[3] pad4;
    void** f4;
};

void fun_3f2a5e1() {
    struct s90* ecx1;
    int32_t ebp2;
    void** esi3;
    void** edi4;

    ecx1 = reinterpret_cast<struct s90*>(ebp2 - 28);
    esi3 = ecx1->f0;
    edi4 = ecx1->f4;
    while (esi3 != edi4) {
        fun_3f27459(esi3 + 24);
        fun_3f274e8(esi3);
        esi3 = esi3 + 36;
    }
    return;
}

void fun_3f2a5e9(int32_t a1, void** a2) {
    uint32_t ecx3;
    uint32_t eax4;
    uint32_t ecx5;

    ecx3 = *reinterpret_cast<uint32_t*>(a2 + 0xffffffd0) ^ reinterpret_cast<uint32_t>(a2 + 12);
    eax4 = fun_3f27918(ecx3, __return_address(), a1, a2);
    ecx5 = reinterpret_cast<unsigned char>(*reinterpret_cast<void***>(a2 + 0xfffffffc)) ^ eax4;
    fun_3f27918(ecx5, __return_address(), a1, a2);
    goto 0x3f28739;
}

void fun_3f2a60e() {
    goto fun_3f274e8;
}

void fun_3f2a616(int32_t a1, void** a2) {
    uint32_t ecx3;

    ecx3 = *reinterpret_cast<uint32_t*>(a2 + 0xffffffe0) ^ reinterpret_cast<uint32_t>(a2 + 12);
    fun_3f27918(ecx3, __return_address(), a1, a2);
    goto 0x3f28739;
}

void fun_3f2a631(void** ecx) {
    fun_3f27959(ecx, 0x4211150, 36, 9, 0x3f270bc, __return_address());
    return;
}

void fun_3f2a645() {
    signed char* eax1;
    signed char* eax2;
    signed char al3;
    signed char* eax4;
    signed char* eax5;
    signed char al6;
    signed char* eax7;
    signed char* eax8;
    signed char al9;
    signed char* eax10;
    signed char* eax11;
    signed char al12;
    signed char* eax13;
    signed char* eax14;
    signed char al15;
    signed char* eax16;
    signed char* eax17;
    signed char al18;
    signed char* eax19;
    signed char* eax20;
    signed char al21;
    signed char* eax22;
    signed char* eax23;
    signed char al24;
    signed char* eax25;
    signed char* eax26;
    signed char al27;
    signed char* eax28;
    signed char* eax29;
    signed char al30;
    signed char* eax31;
    signed char* eax32;
    signed char al33;
    signed char* eax34;
    signed char* eax35;
    signed char al36;
    signed char* eax37;
    signed char* eax38;
    signed char al39;
    signed char* eax40;
    signed char* eax41;
    signed char al42;
    signed char* eax43;
    signed char* eax44;
    signed char al45;
    signed char* eax46;
    signed char* eax47;
    signed char al48;
    signed char* eax49;
    signed char* eax50;
    signed char al51;
    signed char* eax52;
    signed char* eax53;
    signed char al54;
    signed char* eax55;
    signed char* eax56;
    signed char al57;
    signed char* eax58;
    signed char* eax59;
    signed char al60;
    signed char* eax61;
    signed char* eax62;
    signed char al63;
    signed char* eax64;
    signed char* eax65;
    signed char al66;
    signed char* eax67;
    signed char* eax68;
    signed char al69;
    signed char* eax70;
    signed char* eax71;
    signed char al72;
    signed char* eax73;
    signed char* eax74;
    signed char al75;
    signed char* eax76;
    signed char* eax77;
    signed char al78;
    signed char* eax79;
    signed char* eax80;
    signed char al81;
    signed char* eax82;
    signed char* eax83;
    signed char al84;
    signed char* eax85;
    signed char* eax86;
    signed char al87;
    signed char* eax88;
    signed char* eax89;
    signed char al90;
    signed char* eax91;
    signed char* eax92;
    signed char al93;
    signed char* eax94;
    signed char* eax95;
    signed char al96;
    signed char* eax97;
    signed char* eax98;
    signed char al99;
    signed char* eax100;
    signed char* eax101;
    signed char al102;
    signed char* eax103;
    signed char* eax104;
    signed char al105;
    signed char* eax106;
    signed char* eax107;
    signed char al108;
    signed char* eax109;
    signed char* eax110;
    signed char al111;
    signed char* eax112;
    signed char* eax113;
    signed char al114;
    signed char* eax115;
    signed char* eax116;
    signed char al117;
    signed char* eax118;
    signed char* eax119;
    signed char al120;
    signed char* eax121;
    signed char* eax122;
    signed char al123;
    signed char* eax124;
    signed char* eax125;
    signed char al126;
    signed char* eax127;
    signed char* eax128;
    signed char al129;
    signed char* eax130;
    signed char* eax131;
    signed char al132;
    signed char* eax133;
    signed char* eax134;
    signed char al135;
    signed char* eax136;
    signed char* eax137;
    signed char al138;
    signed char* eax139;
    signed char* eax140;
    signed char al141;
    signed char* eax142;
    signed char* eax143;
    signed char al144;
    signed char* eax145;
    signed char* eax146;
    signed char al147;
    signed char* eax148;
    signed char* eax149;
    signed char al150;
    signed char* eax151;
    signed char* eax152;
    signed char al153;
    signed char* eax154;
    signed char* eax155;
    signed char al156;
    signed char* eax157;
    signed char* eax158;
    signed char al159;
    signed char* eax160;
    signed char* eax161;
    signed char al162;
    signed char* eax163;
    signed char* eax164;
    signed char al165;
    signed char* eax166;
    signed char* eax167;
    signed char al168;
    signed char* eax169;
    signed char* eax170;
    signed char al171;
    signed char* eax172;
    signed char* eax173;
    signed char al174;
    signed char* eax175;
    signed char* eax176;
    signed char al177;
    signed char* eax178;
    signed char* eax179;
    signed char al180;
    signed char* eax181;
    signed char* eax182;
    signed char al183;
    signed char* eax184;
    signed char* eax185;
    signed char al186;
    signed char* eax187;
    signed char* eax188;
    signed char al189;
    signed char* eax190;
    signed char* eax191;
    signed char al192;
    signed char* eax193;
    signed char* eax194;
    signed char al195;
    signed char* eax196;
    signed char* eax197;
    signed char al198;
    signed char* eax199;
    signed char* eax200;
    signed char al201;
    signed char* eax202;
    signed char* eax203;
    signed char al204;
    signed char* eax205;
    signed char* eax206;
    signed char al207;
    signed char* eax208;
    signed char* eax209;
    signed char al210;
    signed char* eax211;
    signed char* eax212;
    signed char al213;
    signed char* eax214;
    signed char* eax215;
    signed char al216;
    signed char* eax217;
    signed char* eax218;
    signed char al219;
    signed char* eax220;
    signed char* eax221;
    signed char al222;
    signed char* eax223;
    signed char* eax224;
    signed char al225;
    signed char* eax226;
    signed char* eax227;
    signed char al228;
    signed char* eax229;
    signed char* eax230;
    signed char al231;
    signed char* eax232;
    signed char* eax233;
    signed char al234;
    signed char* eax235;
    signed char* eax236;
    signed char al237;
    signed char* eax238;
    signed char* eax239;
    signed char al240;
    signed char* eax241;
    signed char* eax242;
    signed char al243;
    signed char* eax244;
    signed char* eax245;
    signed char al246;
    signed char* eax247;
    signed char* eax248;
    signed char al249;
    signed char* eax250;
    signed char* eax251;
    signed char al252;
    signed char* eax253;
    signed char* eax254;
    signed char al255;
    signed char* eax256;
    signed char* eax257;
    signed char al258;
    signed char* eax259;
    signed char* eax260;
    signed char al261;
    signed char* eax262;
    signed char* eax263;
    signed char al264;
    signed char* eax265;
    signed char* eax266;
    signed char al267;
    signed char* eax268;
    signed char* eax269;
    signed char al270;
    signed char* eax271;
    signed char* eax272;
    signed char al273;
    signed char* eax274;
    signed char* eax275;
    signed char al276;
    signed char* eax277;
    signed char* eax278;
    signed char al279;
    signed char* eax280;
    signed char* eax281;
    signed char al282;
    signed char* eax283;
    signed char* eax284;
    signed char al285;
    signed char* eax286;
    signed char* eax287;
    signed char al288;
    signed char* eax289;
    signed char* eax290;
    signed char al291;
    signed char* eax292;
    signed char* eax293;
    signed char al294;
    signed char* eax295;
    signed char* eax296;
    signed char al297;
    signed char* eax298;
    signed char* eax299;
    signed char al300;
    signed char* eax301;
    signed char* eax302;
    signed char al303;
    signed char* eax304;
    signed char* eax305;
    signed char al306;
    signed char* eax307;
    signed char* eax308;
    signed char al309;
    signed char* eax310;
    signed char* eax311;
    signed char al312;
    signed char* eax313;
    signed char* eax314;
    signed char al315;
    signed char* eax316;
    signed char* eax317;
    signed char al318;
    signed char* eax319;
    signed char* eax320;
    signed char al321;
    signed char* eax322;
    signed char* eax323;
    signed char al324;
    signed char* eax325;
    signed char* eax326;
    signed char al327;
    signed char* eax328;
    signed char* eax329;
    signed char al330;
    signed char* eax331;
    signed char* eax332;
    signed char al333;
    signed char* eax334;
    signed char* eax335;
    signed char al336;
    signed char* eax337;
    signed char* eax338;
    signed char al339;
    signed char* eax340;
    signed char* eax341;
    signed char al342;
    signed char* eax343;
    signed char* eax344;
    signed char al345;
    signed char* eax346;
    signed char* eax347;
    signed char al348;
    signed char* eax349;
    signed char* eax350;
    signed char al351;
    signed char* eax352;
    signed char* eax353;
    signed char al354;
    signed char* eax355;
    signed char* eax356;
    signed char al357;
    signed char* eax358;
    signed char* eax359;
    signed char al360;
    signed char* eax361;
    signed char* eax362;
    signed char al363;
    signed char* eax364;
    signed char* eax365;
    signed char al366;
    signed char* eax367;
    signed char* eax368;
    signed char al369;
    signed char* eax370;
    signed char* eax371;
    signed char al372;
    signed char* eax373;
    signed char* eax374;
    signed char al375;
    signed char* eax376;
    signed char* eax377;
    signed char al378;
    signed char* eax379;
    signed char* eax380;
    signed char al381;
    signed char* eax382;
    signed char* eax383;
    signed char al384;
    signed char* eax385;
    signed char* eax386;
    signed char al387;
    signed char* eax388;
    signed char* eax389;
    signed char al390;
    signed char* eax391;
    signed char* eax392;
    signed char al393;
    signed char* eax394;
    signed char* eax395;
    signed char al396;
    signed char* eax397;
    signed char* eax398;
    signed char al399;
    signed char* eax400;
    signed char* eax401;
    signed char al402;
    signed char* eax403;
    signed char* eax404;
    signed char al405;
    signed char* eax406;
    signed char* eax407;
    signed char al408;
    signed char* eax409;
    signed char* eax410;
    signed char al411;
    signed char* eax412;
    signed char* eax413;
    signed char al414;
    signed char* eax415;
    signed char* eax416;
    signed char al417;
    signed char* eax418;
    signed char* eax419;
    signed char al420;
    signed char* eax421;
    signed char* eax422;
    signed char al423;
    signed char* eax424;
    signed char* eax425;
    signed char al426;
    signed char* eax427;
    signed char* eax428;
    signed char al429;
    signed char* eax430;
    signed char* eax431;
    signed char al432;
    signed char* eax433;
    signed char* eax434;
    signed char al435;
    signed char* eax436;
    signed char* eax437;
    signed char al438;
    signed char* eax439;
    signed char* eax440;
    signed char al441;
    signed char* eax442;
    signed char* eax443;
    signed char al444;
    signed char* eax445;
    signed char* eax446;
    signed char al447;
    signed char* eax448;
    signed char* eax449;
    signed char al450;
    signed char* eax451;
    signed char* eax452;
    signed char al453;
    signed char* eax454;
    signed char* eax455;
    signed char al456;
    signed char* eax457;
    signed char* eax458;
    signed char al459;
    signed char* eax460;
    signed char* eax461;
    signed char al462;
    signed char* eax463;
    signed char* eax464;
    signed char al465;
    signed char* eax466;
    signed char* eax467;
    signed char al468;
    signed char* eax469;
    signed char* eax470;
    signed char al471;
    signed char* eax472;
    signed char* eax473;
    signed char al474;
    signed char* eax475;
    signed char* eax476;
    signed char al477;
    signed char* eax478;
    signed char* eax479;
    signed char al480;
    signed char* eax481;
    signed char* eax482;
    signed char al483;
    signed char* eax484;
    signed char* eax485;
    signed char al486;
    signed char* eax487;
    signed char* eax488;
    signed char al489;
    signed char* eax490;
    signed char* eax491;
    signed char al492;
    signed char* eax493;
    signed char* eax494;
    signed char al495;
    signed char* eax496;
    signed char* eax497;
    signed char al498;
    signed char* eax499;
    signed char* eax500;
    signed char al501;
    signed char* eax502;
    signed char* eax503;
    signed char al504;
    signed char* eax505;
    signed char* eax506;
    signed char al507;
    signed char* eax508;
    signed char* eax509;
    signed char al510;
    signed char* eax511;
    signed char* eax512;
    signed char al513;
    signed char* eax514;
    signed char* eax515;
    signed char al516;
    signed char* eax517;
    signed char* eax518;
    signed char al519;
    signed char* eax520;
    signed char* eax521;
    signed char al522;
    signed char* eax523;
    signed char* eax524;
    signed char al525;
    signed char* eax526;
    signed char* eax527;
    signed char al528;
    signed char* eax529;
    signed char* eax530;
    signed char al531;
    signed char* eax532;
    signed char* eax533;
    signed char al534;
    signed char* eax535;
    signed char* eax536;
    signed char al537;
    signed char* eax538;
    signed char* eax539;
    signed char al540;
    signed char* eax541;
    signed char* eax542;
    signed char al543;
    signed char* eax544;
    signed char* eax545;
    signed char al546;
    signed char* eax547;
    signed char* eax548;
    signed char al549;
    signed char* eax550;
    signed char* eax551;
    signed char al552;
    signed char* eax553;
    signed char* eax554;
    signed char al555;
    signed char* eax556;
    signed char* eax557;
    signed char al558;
    signed char* eax559;
    signed char* eax560;
    signed char al561;
    signed char* eax562;
    signed char* eax563;
    signed char al564;
    signed char* eax565;
    signed char* eax566;
    signed char al567;
    signed char* eax568;
    signed char* eax569;
    signed char al570;
    signed char* eax571;
    signed char* eax572;
    signed char al573;
    signed char* eax574;
    signed char* eax575;
    signed char al576;
    signed char* eax577;
    signed char* eax578;
    signed char al579;
    signed char* eax580;
    signed char* eax581;
    signed char al582;
    signed char* eax583;
    signed char* eax584;
    signed char al585;
    signed char* eax586;
    signed char* eax587;
    signed char al588;
    signed char* eax589;
    signed char* eax590;
    signed char al591;
    signed char* eax592;
    signed char* eax593;
    signed char al594;
    signed char* eax595;
    signed char* eax596;
    signed char al597;
    signed char* eax598;
    signed char* eax599;
    signed char al600;
    signed char* eax601;
    signed char* eax602;
    signed char al603;
    signed char* eax604;
    signed char* eax605;
    signed char al606;
    signed char* eax607;
    signed char* eax608;
    signed char al609;
    signed char* eax610;
    signed char* eax611;
    signed char al612;
    signed char* eax613;
    signed char* eax614;
    signed char al615;
    signed char* eax616;
    signed char* eax617;
    signed char al618;
    signed char* eax619;
    signed char* eax620;
    signed char al621;
    signed char* eax622;
    signed char* eax623;
    signed char al624;
    signed char* eax625;
    signed char* eax626;
    signed char al627;
    signed char* eax628;
    signed char* eax629;
    signed char al630;
    signed char* eax631;
    signed char* eax632;
    signed char al633;
    signed char* eax634;
    signed char* eax635;
    signed char al636;
    signed char* eax637;
    signed char* eax638;
    signed char al639;
    signed char* eax640;
    signed char* eax641;
    signed char al642;
    signed char* eax643;
    signed char* eax644;
    signed char al645;
    signed char* eax646;
    signed char* eax647;
    signed char al648;
    signed char* eax649;
    signed char* eax650;
    signed char al651;
    signed char* eax652;
    signed char* eax653;
    signed char al654;
    signed char* eax655;
    signed char* eax656;
    signed char al657;
    signed char* eax658;
    signed char* eax659;
    signed char al660;
    signed char* eax661;
    signed char* eax662;
    signed char al663;

    *eax1 = reinterpret_cast<signed char>(*eax2 + al3);
    *eax4 = reinterpret_cast<signed char>(*eax5 + al6);
    *eax7 = reinterpret_cast<signed char>(*eax8 + al9);
    *eax10 = reinterpret_cast<signed char>(*eax11 + al12);
    *eax13 = reinterpret_cast<signed char>(*eax14 + al15);
    *eax16 = reinterpret_cast<signed char>(*eax17 + al18);
    *eax19 = reinterpret_cast<signed char>(*eax20 + al21);
    *eax22 = reinterpret_cast<signed char>(*eax23 + al24);
    *eax25 = reinterpret_cast<signed char>(*eax26 + al27);
    *eax28 = reinterpret_cast<signed char>(*eax29 + al30);
    *eax31 = reinterpret_cast<signed char>(*eax32 + al33);
    *eax34 = reinterpret_cast<signed char>(*eax35 + al36);
    *eax37 = reinterpret_cast<signed char>(*eax38 + al39);
    *eax40 = reinterpret_cast<signed char>(*eax41 + al42);
    *eax43 = reinterpret_cast<signed char>(*eax44 + al45);
    *eax46 = reinterpret_cast<signed char>(*eax47 + al48);
    *eax49 = reinterpret_cast<signed char>(*eax50 + al51);
    *eax52 = reinterpret_cast<signed char>(*eax53 + al54);
    *eax55 = reinterpret_cast<signed char>(*eax56 + al57);
    *eax58 = reinterpret_cast<signed char>(*eax59 + al60);
    *eax61 = reinterpret_cast<signed char>(*eax62 + al63);
    *eax64 = reinterpret_cast<signed char>(*eax65 + al66);
    *eax67 = reinterpret_cast<signed char>(*eax68 + al69);
    *eax70 = reinterpret_cast<signed char>(*eax71 + al72);
    *eax73 = reinterpret_cast<signed char>(*eax74 + al75);
    *eax76 = reinterpret_cast<signed char>(*eax77 + al78);
    *eax79 = reinterpret_cast<signed char>(*eax80 + al81);
    *eax82 = reinterpret_cast<signed char>(*eax83 + al84);
    *eax85 = reinterpret_cast<signed char>(*eax86 + al87);
    *eax88 = reinterpret_cast<signed char>(*eax89 + al90);
    *eax91 = reinterpret_cast<signed char>(*eax92 + al93);
    *eax94 = reinterpret_cast<signed char>(*eax95 + al96);
    *eax97 = reinterpret_cast<signed char>(*eax98 + al99);
    *eax100 = reinterpret_cast<signed char>(*eax101 + al102);
    *eax103 = reinterpret_cast<signed char>(*eax104 + al105);
    *eax106 = reinterpret_cast<signed char>(*eax107 + al108);
    *eax109 = reinterpret_cast<signed char>(*eax110 + al111);
    *eax112 = reinterpret_cast<signed char>(*eax113 + al114);
    *eax115 = reinterpret_cast<signed char>(*eax116 + al117);
    *eax118 = reinterpret_cast<signed char>(*eax119 + al120);
    *eax121 = reinterpret_cast<signed char>(*eax122 + al123);
    *eax124 = reinterpret_cast<signed char>(*eax125 + al126);
    *eax127 = reinterpret_cast<signed char>(*eax128 + al129);
    *eax130 = reinterpret_cast<signed char>(*eax131 + al132);
    *eax133 = reinterpret_cast<signed char>(*eax134 + al135);
    *eax136 = reinterpret_cast<signed char>(*eax137 + al138);
    *eax139 = reinterpret_cast<signed char>(*eax140 + al141);
    *eax142 = reinterpret_cast<signed char>(*eax143 + al144);
    *eax145 = reinterpret_cast<signed char>(*eax146 + al147);
    *eax148 = reinterpret_cast<signed char>(*eax149 + al150);
    *eax151 = reinterpret_cast<signed char>(*eax152 + al153);
    *eax154 = reinterpret_cast<signed char>(*eax155 + al156);
    *eax157 = reinterpret_cast<signed char>(*eax158 + al159);
    *eax160 = reinterpret_cast<signed char>(*eax161 + al162);
    *eax163 = reinterpret_cast<signed char>(*eax164 + al165);
    *eax166 = reinterpret_cast<signed char>(*eax167 + al168);
    *eax169 = reinterpret_cast<signed char>(*eax170 + al171);
    *eax172 = reinterpret_cast<signed char>(*eax173 + al174);
    *eax175 = reinterpret_cast<signed char>(*eax176 + al177);
    *eax178 = reinterpret_cast<signed char>(*eax179 + al180);
    *eax181 = reinterpret_cast<signed char>(*eax182 + al183);
    *eax184 = reinterpret_cast<signed char>(*eax185 + al186);
    *eax187 = reinterpret_cast<signed char>(*eax188 + al189);
    *eax190 = reinterpret_cast<signed char>(*eax191 + al192);
    *eax193 = reinterpret_cast<signed char>(*eax194 + al195);
    *eax196 = reinterpret_cast<signed char>(*eax197 + al198);
    *eax199 = reinterpret_cast<signed char>(*eax200 + al201);
    *eax202 = reinterpret_cast<signed char>(*eax203 + al204);
    *eax205 = reinterpret_cast<signed char>(*eax206 + al207);
    *eax208 = reinterpret_cast<signed char>(*eax209 + al210);
    *eax211 = reinterpret_cast<signed char>(*eax212 + al213);
    *eax214 = reinterpret_cast<signed char>(*eax215 + al216);
    *eax217 = reinterpret_cast<signed char>(*eax218 + al219);
    *eax220 = reinterpret_cast<signed char>(*eax221 + al222);
    *eax223 = reinterpret_cast<signed char>(*eax224 + al225);
    *eax226 = reinterpret_cast<signed char>(*eax227 + al228);
    *eax229 = reinterpret_cast<signed char>(*eax230 + al231);
    *eax232 = reinterpret_cast<signed char>(*eax233 + al234);
    *eax235 = reinterpret_cast<signed char>(*eax236 + al237);
    *eax238 = reinterpret_cast<signed char>(*eax239 + al240);
    *eax241 = reinterpret_cast<signed char>(*eax242 + al243);
    *eax244 = reinterpret_cast<signed char>(*eax245 + al246);
    *eax247 = reinterpret_cast<signed char>(*eax248 + al249);
    *eax250 = reinterpret_cast<signed char>(*eax251 + al252);
    *eax253 = reinterpret_cast<signed char>(*eax254 + al255);
    *eax256 = reinterpret_cast<signed char>(*eax257 + al258);
    *eax259 = reinterpret_cast<signed char>(*eax260 + al261);
    *eax262 = reinterpret_cast<signed char>(*eax263 + al264);
    *eax265 = reinterpret_cast<signed char>(*eax266 + al267);
    *eax268 = reinterpret_cast<signed char>(*eax269 + al270);
    *eax271 = reinterpret_cast<signed char>(*eax272 + al273);
    *eax274 = reinterpret_cast<signed char>(*eax275 + al276);
    *eax277 = reinterpret_cast<signed char>(*eax278 + al279);
    *eax280 = reinterpret_cast<signed char>(*eax281 + al282);
    *eax283 = reinterpret_cast<signed char>(*eax284 + al285);
    *eax286 = reinterpret_cast<signed char>(*eax287 + al288);
    *eax289 = reinterpret_cast<signed char>(*eax290 + al291);
    *eax292 = reinterpret_cast<signed char>(*eax293 + al294);
    *eax295 = reinterpret_cast<signed char>(*eax296 + al297);
    *eax298 = reinterpret_cast<signed char>(*eax299 + al300);
    *eax301 = reinterpret_cast<signed char>(*eax302 + al303);
    *eax304 = reinterpret_cast<signed char>(*eax305 + al306);
    *eax307 = reinterpret_cast<signed char>(*eax308 + al309);
    *eax310 = reinterpret_cast<signed char>(*eax311 + al312);
    *eax313 = reinterpret_cast<signed char>(*eax314 + al315);
    *eax316 = reinterpret_cast<signed char>(*eax317 + al318);
    *eax319 = reinterpret_cast<signed char>(*eax320 + al321);
    *eax322 = reinterpret_cast<signed char>(*eax323 + al324);
    *eax325 = reinterpret_cast<signed char>(*eax326 + al327);
    *eax328 = reinterpret_cast<signed char>(*eax329 + al330);
    *eax331 = reinterpret_cast<signed char>(*eax332 + al333);
    *eax334 = reinterpret_cast<signed char>(*eax335 + al336);
    *eax337 = reinterpret_cast<signed char>(*eax338 + al339);
    *eax340 = reinterpret_cast<signed char>(*eax341 + al342);
    *eax343 = reinterpret_cast<signed char>(*eax344 + al345);
    *eax346 = reinterpret_cast<signed char>(*eax347 + al348);
    *eax349 = reinterpret_cast<signed char>(*eax350 + al351);
    *eax352 = reinterpret_cast<signed char>(*eax353 + al354);
    *eax355 = reinterpret_cast<signed char>(*eax356 + al357);
    *eax358 = reinterpret_cast<signed char>(*eax359 + al360);
    *eax361 = reinterpret_cast<signed char>(*eax362 + al363);
    *eax364 = reinterpret_cast<signed char>(*eax365 + al366);
    *eax367 = reinterpret_cast<signed char>(*eax368 + al369);
    *eax370 = reinterpret_cast<signed char>(*eax371 + al372);
    *eax373 = reinterpret_cast<signed char>(*eax374 + al375);
    *eax376 = reinterpret_cast<signed char>(*eax377 + al378);
    *eax379 = reinterpret_cast<signed char>(*eax380 + al381);
    *eax382 = reinterpret_cast<signed char>(*eax383 + al384);
    *eax385 = reinterpret_cast<signed char>(*eax386 + al387);
    *eax388 = reinterpret_cast<signed char>(*eax389 + al390);
    *eax391 = reinterpret_cast<signed char>(*eax392 + al393);
    *eax394 = reinterpret_cast<signed char>(*eax395 + al396);
    *eax397 = reinterpret_cast<signed char>(*eax398 + al399);
    *eax400 = reinterpret_cast<signed char>(*eax401 + al402);
    *eax403 = reinterpret_cast<signed char>(*eax404 + al405);
    *eax406 = reinterpret_cast<signed char>(*eax407 + al408);
    *eax409 = reinterpret_cast<signed char>(*eax410 + al411);
    *eax412 = reinterpret_cast<signed char>(*eax413 + al414);
    *eax415 = reinterpret_cast<signed char>(*eax416 + al417);
    *eax418 = reinterpret_cast<signed char>(*eax419 + al420);
    *eax421 = reinterpret_cast<signed char>(*eax422 + al423);
    *eax424 = reinterpret_cast<signed char>(*eax425 + al426);
    *eax427 = reinterpret_cast<signed char>(*eax428 + al429);
    *eax430 = reinterpret_cast<signed char>(*eax431 + al432);
    *eax433 = reinterpret_cast<signed char>(*eax434 + al435);
    *eax436 = reinterpret_cast<signed char>(*eax437 + al438);
    *eax439 = reinterpret_cast<signed char>(*eax440 + al441);
    *eax442 = reinterpret_cast<signed char>(*eax443 + al444);
    *eax445 = reinterpret_cast<signed char>(*eax446 + al447);
    *eax448 = reinterpret_cast<signed char>(*eax449 + al450);
    *eax451 = reinterpret_cast<signed char>(*eax452 + al453);
    *eax454 = reinterpret_cast<signed char>(*eax455 + al456);
    *eax457 = reinterpret_cast<signed char>(*eax458 + al459);
    *eax460 = reinterpret_cast<signed char>(*eax461 + al462);
    *eax463 = reinterpret_cast<signed char>(*eax464 + al465);
    *eax466 = reinterpret_cast<signed char>(*eax467 + al468);
    *eax469 = reinterpret_cast<signed char>(*eax470 + al471);
    *eax472 = reinterpret_cast<signed char>(*eax473 + al474);
    *eax475 = reinterpret_cast<signed char>(*eax476 + al477);
    *eax478 = reinterpret_cast<signed char>(*eax479 + al480);
    *eax481 = reinterpret_cast<signed char>(*eax482 + al483);
    *eax484 = reinterpret_cast<signed char>(*eax485 + al486);
    *eax487 = reinterpret_cast<signed char>(*eax488 + al489);
    *eax490 = reinterpret_cast<signed char>(*eax491 + al492);
    *eax493 = reinterpret_cast<signed char>(*eax494 + al495);
    *eax496 = reinterpret_cast<signed char>(*eax497 + al498);
    *eax499 = reinterpret_cast<signed char>(*eax500 + al501);
    *eax502 = reinterpret_cast<signed char>(*eax503 + al504);
    *eax505 = reinterpret_cast<signed char>(*eax506 + al507);
    *eax508 = reinterpret_cast<signed char>(*eax509 + al510);
    *eax511 = reinterpret_cast<signed char>(*eax512 + al513);
    *eax514 = reinterpret_cast<signed char>(*eax515 + al516);
    *eax517 = reinterpret_cast<signed char>(*eax518 + al519);
    *eax520 = reinterpret_cast<signed char>(*eax521 + al522);
    *eax523 = reinterpret_cast<signed char>(*eax524 + al525);
    *eax526 = reinterpret_cast<signed char>(*eax527 + al528);
    *eax529 = reinterpret_cast<signed char>(*eax530 + al531);
    *eax532 = reinterpret_cast<signed char>(*eax533 + al534);
    *eax535 = reinterpret_cast<signed char>(*eax536 + al537);
    *eax538 = reinterpret_cast<signed char>(*eax539 + al540);
    *eax541 = reinterpret_cast<signed char>(*eax542 + al543);
    *eax544 = reinterpret_cast<signed char>(*eax545 + al546);
    *eax547 = reinterpret_cast<signed char>(*eax548 + al549);
    *eax550 = reinterpret_cast<signed char>(*eax551 + al552);
    *eax553 = reinterpret_cast<signed char>(*eax554 + al555);
    *eax556 = reinterpret_cast<signed char>(*eax557 + al558);
    *eax559 = reinterpret_cast<signed char>(*eax560 + al561);
    *eax562 = reinterpret_cast<signed char>(*eax563 + al564);
    *eax565 = reinterpret_cast<signed char>(*eax566 + al567);
    *eax568 = reinterpret_cast<signed char>(*eax569 + al570);
    *eax571 = reinterpret_cast<signed char>(*eax572 + al573);
    *eax574 = reinterpret_cast<signed char>(*eax575 + al576);
    *eax577 = reinterpret_cast<signed char>(*eax578 + al579);
    *eax580 = reinterpret_cast<signed char>(*eax581 + al582);
    *eax583 = reinterpret_cast<signed char>(*eax584 + al585);
    *eax586 = reinterpret_cast<signed char>(*eax587 + al588);
    *eax589 = reinterpret_cast<signed char>(*eax590 + al591);
    *eax592 = reinterpret_cast<signed char>(*eax593 + al594);
    *eax595 = reinterpret_cast<signed char>(*eax596 + al597);
    *eax598 = reinterpret_cast<signed char>(*eax599 + al600);
    *eax601 = reinterpret_cast<signed char>(*eax602 + al603);
    *eax604 = reinterpret_cast<signed char>(*eax605 + al606);
    *eax607 = reinterpret_cast<signed char>(*eax608 + al609);
    *eax610 = reinterpret_cast<signed char>(*eax611 + al612);
    *eax613 = reinterpret_cast<signed char>(*eax614 + al615);
    *eax616 = reinterpret_cast<signed char>(*eax617 + al618);
    *eax619 = reinterpret_cast<signed char>(*eax620 + al621);
    *eax622 = reinterpret_cast<signed char>(*eax623 + al624);
    *eax625 = reinterpret_cast<signed char>(*eax626 + al627);
    *eax628 = reinterpret_cast<signed char>(*eax629 + al630);
    *eax631 = reinterpret_cast<signed char>(*eax632 + al633);
    *eax634 = reinterpret_cast<signed char>(*eax635 + al636);
    *eax637 = reinterpret_cast<signed char>(*eax638 + al639);
    *eax640 = reinterpret_cast<signed char>(*eax641 + al642);
    *eax643 = reinterpret_cast<signed char>(*eax644 + al645);
    *eax646 = reinterpret_cast<signed char>(*eax647 + al648);
    *eax649 = reinterpret_cast<signed char>(*eax650 + al651);
    *eax652 = reinterpret_cast<signed char>(*eax653 + al654);
    *eax655 = reinterpret_cast<signed char>(*eax656 + al657);
    *eax658 = reinterpret_cast<signed char>(*eax659 + al660);
    *eax661 = reinterpret_cast<signed char>(*eax662 + al663);
}
Код:
на вам сУрС фаталити


да да я знаю что это псевдокод
 
Эксперт
Статус
Оффлайн
Регистрация
19 Дек 2018
Сообщения
2,957
Реакции[?]
492
Поинты[?]
1K
Сделал этот псевдо за минуту + пару хуйни все таки отреверсил (много так то )
много приколов нашел ( по типу двух явмодиферов кек )
Сомнительно что ето вообще ресольвера..
ну вроде похоже xD 0x000cb мне чуть помог не более p.s я ебал эти загадки иды

C++:
int __thiscall (float *this, int a2, int a3)
{
  char *v3; // esi
  int result; // eax
  int v5; // esi
  int v6; // eax
  __int64 v7; // xmm0_8
  float v8; // eax
  int v9; // ecx
  double v10; // st7
  float v11; // xmm1_4
  float *v12; // eax
  float v13; // xmm6_4
  float v14; // xmm3_4
  float *v15; // eax
  char *v16; // eax
  int v17; // esi
  int (__stdcall *v18)(int); // edx
  signed __int16 *v19; // eax
  int v20; // edx
  float speed; // xmm2_4
  float v22; // xmm0_4
  float v23; // xmm1_4
  float v24; // xmm4_4
  float v25; // xmm2_4
  bool v26; // cf
  bool v27; // zf
  float v28; // xmm1_4
  float *v29; // eax
  int v30; // ecx
  float yawmodifer; // xmm3_4
  float *v32; // eax
  float *v33; // esi
  float *v34; // eax
  float v35; // xmm0_4
  char *v36; // esi
  char *v37; // ecx
  float *v38; // edi
  float *v39; // eax
  float v40; // xmm0_4
  float v41; // xmm0_4
  float v42; // xmm3_4
  float v43; // xmm2_4
  float v44; // xmm0_4
  double v45; // st7
  float v46; // xmm2_4
  float v47; // xmm0_4
  float v48; // xmm1_4
  int v49; // edi
  int (__thiscall *v50)(int); // eax
  signed int v51; // edx
  int v52; // eax
  int v53; // esi
  int v54; // eax
  int v55; // eax
  int v56; // esi
  int v57; // eax
  float v58; // xmm0_4
  char v59; // al
  float v60; // xmm0_4
  float v61; // xmm1_4
  float v62; // xmm2_4
  float v63; // xmm0_4
  bool v64; // cl
  __int64 v65; // rax
  int v66; // edx
  signed __int64 v67; // rt2
  int v68; // edx
  int v69; // [esp+10h] [ebp-74h]
  int v70; // [esp+20h] [ebp-64h]
  float v71; // [esp+24h] [ebp-60h]
  float v72; // [esp+28h] [ebp-5Ch]
  float *v73; // [esp+2Ch] [ebp-58h]
  float yawmodiferV2; // [esp+30h] [ebp-54h]
  float v75; // [esp+34h] [ebp-50h]
  int v76; // [esp+38h] [ebp-4Ch]
  float v77; // [esp+3Ch] [ebp-48h]
  float v78; // [esp+40h] [ebp-44h]
  double v79; // [esp+44h] [ebp-40h]
  float v80; // [esp+4Ch] [ebp-38h]
  int v81; // [esp+58h] [ebp-2Ch]
  float v82; // [esp+5Ch] [ebp-28h]
  __int64 v83; // [esp+60h] [ebp-24h]
  float v84; // [esp+68h] [ebp-1Ch]
  float v85; // [esp+6Ch] [ebp-18h]
  float v86; // [esp+70h] [ebp-14h]
  float v87; // [esp+74h] [ebp-10h]
  char v88; // [esp+78h] [ebp-Ch]

  v73 = this;
  *(_BYTE *)(a3 + 6404) = 0;
  v3 = (char *)sub_2C57EA60();
  result = (int)&v3[76 * (*(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 40))(a2 + 8)];
  v76 = result;
  *(_BYTE *)(result + 52) = 0;
  if ( byte_2C71A7CE )
  {
    if ( *(_DWORD *)(result + 72) )
    {
      result = (*(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 36))(a2 + 8);
      if ( !(_BYTE)result )
      {
        v5 = *(_DWORD *)(a2 + 14592);
        v81 = v5;
        if ( v5 )
        {
          result = *(_DWORD *)(a3 + 6380) - 1;
          LODWORD(v79) = result;
          if ( result >= 0 )
          {
            if ( *(float *)(v76 + 36) != *(float *)(a3 + 6332) || SLODWORD(v79) >= 2 )
            {
              v6 = m_vecVelocity((char *)a2);
              v7 = *(_QWORD *)v6;
              v8 = *(float *)(v6 + 8);
              v83 = v7;
              v75 = *(float *)&v7;
              v84 = v8;
              yawmodiferV2 = *((float *)&v7 + 1);
              v72 = v8;
              *(float *)&v79 = (float)((float)(v75 * v75) + (float)(yawmodiferV2 * yawmodiferV2)) + (float)(v8 * v8);
              libm_sse2_pow_precise(v9);
              if ( *(float *)&v79 > (float)312.0 )
              {
                sub_2C57C600(&v79);
                v75 = *(float *)&v79 * 312.0;
                yawmodiferV2 = *((float *)&v79 + 1) * 312.0;
                v72 = v80 * 312.0;
              }
              v82 = *(float *)(v5 + 128);
              v10 = fmaxf(*(float *)(dword_2C71AD10 + 16) - *(float *)(v5 + 108), 0);
              v79 = v10;
              v71 = 1.0;
              LODWORD(v79) = 0;
              v77 = COERCE_DOUBLE(*(_QWORD *)&v10 & xmmword_2C6E76B0);
              v78 = *(float *)(v5 + 168) + *(float *)m_flDuckAmount((char *)a2);
              if ( v78 <= 1.0 )
              {
                v12 = (float *)&v79;
                if ( v78 >= 0.0 )
                  v12 = &v78;
                v11 = *v12;
              }
              else
              {
                v11 = 1.0;
              }
              v13 = *(float *)(v5 + 164);
              v14 = v77 * 6.0;
              if ( (float)(v77 * 6.0) < (float)(v11 - v13) )
              {
                v11 = v14 + v13;
              }
              else if ( (float)(v11 - v13) < COERCE_FLOAT(LODWORD(v14) ^ xmmword_2C6E76D0) )
              {
                v11 = v13 - v14;
              }
              v77 = 1.0;
              LODWORD(v79) = 0;
              v78 = v11;
              if ( v11 <= 1.0 )
              {
                v15 = (float *)&v79;
                if ( v11 >= 0.0 )
                  v15 = &v78;
                v71 = *v15;
              }
              else
              {
                v71 = 1.0;
              }
              v69 = 1132593152;
              sub_2C57C5C0();
              v78 = fminf((float)((float)(v75 * v75) + (float)(yawmodiferV2 * yawmodiferV2)) + (float)(v72 * v72));
              v16 = ActiveWeapon(*(char **)dword_2C721A04);
              v69 = dword_2C71AD34;
              v17 = *(_DWORD *)v16;
              v18 = *(int (__stdcall **)(int))(*(_DWORD *)dword_2C71AD34 + 16);
              v69 = *(_DWORD *)v16;
              result = v18(v69);
              if ( result )
              {
                v69 = dword_2C71AD34;
                v19 = (signed __int16 *)(*(int (__stdcall **)(int))(*(_DWORD *)dword_2C71AD34 + 16))(v17);
                result = sub_2C623F40(v19);
                LODWORD(v79) = result;
                if ( result )
                {
                  v69 = dword_2C71AD34;
                  v20 = *(_DWORD *)dword_2C71AD34;
                  v69 = v17;
                  if ( (*(int (__stdcall **)(int))(v20 + 16))(v17) )
                  {
                    *(float *)&v79 = fmaxf(*(_DWORD *)(LODWORD(v79) + 304), 981668463);
                    speed = *(float *)&v79;
                  }
                  else
                  {
                    speed = 260.0;
                  }
                  v22 = speed * 0.51999998;
                  v75 = 1.0;
                  LODWORD(v79) = 0;
                  v23 = v78 / v22;
                  v24 = v78 / (float)(speed * 0.34);
                  v25 = 1.0;
                  v26 = (float)(v78 / v22) < 1.0;
                  v27 = (float)(v78 / v22) == 1.0;
                  v78 = v78 / v22;
                  v77 = v24;
                  if ( v26 || v27 )
                  {
                    v29 = (float *)&v79;
                    if ( v23 >= 0.0 )
                      v29 = &v78;
                    v28 = *v29;
                  }
                  else
                  {
                    v28 = 1.0;
                  }
                  v30 = v81;
                  yawmodifer = 1.0 - (float)((float)((float)(*(float *)(v81 + 284) * 0.30000001) + 0.2) * v28);
                  yawmodiferV2 = 1.0 - (float)((float)((float)(*(float *)(v81 + 284) * 0.30000001) + 0.2) * v28);
                  if ( v71 > 0.0 )
                  {
                    LODWORD(v79) = 1065353216;
                    v81 = 0;
                    if ( v24 <= 1.0 )
                    {
                      v32 = (float *)&v81;
                      if ( v24 >= 0.0 )
                        v32 = &v77;
                      v25 = *v32;
                    }
                    yawmodifer = yawmodifer + (float)((float)(v71 * v25) * (float)(0.5 - yawmodifer));
                    yawmodiferV2 = yawmodifer;
                  }
                  v71 = *(float *)(v30 + 816);
                  *(float *)&v79 = v71 * yawmodifer;
                  v78 = *(float *)(v30 + 820);
                  v75 = *(float *)(m_angEyeAngles((char *)a2) + 4);
                  remainderf(v75 - v82, 1135869952);
                  if ( *(float *)(*(_DWORD *)(a3 + 6228) + 432) <= 0.0 )
                    sub_2C57F0C0((char *)a2);
                  v33 = (float *)m_vecOrigin((char *)a2);
                  v34 = (float *)m_vecViewOffset((char *)a2);
                  *(float *)&v83 = *v33 + *v34;
                  *((float *)&v83 + 1) = v33[1] + v34[1];
                  v35 = v33[2] + v34[2];
                  v36 = *(char **)dword_2C721A04;
                  v37 = *(char **)dword_2C721A04;
                  v84 = v35;
                  v38 = (float *)m_vecOrigin(v37);
                  v39 = (float *)m_vecViewOffset(v36);
                  v85 = *v38 + *v39;
                  v86 = v38[1] + v39[1];
                  v87 = v38[2] + v39[2];
                  v72 = angles_clamp(&v85, (float *)&v88, (float *)&v83)[1];
                  if ( v72 > 180.0 || v72 < -180.0 )
                  {
                    v40 = sub_2C57C580(v72 / 360.0);
                    v77 = roundf(LODWORD(v40)) * 360.0;
                    if ( v72 >= 0.0 )
                      v41 = v72 - v77;
                    else
                      v41 = v72 + v77;
                    v72 = v41;
                  }
                  v42 = v75;
                  v43 = v75;
                  if ( v75 > 180.0 || v75 < -180.0 )// clamp / normalize
                                                //
                  {
                    v44 = sub_2C57C580(v75 / 360.0);
                    v45 = roundf(LODWORD(v44));
                    v42 = v75;
                    v77 = v45 * 360.0;
                    if ( v75 >= 0.0 )
                      v43 = v75 - v77;
                    else
                      v43 = v77 + v75;
                  }
                  if ( (float)(v43 + 60.0) <= v72 || v72 <= (float)(v43 - 60.0) )// -60 60 shit delta
                                                //
                  {
                    v48 = *(float *)&v79;
                    v47 = v78;
                    v46 = yawmodiferV2;
                    HIBYTE(v70) = 0;
                  }
                  else
                  {
                    v46 = yawmodiferV2;
                    v47 = v71;
                    HIBYTE(v70) = 1;
                    v48 = v78 * yawmodiferV2;
                  }
                  v49 = a2 + 8;
                  v50 = *(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 40);
                  yawmodiferV2 = v48 + v42;
                  v71 = (float)(v47 * v46) + v42;
                  v27 = *((_BYTE *)&xmmword_2C713418 + v50(a2 + 8)) == 0;
                  result = v76;
                  if ( v27 )
                  {
                    v51 = *(_DWORD *)(v76 + 48);
                    if ( v51 >= 1 )
                    {
                      if ( (_BYTE)word_2C71A78C )
                      {
                        v61 = *(float *)(v76 + 44);
                        v62 = *(float *)&v79;
                        v63 = *(float *)(v76 + 44) + 36.0;
                        *(_DWORD *)(v76 + 8) = 1;
                        v64 = v63 > v62 && v62 > (float)(v61 - 36.0);
                        v65 = v51;
                        v67 = v65 % 3;
                        result = v65 / 3;
                        v66 = v67;
                        if ( (_DWORD)v67 )
                        {
                          v68 = v66 - 1;
                          if ( v68 )
                          {
                            if ( v68 == 1 )
                            {
                              if ( v64 && HIBYTE(v70) )
                              {
                                result = *(_DWORD *)(a2 + 14592);
                                *(float *)(result + 128) = v71;
                              }
                              else
                              {
                                result = *(_DWORD *)(a2 + 14592);
                                *(float *)(result + 128) = yawmodiferV2;
                              }
                            }
                          }
                          else if ( v64 && HIBYTE(v70) )
                          {
                            result = *(_DWORD *)(a2 + 14592);
                            *(float *)(result + 128) = yawmodiferV2;
                          }
                          else
                          {
                            result = *(_DWORD *)(a2 + 14592);
                            *(float *)(result + 128) = v71;
                          }
                        }
                        else
                        {
                          result = *(_DWORD *)(a2 + 14592);
                          *(float *)(result + 128) = v75;
                        }
                      }
                    }
                    else
                    {
                      *(_DWORD *)(v76 + 8) = 3;
                      v52 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                      v53 = (int)&v73[v52];
                      v54 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                      if ( sub_2C57C580(*(float *)(v53 + 72) - v73[v54 + 82]) <= 25.0 )
                      {
                        v59 = byte_2C71C518;
                      }
                      else
                      {
                        v55 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                        v56 = (int)&v73[v55];
                        v57 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                        v58 = v73[v57 + 82];
                        v59 = v58 > *(float *)(v56 + 72);
                        byte_2C71C518 = v58 > *(float *)(v56 + 72);
                      }
                      if ( v59 )
                        v60 = v71;
                      else
                        v60 = yawmodiferV2;
                      result = *(_DWORD *)(a2 + 14592);
                      *(float *)(result + 128) = v60;
                    }
                  }
                  else
                  {
                    *(_DWORD *)(v76 + 8) = 0;
                  }
                }
              }
            }
            else
            {
              result = *(_DWORD *)(v76 + 28);
              *(_DWORD *)(a3 + 6356) = result;
              *(_BYTE *)(a3 + 6404) = 1;
            }
          }
        }
      }
    }
  }
  return result;
}
Нанотезнологии ботяры.............
 
Эксперт
Статус
Оффлайн
Регистрация
8 Авг 2018
Сообщения
2,218
Реакции[?]
631
Поинты[?]
0
Сделал этот псевдо за минуту + пару хуйни все таки отреверсил (много так то )
много приколов нашел ( по типу двух явмодиферов кек )
Сомнительно что ето вообще ресольвера..
ну вроде похоже xD 0x000cb мне чуть помог не более p.s я ебал эти загадки иды

C++:
int __thiscall (float *this, int a2, int a3)
{
  char *v3; // esi
  int result; // eax
  int v5; // esi
  int v6; // eax
  __int64 v7; // xmm0_8
  float v8; // eax
  int v9; // ecx
  double v10; // st7
  float v11; // xmm1_4
  float *v12; // eax
  float v13; // xmm6_4
  float v14; // xmm3_4
  float *v15; // eax
  char *v16; // eax
  int v17; // esi
  int (__stdcall *v18)(int); // edx
  signed __int16 *v19; // eax
  int v20; // edx
  float speed; // xmm2_4
  float v22; // xmm0_4
  float v23; // xmm1_4
  float v24; // xmm4_4
  float v25; // xmm2_4
  bool v26; // cf
  bool v27; // zf
  float v28; // xmm1_4
  float *v29; // eax
  int v30; // ecx
  float yawmodifer; // xmm3_4
  float *v32; // eax
  float *v33; // esi
  float *v34; // eax
  float v35; // xmm0_4
  char *v36; // esi
  char *v37; // ecx
  float *v38; // edi
  float *v39; // eax
  float v40; // xmm0_4
  float v41; // xmm0_4
  float v42; // xmm3_4
  float v43; // xmm2_4
  float v44; // xmm0_4
  double v45; // st7
  float v46; // xmm2_4
  float v47; // xmm0_4
  float v48; // xmm1_4
  int v49; // edi
  int (__thiscall *v50)(int); // eax
  signed int v51; // edx
  int v52; // eax
  int v53; // esi
  int v54; // eax
  int v55; // eax
  int v56; // esi
  int v57; // eax
  float v58; // xmm0_4
  char v59; // al
  float v60; // xmm0_4
  float v61; // xmm1_4
  float v62; // xmm2_4
  float v63; // xmm0_4
  bool v64; // cl
  __int64 v65; // rax
  int v66; // edx
  signed __int64 v67; // rt2
  int v68; // edx
  int v69; // [esp+10h] [ebp-74h]
  int v70; // [esp+20h] [ebp-64h]
  float v71; // [esp+24h] [ebp-60h]
  float v72; // [esp+28h] [ebp-5Ch]
  float *v73; // [esp+2Ch] [ebp-58h]
  float yawmodiferV2; // [esp+30h] [ebp-54h]
  float v75; // [esp+34h] [ebp-50h]
  int v76; // [esp+38h] [ebp-4Ch]
  float v77; // [esp+3Ch] [ebp-48h]
  float v78; // [esp+40h] [ebp-44h]
  double v79; // [esp+44h] [ebp-40h]
  float v80; // [esp+4Ch] [ebp-38h]
  int v81; // [esp+58h] [ebp-2Ch]
  float v82; // [esp+5Ch] [ebp-28h]
  __int64 v83; // [esp+60h] [ebp-24h]
  float v84; // [esp+68h] [ebp-1Ch]
  float v85; // [esp+6Ch] [ebp-18h]
  float v86; // [esp+70h] [ebp-14h]
  float v87; // [esp+74h] [ebp-10h]
  char v88; // [esp+78h] [ebp-Ch]

  v73 = this;
  *(_BYTE *)(a3 + 6404) = 0;
  v3 = (char *)sub_2C57EA60();
  result = (int)&v3[76 * (*(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 40))(a2 + 8)];
  v76 = result;
  *(_BYTE *)(result + 52) = 0;
  if ( byte_2C71A7CE )
  {
    if ( *(_DWORD *)(result + 72) )
    {
      result = (*(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 36))(a2 + 8);
      if ( !(_BYTE)result )
      {
        v5 = *(_DWORD *)(a2 + 14592);
        v81 = v5;
        if ( v5 )
        {
          result = *(_DWORD *)(a3 + 6380) - 1;
          LODWORD(v79) = result;
          if ( result >= 0 )
          {
            if ( *(float *)(v76 + 36) != *(float *)(a3 + 6332) || SLODWORD(v79) >= 2 )
            {
              v6 = m_vecVelocity((char *)a2);
              v7 = *(_QWORD *)v6;
              v8 = *(float *)(v6 + 8);
              v83 = v7;
              v75 = *(float *)&v7;
              v84 = v8;
              yawmodiferV2 = *((float *)&v7 + 1);
              v72 = v8;
              *(float *)&v79 = (float)((float)(v75 * v75) + (float)(yawmodiferV2 * yawmodiferV2)) + (float)(v8 * v8);
              libm_sse2_pow_precise(v9);
              if ( *(float *)&v79 > (float)312.0 )
              {
                sub_2C57C600(&v79);
                v75 = *(float *)&v79 * 312.0;
                yawmodiferV2 = *((float *)&v79 + 1) * 312.0;
                v72 = v80 * 312.0;
              }
              v82 = *(float *)(v5 + 128);
              v10 = fmaxf(*(float *)(dword_2C71AD10 + 16) - *(float *)(v5 + 108), 0);
              v79 = v10;
              v71 = 1.0;
              LODWORD(v79) = 0;
              v77 = COERCE_DOUBLE(*(_QWORD *)&v10 & xmmword_2C6E76B0);
              v78 = *(float *)(v5 + 168) + *(float *)m_flDuckAmount((char *)a2);
              if ( v78 <= 1.0 )
              {
                v12 = (float *)&v79;
                if ( v78 >= 0.0 )
                  v12 = &v78;
                v11 = *v12;
              }
              else
              {
                v11 = 1.0;
              }
              v13 = *(float *)(v5 + 164);
              v14 = v77 * 6.0;
              if ( (float)(v77 * 6.0) < (float)(v11 - v13) )
              {
                v11 = v14 + v13;
              }
              else if ( (float)(v11 - v13) < COERCE_FLOAT(LODWORD(v14) ^ xmmword_2C6E76D0) )
              {
                v11 = v13 - v14;
              }
              v77 = 1.0;
              LODWORD(v79) = 0;
              v78 = v11;
              if ( v11 <= 1.0 )
              {
                v15 = (float *)&v79;
                if ( v11 >= 0.0 )
                  v15 = &v78;
                v71 = *v15;
              }
              else
              {
                v71 = 1.0;
              }
              v69 = 1132593152;
              sub_2C57C5C0();
              v78 = fminf((float)((float)(v75 * v75) + (float)(yawmodiferV2 * yawmodiferV2)) + (float)(v72 * v72));
              v16 = ActiveWeapon(*(char **)dword_2C721A04);
              v69 = dword_2C71AD34;
              v17 = *(_DWORD *)v16;
              v18 = *(int (__stdcall **)(int))(*(_DWORD *)dword_2C71AD34 + 16);
              v69 = *(_DWORD *)v16;
              result = v18(v69);
              if ( result )
              {
                v69 = dword_2C71AD34;
                v19 = (signed __int16 *)(*(int (__stdcall **)(int))(*(_DWORD *)dword_2C71AD34 + 16))(v17);
                result = sub_2C623F40(v19);
                LODWORD(v79) = result;
                if ( result )
                {
                  v69 = dword_2C71AD34;
                  v20 = *(_DWORD *)dword_2C71AD34;
                  v69 = v17;
                  if ( (*(int (__stdcall **)(int))(v20 + 16))(v17) )
                  {
                    *(float *)&v79 = fmaxf(*(_DWORD *)(LODWORD(v79) + 304), 981668463);
                    speed = *(float *)&v79;
                  }
                  else
                  {
                    speed = 260.0;
                  }
                  v22 = speed * 0.51999998;
                  v75 = 1.0;
                  LODWORD(v79) = 0;
                  v23 = v78 / v22;
                  v24 = v78 / (float)(speed * 0.34);
                  v25 = 1.0;
                  v26 = (float)(v78 / v22) < 1.0;
                  v27 = (float)(v78 / v22) == 1.0;
                  v78 = v78 / v22;
                  v77 = v24;
                  if ( v26 || v27 )
                  {
                    v29 = (float *)&v79;
                    if ( v23 >= 0.0 )
                      v29 = &v78;
                    v28 = *v29;
                  }
                  else
                  {
                    v28 = 1.0;
                  }
                  v30 = v81;
                  yawmodifer = 1.0 - (float)((float)((float)(*(float *)(v81 + 284) * 0.30000001) + 0.2) * v28);
                  yawmodiferV2 = 1.0 - (float)((float)((float)(*(float *)(v81 + 284) * 0.30000001) + 0.2) * v28);
                  if ( v71 > 0.0 )
                  {
                    LODWORD(v79) = 1065353216;
                    v81 = 0;
                    if ( v24 <= 1.0 )
                    {
                      v32 = (float *)&v81;
                      if ( v24 >= 0.0 )
                        v32 = &v77;
                      v25 = *v32;
                    }
                    yawmodifer = yawmodifer + (float)((float)(v71 * v25) * (float)(0.5 - yawmodifer));
                    yawmodiferV2 = yawmodifer;
                  }
                  v71 = *(float *)(v30 + 816);
                  *(float *)&v79 = v71 * yawmodifer;
                  v78 = *(float *)(v30 + 820);
                  v75 = *(float *)(m_angEyeAngles((char *)a2) + 4);
                  remainderf(v75 - v82, 1135869952);
                  if ( *(float *)(*(_DWORD *)(a3 + 6228) + 432) <= 0.0 )
                    sub_2C57F0C0((char *)a2);
                  v33 = (float *)m_vecOrigin((char *)a2);
                  v34 = (float *)m_vecViewOffset((char *)a2);
                  *(float *)&v83 = *v33 + *v34;
                  *((float *)&v83 + 1) = v33[1] + v34[1];
                  v35 = v33[2] + v34[2];
                  v36 = *(char **)dword_2C721A04;
                  v37 = *(char **)dword_2C721A04;
                  v84 = v35;
                  v38 = (float *)m_vecOrigin(v37);
                  v39 = (float *)m_vecViewOffset(v36);
                  v85 = *v38 + *v39;
                  v86 = v38[1] + v39[1];
                  v87 = v38[2] + v39[2];
                  v72 = angles_clamp(&v85, (float *)&v88, (float *)&v83)[1];
                  if ( v72 > 180.0 || v72 < -180.0 )
                  {
                    v40 = sub_2C57C580(v72 / 360.0);
                    v77 = roundf(LODWORD(v40)) * 360.0;
                    if ( v72 >= 0.0 )
                      v41 = v72 - v77;
                    else
                      v41 = v72 + v77;
                    v72 = v41;
                  }
                  v42 = v75;
                  v43 = v75;
                  if ( v75 > 180.0 || v75 < -180.0 )// clamp / normalize
                                                //
                  {
                    v44 = sub_2C57C580(v75 / 360.0);
                    v45 = roundf(LODWORD(v44));
                    v42 = v75;
                    v77 = v45 * 360.0;
                    if ( v75 >= 0.0 )
                      v43 = v75 - v77;
                    else
                      v43 = v77 + v75;
                  }
                  if ( (float)(v43 + 60.0) <= v72 || v72 <= (float)(v43 - 60.0) )// -60 60 shit delta
                                                //
                  {
                    v48 = *(float *)&v79;
                    v47 = v78;
                    v46 = yawmodiferV2;
                    HIBYTE(v70) = 0;
                  }
                  else
                  {
                    v46 = yawmodiferV2;
                    v47 = v71;
                    HIBYTE(v70) = 1;
                    v48 = v78 * yawmodiferV2;
                  }
                  v49 = a2 + 8;
                  v50 = *(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 40);
                  yawmodiferV2 = v48 + v42;
                  v71 = (float)(v47 * v46) + v42;
                  v27 = *((_BYTE *)&xmmword_2C713418 + v50(a2 + 8)) == 0;
                  result = v76;
                  if ( v27 )
                  {
                    v51 = *(_DWORD *)(v76 + 48);
                    if ( v51 >= 1 )
                    {
                      if ( (_BYTE)word_2C71A78C )
                      {
                        v61 = *(float *)(v76 + 44);
                        v62 = *(float *)&v79;
                        v63 = *(float *)(v76 + 44) + 36.0;
                        *(_DWORD *)(v76 + 8) = 1;
                        v64 = v63 > v62 && v62 > (float)(v61 - 36.0);
                        v65 = v51;
                        v67 = v65 % 3;
                        result = v65 / 3;
                        v66 = v67;
                        if ( (_DWORD)v67 )
                        {
                          v68 = v66 - 1;
                          if ( v68 )
                          {
                            if ( v68 == 1 )
                            {
                              if ( v64 && HIBYTE(v70) )
                              {
                                result = *(_DWORD *)(a2 + 14592);
                                *(float *)(result + 128) = v71;
                              }
                              else
                              {
                                result = *(_DWORD *)(a2 + 14592);
                                *(float *)(result + 128) = yawmodiferV2;
                              }
                            }
                          }
                          else if ( v64 && HIBYTE(v70) )
                          {
                            result = *(_DWORD *)(a2 + 14592);
                            *(float *)(result + 128) = yawmodiferV2;
                          }
                          else
                          {
                            result = *(_DWORD *)(a2 + 14592);
                            *(float *)(result + 128) = v71;
                          }
                        }
                        else
                        {
                          result = *(_DWORD *)(a2 + 14592);
                          *(float *)(result + 128) = v75;
                        }
                      }
                    }
                    else
                    {
                      *(_DWORD *)(v76 + 8) = 3;
                      v52 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                      v53 = (int)&v73[v52];
                      v54 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                      if ( sub_2C57C580(*(float *)(v53 + 72) - v73[v54 + 82]) <= 25.0 )
                      {
                        v59 = byte_2C71C518;
                      }
                      else
                      {
                        v55 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                        v56 = (int)&v73[v55];
                        v57 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                        v58 = v73[v57 + 82];
                        v59 = v58 > *(float *)(v56 + 72);
                        byte_2C71C518 = v58 > *(float *)(v56 + 72);
                      }
                      if ( v59 )
                        v60 = v71;
                      else
                        v60 = yawmodiferV2;
                      result = *(_DWORD *)(a2 + 14592);
                      *(float *)(result + 128) = v60;
                    }
                  }
                  else
                  {
                    *(_DWORD *)(v76 + 8) = 0;
                  }
                }
              }
            }
            else
            {
              result = *(_DWORD *)(v76 + 28);
              *(_DWORD *)(a3 + 6356) = result;
              *(_BYTE *)(a3 + 6404) = 1;
            }
          }
        }
      }
    }
  }
  return result;
}
1590480040130.png
ну там мусора много что я не почистил ну ладно мб в конце резольвера немного есть
 
main public enemy
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции[?]
647
Поинты[?]
0
CoderAlmir
Забаненный
Статус
Оффлайн
Регистрация
24 Мар 2020
Сообщения
58
Реакции[?]
26
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Делать им нехуй, сидят в дс в рофл кодеральмира обсирают и в какашке капаюца
нет чтоб начать базу выбирать дурачки блин
 
main public enemy
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции[?]
647
Поинты[?]
0
Делать им нехуй, сидят в дс в рофл кодеральмира обсирают и в какашке капаюца
нет чтоб начать базу выбирать дурачки блин
Оценил ваш статус челодой моловек
И как бы за альмира тут не базарь,мы как бы базу выбрали и реверсим хуйню
 
Забаненный
Статус
Оффлайн
Регистрация
25 Фев 2020
Сообщения
61
Реакции[?]
28
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Сделал этот псевдо за минуту + пару хуйни все таки отреверсил (много так то )
много приколов нашел ( по типу двух явмодиферов кек )
Сомнительно что ето вообще ресольвера..
ну вроде похоже xD 0x000cb мне чуть помог не более p.s я ебал эти загадки иды

C++:
int __thiscall (float *this, int a2, int a3)
{
  char *v3; // esi
  int result; // eax
  int v5; // esi
  int v6; // eax
  __int64 v7; // xmm0_8
  float v8; // eax
  int v9; // ecx
  double v10; // st7
  float v11; // xmm1_4
  float *v12; // eax
  float v13; // xmm6_4
  float v14; // xmm3_4
  float *v15; // eax
  char *v16; // eax
  int v17; // esi
  int (__stdcall *v18)(int); // edx
  signed __int16 *v19; // eax
  int v20; // edx
  float speed; // xmm2_4
  float v22; // xmm0_4
  float v23; // xmm1_4
  float v24; // xmm4_4
  float v25; // xmm2_4
  bool v26; // cf
  bool v27; // zf
  float v28; // xmm1_4
  float *v29; // eax
  int v30; // ecx
  float yawmodifer; // xmm3_4
  float *v32; // eax
  float *v33; // esi
  float *v34; // eax
  float v35; // xmm0_4
  char *v36; // esi
  char *v37; // ecx
  float *v38; // edi
  float *v39; // eax
  float v40; // xmm0_4
  float v41; // xmm0_4
  float v42; // xmm3_4
  float v43; // xmm2_4
  float v44; // xmm0_4
  double v45; // st7
  float v46; // xmm2_4
  float v47; // xmm0_4
  float v48; // xmm1_4
  int v49; // edi
  int (__thiscall *v50)(int); // eax
  signed int v51; // edx
  int v52; // eax
  int v53; // esi
  int v54; // eax
  int v55; // eax
  int v56; // esi
  int v57; // eax
  float v58; // xmm0_4
  char v59; // al
  float v60; // xmm0_4
  float v61; // xmm1_4
  float v62; // xmm2_4
  float v63; // xmm0_4
  bool v64; // cl
  __int64 v65; // rax
  int v66; // edx
  signed __int64 v67; // rt2
  int v68; // edx
  int v69; // [esp+10h] [ebp-74h]
  int v70; // [esp+20h] [ebp-64h]
  float v71; // [esp+24h] [ebp-60h]
  float v72; // [esp+28h] [ebp-5Ch]
  float *v73; // [esp+2Ch] [ebp-58h]
  float yawmodiferV2; // [esp+30h] [ebp-54h]
  float v75; // [esp+34h] [ebp-50h]
  int v76; // [esp+38h] [ebp-4Ch]
  float v77; // [esp+3Ch] [ebp-48h]
  float v78; // [esp+40h] [ebp-44h]
  double v79; // [esp+44h] [ebp-40h]
  float v80; // [esp+4Ch] [ebp-38h]
  int v81; // [esp+58h] [ebp-2Ch]
  float v82; // [esp+5Ch] [ebp-28h]
  __int64 v83; // [esp+60h] [ebp-24h]
  float v84; // [esp+68h] [ebp-1Ch]
  float v85; // [esp+6Ch] [ebp-18h]
  float v86; // [esp+70h] [ebp-14h]
  float v87; // [esp+74h] [ebp-10h]
  char v88; // [esp+78h] [ebp-Ch]

  v73 = this;
  *(_BYTE *)(a3 + 6404) = 0;
  v3 = (char *)sub_2C57EA60();
  result = (int)&v3[76 * (*(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 40))(a2 + 8)];
  v76 = result;
  *(_BYTE *)(result + 52) = 0;
  if ( byte_2C71A7CE )
  {
    if ( *(_DWORD *)(result + 72) )
    {
      result = (*(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 36))(a2 + 8);
      if ( !(_BYTE)result )
      {
        v5 = *(_DWORD *)(a2 + 14592);
        v81 = v5;
        if ( v5 )
        {
          result = *(_DWORD *)(a3 + 6380) - 1;
          LODWORD(v79) = result;
          if ( result >= 0 )
          {
            if ( *(float *)(v76 + 36) != *(float *)(a3 + 6332) || SLODWORD(v79) >= 2 )
            {
              v6 = m_vecVelocity((char *)a2);
              v7 = *(_QWORD *)v6;
              v8 = *(float *)(v6 + 8);
              v83 = v7;
              v75 = *(float *)&v7;
              v84 = v8;
              yawmodiferV2 = *((float *)&v7 + 1);
              v72 = v8;
              *(float *)&v79 = (float)((float)(v75 * v75) + (float)(yawmodiferV2 * yawmodiferV2)) + (float)(v8 * v8);
              libm_sse2_pow_precise(v9);
              if ( *(float *)&v79 > (float)312.0 )
              {
                sub_2C57C600(&v79);
                v75 = *(float *)&v79 * 312.0;
                yawmodiferV2 = *((float *)&v79 + 1) * 312.0;
                v72 = v80 * 312.0;
              }
              v82 = *(float *)(v5 + 128);
              v10 = fmaxf(*(float *)(dword_2C71AD10 + 16) - *(float *)(v5 + 108), 0);
              v79 = v10;
              v71 = 1.0;
              LODWORD(v79) = 0;
              v77 = COERCE_DOUBLE(*(_QWORD *)&v10 & xmmword_2C6E76B0);
              v78 = *(float *)(v5 + 168) + *(float *)m_flDuckAmount((char *)a2);
              if ( v78 <= 1.0 )
              {
                v12 = (float *)&v79;
                if ( v78 >= 0.0 )
                  v12 = &v78;
                v11 = *v12;
              }
              else
              {
                v11 = 1.0;
              }
              v13 = *(float *)(v5 + 164);
              v14 = v77 * 6.0;
              if ( (float)(v77 * 6.0) < (float)(v11 - v13) )
              {
                v11 = v14 + v13;
              }
              else if ( (float)(v11 - v13) < COERCE_FLOAT(LODWORD(v14) ^ xmmword_2C6E76D0) )
              {
                v11 = v13 - v14;
              }
              v77 = 1.0;
              LODWORD(v79) = 0;
              v78 = v11;
              if ( v11 <= 1.0 )
              {
                v15 = (float *)&v79;
                if ( v11 >= 0.0 )
                  v15 = &v78;
                v71 = *v15;
              }
              else
              {
                v71 = 1.0;
              }
              v69 = 1132593152;
              sub_2C57C5C0();
              v78 = fminf((float)((float)(v75 * v75) + (float)(yawmodiferV2 * yawmodiferV2)) + (float)(v72 * v72));
              v16 = ActiveWeapon(*(char **)dword_2C721A04);
              v69 = dword_2C71AD34;
              v17 = *(_DWORD *)v16;
              v18 = *(int (__stdcall **)(int))(*(_DWORD *)dword_2C71AD34 + 16);
              v69 = *(_DWORD *)v16;
              result = v18(v69);
              if ( result )
              {
                v69 = dword_2C71AD34;
                v19 = (signed __int16 *)(*(int (__stdcall **)(int))(*(_DWORD *)dword_2C71AD34 + 16))(v17);
                result = sub_2C623F40(v19);
                LODWORD(v79) = result;
                if ( result )
                {
                  v69 = dword_2C71AD34;
                  v20 = *(_DWORD *)dword_2C71AD34;
                  v69 = v17;
                  if ( (*(int (__stdcall **)(int))(v20 + 16))(v17) )
                  {
                    *(float *)&v79 = fmaxf(*(_DWORD *)(LODWORD(v79) + 304), 981668463);
                    speed = *(float *)&v79;
                  }
                  else
                  {
                    speed = 260.0;
                  }
                  v22 = speed * 0.51999998;
                  v75 = 1.0;
                  LODWORD(v79) = 0;
                  v23 = v78 / v22;
                  v24 = v78 / (float)(speed * 0.34);
                  v25 = 1.0;
                  v26 = (float)(v78 / v22) < 1.0;
                  v27 = (float)(v78 / v22) == 1.0;
                  v78 = v78 / v22;
                  v77 = v24;
                  if ( v26 || v27 )
                  {
                    v29 = (float *)&v79;
                    if ( v23 >= 0.0 )
                      v29 = &v78;
                    v28 = *v29;
                  }
                  else
                  {
                    v28 = 1.0;
                  }
                  v30 = v81;
                  yawmodifer = 1.0 - (float)((float)((float)(*(float *)(v81 + 284) * 0.30000001) + 0.2) * v28);
                  yawmodiferV2 = 1.0 - (float)((float)((float)(*(float *)(v81 + 284) * 0.30000001) + 0.2) * v28);
                  if ( v71 > 0.0 )
                  {
                    LODWORD(v79) = 1065353216;
                    v81 = 0;
                    if ( v24 <= 1.0 )
                    {
                      v32 = (float *)&v81;
                      if ( v24 >= 0.0 )
                        v32 = &v77;
                      v25 = *v32;
                    }
                    yawmodifer = yawmodifer + (float)((float)(v71 * v25) * (float)(0.5 - yawmodifer));
                    yawmodiferV2 = yawmodifer;
                  }
                  v71 = *(float *)(v30 + 816);
                  *(float *)&v79 = v71 * yawmodifer;
                  v78 = *(float *)(v30 + 820);
                  v75 = *(float *)(m_angEyeAngles((char *)a2) + 4);
                  remainderf(v75 - v82, 1135869952);
                  if ( *(float *)(*(_DWORD *)(a3 + 6228) + 432) <= 0.0 )
                    sub_2C57F0C0((char *)a2);
                  v33 = (float *)m_vecOrigin((char *)a2);
                  v34 = (float *)m_vecViewOffset((char *)a2);
                  *(float *)&v83 = *v33 + *v34;
                  *((float *)&v83 + 1) = v33[1] + v34[1];
                  v35 = v33[2] + v34[2];
                  v36 = *(char **)dword_2C721A04;
                  v37 = *(char **)dword_2C721A04;
                  v84 = v35;
                  v38 = (float *)m_vecOrigin(v37);
                  v39 = (float *)m_vecViewOffset(v36);
                  v85 = *v38 + *v39;
                  v86 = v38[1] + v39[1];
                  v87 = v38[2] + v39[2];
                  v72 = angles_clamp(&v85, (float *)&v88, (float *)&v83)[1];
                  if ( v72 > 180.0 || v72 < -180.0 )
                  {
                    v40 = sub_2C57C580(v72 / 360.0);
                    v77 = roundf(LODWORD(v40)) * 360.0;
                    if ( v72 >= 0.0 )
                      v41 = v72 - v77;
                    else
                      v41 = v72 + v77;
                    v72 = v41;
                  }
                  v42 = v75;
                  v43 = v75;
                  if ( v75 > 180.0 || v75 < -180.0 )// clamp / normalize
                                                //
                  {
                    v44 = sub_2C57C580(v75 / 360.0);
                    v45 = roundf(LODWORD(v44));
                    v42 = v75;
                    v77 = v45 * 360.0;
                    if ( v75 >= 0.0 )
                      v43 = v75 - v77;
                    else
                      v43 = v77 + v75;
                  }
                  if ( (float)(v43 + 60.0) <= v72 || v72 <= (float)(v43 - 60.0) )// -60 60 shit delta
                                                //
                  {
                    v48 = *(float *)&v79;
                    v47 = v78;
                    v46 = yawmodiferV2;
                    HIBYTE(v70) = 0;
                  }
                  else
                  {
                    v46 = yawmodiferV2;
                    v47 = v71;
                    HIBYTE(v70) = 1;
                    v48 = v78 * yawmodiferV2;
                  }
                  v49 = a2 + 8;
                  v50 = *(int (__thiscall **)(int))(*(_DWORD *)(a2 + 8) + 40);
                  yawmodiferV2 = v48 + v42;
                  v71 = (float)(v47 * v46) + v42;
                  v27 = *((_BYTE *)&xmmword_2C713418 + v50(a2 + 8)) == 0;
                  result = v76;
                  if ( v27 )
                  {
                    v51 = *(_DWORD *)(v76 + 48);
                    if ( v51 >= 1 )
                    {
                      if ( (_BYTE)word_2C71A78C )
                      {
                        v61 = *(float *)(v76 + 44);
                        v62 = *(float *)&v79;
                        v63 = *(float *)(v76 + 44) + 36.0;
                        *(_DWORD *)(v76 + 8) = 1;
                        v64 = v63 > v62 && v62 > (float)(v61 - 36.0);
                        v65 = v51;
                        v67 = v65 % 3;
                        result = v65 / 3;
                        v66 = v67;
                        if ( (_DWORD)v67 )
                        {
                          v68 = v66 - 1;
                          if ( v68 )
                          {
                            if ( v68 == 1 )
                            {
                              if ( v64 && HIBYTE(v70) )
                              {
                                result = *(_DWORD *)(a2 + 14592);
                                *(float *)(result + 128) = v71;
                              }
                              else
                              {
                                result = *(_DWORD *)(a2 + 14592);
                                *(float *)(result + 128) = yawmodiferV2;
                              }
                            }
                          }
                          else if ( v64 && HIBYTE(v70) )
                          {
                            result = *(_DWORD *)(a2 + 14592);
                            *(float *)(result + 128) = yawmodiferV2;
                          }
                          else
                          {
                            result = *(_DWORD *)(a2 + 14592);
                            *(float *)(result + 128) = v71;
                          }
                        }
                        else
                        {
                          result = *(_DWORD *)(a2 + 14592);
                          *(float *)(result + 128) = v75;
                        }
                      }
                    }
                    else
                    {
                      *(_DWORD *)(v76 + 8) = 3;
                      v52 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                      v53 = (int)&v73[v52];
                      v54 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                      if ( sub_2C57C580(*(float *)(v53 + 72) - v73[v54 + 82]) <= 25.0 )
                      {
                        v59 = byte_2C71C518;
                      }
                      else
                      {
                        v55 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                        v56 = (int)&v73[v55];
                        v57 = (*(int (__thiscall **)(int))(*(_DWORD *)v49 + 40))(v49);
                        v58 = v73[v57 + 82];
                        v59 = v58 > *(float *)(v56 + 72);
                        byte_2C71C518 = v58 > *(float *)(v56 + 72);
                      }
                      if ( v59 )
                        v60 = v71;
                      else
                        v60 = yawmodiferV2;
                      result = *(_DWORD *)(a2 + 14592);
                      *(float *)(result + 128) = v60;
                    }
                  }
                  else
                  {
                    *(_DWORD *)(v76 + 8) = 0;
                  }
                }
              }
            }
            else
            {
              result = *(_DWORD *)(v76 + 28);
              *(_DWORD *)(a3 + 6356) = result;
              *(_BYTE *)(a3 + 6404) = 1;
            }
          }
        }
      }
    }
  }
  return result;
}
big resolver
big cheat :hearteyecat:
 
CoderAlmir
Забаненный
Статус
Оффлайн
Регистрация
24 Мар 2020
Сообщения
58
Реакции[?]
26
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Сверху Снизу