Function at 0x140008000
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xb0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
mov rax, qword [0x140061040]
xor rax, rsp
mov qword [rbp + 0xf], rax
xor edi, edi
mov dword [rbp - 0x59], edi
movss xmm6, dword [0x140058210]
movss xmm7, dword [0x1400581d8]
nop
cmp qword [0x14014b1c8], 0
je 0x1400085f9
mov rax, qword [0x14014b0c8]
movss xmm1, dword [rax + 0xe0]
divss xmm1, xmm6
mulss xmm1, xmm7
mov eax, dword [0x14014b0e8]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x14000808f
inc eax
mov dword [0x14014b0e8], eax
mov eax, dword [0x14014b0e4]
movd xmm0, eax
cvtdq2ps xmm0, xmm0
comiss xmm1, xmm0
jbe 0x1400080a9
inc eax
mov dword [0x14014b0e4], eax
mov ecx, 0x79
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140008344
movd xmm1, dword [0x14014b0e8]
cvtdq2ps xmm1, xmm1
mov rax, qword [0x14014b0c8]
movss xmm0, dword [rax + 0xe0]
divss xmm0, xmm6
mulss xmm0, xmm7
comiss xmm1, xmm0
jb 0x140008344
lea rcx, [0x1400610b8]
call fcn.1400019c0
mov rbx, rax
test rax, rax
je 0x14000833a
call fcn.14000b440
mov rdx, qword [0x14014b1e8]
add rdx, rbx
mov rcx, rax
call fcn.140002f40
mov rbx, rax
call fcn.14000b440
mov rdx, qword [0x14014b1c8]
add rdx, qword [0x14014b1e8]
mov rcx, rax
call fcn.140002f40
call fcn.14000b440
lea rdx, [rbx + 0xe8]
mov rcx, rax
call fcn.140003000
mov r8d, eax
lea r9, [rbp + 4]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx ecx, dl
shl cl, 2
lea eax, [rcx + rdx]
add al, al
sub r8b, al
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x140008150
lea r8, [rbp + 4]
mov rdx, r9
lea rcx, [rbp - 0x51]
call fcn.1400031a0
or edi, 3
mov dword [rbp - 0x59], edi
lea rdx, [rbp - 0x51]
cmp qword [rbp - 0x39], 0xf
cmova rdx, qword [rbp - 0x51]
lea rcx, [rbp - 0x31]
call fcn.140002e20
nop
mov rdx, qword [rbp - 0x39]
cmp rdx, 0xf
jbe 0x1400081e3
inc rdx
mov rcx, qword [rbp - 0x51]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400081de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000860c
call fcn.14004efe4
lea rsi, [rbp - 0x31]
mov r15, qword [rbp - 0x19]
cmp r15, 0xf
seta r13b
mov r14, qword [rbp - 0x31]
cmova rsi, r14
call fcn.1400032f0
mov r12, qword [rax + 0x20]
call fcn.1400032f0
mov rbx, qword [rax + 0x18]
cmp rbx, r12
je 0x14000825b
mov rdi, 0xffffffffffffffff
nop dword [rax]
inc rdi
cmp byte [rsi + rdi], 0
jne 0x140008220
nop dword [rax]
mov r8, qword [rbx + 0x10]
mov rcx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x140008241
mov rcx, qword [rbx]
cmp r8, rdi
jne 0x140008252
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14000825b
add rbx, 0x20
cmp rbx, r12
jne 0x140008230
call fcn.1400032f0
cmp rbx, qword [rax + 0x20]
jne 0x140008300
call fcn.1400032f0
mov rbx, rax
lea rdx, [rbp - 0x31]
test r13b, r13b
cmovne rdx, r14
lea rcx, [rbp - 0x11]
call fcn.140002e20
nop
mov rdx, qword [rbx + 0x20]
cmp rdx, qword [rbx + 0x28]
je 0x1400082b0
movups xmm0, xmmword [rbp - 0x11]
movups xmmword [rdx], xmm0
movups xmm1, xmmword [rbp - 1]
movups xmmword [rdx + 0x10], xmm1
mov edx, 0xf
mov byte [rbp - 0x11], 0
add qword [rbx + 0x20], 0x20
jmp 0x1400082c1
lea r8, [rbp - 0x11]
lea rcx, [rbx + 0x18]
call fcn.14000b060
mov rdx, qword [rbp + 7]
cmp rdx, 0xf
jbe 0x1400082f8
inc rdx
mov rcx, qword [rbp - 0x11]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400082f3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000860c
call fcn.14004efe4
mov r14, qword [rbp - 0x31]
mov r15, qword [rbp - 0x19]
cmp r15, 0xf
jbe 0x140008337
lea rdx, [r15 + 1]
mov rax, r14
cmp rdx, 0x1000
jb 0x14000832f
add rdx, 0x27
mov r14, qword [r14 - 8]
sub rax, r14
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140008613
mov rcx, r14
call fcn.14004efe4
mov edi, dword [rbp - 0x59]
mov dword [0x14014b0e8], 0
mov ecx, 0x78
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1400085f9
movd xmm1, dword [0x14014b0e4]
cvtdq2ps xmm1, xmm1
mov rax, qword [0x14014b0c8]
movss xmm0, dword [rax + 0xe0]
divss xmm0, xmm6
mulss xmm0, xmm7
comiss xmm1, xmm0
jb 0x1400085f9
lea rcx, [0x1400610b8]
call fcn.1400019c0
mov rbx, rax
test rax, rax
je 0x1400085ef
call fcn.14000b440
mov rdx, qword [0x14014b1e8]
add rdx, rbx
mov rcx, rax
call fcn.140002f40
mov rbx, rax
call fcn.14000b440
lea rdx, [rbx + 0xe8]
mov rcx, rax
call fcn.140003000
mov r8d, eax
lea r9, [rbp + 4]
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx ecx, dl
shl cl, 2
lea eax, [rcx + rdx]
add al, al
sub r8b, al
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x1400083d0
lea r8, [rbp + 4]
mov rdx, r9
lea rcx, [rbp - 0x51]
call fcn.1400031a0
or edi, 0xc
mov dword [rbp - 0x59], edi
lea rdx, [rbp - 0x51]
cmp qword [rbp - 0x39], 0xf
cmova rdx, qword [rbp - 0x51]
lea rcx, [rbp - 0x31]
call fcn.140002e20
nop
mov rdx, qword [rbp - 0x39]
cmp rdx, 0xf
jbe 0x140008463
inc rdx
mov rcx, qword [rbp - 0x51]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000845e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140008613
call fcn.14004efe4
lea rsi, [rbp - 0x31]
mov r12, qword [rbp - 0x31]
mov r13, qword [rbp - 0x19]
cmp r13, 0xf
cmova rsi, r12
call fcn.1400032f0
mov r14, qword [rax + 0x20]
call fcn.1400032f0
mov rbx, qword [rax + 0x18]
cmp rbx, r14
je 0x1400084cb
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rsi + rdi], 0
jne 0x140008495
nop
mov r8, qword [rbx + 0x10]
mov rcx, rbx
cmp qword [rbx + 0x18], 0xf
jbe 0x1400084b1
mov rcx, qword [rbx]
cmp r8, rdi
jne 0x1400084c2
mov rdx, rsi
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x1400084cb
add rbx, 0x20
cmp rbx, r14
jne 0x1400084a0
call fcn.1400032f0
cmp rbx, qword [rax + 0x20]
je 0x1400085bb
call fcn.1400032f0
mov r15, rax
mov r14, qword [rax + 0x20]
lea rcx, [rbx + 0x20]
cmp rcx, r14
je 0x140008567
add rbx, 0x38
lea rsi, [rbx - 0x18]
lea rdi, [rbx - 0x38]
cmp rdi, rsi
je 0x14000855a
mov rdx, qword [rbx - 0x20]
cmp rdx, 0xf
jbe 0x14000853a
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x140008535
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140008613
mov rcx, r8
call fcn.14004efe4
movups xmm0, xmmword [rsi]
movups xmmword [rdi], xmm0
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [rdi + 0x10], xmm1
mov qword [rbx - 8], 0
mov qword [rbx], 0xf
mov byte [rsi], 0
add rbx, 0x20
lea rax, [rbx - 0x18]
cmp rax, r14
jne 0x1400084f3
mov rbx, qword [r15 + 0x20]
mov rdx, qword [rbx - 8]
cmp rdx, 0xf
jbe 0x1400085a2
inc rdx
mov rcx, qword [rbx - 0x20]
cmp rdx, 0x1000
jb 0x14000859d
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x140008613
mov rcx, r8
call fcn.14004efe4
mov qword [rbx - 0x10], 0
mov qword [rbx - 8], 0xf
mov byte [rbx - 0x20], 0
add qword [r15 + 0x20], 0xffffffffffffffe0
cmp r13, 0xf
jbe 0x1400085ef
lea rdx, [r13 + 1]
mov rax, r12
cmp rdx, 0x1000
jb 0x1400085e7
add rdx, 0x27
mov r12, qword [r12 - 8]
sub rax, r12
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140008613
mov rcx, r12
call fcn.14004efe4
mov dword [0x14014b0e4], 0
mov ecx, 0x16
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [rbp - 0x59]
jmp 0x140008050
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3