Function at 0x1019d2e0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x1211], 0
je 0x1019d315
mov eax, dword [ebp + 0xc]
mov edx, dword [ecx + 0x127c]
cmp dword [edx + 0x38], eax
jbe 0x1019d32a
mov ecx, dword [edx + 0x3c]
mov edi, dword [ecx + eax*4]
cmp edi, 0xffffffff
jne 0x1019d3b1
jmp 0x1019d3cb
add ecx, 0x1be4
push str.Extension_is_not_enabled.
push 0x502
jmp 0x1019d3de
mov ebx, eax
shr ebx, 0x10
mov edi, eax
shr edi, 8
mov ecx, 0xff
mov esi, eax
and esi, ecx
and edi, ecx
and ebx, ecx
mov ecx, eax
shr ecx, 0x18
xor esi, 0x811c9dc5
imul esi, esi, 0x1000193
xor esi, edi
imul esi, esi, 0x1000193
xor esi, ebx
imul esi, esi, 0x1000193
xor esi, ecx
imul esi, esi, 0x1000193
and esi, dword [edx + 0x58]
mov ecx, dword [edx + 0x44]
mov edx, dword [edx + 0x4c]
shl ebx, 0x10
and eax, 0xff0000ff
or eax, ebx
mov dword [ebp - 0x10], edx
mov edx, dword [edx + esi*8]
add esi, esi
inc esi
shl edi, 8
or eax, edi
mov edi, edx
cmp ecx, edx
je 0x1019d39b
mov ebx, dword [ebp - 0x10]
mov ebx, dword [ebx + esi*4]
mov ebx, dword [ebx]
jmp 0x1019d39d
mov ebx, edx
cmp edi, ebx
je 0x1019d3cb
cmp dword [edi + 8], eax
je 0x1019d3aa
mov edi, dword [edi]
jmp 0x1019d38d
cmp edi, ecx
je 0x1019d3cb
mov edi, dword [edi + 0xc]
test edi, edi
je 0x1019d3cb
cmp byte [edi + 0x60], 0
je 0x1019d3ed
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Source_texture_must_be_a_valid_texture_type.
jmp 0x1019d3d9
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Source_texture_is_not_a_valid_texture_object.
push 0x501
call fcn.10021560
xor eax, eax
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
xor esi, esi
mov ecx, edi
push esi
push esi
call fcn.10086fb0
test eax, eax
je 0x1019d441
mov ecx, edi
push esi
push esi
call fcn.10086ff0
test eax, eax
je 0x1019d441
xor eax, eax
mov ecx, edi
push eax
push eax
call fcn.10087070
mov eax, dword [eax]
cmp byte [eax + 0x34], 0
je 0x1019d451
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x127c]
cmp dword [edx + 0x38], eax
jbe 0x1019d464
mov ecx, dword [edx + 0x3c]
mov eax, dword [ecx + eax*4]
cmp eax, 0xffffffff
jne 0x1019d4eb
jmp 0x1019d508
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Source_texture_must_level_0_defined.
jmp 0x1019d3d9
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Source_texture_must_have_a_compressed_internal_format.
jmp 0x1019d320
mov ebx, eax
shr ebx, 0x10
mov edi, eax
shr edi, 8
mov ecx, 0xff
mov esi, eax
and esi, ecx
and edi, ecx
and ebx, ecx
mov ecx, eax
shr ecx, 0x18
xor esi, 0x811c9dc5
imul esi, esi, 0x1000193
xor esi, edi
imul esi, esi, 0x1000193
xor esi, ebx
imul esi, esi, 0x1000193
xor esi, ecx
imul esi, esi, 0x1000193
and esi, dword [edx + 0x58]
mov ecx, dword [edx + 0x44]
mov edx, dword [edx + 0x4c]
shl ebx, 0x10
and eax, 0xff0000ff
or eax, ebx
mov dword [ebp - 0x10], edx
mov edx, dword [edx + esi*8]
add esi, esi
inc esi
shl edi, 8
or eax, edi
mov edi, edx
cmp ecx, edx
je 0x1019d4d5
mov ebx, dword [ebp - 0x10]
mov ebx, dword [ebx + esi*4]
mov ebx, dword [ebx]
jmp 0x1019d4d7
mov ebx, edx
cmp edi, ebx
je 0x1019d508
cmp dword [edi + 8], eax
je 0x1019d4e4
mov edi, dword [edi]
jmp 0x1019d4c7
cmp edi, ecx
je 0x1019d508
mov eax, dword [edi + 0xc]
test eax, eax
je 0x1019d508
cmp byte [eax + 0x60], 0
je 0x1019d51b
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Invalid_destination_texture_type.
jmp 0x1019d3d9
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Destination_texture_is_not_a_valid_texture_object.
jmp 0x1019d3d9
cmp byte [eax + 0xc9], 0
mov ecx, dword [ebp + 8]
je 0x1019d537
add ecx, 0x1be4
push str.Destination_texture_cannot_be_immutable.
jmp 0x1019d320
mov al, 1
jmp 0x1019d3e5