Function at 0x14001a330
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
mov qword [r11 + 0x18], r8
push rdi
sub rsp, 0x80
movaps xmmword [rsp + 0x70], xmm6
movaps xmmword [r11 - 0x48], xmm9
mov rax, qword [0x14015d080]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rax, qword gs:[0x58]
mov rbx, r8
mov qword [r11 + 8], rsi
mov rdi, rcx
mov qword [r11 + 0x10], r14
mov r14d, 4
mov rsi, qword [rax]
mov eax, dword [r14 + rsi]
cmp dword [0x140182ae8], eax
jle 0x14001a3c4
lea rcx, [0x140182ae8]
call fcn.1400c8468
cmp dword [0x140182ae8], 0xffffffff
jne 0x14001a3c4
mov rax, qword [0x140182188]
lea rcx, [0x140182ae8]
movsd xmm0, qword [rax + 0x3e20]
cvtpd2ps xmm0, xmm0
movss dword [0x140182b10], xmm0
call fcn.1400c83fc
movss xmm0, dword [0x140182b10]
mov rax, qword [0x140182188]
cvtps2pd xmm0, xmm0
movsd xmm2, qword [rax + 0x3e20]
mov eax, dword [r14 + rsi]
movaps xmm1, xmm2
cmp dword [0x140182ac0], eax
subsd xmm1, xmm0
mov r14, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x90]
cvtpd2ps xmm0, xmm2
cvtpd2ps xmm9, xmm1
movss dword [0x140182b10], xmm0
jle 0x14001a449
lea rcx, [0x140182ac0]
call fcn.1400c8468
cmp dword [0x140182ac0], 0xffffffff
jne 0x14001a449
lea rdx, [0x140116914]
xor ecx, ecx
call qword [sym.imp.USER32.dll_FindWindowA]
lea rcx, [0x140182ac0]
mov qword [0x140182ae0], rax
call fcn.1400c83fc
cmp qword [0x140182ae0], 0
xorps xmm6, xmm6
movaps xmmword [rsp + 0x60], xmm7
movaps xmmword [rsp + 0x50], xmm8
jne 0x14001a46a
xorps xmm7, xmm7
xorps xmm8, xmm8
jmp 0x14001a49b
lea rcx, [rsp + 0x28]
call qword [sym.imp.USER32.dll_GetCursorPos]
mov rcx, qword [0x140182ae0]
lea rdx, [rsp + 0x28]
call qword [sym.imp.USER32.dll_ScreenToClient]
movd xmm7, dword [rsp + 0x28]
movd xmm8, dword [rsp + 0x2c]
cvtdq2ps xmm7, xmm7
cvtdq2ps xmm8, xmm8
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x14001a6ca
cmp dword [rdi + 0x1a0], 2
lea rdx, [0x140182344]
movss xmm3, dword [0x14013db1c]
movss xmm0, dword [0x140182344]
mov dword [rsp + 0x20], 0
jne 0x14001a4f3
comiss xmm6, xmm0
lea rax, [rdi + 0x9c]
lea rcx, [rsp + 0x20]
cmovbe rcx, rdx
comiss xmm0, dword [rax]
cmova rcx, rax
jmp 0x14001a513
comiss xmm6, xmm0
lea rax, [rsp + 0x20]
mov dword [rsp + 0x28], 0x3f800000
lea rcx, [rsp + 0x28]
cmovbe rax, rdx
comiss xmm0, xmm3
cmovbe rcx, rax
cmp byte [0x140182176], 0
movss xmm2, dword [rcx]
movss dword [0x140182344], xmm2
je 0x14001a6ca
mov ecx, dword [rdi + 0x1a0]
test ecx, ecx
je 0x14001a6c0
sub ecx, 1
je 0x14001a60b
cmp ecx, 1
jne 0x14001a6d4
movss xmm1, dword [0x14013dc54]
movaps xmm0, xmm2
addss xmm0, xmm2
subss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
mulss xmm1, xmm0
movss xmm0, dword [rsp + 0xa0]
subss xmm3, xmm1
mulss xmm0, xmm1
mulss xmm7, xmm3
mulss xmm8, xmm3
movss xmm3, dword [0x14013da54]
addss xmm7, xmm0
movss xmm0, dword [rsp + 0xa4]
mulss xmm0, xmm1
movss xmm1, dword [0x1401820d4]
addss xmm1, xmm9
movss dword [rsp + 0x28], xmm7
addss xmm8, xmm0
comiss xmm1, xmm3
movss dword [rsp + 0x2c], xmm8
movss dword [0x1401820d4], xmm1
jb 0x14001a5fc
nop dword [rax]
movss xmm0, dword [rdi + 0x98]
subss xmm1, xmm3
mulss xmm0, xmm3
comiss xmm1, xmm3
addss xmm0, xmm2
movss dword [0x140182344], xmm0
movaps xmm2, xmm0
jae 0x14001a5d0
movss dword [0x1401820d4], xmm1
mov r8, qword [rsp + 0x28]
call fcn.14001a710
jmp 0x14001a6d4
movss xmm1, dword [0x14013dc54]
movaps xmm0, xmm2
addss xmm0, xmm2
subss xmm1, xmm0
movaps xmm0, xmm2
mulss xmm0, xmm2
mulss xmm1, xmm0
movss xmm0, dword [rsp + 0xa0]
subss xmm3, xmm1
mulss xmm0, xmm1
mulss xmm7, xmm3
mulss xmm8, xmm3
movss xmm3, dword [0x14013da54]
addss xmm7, xmm0
movss xmm0, dword [rsp + 0xa4]
mulss xmm0, xmm1
movss xmm1, dword [0x140182124]
addss xmm1, xmm9
movss dword [rsp + 0x28], xmm7
addss xmm8, xmm0
comiss xmm1, xmm3
movss dword [rsp + 0x2c], xmm8
movss dword [0x140182124], xmm1
jb 0x14001a6b4
movsd xmm4, qword [0x14013db20]
cvtps2pd xmm0, xmm2
subss xmm1, xmm3
addsd xmm0, xmm4
comiss xmm1, xmm3
cvtpd2ps xmm2, xmm0
jae 0x14001a690
movss dword [0x140182344], xmm2
movss dword [0x140182124], xmm1
mov r8, qword [rsp + 0x28]
call fcn.14001a710
jmp 0x14001a6d4
mov r8, rbx
call fcn.14001a710
jmp 0x14001a6d4
mov dword [0x140182344], 0
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1400c80e0
mov rbx, qword [rsp + 0xa8]
movaps xmm6, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x40]
add rsp, 0x80
pop rdi
ret