Function at 0x18003dc60
Capabilities:
Hash data using fnv

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rbp
push rsi
push r12
push r13
push r15
sub rsp, 0x38
mov eax, dword [r8]
lea rbp, [rcx + 0x18]
and eax, 0x7fff
mov r13, rcx
movzx r9d, al
xor r15d, r15d
mov r10d, eax
mov r12, r8
movabs rax, 0xcbf29ce484222325
mov rsi, rdx
xor r9, rax
movabs rax, 0x100000001b3
imul r9, rax
mov eax, r10d
shr rax, 8
xor r9, rax
movabs rax, 0x8a97b0004e7feab
imul r9, rax
mov rax, qword [rcx + 0x30]
and r9, qword [rcx + 0x48]
mov rcx, qword [rcx + 0x20]
add r9, r9
mov rbx, qword [rax + r9*8 + 8]
cmp rbx, rcx
je 0x18003dcf8
mov rax, qword [rax + r9*8]
cmp r10d, dword [rbx + 0x10]
je 0x18003dcfb
cmp rbx, rax
je 0x18003dcf8
mov rbx, qword [rbx + 8]
cmp r10d, dword [rbx + 0x10]
jne 0x18003dce7
jmp 0x18003dcfb
mov rbx, r15
test rbx, rbx
cmove rbx, rcx
cmp rbx, rcx
jne 0x18003dd33
lea rdx, str.remove_from_entity_lists_entity_not_set
lea rcx, [0x1802ecc10]
call fcn.180044770
lea rcx, [0x1802ecc10]
add rsp, 0x38
pop r15
pop r13
pop r12
pop rsi
pop rbp
pop rbx
jmp fcn.180081b50
mov rax, qword [rbx + 0x18]
cmp qword [rax + 8], rdx
je 0x18003dd46
lea rdx, str.mismatching_ptr_index_
jmp 0x18003dd0e
lea r8, [rax + 0x10]
lea rdx, [rsp + 0x70]
cmp dword [r8], r15d
je 0x18003dee8
lea rcx, [r13 + 0x58]
mov qword [rsp + 0x80], rdi
call fcn.18002fcb0
mov rdi, qword [rsp + 0x70]
cmp rdi, qword [r13 + 0x60]
je 0x18003df01
mov rsi, qword [rdi + 0x18]
mov rbp, qword [rdi + 0x20]
cmp rsi, rbp
je 0x18003de69
mov qword [rsp + 0x30], r14
nop
mov rax, qword [rsi]
lea r14, [rsi + 0x10]
mov ecx, dword [rax + 0x14]
xor ecx, dword [r12]
test ecx, 0x7fff
jne 0x18003de58
cmp r14, rbp
je 0x18003de0f
nop
mov rax, qword [r14]
mov rcx, qword [r14 + 8]
mov qword [r14], r15
mov qword [r14 + 8], r15
mov r15, qword [r14 - 8]
mov qword [r14 - 0x10], rax
mov qword [r14 - 8], rcx
test r15, r15
je 0x18003de00
mov eax, 0xffffffff
lock xadd dword [r15 + 8], eax
cmp eax, 1
jne 0x18003de00
mov rax, qword [r15]
mov rcx, r15
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [r15 + 0xc], eax
cmp eax, 1
jne 0x18003de00
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 8]
add r14, 0x10
mov r15d, 0
cmp r14, rbp
jne 0x18003ddb0
mov rax, qword [rdi + 0x20]
mov r14, qword [rax - 8]
test r14, r14
je 0x18003de4d
mov eax, 0xffffffff
lock xadd dword [r14 + 8], eax
cmp eax, 1
jne 0x18003de4d
mov rax, qword [r14]
mov rcx, r14
call qword [rax]
mov eax, 0xffffffff
lock xadd dword [r14 + 0xc], eax
cmp eax, 1
jne 0x18003de4d
mov rax, qword [r14]
mov rcx, r14
call qword [rax + 8]
add qword [rdi + 0x20], 0xfffffffffffffff0
mov rbp, qword [rdi + 0x20]
jmp 0x18003de5b
mov rsi, r14
cmp rsi, rbp
jne 0x18003dd90
mov r14, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x78]
lea rbp, [r13 + 0x18]
mov rax, qword [r13 + 0xc8]
test rax, rax
je 0x18003deaf
cmp qword [rax + 8], rsi
jne 0x18003deaf
lea rdx, str.removed_local
lea rcx, [0x1802ecc10]
call fcn.180044770
lea rcx, [0x1802ecc10]
call fcn.180081b50
lea rcx, [r13 + 0xc8]
call fcn.18003e200
mov rax, qword [rbx + 0x20]
mov rdi, qword [rsp + 0x80]
test rax, rax
je 0x18003dec4
lock inc dword [rax + 8]
mov rax, qword [rbx + 0x18]
lea rdx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov rcx, r13
mov rax, qword [rbx + 0x20]
mov qword [rsp + 0x28], rax
call fcn.18003df30
lea rdx, [rsp + 0x70]
mov r8, rbx
mov rcx, rbp
call fcn.18002fb90
add rsp, 0x38
pop r15
pop r13
pop r12
pop rsi
pop rbp
pop rbx
ret
lea rdx, str.failed_to_find_entity_in_type_list_
lea rcx, [0x1802ecc10]
call fcn.180044770
lea rcx, [0x1802ecc10]
call fcn.180081b50
jmp 0x18003de72