Function at 0x14001a9b0
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 [0x140166100]
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 [0x14018bd08], eax
jle 0x14001aa44
lea rcx, [0x14018bd08]
call fcn.1400cfc58
cmp dword [0x14018bd08], 0xffffffff
jne 0x14001aa44
mov rax, qword [0x14018b338]
lea rcx, [0x14018bd08]
movsd xmm0, qword [rax + 0x3e20]
cvtpd2ps xmm0, xmm0
movss dword [0x14018bd44], xmm0
call fcn.1400cfbec
movss xmm0, dword [0x14018bd44]
mov rax, qword [0x14018b338]
cvtps2pd xmm0, xmm0
movsd xmm2, qword [rax + 0x3e20]
mov eax, dword [r14 + rsi]
movaps xmm1, xmm2
cmp dword [0x14018bcd0], eax
subsd xmm1, xmm0
mov r14, qword [rsp + 0x98]
mov rsi, qword [rsp + 0x90]
cvtpd2ps xmm0, xmm2
cvtpd2ps xmm9, xmm1
movss dword [0x14018bd44], xmm0
jle 0x14001aac1
lea rcx, [0x14018bcd0]
call fcn.1400cfc58
cmp dword [0x14018bcd0], 0xffffffff
jne 0x14001aac1
mov rax, qword [0x14018b358]
lea rcx, [0x14018bcd0]
mov qword [0x14018bcf0], rax
call fcn.1400cfbec
cmp qword [0x14018bcf0], 0
xorps xmm6, xmm6
movaps xmmword [rsp + 0x60], xmm7
movaps xmmword [rsp + 0x50], xmm8
jne 0x14001aae2
xorps xmm7, xmm7
xorps xmm8, xmm8
jmp 0x14001ab13
lea rcx, [rsp + 0x28]
call qword [sym.imp.USER32.dll_GetCursorPos]
mov rcx, qword [0x14018bcf0]
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 0x14001ad4a
cmp dword [rdi + 0x1a0], 2
lea rdx, [0x14018b528]
movss xmm3, dword [0x140145d70]
movss xmm0, dword [0x14018b528]
mov dword [rsp + 0x20], 0
jne 0x14001ab6b
comiss xmm6, xmm0
lea rax, [rdi + 0xa0]
lea rcx, [rsp + 0x20]
cmovbe rcx, rdx
comiss xmm0, dword [rax]
cmova rcx, rax
jmp 0x14001ab8b
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 [0x14018b336], 0
movss xmm2, dword [rcx]
movss dword [0x14018b528], xmm2
je 0x14001ad4a
mov ecx, dword [rdi + 0x1a0]
test ecx, ecx
je 0x14001ad40
sub ecx, 1
je 0x14001ac8b
cmp ecx, 1
jne 0x14001ad54
movss xmm1, dword [0x140145eac]
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 [0x140145cb4]
addss xmm7, xmm0
movss xmm0, dword [rsp + 0xa4]
mulss xmm0, xmm1
movss xmm1, dword [0x14018b27c]
addss xmm1, xmm9
movss dword [rsp + 0x28], xmm7
addss xmm8, xmm0
comiss xmm1, xmm3
movss dword [rsp + 0x2c], xmm8
movss dword [0x14018b27c], xmm1
jb 0x14001ac7c
nop dword [rax]
nop word [rax + rax]
movss xmm0, dword [rdi + 0x9c]
subss xmm1, xmm3
mulss xmm0, xmm3
comiss xmm1, xmm3
addss xmm0, xmm2
movss dword [0x14018b528], xmm0
movaps xmm2, xmm0
jae 0x14001ac50
movss dword [0x14018b27c], xmm1
mov r8, qword [rsp + 0x28]
call fcn.14001b130
jmp 0x14001ad54
movss xmm1, dword [0x140145eac]
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 [0x140145cb4]
addss xmm7, xmm0
movss xmm0, dword [rsp + 0xa4]
mulss xmm0, xmm1
movss xmm1, dword [0x14018b2d0]
addss xmm1, xmm9
movss dword [rsp + 0x28], xmm7
addss xmm8, xmm0
comiss xmm1, xmm3
movss dword [rsp + 0x2c], xmm8
movss dword [0x14018b2d0], xmm1
jb 0x14001ad34
movsd xmm4, qword [0x140145d78]
cvtps2pd xmm0, xmm2
subss xmm1, xmm3
addsd xmm0, xmm4
comiss xmm1, xmm3
cvtpd2ps xmm2, xmm0
jae 0x14001ad10
movss dword [0x14018b528], xmm2
movss dword [0x14018b2d0], xmm1
mov r8, qword [rsp + 0x28]
call fcn.14001b130
jmp 0x14001ad54
mov r8, rbx
call fcn.14001b130
jmp 0x14001ad54
mov dword [0x14018b528], 0
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1400cf8e0
mov rbx, qword [rsp + 0xa8]
movaps xmm6, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x40]
add rsp, 0x80
pop rdi
ret