Function at 0x14002ad30
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rbx
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xc0
mov r9d, dword [r8]
mov r15, r8
mov r13, rdx
mov r14, rcx
test r9, r9
jne 0x14002ad61
xor edi, edi
mov qword [rbp + 0x77], rdi
jmp 0x14002ad93
lea rbx, [r9 + r9*4]
mov r8d, 0x10
shl rbx, 4
mov rdx, rbx
call fcn.14001b250
mov qword [rbp + 0x77], rax
mov rdi, rax
test rax, rax
je 0x14002ad90
mov r8, rbx
xor edx, edx
mov rcx, rax
call fcn.140119350
mov r9d, dword [r15]
mov rax, qword [r15 + 8]
movabs rdx, 0xffffffffffff
and rax, rdx
mov ecx, r9d
shl rcx, 5
xor r12d, r12d
add rcx, rax
mov qword [rsp + 0x108], rsi
cmp rax, rcx
je 0x14002b656
lea rbx, [rax + 0x10]
movabs rsi, 0x100000001b3
mov ecx, 0x1000
test word [rbx - 2], cx
je 0x14002ade1
lea rcx, [rbx - 0x10]
jmp 0x14002ade8
mov rcx, qword [rbx - 8]
and rcx, rdx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.140121044
mov r9, rax
movzx r8d, al
mov qword [rbp + 0x67], rax
mov rcx, r9
shr rcx, 8
movabs rax, 0xcbf29ce484222325
xor r8, rax
movzx edx, cl
imul r8, rsi
mov rax, r9
xor r8, rdx
shr rax, 0x10
imul r8, rsi
movzx ecx, al
mov rax, r9
xor r8, rcx
shr rax, 0x18
imul r8, rsi
movzx ecx, al
mov rax, r9
xor r8, rcx
shr rax, 0x20
imul r8, rsi
movzx ecx, al
mov rax, r9
xor r8, rcx
shr rax, 0x28
imul r8, rsi
movzx ecx, al
mov rax, r9
xor r8, rcx
shr rax, 0x30
imul r8, rsi
movzx ecx, al
mov rax, r9
xor r8, rcx
shr rax, 0x38
mov rcx, qword [r14 + 0x38]
imul r8, rsi
xor r8, rax
imul r8, rsi
and rcx, r8
shl rcx, 4
add rcx, qword [r14 + 0x20]
mov rax, qword [rcx + 8]
cmp rax, qword [r14 + 0x10]
je 0x14002aebd
mov rcx, qword [rcx]
cmp r9, qword [rax + 0x10]
je 0x14002aeb4
cmp rax, rcx
je 0x14002aebd
mov rax, qword [rax + 8]
cmp r9, qword [rax + 0x10]
jne 0x14002aea5
test rax, rax
jne 0x14002b61e
xorps xmm0, xmm0
lea rsi, [r12 + r12*4]
movups xmmword [rbp - 0x69], xmm0
movabs rcx, 0xffff000000000000
shl rsi, 4
add rsi, rdi
mov dword [rbp - 0x69], 5
mov edi, 0x405
lea r8, [rbp - 0x69]
mov word [rbp - 0x5b], di
lea rdx, [rbp + 0x7f]
mov rax, qword [rbp - 0x61]
and rax, rcx
mov dword [rsi], 0x3b9c73cc
lea rcx, str.flags
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov ecx, dword [rbx]
movabs rdx, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp + 0x7f]
cmp rax, rcx
je 0x14002af3d
add rax, 0x10
jmp 0x14002af4e
xorps xmm0, xmm0
lea rax, [0x140201b48]
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x69]
mov dword [rsi + 0x10], eax
lea rdx, [rbp - 0x59]
xorps xmm0, xmm0
movabs rcx, 0xffff000000000000
movups xmmword [rbp - 0x69], xmm0
mov word [rbp - 0x5b], di
mov rax, qword [rbp - 0x61]
and rax, rcx
mov dword [rbp - 0x69], 0x13
lea rcx, str.correlatedViewMasks
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbx + 8]
movabs rdx, 0xffffffffffff
mov edi, dword [rbx]
and rax, rdx
shl rdi, 5
add rdi, rax
cmp qword [rbp - 0x59], rdi
je 0x14002b0b7
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 0x13
mov word [rbp - 0x5b], ax
lea rdx, [rbp - 0x51]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.correlatedViewMasks
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbp - 0x51]
cmp rax, rdi
je 0x14002b00d
add rax, 0x10
jmp 0x14002b01e
xorps xmm0, xmm0
lea rax, [0x140201b48]
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x69]
mov dword [rsi + 0x40], eax
lea rdx, [rbp - 0x49]
xorps xmm0, xmm0
mov eax, 0x405
movups xmmword [rbp - 0x69], xmm0
mov word [rbp - 0x5b], ax
movabs rcx, 0xffff000000000000
mov rax, qword [rbp - 0x61]
and rax, rcx
mov dword [rbp - 0x69], 0x13
lea rcx, str.correlatedViewMasks
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov ecx, dword [rbx]
movabs rdx, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp - 0x49]
cmp rax, rcx
je 0x14002b092
lea rdx, [rax + 0x10]
jmp 0x14002b0a3
xorps xmm0, xmm0
lea rdx, [0x140201b48]
movups xmmword [0x140201b48], xmm0
lea r8, [rsi + 0x48]
mov rcx, r14
call fcn.14002f660
test al, al
je 0x14002b652
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 0xb
mov word [rbp - 0x5b], ax
lea rdx, [rbp - 0x41]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.attachments
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbx + 8]
movabs rdx, 0xffffffffffff
mov edi, dword [rbx]
and rax, rdx
shl rdi, 5
add rdi, rax
cmp qword [rbp - 0x41], rdi
je 0x14002b220
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 0xb
mov word [rbp - 0x5b], ax
lea rdx, [rbp - 0x39]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.attachments
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbp - 0x39]
cmp rax, rdi
je 0x14002b176
add rax, 0x10
jmp 0x14002b187
xorps xmm0, xmm0
lea rax, [0x140201b48]
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x69]
mov dword [rsi + 0x14], eax
lea rdx, [rbp - 0x31]
xorps xmm0, xmm0
mov eax, 0x405
movups xmmword [rbp - 0x69], xmm0
mov word [rbp - 0x5b], ax
movabs rcx, 0xffff000000000000
mov rax, qword [rbp - 0x61]
and rax, rcx
mov dword [rbp - 0x69], 0xb
lea rcx, str.attachments
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov ecx, dword [rbx]
movabs rdx, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp - 0x31]
cmp rax, rcx
je 0x14002b1fb
lea rdx, [rax + 0x10]
jmp 0x14002b20c
xorps xmm0, xmm0
lea rdx, [0x140201b48]
movups xmmword [0x140201b48], xmm0
lea r8, [rsi + 0x18]
mov rcx, r14
call fcn.1400297b0
test al, al
je 0x14002b652
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 0xc
mov word [rbp - 0x5b], ax
lea rdx, [rbp - 0x29]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.dependencies
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbx + 8]
movabs rdx, 0xffffffffffff
mov edi, dword [rbx]
and rax, rdx
shl rdi, 5
add rdi, rax
cmp qword [rbp - 0x29], rdi
je 0x14002b389
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 0xc
mov word [rbp - 0x5b], ax
lea rdx, [rbp - 0x21]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.dependencies
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbp - 0x21]
cmp rax, rdi
je 0x14002b2df
add rax, 0x10
jmp 0x14002b2f0
xorps xmm0, xmm0
lea rax, [0x140201b48]
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x69]
mov dword [rsi + 0x30], eax
lea rdx, [rbp - 0x19]
xorps xmm0, xmm0
mov eax, 0x405
movups xmmword [rbp - 0x69], xmm0
mov word [rbp - 0x5b], ax
movabs rcx, 0xffff000000000000
mov rax, qword [rbp - 0x61]
and rax, rcx
mov dword [rbp - 0x69], 0xc
lea rcx, str.dependencies
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov ecx, dword [rbx]
movabs rdx, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp - 0x19]
cmp rax, rcx
je 0x14002b364
lea rdx, [rax + 0x10]
jmp 0x14002b375
xorps xmm0, xmm0
lea rdx, [0x140201b48]
movups xmmword [0x140201b48], xmm0
lea r8, [rsi + 0x38]
mov rcx, r14
call fcn.140029990
test al, al
je 0x14002b652
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 9
mov word [rbp - 0x5b], ax
lea rdx, [rbp - 0x11]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.subpasses
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbx + 8]
movabs rdx, 0xffffffffffff
mov edi, dword [rbx]
and rax, rdx
shl rdi, 5
add rdi, rax
cmp qword [rbp - 0x11], rdi
je 0x14002b4f2
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 9
mov word [rbp - 0x5b], ax
lea rdx, [rbp - 9]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.subpasses
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbp - 9]
cmp rax, rdi
je 0x14002b448
add rax, 0x10
jmp 0x14002b459
xorps xmm0, xmm0
lea rax, [0x140201b48]
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x69]
mov dword [rsi + 0x20], eax
lea rdx, [rbp - 1]
xorps xmm0, xmm0
mov eax, 0x405
movups xmmword [rbp - 0x69], xmm0
mov word [rbp - 0x5b], ax
movabs rcx, 0xffff000000000000
mov rax, qword [rbp - 0x61]
and rax, rcx
mov dword [rbp - 0x69], 9
lea rcx, str.subpasses
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov ecx, dword [rbx]
movabs rdx, 0xffffffffffff
mov rax, qword [rbx + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp - 1]
cmp rax, rcx
je 0x14002b4cd
lea rdx, [rax + 0x10]
jmp 0x14002b4de
xorps xmm0, xmm0
lea rdx, [0x140201b48]
movups xmmword [0x140201b48], xmm0
lea r8, [rsi + 0x28]
mov rcx, r14
call fcn.140029bd0
test al, al
je 0x14002b652
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 5
mov word [rbp - 0x5b], ax
lea rdx, [rbp + 7]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.pNext
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbx + 8]
movabs rdx, 0xffffffffffff
mov edi, dword [rbx]
and rax, rdx
shl rdi, 5
add rdi, rax
cmp qword [rbp + 7], rdi
je 0x14002b5e1
xorps xmm0, xmm0
lea r8, [rbp - 0x69]
movups xmmword [rbp - 0x69], xmm0
mov eax, 0x405
mov dword [rbp - 0x69], 5
mov word [rbp - 0x5b], ax
lea rdx, [rbp + 0xf]
mov rax, qword [rbp - 0x61]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.pNext
or rax, rcx
mov rcx, rbx
mov qword [rbp - 0x61], rax
call fcn.140015670
mov rax, qword [rbp + 0xf]
cmp rax, rdi
je 0x14002b5b1
lea rdx, [rax + 0x10]
jmp 0x14002b5c2
xorps xmm0, xmm0
lea rdx, [0x140201b48]
movups xmmword [0x140201b48], xmm0
xor eax, eax
lea r8, [rsi + 8]
mov qword [rsp + 0x28], rax
xor r9d, r9d
mov rcx, r14
mov qword [rsp + 0x20], rax
call fcn.140026950
test al, al
je 0x14002b652
mov rax, qword [r13]
lea rcx, [r14 + 0x108]
lea r8, [rbp + 0x67]
lea rdx, [rbp + 0x17]
mov rdi, qword [rax + 0x48]
call fcn.140017c40
mov rdx, qword [rbp + 0x67]
mov r8, rsi
mov rcx, r13
mov r9, qword [rax]
add r9, 0x18
call rdi
test al, al
je 0x14002b652
movabs rsi, 0x100000001b3
mov ecx, dword [r15]
add rbx, 0x20
mov rax, qword [r15 + 8]
movabs rdx, 0xffffffffffff
and rax, rdx
shl rcx, 5
add rcx, rax
inc r12d
lea rax, [rbx - 0x10]
cmp rax, rcx
je 0x14002b656
mov rdi, qword [rbp + 0x77]
jmp 0x14002add0
xor al, al
jmp 0x14002b665
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 0x80]
mov al, 1
mov rsi, qword [rsp + 0x108]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbx
pop rbp
ret