Function at 0x14006ad90
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
xor esi, esi
mov rbx, qword [0x140175650]
mov dword [rbp - 0x29], 0x16
movups xmm0, xmmword [rbx + 0x185c]
movups xmmword [rbp - 0x25], xmm0
lea rcx, [rbx + 0x1ed8]
lea rdx, [rbp - 0x29]
call fcn.140029700
mov dword [rbx + 0x185c], 0x3e051eb8
mov dword [rbx + 0x1860], 0x3e051eb8
mov dword [rbx + 0x1864], 0x3e051eb8
mov dword [rbx + 0x1868], 0x3e0f5c29
mov rbx, qword [0x140175650]
mov dword [rbp - 0x29], 0x17
movups xmm0, xmmword [rbx + 0x186c]
movups xmmword [rbp - 0x25], xmm0
lea rcx, [rbx + 0x1ed8]
lea rdx, [rbp - 0x29]
call fcn.140029700
mov dword [rbx + 0x186c], 0x3e051eb8
mov dword [rbx + 0x1870], 0x3e051eb8
mov dword [rbx + 0x1874], 0x3e051eb8
mov dword [rbx + 0x1878], 0x3e0f5c29
mov rbx, qword [0x140175650]
mov dword [rbp - 0x29], 0x18
movups xmm0, xmmword [rbx + 0x187c]
movups xmmword [rbp - 0x25], xmm0
lea rcx, [rbx + 0x1ed8]
lea rdx, [rbp - 0x29]
call fcn.140029700
mov dword [rbx + 0x187c], 0x3e051eb8
mov dword [rbx + 0x1880], 0x3e051eb8
mov dword [rbx + 0x1884], 0x3e051eb8
mov dword [rbx + 0x1888], 0x3e0f5c29
mov rbx, qword [0x140175650]
movss xmm0, dword [rbx + 0x1680]
mov dword [rbp - 0x29], 0xb
movss dword [rbp - 0x25], xmm0
lea rcx, [rbx + 0x1ee8]
lea rdx, [rbp - 0x29]
call fcn.140029610
mov dword [rbx + 0x1680], 0x40800000
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
mov eax, dword [rcx + rax]
cmp dword [0x140176090], eax
jle 0x14006af6b
lea rcx, [0x140176090]
call fcn.140086ca0
cmp dword [0x140176090], 0xffffffff
jne 0x14006af6b
xorps xmm0, xmm0
movups xmmword [0x140175a40], xmm0
mov qword [0x140175a50], 5
mov qword [0x140175a58], 0xf
mov eax, dword [str.418]
mov dword [0x140175a40], eax
movzx eax, byte [0x1400b7d24]
mov byte [0x140175a44], al
mov byte [0x140175a45], sil
lea rcx, [0x14008a180]
call fcn.1400870bc
nop
lea rcx, [0x140176090]
call fcn.140086c34
mov dword [rbp - 0x29], 0x41f00000
mov dword [rbp - 0x25], 0x41f00000
lea rdi, [0x140175a40]
mov rcx, rdi
cmp qword [0x140175a58], 0xf
cmova rcx, qword [0x140175a40]
lea rdx, [rbp - 0x29]
call fcn.1400433e0
test al, al
je 0x14006afa9
mov byte [0x1401758ae], 1
jmp 0x14006afb6
cmp byte [0x1401758ae], 0
je 0x14006b04c
mov ebx, 1
nop dword [rax + rax]
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14006afe7
cmp ebx, 0xc
je 0x14006afe7
mov eax, ebx
cmp ebx, 0x1b
cmove eax, esi
mov dword [0x140174b78], eax
mov byte [0x1401758ae], 0
inc ebx
cmp ebx, 0x100
jl 0x14006afc0
mov rax, qword [0x140175a58]
cmp rax, 7
jb 0x14006b033
cmp rax, 0xf
cmova rdi, qword [0x140175a40]
mov qword [0x140175a50], 7
mov r8d, 7
lea rdx, str....18
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + 7], 0
jmp 0x14006b2c1
lea r9, str....18
mov edx, 7
mov rcx, rdi
call fcn.140085c80
jmp 0x14006b2c1
mov edx, dword [0x140174b78]
test edx, edx
jne 0x14006b0af
mov rax, qword [0x140175a58]
cmp rax, 5
jb 0x14006b096
cmp rax, 0xf
cmova rdi, qword [0x140175a40]
mov qword [0x140175a50], 5
lea r8d, [rdx + 5]
lea rdx, str.418
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + 5], 0
jmp 0x14006b2c1
lea r9, str.418
mov edx, 5
mov rcx, rdi
call fcn.140085c80
jmp 0x14006b2c1
lea rcx, [rbp + 0x17]
call fcn.140063ee0
xorps xmm0, xmm0
movups xmmword [rbp - 9], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp + 7], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rbp - 9], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 7], xmm1
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rbx, [rbp - 9]
cmp qword [rbp + 0xf], 0xf
cmova rbx, qword [rbp - 9]
lea r14, [0x14008bbfa]
mov r8, qword [rbp + 7]
cmp r14, rbx
jbe 0x14006b119
lea rax, [r8 + rbx]
cmp r14, rax
ja 0x14006b119
cmp rbx, r14
jbe 0x14006b119
mov rdi, rbx
sub rdi, r14
jmp 0x14006b11c
mov rdi, rsi
inc r8
mov rdx, rbx
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov r8, rdi
mov rdx, r14
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
lea rcx, [rbx + rdi]
mov r8, rdi
neg r8
lea rdx, [rdi + r14]
call sub.VCRUNTIME140.dll_memcpy
movups xmm0, xmmword [rbp - 9]
movups xmmword [rbp - 0x29], xmm0
movups xmm1, xmmword [rbp + 7]
movdqu xmmword [rbp - 0x19], xmm1
mov qword [rbp + 7], rsi
mov qword [rbp + 0xf], 0xf
mov byte [rbp - 9], 0
movq rcx, xmm1
psrldq xmm1, 8
movq rdx, xmm1
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x14006b1ae
lea rax, [rcx + 4]
mov qword [rbp - 0x19], rax
lea rax, [rbp - 0x29]
cmp rdx, 0xf
cmova rax, qword [rbp - 0x29]
mov dword [rax + rcx], 0x38312323
mov byte [rax + rcx + 4], 0
lea rax, [rbp - 0x29]
jmp 0x14006b1cc
mov qword [rsp + 0x20], 4
lea r9, str.18
mov edx, 4
lea rcx, [rbp - 0x29]
call fcn.140085af0
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [0x140175a58]
cmp rdx, 0xf
jbe 0x14006b226
inc rdx
mov rcx, qword [0x140175a40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006b221
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006b221
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140086b80
movups xmmword [0x140175a40], xmm6
movups xmmword [0x140175a50], xmm7
mov rdx, qword [rbp - 0x11]
cmp rdx, 0xf
jbe 0x14006b272
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006b26d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006b26d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140086b80
movdqa xmm0, xmmword [0x1400b9b30]
movdqu xmmword [rbp - 0x19], xmm0
mov byte [rbp - 0x29], 0
mov rdx, qword [rbp + 0xf]
cmp rdx, 0xf
jbe 0x14006b2c1
inc rdx
mov rcx, qword [rbp - 9]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14006b2bc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14006b2bc
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140086b80
mov ecx, 1
call fcn.140003f10
mov ecx, 3
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
mov rsp, r11
pop rbp
jmp fcn.140003cc0