Function at 0x1800d7640
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rbp
mov byte [rax + 8], cl
push rsi
push rdi
push r14
sub rsp, 0xa0
movaps xmmword [rax - 0x28], xmm6
xor edi, edi
movaps xmmword [rax - 0x38], xmm7
movabs rsi, 0xd80958fc74e988a6
movaps xmmword [rax - 0x48], xmm8
movaps xmmword [rax - 0x58], xmm9
mov dword [0x1805870e8], edi
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rsi
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov ebx, dword [rax]
movabs rax, 0x3fef770d40960d5a
mov qword [0x1805dd278], rax
mov dword [rsp + 0xc8], ebx
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], edi
mov qword [0x180587128], rdi
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
movsd xmm0, qword [rax + 0x10]
movups xmm9, xmmword [rax]
movabs rax, 0x997abd671d25ca0b
mov dword [0x1805870f8], edi
movsd qword [rsp + 0x50], xmm0
mov qword [0x1805dd278], rax
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov qword [0x180587128], rdi
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], edi
je 0x1800d77a1
mov dword [0x1805870e8], edi
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rsi
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov ecx, dword [rax]
movabs rax, 0x9a9112a0fe9a4713
mov dword [rsp + 0xc8], ecx
mov qword [0x1805dd278], rax
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], edi
mov qword [0x180587128], rdi
mov dword [0x1805870e8], 2
call fcn.1801e4620
mov ebx, dword [rax]
movss xmm7, dword [rsp + 0x50]
movaps xmm8, xmm9
shufps xmm8, xmm9, 0xaa
movaps xmm3, xmm7
mov dword [rsp + 0x30], edi
movaps xmm2, xmm8
mov dword [rsp + 0x28], edi
movaps xmm1, xmm9
mov ecx, ebx
mov dword [rsp + 0x20], edi
call fcn.18015c9a0
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movabs rbp, 0xe83d4f9ba2a38914
movabs rsi, 0x91aef906bca88877
movabs r14, 0x8e2530aa8ada980e
test ax, ax
jne 0x1800d7864
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], 2
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [0x180587120], rax
mov dword [rsp + 0xc8], 0x10c
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], edi
je 0x1800d7959
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov qword [0x1805dd278], r14
movss xmm6, dword [rax]
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
movss dword [rsp + 0xc0], xmm6
mov eax, dword [rsp + 0xc0]
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov dword [0x1805870e8], 2
call fcn.1801e4620
mulss xmm6, dword [0x180504030]
movaps xmm0, xmm6
call fcn.1803899e0
movaps xmm1, xmm0
mov dword [rsp + 0x30], edi
mulss xmm1, dword [0x180506b40]
movaps xmm3, xmm7
mov ecx, ebx
mov dword [rsp + 0x28], edi
shufps xmm0, xmm0, 1
mulss xmm0, dword [0x180504208]
mov dword [rsp + 0x20], edi
subss xmm9, xmm1
subss xmm8, xmm0
movaps xmm1, xmm9
movaps xmm2, xmm8
call fcn.18015c9a0
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1800d79d1
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], 2
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [0x180587120], rax
mov dword [rsp + 0xc8], 0x10d
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], edi
je 0x1800d7ac6
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov qword [0x1805dd278], r14
movss xmm6, dword [rax]
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
movss dword [rsp + 0xc0], xmm6
mov eax, dword [rsp + 0xc0]
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov dword [0x1805870e8], 2
call fcn.1801e4620
mulss xmm6, dword [0x180504030]
movaps xmm0, xmm6
call fcn.1803899e0
movaps xmm1, xmm0
mov dword [rsp + 0x30], edi
mulss xmm1, dword [0x1805071fc]
movaps xmm3, xmm7
mov ecx, ebx
mov dword [rsp + 0x28], edi
shufps xmm0, xmm0, 1
mulss xmm0, dword [0x18050456c]
mov dword [rsp + 0x20], edi
addss xmm9, xmm1
addss xmm8, xmm0
movaps xmm1, xmm9
movaps xmm2, xmm8
call fcn.18015c9a0
mov ecx, 0x41
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movss xmm6, dword [0x1805044e4]
test ax, ax
jne 0x1800d7b46
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], 2
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [0x180587120], rax
mov dword [rsp + 0xc8], 0x10a
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], edi
je 0x1800d7bf0
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov qword [0x1805dd278], r14
movss xmm0, dword [rax]
mov rax, qword [rsp + 0xc8]
addss xmm0, xmm6
mov qword [0x180587120], rax
mov qword [rsp + 0xc8], rdi
mov dword [0x1805870f8], edi
mov dword [0x1805870e8], 2
movss dword [rsp + 0xc0], xmm0
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
call fcn.1801e4620
mov ecx, 0x44
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1800d7c68
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], 2
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [0x180587120], rax
mov dword [rsp + 0xc8], 0x10f
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], edi
je 0x1800d7d12
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov qword [0x1805dd278], r14
movss xmm0, dword [rax]
mov rax, qword [rsp + 0xc8]
subss xmm0, xmm6
mov qword [0x180587120], rax
mov qword [rsp + 0xc8], rdi
mov dword [0x1805870f8], edi
mov dword [0x1805870e8], 2
movss dword [rsp + 0xc0], xmm0
mov eax, dword [rsp + 0xc0]
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
call fcn.1801e4620
mov ecx, 0x10
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1800d7d8a
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], 2
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [0x180587120], rax
mov dword [rsp + 0xc8], 0xce
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], edi
je 0x1800d7e56
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov qword [0x1805dd278], r14
movss xmm0, dword [rax]
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
movss dword [rsp + 0xc0], xmm0
mov eax, dword [rsp + 0xc0]
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov dword [0x1805870e8], 2
call fcn.1801e4620
addss xmm7, dword [0x180506d68]
mov dword [rsp + 0x30], edi
movaps xmm2, xmm8
mov dword [rsp + 0x28], edi
movaps xmm1, xmm9
mov ecx, ebx
mov dword [rsp + 0x20], edi
movaps xmm3, xmm7
call fcn.18015c9a0
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jne 0x1800d7ece
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], 2
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0xc8], rdi
mov qword [0x180587120], rax
mov dword [rsp + 0xc8], 0xcd
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rsi
mov dword [0x1805870e8], 2
call fcn.1801e4620
cmp dword [rax], edi
je 0x1800d7f96
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
mov dword [0x1805870f8], edi
mov qword [0x1805dd278], rbp
mov dword [0x1805870e8], 1
call fcn.1801e4620
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], ebx
mov qword [0x1805dd278], r14
movss xmm0, dword [rax]
mov rax, qword [rsp + 0xc8]
mov qword [0x180587120], rax
movss dword [rsp + 0xc0], xmm0
mov eax, dword [rsp + 0xc0]
mov qword [rsp + 0xc8], rdi
mov dword [rsp + 0xc8], eax
mov rax, qword [rsp + 0xc8]
mov qword [0x180587128], rax
mov dword [0x1805870f8], edi
mov dword [0x1805870e8], 2
call fcn.1801e4620
addss xmm7, xmm6
mov dword [rsp + 0x30], edi
mov dword [rsp + 0x28], edi
movaps xmm2, xmm8
movaps xmm1, xmm9
mov dword [rsp + 0x20], edi
mov ecx, ebx
movaps xmm3, xmm7
call fcn.18015c9a0
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret