Function at 0x140010ac0
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 [0x1401ae6f8]
xor rax, rsp
mov qword [rbp + 0x17], rax
movdqa xmm0, xmmword [0x140190780]
movdqa xmmword [rbp - 0x69], xmm0
movdqa xmm1, xmmword [0x140190820]
movdqa xmmword [rbp - 0x59], xmm1
movdqa xmm0, xmmword [0x140190830]
movdqa xmmword [rbp - 0x49], xmm0
movdqa xmm1, xmmword [0x140190840]
movdqa xmmword [rbp - 0x39], xmm1
mov dword [rbp - 0x29], 0x90
xorps xmm0, xmm0
movdqu xmmword [rbp - 1], xmm0
xor r15d, r15d
mov qword [rbp + 0xf], r15
lea edx, [r15 + 0x11]
call fcn.14000c940
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.1400994b0
mov rbx, qword [rbp - 0x11]
test al, al
je 0x140010ced
mov edi, r15d
mov rax, qword [rbp + 7]
sub rax, qword [rbp - 1]
sar rax, 2
test rax, rax
je 0x140010c4c
xorps xmm6, xmm6
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [rbp - 1]
movsxd rcx, dword [rax + rdi*4]
mov rax, qword [0x1401c6918]
movss xmm0, dword [rax + rcx*4]
ucomiss xmm0, xmm6
jp 0x140010bcb
je 0x140010c34
mov rdx, qword [0x1401c6918]
mov rax, qword [rbp - 0x19]
cmp rax, rbx
je 0x140010bff
movss xmm1, dword [rdx + rcx*4 - 4]
movd xmm0, dword [rax]
cvtdq2ps xmm0, xmm0
ucomiss xmm0, xmm1
jp 0x140010bef
je 0x140010bfa
add rax, 4
cmp rax, rbx
je 0x140010bff
jmp 0x140010be1
cmp rax, rbx
jne 0x140010c34
cvttss2si eax, dword [rdx + rcx*4 - 4]
mov dword [rsp + 0x20], eax
cmp rbx, qword [rbp - 9]
je 0x140010c1f
mov dword [rbx], eax
mov rbx, qword [rbp - 0x11]
add rbx, 4
mov qword [rbp - 0x11], rbx
jmp 0x140010c34
lea r8, [rsp + 0x20]
mov rdx, rbx
lea rcx, [rbp - 0x19]
call fcn.140010fa0
mov rbx, qword [rbp - 0x11]
inc rdi
mov rax, qword [rbp + 7]
sub rax, qword [rbp - 1]
sar rax, 2
cmp rdi, rax
jb 0x140010bb0
mov rsi, rbx
sub rsi, qword [rbp - 0x19]
sar rsi, 2
sub esi, 1
js 0x140010ced
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 0x140010ca7
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 0x140010ce0
mov ecx, dword [rcx + rdi]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140010cdc
mov qword [rsp + 0x20], 1
nop
lea rcx, [rsp + 0x20]
call fcn.14000d070
mov rcx, qword [rbp - 0x19]
mov ecx, dword [rcx + rdi]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x140010cc0
mov rbx, qword [rbp - 0x11]
sub r14, 4
sub rdi, 4
sub esi, 1
jns 0x140010c70
mov rsi, r15
mov rax, qword [rbp + 7]
sub rax, qword [rbp - 1]
sar rax, 2
test rax, rax
je 0x140010eb0
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 0x140010d8c
cmp rbx, r13
ja 0x140010f8c
mov rdx, rbx
call fcn.14000c940
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 0x140010d90
mov rdx, qword [rbp - 0x79]
mov rax, qword [rbp - 1]
movsxd rcx, dword [rax + rsi*4]
mov rax, qword [0x1401c6918]
cvttss2si r9d, dword [rax + rcx*4 - 4]
mov rbx, qword [0x1401cba88]
cvttss2si eax, dword [rax + rcx*4]
test eax, eax
je 0x140010deb
test r9d, r9d
je 0x140010de2
mov rcx, qword [rsp + 0x28]
cmp rcx, r8
je 0x140010df4
mov r8d, r9d
call fcn.1401272e0
cmp rax, qword [rbp - 0x79]
je 0x140010def
mov eax, r15d
cmp dword [rbx + rsi*4], r15d
sete al
mov dword [rbx + rsi*4], eax
jmp 0x140010def
mov dword [rbx + rsi*4], 1
jmp 0x140010def
mov dword [rbx + rsi*4], r15d
mov rcx, qword [rsp + 0x28]
test rcx, rcx
je 0x140010e32
mov rax, qword [rbp - 0x71]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010e2d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140010ea9
call fcn.140127cb0
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 0x140010e50
imul rax, rax, 0x64
jmp 0x140010e6b
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
add rax, rcx
cmp rax, r14
jge 0x140010e7d
add rax, 0xf4240
mov qword [rsp + 0x20], rax
jmp 0x140010e82
mov qword [rsp + 0x20], r12
lea rcx, [rsp + 0x20]
call fcn.14000d1a0
inc rsi
mov rax, qword [rbp + 7]
sub rax, qword [rbp - 1]
sar rax, 2
cmp rsi, rax
jae 0x140010eb0
mov rbx, qword [rbp - 0x11]
jmp 0x140010d23
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.14000d070
nop
mov rcx, qword [rbp - 0x19]
test rcx, rcx
je 0x140010f19
mov rax, qword [rbp - 9]
sub rax, rcx
sar rax, 2
lea rdx, [rax*4]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010f08
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010f08
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140127cb0
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x19], xmm0
mov qword [rbp - 9], r15
mov rcx, qword [rbp - 1]
test rcx, rcx
je 0x140010f5a
mov rdx, qword [rbp + 0xf]
sub rdx, rcx
and rdx, 0xfffffffffffffffc
mov rax, rcx
cmp rdx, 0x1000
jb 0x140010f55
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140010f55
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140127cb0
mov rcx, qword [rbp + 0x17]
xor rcx, rsp
call fcn.140127920
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.14000c8c0
nop
int3