Function at 0x180019a48
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
mov rbp, rsp
sub rsp, 0x60
mov rax, qword [0x1800c3390]
xor esi, esi
cmp byte [0x1800c0cc7], sil
movaps xmmword [rsp + 0x50], xmm10
movaps xmmword [rsp + 0x40], xmm11
movss xmm11, dword [0x1800b11f8]
lea rbx, [rax + 0x10]
lea rdi, [rax + 0x14]
je 0x180019c1b
call fcn.18005ac30
movss xmm2, dword [rbx]
lea r9, [rbp - 0x30]
movss xmm1, dword [rdi]
lea r8, [rbp + 0x20]
movaps xmm3, xmmword [0x1800b1500]
lea rdx, [rbp + 0x28]
movss xmm10, dword [0x1800b1248]
mulss xmm2, xmm11
mulss xmm1, xmm11
movaps xmm0, xmm2
movss dword [rsp + 0x20], xmm10
subss xmm0, dword [0x1800b12ec]
subss xmm2, dword [0x1800b1320]
movss dword [rbp + 0x24], xmm1
movss dword [rbp + 0x2c], xmm1
movdqa xmmword [rbp - 0x30], xmm3
movss dword [rbp + 0x20], xmm0
movss dword [rbp + 0x28], xmm2
call fcn.18005a9ac
call fcn.18005ac30
movss xmm2, dword [rbx]
lea r9, [rbp - 0x30]
movss xmm1, dword [rdi]
lea r8, [rbp + 0x20]
movaps xmm3, xmmword [0x1800b1500]
lea rdx, [rbp + 0x28]
mulss xmm2, xmm11
mulss xmm1, xmm11
movaps xmm0, xmm2
movss dword [rsp + 0x20], xmm10
addss xmm0, dword [0x1800b12f8]
addss xmm2, dword [0x1800b1324]
movss dword [rbp + 0x24], xmm1
movss dword [rbp + 0x2c], xmm1
movdqa xmmword [rbp - 0x30], xmm3
movss dword [rbp + 0x20], xmm0
movss dword [rbp + 0x28], xmm2
call fcn.18005a9ac
call fcn.18005ac30
movss xmm1, dword [rdi]
lea r9, [rbp - 0x30]
movss xmm2, dword [rbx]
lea r8, [rbp + 0x20]
movaps xmm3, xmmword [0x1800b1500]
lea rdx, [rbp + 0x28]
mulss xmm1, xmm11
mulss xmm2, xmm11
movaps xmm0, xmm1
movss dword [rsp + 0x20], xmm10
subss xmm0, dword [0x1800b12ec]
subss xmm1, dword [0x1800b1320]
movss dword [rbp + 0x20], xmm2
movss dword [rbp + 0x28], xmm2
movdqa xmmword [rbp - 0x30], xmm3
movss dword [rbp + 0x24], xmm0
movss dword [rbp + 0x2c], xmm1
call fcn.18005a9ac
call fcn.18005ac30
movss xmm1, dword [rdi]
lea r9, [rbp - 0x30]
movss xmm2, dword [rbx]
lea r8, [rbp + 0x20]
movaps xmm3, xmmword [0x1800b1500]
lea rdx, [rbp + 0x28]
mulss xmm1, xmm11
mulss xmm2, xmm11
movaps xmm0, xmm1
movss dword [rsp + 0x20], xmm10
addss xmm0, dword [0x1800b12f8]
addss xmm1, dword [0x1800b1324]
movss dword [rbp + 0x20], xmm2
movss dword [rbp + 0x28], xmm2
movdqa xmmword [rbp - 0x30], xmm3
movss dword [rbp + 0x24], xmm0
movss dword [rbp + 0x2c], xmm1
call fcn.18005a9ac
cmp byte [0x1800c0cb9], sil
je 0x180019c74
call fcn.18005ac30
movss xmm0, dword [rbx]
lea r9, [rbp - 0x30]
movaps xmm2, xmmword [0x1800b1540]
lea rdx, [rbp + 0x20]
movss xmm1, dword [rdi]
mulss xmm0, xmm11
mulss xmm1, xmm11
movss dword [rbp + 0x20], xmm0
movss xmm0, dword [0x1800b1230]
movdqa xmmword [rbp - 0x30], xmm2
movss xmm2, dword [0x1800c0cbc]
movss dword [rsp + 0x20], xmm0
movss dword [rbp + 0x24], xmm1
call fcn.18005ab64
mov ecx, 0x69
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180019c98
mov qword [0x1800c35b0], rsi
mov qword [0x1800c32b8], rsi
mov dword [0x1800c3380], esi
cmp byte [0x1800c0cbb], sil
je 0x180019cad
lea rcx, [0x1800c3f58]
call fcn.180014804
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
movaps xmm10, xmmword [r11 - 0x10]
movaps xmm11, xmmword [r11 - 0x20]
mov rsp, r11
pop rdi
pop rsi
pop rbp
ret