Function at 0x18008e250
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xb8]
sub rsp, 0x190
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x180315280]
xor rax, rsp
mov qword [rbp - 0x20], rax
mov r13, rcx
xor esi, esi
cmp byte [0x18031531b], sil
je 0x18008e428
mov rax, qword [0x180316a48]
mov rax, qword [rax]
mov qword [rsp + 0x50], rax
cmp byte [rax + 0x19], sil
jne 0x18008e421
lea rdi, str.Blink2
nop word [rax + rax]
lea rbx, [rax + 0x20]
mov rdx, rbx
lea rcx, [rbp - 0x58]
call fcn.1800056d0
nop
lea rdx, [rbx + 0x20]
lea rcx, [rbp - 0x38]
call fcn.180006c80
nop
mov r10, qword [rbp - 0x38]
mov r8, r10
mov r11, qword [rbp - 0x30]
cmp r10, r11
je 0x18008e380
nop
mov r9, qword [r8]
lea rdx, [r9 + 8]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x18008e345
mov rdx, qword [rdx]
cmp rax, 6
jne 0x18008e377
mov rcx, rsi
nop
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [rdi + rcx - 1]
jne 0x18008e367
cmp rcx, 6
jne 0x18008e350
mov eax, esi
jmp 0x18008e36c
sbb eax, eax
or eax, 1
test eax, eax
jne 0x18008e377
mov qword [0x180318568], r9
add r8, 8
cmp r8, r11
jne 0x18008e330
test r10, r10
je 0x18008e3d1
mov rax, qword [rbp - 0x28]
sub rax, r10
sar rax, 3
lea rdx, [rax*8]
mov rax, r10
cmp rdx, 0x1000
jb 0x18008e3bd
add rdx, 0x27
mov r10, qword [r10 - 8]
sub rax, r10
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008e469
mov rcx, r10
call fcn.1800a9fd4
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x38], xmm0
mov qword [rbp - 0x28], rsi
mov rdx, qword [rbp - 0x40]
cmp rdx, 0xf
jbe 0x18008e408
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18008e403
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x18008e469
call fcn.1800a9fd4
lea rcx, [rsp + 0x50]
call fcn.180007ba0
mov rax, qword [rsp + 0x50]
cmp byte [rax + 0x19], 0
je 0x18008e300
mov byte [0x18031531b], 0
cmp byte [r13 + 0x50], 0
jne 0x18008e470
cmp byte [0x1803167bf], 0
je 0x18008eb75
mov rax, qword [0x180318568]
mov byte [rax + 0x50], 0
lea rcx, [r13 + 0x28]
cmp qword [r13 + 0x40], 0xf
jbe 0x18008e456
mov rcx, qword [r13 + 0x28]
mov qword [r13 + 0x38], rsi
mov byte [rcx], 0
mov byte [0x1803167bf], 0
jmp 0x18008eb75
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov ecx, dword [0x180316334]
mov rax, qword gs:[0x58]
mov edi, 4
mov rbx, qword [rax + rcx*8]
lea r15, vtable.EntityPlayer.0
mov eax, dword [rbx + rdi]
cmp dword [0x180318564], eax
jle 0x18008e4fe
lea rcx, [0x180318564]
call fcn.1800a9ad8
cmp dword [0x180318564], 0xffffffff
jne 0x18008e4fe
mov dword [0x180318549], esi
mov word [0x18031854d], si
mov byte [0x18031854f], 0
mov qword [0x180318540], rsi
mov byte [0x180318548], 0
mov rax, qword [0x180316340]
mov qword [0x180318538], rax
mov qword [0x180318530], r15
lea rcx, [0x1800afd10]
call fcn.1800a9fb4
lea rcx, [0x180318564]
call fcn.1800a9a6c
mov eax, dword [rbx + rdi]
cmp dword [0x180318560], eax
jle 0x18008e550
lea rcx, [0x180318560]
call fcn.1800a9ad8
cmp dword [0x180318560], 0xffffffff
jne 0x18008e550
mov qword [0x180318550], rsi
lea rcx, [rsp + 0x50]
call fcn.18009abf0
mov rdx, qword [rax]
mov qword [0x180318550], rdx
mov qword [0x180318558], 0xa
lea rcx, [0x180318560]
call fcn.1800a9a6c
lea rcx, [rsp + 0x50]
call fcn.18009abf0
mov rcx, qword [rsp + 0x50]
mov rdx, rcx
sub rdx, qword [0x180318550]
movabs rax, 0x431bde82d7b634db
imul rdx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, qword [0x180318558]
je 0x18008e5a6
mov r8d, 1
mov r9d, 0xff
cmovl r8d, r9d
test r8b, r8b
js 0x18008eb75
mov qword [0x180318550], rcx
mov rcx, qword [0x180316800]
add rcx, 0x18
lea rdx, [rsp + 0x28]
call fcn.1800672c0
mov rcx, qword [0x180316800]
add rcx, 0x18
call fcn.180068160
movss xmm1, dword [rsp + 0x2c]
addss xmm1, xmm0
movss dword [rsp + 0x50], xmm1
mov rcx, qword [0x180316800]
add rcx, 0x18
lea rdx, [rsp + 0x20]
call fcn.180067920
movss xmm8, dword [rsp + 0x20]
movss xmm13, dword [0x180304538]
movss xmm0, dword [0x18030448c]
comiss xmm13, xmm8
jb 0x18008e620
addss xmm8, xmm0
comiss xmm13, xmm8
jae 0x18008e615
movss xmm14, dword [0x18030453c]
movss xmm12, dword [0x18030447c]
comiss xmm8, xmm12
jbe 0x18008e64b
nop dword [rax + rax]
addss xmm8, xmm14
comiss xmm8, xmm12
ja 0x18008e640
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x80], rsi
xor r12b, r12b
mov byte [rbp - 0x78], r12b
mov r14, qword [0x180316340]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x70], r15
xorps xmm15, xmm15
movss dword [rsp + 0x20], xmm15
mov rcx, qword [0x180316800]
add rcx, 0x70
lea rdx, [rbp - 0x70]
call fcn.1800831a0
nop
mov rdi, qword [rbp - 0x70]
mov r15, qword [rbp - 0x68]
cmp rdi, r15
je 0x18008eaa2
movss xmm11, dword [rsp + 0x30]
movss xmm10, dword [0x180304258]
nop dword [rax]
nop dword [rax + rax]
mov rax, qword [0x180316800]
mov rdx, qword [rdi + 0x10]
mov r8, qword [rax + 0x28]
cmp rdx, r8
je 0x18008ea54
test rdx, rdx
je 0x18008e6fb
test r8, r8
je 0x18008e6fb
mov rcx, qword [rdi + 8]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
je 0x18008ea54
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x58], xmm0
mov qword [rsp + 0x68], rax
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.180068050
nop
lea rcx, [rsp + 0x58]
call fcn.1800699e0
movaps xmm6, xmm0
lea rcx, [rsp + 0x58]
call fcn.180069770
subss xmm6, xmm0
mulss xmm6, xmm10
lea rcx, [rsp + 0x58]
call fcn.180069770
movaps xmm9, xmm0
addss xmm9, xmm6
lea rcx, [rsp + 0x58]
call fcn.180069910
movaps xmm6, xmm0
lea rcx, [rsp + 0x58]
call fcn.1800696a0
subss xmm6, xmm0
mulss xmm6, xmm10
lea rcx, [rsp + 0x58]
call fcn.1800696a0
movaps xmm7, xmm0
addss xmm7, xmm6
lea rcx, [rsp + 0x58]
call fcn.180069840
movaps xmm6, xmm0
lea rcx, [rsp + 0x58]
call fcn.1800695d0
subss xmm6, xmm0
mulss xmm6, xmm10
lea rcx, [rsp + 0x58]
call fcn.1800695d0
movaps xmm10, xmm0
addss xmm10, xmm6
mov rcx, qword [0x180316800]
add rcx, 0xa0
call fcn.180069dc0
movaps xmm6, xmm0
cmp qword [rdi + 0x10], 0
jne 0x18008e7da
movaps xmm0, xmm15
movaps xmm1, xmm15
movaps xmm2, xmm15
jmp 0x18008e81f
lea rdx, [rsp + 0x38]
mov rcx, rdi
call fcn.1800672c0
mov rbx, rax
lea rdx, [rsp + 0x44]
mov rcx, rdi
call fcn.1800676c0
movss xmm1, dword [rbx + 8]
subss xmm1, dword [rax + 8]
movss xmm0, dword [rbx + 4]
subss xmm0, dword [rax + 4]
movss xmm2, dword [rbx]
subss xmm2, dword [rax]
mulss xmm1, xmm6
mulss xmm0, xmm6
mulss xmm2, xmm6
addss xmm9, xmm1
addss xmm7, xmm0
addss xmm10, xmm2
movaps xmm0, xmm9
subss xmm0, xmm11
movaps xmm11, xmm10
movss xmm1, dword [rsp + 0x28]
subss xmm11, xmm1
movaps xmm6, xmm15
ucomiss xmm11, xmm15
jp 0x18008e851
je 0x18008e888
divss xmm0, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_atanf
movaps xmm6, xmm0
comiss xmm15, xmm11
jbe 0x18008e86e
movss xmm0, dword [0x180304454]
jmp 0x18008e876
movss xmm0, dword [0x180304530]
mulss xmm6, dword [0x180304444]
addss xmm6, xmm0
movss xmm1, dword [rsp + 0x28]
subss xmm6, xmm8
comiss xmm13, xmm6
jb 0x18008e8aa
movss xmm0, dword [0x18030448c]
nop dword [rax + rax]
addss xmm6, xmm0
comiss xmm13, xmm6
jae 0x18008e8a0
comiss xmm6, xmm12
jbe 0x18008e8bb
addss xmm6, xmm14
comiss xmm6, xmm12
ja 0x18008e8b0
movss xmm11, dword [rsp + 0x30]
subss xmm9, xmm11
subss xmm7, dword [rsp + 0x50]
subss xmm10, xmm1
mulss xmm7, xmm7
mulss xmm10, xmm10
addss xmm7, xmm10
mulss xmm9, xmm9
addss xmm7, xmm9
xorps xmm0, xmm0
ucomiss xmm0, xmm7
ja 0x18008e8fb
xorps xmm0, xmm0
sqrtss xmm0, xmm7
jmp 0x18008e903
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [r13 + 0x70]
movss xmm10, dword [0x180304258]
comiss xmm1, xmm0
jb 0x18008e9ad
comiss xmm0, xmm10
jbe 0x18008e9ad
movaps xmm7, xmm6
movss xmm9, dword [0x1803047c0]
andps xmm7, xmm9
movss xmm0, dword [0x180304464]
comiss xmm0, xmm7
jb 0x18008e9ad
mov rdx, qword [0x180318540]
test rdx, rdx
je 0x18008e97c
mov r8, qword [rdi + 0x10]
cmp rdx, r8
je 0x18008ea63
test r8, r8
je 0x18008e97c
mov rcx, qword [0x180318538]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
je 0x18008ea63
test rsi, rsi
je 0x18008e994
movss xmm0, dword [rsp + 0x20]
andps xmm0, xmm9
comiss xmm0, xmm7
jbe 0x18008ea26
mov r14, qword [rdi + 8]
mov qword [rsp + 0x78], r14
mov rsi, qword [rdi + 0x10]
mov qword [rbp - 0x80], rsi
movss dword [rsp + 0x20], xmm6
jmp 0x18008ea26
mov rdx, qword [0x180318540]
test rdx, rdx
je 0x18008ea26
mov r8, qword [rdi + 0x10]
cmp rdx, r8
je 0x18008e9e6
test r8, r8
je 0x18008ea26
mov rcx, qword [0x180318538]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
call r9
cmp al, 1
jne 0x18008ea26
mov rdx, qword [0x180318540]
cmp qword [0x180316340], 0
je 0x18008ea26
test rdx, rdx
je 0x18008ea26
mov rcx, qword [0x180318538]
mov rax, qword [rcx]
cmp byte [0x180318548], 0
je 0x18008ea11
mov r8, qword [rax + 0xb0]
jmp 0x18008ea18
mov r8, qword [rax + 0xb8]
call r8
mov qword [0x180318540], 0
cmp byte [rsp + 0x68], 0
je 0x18008ea54
cmp qword [0x180316340], 0
je 0x18008ea54
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x18008ea54
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
nop
add rdi, 0x20
cmp rdi, r15
jne 0x18008e6c0
jmp 0x18008eaa2
mov r14, qword [rdi + 8]
mov qword [rsp + 0x78], r14
mov rsi, qword [rdi + 0x10]
mov qword [rbp - 0x80], rsi
cmp byte [rsp + 0x68], 0
je 0x18008eaa2
cmp qword [0x180316340], 0
je 0x18008eaa2
mov rdx, qword [rsp + 0x60]
test rdx, rdx
je 0x18008eaa2
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
nop
lea rcx, [rbp - 0x70]
call fcn.1800830e0
mov byte [0x1803167bf], 1
test rsi, rsi
je 0x18008eb21
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x18008eb21
cmp byte [r13 + 0x7d], 0
je 0x18008eaf9
lea rcx, [rsp + 0x70]
call fcn.180067050
cmp eax, dword [r13 + 0x78]
setg al
mov rcx, qword [0x180318568]
mov byte [rcx + 0x50], al
movzx r12d, byte [rbp - 0x78]
mov rsi, qword [rbp - 0x80]
mov r14, qword [rsp + 0x78]
jmp 0x18008eb00
mov rcx, qword [0x180318568]
lea rax, str.___Lagging
lea rdx, [0x1802c5dad]
cmp byte [rcx + 0x50], 0
cmovne rdx, rax
lea rcx, [r13 + 0x28]
call fcn.18006dee0
jmp 0x18008eb4d
mov rax, qword [0x180318568]
mov byte [rax + 0x50], 0
mov byte [0x1803167a8], 0
lea rcx, [r13 + 0x28]
cmp qword [r13 + 0x40], 0xf
jbe 0x18008eb42
mov rcx, qword [r13 + 0x28]
mov qword [r13 + 0x38], 0
mov byte [rcx], 0
test r12b, r12b
je 0x18008eb75
cmp qword [0x180316340], 0
je 0x18008eb75
test rsi, rsi
je 0x18008eb75
mov rax, qword [r14]
mov r8, qword [rax + 0xb0]
mov rdx, rsi
mov rcx, r14
call r8
nop
mov rcx, qword [rbp - 0x20]
xor rcx, rsp
call fcn.1800a9a10
lea r11, [rsp + 0x190]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret