Function at 0x18008d660
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rdi
push rbp
lea rbp, [rax - 0x5f]
sub rsp, 0xc0
cmp byte [rcx + 8], 0
mov rdi, r8
mov rbx, rcx
je 0x18008d9fd
movaps xmmword [rax - 0x68], xmm11
lea rdx, [rbp - 0x39]
movaps xmmword [rax - 0x78], xmm12
mov rcx, r8
movaps xmmword [rax - 0x18], xmm6
movaps xmmword [rax - 0x28], xmm7
movaps xmmword [rax - 0x38], xmm8
movaps xmmword [rax - 0x48], xmm9
movaps xmmword [rax - 0x58], xmm10
call fcn.180064620
cmp dword [0x18035c20c], 0
xorps xmm11, xmm11
movsd xmm12, qword [0x18033ffe8]
jne 0x18008d812
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d750
movss xmm7, dword [rbx + 0x28]
lea rdx, [rbp - 0x49]
mov rcx, rdi
cvtps2pd xmm7, xmm7
call fcn.180064480
movsd xmm0, qword [rax + 8]
movsd xmm8, qword [rax]
mulsd xmm0, xmm12
mulsd xmm8, xmm12
call fcn.1800cbe50
movaps xmm6, xmm0
movaps xmm0, xmm8
mulsd xmm6, xmm7
call fcn.1800ccbd0
movsd xmm9, qword [rbp - 0x39]
mulsd xmm0, xmm6
subsd xmm9, xmm0
movaps xmm0, xmm8
movsd qword [rbp - 0x39], xmm9
call fcn.1800cbe50
movsd xmm10, qword [rbp - 0x29]
mulsd xmm0, xmm6
addsd xmm10, xmm0
movsd qword [rbp - 0x29], xmm10
jmp 0x18008d75c
movsd xmm10, qword [rbp - 0x29]
movsd xmm9, qword [rbp - 0x39]
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d7d7
movss xmm7, dword [rbx + 0x28]
lea rdx, [rbp - 0x49]
mov rcx, rdi
cvtps2pd xmm7, xmm7
call fcn.180064480
movsd xmm0, qword [rax + 8]
movsd xmm8, qword [rax]
mulsd xmm0, xmm12
mulsd xmm8, xmm12
call fcn.1800cbe50
movaps xmm6, xmm0
movaps xmm0, xmm8
mulsd xmm6, xmm7
call fcn.1800ccbd0
xorps xmm0, xmmword [0x180340660]
mulsd xmm0, xmm6
subsd xmm9, xmm0
movaps xmm0, xmm8
movsd qword [rbp - 0x39], xmm9
call fcn.1800cbe50
mulsd xmm0, xmm6
subsd xmm10, xmm0
movsd qword [rbp - 0x29], xmm10
cmp byte [0x18035ba5a], 0
mov ecx, 0x20
je 0x18008d939
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d7fa
movsd qword [rbp - 0x31], xmm11
mov rcx, rdi
call fcn.180064940
test al, al
jne 0x18008d81e
lea rdx, [rbp - 0x39]
mov rcx, rdi
call fcn.180064cc0
movsd xmm9, qword [rbp - 0x39]
movsd xmm10, qword [rbp - 0x29]
cmp dword [0x18035c20c], 1
jne 0x18008d9c9
mov ecx, 0x57
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d89f
movss xmm7, dword [rbx + 0x28]
lea rdx, [rbp - 0x49]
mov rcx, rdi
cvtps2pd xmm7, xmm7
call fcn.180064480
movsd xmm0, qword [rax + 8]
movsd xmm8, qword [rax]
mulsd xmm0, xmm12
mulsd xmm8, xmm12
call fcn.1800cbe50
movaps xmm6, xmm0
movaps xmm0, xmm8
mulsd xmm6, xmm7
call fcn.1800ccbd0
mulsd xmm0, xmm6
subsd xmm9, xmm0
movaps xmm0, xmm8
movsd qword [rbp - 0x39], xmm9
call fcn.1800cbe50
mulsd xmm0, xmm6
addsd xmm10, xmm0
movsd qword [rbp - 0x29], xmm10
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d91a
movss xmm7, dword [rbx + 0x28]
lea rdx, [rbp - 0x49]
mov rcx, rdi
cvtps2pd xmm7, xmm7
call fcn.180064480
movsd xmm0, qword [rax + 8]
movsd xmm8, qword [rax]
mulsd xmm0, xmm12
mulsd xmm8, xmm12
call fcn.1800cbe50
movaps xmm6, xmm0
movaps xmm0, xmm8
mulsd xmm6, xmm7
call fcn.1800ccbd0
xorps xmm0, xmmword [0x180340660]
mulsd xmm0, xmm6
subsd xmm9, xmm0
movaps xmm0, xmm8
movsd qword [rbp - 0x39], xmm9
call fcn.1800cbe50
mulsd xmm0, xmm6
subsd xmm10, xmm0
movsd qword [rbp - 0x29], xmm10
mov ecx, 0x20
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d984
movss xmm0, dword [rbx + 0x28]
cvtps2pd xmm0, xmm0
movsd qword [rbp - 0x31], xmm0
jmp 0x18008d9b1
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d956
movss xmm0, dword [rbx + 0x28]
cvtps2pd xmm0, xmm0
movsd qword [rbp - 0x31], xmm0
jmp 0x18008d7fa
mov ecx, 0xa0
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d7f4
movss xmm0, dword [rbx + 0x28]
xorps xmm0, xmmword [0x180340670]
cvtss2sd xmm0, xmm0
movsd qword [rbp - 0x31], xmm0
jmp 0x18008d7fa
mov ecx, 0xa0
call qword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
jns 0x18008d9ab
movss xmm0, dword [rbx + 0x28]
xorps xmm0, xmmword [0x180340670]
cvtss2sd xmm0, xmm0
movsd qword [rbp - 0x31], xmm0
jmp 0x18008d9b1
movsd qword [rbp - 0x31], xmm11
mov rcx, rdi
call fcn.180064940
test al, al
jne 0x18008d9c9
lea rdx, [rbp - 0x39]
mov rcx, rdi
call fcn.180064cc0
movaps xmm7, xmmword [rsp + 0xa0]
movaps xmm10, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x80]
movaps xmm8, xmmword [rsp + 0x90]
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm11, xmmword [rsp + 0x60]
movaps xmm12, xmmword [rsp + 0x50]
lea r11, [rsp + 0xc0]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret