• Я зарабатываю 100 000 RUB / месяц на этом сайте!

    А знаешь как? Я всего-лишь публикую (создаю темы), а админ мне платит. Трачу деньги на мороженое, робуксы и сервера в Minecraft. А ещё на паль из Китая. 

    Хочешь так же? Пиши и узнавай условия: https://t.me/alex_redact
    Реклама: https://t.me/yougame_official

Исходник Weawe.su premium animfix (pseudocode)

main public enemy
Эксперт
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции
647
Очень очень много рофлов
Скоро солью полный дамп
А пока так чисто посмеяться не больше
P.S Утверждают что селфкод а код паблик (((((
Смысла реверсить я не вижу
C++:
Expand Collapse Copy
_int64 __thiscall AnimationFix(_DWORD *this)
{
  __int64 v1; // rax
  int v2; // eax
  int v3; // ecx
  float *v4; // eax
  size_t v5; // ST0C_4
  const void *v6; // eax
  int v7; // eax
  size_t v8; // ST0C_4
  void *v9; // eax
  __int64 v10; // ST08_8
  int v12; // [esp+1Ch] [ebp-35Ch]
  int v13; // [esp+20h] [ebp-358h]
  int v14; // [esp+24h] [ebp-354h]
  int v15; // [esp+28h] [ebp-350h]
  int v16; // [esp+2Ch] [ebp-34Ch]
  float *v17; // [esp+30h] [ebp-348h]
  int v18; // [esp+34h] [ebp-344h]
  int v19; // [esp+38h] [ebp-340h]
  int v20; // [esp+3Ch] [ebp-33Ch]
  int v21; // [esp+40h] [ebp-338h]
  float v22; // [esp+44h] [ebp-334h]
  float v23; // [esp+48h] [ebp-330h]
  int v24; // [esp+4Ch] [ebp-32Ch]
  int (__thiscall *v25)(int, signed int); // [esp+50h] [ebp-328h]
  int v26; // [esp+54h] [ebp-324h]
  BOOL v27; // [esp+58h] [ebp-320h]
  BOOL v28; // [esp+5Ch] [ebp-31Ch]
  BOOL v29; // [esp+60h] [ebp-318h]
  int v30; // [esp+70h] [ebp-308h]
  int v31; // [esp+74h] [ebp-304h]
  int v32; // [esp+78h] [ebp-300h]
  int v33; // [esp+7Ch] [ebp-2FCh]
  char Dst; // [esp+84h] [ebp-2F4h]
  bool v35; // [esp+361h] [ebp-17h]
  bool v36; // [esp+362h] [ebp-16h]
  bool v37; // [esp+363h] [ebp-15h]
  _DWORD *v38; // [esp+364h] [ebp-14h]
  int v39; // [esp+374h] [ebp-4h]
  int savedregs; // [esp+378h] [ebp+0h]

  v38 = this;
  LODWORD(v1) = (*(int (__thiscall **)(int))(*(_DWORD *)dword_10274810 + 108))(dword_10274810);
  if ( ((_BYTE)v1
     || (LODWORD(v1) = (*(unsigned __int8 (__thiscall **)(int))(*(_DWORD *)dword_10274810 + 104))(dword_10274810),
         (_BYTE)v1))
    && *(_DWORD *)(dword_1027493C + 72) )
  {
    LODWORD(v1) = (unsigned __int8)sub_10017090(*(_DWORD *)(dword_1027493C + 72));
    if ( (_BYTE)v1 )
    {
      if ( dword_101FD65C > *(_DWORD *)(*(_DWORD *)(__readfsdword(0x2Cu) + 4 * TlsIndex) + 4) )
      {
        sub_1014BF4F(&dword_101FD65C);
        if ( dword_101FD65C == -1 )
        {
          v39 = 0;
          dword_101FD658 = *(_DWORD *)sub_10013B20(*(_DWORD *)(dword_1027493C + 72));
          v39 = -1;
          sub_1014BF05(&dword_101FD65C);
        }
      }
      v29 = v38[9] == 0;
      v37 = v29;
      v28 = !(_BYTE)v29
         && dword_101FD654 != (*(int (__thiscall **)(_DWORD))(**(_DWORD **)(dword_1027493C + 72) + 8))(*(_DWORD *)(dword_1027493C + 72));
      v36 = v28;
      v27 = !v37 && !v36 && *(float *)sub_10013B20(*(_DWORD *)(dword_1027493C + 72)) != *(float *)&dword_101FD658;
      v35 = v27;
      if ( v36 )
      {
        memset(v38 + 9, 0, 4u);
        dword_101FD654 = (*(int (__thiscall **)(_DWORD))(**(_DWORD **)(dword_1027493C + 72) + 8))(*(_DWORD *)(dword_1027493C + 72));
      }
      if ( v35 )
      {
        v26 = *(_DWORD *)(dword_1027493C + 72);
        sub_100E3230(v38[9]);
        dword_101FD658 = *(_DWORD *)sub_10013B20(*(_DWORD *)(dword_1027493C + 72));
      }
      if ( v37 || v36 )
      {
        v25 = *(int (__thiscall **)(int, signed int))(*(_DWORD *)dword_1027485C + 4);
        v2 = v25(dword_1027485C, 832);
        v38[9] = v2;
        if ( v38[9] )
        {
          v24 = *(_DWORD *)(dword_1027493C + 72);
          sub_100E3360(v38[9]);
        }
      }
      if ( *(_DWORD *)(v38[9] + 112) == *(_DWORD *)(dword_10274818 + '\x04') )// if (state->m_iLastClientSideAnimationUpdateFramecount() == g_GlobalVars->framecount)
                                                //             state->m_iLastClientSideAnimationUpdateFramecount() = g_GlobalVars->framecount - 1;
        *(_DWORD *)(v38[9] + 112) = (signed int)(float)((float)*(signed int *)(v38[9] + 112) - 1.0);
      sub_100E3040(*(_DWORD *)(dword_1027493C + 72));
      v23 = sub_10044A40(*(_DWORD *)(dword_1027493C + 72));
      v3 = *(_DWORD *)(dword_1027493C + 72);
      v22 = v23;
      v4 = (float *)sub_100E7280(v3);
      if ( v22 != *v4 )
      {
        v5 = 56 * sub_10013A30(*(_DWORD *)(dword_1027493C + 72));
        v6 = (const void *)sub_100138D0(*(_DWORD *)(dword_1027493C + 72));
        memcpy(&Dst, v6, v5);
        v21 = *(_DWORD *)(dword_1027493C + 72);
        sub_100E3450(
          v38[9],
          *(_DWORD *)(dword_1027493C + 25268),
          *(_DWORD *)(dword_1027493C + 25272),
          *(_DWORD *)(dword_1027493C + 25276));
        v20 = *(_DWORD *)(dword_1027493C + 72);
        v7 = sub_10011E20(0, *(_DWORD *)(v38[9] + 128), 0);
        sub_100E47E0(v7);
        v19 = *(_DWORD *)(dword_1027493C + 72);
        *(_DWORD *)(sub_10013880(12) + 32) = 872415232;
        v18 = *(_DWORD *)(dword_1027493C + 72);
        sub_100E7200(dword_1027493C + 176, 128, 524032, *(_DWORD *)(dword_10274818 + 16));
        if ( byte_1027BBDD )
        {
          v33 = dword_1027493C + 176;
          v32 = dword_1027493C + 176;
          v31 = dword_1027493C + 6320;
          while ( v32 != v31 )
          {
            v30 = v32;
            v17 = (float *)(*(int (__thiscall **)(int))(*(_DWORD *)(*(_DWORD *)(dword_1027493C + 72) + 4) + 4))(*(_DWORD *)(dword_1027493C + 72) + 4);
            v16 = sub_10012990(0);
            *(float *)(v16 + 12) = *(float *)(v16 + 12) - *v17;
            v15 = (*(int (__thiscall **)(int))(*(_DWORD *)(*(_DWORD *)(dword_1027493C + 72) + 4) + 4))(*(_DWORD *)(dword_1027493C + 72) + 4);
            v14 = sub_10012990(1);
            *(float *)(v14 + 12) = *(float *)(v14 + 12) - *(float *)(v15 + 4);
            v13 = (*(int (__thiscall **)(int))(*(_DWORD *)(*(_DWORD *)(dword_1027493C + 72) + 4) + 4))(*(_DWORD *)(dword_1027493C + 72) + 4);
            v12 = sub_10012990(2);
            *(float *)(v12 + 12) = *(float *)(v12 + 12) - *(float *)(v13 + 8);
            v32 += 48;
          }
        }
        v8 = 56 * sub_10013A30(*(_DWORD *)(dword_1027493C + 72));
        v9 = (void *)sub_100138D0(*(_DWORD *)(dword_1027493C + 72));
        memcpy(v9, &Dst, v8);
      }
      LODWORD(v1) = dword_1027493C;
      HIDWORD(v1) = v38[9];
      *(_DWORD *)(dword_1027493C + 18720) = HIDWORD(v1);
    }
    else
    {
      byte_101FD650 = 0;
    }
  }
  else
  {
    byte_101FD650 = 0;
  }
  v10 = v1;
  sub_1014B972((int)&savedregs, &dword_1000CFF8);
  return v10;
}
UPD : Хз зачем но я реверснул около полкода
 
Последнее редактирование:
не трогайте веаве блять
1591826279654.png

Они строго против !!!!
 
крутой псевдореверс
 
Очень очень много рофлов
Скоро солью полный дамп
А пока так чисто посмеяться не больше
P.S Утверждают что селфкод а код паблик (((((
Смысла реверсить я не вижу
C++:
Expand Collapse Copy
_int64 __thiscall AnimationFix(_DWORD *this)
{
  __int64 v1; // rax
  int v2; // eax
  int v3; // ecx
  float *v4; // eax
  size_t v5; // ST0C_4
  const void *v6; // eax
  int v7; // eax
  size_t v8; // ST0C_4
  void *v9; // eax
  __int64 v10; // ST08_8
  int v12; // [esp+1Ch] [ebp-35Ch]
  int v13; // [esp+20h] [ebp-358h]
  int v14; // [esp+24h] [ebp-354h]
  int v15; // [esp+28h] [ebp-350h]
  int v16; // [esp+2Ch] [ebp-34Ch]
  float *v17; // [esp+30h] [ebp-348h]
  int v18; // [esp+34h] [ebp-344h]
  int v19; // [esp+38h] [ebp-340h]
  int v20; // [esp+3Ch] [ebp-33Ch]
  int v21; // [esp+40h] [ebp-338h]
  float v22; // [esp+44h] [ebp-334h]
  float v23; // [esp+48h] [ebp-330h]
  int v24; // [esp+4Ch] [ebp-32Ch]
  int (__thiscall *v25)(int, signed int); // [esp+50h] [ebp-328h]
  int v26; // [esp+54h] [ebp-324h]
  BOOL v27; // [esp+58h] [ebp-320h]
  BOOL v28; // [esp+5Ch] [ebp-31Ch]
  BOOL v29; // [esp+60h] [ebp-318h]
  int v30; // [esp+70h] [ebp-308h]
  int v31; // [esp+74h] [ebp-304h]
  int v32; // [esp+78h] [ebp-300h]
  int v33; // [esp+7Ch] [ebp-2FCh]
  char Dst; // [esp+84h] [ebp-2F4h]
  bool v35; // [esp+361h] [ebp-17h]
  bool v36; // [esp+362h] [ebp-16h]
  bool v37; // [esp+363h] [ebp-15h]
  _DWORD *v38; // [esp+364h] [ebp-14h]
  int v39; // [esp+374h] [ebp-4h]
  int savedregs; // [esp+378h] [ebp+0h]

  v38 = this;
  LODWORD(v1) = (*(int (__thiscall **)(int))(*(_DWORD *)dword_10274810 + 108))(dword_10274810);
  if ( ((_BYTE)v1
     || (LODWORD(v1) = (*(unsigned __int8 (__thiscall **)(int))(*(_DWORD *)dword_10274810 + 104))(dword_10274810),
         (_BYTE)v1))
    && *(_DWORD *)(dword_1027493C + 72) )
  {
    LODWORD(v1) = (unsigned __int8)sub_10017090(*(_DWORD *)(dword_1027493C + 72));
    if ( (_BYTE)v1 )
    {
      if ( dword_101FD65C > *(_DWORD *)(*(_DWORD *)(__readfsdword(0x2Cu) + 4 * TlsIndex) + 4) )
      {
        sub_1014BF4F(&dword_101FD65C);
        if ( dword_101FD65C == -1 )
        {
          v39 = 0;
          dword_101FD658 = *(_DWORD *)sub_10013B20(*(_DWORD *)(dword_1027493C + 72));
          v39 = -1;
          sub_1014BF05(&dword_101FD65C);
        }
      }
      v29 = v38[9] == 0;
      v37 = v29;
      v28 = !(_BYTE)v29
         && dword_101FD654 != (*(int (__thiscall **)(_DWORD))(**(_DWORD **)(dword_1027493C + 72) + 8))(*(_DWORD *)(dword_1027493C + 72));
      v36 = v28;
      v27 = !v37 && !v36 && *(float *)sub_10013B20(*(_DWORD *)(dword_1027493C + 72)) != *(float *)&dword_101FD658;
      v35 = v27;
      if ( v36 )
      {
        memset(v38 + 9, 0, 4u);
        dword_101FD654 = (*(int (__thiscall **)(_DWORD))(**(_DWORD **)(dword_1027493C + 72) + 8))(*(_DWORD *)(dword_1027493C + 72));
      }
      if ( v35 )
      {
        v26 = *(_DWORD *)(dword_1027493C + 72);
        sub_100E3230(v38[9]);
        dword_101FD658 = *(_DWORD *)sub_10013B20(*(_DWORD *)(dword_1027493C + 72));
      }
      if ( v37 || v36 )
      {
        v25 = *(int (__thiscall **)(int, signed int))(*(_DWORD *)dword_1027485C + 4);
        v2 = v25(dword_1027485C, 832);
        v38[9] = v2;
        if ( v38[9] )
        {
          v24 = *(_DWORD *)(dword_1027493C + 72);
          sub_100E3360(v38[9]);
        }
      }
      if ( *(_DWORD *)(v38[9] + 112) == *(_DWORD *)(dword_10274818 + '\x04') )// if (state->m_iLastClientSideAnimationUpdateFramecount() == g_GlobalVars->framecount)
                                                //             state->m_iLastClientSideAnimationUpdateFramecount() = g_GlobalVars->framecount - 1;
        *(_DWORD *)(v38[9] + 112) = (signed int)(float)((float)*(signed int *)(v38[9] + 112) - 1.0);
      sub_100E3040(*(_DWORD *)(dword_1027493C + 72));
      v23 = sub_10044A40(*(_DWORD *)(dword_1027493C + 72));
      v3 = *(_DWORD *)(dword_1027493C + 72);
      v22 = v23;
      v4 = (float *)sub_100E7280(v3);
      if ( v22 != *v4 )
      {
        v5 = 56 * sub_10013A30(*(_DWORD *)(dword_1027493C + 72));
        v6 = (const void *)sub_100138D0(*(_DWORD *)(dword_1027493C + 72));
        memcpy(&Dst, v6, v5);
        v21 = *(_DWORD *)(dword_1027493C + 72);
        sub_100E3450(
          v38[9],
          *(_DWORD *)(dword_1027493C + 25268),
          *(_DWORD *)(dword_1027493C + 25272),
          *(_DWORD *)(dword_1027493C + 25276));
        v20 = *(_DWORD *)(dword_1027493C + 72);
        v7 = sub_10011E20(0, *(_DWORD *)(v38[9] + 128), 0);
        sub_100E47E0(v7);
        v19 = *(_DWORD *)(dword_1027493C + 72);
        *(_DWORD *)(sub_10013880(12) + 32) = 872415232;
        v18 = *(_DWORD *)(dword_1027493C + 72);
        sub_100E7200(dword_1027493C + 176, 128, 524032, *(_DWORD *)(dword_10274818 + 16));
        if ( byte_1027BBDD )
        {
          v33 = dword_1027493C + 176;
          v32 = dword_1027493C + 176;
          v31 = dword_1027493C + 6320;
          while ( v32 != v31 )
          {
            v30 = v32;
            v17 = (float *)(*(int (__thiscall **)(int))(*(_DWORD *)(*(_DWORD *)(dword_1027493C + 72) + 4) + 4))(*(_DWORD *)(dword_1027493C + 72) + 4);
            v16 = sub_10012990(0);
            *(float *)(v16 + 12) = *(float *)(v16 + 12) - *v17;
            v15 = (*(int (__thiscall **)(int))(*(_DWORD *)(*(_DWORD *)(dword_1027493C + 72) + 4) + 4))(*(_DWORD *)(dword_1027493C + 72) + 4);
            v14 = sub_10012990(1);
            *(float *)(v14 + 12) = *(float *)(v14 + 12) - *(float *)(v15 + 4);
            v13 = (*(int (__thiscall **)(int))(*(_DWORD *)(*(_DWORD *)(dword_1027493C + 72) + 4) + 4))(*(_DWORD *)(dword_1027493C + 72) + 4);
            v12 = sub_10012990(2);
            *(float *)(v12 + 12) = *(float *)(v12 + 12) - *(float *)(v13 + 8);
            v32 += 48;
          }
        }
        v8 = 56 * sub_10013A30(*(_DWORD *)(dword_1027493C + 72));
        v9 = (void *)sub_100138D0(*(_DWORD *)(dword_1027493C + 72));
        memcpy(v9, &Dst, v8);
      }
      LODWORD(v1) = dword_1027493C;
      HIDWORD(v1) = v38[9];
      *(_DWORD *)(dword_1027493C + 18720) = HIDWORD(v1);
    }
    else
    {
      byte_101FD650 = 0;
    }
  }
  else
  {
    byte_101FD650 = 0;
  }
  v10 = v1;
  sub_1014B972((int)&savedregs, &dword_1000CFF8);
  return v10;
}
UPD : Хз зачем но я реверснул около полкода
Спасибо за вклад.
Thanks for deducting reputation for this user.
 
Где тут реверс?Тут псевдо код фулл
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
hide casts для кого придумали..
 
Где тут реверс?Тут псевдо код фулл
крутой псевдореверс
Спасибо за вклад.
Thanks for deducting reputation for this user.
Либо вы ебики либо вы чуть не поняли
Я слил псевдо,а в коментах оставил что хз зачем но я реверсил эту хуйню....
 
Либо вы ебики либо вы чуть не поняли
Я слил псевдо,а в коментах оставил что хз зачем но я реверсил эту хуйню....
А нахуя нам псевдокод? Мы с ним нихуя не сделаем без idb
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
дак это даже не анимфикс, ты вообще хуй пойми что кинул ало
Ну значит пацаны чисто по приколу сверяют player_model_time
Обновляют анимации,делают крит аним стейт, и возвращают (бэкпают ) время после определенного bool (Clientsideanimations = false) какого то хуя делают сетабсанглес после апдейта и куча другой хуйни
.....
Чел я реверсил эту хуйню
Это анимфикс
 
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Ну значит пацаны чисто по приколу сверяют player_model_time
Обновляют анимации,делают крит аним стейт, и возвращают (бэкпают ) время после определенного bool (Clientsideanimations = false) какого то хуя делают сетабсанглес после апдейта и куча другой хуйни
.....
Чел я реверсил эту хуйню
Это анимфикс
тогда объясни мне, зачем им сетать позицию матрицы как GetRenderOrigin?
 
Ну значит пацаны чисто по приколу сверяют player_model_time
Обновляют анимации,делают крит аним стейт, и возвращают (бэкпают ) время после определенного bool (Clientsideanimations = false) какого то хуя делают сетабсанглес после апдейта и куча другой хуйни
.....
Чел я реверсил эту хуйню
Это анимфикс
интересно а когда крутой фейк анимстейт для крутых десинк чамсов стал анимфиксом 0__o
C++:
Expand Collapse Copy
int __usercall c_anim_sync::manage_fake_anim_state@<eax>(int a1@<ecx>, double a2@<st0>)
{
  // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND]

  data = a1;
  is_alive = (*(*interfaces::engine + 108))(interfaces::engine, a2);
  if ( (is_alive || (is_alive = (*(*interfaces::engine + 104))(interfaces::engine), is_alive)) && globals->m_local )
  {
    is_alive = ::is_alive(globals->m_local);
    if ( is_alive )
    {
      if ( dword_20D65C > *(*(__readfsdword(0x2Cu) + 4 * dword_28C0A0) + 4) )
      {
        a2 = sub_15BF4F(&dword_20D65C);
        if ( dword_20D65C == -1 )
        {
          v42 = 0;
          g_spawn_time = *get_spawn_time(globals->m_local);
          v42 = -1;
          a2 = sub_15BF05(&dword_20D65C);
        }
      }
      allocate = data->m_state == 0;
      allocate_1 = allocate;
      change = !allocate && g_ref_handle != (*(*globals->m_local + 8))(globals->m_local);
      change_1 = change;
      reset = !allocate_1 && !change_1 && *get_spawn_time(globals->m_local) != g_spawn_time;
      reset_1 = reset;
      if ( change_1 )
      {
        memset(&data->m_state, 0, 4u);
        g_ref_handle = (*(*globals->m_local + 8))(globals->m_local);
      }
      if ( reset_1 )
      {
        v28 = globals->m_local;
        c_anim_state::reset(data->m_state);
        g_spawn_time = *get_spawn_time(globals->m_local);
      }
      if ( allocate_1 || change_1 )
      {
        v27 = *(*interfaces::mem_alloc + 4);
        v4 = v27(interfaces::mem_alloc, 832);
        data->m_state = v4;
        if ( data->m_state )
        {
          v26 = globals->m_local;
          c_anim_state::create(v26, data->m_state);
        }
      }
      if ( data->m_state->m_last_client_side_animation_update_framecount == interfaces::global_vars->m_framecount )
        data->m_state->m_last_client_side_animation_update_framecount = (data->m_state->m_last_client_side_animation_update_framecount
                                                                       - 1.0);
      invalidate_bone_cache(globals->m_local);
      get_old_simulation_time(globals->m_local);
      v25 = a2;
      v5 = globals->m_local;
      old_sim_time = v25;
      sim_time = get_simulation_time(v5);
      if ( old_sim_time != *sim_time )
      {
        size = 56 * get_num_anim_layers(globals->m_local);
        layers = get_anim_layers(globals->m_local);
        memcpy(&backup_layers, layers, size);
        v23 = globals->m_local;
        c_anim_state::update(
          data->m_state,
          LODWORD(globals->m_angles.x),
          LODWORD(globals->m_angles.y),
          LODWORD(globals->m_angles.z));
        v22 = globals->m_local;
        v9 = qangle_t::constructor(&v32, 0, LODWORD(data->m_state->m_goal_feet_yaw), 0);
        set_abs_angles(v22, v9);
        v21 = globals->m_local;
        get_anim_layer(v21, 12, v13)->m_weight = 0.00000011920929;
        v20 = globals->m_local;
        v13 = globals;
        call_setup_bones(v20, &globals->gap69[71], 128, &loc_7FF00, LODWORD(interfaces::global_vars->m_curtime));
        if ( byte_28BBDD )
        {
          v36 = &globals->gap69[71];
          v35 = &globals->gap69[71];
          v34 = &globals->gap69[6215];
          while ( v35 != v34 )
          {
            v33 = v35;
            v19 = (*(*(globals->m_local + 1) + 4))(globals->m_local + 4);
            v18 = sub_22990(0);
            *(v18 + 12) = *(v18 + 12) - *v19;
            v17 = (*(*(globals->m_local + 1) + 4))(globals->m_local + 4);
            v16 = sub_22990(1);
            *(v16 + 12) = *(v16 + 12) - *(v17 + 4);
            v15 = (*(*(globals->m_local + 1) + 4))(globals->m_local + 4);
            v14 = sub_22990(2);
            *(v14 + 12) = *(v14 + 12) - *(v15 + 8);
            v35 += 48;
          }
        }
        v13 = 56 * get_num_anim_layers(globals->m_local);
        layers_1 = get_anim_layers(globals->m_local);
        memcpy(layers_1, &backup_layers, v13);
      }
      is_alive = globals;
      v3 = data->m_state;
      *&globals->gap69[18615] = v3;
    }
    else
    {
      byte_20D650 = 0;
    }
  }
  else
  {
    byte_20D650 = 0;
  }
  v13 = v3;
  v11 = is_alive;
  sub_15B972(&savedregs, &dword_1CFF8);
  return v11;
}
C++:
Expand Collapse Copy
__int64 __usercall c_anim_sync::manage_real_anim_state@<edx:eax>(void *this@<ecx>, double a2@<st0>)
{
  // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND]

  v19 = this;
  LODWORD(state) = get_anim_state_if_alive(globals->m_local);
  state_1 = state;
  if ( state )
  {
    v17 = interfaces::global_vars->m_frametime;
    v16 = interfaces::global_vars->m_curtime;
    state_1->m_goal_feet_yaw = *&globals->gap492F[6481];
    if ( state_1->m_last_client_side_animation_update_framecount == interfaces::global_vars->m_framecount )
      state_1->m_last_client_side_animation_update_framecount = (state_1->m_last_client_side_animation_update_framecount
                                                               - 1.0);
    interfaces::global_vars->m_frametime = interfaces::global_vars->m_interval_per_tick;
    interfaces::global_vars->m_curtime = *get_simulation_time(globals->m_local);
    eflags= get_eflags(globals->m_local);
    *eflags &= ~0x1000u;
    velocity = get_velocity(globals->m_local);
    abs_velocity = get_abs_velocity(globals->m_local);
    vec3_t::set(abs_velocity, velocity);
    if ( dword_20D664 > *(*(__readfsdword(0x2Cu) + 4 * dword_28C0A0) + 4) )
    {
      a2 = sub_15BF4F(&dword_20D664);
      if ( dword_20D664 == -1 )
      {
        g_abs_yaw = LODWORD(state_1->m_goal_feet_yaw);
        a2 = sub_15BF05(&dword_20D664);
      }
    }
    sim_time = get_simulation_time(globals->m_local);
    get_old_simulation_time(globals->m_local);
    old_sim_time = a2;
    if ( *sim_time != old_sim_time )
    {
      size = 56 * get_num_anim_layers(globals->m_local);
      layers = get_anim_layers(globals->m_local);
      memcpy(&backup_layers, layers, size);
      *get_client_side_animation(globals->m_local) = 1;
      globals->gap492F[1] = 1;
      v10 = globals->m_local;
      c_anim_state::update(
        state_1,
        LODWORD(globals->m_angles.x),
        LODWORD(globals->m_angles.y),
        LODWORD(globals->m_angles.z));
      call_update_client_side_animation(globals->m_local);
      *get_client_side_animation(globals->m_local) = 0;
      globals->gap492F[1] = 0;
      g_abs_yaw = LODWORD(state_1->m_goal_feet_yaw);
      size_1 = 56 * get_num_anim_layers(globals->m_local);
      layers_1 = get_anim_layers(globals->m_local);
      memcpy(layers_1, &backup_layers, size_1);
    }
    HIDWORD(state) = state_1;
    LODWORD(state_1->m_goal_feet_yaw) = g_abs_yaw;
    LODWORD(state) = interfaces::global_vars;
    interfaces::global_vars->m_curtime = v16;
    interfaces::global_vars->m_frametime = v17;
  }
  v13 = state;
  sub_15B972(&savedregs, &dword_1C0DC);
  return v13;
}
 
Последнее редактирование:
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
интересно а когда крутой фейк анимстейт для крутых десинк чамсов стал анимфиксом 0__o
C++:
Expand Collapse Copy
int __usercall c_anim_sync::manage_fake_anim_state@<eax>(int a1@<ecx>, double a2@<st0>)
{
  // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND]

  data = a1;
  is_alive = (*(*interfaces::engine + 108))(interfaces::engine, a2);
  if ( (is_alive || (is_alive = (*(*interfaces::engine + 104))(interfaces::engine), is_alive)) && globals->m_local )
  {
    is_alive = ::is_alive(globals->m_local);
    if ( is_alive )
    {
      if ( dword_20D65C > *(*(__readfsdword(0x2Cu) + 4 * dword_28C0A0) + 4) )
      {
        a2 = sub_15BF4F(&dword_20D65C);
        if ( dword_20D65C == -1 )
        {
          v42 = 0;
          g_spawn_time = *get_spawn_time(globals->m_local);
          v42 = -1;
          a2 = sub_15BF05(&dword_20D65C);
        }
      }
      allocate = data->m_state == 0;
      allocate_1 = allocate;
      change = !allocate && g_ref_handle != (*(*globals->m_local + 8))(globals->m_local);
      change_1 = change;
      reset = !allocate_1 && !change_1 && *get_spawn_time(globals->m_local) != g_spawn_time;
      reset_1 = reset;
      if ( change_1 )
      {
        memset(&data->m_state, 0, 4u);
        g_ref_handle = (*(*globals->m_local + 8))(globals->m_local);
      }
      if ( reset_1 )
      {
        v28 = globals->m_local;
        c_anim_state::reset(data->m_state);
        g_spawn_time = *get_spawn_time(globals->m_local);
      }
      if ( allocate_1 || change_1 )
      {
        v27 = *(*interfaces::mem_alloc + 4);
        v4 = v27(interfaces::mem_alloc, 832);
        data->m_state = v4;
        if ( data->m_state )
        {
          v26 = globals->m_local;
          c_anim_state::create(v26, data->m_state);
        }
      }
      if ( data->m_state->m_last_client_side_animation_update_framecount == interfaces::global_vars->m_framecount )
        data->m_state->m_last_client_side_animation_update_framecount = (data->m_state->m_last_client_side_animation_update_framecount
                                                                       - 1.0);
      invalidate_bone_cache(globals->m_local);
      get_old_simulation_time(globals->m_local);
      v25 = a2;
      v5 = globals->m_local;
      old_sim_time = v25;
      sim_time = get_simulation_time(v5);
      if ( old_sim_time != *sim_time )
      {
        size = 56 * get_num_anim_layers(globals->m_local);
        layers = get_anim_layers(globals->m_local);
        memcpy(&backup_layers, layers, size);
        v23 = globals->m_local;
        c_anim_state::update(
          data->m_state,
          LODWORD(globals->m_angles.x),
          LODWORD(globals->m_angles.y),
          LODWORD(globals->m_angles.z));
        v22 = globals->m_local;
        v9 = qangle_t::constructor(&v32, 0, LODWORD(data->m_state->m_goal_feet_yaw), 0);
        set_abs_angles(v22, v9);
        v21 = globals->m_local;
        get_anim_layer(v21, 12, v13)->m_weight = 0.00000011920929;
        v20 = globals->m_local;
        v13 = globals;
        call_setup_bones(v20, &globals->gap69[71], 128, &loc_7FF00, LODWORD(interfaces::global_vars->m_curtime));
        if ( byte_28BBDD )
        {
          v36 = &globals->gap69[71];
          v35 = &globals->gap69[71];
          v34 = &globals->gap69[6215];
          while ( v35 != v34 )
          {
            v33 = v35;
            v19 = (*(*(globals->m_local + 1) + 4))(globals->m_local + 4);
            v18 = sub_22990(0);
            *(v18 + 12) = *(v18 + 12) - *v19;
            v17 = (*(*(globals->m_local + 1) + 4))(globals->m_local + 4);
            v16 = sub_22990(1);
            *(v16 + 12) = *(v16 + 12) - *(v17 + 4);
            v15 = (*(*(globals->m_local + 1) + 4))(globals->m_local + 4);
            v14 = sub_22990(2);
            *(v14 + 12) = *(v14 + 12) - *(v15 + 8);
            v35 += 48;
          }
        }
        v13 = 56 * get_num_anim_layers(globals->m_local);
        layers_1 = get_anim_layers(globals->m_local);
        memcpy(layers_1, &backup_layers, v13);
      }
      is_alive = globals;
      v3 = data->m_state;
      *&globals->gap69[18615] = v3;
    }
    else
    {
      byte_20D650 = 0;
    }
  }
  else
  {
    byte_20D650 = 0;
  }
  v13 = v3;
  v11 = is_alive;
  sub_15B972(&savedregs, &dword_1CFF8);
  return v11;
}
C++:
Expand Collapse Copy
__int64 __usercall c_anim_sync::manage_real_anim_state@<edx:eax>(void *this@<ecx>, double a2@<st0>)
{
  // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND]

  v19 = this;
  LODWORD(state) = get_anim_state_if_alive(globals->m_local);
  state_1 = state;
  if ( state )
  {
    v17 = interfaces::global_vars->m_frametime;
    v16 = interfaces::global_vars->m_curtime;
    state_1->m_goal_feet_yaw = *&globals->gap492F[6481];
    if ( state_1->m_last_client_side_animation_update_framecount == interfaces::global_vars->m_framecount )
      state_1->m_last_client_side_animation_update_framecount = (state_1->m_last_client_side_animation_update_framecount
                                                               - 1.0);
    interfaces::global_vars->m_frametime = interfaces::global_vars->m_interval_per_tick;
    interfaces::global_vars->m_curtime = *get_simulation_time(globals->m_local);
    eflags= get_eflags(globals->m_local);
    *eflags &= ~0x1000u;
    velocity = get_velocity(globals->m_local);
    abs_velocity = get_abs_velocity(globals->m_local);
    vec3_t::set(abs_velocity, velocity);
    if ( dword_20D664 > *(*(__readfsdword(0x2Cu) + 4 * dword_28C0A0) + 4) )
    {
      a2 = sub_15BF4F(&dword_20D664);
      if ( dword_20D664 == -1 )
      {
        g_abs_yaw = LODWORD(state_1->m_goal_feet_yaw);
        a2 = sub_15BF05(&dword_20D664);
      }
    }
    sim_time = get_simulation_time(globals->m_local);
    get_old_simulation_time(globals->m_local);
    old_sim_time = a2;
    if ( *sim_time != old_sim_time )
    {
      size = 56 * get_num_anim_layers(globals->m_local);
      layers = get_anim_layers(globals->m_local);
      memcpy(&backup_layers, layers, size);
      *get_client_side_animation(globals->m_local) = 1;
      globals->gap492F[1] = 1;
      v10 = globals->m_local;
      c_anim_state::update(
        state_1,
        LODWORD(globals->m_angles.x),
        LODWORD(globals->m_angles.y),
        LODWORD(globals->m_angles.z));
      call_update_client_side_animation(globals->m_local);
      *get_client_side_animation(globals->m_local) = 0;
      globals->gap492F[1] = 0;
      g_abs_yaw = LODWORD(state_1->m_goal_feet_yaw);
      size_1 = 56 * get_num_anim_layers(globals->m_local);
      layers_1 = get_anim_layers(globals->m_local);
      memcpy(layers_1, &backup_layers, size_1);
    }
    HIDWORD(state) = state_1;
    LODWORD(state_1->m_goal_feet_yaw) = g_abs_yaw;
    LODWORD(state) = interfaces::global_vars;
    interfaces::global_vars->m_curtime = v16;
    interfaces::global_vars->m_frametime = v17;
  }
  v13 = state;
  sub_15B972(&savedregs, &dword_1C0DC);
  return v13;
}
Всё не пиши ничего все и так поняли что ты умный
 
Назад
Сверху Снизу