Function at 0x180006600
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
sub rsp, 0xc8
cmp byte [0x1800951d6], 0
je 0x180006e98
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax - 8], rsi
mov qword [rax - 0x10], rdi
xor edi, edi
mov qword [rax - 0x18], r14
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
movabs rax, 0xd80958fc74e988a6
mov qword [0x180096498], rax
mov dword [0x180085c08], edi
mov dword [0x180085c18], edi
call fcn.18001c910
mov qword [rsp + 0xd8], rdi
mov ebx, dword [rax]
movabs rax, 0x3fef770d40960d5a
mov qword [0x180096498], rax
mov dword [rsp + 0xd8], ebx
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov qword [0x180085ce8], rdi
mov dword [0x180085c08], 2
call fcn.18001c910
mov ecx, ebx
movups xmm8, xmmword [rax]
movsd xmm7, qword [rax + 0x10]
movaps xmm9, xmm8
movaps xmm3, xmm7
shufps xmm9, xmm8, 0xaa
movaps xmm1, xmm8
movaps xmm2, xmm9
call fcn.18000f270
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm10, dword [0x180059c88]
movabs rbp, 0xe83d4f9ba2a38914
movabs r14, 0x8e2530aa8ada980e
movabs rsi, 0x91aef906bca88877
test ax, ax
jne 0x180006776
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], 2
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
mov qword [0x180085ce0], rax
mov dword [rsp + 0xd8], 0x10c
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rsi
mov dword [0x180085c08], 2
call fcn.18001c910
cmp dword [rax], edi
je 0x18000685c
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rbp
mov dword [0x180085c08], 1
call fcn.18001c910
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov qword [0x180096498], r14
movss xmm6, dword [rax]
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
movss dword [rsp + 0xd8], xmm6
mov qword [0x180085ce0], rax
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov dword [0x180085c08], 2
call fcn.18001c910
mulss xmm6, dword [0x180059d44]
divss xmm6, dword [0x180059ddc]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mulss xmm0, xmm10
mulss xmm0, dword [0x180059e54]
subss xmm8, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm0, xmm10
movaps xmm3, xmm7
mov ecx, ebx
movaps xmm1, xmm8
subss xmm9, xmm0
movaps xmm2, xmm9
call fcn.18000f270
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1800068d4
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], 2
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
mov qword [0x180085ce0], rax
mov dword [rsp + 0xd8], 0x10d
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rsi
mov dword [0x180085c08], 2
call fcn.18001c910
cmp dword [rax], edi
je 0x1800069ba
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rbp
mov dword [0x180085c08], 1
call fcn.18001c910
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov qword [0x180096498], r14
movss xmm6, dword [rax]
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
movss dword [rsp + 0xd8], xmm6
mov qword [0x180085ce0], rax
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov dword [0x180085c08], 2
call fcn.18001c910
mulss xmm6, dword [0x180059d44]
divss xmm6, dword [0x180059ddc]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mulss xmm0, xmm10
mulss xmm0, dword [0x180059e54]
addss xmm8, xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm0, xmm10
movaps xmm3, xmm7
mov ecx, ebx
movaps xmm1, xmm8
addss xmm9, xmm0
movaps xmm2, xmm9
call fcn.18000f270
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180006a32
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], 2
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
mov qword [0x180085ce0], rax
mov dword [rsp + 0xd8], 0x10a
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rsi
mov dword [0x180085c08], 2
call fcn.18001c910
cmp dword [rax], edi
je 0x180006acf
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rbp
mov dword [0x180085c08], 1
call fcn.18001c910
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov qword [0x180096498], r14
movss xmm0, dword [rax]
mov rax, qword [rsp + 0xd8]
addss xmm0, xmm10
mov qword [rsp + 0xd8], rdi
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov dword [0x180085c08], 2
movss dword [rsp + 0xd8], xmm0
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
call fcn.18001c910
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180006b47
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], 2
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
mov qword [0x180085ce0], rax
mov dword [rsp + 0xd8], 0x10f
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rsi
mov dword [0x180085c08], 2
call fcn.18001c910
cmp dword [rax], edi
je 0x180006be4
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rbp
mov dword [0x180085c08], 1
call fcn.18001c910
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov qword [0x180096498], r14
movss xmm0, dword [rax]
mov rax, qword [rsp + 0xd8]
subss xmm0, xmm10
mov qword [rsp + 0xd8], rdi
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov dword [0x180085c08], 2
movss dword [rsp + 0xd8], xmm0
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
call fcn.18001c910
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movsd xmm6, qword [0x180059cf0]
movaps xmm10, xmmword [rsp + 0x60]
test ax, ax
jne 0x180006c6a
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], 2
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
mov qword [0x180085ce0], rax
mov dword [rsp + 0xd8], 0xce
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rsi
mov dword [0x180085c08], 2
call fcn.18001c910
cmp dword [rax], edi
je 0x180006d23
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rbp
mov dword [0x180085c08], 1
call fcn.18001c910
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov qword [0x180096498], r14
movss xmm0, dword [rax]
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
movss dword [rsp + 0xd8], xmm0
mov qword [0x180085ce0], rax
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov dword [0x180085c08], 2
call fcn.18001c910
xorps xmm0, xmm0
movaps xmm2, xmm9
cvtss2sd xmm0, xmm7
mov ecx, ebx
movaps xmm1, xmm8
subsd xmm0, xmm6
cvtpd2ps xmm7, xmm0
movaps xmm3, xmm7
call fcn.18000f270
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x180006d9b
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], 2
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
mov qword [0x180085ce0], rax
mov dword [rsp + 0xd8], 0xcd
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rsi
mov dword [0x180085c08], 2
call fcn.18001c910
cmp dword [rax], edi
je 0x180006e51
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce0], rax
mov dword [0x180085c18], edi
mov qword [0x180096498], rbp
mov dword [0x180085c08], 1
call fcn.18001c910
mov qword [rsp + 0xd8], rdi
mov dword [rsp + 0xd8], ebx
mov qword [0x180096498], r14
movss xmm0, dword [rax]
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0xd8], rdi
movss dword [rsp + 0xd8], xmm0
mov qword [0x180085ce0], rax
mov rax, qword [rsp + 0xd8]
mov qword [0x180085ce8], rax
mov dword [0x180085c18], edi
mov dword [0x180085c08], 2
call fcn.18001c910
xorps xmm0, xmm0
movaps xmm2, xmm9
cvtss2sd xmm0, xmm7
mov ecx, ebx
movaps xmm1, xmm8
addsd xmm0, xmm6
cvtpd2ps xmm3, xmm0
call fcn.18000f270
movaps xmm8, xmmword [rsp + 0x80]
movaps xmm7, xmmword [rsp + 0x90]
movaps xmm6, xmmword [rsp + 0xa0]
mov r14, qword [rsp + 0xb0]
mov rdi, qword [rsp + 0xb8]
mov rsi, qword [rsp + 0xc0]
mov rbp, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0xd0]
movaps xmm9, xmmword [rsp + 0x70]
add rsp, 0xc8
ret