Function at 0x1019f300
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 8
mov eax, dword [ebp + 0x1c]
mov esi, dword [ebp + 8]
cmp dword [esi + 0x14], 2
jg 0x1019f334
test eax, eax
je 0x1019f334
cmp byte [esi + 0x11e3], 0
jne 0x1019f334
add esi, 0x1be4
mov ecx, esi
push str.Mipmap_level_must_be_0_when_attaching_a_texture.
jmp 0x1019f44e
mov ebx, dword [ebp + 0x18]
push eax
push ebx
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push esi
call fcn.1018ee10
add esp, 0x14
test al, al
je 0x1019f458
mov al, 1
test ebx, ebx
je 0x1019f45a
mov cl, byte [ebp + 0x14]
mov edi, dword [esi + 0x127c]
cmp dword [edi + 0x38], ebx
jbe 0x1019f37b
mov eax, dword [edi + 0x3c]
mov eax, dword [eax + ebx*4]
xor edx, edx
cmp eax, 0xffffffff
cmovne edx, eax
jmp 0x1019f415
mov esi, ebx
shr esi, 0x10
mov edx, ebx
shr edx, 8
mov eax, 0xff
mov ecx, ebx
and ecx, eax
and edx, eax
and esi, eax
mov eax, ebx
shr eax, 0x18
xor ecx, 0x811c9dc5
imul ecx, ecx, 0x1000193
xor ecx, edx
imul ecx, ecx, 0x1000193
xor ecx, esi
imul ecx, ecx, 0x1000193
xor ecx, eax
imul eax, ecx, 0x1000193
and eax, dword [edi + 0x58]
mov ecx, dword [edi + 0x44]
mov edi, dword [edi + 0x4c]
shl esi, 0x10
and ebx, 0xff0000ff
or ebx, esi
mov dword [ebp - 0x14], edi
mov esi, eax
mov eax, dword [edi + eax*8]
add esi, esi
inc esi
mov dword [ebp - 0x10], esi
shl edx, 8
or ebx, edx
mov esi, eax
cmp ecx, eax
je 0x1019f3f5
mov edx, dword [ebp - 0x14]
mov edi, dword [ebp - 0x10]
mov edx, dword [edx + edi*4]
mov edi, dword [edx]
jmp 0x1019f3f7
mov edi, eax
xor edx, edx
cmp esi, edi
je 0x1019f406
cmp dword [esi + 8], ebx
je 0x1019f40b
mov esi, dword [esi]
jmp 0x1019f3e4
mov cl, byte [ebp + 0x14]
jmp 0x1019f415
cmp esi, ecx
mov cl, byte [ebp + 0x14]
je 0x1019f415
mov edx, dword [esi + 0xc]
cmp cl, 0xc
ja case.0x1019f421.1
movzx eax, cl
jmp dword [eax*4 + 0x102f1168]
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x4c]
xor ecx, ecx
dec ecx
inc ecx
mov esi, eax
sar esi, cl
cmp esi, 1
jg 0x1019f431
cmp ecx, dword [ebp + 0x1c]
jge 0x1019f462
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Level_of_detail_outside_of_range.
push 0x501
call fcn.10021560
xor eax, eax
add esp, 8
pop esi
pop edi
pop ebx
pop ebp
ret
cmp byte [edx + 0x60], 7
mov al, 1
je 0x1019f45a
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Textarget_must_match_the_texture_target_type.
push 0x502
jmp 0x1019f453
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
xor ecx, ecx
dec ecx
inc ecx
mov esi, eax
sar esi, cl
cmp esi, 1
jg 0x1019f488
cmp ecx, dword [ebp + 0x1c]
jl 0x1019f440
cmp byte [edx + 0x60], 0
mov al, 1
je 0x1019f45a
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Invalid_or_unsupported_texture_target.
jmp 0x1019f478
mov ecx, dword [ebp + 8]
add ecx, 0x1be4
push str.Invalid_or_unsupported_texture_target.
push 0x500
jmp 0x1019f453
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x14], 3
jae 0x1019f514
cmp byte [ecx + 0x123e], 0
jne 0x1019f51c
add ecx, 0x1be4
push str.GL_ANGLE_texture_multisample_or_GLES_3.1_required.
jmp 0x1019f478
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x125f], 0
je 0x1019f532
cmp dword [ebp + 0x10], 0x8ce0
jne 0x1019f542
cmp byte [edx + 0x60], 5
jmp 0x1019f466
cmp dword [ebp + 0x1c], 0
jne 0x1019f440
cmp byte [edx + 0x60], 6
jmp 0x1019f466
jne 0x1019f51c
cmp dword [ecx + 0x18], 0
je 0x1019f4cd
cmp dword [ebp + 0x1c], 0
je 0x1019f552
add ecx, 0x1be4
push str.Texture_level_must_be_zero.
jmp 0x1019f44e
add ecx, 0x1be4
push str.GL_EXT_YUV_target_not_enabled.
jmp 0x1019f478
add ecx, 0x1be4
push str.Invalid_Attachment_Type.
jmp 0x1019f478
cmp byte [edx + 0x60], 2
jmp 0x1019f466