Function at 0x180006170
Capabilities:
Log keystrokes via polling

Disassembly:
push rdi
sub rsp, 0x60
mov rax, qword [0x1800a7048]
xor rax, rsp
mov qword [rsp + 0x58], rax
cmp byte [0x1800a99b4], 0
mov rdi, rdx
jne 0x1800061d9
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
xor r9d, r9d
mov qword [rsp + 0x20], 0
mov rcx, rax
mov qword [0x1800a99b8], rax
xor r8d, r8d
mov edx, 0xf001f
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a99c0], rax
mov byte [0x1800a99b4], 1
jmp 0x1800061e0
mov rax, qword [0x1800a99c0]
cmp byte [rax + 0x4d8], 0
mov qword [rsp + 0x70], rbx
mov qword [rsp + 0x80], rbp
mov qword [rsp + 0x88], rsi
je 0x180006431
xor edx, edx
lea rcx, str.LWJGL
call qword [sym.imp.USER32.dll_FindWindowA]
mov rsi, rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, rsi
jne 0x180006431
mov rcx, rdi
call fcn.180014fa0
mov rcx, rdi
mov rbx, rax
call fcn.180015150
test rbx, rbx
je 0x180006431
test rax, rax
je 0x180006431
movzx ecx, byte [0x1800a99b4]
test cl, cl
jne 0x18000629c
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
xor r9d, r9d
mov qword [rsp + 0x20], 0
mov rcx, rax
mov qword [0x1800a99b8], rax
xor r8d, r8d
mov edx, 0xf001f
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov cl, 1
mov qword [0x1800a99c0], rax
mov byte [0x1800a99b4], cl
jmp 0x1800062a3
mov rax, qword [0x1800a99c0]
cmp byte [rax + 0x4e4], 0
je 0x180006330
mov rdx, rdi
mov rcx, rbx
call fcn.180014730
test rax, rax
je 0x180006431
mov rdx, rdi
mov rcx, rax
call fcn.180011f70
mov rbx, qword [0x1800a99f0]
lea rdx, str.net_minecraft_item_ItemBlock
mov r8d, 1
lea rcx, [rsp + 0x30]
mov rbp, rax
call fcn.18001e0e0
mov rdx, rax
mov rcx, rbx
call fcn.180001ef0
test rax, rax
je 0x180006431
mov rdx, qword [rdi]
mov r8, rax
mov rcx, rdi
mov r9, qword [rdx + 0x100]
mov rdx, rbp
call r9
test al, al
je 0x180006431
movzx ecx, byte [0x1800a99b4]
mov rax, qword [0x1800a99c0]
test cl, cl
jne 0x18000637a
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
xor r9d, r9d
mov qword [rsp + 0x20], 0
mov rcx, rax
mov qword [0x1800a99b8], rax
xor r8d, r8d
mov edx, 0xf001f
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a99c0], rax
mov byte [0x1800a99b4], 1
mov ecx, dword [rax + 0x4e0]
call fcn.180005fc0
mov ecx, 2
mov dword [rsp + 0x50], eax
mov ebx, eax
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jb 0x1800063ab
mov byte [0x1800a9bd8], 0
mov ecx, ebx
jmp 0x180006436
cmp byte [0x1800a9bd8], 0
jne 0x1800063c3
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_Sleep]
mov byte [0x1800a9bd8], 1
mov rdx, qword [0x1800a9a50]
cmp rdx, qword [0x1800a9a58]
je 0x1800063df
mov dword [rdx], ebx
add qword [0x1800a9a50], 4
jmp 0x1800063f0
lea r8, [rsp + 0x50]
lea rcx, [0x1800a9a48]
call fcn.180005410
lea rcx, [rsp + 0x50]
call qword [sym.imp.USER32.dll_GetCursorPos]
xor r9d, r9d
mov edx, 0x204
mov rcx, rsi
lea r8d, [r9 + 1]
call qword [sym.imp.USER32.dll_SendMessageW]
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_Sleep]
xor r9d, r9d
mov edx, 0x205
mov rcx, rsi
lea r8d, [r9 + 1]
call qword [sym.imp.USER32.dll_SendMessageW]
mov ecx, ebx
jmp 0x180006436
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rsi, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x80]
mov rbx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.18004a310
add rsp, 0x60
pop rdi
ret