Function at 0x101b4ce0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x18
mov dword [ebp - 0x10], edx
mov edi, ecx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
cmp ecx, 0x8d3f
jg 0x101b4d38
lea edx, [ecx - 0x82e0]
cmp edx, 6
ja case.default.0x101b4d07
jmp dword [edx*4 + 0x10300174]
mov ecx, dword [edi + 0x1364]
push eax
call fcn.10076790
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.name_is_not_a_valid_buffer.
jmp 0x101b4fc3
cmp ecx, 0x8d40
je 0x101b4e99
cmp ecx, 0x8d41
je 0x101b4ec3
cmp ecx, 0x8e22
jne case.0x101b4d07.33509
mov ecx, edi
push eax
call fcn.10014290
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.name_is_not_a_valid_transform_feedback.
jmp 0x101b4fc3
cmp ecx, 0x1702
je 0x101b4ef1
cmp ecx, 0x8074
jne case.0x101b4d07.33509
mov ecx, edi
push eax
call fcn.100141b0
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.name_is_not_a_valid_vertex_array.
jmp 0x101b4fc3
add edi, 0x1d04
mov ecx, edi
push str.Invalid_identifier.
push 0x500
jmp 0x101b4fc8
mov ecx, dword [edi + 0x1368]
push eax
call fcn.10076790
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.Shader_object_expected.
jmp 0x101b4fc3
mov ecx, edi
push eax
call fcn.10013a50
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.Program_object_expected.
jmp 0x101b4fc3
mov ecx, edi
push eax
call fcn.100148a0
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.name_is_not_a_valid_query.
jmp 0x101b4fc3
mov ecx, dword [edi + 0x1380]
push eax
call fcn.10076790
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.name_is_not_a_valid_program_pipeline.
jmp 0x101b4fc3
mov ecx, dword [edi + 0x1374]
push eax
call fcn.10076790
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.name_is_not_a_valid_sampler.
jmp 0x101b4fc3
mov ecx, dword [edi + 0x137c]
push eax
call fcn.10076790
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.name_is_not_a_valid_framebuffer.
jmp 0x101b4fc3
test eax, eax
je 0x101b4edf
mov ecx, dword [edi + 0x1370]
push eax
call fcn.10076790
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.name_is_not_a_valid_renderbuffer.
jmp 0x101b4fc3
mov ebx, dword [edi + 0x136c]
cmp dword [ebx + 0x2c], eax
jbe 0x101b4f10
mov ecx, dword [ebx + 0x30]
mov ecx, dword [ecx + eax*4]
cmp ecx, 0xffffffff
jne 0x101b4fb0
jmp 0x101b4fb6
mov edx, eax
shr edx, 0x10
mov ecx, eax
shr ecx, 8
mov dword [ebp - 0x18], eax
mov esi, 0xff
and dword [ebp - 0x18], esi
and ecx, esi
and edx, esi
mov esi, eax
shr esi, 0x18
mov dword [ebp - 0x14], esi
mov esi, dword [ebp - 0x18]
xor esi, 0x811c9dc5
imul esi, esi, 0x1000193
xor esi, ecx
imul esi, esi, 0x1000193
mov dword [ebp - 0x24], edx
xor esi, edx
imul esi, esi, 0x1000193
xor esi, dword [ebp - 0x14]
imul edx, esi, 0x1000193
and edx, dword [ebx + 0x4c]
mov esi, dword [ebx + 0x38]
mov dword [ebp - 0x14], esi
mov esi, dword [ebx + 0x40]
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], edx
mov edx, dword [esi + edx*8 + 4]
cmp edx, dword [ebp - 0x14]
je 0x101b4fb6
and eax, 0xff000000
mov esi, dword [ebp - 0x24]
shl esi, 0x10
or esi, eax
shl ecx, 8
or ecx, esi
add ecx, dword [ebp - 0x18]
cmp ecx, dword [edx + 8]
je 0x101b4fa8
mov esi, dword [ebp - 0x1c]
add esi, esi
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + esi*4]
cmp edx, eax
je 0x101b4fb6
mov edx, dword [edx + 4]
cmp ecx, dword [edx + 8]
jne 0x101b4f9c
cmp edx, dword [ebp - 0x14]
je 0x101b4fb6
mov ecx, dword [edx + 0xc]
mov al, 1
test ecx, ecx
jne 0x101b4fd2
add edi, 0x1d04
mov ecx, edi
push str.Not_a_valid_texture_object_name.
push 0x501
push dword [ebp - 0x10]
call fcn.1001a2a0
xor eax, eax
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret