Function at 0x101a4120
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x10
mov esi, dword [ebp + 8]
cmp byte [esi + 0x11db], 0
jne 0x101a413e
cmp byte [esi + 0x11e0], 0
je 0x101a418e
mov ebx, dword [ebp + 0x14]
push dword [ebp + 0x18]
push ebx
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.1018ee10
add esp, 0x14
test al, al
je 0x101a41a5
mov eax, dword [ebp + 0x20]
test ebx, ebx
je 0x101a4172
test eax, eax
jg 0x101a4172
add esi, 0x1be4
mov ecx, esi
push str.numViews_cannot_be_less_than_1.
jmp 0x101a4187
cmp dword [esi + 0x11dc], eax
jae 0x101a41af
add esi, 0x1be4
mov ecx, esi
push str.numViews_cannot_be_greater_than_GL_MAX_VIEWS_ANGLE.
push 0x501
jmp 0x101a41a0
add esi, 0x1be4
mov ecx, esi
push str.ANGLE_multiview_is_not_available.
push 0x502
call fcn.10021560
xor eax, eax
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
mov al, 1
test ebx, ebx
je 0x101a41a7
cmp dword [ebp + 0x1c], 0
js 0x101a41d9
mov eax, dword [esi + 0x127c]
cmp dword [eax + 0x38], ebx
jbe 0x101a41e8
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + ebx*4]
xor edi, edi
cmp eax, 0xffffffff
cmovne edi, eax
jmp 0x101a4295
add esi, 0x1be4
mov ecx, esi
push str.Negative_baseViewIndex.
jmp 0x101a4187
mov edi, ebx
shr edi, 0x10
mov dword [ebp - 0x10], eax
mov eax, ebx
shr eax, 8
mov edx, ebx
mov ecx, 0xff
and edx, ecx
mov ecx, 0xff
and eax, ecx
mov ecx, 0xff
mov dword [ebp - 0x14], eax
and edi, ecx
mov eax, ebx
shr eax, 0x18
xor edx, 0x811c9dc5
imul edx, edx, 0x1000193
xor edx, dword [ebp - 0x14]
imul edx, edx, 0x1000193
xor edx, edi
imul edx, edx, 0x1000193
xor edx, eax
imul edx, edx, 0x1000193
mov ecx, dword [ebp - 0x10]
and edx, dword [ecx + 0x58]
mov eax, dword [ecx + 0x44]
mov dword [ebp - 0x18], eax
mov eax, dword [ecx + 0x4c]
shl edi, 0x10
and ebx, 0xff0000ff
or ebx, edi
mov dword [ebp - 0x10], eax
mov eax, dword [eax + edx*8]
lea ecx, [edx + edx]
inc ecx
mov dword [ebp - 0x1c], ecx
mov ecx, dword [ebp - 0x14]
shl ecx, 8
or ebx, ecx
mov ecx, eax
cmp dword [ebp - 0x18], eax
je 0x101a427c
mov edx, dword [ebp - 0x10]
mov edi, dword [ebp - 0x1c]
mov edx, dword [edx + edi*4]
mov edx, dword [edx]
jmp 0x101a427e
mov edx, eax
xor edi, edi
cmp ecx, edx
je 0x101a4295
cmp dword [ecx + 8], ebx
je 0x101a428d
mov ecx, dword [ecx]
jmp 0x101a426a
cmp ecx, dword [ebp - 0x18]
je 0x101a4295
mov edi, dword [ecx + 0xc]
mov cl, byte [edi + 0x60]
cmp cl, 1
je 0x101a42ab
cmp cl, 3
jne 0x101a42c8
cmp byte [esi + 0x1233], 0
je 0x101a42c8
mov eax, dword [ebp + 0x20]
add eax, dword [ebp + 0x1c]
cmp eax, dword [esi + 0x44]
jle 0x101a42da
add esi, 0x1be4
mov ecx, esi
push str.baseViewIndexnumViews_cannot_be_greater_than_GL_MAX_ARRAY_TEXTURE_LAYERS.
jmp 0x101a4187
add esi, 0x1be4
mov ecx, esi
push str.Texture_has_incompatible_target.
jmp 0x101a419b
movzx ebx, cl
mov eax, dword [ebp + 0x18]
push eax
push ebx
push esi
call fcn.1018dbd0
add esp, 0xc
test al, al
je 0x101a4326
push ebx
call fcn.102b00a0
add esp, 4
movzx eax, al
mov ecx, edi
push dword [ebp + 0x18]
push eax
call fcn.10087070
mov eax, dword [eax]
cmp byte [eax + 0x34], 0
mov al, 1
je 0x101a41a7
add esi, 0x1be4
mov ecx, esi
push str.Compressed_textures_cannot_be_attached_to_a_framebuffer.
jmp 0x101a419b
add esi, 0x1be4
mov ecx, esi
push str.Level_of_detail_outside_of_range.
jmp 0x101a4187