Function at 0x1019a080
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x18
movzx eax, byte [ebp + 0xc]
mov bh, byte [ebp + 0x1c]
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x10], eax
push eax
call fcn.10226250
add esp, 4
mov bl, al
movzx eax, bh
movzx edi, bl
push eax
push 1
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push esi
push edi
push dword [ebp + 8]
call fcn.1018dc20
add esp, 0x1c
test al, al
je 0x1019a1a8
push esi
push edi
mov esi, dword [ebp + 8]
push esi
call fcn.1018dbd0
add esp, 0xc
test al, al
je 0x1019a14f
cmp dword [ebp + 0x20], 0
mov edx, dword [ebp + 0x28]
js 0x1019a191
mov eax, 0x7fffffff
mov ecx, 0x7fffffff
sub ecx, dword [ebp + 0x20]
cmp ecx, edx
jl 0x1019a191
sub eax, dword [ebp + 0x24]
cmp eax, dword [ebp + 0x2c]
jl 0x1019a191
cmp bl, 9
ja case.0x1019a10d.1
mov bl, byte [ebp + 0x18]
jmp dword [edi*4 + 0x102f101c]
mov eax, dword [esi + 0x3c]
mov ecx, dword [ebp + 0x10]
sar eax, cl
cmp eax, edx
jl 0x1019a191
cmp eax, dword [ebp + 0x2c]
jl 0x1019a191
lea ecx, [esi + 8]
push edi
call fcn.1007f5d0
test eax, eax
je 0x1019a1ca
cmp dword [ebp + 0x30], 0
je 0x1019a1e6
add esi, 0x1be4
mov ecx, esi
push str.Border_must_be_0.
jmp 0x1019a19e
add esi, 0x1be4
mov ecx, esi
push str.Level_of_detail_outside_of_range.
jmp 0x1019a19e
add esi, 0x1be4
mov ecx, esi
push str.Invalid_or_unsupported_texture_target.
push 0x500
jmp 0x1019a1a3
mov eax, dword [esi + 0x40]
cmp eax, edx
jl 0x1019a191
cmp eax, dword [ebp + 0x2c]
jl 0x1019a191
test bl, bl
je 0x1019a125
add esi, 0x1be4
mov ecx, esi
push str.Rectangle_texture_cannot_have_a_compressed_format.
jmp 0x1019a16b
add esi, 0x1be4
mov ecx, esi
push str.Desired_resource_size_is_greater_than_max_texture_size.
push 0x501
call fcn.10021560
xor eax, eax
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret
cmp edx, dword [ebp + 0x2c]
je 0x1019a1de
test bh, bh
jne 0x1019a1de
add esi, 0x1be4
mov ecx, esi
push str.Each_cubemap_face_must_have_equal_width_and_height.
jmp 0x1019a19e
add esi, 0x1be4
mov ecx, esi
push str.A_buffer_must_be_bound.
push 0x502
jmp 0x1019a1a3
mov eax, dword [esi + 0x4c]
jmp 0x1019a117
mov dword [ebp - 0x18], eax
mov edx, dword [ebp + 0x38]
mov ecx, dword [ebp + 0x34]
mov eax, dword [ebp + 0x14]
test bl, bl
je 0x1019a2e4
test bh, bh
je 0x1019a213
movzx eax, byte [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
push dword [ebp + 0x10]
push eax
call fcn.10087070
mov eax, dword [eax]
mov eax, dword [eax + 8]
mov dword [ebp - 0x1c], eax
push eax
call fcn.1009dde0
add esp, 4
cmp byte [eax + 0x34], 0
je 0x1019a314
mov ecx, dword [eax + 0x54]
lea eax, [esi + 0x1180]
mov dword [ebp - 0x14], eax
lea eax, [esi + 0x14]
mov dword [ebp - 0x20], eax
call dword [section..00cfg]
push dword [ebp - 0x14]
push dword [ebp - 0x20]
call ecx
add esp, 8
test al, al
je 0x1019a314
test bh, bh
je 0x1019a405
mov eax, dword [ebp - 0x1c]
cmp eax, 0x8d64
jne 0x1019a273
cmp byte [esi + 0x119f], 0
je 0x1019a5ec
mov dword [ebp - 0x14], edi
movzx ebx, byte [ebp - 0x10]
mov edi, dword [ebp - 0x18]
mov ecx, edi
mov eax, dword [ebp + 0x10]
push eax
push ebx
call fcn.10087030
mov dword [ebp - 0x20], eax
mov ecx, edi
push dword [ebp + 0x10]
push ebx
call fcn.10086ff0
mov dword [ebp - 0x24], eax
mov ecx, edi
mov edi, dword [ebp - 0x1c]
push dword [ebp + 0x10]
push ebx
call fcn.10086fb0
push dword [ebp - 0x20]
push dword [ebp - 0x24]
push eax
push 1
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push 0
push dword [ebp + 0x24]
push dword [ebp + 0x20]
push edi
push esi
call fcn.1018dec0
add esp, 0x2c
test al, al
je 0x1019a42d
mov ecx, dword [ebp + 0x34]
cmp edi, ecx
mov edi, dword [ebp - 0x14]
jne 0x1019a5da
jmp 0x1019a75d
cmp edx, 0x8362
jg 0x1019a326
lea eax, [edx - 0x1401]
cmp eax, 5
ja 0x1019a304
mov ecx, 0x35
bt ecx, eax
mov ecx, dword [ebp + 0x34]
jb 0x1019a364
lea eax, [edx - 0x8033]
cmp eax, 2
jb 0x1019a364
jmp 0x1019a475
add esi, 0x1be4
mov ecx, esi
push str.Invalid_internal_format.
jmp 0x1019a16b
cmp edx, 0x84f9
jg 0x1019a350
cmp edx, 0x8363
je 0x1019a364
cmp edx, 0x8368
jne 0x1019a475
cmp byte [esi + 0x1193], 0
jne 0x1019a364
jmp case.0x1019a3a3.6404
cmp edx, 0x84fa
je 0x1019a364
cmp edx, 0x8d61
jne 0x1019a475
cmp ecx, 0x8226
jle 0x1019a394
cmp ecx, 0x84f8
jg 0x1019a3d3
lea eax, [ecx - 0x83f0]
cmp eax, 4
jb 0x1019a69f
cmp ecx, 0x8227
je case.0x1019a3a3.6403
jmp case.0x1019a3a3.6404
lea eax, [ecx - 0x1901]
cmp eax, 9
ja case.default.0x1019a3a3
jmp dword [eax*4 + 0x102f1044]
cmp edx, 0x1401
je 0x1019a69f
cmp edx, 0x1406
je 0x1019a69f
cmp edx, 0x8d61
je 0x1019a69f
jmp 0x1019a642
cmp ecx, 0x84f9
je 0x1019a4b1
cmp ecx, 0x8c40
je 0x1019a3f3
cmp ecx, 0x8c42
jne case.0x1019a3a3.6404
cmp byte [esi + 0x11ad], 0
jne 0x1019a4a0
jmp case.0x1019a3a3.6404
push 1
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
push dword [ebp + 0x10]
push dword [ebp - 0x1c]
push esi
call fcn.1018dd60
add esp, 0x18
test al, al
je 0x1019a42d
xor eax, eax
mov edx, dword [ebp + 0x38]
mov ecx, dword [ebp + 0x34]
jmp 0x1019a9ee
add esi, 0x1be4
mov ecx, esi
push str.Invalid_compressed_image_size.
jmp 0x1019a1d7
cmp byte [esi + 0x1192], 0
je case.0x1019a3a3.6404
cmp edx, 0x1405
jg 0x1019a5fe
lea eax, [edx - 0x1402]
cmp eax, 2
jae 0x1019a4a0
cmp byte [esi + 0x1222], 0
jne 0x1019a69f
jmp case.0x1019a3a3.6404
add esi, 0x1be4
mov ecx, esi
push str.Invalid_type.
jmp 0x1019a16b
cmp ecx, 0x80e1
jne case.0x1019a3a3.6404
cmp byte [esi + 0x1187], 0
je case.0x1019a3a3.6404
cmp edx, 0x1401
je 0x1019a69f
jmp 0x1019a642
cmp edx, 0x84fa
je 0x1019a525
jmp 0x1019a642
cmp edx, 0x1401
jne 0x1019a642
cmp byte [esi + 0x1254], 0
je 0x1019a5da
mov eax, dword [ebp - 0x10]
add al, 0xf9
cmp al, 6
jb 0x1019a4ea
cmp byte [ebp - 0x10], 2
jae 0x1019a65e
cmp dword [ebp + 0x14], 0x8d48
jne 0x1019a65e
jmp 0x1019a69f
cmp edx, 0x1403
je 0x1019a525
cmp edx, 0x1405
je 0x1019a525
cmp edx, 0x1406
jne 0x1019a642
cmp byte [esi + 0x1184], 0
je 0x1019a642
cmp byte [esi + 0x11af], 0
jne 0x1019a551
cmp byte [esi + 0x1181], 0
jne 0x1019a544
cmp byte [esi + 0x11b1], 0
je case.0x1019a3a3.6404
cmp byte [esi + 0x11b0], 0
je case.0x1019a3a3.6404
mov eax, dword [ebp - 0x10]
add al, 0xf9
cmp al, 6
jae 0x1019a654
cmp byte [esi + 0x11b1], 0
je 0x1019a65e
cmp byte [esi + 0x11b0], 0
jne 0x1019a69f
cmp dword [ebp + 0x40], 0
je 0x1019a687
add esi, 0x1be4
mov ecx, esi
push str.Pixel_data_must_be_null.
jmp 0x1019a1d7
cmp edx, 0x8362
jle 0x1019a5b5
cmp edx, 0x8363
jne 0x1019a62b
jmp 0x1019a69f
cmp edx, 0x8032
jg 0x1019a620
lea eax, [edx - 0x1402]
cmp eax, 2
jb 0x1019a639
cmp edx, 0x1401
je 0x1019a69f
cmp edx, 0x1406
je 0x1019a69f
jmp 0x1019a642
add esi, 0x1be4
mov ecx, esi
push str.Invalid_format.
jmp 0x1019a1d7
add esi, 0x1be4
mov ecx, esi
push str.Invalid_internal_format.
jmp 0x1019a1d7
cmp edx, 0x8d61
je 0x1019a670
cmp edx, 0x1406
jne 0x1019a642
cmp byte [esi + 0x1190], 0
jne 0x1019a69f
jmp case.0x1019a3a3.6404
lea eax, [edx - 0x8033]
cmp eax, 2
jb 0x1019a69f
cmp edx, 0x8368
jne 0x1019a3c2
jmp 0x1019a69f
cmp byte [esi + 0x1222], 0
jne 0x1019a69f
add esi, 0x1be4
mov ecx, esi
push str.Invalid_format_and_type_combination.
jmp 0x1019a1d7
cmp byte [ebp - 0x10], 0
je 0x1019a56b
add esi, 0x1be4
mov ecx, esi
push str.Invalid_texture_target_and_format_combination.
jmp 0x1019a1d7
cmp byte [esi + 0x1190], 0
jne 0x1019a69f
cmp byte [esi + 0x118e], 0
jne 0x1019a69f
jmp case.0x1019a3a3.6404
cmp dword [ebp + 0x10], 0
je 0x1019a69f
add esi, 0x1be4
mov ecx, esi
push str.Texture_level_must_be_zero.
jmp 0x1019a1d7
test bh, bh
mov eax, dword [ebp + 0x14]
je 0x1019a6d2
xor eax, eax
cmp edx, 0x8d61
je 0x1019a748
cmp edx, 0x1406
jne 0x1019a755
cmp byte [esi + 0x1190], 0
jne 0x1019a755
jmp case.0x1019a3a3.6404
cmp eax, 0x8226
jle 0x1019a7f3
cmp eax, 0x8c41
jg 0x1019a83c
cmp eax, 0x84f8
jle 0x1019a8c9
cmp eax, 0x8814
jg 0x1019a905
cmp eax, 0x84f9
je 0x1019aa5e
cmp eax, 0x8814
jne case.0x1019a898.32853
mov ecx, esi
cmp byte [esi + 0x121d], 0
je 0x1019ab07
cmp edx, 0x1406
jne 0x1019ab1a
mov eax, dword [ebp + 0x34]
cmp eax, 0x1908
mov esi, ecx
mov ecx, eax
mov al, 1
jne 0x1019a642
jmp 0x1019a6c0
cmp byte [esi + 0x118e], 0
je case.0x1019a3a3.6404
test bh, bh
je 0x1019a9ee
movzx eax, byte [ebp - 0x10]
mov ecx, dword [ebp - 0x18]
push dword [ebp + 0x10]
mov dword [ebp - 0x10], eax
push eax
call fcn.10087070
mov ebx, dword [eax]
cmp dword [ebx], 0
je 0x1019a82a
mov eax, dword [ebp + 0x34]
cmp dword [ebx + 0x44], eax
jne 0x1019a878
mov dword [ebp - 0x14], edi
cmp byte [esi + 0x1213], 0
je 0x1019a7ad
push dword [ebp + 0x38]
push dword [ebp + 0x34]
call fcn.1009df60
add esp, 8
mov eax, dword [eax + 8]
cmp eax, dword [ebx + 8]
jne 0x1019a944
mov ebx, dword [ebp + 0x20]
add ebx, dword [ebp + 0x28]
mov ecx, dword [ebp - 0x18]
mov edi, dword [ebp + 0x10]
push edi
mov edi, dword [ebp - 0x10]
push edi
call fcn.10086fb0
cmp ebx, eax
ja 0x1019a7e1
mov ebx, dword [ebp + 0x24]
add ebx, dword [ebp + 0x2c]
mov ecx, dword [ebp - 0x18]
push dword [ebp + 0x10]
push edi
call fcn.10086ff0
cmp ebx, eax
jbe 0x1019a977
add esi, 0x1be4
mov ecx, esi
push str.Offset_overflows_texture_dimensions.
jmp 0x1019a19e
cmp eax, 0x8053
jg 0x1019a88a
add eax, 0xffffe6fa
cmp eax, 5
jb 0x1019a6a6
mov eax, dword [ebp + 0x14]
cmp eax, 0x1902
je 0x1019aa8b
cmp eax, 0x1903
je 0x1019a92a
jmp case.0x1019a898.32853
add esi, 0x1be4
mov ecx, esi
push str.Texture_level_does_not_exist.
jmp 0x1019a1d7
add eax, 0xffff7068
cmp eax, 4
jb case.0x1019a898.32852
cmp dword [ebp + 0x14], 0x8c42
je 0x1019a91b
cmp dword [ebp + 0x14], 0x8d48
jne case.0x1019a898.32853
mov ecx, esi
cmp byte [esi + 0x1254], 0
jne 0x1019aa7f
jmp 0x1019ab07
add esi, 0x1be4
mov ecx, esi
push str.Passed_in_texture_target_and_format_must_match_the_one_originally_used_to_define_the_texture.
jmp 0x1019a1d7
add eax, 0xffff7fac
cmp eax, 7
ja case.default.0x1019a898
jmp dword [eax*4 + 0x102f106c]
cmp byte [esi + 0x1193], 0
setne byte [ebp - 0x1c]
cmp edx, 0x8368
sete dl
cmp ecx, 0x1908
sete al
and al, dl
mov edx, dword [ebp + 0x38]
and al, byte [ebp - 0x1c]
jmp 0x1019a6a8
cmp eax, 0x8227
je 0x1019a92a
cmp dword [ebp + 0x14], 0x822a
je case.0x1019a898.32852
cmp dword [ebp + 0x14], 0x822c
jne case.0x1019a898.32853
cmp byte [esi + 0x1222], 0
jne 0x1019a6a6
add esi, 0x1be4
mov ecx, esi
push str.Enum_is_not_currently_supported.
jmp 0x1019a16b
cmp eax, 0x8815
je 0x1019aaaf
cmp eax, 0x8c40
jne case.0x1019a898.32853
cmp byte [esi + 0x11ad], 0
jne 0x1019a6a6
jmp case.0x1019a3a3.6404
cmp byte [esi + 0x1192], 0
jne 0x1019a6a6
add esi, 0x1be4
mov ecx, esi
jmp 0x1019ab0d
add esi, 0x1be4
mov ecx, esi
push str.Passed_in_texture_type_must_match_the_one_originally_used_to_define_the_texture.
jmp 0x1019a1d7
cmp dword [ebp + 0x14], 0x80e1
jne case.0x1019a898.32853
mov ecx, esi
cmp byte [esi + 0x1187], 0
jne 0x1019aa7f
jmp 0x1019ab07
cmp dword [ebp + 0x28], 0
jle 0x1019aae8
cmp dword [ebp + 0x2c], 0
jle 0x1019aae8
cmp dword [ebp + 0x40], 0
jne 0x1019aae8
cmp dword [esi + 0x16e4], 0
mov ecx, dword [ebp + 0x28]
mov edi, dword [ebp - 0x14]
mov edx, dword [ebp + 0x38]
mov ebx, dword [ebp + 0x34]
jne 0x1019aa41
add esi, 0x1be4
mov ecx, esi
push str.Pixel_data_cannot_be_null.
jmp 0x1019a19e
mov eax, ecx
mov ecx, esi
cmp byte [esi + 0x1193], 0
je 0x1019aaf9
cmp eax, 0x1908
mov esi, ecx
jne 0x1019a642
mov ecx, eax
mov al, 1
cmp edx, 0x8368
jne 0x1019a642
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x18]
cmp byte [eax + 0xc9], 0
je 0x1019aa0f
add esi, 0x1be4
mov ecx, esi
push str.Texture_is_immutable.
jmp 0x1019a1d7
test bl, bl
jne 0x1019aa3b
mov eax, ecx
test bh, bh
mov ecx, dword [ebp + 0x28]
mov ebx, dword [ebp + 0x14]
jne 0x1019aa41
cmp ebx, eax
je 0x1019aa41
cmp byte [ebp - 0x10], 0
jne 0x1019aa41
add esi, 0x1be4
mov ecx, esi
push str.Invalid_combination_of_format__type_and_internalFormat.
jmp 0x1019a1d7
mov ebx, dword [ebp + 0x14]
mov ecx, dword [ebp + 0x28]
push dword [ebp + 0x3c]
push dword [ebp + 0x40]
push edx
push ebx
push 1
push dword [ebp + 0x2c]
push ecx
push edi
push esi
call fcn.1018dfc0
add esp, 0x3c
jmp 0x1019a1ad
mov ecx, esi
cmp byte [esi + 0x11af], 0
jne 0x1019aa7f
cmp byte [ecx + 0x1181], 0
jne 0x1019aa7f
cmp byte [ecx + 0x11b1], 0
je 0x1019ab07
xor eax, eax
mov esi, ecx
mov ecx, dword [ebp + 0x34]
jmp 0x1019a6a8
mov edx, esi
cmp byte [esi + 0x11af], 0
jne 0x1019aaa3
cmp byte [edx + 0x11b0], 0
je 0x1019ab25
xor eax, eax
mov esi, edx
mov edx, dword [ebp + 0x38]
jmp 0x1019a6a8
cmp byte [esi + 0x121c], 0
je 0x1019ab04
cmp edx, 0x1406
jne 0x1019ab17
mov al, 1
cmp ecx, 0x1907
mov esi, dword [ebp + 8]
jne 0x1019a642
jmp 0x1019a6c0
add esi, 0x1be4
mov ecx, esi
push str.Invalid_internal_format.
jmp 0x1019a19e
mov ecx, dword [ebp + 0x28]
mov edi, dword [ebp - 0x14]
mov edx, dword [ebp + 0x38]
mov ebx, dword [ebp + 0x34]
jmp 0x1019aa41
add ecx, 0x1be4
jmp 0x1019a8fb
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Invalid_format.
jmp 0x1019a16b
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
jmp 0x1019a64a
add edx, 0x1be4
mov ecx, edx
jmp 0x1019ab0d