Function at 0x101df190
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x30
mov edi, dword [ebp + 8]
test edi, edi
je 0x101df254
cmp byte [edi + 0x1ed5], 0
je 0x101df1c9
add edi, 0x1be4
mov ecx, edi
push str.Context_has_been_lost.
push 0x507
call fcn.10021560
jmp 0x101df254
push dword [ebp + 0xc]
call fcn.102b07d0
add esp, 4
mov ecx, eax
cmp byte [edi + 0x1be0], 0
je 0x101df20a
mov ebx, ecx
call fcn.102070c0
mov dword [ebp - 0x28], eax
push eax
call sub.MSVCP140.dll__Mtx_lock
add esp, 4
test eax, eax
je 0x101df1ff
push eax
call sub.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_
add esp, 4
mov dword [ebp - 0x14], 0
mov ecx, ebx
jmp 0x101df216
mov dword [ebp - 0x28], 0
mov al, 1
mov dword [ebp - 0x14], eax
mov esi, dword [ebp + 0x10]
cmp byte [edi + 0x1be1], 0
movzx eax, cl
mov dword [ebp - 0x2c], eax
je 0x101df25e
mov ecx, edi
push esi
push dword [ebp - 0x2c]
call fcn.1001c2c0
mov eax, dword [ebp - 0x14]
test al, al
jne 0x101df254
push dword [ebp - 0x28]
call sub.MSVCP140.dll__Mtx_unlock
add esp, 4
test eax, eax
je 0x101df254
push eax
call sub.MSVCP140.dll_void___cdecl_std::_Throw_C_error_int_
add esp, 0x34
jmp 0x101df257
add esp, 0x30
pop esi
pop edi
pop ebx
pop ebp
ret 0xc
mov eax, dword [ebp - 0x2c]
cmp byte [edi + eax + 0x1f48], 0
je 0x101df2be
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x101df228
mov byte [ebp - 0xd], cl
mov eax, dword [edi + 0x127c]
mov ebx, esi
shr ebx, 8
mov edx, esi
shr edx, 0x10
mov ecx, esi
shr ecx, 0x18
mov dword [ebp - 0x20], eax
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x38], eax
cmp eax, esi
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], ecx
jbe 0x101df2cd
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
mov eax, dword [eax + esi*4]
cmp eax, 0xffffffff
jne 0x101df360
cmp byte [edi + 0x13d4], 0
jmp 0x101df435
push eax
push edi
call fcn.101a0590
add esp, 8
jmp 0x101df233
mov esi, edx
mov edx, 0xff
mov eax, dword [ebp + 0x10]
and eax, edx
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
and ebx, edx
xor eax, ebx
imul eax, eax, 0x1000193
and edx, esi
xor eax, edx
imul eax, eax, 0x1000193
xor eax, ecx
imul ecx, eax, 0x1000193
mov eax, dword [ebp - 0x20]
and ecx, dword [eax + 0x58]
mov dword [ebp - 0x18], ecx
mov ecx, dword [eax + 0x44]
mov dword [ebp - 0x1c], ecx
shl edx, 0x10
mov esi, dword [ebp + 0x10]
and esi, 0xff0000ff
or esi, edx
mov eax, dword [eax + 0x4c]
shl ebx, 8
or esi, ebx
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 0x18]
mov eax, dword [eax + ecx*8]
lea edx, [ecx + ecx]
inc edx
mov dword [ebp - 0x18], edx
mov edx, eax
mov ecx, dword [ebp - 0x18]
cmp dword [ebp - 0x1c], eax
je 0x101df349
mov ebx, dword [ebp - 0x24]
mov ebx, dword [ebx + ecx*4]
mov ebx, dword [ebx]
jmp 0x101df34b
mov ebx, eax
cmp edx, ebx
je 0x101df36c
cmp dword [edx + 8], esi
je 0x101df358
mov edx, dword [edx]
jmp 0x101df33a
cmp edx, dword [ebp - 0x1c]
je 0x101df36c
mov eax, dword [edx + 0xc]
test eax, eax
je 0x101df36c
mov cl, byte [ebp - 0xd]
cmp byte [eax + 0x60], cl
jne 0x101df399
cmp byte [edi + 0x13d4], 0
mov esi, dword [ebp + 0x10]
mov edx, dword [ebp - 0x3c]
jne 0x101df228
cmp dword [ebp - 0x38], esi
jbe 0x101df3ab
mov eax, dword [ebp - 0x20]
mov eax, dword [eax + 0x3c]
cmp dword [eax + esi*4], 0xffffffff
jne 0x101df228
jmp 0x101df43e
add edi, 0x1be4
mov ecx, edi
push str.Textarget_must_match_the_texture_target_type.
jmp 0x101df44b
mov eax, 0xff
mov ecx, esi
and ecx, eax
and edx, eax
mov ebx, dword [ebp - 0x34]
and ebx, eax
xor ecx, 0x811c9dc5
imul eax, ecx, 0x1000193
xor eax, edx
imul eax, eax, 0x1000193
xor eax, ebx
imul eax, eax, 0x1000193
xor eax, dword [ebp - 0x30]
mov ecx, esi
imul esi, eax, 0x1000193
mov eax, dword [ebp - 0x20]
and esi, dword [eax + 0x58]
shl ebx, 0x10
and ecx, 0xff0000ff
or ecx, ebx
mov ebx, edx
mov edx, dword [eax + 0x44]
mov dword [ebp - 0x1c], edx
mov eax, dword [eax + 0x4c]
shl ebx, 8
or ecx, ebx
mov dword [ebp - 0x24], eax
mov eax, dword [eax + esi*8]
add esi, esi
inc esi
mov dword [ebp - 0x18], esi
mov esi, eax
mov edx, dword [ebp - 0x18]
cmp dword [ebp - 0x1c], eax
je 0x101df423
mov ebx, dword [ebp - 0x24]
mov ebx, dword [ebx + edx*4]
mov ebx, dword [ebx]
jmp 0x101df425
mov ebx, eax
cmp esi, ebx
je 0x101df43e
cmp dword [esi + 8], ecx
je 0x101df432
mov esi, dword [esi]
jmp 0x101df414
cmp esi, dword [ebp - 0x1c]
mov esi, dword [ebp + 0x10]
jne 0x101df228
add edi, 0x1be4
mov ecx, edi
push str.Object_cannot_be_used_because_it_has_not_been_generated.
push 0x502
call fcn.10021560
jmp 0x101df233