summaryrefslogtreecommitdiff
path: root/internal_rewrite/simulate.cpp
diff options
context:
space:
mode:
authorJustSomePwner <crotchyalt@gmail.com>2018-09-01 14:32:14 +0200
committerJustSomePwner <crotchyalt@gmail.com>2018-09-01 14:32:14 +0200
commite2350a9ef73817f1f364b6223f9d4d9d5c6235a8 (patch)
tree9c752b5e0f04e638fba947fefa0fd00badf3f92b /internal_rewrite/simulate.cpp
parent7afd0eaf52abe9e0bc8c8b5e986e90267f83b4e2 (diff)
parentbeb5515757c0e653adc33f181184fe3791ca0a6b (diff)
Merge remote-tracking branch 'origin/master'
Diffstat (limited to 'internal_rewrite/simulate.cpp')
-rw-r--r--internal_rewrite/simulate.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/internal_rewrite/simulate.cpp b/internal_rewrite/simulate.cpp
index 2e47483..798f98f 100644
--- a/internal_rewrite/simulate.cpp
+++ b/internal_rewrite/simulate.cpp
@@ -7,7 +7,12 @@
void __fastcall hooks::simulate( void* ecx, void* edx ) {
static auto simulate_o = g_csgo.m_engine_vgui->get_old_function< decltype( &hooks::simulate ) >( 39 );
+#ifdef HEADER_MODULE
+ static auto ret_addr = g_header.patterns.simulate_retaddr - 0x81;
+#else
static auto ret_addr = pattern::first_code_match< void* >( g_csgo.m_engine.dll( ), "8B CE 6A FF 8B 06", -0x81 );
+#endif
+
if( _ReturnAddress( ) == ret_addr ) {
g_ctx.m_stage = FRAME_RENDER_START;
g_cheat.m_visuals.world_modulate( );
@@ -28,8 +33,12 @@ void __fastcall hooks::simulate( void* ecx, void* edx ) {
g_cheat.m_extra.no_smoke( );
if( g_settings.misc.no_smoke ) {
+#ifdef HEADER_MODULE
+ static auto smoke_count = g_header.patterns.smoke_count;
+#else
static auto smoke_count = pattern::first_code_match( g_csgo.m_chl.dll( ),
xors( "55 8B EC 83 EC 08 8B 15 ? ? ? ? 0F 57 C0" ) );
+#endif
**reinterpret_cast< int** >( smoke_count + 0x8 ) = 0;
}