Function at 0x180070420
Capabilities:
Log keystrokes via polling

Disassembly:
mov r11, rsp
push rbp
push rbx
push rsi
push rdi
lea rbp, [r11 - 0x38]
sub rsp, 0x118
mov rax, qword [0x1802943b0]
xor rax, rsp
mov qword [rbp - 0x68], rax
mov qword [r11 + 0x10], r13
xor edi, edi
mov qword [r11 + 0x18], r14
movabs rbx, 0xd80958fc74e988a6
mov qword [r11 - 0x28], r15
movaps xmmword [r11 - 0x38], xmm6
movaps xmmword [r11 - 0x48], xmm7
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 dword [0x1802bdc48], edi
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], rbx
call fcn.1800cdff0
mov qword [rsp + 0x70], rdi
mov ecx, dword [rax]
movabs rax, 0x3a87e44bb9a01d54
mov qword [0x18033c890], rax
mov dword [rsp + 0x70], ecx
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
lea rax, [rsp + 0x7c]
mov qword [rsp + 0x70], rdi
mov qword [0x1802bdd28], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd30], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 3
call fcn.1800cdff0
movabs r14, 0x4f8644af03d0e0d6
mov dword [0x1802bdc48], edi
mov qword [0x18033c890], r14
mov dword [0x1802bdc58], edi
call fcn.1800cdff0
mov dword [0x1802bdc48], edi
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], rbx
call fcn.1800cdff0
movabs rax, 0x837765a25378f0bb
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], rax
mov qword [0x1802bdd20], rdi
mov dword [0x1802bdc48], 1
call fcn.1800cdff0
xorps xmm8, xmm8
xorps xmm7, xmm7
movups xmm1, xmmword [rax]
movsd xmm2, qword [rax + 0x10]
mulss xmm1, dword [0x18026bb6c]
mulss xmm2, dword [0x18026bb6c]
cvtss2sd xmm8, xmm1
cvtss2sd xmm7, xmm2
movaps xmm0, xmm8
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm7
andps xmm1, xmmword [0x180271110]
cvtps2pd xmm6, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm2, xmm2
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm7
xorps xmm1, xmmword [0x180271130]
cvtss2sd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm11, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
xorps xmm1, xmm1
cvtsd2ss xmm1, xmm0
movaps xmm0, xmm8
cvtps2pd xmm2, xmm1
mulsd xmm2, xmm6
cvtpd2ps xmm10, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
xorps xmm9, xmm9
cvtsd2ss xmm9, xmm0
movabs rax, 0x14d6f5678d8f1b37
mov dword [0x1802bdc48], edi
mov qword [0x18033c890], rax
mov dword [0x1802bdc58], edi
call fcn.1800cdff0
mov qword [0x18033c890], rbx
movups xmm7, xmmword [rax]
movsd xmm12, qword [rax + 0x10]
mov dword [0x1802bdc48], edi
mov dword [0x1802bdc58], edi
call fcn.1800cdff0
mov qword [rsp + 0x70], rdi
movabs r15, 0x3fef770d40960d5a
mov qword [0x18033c890], r15
mov ecx, dword [rax]
mov dword [rsp + 0x70], ecx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], rdi
mov qword [0x1802bdd20], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd28], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
xorps xmm4, xmm4
xorps xmm1, xmm1
movaps xmm8, xmm7
shufps xmm8, xmm7, 0xaa
movups xmm2, xmmword [rax]
movsd xmm3, qword [rax + 0x10]
movaps xmm0, xmm2
subss xmm3, xmm12
subss xmm0, xmm7
shufps xmm2, xmm2, 0xaa
subss xmm2, xmm8
cvtss2sd xmm1, xmm0
cvtss2sd xmm4, xmm2
mulsd xmm1, xmm1
xorps xmm0, xmm0
mulsd xmm4, xmm4
cvtss2sd xmm0, xmm3
addsd xmm4, xmm1
xorps xmm1, xmm1
addsd xmm4, xmm0
ucomisd xmm1, xmm4
ja 0x1800706ea
sqrtpd xmm0, xmm4
jmp 0x1800706f2
movaps xmm0, xmm4
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
cvtsd2ss xmm0, xmm0
mov dword [0x1802bdc48], edi
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], r14
movaps xmm6, xmm11
addss xmm0, dword [0x18026c39c]
mulss xmm6, xmm0
addss xmm6, xmm7
movaps xmm7, xmm0
mulss xmm7, xmm10
addss xmm7, xmm8
movaps xmm8, xmm9
mulss xmm8, xmm0
addss xmm8, xmm12
call fcn.1800cdff0
cmp byte [0x18031e816], dil
movabs rsi, 0x5e6cc07646bbeab8
movaps xmm12, xmmword [rsp + 0xa0]
movabs r13, 0x2975c866e6713290
mov ebx, dword [rax]
je 0x180070c22
mov dword [0x1802bdc48], edi
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], r14
call fcn.1800cdff0
mov qword [rsp + 0x70], rdi
mov qword [0x18033c890], r13
mov ecx, dword [rax]
mov dword [rsp + 0x70], ecx
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
lea rax, [rsp + 0x78]
mov qword [0x1802bdd28], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
cmp dword [rax], edi
je 0x180070c22
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180070c22
mov eax, dword [rsp + 0x78]
mov qword [rsp + 0x70], rdi
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
mov qword [rsp + 0x140], r12
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], r15
mov qword [0x1802bdd28], rdi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
mov qword [rsp + 0x70], rdi
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], rdi
mov qword [0x1802bdd20], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd28], rax
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], rsi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
movabs rax, 0x524ac5ecea15343e
mov qword [rsp + 0x70], rdi
mov qword [0x18033c890], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 1
call fcn.1800cdff0
cmp dword [rax], edi
je 0x18007095b
movabs rax, 0x997abd671d25ca0b
mov qword [rsp + 0x70], rdi
mov qword [0x18033c890], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], rdi
mov qword [0x1802bdd20], rax
mov dword [rsp + 0x70], 1
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd28], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
cmp dword [rax], edi
je 0x18007095b
movabs rax, 0x9a9112a0fe9a4713
mov qword [rsp + 0x70], rdi
mov qword [0x18033c890], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
mov dword [0x1802bdc58], edi
mov qword [0x1802bdd28], rdi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
mov ecx, dword [rax]
mov dword [rsp + 0x78], ecx
jmp 0x18007095f
mov ecx, dword [rsp + 0x78]
call fcn.1800b2ef0
movabs rax, 0x6ac7003fa6e5575e
mov qword [rsp + 0x70], rdi
mov qword [0x18033c890], rax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 1
call fcn.1800cdff0
movabs r15, 0xe83d4f9ba2a38914
movabs r12, 0x8e2530aa8ada980e
cmp dword [rax], edi
je 0x180070a40
mov qword [rsp + 0x70], rdi
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], r15
mov dword [0x1802bdc48], 1
call fcn.1800cdff0
mov qword [rsp + 0x70], rdi
mov qword [0x18033c890], r12
movss xmm0, dword [rax]
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], rdi
movss dword [rsp + 0x70], xmm0
mov qword [0x1802bdd20], rax
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd28], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
mov ecx, dword [rsp + 0x78]
movaps xmm3, xmm8
mov dword [rsp + 0x30], edi
movaps xmm2, xmm7
mov dword [rsp + 0x28], edi
movaps xmm1, xmm6
mov dword [rsp + 0x20], edi
call fcn.1800afcc0
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180070c1a
mov qword [rsp + 0x70], rdi
movabs rax, 0xe65f427eb70ab1ed
mov qword [0x18033c890], rax
mov dword [rsp + 0x70], 0xffffffff
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
lea rax, str.Foot_Swish
mov qword [0x1802bdd28], rax
mov eax, dword [rsp + 0x78]
mov qword [rsp + 0x70], rdi
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd30], rax
lea rax, str.docks_heist_finale_2a_sounds
mov qword [0x1802bdd38], rax
mov dword [0x1802bdc58], edi
mov qword [0x1802bdd40], rdi
mov qword [0x1802bdd48], rdi
mov dword [0x1802bdc48], 6
call fcn.1800cdff0
mov qword [rsp + 0x70], rdi
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], r15
mov dword [0x1802bdc48], 1
call fcn.1800cdff0
mov qword [rsp + 0x70], rdi
mov qword [0x18033c890], r12
movss xmm0, dword [rax]
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x70], eax
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x70], rdi
movss dword [rsp + 0x70], xmm0
mov qword [0x1802bdd20], rax
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd28], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
movss xmm0, dword [0x18026e138]
mov edx, 1
mov ecx, dword [rsp + 0x78]
mov dword [rsp + 0x60], edi
mov dword [rsp + 0x58], 1
mov dword [rsp + 0x50], 1
mov dword [rsp + 0x48], edi
mov dword [rsp + 0x40], edi
mulss xmm9, xmm0
mulss xmm10, xmm0
mulss xmm11, xmm0
xorps xmm0, xmm0
movss dword [rsp + 0x38], xmm0
movaps xmm3, xmm10
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x28], xmm0
movaps xmm2, xmm11
movss dword [rsp + 0x20], xmm9
call fcn.1800b0430
mov qword [rsp + 0x70], rdi
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
mov byte [0x18031e816], dil
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], rsi
mov qword [0x1802bdd28], rdi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
mov r12, qword [rsp + 0x140]
mov dword [0x1802bdc48], edi
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], r14
call fcn.1800cdff0
mov qword [rsp + 0x70], rdi
mov qword [0x18033c890], r13
mov ecx, dword [rax]
mov dword [rsp + 0x70], ecx
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
lea rax, [rsp + 0x78]
mov qword [0x1802bdd28], rax
mov dword [0x1802bdc58], edi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
movaps xmm11, xmmword [rsp + 0xb0]
movaps xmm10, xmmword [rsp + 0xc0]
movaps xmm9, xmmword [rsp + 0xd0]
movaps xmm8, xmmword [rsp + 0xe0]
movaps xmm7, xmmword [rsp + 0xf0]
movaps xmm6, xmmword [rsp + 0x100]
mov r15, qword [rsp + 0x110]
mov r14, qword [rsp + 0x150]
mov r13, qword [rsp + 0x148]
cmp dword [rax], edi
jne 0x180070d08
mov qword [rsp + 0x70], rdi
mov dword [rsp + 0x70], ebx
mov rax, qword [rsp + 0x70]
mov qword [0x1802bdd20], rax
mov byte [0x18031e816], 1
mov dword [0x1802bdc58], edi
mov qword [0x18033c890], rsi
mov qword [0x1802bdd28], rdi
mov dword [0x1802bdc48], 2
call fcn.1800cdff0
mov rcx, qword [rbp - 0x68]
xor rcx, rsp
call fcn.1801e62c0
add rsp, 0x118
pop rdi
pop rsi
pop rbx
pop rbp
ret