Function at 0x140001f60
Capabilities:
Link many functions at runtime

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0xd0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
mov rax, qword [0x14004a010]
xor rax, rsp
mov qword [rsp + 0xa0], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.OpenProcess
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab10], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.VirtualFreeEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab30], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.VirtualQueryEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab58], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.VirtualAllocEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab40], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.VirtualProtectEx
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab38], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.Process32First
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab60], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.Process32Next
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab50], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.Module32First
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab28], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.Module32Next
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab18], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, str.CreateToolhelp32Snapshot
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab20], rax
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov rcx, rax
lea rdx, [0x14003d780]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x14004ab48], rax
call fcn.140002fd0
test al, al
jne 0x140002139
mov eax, 1
jmp 0x1400029a9
mov dword [0x14004a740], 0x50
mov dword [0x14004a744], 0x40
lea rax, section..text
mov qword [0x14004a748], rax
xor ebp, ebp
mov qword [0x14004a750], rbp
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov qword [0x14004a758], rax
xorps xmm0, xmm0
movdqa xmmword [0x14004a760], xmm0
xorps xmm1, xmm1
movdqa xmmword [0x14004a770], xmm1
lea rbx, str.Cheat_Menu_Class
mov qword [0x14004a780], rbx
mov qword [0x14004a788], rbp
lea rcx, [0x14004a740]
call qword [sym.imp.USER32.dll_RegisterClassExA]
mov qword [rsp + 0x58], rbp
mov rax, qword [0x14004a758]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], rbp
mov qword [rsp + 0x40], rbp
mov dword [rsp + 0x38], 0x1d6
mov dword [rsp + 0x30], 0x1bc
mov dword [rsp + 0x28], 0x64
mov dword [rsp + 0x20], 0x64
mov r9d, 0x80000000
lea r8, str.Cheat_Menu
mov rdx, rbx
xor ecx, ecx
call qword [sym.imp.USER32.dll_CreateWindowExA]
mov qword [0x14004a730], rax
lea edx, [rbp + 0xa]
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [0x14004a730]
call qword [sym.imp.USER32.dll_UpdateWindow]
nop
lea ecx, [rbp + 0x20]
call qword [sym.imp.d3d9.dll_Direct3DCreate9]
mov rcx, rax
mov qword [0x14004a728], rax
test rax, rax
je 0x1400022d2
mov qword [0x14004a790], rbp
mov qword [0x14004a79c], rbp
mov dword [0x14004a7a4], ebp
mov qword [0x14004a7ac], rbp
mov dword [0x14004a7b4], ebp
mov qword [0x14004a7c4], rbp
mov dword [0x14004a7b8], 1
mov dword [0x14004a7a8], 1
mov dword [0x14004a798], ebp
mov dword [0x14004a7bc], 1
mov dword [0x14004a7c0], 0x50
mov dword [0x14004a7cc], 1
mov rax, qword [rax]
lea rdx, [0x14004a738]
mov qword [rsp + 0x30], rdx
lea rdx, [0x14004a790]
mov qword [rsp + 0x28], rdx
mov dword [rsp + 0x20], 0x40
mov r9, qword [0x14004a730]
xor edx, edx
lea r8d, [rbp + 1]
call qword [rax + 0x80]
nop
call fcn.140001240
cmp byte [0x14004a044], 0
je 0x1400025b9
movabs rsi, 0x311cdad160000
movabs r15, 0x7fffffffff67697f
movabs r12, 0x7fffffffffffffff
movabs r14, 0x112e0be826d694b3
movss xmm7, dword [0x140043a64]
movsd xmm6, qword [0x140043ad0]
nop dword [rax]
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x70]
call qword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x140002375
nop
lea rcx, [rsp + 0x70]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rsp + 0x70]
call qword [sym.imp.USER32.dll_DispatchMessageA]
mov dword [rsp + 0x20], 1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, [rsp + 0x70]
call qword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
jne 0x140002340
mov rax, qword [0x14004aab8]
test rax, rax
je 0x14000238a
mov rcx, qword [rax + 0xa0]
jmp 0x14000238d
mov rcx, rbp
cmp qword [rcx + 0x18], 0
jne 0x1400023b0
test rax, rax
je 0x1400023b0
mov rcx, qword [rax + 0xa0]
test rcx, rcx
je 0x1400023b0
cmp qword [rcx], 0
je 0x1400023b0
call fcn.14002edc0
call fcn.14002f7b0
call fcn.14000acf0
nop
call fcn.1400014b0
nop
call fcn.14000ca20
mov rcx, qword [0x14004a738]
mov rax, qword [rcx]
xor r8d, r8d
lea edx, [r8 + 7]
call qword [rax + 0x1c8]
mov rcx, qword [0x14004a738]
mov rax, qword [rcx]
xor r8d, r8d
lea edx, [r8 + 0x1b]
call qword [rax + 0x1c8]
mov rcx, qword [0x14004a738]
mov rax, qword [rcx]
xor r8d, r8d
mov edx, 0xae
call qword [rax + 0x1c8]
mov rcx, qword [0x14004a738]
mov rax, qword [rcx]
mov dword [rsp + 0x30], ebp
movss dword [rsp + 0x28], xmm7
mov dword [rsp + 0x20], 0xff000000
mov r9d, 3
xor r8d, r8d
xor edx, edx
call qword [rax + 0x158]
mov rcx, qword [0x14004a738]
mov rax, qword [rcx]
call qword [rax + 0x148]
test eax, eax
js 0x140002489
call fcn.14000ce10
mov rax, qword [0x14004aab8]
mov rax, qword [rax + 0x48a0]
mov rcx, qword [rax]
add rcx, 0x48
mov rax, rbp
cmp byte [rcx], bpl
cmovne rax, rcx
mov rcx, rax
call fcn.14002e810
mov rcx, qword [0x14004a738]
mov rax, qword [rcx]
call qword [rax + 0x150]
mov rcx, qword [0x14004a738]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rbp
xor r9d, r9d
xor r8d, r8d
xor edx, edx
call qword [rax + 0x88]
cmp eax, 0x88760868
jne 0x1400024c7
mov rcx, qword [0x14004a738]
mov rax, qword [rcx]
call qword [rax + 0x18]
cmp eax, 0x88760869
jne 0x1400024c7
call fcn.140001180
nop
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 0x1400024e5
imul rax, rax, 0x64
jmp 0x140002500
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r15
lea rdi, [rax + 0x989680]
jl 0x140002510
mov rdi, r12
nop
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 0x14000252e
imul rbx, rax, 0x64
jmp 0x14000254a
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rbx, [rax + rcx]
cmp rdi, rbx
je 0x1400025ac
jl 0x1400025ac
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
imul rcx, rax, 0x64
mov rax, rdi
sub rax, rbx
xorps xmm0, xmm0
cvtsi2sd xmm0, rax
comisd xmm0, xmm6
jbe 0x140002574
add rcx, rsi
jmp 0x140002577
add rcx, rax
mov rax, r14
imul rcx
sar rdx, 0x1a
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov qword [rsp + 0x60], rdx
imul eax, edx, 0x3b9aca00
sub ecx, eax
mov dword [rsp + 0x68], ecx
lea rcx, [rsp + 0x60]
call qword [sym.imp.MSVCP140.dll__Thrd_sleep]
jmp 0x140002510
cmp byte [0x14004a044], 0
jne 0x140002320
mov rcx, qword [0x14004aab8]
test rcx, rcx
je 0x1400025ce
mov rdi, qword [rcx + 0xa0]
jmp 0x1400025d1
mov rdi, rbp
lea rsi, [rcx + 8]
test rcx, rcx
je 0x14000264b
mov rbx, qword [rcx + 0xa0]
test rbx, rbx
je 0x14000264b
cmp qword [rbx], 0
je 0x14000264b
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x140002609
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x10]
mov qword [rbx + 8], rbp
mov rcx, qword [0x14004aab8]
mov rdx, qword [rbx + 0x10]
test rdx, rdx
je 0x140002626
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x10]
mov qword [rbx + 0x10], rbp
mov rcx, qword [0x14004aab8]
mov rdx, qword [rbx + 0x18]
test rdx, rdx
je 0x14000264b
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x10]
mov qword [rbx + 0x18], rbp
mov rcx, qword [0x14004aab8]
mov rax, qword [rcx + 0x58]
mov qword [rax + 8], rbp
mov rdx, qword [rdi]
test rdx, rdx
je 0x140002663
mov rax, qword [rdx]
mov rcx, rdx
call qword [rax + 0x10]
mov rcx, qword [0x14004aab8]
mov qword [rsi + 0x88], rbp
mov qword [rsi + 0x98], rbp
test rcx, rcx
je 0x14000267c
dec dword [rcx + 0xf4]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rax, qword [0x14004aab8]
test rax, rax
je 0x14000269a
mov rbx, qword [rax + 0x98]
jmp 0x14000269d
mov rbx, rbp
lea rdi, [rax + 8]
mov rcx, qword [rbx + 0x30]
test rcx, rcx
je 0x1400026b7
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rax, qword [0x14004aab8]
mov qword [rdi + 0x80], rbp
mov qword [rdi + 0x90], rbp
test rax, rax
je 0x1400026d0
dec dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov rbx, qword [0x14004aab8]
mov qword [0x14004aab8], rbx
call fcn.140008ee0
mov qword [0x14004aab8], rbp
test rbx, rbx
je 0x14000271c
mov rcx, rbx
call fcn.14001e050
mov rax, qword [0x14004aab8]
test rax, rax
je 0x140002712
dec dword [rax + 0xf4]
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
nop
mov rcx, qword [0x14004a738]
test rcx, rcx
je 0x140002735
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x14004a738], rbp
mov rcx, qword [0x14004a728]
test rcx, rcx
je 0x14000274e
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [0x14004a728], rbp
mov rcx, qword [0x14004a730]
call qword [sym.imp.USER32.dll_DestroyWindow]
mov rdx, qword [0x14004a758]
mov rcx, qword [0x14004a780]
call qword [sym.imp.USER32.dll_UnregisterClassA]
cmp qword [0x14004aa98], 0
je 0x1400027bf
lea rcx, [0x14004aa68]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004aa98]
mov rcx, qword [0x14004aa68]
call qword [0x14004ab30]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004aa90]
mov rcx, qword [0x14004aa68]
call qword [0x14004ab30]
cmp qword [0x14004a990], 0
je 0x1400027f2
lea rcx, [0x14004a960]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004a990]
mov rcx, qword [0x14004a960]
call qword [0x14004ab30]
cmp qword [0x14004a938], 0
je 0x140002825
lea rcx, [0x14004a908]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004a938]
mov rcx, qword [0x14004a908]
call qword [0x14004ab30]
cmp qword [0x14004a9d8], 0
je 0x140002858
lea rcx, [0x14004a9a8]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004a9d8]
mov rcx, qword [0x14004a9a8]
call qword [0x14004ab30]
cmp qword [0x14004aa10], 0
je 0x14000288b
lea rcx, [0x14004a9e0]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004aa10]
mov rcx, qword [0x14004a9e0]
call qword [0x14004ab30]
cmp qword [0x14004a880], 0
je 0x1400028be
lea rcx, [0x14004a850]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004a880]
mov rcx, qword [0x14004a850]
call qword [0x14004ab30]
cmp qword [0x14004aa48], 0
je 0x1400028f1
lea rcx, [0x14004aa18]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004aa48]
mov rcx, qword [0x14004aa18]
call qword [0x14004ab30]
cmp qword [0x14004a810], 0
je 0x140002941
lea rcx, [0x14004a7e0]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004a810]
mov rcx, qword [0x14004a7e0]
call qword [0x14004ab30]
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004a808]
mov rcx, qword [0x14004a7e0]
call qword [0x14004ab30]
cmp qword [0x14004a8f0], 0
je 0x140002974
lea rcx, [0x14004a8c0]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004a8f0]
mov rcx, qword [0x14004a8c0]
call qword [0x14004ab30]
cmp qword [0x14004a848], 0
je 0x1400029a7
lea rcx, [0x14004a818]
call fcn.140001ea0
mov r9d, 0x8000
xor r8d, r8d
mov rdx, qword [0x14004a848]
mov rcx, qword [0x14004a818]
call qword [0x14004ab30]
xor eax, eax
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.14003b600
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r12
ret