Function at 0x140025e30
Capabilities:
Hash data using fnv

Disassembly:
push rbp
push rbx
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x78
mov r9d, dword [r8]
xor r15d, r15d
mov r12, r8
mov r13, rdx
mov r14, rcx
test r9, r9
jne 0x140025e5f
mov ebx, r15d
mov qword [rbp + 0x38], rbx
jmp 0x140025e97
lea rbx, [r9 + r9*2]
mov r8d, 0x10
shl rbx, 4
mov rdx, rbx
call fcn.14001b250
mov qword [rbp + 0x38], rax
test rax, rax
je 0x140025e90
mov r8, rbx
xor edx, edx
mov rcx, rax
mov rbx, rax
call fcn.140119350
jmp 0x140025e93
mov rbx, rax
mov r9d, dword [r12]
mov rax, qword [r12 + 8]
movabs rdx, 0xffffffffffff
and rax, rdx
mov ecx, r9d
shl rcx, 5
add rcx, rax
mov qword [rsp + 0xb8], rsi
mov qword [rsp + 0x70], rdi
cmp rax, rcx
je 0x14002639f
lea rdi, [rax + 0x10]
movabs rsi, 0x100000001b3
mov ecx, 0x1000
test word [rdi - 2], cx
je 0x140025ee8
lea rcx, [rdi - 0x10]
jmp 0x140025eef
mov rcx, qword [rdi - 8]
and rcx, rdx
xor edx, edx
lea r8d, [rdx + 0x10]
call fcn.140121044
mov r9, rax
movzx r8d, al
mov qword [rbp + 0x48], rax
mov rcx, r9
shr rcx, 8
movabs rax, 0xcbf29ce484222325
xor r8, rax
movzx edx, cl
imul r8, rsi
mov rax, r9
shr rax, 0x10
xor r8, rdx
movzx ecx, al
mov rax, r9
shr rax, 0x18
imul r8, rsi
xor r8, rcx
movzx ecx, al
imul r8, rsi
mov rax, r9
xor r8, rcx
shr rax, 0x20
movzx ecx, al
mov rax, r9
shr rax, 0x28
imul r8, rsi
xor r8, rcx
movzx ecx, al
imul r8, rsi
mov rax, r9
xor r8, rcx
shr rax, 0x30
movzx ecx, al
mov rax, r9
shr rax, 0x38
imul r8, rsi
xor rcx, r8
imul rcx, rsi
xor rcx, rax
imul rcx, rsi
and rcx, qword [r14 + 0xb8]
shl rcx, 4
add rcx, qword [r14 + 0xa0]
mov rax, qword [rcx + 8]
cmp rax, qword [r14 + 0x90]
je 0x140025fca
mov rcx, qword [rcx]
cmp r9, qword [rax + 0x10]
je 0x140025fc1
cmp rax, rcx
je 0x140025fca
mov rax, qword [rax + 8]
cmp r9, qword [rax + 0x10]
jne 0x140025fb2
test rax, rax
jne 0x140026369
mov eax, r15d
lea r8, [rbp - 0x28]
xorps xmm0, xmm0
lea rdx, [rbp + 0x50]
movups xmmword [rbp - 0x28], xmm0
movabs rcx, 0xffff000000000000
mov dword [rbp - 0x28], 5
lea rsi, [rax + rax*2]
mov eax, 0x405
mov word [rbp - 0x1a], ax
mov rax, qword [rbp - 0x20]
and rax, rcx
shl rsi, 4
lea rcx, str.flags
add rsi, rbx
or rax, rcx
mov rcx, rdi
mov qword [rbp - 0x20], rax
mov dword [rsi], 0x1e
call fcn.140015670
mov ecx, dword [rdi]
movabs rbx, 0xffffffffffff
mov rax, qword [rdi + 8]
and rax, rbx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp + 0x50]
cmp rax, rcx
je 0x14002604d
add rax, 0x10
jmp 0x14002605e
xorps xmm0, xmm0
lea rax, [0x140201b48]
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x28]
mov dword [rsi + 0x10], eax
lea rdx, [rbp - 0x58]
xorps xmm0, xmm0
mov eax, 0x405
movups xmmword [rbp - 0x28], xmm0
mov word [rbp - 0x1a], ax
movabs rcx, 0xffff000000000000
mov rax, qword [rbp - 0x20]
and rax, rcx
mov dword [rbp - 0x28], 0x12
lea rcx, str.pushConstantRanges
or rax, rcx
mov rcx, rdi
mov qword [rbp - 0x20], rax
call fcn.140015670
and rbx, qword [rdi + 8]
mov ecx, dword [rdi]
shl rcx, 5
add rbx, rcx
cmp qword [rbp - 0x58], rbx
je 0x1400261c2
xorps xmm0, xmm0
lea r8, [rbp - 0x28]
movups xmmword [rbp - 0x28], xmm0
mov eax, 0x405
mov dword [rbp - 0x28], 0x12
mov word [rbp - 0x1a], ax
lea rdx, [rbp - 0x50]
mov rax, qword [rbp - 0x20]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.pushConstantRanges
or rax, rcx
mov rcx, rdi
mov qword [rbp - 0x20], rax
call fcn.140015670
mov rax, qword [rbp - 0x50]
cmp rax, rbx
je 0x140026115
add rax, 0x10
jmp 0x140026126
xorps xmm0, xmm0
lea rax, [0x140201b48]
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x28]
mov dword [rsi + 0x20], eax
lea rdx, [rbp - 0x48]
xorps xmm0, xmm0
mov eax, 0x405
movups xmmword [rbp - 0x28], xmm0
mov word [rbp - 0x1a], ax
movabs rcx, 0xffff000000000000
mov rax, qword [rbp - 0x20]
and rax, rcx
mov dword [rbp - 0x28], 0x12
lea rcx, str.pushConstantRanges
or rax, rcx
mov rcx, rdi
mov qword [rbp - 0x20], rax
call fcn.140015670
mov ecx, dword [rdi]
movabs rbx, 0xffffffffffff
mov rax, qword [rdi + 8]
and rax, rbx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp - 0x48]
cmp rax, rcx
je 0x14002619a
lea rdx, [rax + 0x10]
jmp 0x1400261ab
xorps xmm0, xmm0
lea rdx, [0x140201b48]
movups xmmword [0x140201b48], xmm0
lea r8, [rsi + 0x28]
mov rcx, r14
call fcn.140027cf0
test al, al
jne 0x1400261cc
xor al, al
jmp 0x1400263ae
movabs rbx, 0xffffffffffff
xorps xmm0, xmm0
lea r8, [rbp - 0x28]
movups xmmword [rbp - 0x28], xmm0
mov eax, 0x405
mov dword [rbp - 0x28], 0xa
mov word [rbp - 0x1a], ax
lea rdx, [rbp - 0x40]
mov rax, qword [rbp - 0x20]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.setLayouts
or rax, rcx
mov rcx, rdi
mov qword [rbp - 0x20], rax
call fcn.140015670
and rbx, qword [rdi + 8]
mov ecx, dword [rdi]
shl rcx, 5
add rbx, rcx
cmp qword [rbp - 0x40], rbx
je 0x140026328
xorps xmm0, xmm0
lea r8, [rbp - 0x28]
movups xmmword [rbp - 0x28], xmm0
mov eax, 0x405
mov dword [rbp - 0x28], 0xa
mov word [rbp - 0x1a], ax
lea rdx, [rbp - 0x38]
mov rax, qword [rbp - 0x20]
movabs rcx, 0xffff000000000000
and rax, rcx
lea rcx, str.setLayouts
or rax, rcx
mov rcx, rdi
mov qword [rbp - 0x20], rax
call fcn.140015670
mov rax, qword [rbp - 0x38]
cmp rax, rbx
je 0x14002627e
add rax, 0x10
jmp 0x14002628f
xorps xmm0, xmm0
lea rax, [0x140201b48]
movups xmmword [0x140201b48], xmm0
mov eax, dword [rax]
lea r8, [rbp - 0x28]
mov dword [rsi + 0x14], eax
lea rdx, [rbp - 0x30]
xorps xmm0, xmm0
mov eax, 0x405
movups xmmword [rbp - 0x28], xmm0
mov word [rbp - 0x1a], ax
movabs rcx, 0xffff000000000000
mov rax, qword [rbp - 0x20]
and rax, rcx
mov dword [rbp - 0x28], 0xa
lea rcx, str.setLayouts
or rax, rcx
mov rcx, rdi
mov qword [rbp - 0x20], rax
call fcn.140015670
mov ecx, dword [rdi]
movabs rdx, 0xffffffffffff
mov rax, qword [rdi + 8]
and rax, rdx
shl rcx, 5
add rcx, rax
mov rax, qword [rbp - 0x30]
cmp rax, rcx
je 0x140026303
lea rdx, [rax + 0x10]
jmp 0x140026314
xorps xmm0, xmm0
lea rdx, [0x140201b48]
movups xmmword [0x140201b48], xmm0
lea r8, [rsi + 0x18]
mov rcx, r14
call fcn.14002dcf0
test al, al
je 0x1400261bb
mov rax, qword [r13]
lea rcx, [r14 + 0x88]
lea r8, [rbp + 0x48]
lea rdx, [rbp - 0x18]
mov rbx, qword [rax + 0x30]
call fcn.140017c40
mov rdx, qword [rbp + 0x48]
mov r8, rsi
mov rcx, r13
mov r9, qword [rax]
add r9, 0x18
call rbx
test al, al
je 0x1400261bb
movabs rsi, 0x100000001b3
mov ecx, dword [r12]
add rdi, 0x20
mov rax, qword [r12 + 8]
movabs rdx, 0xffffffffffff
and rax, rdx
shl rcx, 5
add rcx, rax
inc r15d
lea rax, [rdi - 0x10]
cmp rax, rcx
je 0x14002639f
mov rbx, qword [rbp + 0x38]
jmp 0x140025ed7
mov rax, qword [r13]
mov rcx, r13
call qword [rax + 0x80]
mov al, 1
mov rdi, qword [rsp + 0x70]
mov rsi, qword [rsp + 0xb8]
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rbx
pop rbp
ret