Function at 0x14006fe00
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]
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 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], 0x3df5c28f
mov dword [rbx + 0x1860], 0x3df5c28f
mov qword [rbx + 0x1864], 0x3df5c28f
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 qword [rbx + 0x1874], 0x3e051eb8
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 qword [rbx + 0x1884], 0x3e051eb8
mov ecx, 4
mov rax, qword gs:[0x58]
mov rax, qword [rax]
mov eax, dword [rcx + rax]
cmp dword [0x140175a8c], eax
jle 0x14006ffc4
lea rcx, [0x140175a8c]
call fcn.140086ca0
cmp dword [0x140175a8c], 0xffffffff
jne 0x14006ffc4
xorps xmm0, xmm0
movups xmmword [0x140175c68], xmm0
mov qword [0x140175c78], 9
mov qword [0x140175c80], 0xf
movsd xmm0, qword [str.Sword32]
movsd qword [0x140175c68], xmm0
movzx eax, byte [0x1400b7f78]
mov byte [0x140175c70], al
mov byte [0x140175c71], sil
lea rcx, [0x14008a7a0]
call fcn.1400870bc
nop
lea rcx, [0x140175a8c]
call fcn.140086c34
mov dword [rbp - 0x29], 0x42a00000
mov dword [rbp - 0x25], 0x41f00000
lea rdi, [0x140175c68]
mov rcx, rdi
cmp qword [0x140175c80], 0xf
cmova rcx, qword [0x140175c68]
lea rdx, [rbp - 0x29]
call fcn.1400433e0
test al, al
je 0x140070002
mov byte [0x1401758d6], 1
jmp 0x14007000f
cmp byte [0x1401758d6], 0
je 0x1400700a0
mov ebx, 1
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x14007003b
cmp ebx, 0xc
je 0x14007003b
mov eax, ebx
cmp ebx, 0x1b
cmove eax, esi
mov dword [0x1401757e0], eax
mov byte [0x1401758d6], 0
inc ebx
cmp ebx, 0x100
jl 0x140070014
mov rax, qword [0x140175c80]
cmp rax, 7
jb 0x140070087
cmp rax, 0xf
cmova rdi, qword [0x140175c68]
mov qword [0x140175c78], 7
mov r8d, 7
lea rdx, str....32
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + 7], 0
jmp 0x140070315
lea r9, str....32
mov edx, 7
mov rcx, rdi
call fcn.140085c80
jmp 0x140070315
mov edx, dword [0x1401757e0]
test edx, edx
jne 0x140070103
mov rax, qword [0x140175c80]
cmp rax, 9
jb 0x1400700ea
cmp rax, 0xf
cmova rdi, qword [0x140175c68]
mov qword [0x140175c78], 9
lea r8d, [rdx + 9]
lea rdx, str.Sword32
mov rcx, rdi
call sub.VCRUNTIME140.dll_memmove
mov byte [rdi + 9], 0
jmp 0x140070315
lea r9, str.Sword32
mov edx, 9
mov rcx, rdi
call fcn.140085c80
jmp 0x140070315
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 0x14007016d
lea rax, [r8 + rbx]
cmp r14, rax
ja 0x14007016d
cmp rbx, r14
jbe 0x14007016d
mov rdi, rbx
sub rdi, r14
jmp 0x140070170
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 0x140070202
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], 0x32332323
mov byte [rax + rcx + 4], 0
lea rax, [rbp - 0x29]
jmp 0x140070220
mov qword [rsp + 0x20], 4
lea r9, str.32
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 [0x140175c80]
cmp rdx, 0xf
jbe 0x14007027a
inc rdx
mov rcx, qword [0x140175c68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140070275
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140070275
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140086b80
movups xmmword [0x140175c68], xmm6
movups xmmword [0x140175c78], xmm7
mov rdx, qword [rbp - 0x11]
cmp rdx, 0xf
jbe 0x1400702c6
inc rdx
mov rcx, qword [rbp - 0x29]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400702c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400702c1
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 0x140070315
inc rdx
mov rcx, qword [rbp - 9]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140070310
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140070310
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