Function at 0x14000d2b0
Capabilities:
Log keystrokes via polling

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0xe0
mov rax, qword [0x140109080]
xor rax, rsp
mov qword [rsp + 0x60], rax
cmp byte [0x140109d8c], 0
mov rsi, r9
mov rbx, r8
mov rdi, rcx
je 0x14000d2f1
mov rax, qword [0x14010cf40]
test rax, rax
je 0x14000d2f1
cmp rax, rbx
jne 0x14000d5af
mov qword [rsp + 0x108], rbp
lea rdx, str.dwLocalPlayerPawn
movaps xmmword [rsp + 0xd0], xmm6
lea rcx, [rsp + 0x30]
movaps xmmword [rsp + 0xc0], xmm7
xorps xmm0, xmm0
xor ebp, ebp
movaps xmmword [rsp + 0xb0], xmm8
mov r8d, 0x11
movaps xmmword [rsp + 0xa0], xmm9
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x48], rbp
call fcn.14000d1b0
lea rdx, [rsp + 0x30]
lea rcx, [0x14010d0f0]
call fcn.14000fc60
mov rcx, rax
call fcn.1400100e0
mov rcx, qword [0x14010cf50]
lea r8, [rsp + 0x50]
movsxd rdx, eax
mov r9d, 8
add rdx, qword [rdi + 8]
mov qword [rsp + 0x20], rbp
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [rsp + 0x50]
mov qword [rdi + 0x10], rax
cmp rbx, rax
je 0x14000d57e
movsxd rdx, dword [0x140109d14]
lea rcx, [0x140109d30]
movaps xmmword [rsp + 0x90], xmm11
shl rdx, 5
add rdx, qword [0x140109d18]
movaps xmmword [rsp + 0x80], xmm12
movaps xmmword [rsp + 0x70], xmm13
call fcn.14000e120
mov r9d, 0xc
mov qword [rsp + 0x20], rbp
lea r8, [rsp + 0x50]
xorps xmm9, xmm9
mov ecx, dword [rax]
shl ecx, 5
movsxd rdx, ecx
mov rcx, qword [0x14010cf50]
add rdx, rsi
mov qword [rsp + 0x50], rbp
mov dword [rsp + 0x58], ebp
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
movss xmm8, dword [rsp + 0x50]
movss xmm7, dword [rsp + 0x54]
subss xmm8, dword [rdi + 0x38]
subss xmm7, dword [rdi + 0x3c]
movss xmm6, dword [rsp + 0x58]
subss xmm6, dword [rdi + 0x40]
movaps xmm0, xmm8
movaps xmm1, xmm7
xorps xmm6, xmmword [0x1400f4e40]
call fcn.1400b27ac
movaps xmm1, xmm0
movaps xmm0, xmm6
call fcn.1400b2afc
movaps xmm11, xmm0
movaps xmm1, xmm8
mulss xmm11, dword [0x1400f4974]
movaps xmm0, xmm7
subss xmm11, dword [rdi + 0x44]
call fcn.1400b2afc
movaps xmm12, xmm0
xorps xmm13, xmm13
mulss xmm12, dword [0x1400f4974]
movaps xmm0, xmm11
subss xmm13, dword [rdi + 0x4c]
xorps xmm7, xmm7
xorps xmm6, xmm6
subss xmm12, dword [rdi + 0x48]
xorps xmm8, xmm8
movaps xmm1, xmm12
call fcn.1400b27ac
movss xmm1, dword [0x140109d08]
comiss xmm1, xmm0
jbe 0x14000d4ad
movaps xmm7, xmm11
movaps xmm6, xmm12
movaps xmm8, xmm13
movss xmm1, dword [0x140109d7c]
mulss xmm1, dword [0x1400f485c]
movaps xmm13, xmmword [rsp + 0x70]
movaps xmm12, xmmword [rsp + 0x80]
movaps xmm11, xmmword [rsp + 0x90]
divss xmm7, xmm1
divss xmm6, xmm1
divss xmm7, dword [0x140109d04]
divss xmm6, dword [0x140109d04]
ucomiss xmm7, xmm9
jp 0x14000d505
jne 0x14000d505
ucomiss xmm6, xmm9
jp 0x14000d505
jne 0x14000d505
ucomiss xmm8, xmm9
jp 0x14000d505
je 0x14000d57e
cmp byte [0x140109d70], bpl
je 0x14000d539
movsxd rdx, dword [0x140109d74]
lea rcx, [0x140109da8]
shl rdx, 5
add rdx, qword [0x140109d90]
call fcn.14000e120
mov ecx, dword [rax]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x14000d575
ucomiss xmm7, xmm9
jp 0x14000d551
jne 0x14000d551
ucomiss xmm6, xmm9
jp 0x14000d551
jne 0x14000d551
ucomiss xmm8, xmm9
jp 0x14000d551
je 0x14000d575
xorps xmm6, xmmword [0x1400f4e40]
xor r9d, r9d
cvttss2si rdx, xmm6
mov ecx, 1
mov qword [rsp + 0x20], rbp
cvttss2si r8, xmm7
call qword [sym.imp.USER32.dll_mouse_event]
mov qword [0x14010cf40], rbx
jmp 0x14000d585
mov qword [0x14010cf40], rbp
movaps xmm8, xmmword [rsp + 0xb0]
movaps xmm7, xmmword [rsp + 0xc0]
movaps xmm6, xmmword [rsp + 0xd0]
mov rbp, qword [rsp + 0x108]
movaps xmm9, xmmword [rsp + 0xa0]
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.14008b280
add rsp, 0xe0
pop rdi
pop rsi
pop rbx
ret