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

main public enemy
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции[?]
647
Поинты[?]
0
Очень очень много рофлов
Скоро солью полный дамп
А пока так чисто посмеяться не больше
P.S Утверждают что селфкод а код паблик (((((
Смысла реверсить я не вижу
C++:
_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 : Хз зачем но я реверснул около полкода
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
12 Май 2020
Сообщения
50
Реакции[?]
29
Поинты[?]
0
Очень очень много рофлов
Скоро солью полный дамп
А пока так чисто посмеяться не больше
P.S Утверждают что селфкод а код паблик (((((
Смысла реверсить я не вижу
C++:
_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.
 
Забаненный
Статус
Оффлайн
Регистрация
21 Июл 2019
Сообщения
152
Реакции[?]
92
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Нефор
Забаненный
Статус
Оффлайн
Регистрация
9 Ноя 2018
Сообщения
1,042
Реакции[?]
663
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
hide casts для кого придумали..
 
main public enemy
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции[?]
647
Поинты[?]
0
Где тут реверс?Тут псевдо код фулл
крутой псевдореверс
Спасибо за вклад.
Thanks for deducting reputation for this user.
Либо вы ебики либо вы чуть не поняли
Я слил псевдо,а в коментах оставил что хз зачем но я реверсил эту хуйню....
 
Начинающий
Статус
Оффлайн
Регистрация
12 Май 2020
Сообщения
50
Реакции[?]
29
Поинты[?]
0
Либо вы ебики либо вы чуть не поняли
Я слил псевдо,а в коментах оставил что хз зачем но я реверсил эту хуйню....
А нахуя нам псевдокод? Мы с ним нихуя не сделаем без idb
 
main public enemy
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции[?]
647
Поинты[?]
0
Забаненный
Статус
Оффлайн
Регистрация
21 Июл 2019
Сообщения
152
Реакции[?]
92
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
main public enemy
Эксперт
Статус
Оффлайн
Регистрация
30 Ноя 2019
Сообщения
1,531
Реакции[?]
647
Поинты[?]
0
дак это даже не анимфикс, ты вообще хуй пойми что кинул ало
Ну значит пацаны чисто по приколу сверяют player_model_time
Обновляют анимации,делают крит аним стейт, и возвращают (бэкпают ) время после определенного bool (Clientsideanimations = false) какого то хуя делают сетабсанглес после апдейта и куча другой хуйни
.....
Чел я реверсил эту хуйню
Это анимфикс
 
Забаненный
Статус
Оффлайн
Регистрация
21 Июл 2019
Сообщения
152
Реакции[?]
92
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Ну значит пацаны чисто по приколу сверяют player_model_time
Обновляют анимации,делают крит аним стейт, и возвращают (бэкпают ) время после определенного bool (Clientsideanimations = false) какого то хуя делают сетабсанглес после апдейта и куча другой хуйни
.....
Чел я реверсил эту хуйню
Это анимфикс
тогда объясни мне, зачем им сетать позицию матрицы как GetRenderOrigin?
 
t.me/lnk1181shop
Участник
Статус
Оффлайн
Регистрация
16 Авг 2019
Сообщения
492
Реакции[?]
413
Поинты[?]
1K
Ну значит пацаны чисто по приколу сверяют player_model_time
Обновляют анимации,делают крит аним стейт, и возвращают (бэкпают ) время после определенного bool (Clientsideanimations = false) какого то хуя делают сетабсанглес после апдейта и куча другой хуйни
.....
Чел я реверсил эту хуйню
Это анимфикс
интересно а когда крутой фейк анимстейт для крутых десинк чамсов стал анимфиксом 0__o
C++:
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++:
__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;
}
 
Последнее редактирование:
Енотхак самый лучший
Забаненный
Статус
Оффлайн
Регистрация
19 Ноя 2019
Сообщения
724
Реакции[?]
125
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
интересно а когда крутой фейк анимстейт для крутых десинк чамсов стал анимфиксом 0__o
C++:
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++:
__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;
}
Всё не пиши ничего все и так поняли что ты умный
 
Сверху Снизу