Function at 0x140018f10
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
push rbp
sub rsp, 0xe0
lea rbp, [rsp + 0x40]
and rbp, 0xffffffffffffffe0
mov rcx, qword [sym.imp.MSVCP140.dll_class_std::basic_ostream_char__struct_std::char_traits_char___std::cout]
movabs rax, 0x7179a5c699771555
mov qword [rbp], rax
movabs rdx, 0x98aba782a576d3cc
mov rax, qword [rbp]
mov qword [rbp + 0x20], rax
movabs rax, 0x9e0c969b0ca008c3
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x28], rax
movabs rax, 0x5d199a12be46cd93
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x30], rax
movabs rax, 0xa4bb733545840c48
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x38], rax
movabs rax, 0xbd1ce02fd935aa7c
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x40], rax
movabs rax, 0x2336e9cb04c28359
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x48], rax
movabs rax, 0xc5938cbe9e407ab5
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x50], rax
mov qword [rbp], rdx
mov rax, qword [rbp]
mov qword [rbp + 0x58], rax
movabs rax, 0x190d85b5ea126705
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x60], rax
movabs rax, 0xfb7effe869c428a6
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x68], rax
movabs rax, 0x2f76ba6bdb2dedf7
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x70], rax
movabs rax, 0xc69b164630eb6168
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x78], rax
movabs rax, 0xf834c041b641de09
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x80], rax
movabs rax, 0x4255c9a470e2e02a
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x88], rax
movabs rax, 0xebbda297f22519db
mov qword [rbp], rax
mov rax, qword [rbp]
mov qword [rbp + 0x90], rax
mov qword [rbp], rdx
lea rdx, [rbp + 0x20]
mov rax, qword [rbp]
vmovdqu ymm0, ymmword [rbp + 0x60]
vpxor ymm1, ymm0, ymmword [rbp + 0x20]
vmovdqu ymm0, ymmword [rbp + 0x40]
vmovdqa ymmword [rbp + 0x20], ymm1
mov qword [rbp + 0x98], rax
vpxor ymm1, ymm0, ymmword [rbp + 0x80]
vmovdqa ymmword [rbp + 0x40], ymm1
vzeroupper
call fcn.14000bb10
lea rdx, [0x14000bce0]
mov rcx, rax
call qword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______ptr64___cdecl_std::basic_ostream_char__struct_std::char_traits_char__::operator___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64____cdecl___class_std::basic_ostream_char__struct_std::char_traits_char______ptr64_____ptr64]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140019177
nop dword [rax + rax]
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400191ea
mov ecx, 4
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400191d4
mov ecx, 5
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400191be
mov ecx, 6
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x1400191a8
mov ebx, 1
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x14001918d
inc ebx
cmp ebx, 0x100
jl 0x140019141
mov ecx, 0xa
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1400190f0
mov eax, 1
mov rbx, qword [rsp + 0xf0]
add rsp, 0xe0
pop rbp
ret
xor eax, eax
cmp ebx, 0x1b
cmove ebx, eax
mov eax, ebx
mov rbx, qword [rsp + 0xf0]
add rsp, 0xe0
pop rbp
ret
mov eax, 6
mov rbx, qword [rsp + 0xf0]
add rsp, 0xe0
pop rbp
ret
mov eax, 5
mov rbx, qword [rsp + 0xf0]
add rsp, 0xe0
pop rbp
ret
mov eax, 4
mov rbx, qword [rsp + 0xf0]
add rsp, 0xe0
pop rbp
ret
mov eax, 2
mov rbx, qword [rsp + 0xf0]
add rsp, 0xe0
pop rbp
ret