Function at 0x1800068a0
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 - 0x218]
sub rsp, 0x2f0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm8
mov rax, qword [0x180053040]
xor rax, rsp
mov qword [rbp + 0x1c0], rax
xor r13d, r13d
cmp qword [0x180053ff0], r13
je 0x180006f70
movabs rdx, 0x13e4761a999b9b3b
movabs rcx, 0x16de403f5d33f13c
mov qword [rbp + 0x1b0], rdx
movabs rax, 0x7da10274fcf2f758
mov qword [rsp + 0x20], rax
movabs rax, 0x16de335a34479848
mov qword [rsp + 0x28], rax
movabs rax, 0x64901354fce8fa79
movaps xmm0, xmmword [rsp + 0x20]
mov qword [rbp + 0x1b8], rcx
xorps xmm0, xmmword [rbp + 0x1b0]
mov qword [rsp + 0x20], rax
movabs rax, 0x16bb2c5d3c588353
mov qword [rsp + 0x28], rax
movdqa xmmword [rbp + 0x170], xmm0
movaps xmm0, xmmword [rsp + 0x20]
mov qword [rbp + 0x1b0], rdx
lea rdx, [0x180048742]
mov qword [rbp + 0x1b8], rcx
lea rcx, [rsp + 0x20]
xorps xmm0, xmmword [rbp + 0x1b0]
movdqa xmmword [rsp + 0x20], xmm0
call fcn.18000fe9c
xor r8d, r8d
lea rdx, [rbp + 0x170]
mov rcx, rax
call fcn.180010840
lea rdx, [rbp + 0x1b0]
mov qword [rbp + 0x1b0], r13
mov rcx, rax
call qword [0x1800542f8]
mov rcx, qword [rbp + 0x1b0]
movabs rbx, 0x7ffffeff0001
lea rax, [rcx - 0xffffef]
cmp rax, rbx
ja 0x180006f70
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x180006f70
lea rax, [rcx - 0xffffd7]
cmp rax, rbx
ja 0x180006f70
mov rcx, qword [rcx + 0x28]
test rcx, rcx
je 0x180006f70
lea rax, [rcx - 0xffffe7]
cmp rax, rbx
ja 0x180006f70
mov r12, qword [rcx + 0x18]
test r12, r12
je 0x180006f70
mov esi, dword [rcx + 0x10]
test esi, esi
je 0x180006f70
movss xmm8, dword [0x18004e124]
mov r14d, r13d
mov r15d, r13d
movabs rdx, 0xffffffff00000001
movabs r8, 0xefffffff00000001
mov rdi, qword [r12 + r15*8 + 0x20]
test rdi, rdi
je 0x180006f4f
lea rax, [rdi + rdx]
cmp rax, r8
ja 0x180006a77
mov rdx, qword [rdi]
test rdx, rdx
je 0x180006a77
mov rdx, qword [rdx + 0x10]
jmp 0x180006a7e
lea rdx, [0x180048742]
xorps xmm0, xmm0
mov qword [rbp + 0x180], r13
movups xmmword [rbp + 0x170], xmm0
mov qword [rbp + 0x188], r13
or r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], r13b
jne 0x180006a9a
lea rcx, [rbp + 0x170]
call fcn.1800197ec
lea rax, [rdi - 0xffffef]
cmp rax, rbx
ja 0x180006efe
mov rcx, qword [rdi + 0x10]
test rcx, rcx
je 0x180006efe
lea rax, [rcx - 0xffffcf]
cmp rax, rbx
ja 0x180006efe
mov rdx, qword [rcx + 0x30]
test rdx, rdx
je 0x180006efe
lea rax, [rdx - 0xffffcf]
cmp rax, rbx
ja 0x180006efe
mov rcx, qword [rdx + 0x30]
test rcx, rcx
je 0x180006efe
lea rax, [rcx - 0xfffff7]
cmp rax, rbx
ja 0x180006efe
mov rdx, qword [rcx + 8]
test rdx, rdx
je 0x180006efe
lea rax, [rdx - 0xffffc7]
cmp rax, rbx
ja 0x180006efe
mov rbx, qword [rdx + 0x38]
test rbx, rbx
je 0x180006efe
movabs rax, 0xffffffff00000001
movabs rcx, 0xefffffff00000001
add rax, rdi
cmp rax, rcx
ja 0x180006b6a
mov rdx, qword [rdi]
test rdx, rdx
je 0x180006b6a
mov rdx, qword [rdx + 0x10]
jmp 0x180006b71
lea rdx, [0x180048742]
xorps xmm0, xmm0
mov qword [rbp + 0x1a0], r13
movups xmmword [rbp + 0x190], xmm0
mov qword [rbp + 0x1a8], r13
or r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], r13b
jne 0x180006b8d
lea rcx, [rbp + 0x190]
call fcn.1800197ec
movsd xmm0, qword [rbx + 0x90]
lea rcx, [rsp + 0x20]
mov ebx, dword [rbx + 0x98]
movsd qword [rbp + 0x1b0], xmm0
call fcn.180005188
movd xmm1, ebx
movss xmm3, dword [rax]
movss xmm0, dword [rax + 4]
subss xmm0, dword [rbp + 0x1b4]
subss xmm3, dword [rbp + 0x1b0]
movss xmm2, dword [rax + 8]
subss xmm2, xmm1
mulss xmm0, xmm0
mulss xmm3, xmm3
mulss xmm2, xmm2
addss xmm0, xmm3
addss xmm0, xmm2
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
xor r8d, r8d
lea rdx, str.CollectibleEntity
lea rcx, [rbp + 0x190]
movaps xmm6, xmm0
call fcn.180018c98
cmp rax, 0xffffffffffffffff
je 0x180006ce4
cmp byte [0x180054077], r13b
je 0x180006ce4
comiss xmm8, xmm6
jbe 0x180006ce4
comiss xmm6, dword [0x18004e0c8]
jbe 0x180006ce4
mov ecx, dword [0x180053ff8]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180006ce4
lea rdx, str.Pickup
lea rcx, [rbp + 0x50]
call fcn.180012d5c
lea rcx, [rsp + 0x30]
mov edx, 2
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx + 0x10], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx + 0x20], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx + 0x30], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx + 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx + 0x50], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180006c77
movups xmm0, xmmword [rax]
mov rax, qword [rax + 0x10]
lea rdx, [rsp + 0x30]
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rax
mov rcx, rdi
call fcn.180013c8c
xor r8d, r8d
lea rdx, str.DroppedItem
lea rcx, [rbp + 0x190]
call fcn.180018c98
cmp rax, 0xffffffffffffffff
je 0x180006dc4
cmp byte [0x180054077], r13b
je 0x180006dc4
comiss xmm8, xmm6
jbe 0x180006dc4
comiss xmm6, dword [0x18004e0c8]
jbe 0x180006dc4
mov ecx, dword [0x180053ff8]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180006dc4
lea rdx, str.Pickup
lea rcx, [rbp + 0x50]
call fcn.180012d5c
lea rcx, [rsp + 0x30]
mov edx, 2
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rcx], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rcx + 0x10], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rcx + 0x20], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rcx + 0x30], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rcx + 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rcx + 0x50], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rcx + 0x60], xmm0
lea rcx, [rcx + 0x80]
movups xmmword [rcx - 0x10], xmm1
sub rdx, 1
jne 0x180006d57
movups xmm0, xmmword [rax]
mov rax, qword [rax + 0x10]
lea rdx, [rsp + 0x30]
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rax
mov rcx, rdi
call fcn.180013c8c
xor r8d, r8d
lea rdx, str.ItemPickup
lea rcx, [rbp + 0x190]
call fcn.180018c98
cmp rax, 0xffffffffffffffff
je 0x180006ea4
cmp byte [0x180054077], r13b
je 0x180006ea4
comiss xmm8, xmm6
jbe 0x180006ea4
comiss xmm6, dword [0x18004e0c8]
jbe 0x180006ea4
mov ecx, dword [0x180053ff8]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x180006ea4
lea rdx, str.Pickup
lea rcx, [rbp + 0x50]
call fcn.180012d5c
lea rdx, [rsp + 0x30]
mov ecx, 2
movups xmm0, xmmword [rax]
movups xmm1, xmmword [rax + 0x10]
lea rax, [rax + 0x80]
movups xmmword [rdx], xmm0
movups xmm0, xmmword [rax - 0x60]
movups xmmword [rdx + 0x10], xmm1
movups xmm1, xmmword [rax - 0x50]
movups xmmword [rdx + 0x20], xmm0
movups xmm0, xmmword [rax - 0x40]
movups xmmword [rdx + 0x30], xmm1
movups xmm1, xmmword [rax - 0x30]
movups xmmword [rdx + 0x40], xmm0
movups xmm0, xmmword [rax - 0x20]
movups xmmword [rdx + 0x50], xmm1
movups xmm1, xmmword [rax - 0x10]
movups xmmword [rdx + 0x60], xmm0
lea rdx, [rdx + 0x80]
movups xmmword [rdx - 0x10], xmm1
sub rcx, 1
jne 0x180006e37
movups xmm0, xmmword [rax]
mov rax, qword [rax + 0x10]
mov rcx, rdi
movups xmmword [rdx], xmm0
mov qword [rdx + 0x10], rax
lea rdx, [rsp + 0x30]
call fcn.180013c8c
mov rdx, qword [rbp + 0x1a8]
cmp rdx, 0xf
jbe 0x180006ee5
mov rcx, qword [rbp + 0x190]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006ee0
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006f69
call fcn.180046180
mov qword [rbp + 0x1a0], r13
mov qword [rbp + 0x1a8], 0xf
mov byte [rbp + 0x190], r13b
mov rdx, qword [rbp + 0x188]
cmp rdx, 0xf
jbe 0x180006f3b
mov rcx, qword [rbp + 0x170]
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x180006f36
mov rcx, qword [rcx - 8]
add rdx, 0x27
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180006f69
call fcn.180046180
movabs r8, 0xefffffff00000001
movabs rdx, 0xffffffff00000001
inc r14d
inc r15
cmp r14d, esi
jae 0x180006f70
movabs rbx, 0x7ffffeff0001
jmp 0x180006a52
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
mov rcx, qword [rbp + 0x1c0]
xor rcx, rsp
call fcn.180046160
lea r11, [rsp + 0x2f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm8, xmmword [r11 - 0x20]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret