Function at 0x180004520
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x130
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 [0x18009e0c0]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov rdi, rdx
cmp byte [0x1800a07f4], 0
jne 0x1800045e4
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov qword [0x1800a07f8], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf001f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a0800], rax
mov byte [0x1800a07f4], 1
jmp 0x1800045eb
mov rax, qword [0x1800a0800]
cmp byte [rax + 0x4e8], 0
je 0x180004d1e
xor edx, edx
lea rcx, str.LWJGL
call qword [sym.imp.USER32.dll_FindWindowA]
mov r15, rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rax, r15
jne 0x180004d1e
mov rcx, rdi
call fcn.18000e1b0
mov r14, rax
mov rcx, rdi
call fcn.18000eb90
mov r13, rax
mov rcx, rdi
call fcn.18000e510
mov rbp, rax
mov rcx, rdi
call fcn.18000e360
mov r12, rax
test r14, r14
je 0x180004d1e
test rax, rax
je 0x180004d1e
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx ebx, ax
shr ebx, 0xf
and bl, 1
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movzx esi, ax
shr esi, 0xf
and sil, 1
cmp byte [0x1800a07f4], 0
jne 0x1800046cf
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov qword [0x1800a07f8], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf001f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a0800], rax
mov byte [0x1800a07f4], 1
mov rax, qword [0x1800a0800]
cmp byte [rax + 0x4f8], 0
je 0x1800047b5
test bl, bl
je 0x1800047b5
test sil, sil
je 0x1800047b5
mov rdx, rdi
mov rcx, r13
call fcn.18000bd20
test al, al
jne 0x180004d1e
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x180004723
mov byte [0x1800a0862], 0
jmp 0x180004d1e
cmp byte [0x1800a0862], 0
jne 0x180004733
mov byte [0x1800a0862], 1
xor r9d, r9d
mov edx, 0x204
mov r8d, 2
mov rcx, r15
call qword [sym.imp.USER32.dll_SendMessageW]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_Sleep]
xor r9d, r9d
mov edx, 0x201
mov r8d, 1
mov rcx, r15
call qword [sym.imp.USER32.dll_SendMessageW]
xor r9d, r9d
mov edx, 0x205
mov r8d, 2
mov rcx, r15
call qword [sym.imp.USER32.dll_SendMessageW]
mov ecx, 2
call qword [sym.imp.KERNEL32.dll_Sleep]
xor r9d, r9d
mov edx, 0x202
mov r8d, 1
mov rcx, r15
call qword [sym.imp.USER32.dll_SendMessageW]
mov ecx, 0x28
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x180004d1e
cmp byte [0x1800a07f4], 0
jne 0x180004804
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov qword [0x1800a07f8], rax
xor esi, esi
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf001f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a0800], rax
mov byte [0x1800a07f4], 1
jmp 0x180004806
xor esi, esi
mov rax, qword [0x1800a0800]
cmp byte [rax + 0x4f4], 0
je 0x180004829
mov rdx, rdi
mov rcx, r13
call fcn.18000bd20
test al, al
jne 0x180004be4
cmp byte [0x1800a07f4], 0
jne 0x180004874
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov qword [0x1800a07f8], rax
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf001f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a0800], rax
mov byte [0x1800a07f4], 1
mov rax, qword [0x1800a0800]
cmp byte [rax + 0x4f5], 0
je 0x1800048a7
mov rdx, rdi
mov rcx, r14
call fcn.18000dd20
mov rdx, rdi
mov rcx, rax
call fcn.18000bc40
test al, al
jne 0x1800048a7
test rbp, rbp
je 0x180004be4
cmp byte [0x1800a07f4], 0
jne 0x1800048f2
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov qword [0x1800a07f8], rax
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf001f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a0800], rax
mov byte [0x1800a07f4], 1
mov rax, qword [0x1800a0800]
cmp byte [rax + 0x4f6], 0
je 0x180004bdb
test rbp, rbp
je 0x18000495b
mov rbx, qword [0x1800a0848]
mov r8d, 1
lea rdx, str.net_minecraft_client_gui_inventory_GuiInventory
lea rcx, [rsp + 0x50]
call fcn.180017060
mov rdx, rax
mov rcx, rbx
call fcn.180001f10
test rax, rax
je 0x180004be4
mov rcx, qword [rdi]
mov r9, qword [rcx + 0x100]
mov r8, rax
mov rdx, rbp
mov rcx, rdi
call r9
test al, al
je 0x180004be4
cmp byte [0x1800a07f4], 0
jne 0x1800049a6
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov qword [0x1800a07f8], rax
mov qword [rsp + 0x20], rsi
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf001f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a0800], rax
mov byte [0x1800a07f4], 1
mov rax, qword [0x1800a0800]
cmp byte [rax + 0x4f7], 0
je 0x180004c1a
mov rbp, rsi
mov r8, rdi
lea rdx, [rsp + 0x38]
mov rcx, r14
call fcn.18000cd10
mov rdx, rdi
mov rcx, r14
call fcn.18000c800
movss dword [rsp + 0x30], xmm0
mov r8, rdi
lea rdx, [rsp + 0x70]
mov rcx, r12
call fcn.18000f260
nop
mov rsi, qword [rsp + 0x70]
mov rbx, rsi
mov r12, qword [rsp + 0x78]
cmp rsi, r12
je 0x180004b04
movsd xmm12, qword [rsp + 0x48]
movsd xmm13, qword [rsp + 0x38]
movdqa xmm9, xmmword [0x1800910a0]
movss xmm11, dword [0x180090d60]
movsd xmm14, qword [0x180090cd0]
movsd xmm15, qword [0x180090cf8]
movss xmm7, dword [0x180090d6c]
movss xmm8, dword [0x180090db8]
movss xmm10, dword [0x180090db4]
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdi]
mov r9, qword [rax + 0xc0]
mov r8, r14
mov rdx, qword [rbx]
mov rcx, rdi
call r9
test al, al
jne 0x180004af7
mov r8, rdi
lea rdx, [rsp + 0x38]
mov rcx, qword [rbx]
call fcn.18000cd10
movaps xmm1, xmm13
subsd xmm1, qword [rsp + 0x38]
movaps xmm0, xmm12
subsd xmm0, qword [rsp + 0x48]
cvtsd2ss xmm0, xmm0
cvtsd2ss xmm1, xmm1
call fcn.180061878
mulss xmm0, xmm11
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
divsd xmm1, xmm14
subsd xmm1, xmm15
cvtpd2ps xmm6, xmm1
movaps xmm0, xmm6
subss xmm0, dword [rsp + 0x30]
movaps xmm1, xmm7
call fcn.1800626c4
comiss xmm0, xmm11
jb 0x180004ae1
addss xmm0, xmm8
comiss xmm10, xmm0
jbe 0x180004aeb
addss xmm0, xmm7
andps xmm6, xmm9
comiss xmm0, xmm6
jb 0x180004af7
mov rbp, qword [rbx]
add rbx, 8
cmp rbx, r12
jne 0x180004a60
test rsi, rsi
je 0x180004b45
mov rdx, qword [rsp + 0x80]
sub rdx, rsi
and rdx, 0xfffffffffffffff8
mov rax, rsi
cmp rdx, 0x1000
jb 0x180004b3d
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180004d87
mov rcx, rsi
call fcn.18004317c
test rbp, rbp
je 0x180004c1a
mov rdx, rdi
mov rcx, r14
call fcn.18000d940
lea ebx, [rax - 4]
mov rdx, rdi
mov rcx, r14
call fcn.18000da60
cmp eax, ebx
jl 0x180004b71
inc dword [0x1800a0878]
mov rdx, rdi
mov rcx, rbp
call fcn.18000d940
lea ebx, [rax - 4]
mov rdx, rdi
mov rcx, rbp
call fcn.18000da60
cmp eax, ebx
jl 0x180004b94
inc dword [0x1800a087c]
mov rdx, rdi
mov rcx, r13
call fcn.18000c040
test al, al
je 0x180004c1a
mov edx, 1
mov ecx, edx
call fcn.1800190b0
movsxd rbx, eax
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
sub rax, qword [0x1800a0880]
cmp rax, rbx
jbe 0x180004c1a
mov eax, dword [0x1800a0878]
cmp eax, 2
jl 0x180004bf4
mov dword [0x1800a0878], 0
jmp 0x180004c13
test rbp, rbp
je 0x18000495b
mov ecx, 5
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x180004d1e
mov ecx, dword [0x1800a087c]
cmp ecx, 2
jl 0x180004c0b
mov dword [0x1800a087c], 0
jmp 0x180004c13
test eax, eax
jne 0x180004c1a
test ecx, ecx
jne 0x180004c1a
mov byte [0x1800a0863], 1
cmp byte [0x1800a07f4], 0
jne 0x180004c69
lea r8, str.win32
xor edx, edx
mov ecx, 0xf001f
call qword [sym.imp.KERNEL32.dll_OpenFileMappingA]
mov qword [0x1800a07f8], rax
mov qword [rsp + 0x20], 0
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf001f
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov qword [0x1800a0800], rax
mov byte [0x1800a07f4], 1
mov rcx, qword [0x1800a0800]
mov ecx, dword [rcx + 0x4f0]
call fcn.180004360
mov ebx, eax
mov dword [rsp + 0x30], eax
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x180004ca2
mov byte [0x1800a0862], 0
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x180004d1e
cmp byte [0x1800a0862], 0
jne 0x180004cba
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_Sleep]
mov byte [0x1800a0862], 1
mov rdx, qword [0x1800a0890]
cmp rdx, qword [0x1800a0898]
je 0x180004cd6
mov dword [rdx], ebx
add qword [0x1800a0890], 4
jmp 0x180004ce7
lea r8, [rsp + 0x30]
lea rcx, [0x1800a0888]
call fcn.180004e10
xor r8d, r8d
mov edx, ebx
mov rcx, r15
call fcn.1800191b0
cmp byte [0x1800a0863], 0
je 0x180004d1e
mov r8b, 1
mov edx, ebx
mov rcx, r15
call fcn.1800191b0
mov byte [0x1800a0863], 0
call qword [sym.imp.KERNEL32.dll_GetTickCount64]
mov qword [0x1800a0880], rax
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.180042db0
lea r11, [rsp + 0x130]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, 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 rdi
ret
call fcn.1800490f4
int3