Function at 0x180095210
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xd0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
mov rax, qword [0x180101040]
xor rax, rsp
mov qword [rbp - 0x19], rax
xor r12d, r12d
mov dword [rbp - 0x61], r12d
cmp byte [rcx + 0x48], r12b
je 0x180094fea
cmp byte [0x1801c55d0], r12b
jne 0x180094fea
call fcn.18004b7d0
mov rcx, rax
call fcn.18004bfa0
test al, al
je 0x180094fea
call fcn.18004b7d0
cmp byte [rax + 0x9c], r12b
jne 0x180094fea
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt eax, 0xf
jae 0x180094fea
movss xmm9, dword [0x1800e3c6c]
movaps xmm8, xmm9
mov dword [rbp - 0x59], 0xffffffff
mov rcx, qword [0x1801c55e0]
mov rax, qword [0x1801c5628]
mov rdx, qword [rax]
mov rax, qword [rcx]
mov r9, qword [rax + 0x2f8]
mov r8, qword [0x1801c58f0]
call r9
mov rbx, rax
test rax, rax
je 0x180094555
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xa8]
mov rdx, rax
call r8
mov r15, rax
mov qword [rbp - 0x21], rax
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xb8]
mov rdx, rbx
call r8
jmp 0x18009455c
mov r15, r12
mov qword [rbp - 0x21], r12
test r15, r15
je 0x180094fc8
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
xor r8d, r8d
mov rdx, r15
call r9
test al, al
jne 0x180094fc8
mov rsi, r12
mov qword [rbp - 0x29], r12
mov rdi, r12
mov qword [rbp - 0x31], r12
mov eax, dword [0x1801bd154]
mov rdx, r15
cmp eax, 2
jne 0x1800946e8
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r9, qword [rax + 0x320]
mov r8, qword [0x1801c5b20]
call r9
mov edi, eax
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r9, qword [rdx + 0x320]
mov r8, qword [0x1801c5b28]
mov rdx, r15
call r9
mov ebx, eax
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r9, qword [rdx + 0x320]
mov r8, qword [0x1801c5b10]
mov rdx, r15
call r9
mov rcx, qword [0x1801c5628]
mov rdx, qword [rcx + 0x10]
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], ebx
mov r9d, edi
mov r8, qword [0x1801c5b18]
mov rdx, qword [rdx]
mov rcx, qword [0x1801c55e0]
call fcn.18004e0e0
mov rdi, rax
test rax, rax
je 0x18009466f
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xa8]
mov rdx, rax
call r8
mov rbx, rax
mov qword [rbp - 0x49], rax
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov rax, qword [rdx + 0xb8]
mov rdx, rdi
call rax
mov r14, rbx
jmp 0x180094679
mov rbx, r12
mov qword [rbp - 0x49], rbx
mov r14, r12
mov r13d, 7
mov dword [rbp - 0x69], r13d
test r14, r14
je 0x1800946a8
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r8, qword [rax + 0xa8]
mov rdx, r14
call r8
mov rdi, rax
mov qword [rbp - 0x31], rax
jmp 0x1800946af
mov rdi, r12
mov qword [rbp - 0x31], r12
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x1800946d7
test r14, r14
je 0x1800946d7
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rbx
call r8
mov rcx, qword [0x1801c55e0]
test rdi, rdi
jne 0x180094977
test rcx, rcx
jmp 0x180094fd7
mov rbx, qword [0x1801c55e0]
mov rcx, rbx
cmp eax, 7
jne 0x1800947a0
mov r8, qword [0x1801c5b00]
call fcn.18004e0e0
mov rsi, rax
test rax, rax
je 0x1800947f3
mov rcx, qword [rbx]
mov r8, qword [rcx + 0xf8]
mov rdx, rax
mov rcx, rbx
call r8
mov r14, rax
test rax, rax
je 0x1800947f3
mov rcx, qword [rbx]
mov r10, qword [rcx + 0x480]
lea r9, str.Lnet_minecraft_world_phys_HitResult_Type_
lea r8, str.BLOCK
mov rdx, rax
mov rcx, rbx
call r10
test rax, rax
je 0x1800947f3
mov rcx, qword [rbx]
mov r9, qword [rcx + 0x488]
mov r8, rax
mov rdx, r14
mov rcx, rbx
call r9
test rax, rax
je 0x1800947f3
mov rdx, qword [rbx]
mov r9, qword [rdx + 0xc0]
mov r8, rsi
mov rdx, rax
mov rcx, rbx
call r9
test al, al
je 0x1800947f3
mov r8, qword [0x1801c5a68]
mov rdx, r15
mov rcx, rbx
jmp 0x1800947a7
mov r8, qword [0x1801c58f8]
mov rax, qword [rbx]
mov r9, qword [rax + 0x2f8]
call r9
test rax, rax
mov rsi, rax
je 0x1800947f3
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xa8]
mov rdx, rax
call r8
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xb8]
mov rbx, rax
mov qword [rbp - 0x39], rax
mov rdx, rsi
call r8
jmp 0x1800947fa
mov rbx, r12
mov qword [rbp - 0x39], rbx
mov r13d, 9
mov dword [rbp - 0x69], r13d
mov dword [rbp - 0x61], r13d
test rbx, rbx
jne 0x18009481c
mov rcx, qword [0x1801c55e0]
test rcx, rcx
jmp 0x180094fd7
mov rax, qword [0x1801c5628]
mov rsi, qword [rax + 0x10]
mov r14, qword [0x1801c55e0]
mov qword [rbp - 0x41], r12
mov rax, qword [r14]
mov r8, qword [rax + 0xa8]
mov rdx, rbx
mov rcx, r14
call r8
mov qword [rbp - 0x41], rax
lea rcx, [rbp - 0x41]
mov qword [rbp - 0x51], rcx
mov r9, rax
mov r8, qword [0x1801c5a18]
mov rdx, qword [rsi]
mov rcx, r14
call fcn.18004e0e0
mov rsi, rax
mov qword [rbp - 0x49], r12
test rax, rax
je 0x1800948ac
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xa8]
mov rdx, rax
call r8
mov r14, rax
mov qword [rbp - 0x49], rax
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb8]
mov rdx, rsi
call r8
mov r12, r14
jmp 0x1800948b3
mov r14, r12
mov qword [rbp - 0x49], r12
mov dword [rbp - 0x61], 0x29
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x1800948e3
mov rdx, qword [rbp - 0x41]
test rdx, rdx
je 0x1800948e3
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov rcx, qword [0x1801c55e0]
test r12, r12
je 0x180094908
mov rax, qword [rcx]
mov r8, qword [rax + 0xa8]
mov rdx, r12
call r8
mov rsi, rax
mov qword [rbp - 0x29], rax
mov rcx, qword [0x1801c55e0]
jmp 0x18009490e
xor esi, esi
mov qword [rbp - 0x29], rsi
test rcx, rcx
je 0x18009492f
test r12, r12
je 0x18009492f
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, r14
call r8
mov rcx, qword [0x1801c55e0]
test rsi, rsi
jne 0x180094958
test rcx, rcx
je 0x180094950
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rbx
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
jmp 0x180094fd7
test rcx, rcx
je 0x180094974
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rbx
call r8
mov rcx, qword [0x1801c55e0]
xor r12d, r12d
mov eax, dword [0x1801bd154]
cmp eax, 7
ja 0x180094990
mov edx, 0xc5
bt edx, eax
jb 0x180094a90
mov r8, qword [0x1801c57c0]
mov rdx, rsi
call fcn.18004e0e0
mov r14, rax
test rax, rax
je 0x1800949e0
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xa8]
mov rdx, rax
call r8
mov rbx, rax
mov qword [rbp - 0x49], rax
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov rax, qword [rdx + 0xb8]
mov rdx, r14
call rax
mov r14, rbx
jmp 0x1800949ea
mov rbx, r12
mov qword [rbp - 0x49], rbx
mov r14, r12
or r13d, 0x40
mov dword [rbp - 0x69], r13d
test rdi, rdi
je 0x180094a0e
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rdi
call r8
test r14, r14
je 0x180094a33
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r8, qword [rax + 0xa8]
mov rdx, r14
call r8
mov rdi, rax
mov qword [rbp - 0x31], rax
jmp 0x180094a3a
mov rdi, r12
mov qword [rbp - 0x31], r12
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094a62
test r14, r14
je 0x180094a62
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rbx
call r8
mov rcx, qword [0x1801c55e0]
test rdi, rdi
jne 0x180094a90
test rcx, rcx
je 0x180094a88
test rsi, rsi
je 0x180094a88
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rsi
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
jmp 0x180094fd7
mov qword [rbp - 0x49], r12
mov rax, qword [0x1801c5628]
lea rdx, [rbp - 0x49]
mov rcx, qword [rax + 8]
call fcn.1800a8470
nop
mov r14, qword [rbp - 0x49]
test r14, r14
je 0x180094f59
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
xor r8d, r8d
mov rdx, r14
call r9
test al, al
jne 0x180094f59
mov r13d, r12d
mov rcx, qword [0x1801c55e0]
mov r15d, dword [rbp - 0x69]
nop word [rax + rax]
movaps xmm7, xmm8
mov r9d, r13d
mov r8, qword [0x1801c59f8]
mov rdx, r14
call fcn.18004e0e0
mov r12, rax
test rax, rax
je 0x180094b45
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xa8]
mov rdx, rax
call r8
mov rbx, rax
mov qword [rbp - 0x41], rax
mov rcx, qword [0x1801c55e0]
mov rdx, qword [rcx]
mov r8, qword [rdx + 0xb8]
mov rdx, r12
call r8
jmp 0x180094b4b
xor ebx, ebx
mov qword [rbp - 0x41], rbx
or r15d, 0x10
test rbx, rbx
je 0x180094e2b
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
xor r8d, r8d
mov rdx, rbx
call r9
test al, al
jne 0x180094e2b
mov eax, dword [0x1801bd154]
test eax, eax
je 0x180094ce9
add eax, 0xfffffffa
cmp eax, 1
jbe 0x180094ce9
mov rcx, qword [0x1801c55e0]
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
xor r8d, r8d
mov rdx, rdi
call r9
test al, al
je 0x180094bda
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094bd5
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rbx
call r8
mov rcx, qword [0x1801c55e0]
jmp 0x180094e53
mov rcx, qword [0x1801c55e0]
mov r12, rcx
mov qword [rbp - 0x61], 0
test rdi, rdi
je 0x180094c0a
mov rax, qword [rcx]
mov r8, qword [rax + 0xa8]
mov rdx, rdi
call r8
mov rcx, qword [0x1801c55e0]
jmp 0x180094c0c
xor eax, eax
mov qword [rbp - 0x61], rax
lea rax, [rbp - 0x61]
mov qword [rbp - 0x51], rax
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
xor r8d, r8d
mov rdx, rbx
call r9
test al, al
jne 0x180094cbb
mov eax, dword [0x1801bd154]
test eax, eax
je 0x180094c89
cmp eax, 6
je 0x180094c89
mov r9, qword [rbp - 0x61]
mov r8, qword [0x1801c5830]
mov rdx, rbx
mov rcx, r12
call fcn.180095260
movaps xmm6, xmm0
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094c84
mov rdx, qword [rbp - 0x61]
test rdx, rdx
je 0x180094c84
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov rcx, qword [0x1801c55e0]
jmp 0x180094df3
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094cb2
mov rdx, qword [rbp - 0x61]
test rdx, rdx
je 0x180094cb2
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov rcx, qword [0x1801c55e0]
movaps xmm6, xmm9
jmp 0x180094df3
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094ce4
mov rdx, qword [rbp - 0x61]
test rdx, rdx
je 0x180094ce4
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov rcx, qword [0x1801c55e0]
jmp 0x180094df0
mov rcx, qword [0x1801c55e0]
mov r12, rcx
mov qword [rbp - 0x69], 0
test rsi, rsi
je 0x180094d19
mov rax, qword [rcx]
mov r8, qword [rax + 0xa8]
mov rdx, rsi
call r8
mov rcx, qword [0x1801c55e0]
jmp 0x180094d1b
xor eax, eax
mov qword [rbp - 0x69], rax
lea rax, [rbp - 0x69]
mov qword [rbp - 0x51], rax
mov rax, qword [rcx]
mov r9, qword [rax + 0xc0]
xor r8d, r8d
mov rdx, rbx
call r9
test al, al
jne 0x180094dc7
mov eax, dword [0x1801bd154]
test eax, eax
je 0x180094d83
add eax, 0xfffffffa
cmp eax, 1
jbe 0x180094d83
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094d7d
mov rdx, qword [rbp - 0x69]
test rdx, rdx
je 0x180094d7d
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov rcx, qword [0x1801c55e0]
movaps xmm6, xmm9
jmp 0x180094df3
mov r9, qword [rbp - 0x69]
mov r8, qword [0x1801c5830]
mov rdx, rbx
mov rcx, r12
call fcn.180095260
movaps xmm6, xmm0
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094dc5
mov rdx, qword [rbp - 0x69]
test rdx, rdx
je 0x180094dc5
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov rcx, qword [0x1801c55e0]
jmp 0x180094df3
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094df0
mov rdx, qword [rbp - 0x69]
test rdx, rdx
je 0x180094df0
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
call r8
mov rcx, qword [0x1801c55e0]
xorps xmm6, xmm6
comiss xmm6, xmm8
jbe 0x180094dfd
movaps xmm8, xmm6
mov eax, r13d
comiss xmm6, xmm7
cmovbe eax, dword [rbp - 0x59]
mov r12d, eax
mov dword [rbp - 0x59], eax
test rcx, rcx
je 0x180094e29
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rbx
call r8
mov rcx, qword [0x1801c55e0]
jmp 0x180094e57
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094e53
test rbx, rbx
je 0x180094e53
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rbx
call r8
mov rcx, qword [0x1801c55e0]
mov r12d, dword [rbp - 0x59]
inc r13d
cmp r13d, 8
jle 0x180094af0
cmp r12d, 0xffffffff
mov r15, qword [rbp - 0x21]
jne 0x180094ed4
test rcx, rcx
je 0x180094e8a
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, r14
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094eab
test rdi, rdi
je 0x180094eab
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rdi
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094ecc
test rsi, rsi
je 0x180094ecc
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rsi
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
jmp 0x180094fd7
mov rax, qword [rcx]
mov r10, qword [rax + 0x368]
mov r9d, r12d
mov r8, qword [0x1801c59e8]
mov rdx, r14
call r10
nop
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094f12
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, r14
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094f33
test rdi, rdi
je 0x180094f33
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rdi
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094f54
test rsi, rsi
je 0x180094f54
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rsi
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
jmp 0x180094fd7
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094f81
test r14, r14
je 0x180094f81
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, r14
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094fa2
test rdi, rdi
je 0x180094fa2
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rdi
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094fc3
test rsi, rsi
je 0x180094fc3
mov rax, qword [rcx]
mov r8, qword [rax + 0xb0]
mov rdx, rsi
call r8
mov rcx, qword [0x1801c55e0]
test rcx, rcx
jmp 0x180094fd7
mov rcx, qword [0x1801c55e0]
test rcx, rcx
je 0x180094fea
test r15, r15
je 0x180094fea
mov rax, qword [rcx]
mov rdx, r15
mov r8, qword [rax + 0xb0]
call r8
nop
mov rcx, qword [rbp - 0x19]
xor rcx, rsp
call fcn.1800c6fb0
lea r11, [rsp + 0xd0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
mov rcx, qword [rcx + 8]
jmp 0x180094440