Function at 0x140036150
Capabilities:
Terminate process

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
movaps xmmword [rax - 0x18], xmm6
mov rax, qword [0x14004c010]
xor rax, rsp
mov qword [rbp + 0x3f], rax
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 0x14003619f
imul rax, rax, 0x64
jmp 0x1400361bd
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
imul rcx, rcx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
movabs rcx, 0x7ffffffffff0bdbf
lea rdi, [rax + 0xf4240]
cmp rax, rcx
jl 0x1400361dd
movabs rdi, 0x7fffffffffffffff
movsd xmm6, qword [0x140044d28]
movabs rsi, 0x311cdad160000
movabs r14, 0x112e0be826d694b3
nop dword [rax]
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 0x14003621e
imul rbx, rax, 0x64
jmp 0x14003623f
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
mov rbx, rax
imul rax, rcx, 0x3b9aca00
add rbx, rax
cmp rbx, rdi
jge 0x1400362b3
call qword [sym.imp.MSVCP140.dll__Xtime_get_ticks]
imul rcx, rax, 0x64
xorps xmm0, xmm0
mov rax, rdi
sub rax, rbx
lea r8, [rcx + rsi]
cvtsi2sd xmm0, rax
comisd xmm0, xmm6
seta r9b
test r9b, r9b
jne 0x140036271
lea r8, [rcx + rax]
add rax, rcx
lea rdx, [rcx + rsi]
test r9b, r9b
lea rcx, [rbp - 9]
cmove rdx, rax
mov rax, r14
imul rdx
sar rdx, 0x1a
mov rax, rdx
shr rax, 0x3f
add rdx, rax
imul eax, edx, 0x3b9aca00
mov qword [rbp - 9], rdx
sub r8d, eax
mov dword [rbp - 1], r8d
call qword [sym.imp.MSVCP140.dll__Thrd_sleep]
jmp 0x140036200
mov ebx, 1
lea rcx, [rbp + 0xf]
xor r9d, r9d
mov dword [rsp + 0x20], ebx
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x140036314
lea rcx, [rbp + 0xf]
call qword [sym.imp.USER32.dll_TranslateMessage]
lea rcx, [rbp + 0xf]
call qword [sym.imp.USER32.dll_DispatchMessageW]
movzx eax, byte [0x140171270]
lea rcx, [rbp + 0xf]
cmp dword [rbp + 0x17], 0x12
mov dword [rsp + 0x20], ebx
cmove eax, ebx
xor r9d, r9d
xor r8d, r8d
mov byte [0x140171270], al
xor edx, edx
call qword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
jne 0x1400362d2
cmp byte [0x140171270], 0
je 0x140036326
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
mov r8d, dword [0x1401713c0]
xor ebx, ebx
test r8d, r8d
je 0x1400363cc
mov r9d, dword [0x1401713c4]
test r9d, r9d
je 0x1400363cc
mov rcx, qword [0x1401713c8]
test rcx, rcx
je 0x14003636f
mov rax, qword [rcx]
call qword [rax + 0x10]
mov r9d, dword [0x1401713c4]
mov r8d, dword [0x1401713c0]
mov qword [0x1401713c8], rbx
mov rcx, qword [0x1401713b8]
xor edx, edx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
mov rax, qword [rcx]
call qword [rax + 0x68]
mov rcx, qword [0x1401713b8]
lea r9, [rbp - 0x19]
mov qword [0x1401713c0], rbx
lea r8, [0x140044af8]
xor edx, edx
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rcx, qword [0x1401713a8]
lea r9, [0x1401713c8]
mov rdx, qword [rbp - 0x19]
xor r8d, r8d
mov rax, qword [rcx]
call qword [rax + 0x48]
mov rcx, qword [rbp - 0x19]
mov rax, qword [rcx]
call qword [rax + 0x10]
mov rdi, qword [0x140171d70]
test rdi, rdi
je 0x1400363e1
mov rax, qword [rdi + 0x98]
jmp 0x1400363e4
mov rax, rbx
cmp qword [rax + 0x48], rbx
jne 0x1400363f6
call fcn.140029630
mov rdi, qword [0x140171d70]
test rdi, rdi
je 0x140036404
mov rsi, qword [rdi + 0x90]
jmp 0x140036407
mov rsi, rbx
xorps xmm0, xmm0
lea rdx, [rbp - 9]
movdqu xmmword [rbp - 9], xmm0
mov rcx, qword [rsi]
call qword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [rbp - 1]
lea rcx, [rbp + 7]
sub eax, dword [rbp - 9]
mov qword [rbp + 7], rbx
movd xmm1, eax
mov eax, dword [rbp + 3]
sub eax, dword [rbp - 5]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [rdi + 0x10], xmm1
movss dword [rdi + 0x14], xmm0
call qword [sym.imp.KERNEL32.dll_QueryPerformanceCounter]
mov rcx, qword [rbp + 7]
xorps xmm1, xmm1
mov r14, qword [0x140171d70]
mov rax, rcx
sub rax, qword [rsi + 0x18]
xorps xmm0, xmm0
cvtsi2ss xmm0, qword [rsi + 0x20]
cvtsi2ss xmm1, rax
divss xmm1, xmm0
movss dword [rdi + 0x18], xmm1
mov qword [rsi + 0x18], rcx
test r14, r14
je 0x14003648a
mov rbx, qword [r14 + 0x90]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, qword [rbx]
cmp rax, rcx
jne 0x140036520
cmp byte [r14 + 0xd3], 0
je 0x1400364e2
cvttss2si eax, dword [r14 + 0xe00]
lea rdx, [rbp - 0x11]
mov dword [rbp - 0x11], eax
cvttss2si eax, dword [r14 + 0xe04]
mov dword [rbp - 0xd], eax
call qword [sym.imp.USER32.dll_ClientToScreen]
test eax, eax
je 0x1400364d8
mov edx, dword [rbp - 0xd]
mov ecx, dword [rbp - 0x11]
call qword [sym.imp.USER32.dll_SetCursorPos]
cmp byte [r14 + 0xd3], 0
jne 0x140036520
cmp dword [rbx + 0x10], 0
jne 0x140036520
lea rcx, [rbp - 0x11]
call qword [sym.imp.USER32.dll_GetCursorPos]
test eax, eax
je 0x140036520
mov rcx, qword [rbx]
lea rdx, [rbp - 0x11]
call qword [sym.imp.USER32.dll_ScreenToClient]
test eax, eax
je 0x140036520
movd xmm2, dword [rbp - 0xd]
lea rcx, [r14 + 8]
movd xmm1, dword [rbp - 0x11]
cvtdq2ps xmm2, xmm2
cvtdq2ps xmm1, xmm1
call fcn.140002850
call fcn.140029fa0
cmp byte [rdi + 0x58], 0
je 0x140036532
mov eax, 0xffffffff
jmp 0x14003653f
mov rax, qword [0x140171d70]
mov eax, dword [rax + 0x4c08]
cmp dword [rsi + 0x28], eax
je 0x14003654c
mov dword [rsi + 0x28], eax
call fcn.140029e30
call fcn.14002a170
call fcn.140005fe0
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.14003b850
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop rbp
ret