summaryrefslogtreecommitdiff
path: root/internal_rewrite/is_paused.cpp
blob: 9cb0ef84fd7a2b590f8824783716071e77d50632 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "mem.hpp"
#include "hooks.hpp"

bool __fastcall hooks::is_paused( void* ecx_, void* edx_ ) {
	static auto interpolation_addr = pattern::first_code_match( g_csgo.m_chl.dll( ), xors( "84 C0 74 07 C6 05 ? ? ? ? ? 8B 0D" ) );
	static auto is_paused_o = g_csgo.m_engine->get_old_function< decltype( &is_paused ) >( 90 );

	stack_t stack( get_baseptr( ) );
	uintptr_t return_address = stack.return_address( );

	if( g_settings.rage.enabled && return_address == interpolation_addr ) {
		return true;
	}

	return is_paused_o( ecx_, 0 );
}