Function at 0x140024460
Capabilities:
Enumerate process modules
Log keystrokes via polling
Set console window title

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x1050]
mov eax, 0x1150
call fcn.140027c60
sub rsp, rax
mov rax, qword [0x140068080]
xor rax, rsp
mov qword [rbp + 0x1040], rax
lea rcx, str.cs2_external_esp
xor r15d, r15d
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
lea rsi, [0x140069ae0]
mov rcx, rsi
lea rdx, str._info__Github_Repository:_https:__github.com_IMXNOOBX_cs2_external_esp
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
lea rdx, str._info__Unknowncheats_thread:_https:__www.unknowncheats.me_forum_counter_strike_2_releases_600259_cs2_external_esp.html_n
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
lea ecx, [r15 + 0x38]
call fcn.140027548
mov qword [rbp - 0x30], rax
lea rcx, vtable.std::_Ref_count_obj2_class_pProcess_.0
xorps xmm0, xmm0
xor edx, edx
movups xmmword [rax], xmm0
mov qword [rax], rcx
lea rcx, [rax + 0x10]
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
movups xmmword [rcx], xmm0
movups xmmword [rcx + 0x10], xmm0
mov qword [rcx + 0x20], rdx
mov rbx, qword [0x14006b768]
mov qword [0x14006b760], rcx
mov qword [0x14006b768], rax
test rbx, rbx
je 0x140024564
mov eax, 0xffffffff
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x140024564
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x140024564
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
lea rdx, str._config__Reading_configuration.
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
call fcn.140020d10
lea rdx, str._updater__Sucessfully_read_configuration_file_n
mov rcx, rsi
test al, al
jne 0x140024595
lea rdx, str._updater__Error_reading_config_file__reseting_to_the_default_state_n
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
call fcn.140003d60
lea rdx, str._cs2__Waiting_for_cs2.exe...
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
movabs rdi, 0x7fffffffc46535fe
movabs r14, 0x7fffffffffffffff
mov rbx, qword [0x14006b760]
call fcn.140025420
mov dword [rbx], eax
test eax, eax
je 0x140024695
mov ecx, eax
call fcn.1400250a0
mov qword [rbx + 8], rax
lea rcx, [rax + 1]
test rcx, 0xfffffffffffffffe
jne 0x1400246fe
lea rdx, str._cheat__Handle_Hijack_failed__falling_back_to_OpenProcess_method.
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
call fcn.140025420
mov dword [rbx], eax
test eax, eax
je 0x14002468b
mov r8d, eax
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
lea r9, [rbp - 0x28]
mov dword [rsp + 0x20], 2
mov rcx, rax
mov qword [rbx + 8], rax
mov r8d, 0x7f8
lea rdx, [rbp + 0x40]
call qword [sym.imp.KERNEL32.dll_K32EnumProcessModulesEx]
mov rdx, qword [rbp + 0x40]
lea r8, [rbp - 0x20]
mov rcx, qword [rbx + 8]
mov r9d, 0x18
mov qword [rbx + 0x18], rdx
call qword [sym.imp.KERNEL32.dll_K32GetModuleInformation]
mov eax, dword [rbp - 0x18]
mov edx, dword [rbx]
mov qword [rbx + 0x20], rax
call fcn.140025650
mov qword [rbx + 0x10], rax
mov al, 1
jmp 0x14002468d
xor al, al
test al, al
jne 0x140024751
call fcn.140026d70
mov rbx, rax
call fcn.140026d54
cmp rbx, 0x989680
jne 0x1400246b1
imul rax, rax, 0x64
jmp 0x1400246cf
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, rdi
jg 0x1400246ec
add rax, 0x3b9aca00
lea rcx, [rbp - 0x30]
mov qword [rbp - 0x30], rax
call fcn.140024f70
jmp 0x1400245d2
lea rcx, [rbp - 0x30]
mov qword [rbp - 0x30], r14
call fcn.140024f70
jmp 0x1400245d2
lea r9, [rbp - 0x24]
mov dword [rsp + 0x20], 2
mov r8d, 0x7f8
lea rdx, [rbp + 0x840]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_K32EnumProcessModulesEx]
mov rdx, qword [rbp + 0x840]
lea r8, [rbp - 8]
mov rcx, qword [rbx + 8]
mov r9d, 0x18
mov qword [rbx + 0x18], rdx
call qword [sym.imp.KERNEL32.dll_K32GetModuleInformation]
mov eax, dword [rbp]
mov edx, dword [rbx]
mov qword [rbx + 0x20], rax
call fcn.140025650
mov qword [rbx + 0x10], rax
lea rdx, str._cs2__Attached_to_cs2.exe_n
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
lea rdx, str._updater__Reading_offsets_from_file_offsets.json.
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
call fcn.140005060
lea rdx, str._updater__Sucessfully_read_offsets_file_n
mov rcx, rsi
test al, al
jne 0x140024799
lea rdx, str._updater__Error_reading_offsets_file__reseting_to_the_default_state_n
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
nop word [rax + rax]
mov rcx, qword [0x14006b760]
lea r8, str.client.dll
lea rdx, [rsp + 0x60]
call fcn.140025710
mov rcx, qword [0x14006b760]
lea r8, str.engine2.dll
lea rdx, [rsp + 0x70]
movups xmm0, xmmword [rax]
movups xmmword [0x14006b720], xmm0
call fcn.140025710
movups xmm0, xmmword [rax]
mov rax, qword [0x14006b720]
movups xmmword [0x14006b710], xmm0
test rax, rax
je 0x14002480a
movq rcx, xmm0
test rcx, rcx
jne 0x140024887
call fcn.140026d70
mov rbx, rax
call fcn.140026d54
cmp rbx, 0x989680
jne 0x140024826
imul rax, rax, 0x64
jmp 0x140024844
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, rdi
jg 0x140024855
add rax, 0x3b9aca00
mov qword [rbp - 0x30], rax
jmp 0x140024859
mov qword [rbp - 0x30], r14
lea rcx, [rbp - 0x30]
call fcn.140024f70
lea rdx, str._cs2__Failed_to_find_module_client.dll_engine2.dll__waiting_for_the_game_to_load_it...
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
mov rax, qword [0x14006b720]
mov rcx, qword [0x14006b710]
test rax, rax
je 0x1400247b0
test rcx, rcx
je 0x1400247b0
mov rdx, qword [0x140068cc8]
lea r8, [rbp - 0x30]
add rdx, rcx
mov qword [rbp - 0x30], r15
mov rcx, qword [0x14006b760]
mov r9d, 8
mov qword [rsp + 0x20], r15
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movsxd rax, dword [0x140068d08]
mov rcx, rsi
cmp qword [rbp - 0x30], rax
je 0x1400248f7
lea rdx, str._cs2__Build_number_doesnt_match__the_game_has_been_updated_and_this_esp_most_likely_wont_work.
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
mov rcx, rsi
lea rdx, str._warn__If_the_esp_doesnt_work__consider_updating_offsets_manually_in_the_file_offsets.json
jmp 0x1400248fe
lea rdx, str._cs2__Offsets_seem_to_be_up_to_date__have_fun_
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
lea rdx, str._overlay__Waiting_to_focus_game_to_create_the_overlay...
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
lea rdx, str._overlay__Make_sure_your_game_is_in__Full_Screen_Windowed_
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
mov rbx, qword [0x14006b760]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x10]
je 0x1400249e7
call fcn.140026d70
mov rbx, rax
call fcn.140026d54
cmp rbx, 0x989680
jne 0x14002496c
imul rax, rax, 0x64
jmp 0x14002498a
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, rdi
jg 0x14002499b
add rax, 0x3b9aca00
mov qword [rbp - 0x30], rax
jmp 0x14002499f
mov qword [rbp - 0x30], r14
lea rcx, [rbp - 0x30]
call fcn.140024f70
mov rbx, qword [0x14006b760]
mov edx, dword [rbx]
call fcn.140025650
mov qword [rbx + 0x10], rax
mov edx, 1
mov rcx, qword [0x14006b760]
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rbx, qword [0x14006b760]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x10]
jne 0x140024950
lea rdx, str._overlay__Creating_window_overlay...
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
mov rcx, qword [0x14006b760]
lea rax, [0x140024270]
xorps xmm0, xmm0
mov qword [rbp - 0x70], r15
movdqa xmmword [rbp - 0x60], xmm0
mov edx, 0xfffffffa
mov qword [rbp - 0x38], r15
mov dword [rbp - 0x80], 0x50
mov qword [rbp - 0x78], rax
mov dword [rbp - 0x7c], 3
mov qword [rbp - 0x50], r15
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.USER32.dll_GetWindowLongA]
movsxd rcx, eax
lea rbx, [0x14005db48]
mov qword [rbp - 0x68], rcx
lea rcx, [rbp - 0x80]
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x40], rbx
call qword [sym.imp.USER32.dll_RegisterClassExA]
mov rcx, qword [0x14006b760]
lea rdx, [0x14006b730]
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.USER32.dll_GetClientRect]
mov edx, dword [0x14006b730]
lea r8, str.cs2_external_esp
mov ecx, dword [0x14006b73c]
mov r9d, 0x80000000
mov eax, dword [0x14006b738]
add ecx, edx
mov qword [rsp + 0x58], r15
sub eax, edx
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x48], r15
mov qword [rsp + 0x40], r15
mov dword [rsp + 0x38], ecx
mov ecx, 0x800a8
mov dword [rsp + 0x30], eax
mov eax, dword [0x14006b734]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], edx
mov rdx, rbx
call qword [sym.imp.USER32.dll_CreateWindowExA]
mov rdi, rax
test rax, rax
je 0x140024d3b
xor r9d, r9d
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], r15d
xor r8d, r8d
mov rcx, rdi
mov dword [rsp + 0x20], r15d
lea rdx, [r9 - 1]
call qword [sym.imp.USER32.dll_SetWindowPos]
mov edx, 1
mov rcx, rdi
call qword [sym.imp.USER32.dll_ShowWindow]
lea rdx, str._n_settings__In_Game_keybinds:_n_t_F5__enable_disable_Team_ESP_n_t_F6__enable_disable_automatic_updates_n_t_F7__enable_disable_extra_flags_n_t_end__Unload_esp._n
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
lea rdx, str._settings__Make_sure_you_check_the_config_for_additional_settings_
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
xor r9d, r9d
lea rcx, [rbp + 0x10]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x140024c98
movabs r15, 0x7ffffffffff0bdbe
mov ecx, 0x23
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140024c98
mov ecx, 0x74
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140024bac
cmp byte [0x14006b70a], 0
sete byte [0x14006b70a]
call fcn.140022550
mov edx, 0x64
mov ecx, 0x2bc
call qword [sym.imp.KERNEL32.dll_Beep]
mov ecx, 0x75
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140024bdf
cmp byte [0x14006b708], 0
sete byte [0x14006b708]
call fcn.140022550
mov edx, 0x64
mov ecx, 0x2bc
call qword [sym.imp.KERNEL32.dll_Beep]
mov ecx, 0x76
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140024c12
cmp byte [0x14006b709], 0
sete byte [0x14006b709]
call fcn.140022550
mov edx, 0x64
mov ecx, 0x2bc
call qword [sym.imp.KERNEL32.dll_Beep]
lea rcx, [rbp + 0x10]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 0x10]
call qword [sym.imp.USER32.dll_DispatchMessageA]
call fcn.140026d70
mov rbx, rax
call fcn.140026d54
cmp rbx, 0x989680
jne 0x140024c42
imul rax, rax, 0x64
jmp 0x140024c60
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r15
jg 0x140024c71
add rax, 0xf4240
mov qword [rbp - 0x30], rax
jmp 0x140024c75
mov qword [rbp - 0x30], r14
lea rcx, [rbp - 0x30]
call fcn.140024f70
xor r9d, r9d
lea rcx, [rbp + 0x10]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
jne 0x140024b65
mov edx, 0x64
mov ecx, 0x2bc
call qword [sym.imp.KERNEL32.dll_Beep]
mov edx, 0x64
mov ecx, 0x2bc
call qword [sym.imp.KERNEL32.dll_Beep]
lea rdx, str._overlay__Destroying_overlay_window.
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
mov rcx, qword [0x14006b770]
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, qword [0x14006b778]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, rdi
call qword [sym.imp.USER32.dll_DestroyWindow]
lea rdx, str._cs2__Deataching_from_process
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
mov rcx, qword [0x14006b760]
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rdx, str._cs2__Press_any_key_to_close
mov rcx, rsi
call fcn.14000b5b0
mov rcx, rax
call fcn.14000b870
call fcn.140024d70
mov eax, 1
mov rcx, qword [rbp + 0x1040]
xor rcx, rsp
call fcn.140027520
lea r11, [rsp + 0x1150]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret