Function at 0x18001f0d0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x20], rdi
mov qword [rsp + 8], rcx
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xd0
mov rax, qword [0x1801ebe60]
mov rdi, qword [0x1801ebe68]
add rax, 0x7ee180
call rax
test rax, rax
je 0x18001f54d
test rdi, rdi
je 0x18001f54d
mov rax, qword [0x1801ebe60]
add rax, 0x7ee180
call rax
mov rcx, rax
call fcn.180016390
test rax, rax
je 0x18001f54d
mov rcx, rdi
call fcn.180014370
test al, al
jne 0x18001f54d
cmp byte [0x1801ebf87], al
mov qword [rsp + 0xe8], rbx
mov qword [rsp + 0xf0], rsi
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm7
movaps xmmword [rsp + 0xa0], xmm8
movaps xmmword [rsp + 0x80], xmm10
movaps xmmword [rsp + 0x70], xmm11
je 0x18001f1de
mov ecx, dword [0x1801ebfbc]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x18001f1de
mov rax, qword [0x1801ebe60]
add rax, 0x7ee180
call rax
mov ebx, 0x2f
lea rdx, [rbp - 0x29]
mov r8d, ebx
mov rcx, rax
call fcn.180015e30
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
addss xmm1, dword [0x18013eab0]
movss dword [rbp - 0x49], xmm0
movss xmm0, dword [rax + 8]
lea rax, [rbp - 0x49]
movss dword [rbp - 0x41], xmm0
movss dword [rbp - 0x45], xmm1
jmp 0x18001f201
mov rax, qword [0x1801ebe60]
add rax, 0x7ee180
call rax
mov ebx, 0x2f
lea rdx, [rbp - 0x39]
mov r8d, ebx
mov rcx, rax
call fcn.180015e30
cmp byte [0x1801ebec4], 0
movsd xmm6, qword [rax]
mov esi, dword [rax + 8]
movsd qword [rbp - 0x19], xmm6
je 0x18001f221
lea rdx, [rbp - 0x29]
mov ebx, 0x12
jmp 0x18001f225
lea rdx, [rbp - 0x39]
mov r8d, ebx
mov rcx, rdi
call fcn.180015e30
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
mov dword [rbp - 0x41], eax
mov rax, qword [0x1801ebe60]
add rax, 0x7ee180
movsd qword [rbp - 0x49], xmm0
call rax
mov rcx, rax
call fcn.180016390
mov rcx, rax
call fcn.1800155f0
mov ecx, eax
call fcn.18001ede0
movaps xmm7, xmm0
call fcn.18001e7b0
add rdi, 0x5e8
movaps xmm3, xmm0
xorps xmm8, xmm8
movabs rbx, 0x7fffffff0000
cmp rdi, 0x40000
jbe 0x18001f2bc
lea rax, [rdi + 8]
cmp rax, rbx
jae 0x18001f2bc
mov rcx, qword [rdi]
add rcx, 0x1dc
cmp rcx, 0x40000
jbe 0x18001f2bc
lea rax, [rcx + 0xc]
cmp rax, rbx
jae 0x18001f2bc
movsd xmm0, qword [rcx]
mov eax, dword [rcx + 8]
jmp 0x18001f2c8
xorps xmm0, xmm0
movd eax, xmm8
unpcklps xmm0, xmm8
lea r8, [rbp - 0x39]
movss dword [rsp + 0x20], xmm7
lea rdx, [rbp - 0x49]
movsd qword [rbp - 0x39], xmm0
lea rcx, [rbp - 0x29]
mov dword [rbp - 0x31], eax
movsd qword [rbp - 0x29], xmm6
mov dword [rbp - 0x21], esi
call fcn.18001ea20
movss xmm0, dword [rbp - 0x15]
subss xmm0, dword [rbp - 0x45]
movss xmm7, dword [rbp - 0x19]
subss xmm7, dword [rbp - 0x49]
movd xmm6, esi
subss xmm6, dword [rbp - 0x41]
movaps xmm3, xmm0
mulss xmm3, xmm0
movaps xmm1, xmm7
movaps xmm2, xmm6
mulss xmm1, xmm7
mulss xmm2, xmm6
addss xmm3, xmm1
addss xmm3, xmm2
xorps xmm2, xmm2
sqrtss xmm2, xmm3
divss xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_asinf
xorps xmm6, xmmword [0x18013f420]
movaps xmm10, xmm0
mulss xmm10, dword [0x18013ee48]
movaps xmm1, xmm6
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
mov rax, qword [0x1801ebe60]
movaps xmm7, xmm0
mulss xmm7, dword [0x18013f074]
add rax, 0x7ee180
call rax
mov rsi, qword [rsp + 0xf0]
add rax, 0x608
cmp rax, 0x40000
jbe 0x18001f3b5
lea rcx, [rax + 8]
cmp rcx, rbx
jae 0x18001f3b5
mov rcx, qword [rax]
add rcx, 0x3c
cmp rcx, 0x40000
jbe 0x18001f3b5
lea rax, [rcx + 8]
cmp rax, rbx
jae 0x18001f3b5
movss xmm0, dword [rcx]
movss xmm1, dword [rcx + 4]
jmp 0x18001f3bb
xorps xmm1, xmm1
xorps xmm0, xmm0
movss xmm11, dword [0x18013f078]
subss xmm10, xmm0
subss xmm7, xmm1
comiss xmm10, xmm11
jae 0x18001f3d9
movaps xmm10, xmm11
jmp 0x18001f3e2
minss xmm10, dword [0x18013ee70]
comiss xmm7, dword [0x18013f090]
movaps xmmword [rsp + 0x90], xmm9
movss xmm9, dword [0x18013ef34]
jae 0x18001f404
addss xmm7, xmm9
jmp 0x18001f40f
comiss xmm7, xmm9
jbe 0x18001f40f
subss xmm7, xmm9
mov rax, qword [0x1801ebe60]
add rax, 0x7ee180
call rax
add rax, 0x608
cmp rax, 0x40000
jbe 0x18001f45a
lea rcx, [rax + 8]
cmp rcx, rbx
jae 0x18001f45a
mov rcx, qword [rax]
add rcx, 0x3c
cmp rcx, 0x40000
jbe 0x18001f45a
lea rax, [rcx + 8]
cmp rax, rbx
jae 0x18001f45a
movss xmm8, dword [rcx]
movss xmm6, dword [rcx + 4]
jmp 0x18001f45d
xorps xmm6, xmm6
cmp byte [0x1801ebebd], 0
addss xmm8, xmm10
movaps xmm10, xmmword [rsp + 0x80]
addss xmm6, xmm7
movaps xmm7, xmmword [rsp + 0xb0]
movss dword [rbp + 0x67], xmm8
movss dword [rbp + 0x6b], xmm6
je 0x18001f49f
lea rcx, [rbp + 0x67]
call fcn.18001ee30
movss xmm6, dword [rbp + 0x6b]
movss xmm8, dword [rbp + 0x67]
comiss xmm8, xmm11
jae 0x18001f4ab
movaps xmm8, xmm11
jmp 0x18001f4be
comiss xmm8, dword [0x18013ee70]
jbe 0x18001f4be
movss xmm8, dword [0x18013ee70]
comiss xmm6, dword [0x18013f090]
movaps xmm11, xmmword [rsp + 0x70]
jae 0x18001f4d4
addss xmm6, xmm9
jmp 0x18001f4e2
comiss xmm6, xmm9
jbe 0x18001f4e2
addss xmm6, dword [0x18013f090]
mov rax, qword [0x1801ebe60]
add rax, 0x7ee180
call rax
movaps xmm9, xmmword [rsp + 0x90]
add rax, 0x608
cmp rax, 0x40000
jbe 0x18001f534
lea rcx, [rax + 8]
cmp rcx, rbx
jae 0x18001f534
mov rcx, qword [rax]
add rcx, 0x3c
cmp rcx, 0x40000
jbe 0x18001f534
lea rax, [rcx + 8]
cmp rax, rbx
jae 0x18001f534
movss dword [rcx], xmm8
movss dword [rcx + 4], xmm6
movaps xmm6, xmmword [rsp + 0xc0]
mov rbx, qword [rsp + 0xe8]
movaps xmm8, xmmword [rsp + 0xa0]
mov rdi, qword [rsp + 0xf8]
add rsp, 0xd0
pop rbp
ret