Function at 0x101bc9d0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1c
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x136c]
cmp dword [edx + 0x2c], ecx
jbe 0x101bc9fe
mov eax, dword [edx + 0x30]
mov esi, dword [eax + ecx*4]
cmp esi, 0xffffffff
jne 0x101bca90
jmp 0x101bcadf
mov ebx, ecx
shr ebx, 0x10
mov eax, ecx
shr eax, 8
mov esi, 0xff
mov edi, ecx
and edi, esi
and eax, esi
and ebx, esi
mov esi, ecx
shr esi, 0x18
mov dword [ebp - 0x18], edi
xor edi, 0x811c9dc5
imul edi, edi, 0x1000193
xor edi, eax
imul edi, edi, 0x1000193
xor edi, ebx
imul edi, edi, 0x1000193
xor edi, esi
imul esi, edi, 0x1000193
and esi, dword [edx + 0x4c]
mov edi, dword [edx + 0x38]
mov edx, dword [edx + 0x40]
mov dword [ebp - 0x14], edx
mov edx, dword [edx + esi*8 + 4]
mov dword [ebp - 0x10], edi
cmp edx, edi
je 0x101bcadf
and ecx, 0xff000000
shl ebx, 0x10
or ebx, ecx
shl eax, 8
or eax, ebx
add eax, dword [ebp - 0x18]
cmp eax, dword [edx + 8]
je 0x101bca88
add esi, esi
mov ecx, dword [ebp - 0x14]
mov ecx, dword [ecx + esi*4]
cmp edx, ecx
je 0x101bcadf
mov edx, dword [edx + 4]
cmp eax, dword [edx + 8]
jne 0x101bca7c
cmp edx, dword [ebp - 0x10]
je 0x101bcadf
mov esi, dword [edx + 0xc]
test esi, esi
je 0x101bcadf
mov ebx, dword [ebp + 0x1c]
movzx eax, byte [esi + 0x6c]
push eax
call fcn.10219ef0
add esp, 4
movzx eax, al
mov ecx, esi
push dword [ebp + 0x14]
mov dword [ebp - 0x14], eax
push eax
call fcn.1008e490
mov ecx, eax
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x136c]
cmp dword [edx + 0x2c], ebx
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x10], ecx
jbe 0x101bcaf2
mov eax, dword [edx + 0x30]
mov esi, dword [eax + ebx*4]
cmp esi, 0xffffffff
jne 0x101bcb92
jmp 0x101bcc20
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Source_texture_is_not_a_valid_texture_object.
jmp 0x101bcc2e
mov esi, ebx
shr esi, 0x10
mov ecx, ebx
shr ecx, 8
mov eax, 0xff
mov edi, ebx
and edi, eax
and ecx, eax
and esi, eax
mov eax, ebx
shr eax, 0x18
mov dword [ebp - 0x28], edi
xor edi, 0x811c9dc5
imul edi, edi, 0x1000193
xor edi, ecx
imul edi, edi, 0x1000193
xor edi, esi
imul edi, edi, 0x1000193
xor edi, eax
imul eax, edi, 0x1000193
and eax, dword [edx + 0x4c]
mov edi, dword [edx + 0x38]
mov edx, dword [edx + 0x40]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
mov edx, dword [edx + eax*8 + 4]
mov dword [ebp - 0x24], edi
cmp edx, edi
je 0x101bcc20
and ebx, 0xff000000
shl esi, 0x10
or esi, ebx
shl ecx, 8
or ecx, esi
add ecx, dword [ebp - 0x28]
cmp ecx, dword [edx + 8]
je 0x101bcb86
mov eax, dword [ebp - 0x20]
add eax, eax
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi + eax*4]
cmp edx, eax
je 0x101bcc20
mov edx, dword [edx + 4]
cmp ecx, dword [edx + 8]
jne 0x101bcb76
cmp edx, dword [ebp - 0x24]
je 0x101bcc20
mov esi, dword [edx + 0xc]
test esi, esi
je 0x101bcc20
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
movzx edi, byte [ebp + 0x18]
mov ebx, dword [ebp + 8]
mov ecx, ebx
mov edx, dword [ebp + 0xc]
push edi
push dword [ebp + 0x24]
push dword [eax]
mov edi, dword [ebp - 0x18]
push edi
call fcn.101bcc70
add esp, 0x10
test al, al
je 0x101bcc3b
movzx eax, byte [edi + 0x6c]
mov ecx, dword [ebp + 0x14]
push ecx
push eax
push ebx
call fcn.101a6140
add esp, 0xc
test al, al
je 0x101bcc45
mov ecx, edi
mov eax, dword [ebp + 0x14]
push eax
mov ebx, dword [ebp - 0x14]
push ebx
call fcn.1008e3d0
mov dword [ebp - 0x10], eax
mov ecx, edi
push dword [ebp + 0x14]
push ebx
call fcn.1008e410
cmp dword [ebp - 0x10], 0
je 0x101bcc54
test eax, eax
je 0x101bcc54
cmp byte [esi + 0xd7], 0
mov ebx, dword [ebp + 0xc]
je 0x101bcc69
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Destination_texture_cannot_be_immutable.
push 0x502
push ebx
jmp 0x101bcc36
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Destination_texture_is_not_a_valid_texture_object.
push 0x501
push dword [ebp + 0xc]
call fcn.1001a2a0
xor eax, eax
add esp, 0x1c
pop esi
pop edi
pop ebx
pop ebp
ret
add ebx, 0x1d04
mov ecx, ebx
push str.Invalid_source_texture_level.
jmp 0x101bcc2e
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Invalid_source_texture_height_or_width.
push 0x502
jmp 0x101bcc33
mov al, 1
jmp 0x101bcc3d