Function at 0x1800e73f0
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [r11 - 0x48]
sub rsp, 0x120
movaps xmmword [r11 - 0x38], xmm6
movaps xmmword [r11 - 0x58], xmm8
movaps xmmword [r11 - 0x68], xmm9
movaps xmmword [r11 - 0x78], xmm10
movaps xmmword [r11 - 0x88], xmm11
movaps xmmword [r11 - 0x98], xmm12
mov rax, qword [0x18054e100]
xor rax, rsp
mov qword [rbp - 0x58], rax
xor r14d, r14d
movaps xmmword [r11 - 0x48], xmm7
movabs rbx, 0xd80958fc74e988a6
mov dword [0x1805870e8], r14d
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], rbx
call fcn.1801e4620
mov qword [rsp + 0x70], r14
mov ecx, dword [rax]
movabs rax, 0x3a87e44bb9a01d54
mov qword [0x1805dd278], rax
mov dword [rsp + 0x70], ecx
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x70], r14
mov qword [0x180587128], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587130], rax
mov dword [0x1805870f8], r14d
mov dword [0x1805870e8], 3
call fcn.1801e4620
mov dword [0x1805870e8], r14d
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], rbx
call fcn.1801e4620
movabs rax, 0x837765a25378f0bb
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], rax
mov qword [0x180587120], r14
mov dword [0x1805870e8], 1
call fcn.1801e4620
xorps xmm0, xmm0
xorps xmm1, xmm1
movups xmm2, xmmword [rax]
movsd xmm3, qword [rax + 0x10]
mulss xmm2, dword [0x18050402c]
mulss xmm3, dword [0x18050402c]
movss xmm0, xmm2
movss xmm1, xmm3
call fcn.180389a23
movaps xmm8, xmm0
mov dword [0x1805870e8], r14d
shufps xmm8, xmm0, 0xe
movaps xmm1, xmm0
movaps xmm10, xmm8
shufps xmm1, xmm0, 1
andps xmm1, xmmword [0x18050a110]
movabs rax, 0x14d6f5678d8f1b37
mulss xmm10, xmm1
movaps xmm9, xmm0
mov dword [0x1805870f8], r14d
shufps xmm8, xmm8, 1
mulss xmm8, xmm1
mov qword [0x1805dd278], rax
xorps xmm10, xmmword [0x18050a140]
call fcn.1801e4620
mov qword [0x1805dd278], rbx
movups xmm6, xmmword [rax]
movsd xmm7, qword [rax + 0x10]
mov dword [0x1805870e8], r14d
mov dword [0x1805870f8], r14d
call fcn.1801e4620
mov qword [rsp + 0x70], r14
movabs rdi, 0x3fef770d40960d5a
mov qword [0x1805dd278], rdi
mov ecx, dword [rax]
mov dword [rsp + 0x70], ecx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r14
mov qword [0x180587120], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r14d
mov dword [0x1805870e8], 2
call fcn.1801e4620
xorps xmm2, xmm2
movups xmm1, xmmword [rax]
movsd xmm4, qword [rax + 0x10]
cmp dword [rbp - 0x78], 0x1b06d571
subss xmm4, xmm7
mov eax, dword [0x1805b11ec]
xorps xmm0, xmm0
cvtss2sd xmm0, xmm6
mov esi, eax
xorps xmm3, xmm3
movaps xmm5, xmm6
cvtss2sd xmm2, xmm1
shufps xmm5, xmm6, 0xaa
movaps xmm11, xmm10
subsd xmm2, xmm0
shufps xmm1, xmm1, 0xaa
cvtss2sd xmm3, xmm1
xorps xmm0, xmm0
mulsd xmm2, xmm2
movaps xmm12, xmm9
cvtss2sd xmm0, xmm5
subsd xmm3, xmm0
xorps xmm0, xmm0
cvtss2sd xmm0, xmm4
mulsd xmm3, xmm3
addsd xmm3, xmm2
addsd xmm3, xmm0
sqrtpd xmm0, xmm3
cvtpd2ps xmm1, xmm0
addss xmm1, dword [0x1805044a4]
mulss xmm11, xmm1
mulss xmm12, xmm1
addss xmm11, xmm6
movaps xmm6, xmm8
mulss xmm6, xmm1
addss xmm12, xmm7
movaps xmm7, xmmword [rsp + 0x100]
addss xmm6, xmm5
jne 0x1800e7cf4
cmp byte [0x1805b1051], r14b
movabs rbx, 0x2975c866e6713290
mov qword [rsp + 0x158], r13
movabs r13, 0x5e6cc07646bbeab8
je 0x1800e7c6c
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
lea rax, [rsp + 0x78]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], rbx
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], r14d
je 0x1800e7c66
lea ecx, [r14 + 2]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800e7c66
mov eax, dword [rsp + 0x78]
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x150], r12
mov qword [0x180587120], rax
mov qword [rsp + 0x160], r15
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], rdi
mov qword [0x180587128], r14
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x70], esi
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r14
mov qword [0x180587120], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], r13
mov dword [0x1805870e8], 2
call fcn.1801e4620
movabs rax, 0x524ac5ecea15343e
mov qword [rsp + 0x70], r14
mov qword [0x1805dd278], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r14d
je 0x1800e78c2
movabs rax, 0x997abd671d25ca0b
mov qword [rsp + 0x70], r14
mov qword [0x1805dd278], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], r14
mov qword [0x180587120], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r14d
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], r14d
je 0x1800e78c2
movabs rax, 0x9a9112a0fe9a4713
mov qword [rsp + 0x70], r14
mov qword [0x1805dd278], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov qword [0x180587128], r14
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov edi, dword [rax]
mov dword [rsp + 0x78], edi
jmp 0x1800e78c6
mov edi, dword [rsp + 0x78]
mov qword [rsp + 0x70], r14
movabs r15, 0xb69317bf5e782347
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], r15
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov ebx, r14d
movabs r12, 0x1bf60a500e28887
nop
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], r12
mov dword [0x1805870e8], 1
call fcn.1801e4620
cmp dword [rax], r14d
jne 0x1800e799d
call qword [sym.imp.WINMM.dll_timeGetTime]
mov rcx, qword [0x1805b1c88]
mov dword [0x1805b1c90], eax
call qword [sym.imp.KERNEL32.dll_SwitchToFiber]
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x70], edi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], r15
mov dword [0x1805870e8], 1
call fcn.1801e4620
inc ebx
cmp ebx, 0x32
jle 0x1800e7910
movabs rax, 0x6ac7003fa6e5575e
mov qword [rsp + 0x70], r14
mov qword [0x1805dd278], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov r15, qword [rsp + 0x160]
movabs rbx, 0xe83d4f9ba2a38914
mov r12, qword [rsp + 0x150]
movabs rdi, 0x8e2530aa8ada980e
cmp dword [rax], r14d
je 0x1800e7a92
mov qword [rsp + 0x70], r14
mov dword [rsp + 0x70], esi
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], rbx
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0x70], r14
mov qword [rbp - 0x80], r14
mov qword [0x1805dd278], rdi
movss xmm0, dword [rax]
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x180587120], rax
movss dword [rsp + 0x70], xmm0
mov eax, dword [rsp + 0x70]
mov dword [rbp - 0x80], eax
mov rax, qword [rbp - 0x80]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r14d
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov ecx, dword [rsp + 0x78]
movaps xmm3, xmm12
mov dword [rsp + 0x30], r14d
movaps xmm2, xmm6
mov dword [rsp + 0x28], r14d
movaps xmm1, xmm11
mov dword [rsp + 0x20], r14d
call fcn.18015c9a0
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800e7c66
mov qword [rbp - 0x80], r14
movabs rax, 0xe65f427eb70ab1ed
mov qword [0x1805dd278], rax
mov dword [rbp - 0x80], 0xffffffff
mov rax, qword [rbp - 0x80]
mov qword [0x180587120], rax
lea rax, str.Foot_Swish
mov qword [0x180587128], rax
mov eax, dword [rsp + 0x78]
mov qword [rbp - 0x80], r14
mov dword [rbp - 0x80], eax
mov rax, qword [rbp - 0x80]
mov qword [0x180587130], rax
lea rax, str.docks_heist_finale_2a_sounds
mov qword [0x180587138], rax
mov dword [0x1805870f8], r14d
mov qword [0x180587140], r14
mov qword [0x180587148], r14
mov dword [0x1805870e8], 6
call fcn.1801e4620
mov qword [rbp - 0x80], r14
mov dword [rbp - 0x80], esi
mov rax, qword [rbp - 0x80]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], rbx
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rbp - 0x80], r14
mov qword [0x1805dd278], rdi
movss xmm0, dword [rax]
mov eax, dword [rsp + 0x78]
mov dword [rbp - 0x80], eax
mov rax, qword [rbp - 0x80]
mov qword [0x180587120], rax
movss dword [rsp + 0x70], xmm0
mov eax, dword [rsp + 0x70]
mov qword [rbp - 0x80], r14
mov dword [rbp - 0x80], eax
mov rax, qword [rbp - 0x80]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r14d
mov dword [0x1805870e8], 2
call fcn.1801e4620
movss xmm0, dword [0x180506a34]
mov edx, 1
mov ecx, dword [rsp + 0x78]
mov dword [rsp + 0x60], r14d
mov dword [rsp + 0x58], 1
mov dword [rsp + 0x50], 1
mov dword [rsp + 0x48], r14d
mov dword [rsp + 0x40], r14d
mulss xmm9, xmm0
mulss xmm8, xmm0
mulss xmm10, xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
movaps xmm3, xmm8
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x28], xmm0
movaps xmm2, xmm10
movss dword [rsp + 0x20], xmm9
call fcn.18015d3f0
mov qword [rbp - 0x80], r14
mov dword [rbp - 0x80], esi
mov rax, qword [rbp - 0x80]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], r13
mov qword [0x180587128], r14
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov eax, dword [0x1805b11ec]
mov qword [rbp - 0x80], r14
movabs rcx, 0x2975c866e6713290
mov dword [rbp - 0x80], eax
mov rax, qword [rbp - 0x80]
mov qword [0x180587120], rax
lea rax, [rsp + 0x78]
mov qword [0x180587128], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], rcx
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], r14d
jne 0x1800e7cec
mov qword [rbp - 0x80], r14
mov dword [rbp - 0x80], esi
mov rax, qword [rbp - 0x80]
mov qword [0x180587120], rax
mov dword [0x1805870f8], r14d
mov qword [0x1805dd278], r13
mov qword [0x180587128], r14
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov r13, qword [rsp + 0x158]
mov rcx, qword [rbp - 0x58]
xor rcx, rsp
call fcn.180357630
lea r11, [rsp + 0x120]
movaps xmm6, xmmword [r11 - 0x10]
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 r14
pop rdi
pop rsi
pop rbx
pop rbp
ret