Function at 0x180084710
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x70
mov rax, qword [0x1803490c0]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rsi, rcx
mov ecx, dword [0x180349ee0]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov ecx, 0x8001
test cx, ax
je 0x180084763
cmp byte [0x18034cb3f], 0
sete byte [0x18034cb3f]
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp byte [0x18034cb3f], 0
je 0x1800849fc
cmp byte [rsi + 8], 0
je 0x1800849fc
cmp byte [0x180349d10], 0
je 0x1800849c0
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 0x2c
lea rdx, str.net_minecraft_client_renderer_EntityRenderer
lea rcx, [rsp + 0x20]
call fcn.180004d60
nop
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.180064b20
nop
lea rcx, [rsp + 0x20]
call fcn.180004130
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
mov r8d, 0xc
lea rdx, str.getMouseOver
lea rcx, [rsp + 0x20]
call fcn.180004d60
nop
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x40]
call fcn.180070890
mov rbx, rax
lea rcx, [rsp + 0x20]
call fcn.180004130
mov rcx, qword [rbx]
call fcn.180003240
mov qword [rsi + 0x40], rax
mov rcx, rax
call fcn.180003440
mov rbp, rax
mov qword [rsi + 0x28], rax
xor edi, edi
test rax, rax
jne 0x180084838
mov ebp, edi
jmp 0x180084902
mov ecx, dword [0x18034bc1c]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov eax, dword [rdx + rax]
cmp dword [0x18034d1e8], eax
jle 0x1800848eb
lea rcx, [0x18034d1e8]
call fcn.1800960a8
cmp dword [0x18034d1e8], 0xffffffff
jne 0x1800848eb
mov rax, qword [sym.imp.jvm.dll_gHotSpotVMStructs]
mov rbx, qword [rax]
mov rax, qword [rbx]
test rax, rax
je 0x1800848d5
lea r14, str._length
nop dword [rax]
mov rdx, rax
lea rcx, str.ConstantPool
call fcn.1800c30f0
test eax, eax
jne 0x1800848c9
mov rcx, rdi
mov rdx, qword [rbx + 8]
nop word [rax + rax]
movzx eax, byte [r14 + rcx]
inc rcx
cmp al, byte [rdx + rcx - 1]
jne 0x1800848c9
cmp rcx, 8
jne 0x1800848b0
cmp dword [rbx + 0x18], edi
je 0x1800848d8
add rbx, 0x30
mov rax, qword [rbx]
test rax, rax
jne 0x180084890
mov rbx, rdi
mov qword [0x18034cf30], rbx
lea rcx, [0x18034d1e8]
call fcn.18009603c
mov rax, qword [0x18034cf30]
test rax, rax
jne 0x1800848fb
mov ebp, edi
jmp 0x180084902
mov rax, qword [rax + 0x20]
mov ebp, dword [rax + rbp]
call fcn.180003620
lea ebx, [rax + rbp*8]
mov r8d, 4
mov edx, ebx
mov rcx, qword [rsi + 0x28]
call fcn.18006df30
mov qword [rsi + 0x30], rax
movsxd r8, ebx
mov rdx, qword [rsi + 0x28]
mov rcx, rax
call fcn.1800c3a80
mov rdx, qword [rsi + 0x30]
mov rcx, qword [rsi + 0x40]
call fcn.180003530
mov rbx, qword [rsi + 0x30]
test rbx, rbx
jne 0x180084949
mov rcx, rdi
jmp 0x18008495d
call fcn.180003620
test eax, eax
jne 0x180084957
mov rcx, rdi
jmp 0x18008495d
movsxd rcx, eax
add rcx, rbx
movsxd rdx, ebp
test ebp, ebp
jle 0x1800849af
mov r8d, dword [0x180349d40]
movsd xmm2, qword [0x180332248]
movsd xmm3, qword [0x180332268]
nop dword [rax + rax]
lea eax, [r8 - 3]
cmp eax, 1
jbe 0x18008498e
movaps xmm1, xmm2
jmp 0x180084991
movaps xmm1, xmm3
movsd xmm0, qword [rcx]
ucomisd xmm0, xmm1
jp 0x18008499d
je 0x1800849ab
inc rdi
add rcx, 8
cmp rdi, rdx
jl 0x180084980
jmp 0x1800849af
mov qword [rsi + 0x38], rcx
mov byte [0x180349d10], 0
lea rcx, [rsp + 0x40]
call fcn.180004130
mov rcx, qword [rsi + 0x38]
test rcx, rcx
je 0x180084a46
mov eax, dword [0x180349d40]
add eax, 0xfffffffd
movss xmm1, dword [rsi + 0x20]
cmp eax, 1
ja 0x1800849e0
mulss xmm1, xmm1
movss xmm0, dword [0x180349d0c]
ucomiss xmm0, xmm1
jp 0x1800849ef
je 0x180084a46
cvtps2pd xmm0, xmm1
movss dword [0x180349d0c], xmm1
jmp 0x180084a42
mov rcx, qword [rsi + 0x38]
test rcx, rcx
je 0x180084a46
movss xmm0, dword [0x180349d0c]
ucomiss xmm0, dword [0x180332380]
jp 0x180084a18
je 0x180084a46
mov eax, dword [0x180349d40]
add eax, 0xfffffffd
cmp eax, 1
jbe 0x180084a30
movsd xmm0, qword [0x180332248]
jmp 0x180084a38
movsd xmm0, qword [0x180332268]
mov dword [0x180349d0c], 0xbf800000
movsd qword [rcx], xmm0
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.180095fe0
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret