Function at 0x140010ce0
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, 0xe0
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1401b06f8]
xor rax, rsp
mov qword [rbp + 0x17], rax
movdqa xmm0, xmmword [0x1401928c0]
movdqa xmmword [rbp - 0x69], xmm0
movdqa xmm1, xmmword [0x140192950]
movdqa xmmword [rbp - 0x59], xmm1
movdqa xmm0, xmmword [0x140192960]
movdqa xmmword [rbp - 0x49], xmm0
movdqa xmm1, xmmword [0x140192970]
movdqa xmmword [rbp - 0x39], xmm1
mov dword [rbp - 0x29], 0x9a
xorps xmm0, xmm0
movdqu xmmword [rbp - 1], xmm0
xor r15d, r15d
mov qword [rbp + 0xf], r15
lea edx, [r15 + 0x11]
call fcn.14000cb70
mov qword [rbp - 1], rax
mov qword [rbp + 7], rax
lea rbx, [rax + 0x44]
mov qword [rbp + 0xf], rbx
lea r8d, [r15 + 0x44]
lea rdx, [rbp - 0x69]
mov rcx, rax
call sub.VCRUNTIME140.dll_memmove
mov qword [rbp + 7], rbx
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x19], xmm1
mov qword [rbp - 9], r15
call fcn.14009a600
mov rbx, qword [rbp - 0x11]
test al, al
je 0x140010f0d
mov edi, r15d
mov rax, qword [rbp + 7]
sub rax, qword [rbp - 1]
sar rax, 2
test rax, rax
je 0x140010e6c
xorps xmm6, xmm6
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbp - 1]
movsxd rcx, dword [rax + rdi*4]
mov rax, qword [0x1401c8928]
movss xmm0, dword [rax + rcx*4]
ucomiss xmm0, xmm6
jp 0x140010deb
je 0x140010e54
mov rdx, qword [0x1401c8928]
mov rax, qword [rbp - 0x19]
cmp rax, rbx
je 0x140010e1f
movss xmm1, dword [rdx + rcx*4 - 4]
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm1
jp 0x140010e0f
je 0x140010e1a
add rax, 4
cmp rax, rbx
je 0x140010e1f
jmp 0x140010e01
cmp rax, rbx
jne 0x140010e54
cvttss2si eax, dword [rdx + rcx*4 - 4]
mov dword [rsp + 0x20], eax
cmp rbx, qword [rbp - 9]
je 0x140010e3f
mov dword [rbx], eax
mov rbx, qword [rbp - 0x11]
add rbx, 4
mov qword [rbp - 0x11], rbx
jmp 0x140010e54
lea r8, [rsp + 0x20]
mov rdx, rbx
lea rcx, [rbp - 0x19]
call fcn.1400111c0
mov rbx, qword [rbp - 0x11]
inc rdi
mov rax, qword [rbp + 7]
sub rax, qword [rbp - 1]
sar rax, 2
cmp rdi, rax
jb 0x140010dd0
mov rsi, rbx
sub rsi, qword [rbp - 0x19]
sar rsi, 2
sub esi, 1
js 0x140010f0d
movsxd rax, esi
lea rdi, [rax*4]
mov r14, rdi
nop
mov rcx, qword [rbp - 0x19]
mov ecx, dword [rcx + rdi]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov rcx, qword [rbp - 0x19]
test ax, ax
jne 0x140010ec7
add rcx, r14
lea rdx, [rcx + 4]
mov r8, qword [rbp - 0x11]
sub r8, rdx
call sub.VCRUNTIME140.dll_memmove
mov rbx, qword [rbp - 0x11]
sub rbx, 4
mov qword [rbp - 0x11], rbx
jmp 0x140010f00
mov ecx, dword [rcx + rdi]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140010efc
mov qword [rsp + 0x20], 1
nop
lea rcx, [rsp + 0x20]
call fcn.14000d290
mov rcx, qword [rbp - 0x19]
mov ecx, dword [rcx + rdi]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140010ee0
mov rbx, qword [rbp - 0x11]
sub r14, 4
sub rdi, 4
sub esi, 1
jns 0x140010e90
mov rsi, r15
mov rax, qword [rbp + 7]
sub rax, qword [rbp - 1]
sar rax, 2
test rax, rax
je 0x1400110d0
movabs r13, 0x3fffffffffffffff
movabs r14, 0x7ffffffffff0bdbf
movabs r12, 0x7fffffffffffffff
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov qword [rbp - 0x71], r15
sub rbx, qword [rbp - 0x19]
sar rbx, 2
mov r8, r15
test rbx, rbx
je 0x140010fac
cmp rbx, r13
ja 0x1400111ac
mov rdx, rbx
call fcn.14000cb70
mov rdi, rax
mov qword [rsp + 0x28], rax
mov qword [rbp - 0x79], rax
lea rcx, [rax + rbx*4]
mov qword [rbp - 0x71], rcx
mov rbx, qword [rbp - 0x11]
mov rdx, qword [rbp - 0x19]
sub rbx, rdx
mov r8, rbx
mov rcx, rax
call sub.VCRUNTIME140.dll_memmove
sar rbx, 2
lea r8, [rdi + rbx*4]
mov rdx, r8
mov qword [rbp - 0x79], rdx
jmp 0x140010fb0
mov rdx, qword [rbp - 0x79]
mov rax, qword [rbp - 1]
movsxd rcx, dword [rax + rsi*4]
mov rax, qword [0x1401c8928]
cvttss2si r9d, dword [rax + rcx*4 - 4]
mov rbx, qword [0x1401cda88]
cvttss2si eax, dword [rax + rcx*4]
test eax, eax
je 0x14001100b
test r9d, r9d
je 0x140011002
mov rcx, qword [rsp + 0x28]
cmp rcx, r8
je 0x140011014
mov r8d, r9d
call fcn.140128c60
cmp rax, qword [rbp - 0x79]
je 0x14001100f
mov eax, r15d
cmp dword [rbx + rsi*4], r15d
sete al
mov dword [rbx + rsi*4], eax
jmp 0x14001100f
mov dword [rbx + rsi*4], 1
jmp 0x14001100f
mov dword [rbx + rsi*4], r15d
mov rcx, qword [rsp + 0x28]
test rcx, rcx
je 0x140011052
mov rax, qword [rbp - 0x71]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001104d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400110c9
call fcn.140129630
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x140011070
imul rax, rax, 0x64
jmp 0x14001108b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x14001109d
add rax, 0xf4240
mov qword [rsp + 0x20], rax
jmp 0x1400110a2
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x20]
call fcn.14000d3c0
inc rsi
mov rax, qword [rbp + 7]
sub rax, qword [rbp - 1]
sar rax, 2
cmp rsi, rax
jae 0x1400110d0
mov rbx, qword [rbp - 0x11]
jmp 0x140010f43
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov qword [rsp + 0x20], 1
lea rcx, [rsp + 0x20]
call fcn.14000d290
nop
mov rcx, qword [rbp - 0x19]
test rcx, rcx
je 0x140011139
mov rax, qword [rbp - 9]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140011128
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140011128
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x19], xmm0
mov qword [rbp - 9], r15
mov rcx, qword [rbp - 1]
test rcx, rcx
je 0x14001117a
mov rdx, qword [rbp + 0xf]
sub rdx, rcx
and rdx, 0xfffffffffffffffc
mov rax, rcx
cmp rdx, 0x1000
jb 0x140011175
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140011175
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140129630
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.1401292a0
lea r11, [rsp + 0xe0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.14000caf0
nop
int3