dana Posted May 19, 2020 Share Posted May 19, 2020 PSEUDOCODE: bool Weapon::CanShift() { // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND] v0 = dword_3A9124A8 ^ dword_3A9124AC; v1 = GetActiveWeapon(g_pLocalPlayer); v2 = (_DWORD *)(*(int (__thiscall **)(int, _DWORD))(*(_DWORD *)v0 + 16))(v0, *(_DWORD *)v1); if ( v2 && (v3 = v2, v4 = dword_3A912470 ^ dword_3A912474, v5 = Netvars::Weapon::m_iItemDefinitionIndex(v2), (v6 = (*(int (__thiscall **)(int, _DWORD))(*(_DWORD *)v4 + 8))(v4, *(unsigned __int16 *)v5)) != 0) && (v7 = v6, *(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v3) != 64) && *(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v3) != 31 && *(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v3) != 69 && *(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v3) != 49 && (*(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v3) < 43u || *(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v3) >= 0x31u) && *(_DWORD *)((*(int (__thiscall **)(_DWORD *))(v3[2] + 8))(v3 + 2) + 0x14) != 158 ) { result = *(_DWORD *)(v7 + 204) != 1 && *(_DWORD *)(v7 + 204) != 10; } else { result = 0; } return result; } float __cdecl GetShiftTime() { // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND] m_flIntervalPerTick = *(float *)((g_pGlobalVars ^ g_pGlobalVars1) + 0x20); m_nLastTickbase = *(_DWORD *)Netvars::Player::m_nTickbase(g_pLocalPlayer) - 1; m_flPlayerTime = (float)m_nLastTickbase * m_flIntervalPerTick; if ( (_BYTE)exploits_disabled ) return m_flPlayerTime; m_flPlayerTime = (float)m_nLastTickbase * m_flIntervalPerTick; if ( CanDoubletap() ) { if ( g_bLastShift ) return m_flPlayerTime; } else if ( !(_BYTE)hide_shots ) { return m_flPlayerTime; } if ( !Weapon::CanShift() ) return m_flPlayerTime; m_nTicks = 0; m_flIntervalPerTick = *(float *)((g_pGlobalVars ^ g_pGlobalVars1) + 0x20); if ( !(_BYTE)exploits_disabled ) { m_flIntervalPerTick = *(float *)((g_pGlobalVars ^ g_pGlobalVars1) + 0x20); if ( CanDoubletap() ) { m_nTicks = 13; if ( g_bLastShift ) m_nTicks = 0; } else { m_nTicks = 7; if ( !(_BYTE)hide_shots ) m_nTicks = 0; } } m_flPlayerTime = m_flPlayerTime - (float)(m_flIntervalPerTick * (float)(m_nTicks + 1)); return m_flPlayerTime; } bool CanDoubletap() { // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND] if ( !(_BYTE)exploits_disabled && Weapon::CanShift() && (v0 = dword_3A9124A8 ^ dword_3A9124AC, v1 = GetActiveWeapon(g_pLocalPlayer), v2 = (void *)(*(int (__thiscall **)(int, _DWORD))(*(_DWORD *)v0 + 16))(v0, *(_DWORD *)v1), *(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v2) != 40) && *(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v2) != 9 ) { result = byte_3A917B8C != 0; } else { result = 0; } return result; } signed int __thiscall SetupTicks(_BYTE *this) { signed int result; // eax _BYTE *v2; // esi result = 0; if ( (_BYTE)exploits_disabled ) return result; v2 = this; if ( CanDoubletap() ) { result = 13; if ( v2[9] ) result = 0; } else { result = 7; if ( !(_BYTE)hide_shots ) result = 0; } return result; } char __userpurge SetupShiftData@<al>(CTickbase *a1@<ecx>, double a2@<st0>, int a3) { // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND] v4 = dword_3A94AD20 ^ dword_3A94AD24; v5 = GetActiveWeapon(g_pLocalPlayer); v6 = (*(int (__thiscall **)(int, _DWORD))(*(_DWORD *)v4 + 16))(v4, *(_DWORD *)v5); if ( (_BYTE)exploits_disabled ) goto LABEL_2; v7 = (int *)v6; if ( CanDoubletap() ) { v6 = 13; if ( a1->m_bRecharge ) v6 = 0; if ( !v7 ) goto LABEL_2; } else { v6 = 7; if ( !(_BYTE)hide_shots ) v6 = 0; if ( !v7 ) goto LABEL_2; } if ( !v6 || (LOBYTE(v6) = Weapon::CanShift(), !(_BYTE)v6) ) { LABEL_2: if ( a1->m_bRecharge ) a1->m_bRecharged = 1; return v6; } m_nShiftAmount = 0; if ( !(_BYTE)exploits_disabled ) { if ( CanDoubletap() ) { m_nShiftAmount = 13; if ( a1->m_bRecharge ) m_nShiftAmount = 0; } else { m_nShiftAmount = 7; if ( !(_BYTE)hide_shots ) m_nShiftAmount = 0; } } a1->g_nShift = m_nShiftAmount; a1->m_bRecharge = 1; if ( byte_3A917B8C ) { if ( dword_3A917BE4 & 2 ) v9 = 1; else v9 = ((unsigned __int8)dword_3A917BE4 >> 2) & 1; a1->unsigned8 = v9; if ( v9 ) { v10 = 1; v35 = a1; v37 = (_DWORD *)(a3 + 4); do { v36 = v10; v11 = v10 + *v37; v39 = *(_DWORD *)((dword_3A94ACD0 ^ dword_3A94ACD4) + 0xF4); v12 = 100 * (v11 % 150); v40 = (_BYTE *)(v39 + v12 + 4); qmemcpy(v40, v37, 0x5Cu); v13 = 100 * (v11 % 150); *(_BYTE *)(v39 + v12 + 96) = *(_BYTE *)(a3 + 96); *(_DWORD *)v40 = v11; v41 = 0i64; v42 = 0; (*(void (__stdcall **)(__int64 *))(*(_DWORD *)(dword_3A94ACE0 ^ dword_3A94ACE4) + 72))(&v41); *(_DWORD *)(v39 + v13 + 20) = v42; *(_QWORD *)(v39 + v13 + 12) = v41; v14 = *(_DWORD *)(v39 + v13 + 48) & 0xFFFFF7FE; *(_DWORD *)(v39 + v13 + 48) = v14; *(_BYTE *)(v39 + v13 + 72) = 0; if ( byte_3A917B34 ) *(_DWORD *)(v39 + v13 + 48) = v14 | 4; if ( dword_3A917BE4 & 2 ) { *(_DWORD *)(v39 + v13 + 36) = 0; *(_DWORD *)(v39 + v13 + 40) = 0; v23 = v35; v22 = v36; v24 = v11 % 150; } else { v38 = 100 * (v11 % 150); *(_QWORD *)(v39 + v13 + 36) = qword_3A91934C; v15 = sub_3A625C10(g_pLocalPlayer); v16 = *(float *)v15 * *(float *)v15; v17 = _mm_mul_ps((__m128)*(unsigned __int64 *)(v15 + 4), (__m128)*(unsigned __int64 *)(v15 + 4)); v18 = *v7; v19 = v16 + v17.m128_f32[0]; v20 = _mm_shuffle_ps(v17, v17, 229); v20.m128_f32[0] = v20.m128_f32[0] + v19; v43 = _mm_sqrt_ps(v20); (*(void (**)(void))(v18 + 1764))(); v21 = a2; v22 = v36; v23 = v35; v24 = v11 % 150; if ( v36 > 4 * (unsigned int)((float)(v21 / 3.0) >= v43.m128_f32[0]) + 7 ) { sub_3A626110(&off_3A919328, (CUserCmd *)(v38 + v39), 0); sub_3A7AC6B0(dword_3A9495F8, a2, v38 + v39, 0, 1); v22 = v36; } } v25 = 116 * v24; qmemcpy(&v23[2].unsigned8 + 116 * v24, v40, 0x5Cu); a1 = v35; v35[10].m_nLastShift[v25] = v40[92]; v28 = __OFSUB__(v22, v35->g_nShift); v26 = v22 == v35->g_nShift; v27 = (signed int)(v22 - v35->g_nShift) < 0; v10 = v22 + 1; } while ( (unsigned __int8)(v27 ^ v28) | v26 ); } } else { a1->unsigned8 = 0; } v29 = *(_DWORD *)(a3 + 4); v30 = (unsigned __int64)(458129845i64 * (v29 + (a1->unsigned8 ^ 1))) >> 32; v31 = 116 * (v29 + (a1->unsigned8 ^ 1) - 150 * ((v30 >> 31) + ((signed int)v30 >> 4))); *(_DWORD *)((char *)&a1[1].g_nShift + v31) = v29; v32 = *(_DWORD *)((g_pClientState3 ^ g_pClientState4) + 0x4D28); *(_DWORD *)(&a1[1].unsigned8 + v31) = v32; *(_DWORD *)&a1[1].m_nLastShift[v31] = a1->g_nShift; *((_BYTE *)&a1[2].g_nShift + v31) = a1->unsigned8; v33 = *(_DWORD *)((char *)&a1[1].g_nShift + v31) - v32; v6 = 116 * (v33 % 150); *(_QWORD *)&a1[1].m_nLastShift[v6 + 1] = *(_QWORD *)&a1[1].m_nLastShift[v31 + 1]; *(_QWORD *)((char *)&a1[1].g_nShift + v6) = *(_QWORD *)((char *)&a1[1].g_nShift + v31); qmemcpy(&a1[2].unsigned8 + v6, &a1[2].unsigned8 + v31, 0x5Du); return v6; } int __thiscall Tickbase::ProcessPacket(CTickbase *m_pTickbase, CUserCmd *m_pCmd, bool *m_bSendPacket) { // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND] m_nShift = 0; m_nLastShift = *(_DWORD *)m_pTickbase->m_nLastShift; if ( !(_BYTE)exploits_disabled ) { if ( CanDoubletap() ) { m_nShift = 13; if ( m_pTickbase->m_bRecharge ) m_nShift = 0; } else { m_nShift = 7; if ( !(_BYTE)hide_shots ) m_nShift = 0; } } if ( m_nLastShift < m_nShift && !*(_DWORD *)((g_pClientState3 ^ g_pClientState4) + 0x4D28) ) { m_pCmd->buttons &= 0xFFFFF7FE; if ( sub_3A76AC00(&dword_3A940838) ) LOBYTE(m_pCmd->buttons) |= 4u; m_nShift = 0; if ( !(_BYTE)exploits_disabled ) { if ( CanDoubletap() ) { m_nShift = 13; if ( m_pTickbase->m_bRecharge ) m_nShift = 0; } else { m_nShift = 7; if ( !(_BYTE)hide_shots ) m_nShift = 0; } } m_pTickbase->g_nShift = -m_nShift; } if ( m_pTickbase->g_nShift < 0 ) { abs_shift = -m_pTickbase->g_nShift; v9 = __OFSUB__(*(_DWORD *)((g_pClientState3 ^ g_pClientState4) + 0x4D28), abs_shift); v7 = *(_DWORD *)((g_pClientState3 ^ g_pClientState4) + 0x4D28) == abs_shift; v8 = *(_DWORD *)((g_pClientState3 ^ g_pClientState4) + 0x4D28) + m_pTickbase->g_nShift < 0; *m_bSendPacket = *(_DWORD *)((g_pClientState3 ^ g_pClientState4) + 0x4D28) > abs_shift; if ( (unsigned __int8)(v8 ^ v9) | v7 ) { v13 = m_pTickbase; v14 = (unsigned __int64)(458129845i64 * m_pCmd->command_number) >> 32; v15 = 116 * (m_pCmd->command_number - 150 * ((v14 >> 31) + ((signed int)v14 >> 4))); *(_DWORD *)(&m_pTickbase[1].unsigned8 + v15) = -1; *(_DWORD *)((char *)&v13[1].g_nShift + v15) = m_pCmd->command_number; } else { v22 = m_pCmd->viewangles[2]; v21 = *(_QWORD *)m_pCmd->viewangles; v10 = *(_DWORD *)((dword_3A94ACD0 ^ dword_3A94ACD4) + 0xF4); v11 = (unsigned __int64)(458129845i64 * *(signed int *)((g_pClientState3 ^ g_pClientState4) + 0x4D24)) >> 32; v12 = 100 * (*(_DWORD *)((g_pClientState3 ^ g_pClientState4) + 0x4D24) - 150 * ((v11 >> 31) + ((signed int)v11 >> 4))); m_pCmd->viewangles[2] = *(float *)(v10 + v12 + 20); *(_QWORD *)m_pCmd->viewangles = *(_QWORD *)(v10 + v12 + 12); sub_3A599670((int)m_pCmd, (int)&v21); } } v16 = (unsigned __int64)(458129845i64 * m_pCmd->command_number) >> 32; v17 = 150 * ((v16 >> 31) + ((signed int)v16 >> 4)); v18 = *(_DWORD *)((dword_3A94ACD0 ^ dword_3A94ACD4) + 0xF8); v19 = 104 * (m_pCmd->command_number - v17); qmemcpy((void *)(v18 + v19 + 4), &m_pCmd->command_number, 0x5Du); *(_DWORD *)(v18 + v19 + 100) = sub_3A7B1EA0(m_pCmd); return m_pTickbase->g_nShift >> 31; } double __userpurge Tickbase::OnProcessingPacket@<st0>(int a1@<ecx>, double result@<st0>, int a3) { // [COLLAPSED LOCAL DECLARATIONS. PRESS KEYPAD CTRL-"+" TO EXPAND] if ( !*(_BYTE *)(a1 + 116) || !byte_3A91796C ) return result; v102 = a1; v3 = dword_3A9495C8 ^ dword_3A9495CC; v4 = GetActiveWeapon(g_pLocalPlayer); v103 = (void *)(*(int (__thiscall **)(int, _DWORD))(*(_DWORD *)v3 + 16))(v3, *(_DWORD *)v4); v104 = *(char **)((dword_3A949570 ^ dword_3A949574) + 0xF4); v5 = 100 * (sub_3A66BC20(&dword_3A940838) % 150); sub_3A626110(&off_3A919328, (CUserCmd *)&v104[v5], 0); if ( byte_3A925620 ) { v6 = (int *)Netvars::Player::GetAnimState((char *)g_pLocalPlayer); memcpy((int)v88, *v6, 844); v7 = (int *)Netvars::Player::GetAnimState((char *)g_pLocalPlayer); memcpy(*v7, (int)dword_3A92CC54, 844); v8 = v102; *(_BYTE *)(v102 + 3) = 1; sub_3A593CB0(g_pLocalPlayer, (float *)v106); *(_DWORD *)(v8 + 24) = v107; *(_QWORD *)(v8 + 16) = *(_QWORD *)v106; *(_BYTE *)(v8 + 3) = 0; v9 = (int *)Netvars::Player::GetAnimState((char *)g_pLocalPlayer); memcpy(*v9, (int)v88, 844); } if ( dword_3A913924 > *(_DWORD *)(*(_DWORD *)(__readfsdword(0x2Cu) + 4 * dword_3A950100) + 8) ) { sub_3A87B4F8(&dword_3A913924); if ( dword_3A913924 == -1 ) { dword_3A913918 = 0; qword_3A91391C = 0i64; sub_3A87B56E(&dword_3A913924); } } v10 = *(float *)(v102 + 16) - *(float *)(v102 + 28); v11 = _mm_sub_ps((__m128)*(unsigned __int64 *)(v102 + 20), (__m128)*(unsigned __int64 *)(v102 + 32)); v12 = _mm_mul_ps(v11, v11); v13 = (float)(v10 * v10) + v12.m128_f32[0]; v14 = _mm_shuffle_ps(v12, v12, 229); v14.m128_f32[0] = v14.m128_f32[0] + v13; LODWORD(v15) = (unsigned __int128)_mm_sqrt_ps(v14); if ( v15 > 0.0 && ((LODWORD(v16) = (unsigned __int128)_mm_shuffle_ps(v11, v11, 229), v16 != 0.0) || v15 != 0.0) && (v11.m128_f32[0] != 0.0 || v10 != 0.0) ) { v105.m128_f32[0] = *(float *)(v102 + 16) - *(float *)(v102 + 28); v94 = v11; v96 = sub_3A8BC733(COERCE_UNSIGNED_INT64(v16 / v15), COERCE_UNSIGNED_INT64(v16 / v15) >> 32); *(_OWORD *)v100 = (unsigned int)dword_3A8BE120; v105.m128_f32[1] = v96 * *(float *)&dword_3A8BE120; *(float *)v106 = v96 * *(float *)&dword_3A8BE120; result = sub_3A8BC739( COERCE_UNSIGNED_INT64(v94.m128_f32[0] / v105.m128_f32[0]), COERCE_UNSIGNED_INT64(v94.m128_f32[0] / v105.m128_f32[0]) >> 32); v97 = result; v69 = *(_OWORD *)v100; *(float *)&v69 = *(float *)v100 * v97; v88[0] = LODWORD(v105.m128_f32[1]); *(_OWORD *)v100 = v69; if ( (signed __int16)dword_3A8F23D4(v88) <= 0 && (v70 = (__m128)(unsigned int)dword_3A8BE124, v71 = _mm_cmpgt_ss((__m128)0i64, v105), v70.m128_f32[0] = *(float *)&dword_3A8BE124 + *(float *)v100, *(__m128 *)v100 = _mm_or_ps(_mm_andnot_ps(v71, v70), _mm_and_ps(*(__m128 *)v100, v71)), v88[0] = v100[0], (signed __int16)dword_3A8F23D4(v88) <= 0) && (v88[0] = 0, (signed __int16)dword_3A8F23D4(v88) <= 0) ) { v74 = v106; v75 = (unsigned int *)&dword_3A8C5B10; v88[0] = -1028521984; if ( *(float *)&dword_3A8BE128 > v105.m128_f32[1] ) v74 = v88; if ( v105.m128_f32[1] <= 89.0 ) v75 = v74; v17 = *v75; v106[0] = *v75; dword_3A8F2430(v100[0], 1135869952); v98 = result; v72 = v98; } else { v106[0] = 0; v72 = 0.0; v17 = 0; } v73 = 0i64; v73.m128_f32[0] = v72; v95 = v73; } else { v17 = dword_3A913918; v95 = (__m128)(unsigned __int64)qword_3A91391C; } sub_3A7980D0((float *)v88); v18 = *(_DWORD *)&v104[v5 + 4]; if ( v18 <= *(_DWORD *)(a3 + 4) ) { v19 = v95; v20 = _mm_shuffle_ps(v95, v95, 229); v19.m128_f32[0] = v95.m128_f32[0] - *(float *)&v88[1]; v20.m128_f32[0] = v20.m128_f32[0] - v89; v95 = v19; v93 = v20; v99 = COERCE_FLOAT(_mm_cvtsi32_si128(v17)) - *(float *)v88; do { v105.m128_i32[0] = v18; v23 = *(_DWORD *)((dword_3A949570 ^ dword_3A949574) + 0xF4); v24 = v18 % 150; v94.m128_i32[0] = v24; v25 = 100 * v24; v26 = v99; v27 = (_DWORD *)(v23 + v25 + 16); v105.m128_i32[1] = *(_DWORD *)((dword_3A949570 ^ dword_3A949574) + 0xF8); v89 = *(float *)(v23 + v25 + 20); v28 = *(_QWORD *)(v23 + v25 + 12); v104 = (char *)(v23 + v25); v101 = (float *)(v23 + v25 + 12); v100[0] = v23 + v25 + 20; *(_QWORD *)v88 = v28; LODWORD(v28) = v95.m128_i32[0]; *v101 = v99; *v27 = v28; *(_DWORD *)(v23 + v25 + 20) = v93.m128_i32[0]; *(float *)v106 = v26; if ( (signed __int16)dword_3A8F23D4(v106) <= 0 && (v106[0] = *v27, (signed __int16)dword_3A8F23D4(v106) <= 0) && (v106[0] = *(_DWORD *)v100[0], (signed __int16)dword_3A8F23D4(v106) <= 0) ) { v106[0] = -1028521984; v21 = v106; if ( *(float *)&dword_3A8BE128 <= *v101 ) v21 = (int *)v101; if ( *v101 > 89.0 ) v21 = &dword_3A8C5B10; *(_DWORD *)v101 = *v21; dword_3A8F2430(*(_DWORD *)(v23 + v25 + 16), 1135869952); *(float *)(v23 + v25 + 16) = result; v106[0] = -1035468800; v22 = v106; if ( *(float *)&dword_3A8BE16C <= *(float *)v100[0] ) v22 = (int *)v100[0]; if ( *(float *)v100[0] > *(float *)&dword_3A8BE170 ) v22 = &dword_3A8C5B14; *(_DWORD *)v100[0] = *v22; } else { v29 = (_DWORD *)v100[0]; *v101 = 0.0; *v27 = 0; *v29 = 0; } sub_3A599670((int)v104, (int)v88); v31 = *(float *)&dword_3A8BE1F4; v32 = *(float *)(v23 + v25 + 44); v33 = *(float *)(v23 + v25 + 40); v34 = *(float *)&dword_3A8BE1F8; v106[0] = *(_DWORD *)(v23 + v25 + 36); v30 = *(float *)v106; v105.m128_u64[1] = __PAIR__(LODWORD(v32), LODWORD(v33)); if ( *(float *)v106 > *(float *)&dword_3A8BE1F4 || *(float *)&dword_3A8BE1F8 > *(float *)v106 ) { v35 = *(float *)&dword_3A8BE1FC; v36 = &v108; if ( *(float *)&dword_3A8BE1F8 <= *(float *)v106 ) v36 = v106; v108 = -1008664576; if ( *(float *)v106 > *(float *)&dword_3A8BE1F4 ) v36 = &dword_3A8C5B18; v37 = *v36; LODWORD(v38) = (unsigned __int128)_mm_cvtsi32_si128(v37); v106[0] = v37; v39 = v38 / v30; v30 = v38; v33 = v33 * v39; v32 = v32 * v39; v105.m128_u64[1] = __PAIR__(LODWORD(v32), LODWORD(v33)); if ( v33 > *(float *)&dword_3A8BE1F4 ) goto LABEL_38; } else { v35 = *(float *)&dword_3A8BE1FC; if ( v33 > *(float *)&dword_3A8BE1F4 ) goto LABEL_38; } if ( *(float *)&dword_3A8BE1F8 <= v33 ) { if ( v32 > v35 ) goto LABEL_44; goto LABEL_43; } LABEL_38: v40 = &v108; if ( *(float *)&dword_3A8BE1F8 <= v33 ) v40 = &v105.m128_i32[2]; v108 = -1008664576; if ( v33 > *(float *)&dword_3A8BE1F4 ) v40 = &dword_3A8C5B18; v41 = *v40; LODWORD(v42) = (unsigned __int128)_mm_cvtsi32_si128(v41); v105.m128_i32[2] = v41; v43 = v42 / v33; v33 = v42; v30 = v30 * v43; v32 = v32 * v43; *(float *)v106 = v30; v105.m128_f32[3] = v32; if ( v32 > v35 ) { LABEL_44: v44 = &v108; if ( *(float *)&dword_3A8BE200 <= v32 ) v44 = &v105.m128_i32[3]; v108 = -1012924416; if ( v32 > v35 ) v44 = &dword_3A8C5B1C; v45 = *v44; LODWORD(v46) = (unsigned __int128)_mm_cvtsi32_si128(v45); v47 = v46 / v32; v32 = v46; v30 = v30 * v47; v33 = v33 * v47; *(float *)v106 = v30; v105.m128_u64[1] = __PAIR__(v45, LODWORD(v33)); goto LABEL_49; } LABEL_43: if ( COERCE_FLOAT(_mm_cvtsi32_si128(dword_3A8BE200)) > v32 ) goto LABEL_44; LABEL_49: v48 = &v108; v108 = -1008664576; if ( *(float *)&dword_3A8BE1F8 <= v30 ) v48 = v106; if ( v30 > *(float *)&dword_3A8BE1F4 ) v48 = &dword_3A8C5B18; *(_DWORD *)(v23 + v25 + 36) = *v48; v49 = &v108; v108 = -1008664576; if ( v34 <= v33 ) v49 = &v105.m128_i32[2]; v50 = v33 < v31; v51 = v33 == v31; v52 = *(float *)&dword_3A8BE200; if ( !v50 && !v51 ) v49 = &dword_3A8C5B18; *(_DWORD *)(v23 + v25 + 40) = *v49; v53 = &v108; v108 = -1012924416; if ( v52 <= v32 ) v53 = &v105.m128_i32[3]; if ( v32 > v35 ) v53 = &dword_3A8C5B1C; v54 = 104 * v94.m128_i32[0]; *(_DWORD *)(v23 + v25 + 44) = *v53; v55 = v23 + v25 + 4; v56 = v105.m128_f32[1]; memcpy(v105.m128_i32[1] + v54 + 4, v55, 93); *(_DWORD *)(LODWORD(v56) + v54 + 100) = sub_3A7B1EA0(v104); v18 = v105.m128_i32[0] + 1; } while ( v105.m128_i32[0] < *(_DWORD *)(a3 + 4) ); } v57 = v102; v58 = (unsigned int *)(v102 + 8); if ( !*(_BYTE *)(v102 + 71) ) { v85[1] = 0; v85[0] = 0; v76 = &off_3A8C5CF4; v77 = v102; v84 = (char *)&v76; v61 = *(volatile signed __int32 **)(v102 + 12); if ( v61 ) { _InterlockedIncrement(v61 + 1); v61 = *(volatile signed __int32 **)(v57 + 12); } sub_3A62EBD0(*v58, v61, (char)v76, v77, v78, v79, v80, v81, v82, SHIDWORD(v82), v83, v84, v85[0], v85[1], 0); if ( !v103 ) goto LABEL_85; goto LABEL_81; } sub_3A62CF50( &dword_3A919DD0, (int)v88, *(_DWORD *)(v102 + 16), *(_QWORD *)(v102 + 20), *(_DWORD *)(v102 + 28), *(_DWORD *)(v102 + 32), *(_DWORD *)(v102 + 36), 0, 0); if ( &v90 == (int *)(v57 + 40) ) { v62 = v90; if ( !v90 ) goto LABEL_80; v63 = v92 - v90; if ( (unsigned int)(v92 - v90) >= 0x1000 ) { if ( (unsigned int)(v90 - 4 - *(_DWORD *)(v90 - 4)) >= 0x20 ) goto LABEL_105; v63 += 35; v62 = *(_DWORD *)(v90 - 4); } v86 = v63; sub_3A87B477(v62); goto LABEL_79; } v59 = *(_DWORD *)(v57 + 40); if ( v59 ) { v60 = *(_DWORD *)(v57 + 48) - v59; if ( v60 < 0x1000 ) { LABEL_68: v86 = v60; sub_3A87B477(v59); *(_DWORD *)(v57 + 40) = 0; *(_DWORD *)(v57 + 44) = 0; *(_DWORD *)(v57 + 48) = 0; goto LABEL_69; } if ( (unsigned int)(v59 - 4 - *(_DWORD *)(v59 - 4)) < 0x20 ) { v60 += 35; v59 = *(_DWORD *)(v59 - 4); goto LABEL_68; } LABEL_105: dword_3A8F254C(v87); } LABEL_69: *(_DWORD *)(v57 + 40) = v90; *(_DWORD *)(v57 + 44) = v91; *(_DWORD *)(v57 + 48) = v92; LABEL_79: v90 = 0; v91 = 0; v92 = 0; LABEL_80: if ( v103 ) { LABEL_81: v64 = (int *)(dword_3A949590 ^ dword_3A949594); v65 = Netvars::Weapon::m_iItemDefinitionIndex(v103); v66 = *v64; v86 = *(unsigned __int16 *)v65; v67 = (*(int (__thiscall **)(int *, int))(v66 + 8))(v64, v86); if ( !v67 || (v68 = v67, *(_WORD *)Netvars::Weapon::m_iItemDefinitionIndex(v103) == 31) || *(_DWORD *)(v68 + 204) != 1 ) { sub_3A721E10((int)v58); } } LABEL_85: if ( !*(_BYTE *)(v57 + 71) || (_BYTE)hide_shots && !byte_3A917B8C ) SetupShiftData(&Cheat::Tickbase::g_nTickbase, result, a3); if ( byte_3A94966C ) { sub_3A724860(v87, v88[0], *(__int64 *)&v88[1], v90, v91, v92); byte_3A94966C = 0; } LOBYTE(v86) = v88[0]; sub_3A7B61A0(&dword_3A949670, 0, 0, v86); return result; } REVERSED: bool CBaseCombatWeapon::CanShift( ) { if ( !this ) return false; if ( this->m_iItemDefinitionIndex( ) == 64 || this->m_iItemDefinitionIndex( ) == 31 || this->m_iItemDefinitionIndex( ) == 69 || this->m_iItemDefinitionIndex( ) == 49 ) return false; if ( this->IsKnife( ) ) return false; if ( this->GetWeaponData( )->m_iType == 1 || this->GetWeaponData( )->m_iType == 10 ) return false; return true; } bool CanDoubletap( ) { if ( !g_pSettings->Exploits->g_bEnabled ) return false; CBaseCombatWeapon* m_pWeapon = g_pLocalPlayer->GetActiveWeapon( ).GetHandle( ); if ( !m_pWeapon || !m_pWeapon->CanShift( ) ) return false; if ( m_pWeapon->m_iItemDefinitionIndex( ) == 40 || m_pWeapon->m_iItemDefinitionIndex( ) == 9 ) return false; return true; } float GetShiftTime( ) { float m_flPlayerTime = ( g_pLocalPlayer->m_nTickbase( ) - 1 ) * g_pGameGlobals->m_flIntervalPerTick; if ( !g_pSettings->Exploits->g_bEnabled ) return m_flPlayerTime; if ( ( CanDoubletap( ) && g_pViolanes->Tickbase->g_bLastShift ) || !g_pSettings->Exploits->g_bHideShots ) return m_flPlayerTime; CBaseCombatWeapon* m_pWeapon = g_pLocalPlayer->GetActiveWeapon( ).GetHandle( ); if ( !m_pWeapon || !m_pWeapon->CanShift( ) ) return m_flPlayerTime; int m_nShiftCmds = 0; if ( CanDoubletap( ) ) m_nShiftCmds = ( !g_pViolanes->Tickbase->g_bLastShift ) ? 13 : 0; else m_nShiftCmds = ( g_pSettings->Exploits->g_bHideShots ) ? 7 : 0; return m_flPlayerTime - ( ( m_nShiftCmds + 1 ) * g_pGameGlobals->m_flIntervalPerTick ); } bool CanShiftTickbase( ) { if ( g_pCmd->m_iWeaponSelect || ( g_pLocalPlayer->m_fFlags( ) & FLAGS::PLAYER::AT_CONTROLS ) ) return false; CBaseCombatWeapon* m_pWeapon = g_pLocalPlayer->GetActiveWeapon( ).GetHandle( ); if ( !m_pWeapon ) return false; if ( g_pViolanes->Tickbase->g_bDoubletap ) { if ( ( !( g_pCmd->m_dwButtons & IN_ATTACK ) && m_pWeapon->m_iItemDefinitionIndex( ) != DEFIDX_REVOLVER ) || ( !( g_pCmd->m_dwButtons & IN_ATTACK2 ) && m_pWeapon->m_iItemDefinitionIndex( ) == DEFIDX_REVOLVER ) ) g_pViolanes->Tickbase->g_bDoubletap = false; return false; } if ( m_pWeapon->IsKnife( ) || !m_pWeapon->CanFire( ) ) return false; if ( g_pLocalPlayer->m_flNextAttack( ) > GetShiftTime( ) ) return false; if ( m_pWeapon->m_flNextPrimaryAttack( ) + g_pGameGlobals->m_flIntervalPerTick * 10.f > GetShiftTime( ) ) return false; if ( GetFakelagChokedCmds( ) >= 16 ) return false; if ( m_pWeapon->m_iItemDefinitionIndex( ) != DEFIDX_REVOLVER ) return true; g_pViolanes->Tickbase->g_bLastShift = false; return GetShiftTime( ) >= m_pWeapon->m_flNextSecondaryAttack( ); } void OnProcessPacket( ) { if ( !g_bSendPacket ) return; if ( !g_pSettings->Exploits->g_bHideShots && !g_pViolanes->Tickbase->g_bDoubletap && ( !( g_pCmd->m_dwButtons & IN_ATTACK ) || !CanShiftTickbase( ) ) ) return; CBaseCombatWeapon* m_pWeapon = g_pLocalPlayer->GetActiveWeapon( ).GetHandle( ); if ( !m_pWeapon || !m_pWeapon->CanShift( ) ) { if ( g_pViolanes->Tickbase->g_bRecharge ) g_pViolanes->Tickbase->g_bRecharged = true; return; } int m_nShift = 0; if ( CanDoubletap( ) ) m_nShift = ( !g_pViolanes->Tickbase->g_bRecharge ) ? 13 : 0; else m_nShift = ( g_pSettings->Exploits->g_bHideShots ) ? 7 : 0; g_pViolanes->g_bRecharge = true; Quote Link to comment Share on other sites More sharing options...
Hypopo Posted May 19, 2020 Share Posted May 19, 2020 What where did u get this from Quote Link to comment Share on other sites More sharing options...
Jumanon Posted May 19, 2020 Share Posted May 19, 2020 2 hours ago, Hypopo said: What where did u get this from From YouGame 🤯, he should give some Credits lol Quote Link to comment Share on other sites More sharing options...
dana Posted May 21, 2020 Author Share Posted May 21, 2020 well i am the guy from yougame so :mindblow: Quote Link to comment Share on other sites More sharing options...
Jumanon Posted May 21, 2020 Share Posted May 21, 2020 3 hours ago, dana said: well i am the guy from yougame so :mindblow: ok then nvm😅 Quote Link to comment Share on other sites More sharing options...
PsychoPatu Posted May 21, 2020 Share Posted May 21, 2020 so, what i can do with this code ? Quote Link to comment Share on other sites More sharing options...
7kdz Posted May 21, 2020 Share Posted May 21, 2020 Ok question, is the the code of evo's dt teleport or just regular where it rarely recharges? Quote Link to comment Share on other sites More sharing options...
violanes Posted May 21, 2020 Share Posted May 21, 2020 (edited) 12 hours ago, dana said: well i am the guy from yougame so :mindblow: wrong 🙂 can u pm my discord to prove that ure orig author, my ds violanes#0592? 🤡 Edited May 21, 2020 by violanes Quote Link to comment Share on other sites More sharing options...
dana Posted May 24, 2020 Author Share Posted May 24, 2020 On 5/21/2020 at 9:06 PM, 7kdz said: Ok question, is the the code of evo's dt teleport or just regular where it rarely recharges? teleport Quote Link to comment Share on other sites More sharing options...
B1GHVHER Posted May 25, 2020 Share Posted May 25, 2020 owo Quote Link to comment Share on other sites More sharing options...
PsychoPatu Posted May 25, 2020 Share Posted May 25, 2020 what i can do with the dt code? Quote Link to comment Share on other sites More sharing options...
dana Posted May 25, 2020 Author Share Posted May 25, 2020 add it to ur cheat,its the 1 tick dt but without teleport Quote Link to comment Share on other sites More sharing options...
PsychoPatu Posted May 28, 2020 Share Posted May 28, 2020 how i can add? Quote Link to comment Share on other sites More sharing options...
boxxes Posted October 4, 2020 Share Posted October 4, 2020 On 5/28/2020 at 4:30 PM, PsychoPatu said: how i can add? Hella late response, but you MUST LEARN C++ BEFORE MAKING YOUR OWN CHEAT. Quote Link to comment Share on other sites More sharing options...
Mat3 Posted October 6, 2020 Share Posted October 6, 2020 On 5/19/2020 at 9:28 AM, dana said: PSEUDOCODE Cool Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.