Function at 0x140067cd0
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 - 0x38]
sub rsp, 0x110
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
mov rax, qword [0x1400a4010]
xor rax, rsp
mov qword [rbp - 0x68], rax
mov ecx, 0x23
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x140068480
xor r14d, r14d
movabs r12, 0x7ffffffffff0bdbe
movabs r15, 0x7fffffffffffffff
movabs r13, 0x7fffffffff67697e
xorps xmm12, xmm12
mov qword [rsp + 0x60], r14
mov eax, dword [0x1400a4ebc]
mov qword [rsp + 0x50], 8
lea r8, [rsp + 0x38]
mov edx, 0x45
mov dword [rsp + 0x38], eax
cmp byte [0x1400a4f3a], 0
je 0x140068269
mov rax, qword [0x1400a4ff0]
add rax, 0x158
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x40], rax
call fcn.14004ca20
mov rbx, qword [rsp + 0x60]
cmp rbx, 0x1000000
jbe 0x1400683b8
xor eax, eax
mov qword [rbp - 0x78], rax
mov dword [rbp - 0x70], eax
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [0x1400a4f70]
add rax, 0x268
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 0xc
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov dword [rsp + 0x74], 0
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [0x1400a4f70]
add rax, 0xd0
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x74]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 4
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov dword [rsp + 0x78], 0
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [0x1400a4f70]
add rax, 0xdc
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x78]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 4
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov dword [rsp + 0x60], 0
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [0x1400a4f70]
add rax, 0xe8
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x60]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 4
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov dword [rsp + 0x68], 0
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [0x1400a4f70]
add rax, 0xd8
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 4
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov dword [rsp + 0x6c], 0
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [0x1400a4f70]
add rax, 0xe4
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x6c]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 4
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov dword [rsp + 0x70], 0
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [0x1400a4f70]
add rax, 0xf0
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 4
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov qword [rbp - 0x80], r14
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
lea rax, [rbx + 0x1c8]
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 8
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov qword [rsp + 0x58], r14
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [rbp - 0x80]
add rax, 0x18
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 8
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov qword [rbp - 0x80], r14
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [rsp + 0x58]
sub rax, 0xffffffffffffff80
mov qword [rsp + 0x48], rax
lea rax, [rbp - 0x80]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 8
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov qword [rsp + 0x58], r14
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
mov rax, qword [rbp - 0x80]
add rax, 0x40
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 8
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov rcx, qword [0x1400a4fd8]
cmp qword [rsp + 0x58], 0x1000000
cmova rcx, qword [rsp + 0x58]
mov qword [0x1400a4fd8], rcx
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx ebx, ax
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx edi, ax
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx esi, ax
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm5, dword [0x1400a40bc]
movss xmm9, dword [rsp + 0x68]
movss xmm10, dword [rsp + 0x6c]
movss xmm11, dword [rsp + 0x70]
cmp byte [0x1400a4d89], 0
jne 0x14006811e
test bx, bx
jne 0x140068136
test di, di
jne 0x140068131
test si, si
jne 0x140068131
test ax, ax
je 0x1400683b8
test bx, bx
je 0x14006818c
movaps xmm0, xmm9
mulss xmm0, xmm5
movss xmm2, dword [0x1400a6428]
subss xmm2, xmm0
movss dword [0x1400a6428], xmm2
movaps xmm1, xmm10
mulss xmm1, xmm5
movss xmm3, dword [0x1400a642c]
subss xmm3, xmm1
movss dword [0x1400a642c], xmm3
movaps xmm0, xmm11
mulss xmm0, xmm5
movss xmm4, dword [0x1400a6430]
subss xmm4, xmm0
movss dword [0x1400a6430], xmm4
jmp 0x1400681a4
movss xmm4, dword [0x1400a6430]
movss xmm3, dword [0x1400a642c]
movss xmm2, dword [0x1400a6428]
movss xmm6, dword [rsp + 0x74]
movss xmm7, dword [rsp + 0x78]
movss xmm8, dword [rsp + 0x60]
test di, di
je 0x1400681f6
movaps xmm0, xmm6
mulss xmm0, xmm5
subss xmm2, xmm0
movss dword [0x1400a6428], xmm2
movaps xmm1, xmm7
mulss xmm1, xmm5
subss xmm3, xmm1
movss dword [0x1400a642c], xmm3
movaps xmm0, xmm8
mulss xmm0, xmm5
subss xmm4, xmm0
movss dword [0x1400a6430], xmm4
test si, si
je 0x140068231
mulss xmm9, xmm5
addss xmm2, xmm9
movss dword [0x1400a6428], xmm2
mulss xmm10, xmm5
addss xmm3, xmm10
movss dword [0x1400a642c], xmm3
mulss xmm11, xmm5
addss xmm4, xmm11
movss dword [0x1400a6430], xmm4
test ax, ax
je 0x1400683b8
mulss xmm6, xmm5
addss xmm2, xmm6
mulss xmm7, xmm5
addss xmm3, xmm7
movss dword [0x1400a642c], xmm3
mulss xmm8, xmm5
addss xmm4, xmm8
movss dword [0x1400a6430], xmm4
jmp 0x1400683b0
mov rcx, qword [0x1400a4f88]
add rcx, 0x298
mov qword [rsp + 0x48], rcx
lea rax, [rsp + 0x60]
mov qword [rsp + 0x40], rax
call fcn.14004ca20
cmp qword [rsp + 0x60], 0x1000000
jbe 0x1400683b8
mov qword [rsp + 0x38], r14
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], 0xf
mov r8d, 0x10
lea rdx, str.HumanoidRootPart
lea rcx, [rsp + 0x38]
call fcn.14004c400
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x60]
call fcn.1400638f0
mov rax, qword [rsp + 0x30]
cmp rax, 0x1000000
jbe 0x1400683b8
mov qword [rsp + 0x58], r14
mov ecx, dword [0x1400a4ebc]
mov dword [rsp + 0x38], ecx
add rax, 0x158
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x58]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 8
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x1400683b8
xor eax, eax
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x28], eax
mov eax, dword [0x1400a4ebc]
mov dword [rsp + 0x38], eax
lea rax, [rcx + 0x140]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x20]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x50], 0xc
lea r8, [rsp + 0x38]
mov edx, 0x45
call fcn.14004ca20
movss xmm2, dword [rsp + 0x20]
ucomiss xmm2, xmm12
jp 0x140068384
je 0x1400683b8
movss xmm1, dword [rsp + 0x24]
ucomiss xmm1, xmm12
jp 0x140068392
je 0x1400683b8
movss xmm0, dword [rsp + 0x28]
ucomiss xmm0, xmm12
jp 0x1400683a0
je 0x1400683b8
movss dword [0x1400a642c], xmm1
movss dword [0x1400a6430], xmm0
movss dword [0x1400a6428], xmm2
cmp byte [0x1400a4f3a], 0
je 0x14006840f
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 0x1400683df
imul rax, rax, 0x64
jmp 0x1400683fd
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rcx, rcx, 0x3b9aca00
add rax, rcx
cmp rax, r12
jg 0x14006845d
add rax, 0xf4240
mov qword [rsp + 0x58], rax
jmp 0x140068462
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 0x14006842d
imul rax, rax, 0x64
jmp 0x14006844b
cqo
idiv rbx
mov rcx, rax
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
imul rcx, rcx, 0x3b9aca00
add rax, rcx
cmp rax, r13
jg 0x14006845d
add rax, 0x989680
mov qword [rsp + 0x58], rax
jmp 0x140068462
mov qword [rsp + 0x58], r15
lea rcx, [rsp + 0x58]
call fcn.1400594d0
mov ecx, 0x23
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x140067d61
mov rcx, qword [rbp - 0x68]
xor rcx, rsp
call fcn.14006d200
lea r11, [rsp + 0x110]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret