Function at 0x1800052e0
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x50
mov rax, qword [0x180059040]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov ecx, dword [0x1800a41b0]
mov rax, qword gs:[0x58]
mov edx, 4
mov rax, qword [rax + rcx*8]
mov eax, dword [rdx + rax]
cmp dword [0x1800a42d0], eax
jle 0x18000537a
lea rcx, [0x1800a42d0]
call fcn.180048410
cmp dword [0x1800a42d0], 0xffffffff
jne 0x18000537a
mov eax, 0x3e8
cdq
idiv dword [0x1800a3a30]
sub eax, 3
movsxd rbx, eax
mov qword [0x1800a42c0], 0
lea rcx, [rsp + 0x20]
call fcn.180004f70
mov rdx, qword [rax]
mov qword [0x1800a42c0], rdx
mov qword [0x1800a42c8], rbx
lea rcx, [0x1800a42d0]
call fcn.1800483a4
mov rcx, qword [0x1800a3aa0]
test rcx, rcx
je 0x18000560e
lea rdx, [rsp + 0x28]
call fcn.1800072d0
nop
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x28]
cmp byte [0x1800a4293], 0
je 0x18000547b
lea rcx, [rsp + 0x28]
cmp rsi, 0xf
cmova rcx, rdi
mov rbx, qword [rsp + 0x38]
cmp rbx, 0x11
jne 0x1800053db
mov r8, rbx
lea rdx, str.item.swordDiamond
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18000547b
lea rcx, [rsp + 0x28]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 0xe
jne 0x180005401
mov r8, rbx
lea rdx, str.item.swordIron
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18000547b
lea rcx, [rsp + 0x28]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 0xf
jne 0x180005427
mov r8, rbx
lea rdx, str.item.swordStone
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18000547b
lea rcx, [rsp + 0x28]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 0xe
jne 0x18000544d
mov r8, rbx
lea rdx, str.item.swordGold
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x18000547b
lea rcx, [rsp + 0x28]
cmp rsi, 0xf
cmova rcx, rdi
cmp rbx, 0xe
jne 0x1800055d4
mov r8, rbx
lea rdx, str.item.swordWood
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1800055d4
mov rcx, qword [0x1800a4268]
call fcn.180007c30
test al, al
jne 0x1800055d4
cmp byte [0x1800a4294], al
je 0x1800055d4
cmp byte [0x1800a3a21], al
jne 0x1800055d4
xor edx, edx
lea rcx, str.LWJGL
call qword [sym.imp.USER32.dll_FindWindowA]
mov rbx, rax
call qword [sym.imp.USER32.dll_GetForegroundWindow]
cmp rbx, rax
jne 0x1800055d4
lea rcx, [rsp + 0x20]
call fcn.180004f70
mov rcx, qword [rsp + 0x20]
mov rdx, rcx
sub rdx, qword [0x1800a42c0]
movabs rax, 0x431bde82d7b634db
imul rdx
sar rdx, 0x12
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp rdx, qword [0x1800a42c8]
je 0x18000551e
mov r8d, 1
mov r9d, 0xff
cmovl r8d, r9d
test r8b, r8b
js 0x1800055d4
mov qword [0x1800a42c0], rcx
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
shr eax, 0xf
test al, 1
je 0x1800055d4
mov ecx, 2
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
shr eax, 0xf
test al, 1
jne 0x1800055d4
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
xor r9d, r9d
mov edx, 0x201
mov r8d, 1
call qword [sym.imp.USER32.dll_SendMessageW]
call qword [sym.imp.USER32.dll_GetForegroundWindow]
mov rcx, rax
xor r9d, r9d
mov edx, 0x202
mov r8d, 1
call qword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [0x1800a3a30]
lea ecx, [rdx + 4]
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
lea ecx, [rdx - 3]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
call fcn.180005050
cvttss2si ecx, xmm0
mov eax, 0x3e8
cdq
idiv ecx
movsxd rbx, eax
lea rcx, [rsp + 0x20]
call fcn.180004f70
mov rcx, qword [rax]
mov qword [0x1800a42c0], rcx
mov qword [0x1800a42c8], rbx
cmp rsi, 0xf
jbe 0x18000560e
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x180005606
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x180005606
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, rdi
call fcn.180048334
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.180047f60
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x50
pop rdi
ret