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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rbp
push rdi
push r14
lea rbp, [rsp - 0x830]
sub rsp, 0x930
mov rax, qword [0x14002c010]
xor rax, rsp
mov qword [rbp + 0x820], rax
lea rcx, str.cs2_external_esp
call qword [sym.imp.KERNEL32.dll_SetConsoleTitleA]
mov ecx, 0x38
call fcn.14001f730
mov qword [rsp + 0x60], 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 [0x14002d000]
mov qword [0x14002cff8], rcx
mov qword [0x14002d000], rax
test rbx, rbx
je 0x14001e482
mov eax, 0xffffffff
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14001e482
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [rbx + 0xc], eax
cmp eax, 1
jne 0x14001e482
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + 8]
call fcn.140002c60
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._cs2__Waiting_for_cs2.exe...
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
movabs rdi, 0x7fffffffc46535fe
movabs rsi, 0x7fffffffffffffff
nop
mov rbx, qword [0x14002cff8]
call fcn.14001ec50
mov dword [rbx], eax
test eax, eax
jne 0x14001e53b
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14001e4f0
imul rax, rax, 0x64
jmp 0x14001e50e
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, rdi
jg 0x14001e52a
add rax, 0x3b9aca00
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x60], rax
call fcn.14001eb20
jmp 0x14001e4c0
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x60], rsi
call fcn.14001eb20
jmp 0x14001e4c0
mov r8d, eax
xor edx, edx
mov ecx, 0x1fffff
call qword [sym.imp.KERNEL32.dll_OpenProcess]
lea r9, [rbp - 0x30]
mov dword [rsp + 0x20], 2
mov rcx, rax
mov qword [rbx + 8], rax
mov r8d, 0x7f8
lea rdx, [rbp + 0x20]
call qword [sym.imp.KERNEL32.dll_K32EnumProcessModulesEx]
mov rdx, qword [rbp + 0x20]
lea r8, [rbp - 0x28]
mov rcx, qword [rbx + 8]
mov r9d, 0x18
mov qword [rbx + 0x18], rdx
call qword [sym.imp.KERNEL32.dll_K32GetModuleInformation]
mov eax, dword [rbp - 0x20]
mov edx, dword [rbx]
mov qword [rbx + 0x20], rax
call fcn.14001ee80
mov qword [rbx + 0x10], rax
lea rdx, str._cs2__Attached_to_cs2.exe_n
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._config__Reading_offsets_from_configuration.
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
call fcn.140015220
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._config__Sucessfully_read_offsets_file_n
test al, al
jne 0x14001e600
lea rdx, str._config__Error_reading_offsets_file__reseting_to_the_default_state_n
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
nop word [rax + rax]
mov rcx, qword [0x14002cff8]
lea rdx, [rsp + 0x68]
call fcn.14001ef40
movups xmm0, xmmword [rax]
movq rax, xmm0
movups xmmword [0x14002cfd8], xmm0
test rax, rax
jne 0x14001e6d7
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14001e667
imul rax, rax, 0x64
jmp 0x14001e685
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, rdi
jg 0x14001e697
add rax, 0x3b9aca00
mov qword [rsp + 0x60], rax
jmp 0x14001e69c
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x60]
call fcn.14001eb20
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._cs2__Failed_to_find_module_client.dll__waiting_for_the_game_to_load_it...
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
cmp qword [0x14002cfd8], 0
je 0x14001e620
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._overlay__Waiting_to_focus_game_to_create_the_overlay...
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._overlay__Make_sure_your_game_is_in__Full_Screen_Windowed_
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rbx, qword [0x14002cff8]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x10]
je 0x14001e7d0
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14001e752
imul rax, rax, 0x64
jmp 0x14001e770
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, rdi
jg 0x14001e782
add rax, 0x3b9aca00
mov qword [rsp + 0x60], rax
jmp 0x14001e787
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x60]
call fcn.14001eb20
mov rbx, qword [0x14002cff8]
mov edx, dword [rbx]
call fcn.14001ee80
mov qword [rbx + 0x10], rax
mov edx, 1
mov rcx, qword [0x14002cff8]
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.USER32.dll_ShowWindow]
mov rbx, qword [0x14002cff8]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, qword [rbx + 0x10]
jne 0x14001e734
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._overlay__Creating_window_overlay...
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [0x14002cff8]
lea rax, [0x14001e190]
xor r14d, r14d
mov dword [rbp - 0x80], 0x50
xorps xmm0, xmm0
mov qword [rbp - 0x70], r14
movdqa xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x38], r14
mov qword [rbp - 0x78], rax
lea edx, [r14 - 6]
mov dword [rbp - 0x7c], 3
mov qword [rbp - 0x50], r14
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.USER32.dll_GetWindowLongA]
movsxd rcx, eax
lea rbx, [0x140024af8]
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 [0x14002cff8]
lea rdx, [0x14002cfe8]
mov rcx, qword [rcx + 0x10]
call qword [sym.imp.USER32.dll_GetClientRect]
mov r9d, dword [0x14002cfe8]
lea r8, str.cs2_external_esp
mov ecx, dword [0x14002cff4]
mov rdx, rbx
mov eax, dword [0x14002cff0]
add ecx, r9d
mov qword [rsp + 0x58], r14
sub eax, r9d
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x38], ecx
mov ecx, 0x800a8
mov dword [rsp + 0x30], eax
mov eax, dword [0x14002cfec]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], r9d
mov r9d, 0x80000000
call qword [sym.imp.USER32.dll_CreateWindowExA]
mov rdi, rax
test rax, rax
je 0x14001eab8
xor r9d, r9d
mov dword [rsp + 0x30], 3
mov dword [rsp + 0x28], r14d
xor r8d, r8d
mov rcx, rdi
mov dword [rsp + 0x20], r14d
lea rdx, [r9 - 1]
call qword [sym.imp.USER32.dll_SetWindowPos]
mov edx, 1
mov rcx, rdi
call qword [sym.imp.USER32.dll_ShowWindow]
xor r9d, r9d
lea rcx, [rbp - 0x10]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
je 0x14001e9e9
mov qword [rsp + 0x950], r15
movabs r14, 0x7ffffffffff0bdbe
nop word [rax + rax]
mov ecx, 0x23
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jb 0x14001e9e1
lea rcx, [rbp - 0x10]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp - 0x10]
call qword [sym.imp.USER32.dll_DispatchMessageA]
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14001e988
imul rax, rax, 0x64
jmp 0x14001e9a6
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jg 0x14001e9b8
add rax, 0xf4240
mov qword [rsp + 0x60], rax
jmp 0x14001e9bd
mov qword [rsp + 0x60], rsi
lea rcx, [rsp + 0x60]
call fcn.14001eb20
xor r9d, r9d
lea rcx, [rbp - 0x10]
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_GetMessageA]
test eax, eax
jne 0x14001e940
mov r15, qword [rsp + 0x950]
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]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._overlay__Destroying_overlay_window.
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [0x14002d008]
call qword [sym.imp.GDI32.dll_DeleteDC]
mov rcx, qword [0x14002d010]
call qword [sym.imp.GDI32.dll_DeleteObject]
mov rcx, rdi
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._cs2__Deataching_from_process
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [0x14002cff8]
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
lea rdx, str._cs2__Press_any_key_to_close
call fcn.140006940
lea rdx, [0x140006b10]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
call qword [sym.imp.MSVCP140.dll_public:_int___cdecl_std::basic_istream_char__struct_std::char_traits_char__::get_void____ptr64]
mov eax, 1
mov rcx, qword [rbp + 0x820]
xor rcx, rsp
call fcn.14001f710
lea r11, [rsp + 0x930]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret