joyce8/EMBER2024-capa huggingface dataset:
Function at 0x101b7c30
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x10
mov ebx, dword [ebp + 0x10]
test ebx, ebx
je 0x101b7d60
mov esi, dword [ebp + 8]
mov ecx, dword [esi + 0x1368]
push ebx
call fcn.10076790
mov ecx, eax
mov al, 1
test ecx, ecx
jne 0x101b7d62
mov edx, dword [esi + 0x1368]
cmp dword [edx + 0x54], ebx
jbe 0x101b7c7e
mov eax, dword [edx + 0x58]
mov ecx, dword [eax + ebx*4]
cmp ecx, 0xffffffff
jne 0x101b7d1f
jmp 0x101b7d46
mov edi, ebx
shr edi, 0x10
mov eax, ebx
shr eax, 8
mov ecx, 0xff
mov esi, ebx
and esi, ecx
and eax, ecx
and edi, ecx
mov ecx, ebx
shr ecx, 0x18
mov dword [ebp - 0x1c], esi
xor esi, 0x811c9dc5
imul esi, esi, 0x1000193
xor esi, eax
imul esi, esi, 0x1000193
xor esi, edi
imul esi, esi, 0x1000193
xor esi, ecx
imul ecx, esi, 0x1000193
mov esi, dword [ebp + 8]
and ecx, dword [edx + 0x74]
mov dword [ebp - 0x10], edx
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x60]
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x10]
mov edx, dword [edx + 0x68]
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x18], edx
mov ecx, dword [edx + ecx*8 + 4]
cmp ecx, dword [ebp - 0x14]
je 0x101b7d46
and ebx, 0xff000000
shl edi, 0x10
or edi, ebx
shl eax, 8
or eax, edi
add eax, dword [ebp - 0x1c]
cmp eax, dword [ecx + 8]
je 0x101b7d17
mov edx, dword [ebp - 0x10]
add edx, edx
mov edi, dword [ebp - 0x18]
mov edx, dword [edi + edx*4]
cmp ecx, edx
je 0x101b7d46
mov ecx, dword [ecx + 4]
cmp eax, dword [ecx + 8]
jne 0x101b7d0b
cmp ecx, dword [ebp - 0x14]
je 0x101b7d46
mov ecx, dword [ecx + 0xc]
test ecx, ecx
je 0x101b7d46
cmp dword [ecx + 0x158], 0
je 0x101b7d32
push esi
call fcn.100599c0
add esi, 0x1d04
mov ecx, esi
push str.Shader_object_expected.
push 0x502
jmp 0x101b7d58
add esi, 0x1d04
mov ecx, esi
push str.Expected_a_shader_name__but_found_a_program_name.
push 0x501
push dword [ebp + 0xc]
call fcn.1001a2a0
xor eax, eax
add esp, 0x10
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x101b9320
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x18
mov edi, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
cmp byte [esi + 0x12ed], 0
je 0x101b93a7
mov eax, dword [ebp + 0x20]
cmp dword [esi + 0x1c], 2
jg 0x101b9362
test eax, eax
je 0x101b9362
cmp byte [esi + 0x12ac], 0
jne 0x101b9362
add esi, 0x1d04
mov ecx, esi
push str.Mipmap_level_must_be_0_when_attaching_a_texture.
push 0x501
jmp 0x101b93b9
mov ebx, dword [ebp + 0x1c]
push eax
push ebx
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push edi
push esi
call fcn.101a7490
add esp, 0x18
test al, al
je 0x101b93bf
mov al, 1
test ebx, ebx
je 0x101b93c1
mov dl, byte [ebp + 0x18]
mov ecx, dword [esi + 0x136c]
cmp dword [ecx + 0x2c], ebx
jbe 0x101b93c9
mov ecx, dword [ecx + 0x30]
mov ecx, dword [ecx + ebx*4]
xor ebx, ebx
cmp ecx, 0xffffffff
cmovne ebx, ecx
mov dword [ebp - 0x10], ebx
mov ecx, edx
jmp 0x101b948e
add esi, 0x1d04
mov ecx, esi
push str.Extension_is_not_enabled.
push 0x502
push edi
call fcn.1001a2a0
xor eax, eax
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret
mov edi, ebx
shr edi, 0x10
mov dword [ebp - 0x10], ecx
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x18], ebx
mov edx, 0xff
and dword [ebp - 0x18], edx
and ecx, edx
and edi, edx
mov edx, ebx
shr edx, 0x18
mov dword [ebp - 0x14], edx
mov edx, dword [ebp - 0x18]
xor edx, 0x811c9dc5
imul edx, edx, 0x1000193
xor edx, ecx
imul edx, edx, 0x1000193
mov dword [ebp - 0x24], edi
xor edx, edi
imul edx, edx, 0x1000193
xor edx, dword [ebp - 0x14]
imul edx, edx, 0x1000193
mov edi, dword [ebp - 0x10]
and edx, dword [edi + 0x4c]
mov edi, dword [ebp - 0x10]
mov edi, dword [edi + 0x38]
mov dword [ebp - 0x14], edi
mov edi, dword [ebp - 0x10]
mov edi, dword [edi + 0x40]
mov dword [ebp - 0x20], edx
mov dword [ebp - 0x1c], edi
mov edx, dword [edi + edx*8 + 4]
mov dword [ebp - 0x10], 0
cmp edx, dword [ebp - 0x14]
je 0x101b9488
and ebx, 0xff000000
mov edi, dword [ebp - 0x24]
shl edi, 0x10
or edi, ebx
shl ecx, 8
or ecx, edi
add ecx, dword [ebp - 0x18]
cmp ecx, dword [edx + 8]
je 0x101b9475
mov edi, dword [ebp - 0x20]
add edi, edi
mov ebx, dword [ebp - 0x1c]
mov edi, dword [ebx + edi*4]
cmp edx, edi
je 0x101b9488
mov edx, dword [edx + 4]
cmp ecx, dword [edx + 8]
jne 0x101b9469
cmp edx, dword [ebp - 0x14]
mov edi, dword [ebp + 0xc]
mov cl, byte [ebp + 0x18]
je 0x101b948e
mov edx, dword [edx + 0xc]
mov dword [ebp - 0x10], edx
jmp 0x101b948e
mov edi, dword [ebp + 0xc]
mov cl, byte [ebp + 0x18]
cmp cl, 4
jne 0x101b94b9
mov edx, edi
mov edi, dword [esi + 0x40]
xor ecx, ecx
dec ecx
inc ecx
mov ebx, edi
sar ebx, cl
cmp ebx, 1
jg 0x101b949b
cmp ecx, dword [ebp + 0x20]
jge 0x101b94cb
add esi, 0x1d04
mov ecx, esi
push str.Level_of_detail_outside_of_range.
jmp 0x101b94fe
add esi, 0x1d04
mov ecx, esi
push str.Invalid_or_unsupported_texture_target.
jmp 0x101b93b4
cmp edi, dword [ebp + 0x24]
jle 0x101b94f1
mov ecx, dword [ebp - 0x10]
cmp byte [ecx + 0x6c], 4
je 0x101b93c1
add esi, 0x1d04
mov ecx, esi
push str.Texture_has_incompatible_target.
push 0x502
jmp 0x101b9503
add esi, 0x1d04
mov ecx, esi
push str.zoffset_is_larger_than_MAX_3D_TEXTURE_SIZE_1
push 0x501
push edx
jmp 0x101b93ba
Function at 0x101b9510
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xc
mov ebx, dword [ebp + 0x10]
mov esi, dword [ebp + 8]
test ebx, ebx
je 0x101b9601
mov ecx, dword [esi + 0x1368]
cmp dword [ecx + 0x54], ebx
jbe 0x101b9546
mov eax, dword [ecx + 0x58]
mov edi, dword [eax + ebx*4]
cmp edi, 0xffffffff
jne 0x101b95e0
jmp 0x101b9628
mov esi, ebx
shr esi, 0x18
mov eax, ebx
shr eax, 0x10
mov edx, ebx
shr edx, 8
mov edi, 0xff
and ebx, edi
and edx, edi
and eax, edi
mov dword [ebp - 0x18], ebx
xor ebx, 0x811c9dc5
imul edi, ebx, 0x1000193
xor edi, edx
imul edi, edi, 0x1000193
xor edi, eax
imul edi, edi, 0x1000193
xor edi, esi
imul esi, edi, 0x1000193
and esi, dword [ecx + 0x74]
mov ebx, dword [ecx + 0x60]
mov edi, dword [ecx + 0x68]
mov dword [ebp - 0x14], edi
mov edi, dword [edi + esi*8 + 4]
cmp edi, ebx
je 0x101b9628
mov dword [ebp - 0x10], ebx
mov ebx, dword [ebp + 0x10]
and ebx, 0xff000000
shl eax, 0x10
or eax, ebx
shl edx, 8
or edx, eax
add edx, dword [ebp - 0x18]
cmp edx, dword [edi + 8]
jne 0x101b95c2
mov esi, dword [ebp - 0x10]
jmp 0x101b95d9
add esi, esi
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + esi*4]
mov esi, dword [ebp - 0x10]
cmp edi, eax
je 0x101b9628
mov edi, dword [edi + 4]
cmp edx, dword [edi + 8]
jne 0x101b95cd
cmp edi, esi
je 0x101b9628
mov edi, dword [edi + 0xc]
test edi, edi
je 0x101b9628
cmp dword [edi + 0x158], 0
mov esi, dword [ebp + 8]
je 0x101b95f8
mov ecx, edi
push esi
call fcn.100599c0
cmp byte [edi + 0x154], 0
je 0x101b9650
mov ecx, dword [esi + 0x1834]
mov al, 1
test ecx, ecx
je 0x101b966c
cmp byte [ecx + 0x34], 0
je 0x101b966c
cmp byte [ecx + 0x36], 0
jne 0x101b966c
add esi, 0x1d04
mov ecx, esi
push str.Cannot_change_active_program_while_transform_feedback_is_unpaused.
jmp 0x101b965d
push dword [ebp + 0x10]
call fcn.10076790
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
test eax, eax
je 0x101b9644
push str.Expected_a_program_name__but_found_a_shader_name.
jmp 0x101b965d
push str.Program_object_expected.
push 0x501
jmp 0x101b9662
add esi, 0x1d04
mov ecx, esi
push str.Program_not_linked.
push 0x502
push dword [ebp + 0xc]
call fcn.1001a2a0
xor eax, eax
add esp, 0xc
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x101c0da0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x1c], 3
jae 0x101c0dc7
add ecx, 0x1d04
push str.OpenGL_ES_3.1_Required
push 0x502
jmp 0x101c0f0d
jne 0x101c0dcf
cmp dword [ecx + 0x20], 0
je 0x101c0db2
mov esi, dword [ebp + 0x14]
test esi, esi
je 0x101c0e95
mov eax, dword [ecx + 0x1364]
cmp dword [eax + 0x2c], esi
jbe 0x101c0df7
mov eax, dword [eax + 0x30]
cmp dword [eax + esi*4], 0xffffffff
jne 0x101c0e95
jmp 0x101c0ed3
mov ebx, esi
shr ebx, 0x10
mov dword [ebp - 0x10], eax
mov eax, esi
shr eax, 8
mov edx, esi
mov edi, 0xff
and edx, edi
and eax, edi
and ebx, edi
mov edi, esi
shr edi, 0x18
mov dword [ebp - 0x20], edx
xor edx, 0x811c9dc5
imul edx, edx, 0x1000193
xor edx, eax
imul edx, edx, 0x1000193
mov dword [ebp - 0x1c], ebx
xor edx, ebx
imul edx, edx, 0x1000193
xor edx, edi
imul edx, edx, 0x1000193
mov edi, dword [ebp - 0x10]
and edx, dword [edi + 0x4c]
mov ebx, dword [edi + 0x38]
mov dword [ebp - 0x14], ebx
mov edi, dword [edi + 0x40]
mov dword [ebp - 0x10], edx
mov dword [ebp - 0x18], edi
mov edi, dword [edi + edx*8 + 4]
cmp edi, dword [ebp - 0x14]
je 0x101c0ed3
and esi, 0xff000000
mov edx, dword [ebp - 0x1c]
shl edx, 0x10
or edx, esi
shl eax, 8
or eax, edx
add eax, dword [ebp - 0x20]
cmp eax, dword [edi + 8]
je 0x101c0e90
mov edx, dword [ebp - 0x10]
add edx, edx
mov esi, dword [ebp - 0x18]
mov edx, dword [esi + edx*4]
cmp edi, edx
je 0x101c0ed3
mov edi, dword [edi + 4]
cmp eax, dword [edi + 8]
jne 0x101c0e84
cmp edi, dword [ebp - 0x14]
je 0x101c0ed3
mov eax, dword [ebp + 0x10]
cmp dword [ecx + 0xa4], eax
jbe 0x101c0ee3
cmp dword [ebp + 0x18], 0
js 0x101c0ef0
mov eax, dword [ebp + 0x1c]
test eax, eax
js 0x101c0efd
cmp dword [ecx + 0xa8], eax
jl 0x101c0efd
mov edx, dword [ecx + 0x1514]
mov al, 1
cmp dword [edx + 0x38], 0
jne 0x101c0f17
add ecx, 0x1d04
push str.Default_vertex_array_object_is_bound.
jmp 0x101c0dbd
add ecx, 0x1d04
push str.Object_cannot_be_used_because_it_has_not_been_generated.
jmp 0x101c0dbd
add ecx, 0x1d04
push str.Index_must_be_within__0__MAX_VERTEX_ATTRIB_BINDINGS_.
jmp 0x101c0f08
add ecx, 0x1d04
push str.Negative_offset.
jmp 0x101c0f08
add ecx, 0x1d04
push str.Stride_must_be_within__0__MAX_VERTEX_ATTRIB_STRIDE_.
push 0x501
push dword [ebp + 0xc]
call fcn.1001a2a0
xor eax, eax
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
Function at 0x101c39e0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x101c3b1c
mov esi, dword [ebp + 0x1c]
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x136c]
cmp dword [edx + 0x2c], ecx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x20], esi
jbe 0x101c3a25
mov eax, dword [edx + 0x30]
mov esi, dword [eax + ecx*4]
cmp esi, 0xffffffff
jne 0x101c3aaf
jmp 0x101c3af7
mov edi, ecx
shr edi, 0x10
mov eax, ecx
shr eax, 8
mov esi, 0xff
mov ebx, ecx
and ebx, esi
and eax, esi
and edi, esi
mov esi, ecx
shr esi, 0x18
mov dword [ebp - 0x1c], ebx
xor ebx, 0x811c9dc5
imul ebx, ebx, 0x1000193
xor ebx, eax
imul ebx, ebx, 0x1000193
xor ebx, edi
imul ebx, ebx, 0x1000193
xor ebx, esi
imul esi, ebx, 0x1000193
and esi, dword [edx + 0x4c]
mov ebx, dword [edx + 0x38]
mov edx, dword [edx + 0x40]
mov dword [ebp - 0x18], edx
mov edx, dword [edx + esi*8 + 4]
cmp edx, ebx
je 0x101c3af7
and ecx, 0xff000000
shl edi, 0x10
or edi, ecx
shl eax, 8
or eax, edi
add eax, dword [ebp - 0x1c]
cmp eax, dword [edx + 8]
je 0x101c3aa8
add esi, esi
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ecx + esi*4]
cmp edx, ecx
je 0x101c3af7
mov edx, dword [edx + 4]
cmp eax, dword [edx + 8]
jne 0x101c3a9c
cmp edx, ebx
je 0x101c3af7
mov esi, dword [edx + 0xc]
test esi, esi
je 0x101c3af7
movzx eax, byte [esi + 0x6c]
mov ebx, dword [ebp - 0x20]
push ebx
push eax
mov edi, dword [ebp - 0x14]
push edi
call fcn.101a6140
add esp, 0xc
test al, al
je 0x101c3b28
mov al, byte [esi + 0x6c]
test ebx, ebx
je 0x101c3ad7
cmp al, 2
je 0x101c3ae8
cmp byte [edi + 0x130e], 0
je 0x101c3b1c
test ebx, ebx
je 0x101c3b1c
cmp al, 3
jne 0x101c3b1c
add edi, 0x1d04
mov ecx, edi
push str.Texture_level_must_be_zero.
jmp 0x101c3b05
mov ecx, dword [ebp - 0x14]
add ecx, 0x1d04
push str.Not_a_valid_texture_object_name.
push 0x501
push dword [ebp - 0x10]
call fcn.1001a2a0
xor eax, eax
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
jmp fcn.101a7490
add edi, 0x1d04
mov ecx, edi
push str.Level_of_detail_outside_of_range.
jmp 0x101c3b05
Function at 0x101c3c80
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov edi, dword [ebp + 0xc]
cmp byte [ebp + 0x10], 0xa
jne 0x101c3cbd
mov eax, dword [ebp + 0x14]
cmp eax, 0x8813
jg 0x101c3cd6
lea edx, [eax - 0x8229]
cmp edx, 0x13
ja 0x101c3cb1
mov esi, 0xffff5
bt esi, edx
jb 0x101c3d07
cmp eax, 0x8058
je 0x101c3d07
jmp 0x101c3df8
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Target_must_be_TEXTURE_BUFFER.
push 0x500
push edi
jmp 0x101c3de9
lea edx, [eax - 0x8d70]
cmp edx, 0x1e
ja 0x101c3ceb
mov esi, 0x410c1043
bt esi, edx
jb 0x101c3d07
add eax, 0xffff77ec
cmp eax, 6
ja 0x101c3df8
mov edx, 0x43
bt edx, eax
jae 0x101c3df8
mov edi, dword [ebp + 0x18]
mov al, 1
test edi, edi
je 0x101c3df0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x1364]
cmp dword [edx + 0x2c], edi
jbe 0x101c3d34
mov edx, dword [edx + 0x30]
cmp dword [edx + edi*4], 0xffffffff
jne 0x101c3df0
jmp 0x101c3dd3
mov dword [ebp - 0x10], edx
mov edx, edi
shr edx, 0x10
mov esi, edi
shr esi, 8
mov ecx, 0xff
mov eax, edi
and eax, ecx
and esi, ecx
and edx, ecx
mov ecx, edi
shr ecx, 0x18
mov dword [ebp - 0x20], eax
xor eax, 0x811c9dc5
imul eax, eax, 0x1000193
xor eax, esi
imul eax, eax, 0x1000193
mov dword [ebp - 0x1c], edx
xor eax, edx
imul eax, eax, 0x1000193
xor eax, ecx
imul ebx, eax, 0x1000193
mov al, 1
mov ecx, dword [ebp - 0x10]
and ebx, dword [ecx + 0x4c]
mov edx, dword [ecx + 0x38]
mov dword [ebp - 0x14], edx
mov edx, dword [ecx + 0x40]
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x18], edx
mov ebx, dword [edx + ebx*8 + 4]
cmp ebx, dword [ebp - 0x14]
je 0x101c3dd3
and edi, 0xff000000
mov edx, dword [ebp - 0x1c]
shl edx, 0x10
or edx, edi
shl esi, 8
or esi, edx
add esi, dword [ebp - 0x20]
cmp esi, dword [ebx + 8]
je 0x101c3dce
mov edx, dword [ebp - 0x10]
add edx, edx
mov edi, dword [ebp - 0x18]
mov edx, dword [edi + edx*4]
cmp ebx, edx
je 0x101c3dd3
mov ebx, dword [ebx + 4]
cmp esi, dword [ebx + 8]
jne 0x101c3dc2
cmp ebx, dword [ebp - 0x14]
jne 0x101c3df0
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.If_buffer_is_nonzero__it_must_match_the_name_of_an_existing_buffer_object.
push 0x502
push dword [ebp + 0xc]
call fcn.1001a2a0
xor eax, eax
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Internal_format_is_not_an_accepted_sized_internal_format.
jmp 0x101c3ccb
Function at 0x101c3e10
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
push eax
mov edi, dword [ebp + 0x1c]
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
test edi, edi
js 0x101c3e31
mov eax, edi
cdq
idiv dword [esi + 0x390]
test edx, edx
je 0x101c3e53
add esi, 0x1d04
mov ecx, esi
push str.Offset_must_be_multiple_of_value_of_TEXTURE_BUFFER_OFFSET_ALIGNMENT.
push 0x501
push ebx
call fcn.1001a2a0
xor eax, eax
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [ebp + 0x20]
test eax, eax
jle 0x101c3e8e
mov dword [ebp - 0x10], eax
mov ecx, dword [esi + 0x1364]
push dword [ebp + 0x18]
call fcn.10076790
test eax, eax
je 0x101c3e9d
mov edx, dword [ebp - 0x10]
add edx, edi
mov ecx, dword [eax + 0x74]
cmp dword [eax + 0x70], edx
sbb ecx, 0
jge 0x101c3eb1
add esi, 0x1d04
mov ecx, esi
push str.Texture_buffer_offset__size_must_be_less_than_or_equal_to_BUFFER_SIZE.
jmp 0x101c3e3e
add esi, 0x1d04
mov ecx, esi
push str.Texture_buffer_size_must_be_a_positive_integer.
jmp 0x101c3e3e
add esi, 0x1d04
mov ecx, esi
push str.A_buffer_must_be_bound.
push 0x502
jmp 0x101c3e43
add esp, 4
pop esi
pop edi
pop ebx
pop ebp
jmp fcn.101c3c80

Function at 0x101c3fe0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x1c], 3
jb 0x101c3ff7
jne 0x101c4011
cmp dword [ecx + 0x20], 1
ja 0x101c4011
add ecx, 0x1d04
push str.OpenGL_ES_3.2_Required
push 0x502
push eax
call fcn.1001a2a0
xor eax, eax
pop ebp
ret
pop ebp
jmp fcn.101a9980

Function at 0x101c4610
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x1c], 3
jb 0x101c4627
jne 0x101c4641
cmp dword [ecx + 0x20], 1
ja 0x101c4641
add ecx, 0x1d04
push str.OpenGL_ES_3.2_Required
push 0x502
push eax
call fcn.1001a2a0
xor eax, eax
pop ebp
ret
pop ebp
jmp fcn.101c3c80

Function at 0x101c4650
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x1c], 3
jb 0x101c4667
jne 0x101c4681
cmp dword [ecx + 0x20], 1
ja 0x101c4681
add ecx, 0x1d04
push str.OpenGL_ES_3.2_Required
push 0x502
push eax
call fcn.1001a2a0
xor eax, eax
pop ebp
ret
pop ebp
jmp fcn.101c3e10
Function at 0x101c55c0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x12d9], 0
je 0x101c5702
mov edi, dword [ebp + 0x14]
test edi, edi
je 0x101c5603
mov esi, dword [ebp + 0x18]
xor ebx, ebx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x1364]
push dword [esi + ebx*4]
call fcn.10076790
test eax, eax
je 0x101c572f
inc ebx
cmp edi, ebx
jne 0x101c55e5
cmp dword [ebp + 0x1c], 0
je 0x101c56fe
xor eax, eax
xor esi, esi
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x20], esi
mov ebx, dword [eax + esi*4]
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x136c]
cmp dword [edx + 0x2c], ebx
jbe 0x101c563f
mov eax, dword [edx + 0x30]
mov eax, dword [eax + ebx*4]
cmp eax, 0xffffffff
jne 0x101c56d8
jmp 0x101c570f
mov eax, ebx
shr eax, 0x18
mov dword [ebp - 0x10], eax
mov ecx, ebx
shr ecx, 0x10
mov eax, ebx
shr eax, 8
mov dword [ebp - 0x1c], ebx
mov edi, 0xff
and ebx, edi
mov edi, ebx
xor edi, 0x811c9dc5
imul edi, edi, 0x1000193
mov esi, 0xff
and eax, esi
xor edi, eax
imul edi, edi, 0x1000193
and ecx, esi
xor edi, ecx
imul edi, edi, 0x1000193
xor edi, dword [ebp - 0x10]
imul esi, edi, 0x1000193
and esi, dword [edx + 0x4c]
mov edi, dword [edx + 0x38]
mov edx, dword [edx + 0x40]
mov dword [ebp - 0x18], edx
mov edx, dword [edx + esi*8 + 4]
mov dword [ebp - 0x10], edi
cmp edx, edi
je 0x101c570f
mov edi, dword [ebp - 0x1c]
and edi, 0xff000000
shl ecx, 0x10
or ecx, edi
shl eax, 8
or eax, ecx
or eax, ebx
cmp eax, dword [edx + 8]
je 0x101c56d0
add esi, esi
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ecx + esi*4]
cmp edx, ecx
je 0x101c570f
mov edx, dword [edx + 4]
cmp eax, dword [edx + 8]
jne 0x101c56c4
cmp edx, dword [ebp - 0x10]
je 0x101c570f
mov eax, dword [edx + 0xc]
test eax, eax
je 0x101c570f
mov eax, dword [ebp + 0x24]
mov esi, dword [ebp - 0x20]
push dword [eax + esi*4]
call fcn.1021a1d0
add esp, 4
cmp al, 0xa
jae 0x101c5756
inc esi
cmp esi, dword [ebp + 0x1c]
setae al
jne 0x101c5611
mov al, 1
jmp 0x101c574c
add ecx, 0x1d04
push str.Extension_is_not_enabled.
jmp 0x101c573d
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Not_a_valid_texture_object_name.
push 0x502
push dword [ebp + 0xc]
call fcn.1001a2a0
mov eax, dword [ebp - 0x14]
jmp 0x101c574c
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.name_is_not_a_valid_buffer.
push 0x502
push dword [ebp + 0xc]
call fcn.1001a2a0
xor eax, eax
and al, 1
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Invalid_image_layout.
push 0x500
jmp 0x101c5722
Function at 0x101c6950
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x14
mov eax, dword [ebp + 8]
cmp byte [eax + 0x1344], 0
je 0x101c6a68
cmp dword [ebp + 0x10], 0
je 0x101c6a64
xor eax, eax
xor edi, edi
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x20], edi
mov edi, dword [eax + edi*4]
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x136c]
cmp dword [edx + 0x2c], edi
jbe 0x101c69a5
mov eax, dword [edx + 0x30]
mov eax, dword [eax + edi*4]
cmp eax, 0xffffffff
jne 0x101c6a3e
jmp 0x101c6a87
mov eax, edi
shr eax, 0x18
mov dword [ebp - 0x10], eax
mov ecx, edi
shr ecx, 0x10
mov eax, edi
shr eax, 8
mov dword [ebp - 0x1c], edi
mov esi, 0xff
and edi, esi
mov esi, edi
xor esi, 0x811c9dc5
imul esi, esi, 0x1000193
mov ebx, 0xff
and eax, ebx
xor esi, eax
imul esi, esi, 0x1000193
and ecx, ebx
xor esi, ecx
imul esi, esi, 0x1000193
xor esi, dword [ebp - 0x10]
imul ebx, esi, 0x1000193
and ebx, dword [edx + 0x4c]
mov esi, dword [edx + 0x38]
mov edx, dword [edx + 0x40]
mov dword [ebp - 0x18], edx
mov edx, dword [edx + ebx*8 + 4]
mov dword [ebp - 0x10], esi
cmp edx, esi
je 0x101c6a87
mov esi, dword [ebp - 0x1c]
and esi, 0xff000000
shl ecx, 0x10
or ecx, esi
shl eax, 8
or eax, ecx
or eax, edi
cmp eax, dword [edx + 8]
je 0x101c6a36
add ebx, ebx
mov ecx, dword [ebp - 0x18]
mov ecx, dword [ecx + ebx*4]
cmp edx, ecx
je 0x101c6a87
mov edx, dword [edx + 4]
cmp eax, dword [edx + 8]
jne 0x101c6a2a
cmp edx, dword [ebp - 0x10]
je 0x101c6a87
mov eax, dword [edx + 0xc]
test eax, eax
je 0x101c6a87
mov eax, dword [ebp + 0x18]
mov edi, dword [ebp - 0x20]
push dword [eax + edi*4]
call fcn.1021a1d0
add esp, 4
cmp al, 0xa
jae 0x101c6aaf
inc edi
cmp edi, dword [ebp + 0x10]
setae al
jne 0x101c6977
mov al, 1
jmp 0x101c6aa5
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Extension_is_not_enabled.
push 0x502
push dword [ebp + 0xc]
call fcn.1001a2a0
xor eax, eax
jmp 0x101c6aa5
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Not_a_valid_texture_object_name.
push 0x502
push dword [ebp + 0xc]
call fcn.1001a2a0
mov eax, dword [ebp - 0x14]
and al, 1
add esp, 0x14
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push str.Invalid_image_layout.
push 0x500
jmp 0x101c6a9a
Function at 0x101c6ad0
Capabilities:
Hash data using fnv

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x18
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x1344], 0
je 0x101c6bf2
mov edx, dword [ebp + 0x10]
mov al, 1
test edx, edx
je 0x101c6c28
mov esi, dword [ebp + 0x14]
mov eax, dword [ecx + 0x136c]
mov dword [ebp - 0x18], eax
mov edi, dword [eax + 0x2c]
xor ecx, ecx
xor eax, eax
mov dword [ebp - 0x1c], edi
mov dword [ebp - 0x24], eax
mov ebx, dword [esi + eax*4]
cmp edi, ebx
jbe 0x101c6b2d
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x30]
mov eax, dword [eax + ebx*4]
cmp eax, 0xffffffff
jne 0x101c6bdb
jmp 0x101c6c08
mov dword [ebp - 0x10], ecx
mov eax, ebx
shr eax, 0x18
mov dword [ebp - 0x14], eax
mov ecx, ebx
shr ecx, 0x10
mov edi, ebx
shr edi, 8
mov esi, ebx
mov edx, 0xff
and esi, edx
mov edx, esi
xor edx, 0x811c9dc5
imul edx, edx, 0x1000193
mov eax, 0xff
and edi, eax
xor edx, edi
imul edx, edx, 0x1000193
and ecx, eax
xor edx, ecx
imul edx, edx, 0x1000193
xor edx, dword [ebp - 0x14]
imul edx, edx, 0x1000193
mov eax, dword [ebp - 0x18]
and edx, dword [eax + 0x4c]
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x18]
mov eax, dword [eax + 0x40]
mov dword [ebp - 0x20], eax
mov eax, dword [eax + edx*8 + 4]
cmp eax, dword [ebp - 0x14]
je 0x101c6bfb
and ebx, 0xff000000
shl ecx, 0x10
or ecx, ebx
shl edi, 8
or edi, ecx
or edi, esi
cmp edi, dword [eax + 8]
je 0x101c6bc7
add edx, edx
mov ecx, dword [ebp - 0x20]
mov ecx, dword [ecx + edx*4]
cmp eax, ecx
je 0x101c6bfb
mov eax, dword [eax + 4]
cmp edi, dword [eax + 8]
jne 0x101c6bbb
cmp eax, dword [ebp - 0x14]
je 0x101c6bfb
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp + 0x10]
mov esi, dword [ebp + 0x14]
mov edi, dword [ebp - 0x1c]
test eax, eax
je 0x101c6c08
mov eax, dword [ebp - 0x24]
inc eax
cmp eax, edx
setae cl
jne 0x101c6b0c
mov al, 1
jmp 0x101c6c28
mov eax, str.Extension_is_not_enabled.
xor ebx, ebx
jmp 0x101c6c12
mov ecx, dword [ebp + 8]
mov ebx, dword [ebp - 0x10]
mov eax, str.Not_a_valid_texture_object_name.
jmp 0x101c6c12
mov eax, str.Not_a_valid_texture_object_name.
mov ebx, ecx
mov ecx, dword [ebp + 8]
add ecx, 0x1d04
push eax
push 0x502
push dword [ebp + 0xc]
call fcn.1001a2a0
mov eax, ebx
and al, 1
add esp, 0x18
pop esi
pop edi
pop ebx
pop ebp
ret