Function at 0x1400057d0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x20
mov rax, qword [rcx + 0x18]
mov rdi, r8
mov rbx, rcx
cmp r8, rax
ja 0x140003dbd
mov qword [rsp + 0x30], rsi
mov rsi, rcx
cmp rax, 0x10
jb 0x140003d9a
mov rsi, qword [rcx]
mov qword [rcx + 0x10], rdi
mov rcx, rsi
call sub.VCRUNTIME140.dll_memmove
mov byte [rsi + rdi], 0
mov rax, rbx
mov rsi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov r9, rdx
xor r8d, r8d
mov rdx, rdi
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.1400028f0
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x50
mov ebx, r8d
mov ebp, edx
mov rdi, rcx
mov r9d, dword [0x1400ed010]
mov rax, qword gs:[0x58]
mov ecx, 4
mov r9, qword [rax + r9*8]
lea rsi, [0x1400ecd78]
mov eax, dword [rcx + r9]
cmp dword [0x1400ecd98], eax
jg 0x140005a35
movd xmm0, ebp
cvtdq2ps xmm0, xmm0
movss dword [rsp + 0x20], xmm0
movd xmm1, ebx
cvtdq2ps xmm1, xmm1
movss dword [rsp + 0x24], xmm1
mov rcx, rsi
cmp qword [0x1400ecd90], 0x10
cmovae rcx, qword [0x1400ecd78]
xor r8d, r8d
lea rdx, [rsp + 0x20]
call fcn.140058810
test al, al
je 0x140005861
mov byte [0x1400ecd74], 1
jmp 0x14000586e
cmp byte [0x1400ecd74], 0
je 0x140005950
mov ebx, 1
xor ebp, ebp
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x14000589a
cmp ebx, 0xc
je 0x14000589a
mov eax, ebx
cmp ebx, 0x1b
cmove eax, ebp
mov dword [rdi], eax
mov byte [0x1400ecd74], bpl
inc ebx
cmp ebx, 0x100
jl 0x140005875
movabs rax, 0xe9a938c09d4756bb
mov qword [rsp + 0x30], rax
movabs rcx, 0xf3cde619ea025c5c
mov qword [rsp + 0x38], rcx
movabs rax, 0xe9a9389db36978e0
mov qword [rsp + 0x20], rax
mov qword [rsp + 0x28], rcx
movdqa xmm0, xmmword [rsp + 0x20]
pxor xmm0, xmmword [rsp + 0x30]
movdqa xmmword [rsp + 0x20], xmm0
lea rax, [rsp + 0x20]
mov rdi, 0xffffffffffffffff
inc rdi
cmp byte [rax + rdi], bpl
jne 0x1400058f4
mov rax, qword [0x1400ecd90]
cmp rdi, rax
ja 0x140005938
mov rbx, rsi
cmp rax, 0x10
cmovae rbx, qword [0x1400ecd78]
mov qword [0x1400ecd88], rdi
mov r8, rdi
lea rdx, [rsp + 0x20]
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rdi], bpl
jmp 0x1400059fa
lea r9, [rsp + 0x20]
xor r8d, r8d
mov rdx, rdi
mov rcx, rsi
call fcn.1400028f0
jmp 0x1400059fa
mov edx, dword [rdi]
lea rcx, [rsp + 0x30]
test edx, edx
jne 0x1400059aa
call fcn.140003de0
mov rdx, rax
mov rcx, rsi
call fcn.140003850
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400059fa
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400059f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400059f5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140003de0
mov rdx, rax
mov rcx, rsi
call fcn.140003850
mov rdx, qword [rsp + 0x48]
cmp rdx, 0x10
jb 0x1400059fa
inc rdx
mov rcx, qword [rsp + 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400059f5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400059f5
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140061260
cmp qword [0x1400ecd90], 0x10
cmovae rsi, qword [0x1400ecd78]
mov r8, qword [0x1400ecd88]
mov rdx, rsi
lea rcx, [section..data]
mov rbx, qword [rsp + 0x78]
mov rbp, qword [rsp + 0x80]
add rsp, 0x50
pop r14
pop rdi
pop rsi
jmp 0x140003d70
lea rcx, [0x1400ecd98]
call fcn.140061804
cmp dword [0x1400ecd98], 0xffffffff
jne 0x14000581a
mov edx, dword [rdi]
mov rcx, rsi
call fcn.140003de0
lea rcx, [0x140063380]
call fcn.1400614a0
nop
lea rcx, [0x1400ecd98]
call fcn.1400617a4
jmp 0x14000581a