Function at 0x140006820
Capabilities:
Check for time delay via gettickcount
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
push rbp
push rdi
push r14
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
movaps xmmword [rax - 0x28], xmm6
movaps xmmword [rax - 0x38], xmm7
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
movaps xmmword [rax - 0x68], xmm10
movaps xmmword [rax - 0x78], xmm11
mov rax, qword [0x14009d700]
xor rax, rsp
mov qword [rbp - 0x21], rax
mov rsi, rdx
mov rbx, rcx
xor edi, edi
movdqa xmm6, xmmword [0x14008a4a0]
call fcn.140044e90
movups xmmword [rax + 0x15c], xmm6
mov rcx, rbx
call fcn.140080620
movss xmm11, dword [0x14008a368]
movaps xmm1, xmm11
xorps xmm7, xmm7
xorps xmm0, xmm0
call fcn.1400514b0
lea rcx, [rbp - 0x29]
call fcn.140044230
call fcn.140044ea0
movaps xmm8, xmm0
movss xmm9, dword [rbp - 0x25]
addss xmm9, xmm8
movss xmm6, dword [rbp - 0x29]
addss xmm6, dword [0x14008a32c]
movss xmm10, dword [0x14008a200]
movaps xmm1, xmm10
mov ecx, 7
call fcn.140044190
movaps xmm4, xmm9
movss xmm1, dword [0x14008a2f0]
addss xmm4, xmm1
addss xmm6, xmm1
movss xmm3, dword [rbp - 0x25]
subss xmm3, xmm1
movss xmm2, dword [rbp - 0x29]
subss xmm2, xmm1
movss dword [rsp + 0x20], xmm7
mov r9b, 1
mov r8d, eax
unpcklps xmm6, xmm4
movq rdx, xmm6
unpcklps xmm2, xmm3
movq rcx, xmm2
call fcn.14004f100
mov dword [rbp - 0x59], 0x43480000
movss dword [rbp - 0x55], xmm8
xor r8d, r8d
lea rdx, [rbp - 0x59]
lea rcx, str.input_button
call fcn.14007db40
test al, al
je 0x140006964
mov byte [0x14009e268], 1
mov eax, dword [rsi + 0x10]
mov dword [0x14009e26c], eax
mov dword [0x14009e270], edi
jmp 0x140006995
xor edx, edx
xor ecx, ecx
call fcn.140047a70
test al, al
je 0x140006988
xor ecx, ecx
call fcn.1400474a0
test al, al
jne 0x140006988
mov byte [0x14009e268], dil
jmp 0x140006ae5
cmp byte [0x14009e268], dil
je 0x140006ae5
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
sub ecx, dword [0x14009e274]
cmp ecx, 0xc8
jbe 0x140006aa4
mov dword [0x14009e274], eax
mov ecx, edi
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x140006a96
cmp edi, 0xd
jne 0x1400069ed
movsxd rdx, dword [0x14009e26c]
mov r9b, 0xa
mov r8d, 1
mov rcx, rsi
call fcn.14001b6e0
inc dword [0x14009e26c]
inc edi
jmp 0x1400069b5
movsxd r8, dword [0x14009e26c]
cmp edi, 8
jne 0x140006a5d
test r8d, r8d
jle 0x140006a6a
lea r14d, [r8 - 1]
movsxd rdx, r14d
mov rbx, qword [rsi + 0x10]
cmp rbx, rdx
jb 0x140006c39
mov rax, rbx
sub rax, rdx
mov r9d, 1
cmp rax, r9
cmovb r9, rax
mov rax, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x140006a32
mov rax, qword [rsi]
lea rcx, [rax + rdx]
sub rbx, r9
mov r8, rbx
sub r8, rdx
inc r8
lea rdx, [rcx + r9]
call sub.VCRUNTIME140.dll_memmove
mov qword [rsi + 0x10], rbx
mov dword [0x14009e26c], r14d
inc edi
jmp 0x1400069b5
lea eax, [rdi - 0x10]
cmp eax, 2
jbe 0x140006a96
cmp edi, 0x14
je 0x140006a96
movzx edx, dil
lea ecx, [rdx - 0x41]
lea eax, [rdx + 0x20]
movzx r9d, al
cmp cl, 0x19
cmova r9d, edx
mov rdx, r8
mov r8d, 1
mov rcx, rsi
call fcn.14001b6e0
inc dword [0x14009e26c]
inc edi
cmp edi, 0x100
jl 0x1400069b5
call fcn.140044600
movss xmm0, dword [rax + 0x10]
addss xmm0, dword [0x14009e270]
movss dword [0x14009e270], xmm0
movss xmm1, dword [0x14008a1ec]
comiss xmm0, xmm1
jbe 0x140006ae5
subss xmm0, xmm1
movss dword [0x14009e270], xmm0
cmp byte [0x14009e269], 0
sete byte [0x14009e269]
lea rcx, [rbp - 0x29]
call fcn.140051f90
mov rcx, rsi
cmp qword [rsi + 0x18], 0xf
jbe 0x140006afb
mov rcx, qword [rsi]
call fcn.140080ba0
cmp byte [0x14009e268], 0
je 0x140006bf7
cmp byte [0x14009e269], 0
je 0x140006bf7
movsxd r8, dword [0x14009e26c]
xorps xmm0, xmm0
movups xmmword [rbp - 0x49], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x39], xmm1
cmp qword [rsi + 0x10], r8
cmovb r8, qword [rsi + 0x10]
cmp qword [rsi + 0x18], 0xf
jbe 0x140006b43
mov rsi, qword [rsi]
mov rdx, rsi
lea rcx, [rbp - 0x49]
call fcn.140001730
nop
lea rdx, [rbp - 0x49]
cmp qword [rbp - 0x31], 0xf
cmova rdx, qword [rbp - 0x49]
movss dword [rsp + 0x20], xmm11
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp - 0x51]
call fcn.14003fec0
movss xmm6, dword [rbp - 0x29]
addss xmm6, dword [rax]
mov rdx, qword [rbp - 0x31]
cmp rdx, 0xf
jbe 0x140006bbb
inc rdx
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140006bb6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140006bb6
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.140082fa4
call fcn.140045050
movss dword [rbp - 0x59], xmm6
movss dword [rbp - 0x55], xmm9
movss dword [rbp - 0x51], xmm6
movss xmm0, dword [rbp - 0x25]
movss dword [rbp - 0x4d], xmm0
movss dword [rsp + 0x20], xmm10
mov r9d, 0xffffffff
lea r8, [rbp - 0x59]
lea rdx, [rbp - 0x51]
mov rcx, rax
call fcn.140059e20
mov rcx, qword [rbp - 0x21]
xor rcx, rsp
call fcn.140083480
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
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]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret
call fcn.140008b00
int3