Function at 0x14001c490
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 8], rcx
push rbp
lea rbp, [rax - 0xd8]
sub rsp, 0x1d0
cmp qword [0x1402b0088], 0
movaps xmmword [rax - 0x48], xmm9
movaps xmmword [rax - 0x58], xmm10
movaps xmmword [rax - 0x68], xmm11
movaps xmmword [rax - 0x78], xmm12
movaps xmmword [rax - 0x88], xmm13
movaps xmmword [rax - 0x98], xmm14
je 0x14001c502
cmp qword [0x1402d1890], 0
je 0x14001c502
mov ecx, dword [0x1402d13fc]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
xor ebx, ebx
test ax, ax
jne 0x14001c536
mov byte [0x1402b0032], al
mov qword [0x1402b0088], rbx
xor al, al
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x20]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
mov rsp, r11
pop rbp
ret
mov rcx, qword [0x1402d18a0]
add rcx, 0x3c0
je 0x14001c5aa
mov eax, dword [0x1402d0c58]
mov rdx, qword [0x1402d10c8]
mov dword [rsp + 0x78], eax
mov eax, dword [0x1402d0c50]
mov dword [rsp + 0x44], eax
mov eax, dword [0x1402d0c54]
mov dword [rsp + 0x48], eax
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x40], ebx
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x60], 8
test rdx, rdx
je 0x14001c5b1
lea rcx, [rsp + 0x40]
call rdx
test rax, rax
je 0x14001c5aa
mov rdx, qword [0x1402d10c8]
mov rcx, qword [rbp + 0xe0]
jmp 0x14001c5bb
mov rdx, qword [0x1402d10c8]
mov rcx, rbx
mov qword [rbp + 0xe0], rbx
test rcx, rcx
je 0x14001c600
mov eax, dword [0x1402d0c58]
mov dword [rbp - 0x48], eax
mov eax, dword [0x1402d0c50]
mov dword [rbp - 0x7c], eax
mov eax, dword [0x1402d0c54]
mov dword [rbp - 0x78], eax
lea rax, [0x1402d0c60]
mov qword [rbp - 0x68], rax
mov dword [rbp - 0x80], ebx
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x60], 0x3f0
test rdx, rdx
je 0x14001c600
lea rcx, [rbp - 0x80]
call rdx
movss xmm14, dword [0x1402d0cc0]
movss xmm1, dword [0x14028a494]
comiss xmm14, xmm1
movss xmm13, dword [0x1402d0cc4]
movss xmm12, dword [0x1402d0cc8]
movss xmm0, dword [0x14028a25c]
jbe 0x14001c653
comiss xmm14, xmm0
jae 0x14001c653
comiss xmm13, xmm1
jbe 0x14001c653
comiss xmm13, xmm0
jae 0x14001c653
comiss xmm12, xmm1
jbe 0x14001c653
comiss xmm12, xmm0
jb 0x14001c502
movss xmm11, dword [0x1402d0ca0]
comiss xmm11, xmm1
movss xmm10, dword [0x1402d0ca4]
movss xmm9, dword [0x1402d0ca8]
jbe 0x14001c696
comiss xmm11, xmm0
jae 0x14001c696
comiss xmm10, xmm1
jbe 0x14001c696
comiss xmm10, xmm0
jae 0x14001c696
comiss xmm9, xmm1
jbe 0x14001c696
comiss xmm9, xmm0
jb 0x14001c502
mov rcx, qword [0x1402b0088]
lea rdx, [rsp + 0x20]
movaps xmmword [rsp + 0x1c0], xmm6
movaps xmmword [rsp + 0x1b0], xmm7
movaps xmmword [rsp + 0x1a0], xmm8
call fcn.140081f10
movss xmm7, dword [rsp + 0x20]
movaps xmm1, xmm14
movss xmm8, dword [rsp + 0x24]
subss xmm1, xmm7
movss xmm6, dword [rsp + 0x28]
movaps xmm0, xmm12
movss xmm3, dword [0x14028a300]
subss xmm0, xmm6
movaps xmm2, xmm13
movss dword [0x1402b0090], xmm7
subss xmm2, xmm8
movss dword [0x1402b0094], xmm8
mulss xmm1, xmm1
subss xmm7, xmm14
movss dword [0x1402b0098], xmm6
subss xmm8, xmm13
mulss xmm0, xmm0
subss xmm6, xmm12
mulss xmm2, xmm2
addss xmm2, xmm1
movaps xmm1, xmm3
addss xmm2, xmm0
xorps xmm0, xmm0
sqrtss xmm0, xmm2
divss xmm1, xmm0
mulss xmm7, xmm1
mulss xmm8, xmm1
mulss xmm6, xmm1
movss xmm1, dword [0x1402d1408]
comiss xmm1, xmm3
jbe 0x14001c77c
subss xmm7, xmm11
movaps xmm0, xmm3
divss xmm0, xmm1
subss xmm8, xmm10
mulss xmm7, xmm0
mulss xmm8, xmm0
addss xmm7, xmm11
addss xmm8, xmm10
movss xmm0, dword [0x1402d140c]
comiss xmm0, xmm3
jbe 0x14001c797
subss xmm6, xmm9
divss xmm6, xmm0
addss xmm6, xmm9
subss xmm9, dword [0x1402d1038]
mov rcx, qword [0x1402d18a0]
movaps xmm0, xmm6
mov rdx, qword [0x1402d10c8]
movss dword [rsp + 0x20], xmm7
movss dword [rsp + 0x24], xmm8
subss xmm0, xmm9
movss dword [rsp + 0x28], xmm0
add rcx, 0x3c0
je 0x14001c827
mov eax, dword [0x1402d0c58]
mov dword [rbp - 0x48], eax
mov eax, dword [0x1402d0c50]
mov dword [rbp - 0x7c], eax
mov eax, dword [0x1402d0c54]
mov dword [rbp - 0x78], eax
lea rax, [rbp + 0xe0]
mov qword [rbp - 0x68], rax
mov dword [rbp - 0x80], ebx
mov qword [rbp - 0x70], rcx
mov qword [rbp - 0x60], 8
test rdx, rdx
je 0x14001c827
lea rcx, [rbp - 0x80]
call rdx
mov rdx, qword [0x1402d10c8]
test rax, rax
je 0x14001c827
mov rax, qword [rbp + 0xe0]
jmp 0x14001c831
mov rax, rbx
mov qword [rbp + 0xe0], rbx
lea rcx, [rax + 0x3d0]
test rcx, rcx
je 0x14001c88e
mov eax, dword [0x1402d0c58]
mov dword [rsp + 0x78], eax
mov eax, dword [0x1402d0c50]
mov dword [rsp + 0x44], eax
mov eax, dword [0x1402d0c54]
mov dword [rsp + 0x48], eax
lea rax, [rsp + 0x20]
mov qword [rsp + 0x58], rax
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x50], rcx
mov qword [rsp + 0x60], 0xc
test rdx, rdx
je 0x14001c88e
lea rcx, [rsp + 0x40]
call rdx
mov rdx, qword [0x1402d10c8]
mov rcx, qword [0x1402d18a0]
movss dword [rsp + 0x30], xmm7
movaps xmm7, xmmword [rsp + 0x1b0]
movss dword [rsp + 0x34], xmm8
movaps xmm8, xmmword [rsp + 0x1a0]
movss dword [rsp + 0x38], xmm6
movaps xmm6, xmmword [rsp + 0x1c0]
add rcx, 0x3c0
je 0x14001c91f
mov eax, dword [0x1402d0c58]
mov dword [rbp - 8], eax
mov eax, dword [0x1402d0c50]
mov dword [rbp - 0x3c], eax
mov eax, dword [0x1402d0c54]
mov dword [rbp - 0x38], eax
lea rax, [rbp + 0xe8]
mov qword [rbp - 0x28], rax
mov dword [rbp - 0x40], ebx
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x20], 8
test rdx, rdx
je 0x14001c91f
lea rcx, [rbp - 0x40]
call rdx
mov rdx, qword [0x1402d10c8]
test rax, rax
je 0x14001c91f
mov rbx, qword [rbp + 0xe8]
jmp 0x14001c926
mov qword [rbp + 0xe8], rbx
add rbx, 0x40
je 0x14001c96e
mov eax, dword [0x1402d0c58]
mov dword [rbp + 0x38], eax
mov eax, dword [0x1402d0c50]
mov dword [rbp + 4], eax
mov eax, dword [0x1402d0c54]
mov dword [rbp + 8], eax
lea rax, [rsp + 0x30]
mov qword [rbp + 0x18], rax
mov dword [rbp], 1
mov qword [rbp + 0x10], rbx
mov qword [rbp + 0x20], 0xc
test rdx, rdx
je 0x14001c96e
lea rcx, [rbp]
call rdx
mov al, 1
jmp 0x14001c504