Function at 0x1800153e0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
mov eax, 0x28a0
call fcn.1800943f0
sub rsp, rax
mov eax, dword [0x180135f6c]
lea rdx, [rsp + 0xc0]
movaps xmmword [rsp + 0x2890], xmm6
mov rdi, rcx
mov rcx, qword [0x18011bac8]
movaps xmmword [rsp + 0x2880], xmm7
mov dword [rsp + 0x28b8], eax
lea rax, vtable.std::_Func_impl_no_alloc_class__bool___cdecl_Base::TakeControlOff_int__int_::_2::_lambda_1___void___.0
movaps xmmword [rsp + 0x2870], xmm8
mov qword [rsp + 0xc0], rax
movaps xmmword [rsp + 0x2860], xmm9
movaps xmmword [rsp + 0x2850], xmm10
mov dword [rsp + 0x28bc], 1
mov rax, qword [rsp + 0x28b8]
mov qword [rsp + 0xc8], rax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0xf8], rax
movaps xmmword [rsp + 0x2840], xmm11
call fcn.18000c8e0
mov ebx, dword [0x180135f6c]
call fcn.180005620
xor ebp, ebp
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
movabs rsi, 0x3fef770d40960d5a
mov rcx, rax
mov rdx, rsi
call fcn.18004cf90
call fcn.180005620
movss xmm0, dword [rdi]
mov rcx, qword [rax]
movups xmm10, xmmword [rcx]
movsd xmm11, qword [rcx + 0x10]
movaps xmm1, xmm10
call fcn.180013b70
movaps xmm6, xmm0
movaps xmm9, xmm10
movss xmm0, dword [rdi + 8]
shufps xmm9, xmm10, 0xaa
movaps xmm1, xmm9
call fcn.180013b70
movaps xmm7, xmm0
movaps xmm1, xmm11
movss xmm0, dword [rdi + 0x10]
call fcn.180013b70
mov ebx, dword [0x180135f6c]
xorps xmm8, xmm8
cvtss2sd xmm8, xmm0
call fcn.180005620
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180005620
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
addsd xmm0, xmm0
cvtpd2ps xmm0, xmm0
movss dword [rcx + rdx*8], xmm0
inc dword [rax + 8]
call fcn.180005620
xorps xmm0, xmm0
cvtss2sd xmm0, xmm7
addsd xmm0, xmm0
cvtpd2ps xmm0, xmm0
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
movss dword [rcx + rdx*8], xmm0
inc dword [rax + 8]
call fcn.180005620
addsd xmm8, xmm8
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
cvtpd2ps xmm0, xmm8
movss dword [rcx + rdx*8], xmm0
inc dword [rax + 8]
call fcn.180005620
movabs rdx, 0x1c99bb7b6e96d16f
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
call fcn.180005620
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
movabs rdx, 0xd80958fc74e988a6
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180005620
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
mov r8d, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + r8*8], ebx
inc dword [rax + 8]
call fcn.180005620
mov r8d, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + r8*8], ebp
inc dword [rax + 8]
call fcn.180005620
mov rdx, rsi
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
movsd xmm6, qword [0x1800e2f48]
movaps xmm1, xmm6
mov rcx, qword [rax]
movups xmm7, xmmword [rcx]
movsd xmm8, qword [rcx + 0x10]
movaps xmm0, xmm7
shufps xmm0, xmm7, 0xaa
subss xmm0, xmm9
cvtss2sd xmm0, xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
movaps xmm9, xmm0
subss xmm7, xmm10
xorps xmm0, xmm0
movaps xmm1, xmm6
cvtss2sd xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm9, xmm0
movaps xmm1, xmm6
subss xmm8, xmm11
xorps xmm0, xmm0
cvtss2sd xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_pow
addsd xmm9, xmm0
xorps xmm1, xmm1
ucomisd xmm1, xmm9
ja 0x1800156c1
xorps xmm0, xmm0
sqrtsd xmm0, xmm9
jmp 0x1800156ca
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movss xmm7, dword [0x1800e3018]
cvtsd2ss xmm0, xmm0
comiss xmm0, xmm7
jbe 0x180015737
lea r8, [0x1800ccf30]
mov edx, 3
lea rcx, [rsp + 0x120]
call fcn.180007040
mov rax, qword [0x180136030]
cmp rax, qword [0x180136038]
je 0x180015727
mov r8d, 0x2720
lea rdx, [rsp + 0x120]
mov rcx, rax
call sub.VCRUNTIME140.dll_memcpy
add qword [0x180136030], 0x2720
jmp 0x180015737
lea r8, [rsp + 0x120]
mov rdx, rax
call fcn.18000aa20
mov rax, qword [0x180135a80]
xorps xmm6, xmm6
cmp byte [rax + 0x5e], bpl
je 0x1800157a0
movss xmm0, dword [0x1800e2ecc]
movss xmm3, dword [rdi + 0x10]
movss xmm2, dword [rdi + 8]
movss xmm1, dword [rdi]
movss dword [rsp + 0x60], xmm0
movss dword [rsp + 0x58], xmm0
movss dword [rsp + 0x50], xmm0
movss xmm0, dword [0x1800e2fe0]
movss dword [rsp + 0x48], xmm6
movss dword [rsp + 0x40], xmm0
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm6
movss dword [rsp + 0x28], xmm6
movss dword [rsp + 0x20], xmm6
call fcn.1800132f0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x18001580e
call fcn.180005620
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 2
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 0x18
inc dword [rax + 8]
call fcn.180005620
movabs rdx, 0xf3a21bcd95725a4a
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
cmp dword [rcx], ebp
je 0x1800158c9
movss xmm0, dword [rdi + 0x28]
movss xmm3, dword [rdi + 0x20]
movss xmm2, dword [rdi + 0x18]
movss dword [rsp + 0x38], xmm6
movss dword [rsp + 0x30], xmm6
mulss xmm0, xmm7
movss dword [rsp + 0x28], xmm6
mulss xmm3, xmm7
mulss xmm2, xmm7
movss dword [rsp + 0x20], xmm0
call fcn.180013150
call fcn.180005620
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
movabs rdx, 0x4f8644af03d0e0d6
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
mov ebx, dword [rcx]
call fcn.180005620
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebx
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], ebp
inc dword [rax + 8]
call fcn.180005620
movabs rdx, 0x5e6cc07646bbeab8
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov eax, dword [0x180135f6c]
mov dword [0x180135f68], eax
mov rax, qword [0x180135a80]
movabs rbx, 0xe2587f8cbbd87b1d
movss xmm0, dword [0x1800e2fb4]
movss xmm6, dword [0x1800e2f40]
movd xmm1, dword [rax + 0x60]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x180015964
call fcn.180005620
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 2
inc dword [rax + 8]
call fcn.180005620
mov edx, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + rdx*8], 0x105
inc dword [rax + 8]
call fcn.180005620
mov rdx, rbx
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
cmp dword [rcx], ebp
je 0x180015964
mov rcx, qword [0x180135a80]
movd xmm0, dword [rcx + 0x60]
cvtdq2ps xmm0, xmm0
addss xmm0, xmm6
cvttss2si eax, xmm0
mov dword [rcx + 0x60], eax
call fcn.180005620
mov dword [rax + 8], ebp
mov dword [rax + 0x18], ebp
call fcn.180005620
mov r8d, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + r8*8], 2
inc dword [rax + 8]
call fcn.180005620
mov r8d, dword [rax + 8]
mov rcx, qword [rax + 0x10]
mov dword [rcx + r8*8], 0x106
inc dword [rax + 8]
call fcn.180005620
mov rdx, rbx
mov rcx, rax
call fcn.18004cf90
call fcn.180005620
mov rcx, qword [rax]
cmp dword [rcx], ebp
je 0x1800159d5
mov rcx, qword [0x180135a80]
movd xmm0, dword [rcx + 0x60]
cvtdq2ps xmm0, xmm0
subss xmm0, xmm6
cvttss2si eax, xmm0
mov dword [rcx + 0x60], eax
lea r11, [rsp + 0x28a0]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
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 rdi
ret
add rcx, 8
jmp 0x1800153e0