Function at 0x4c99b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x44
push ebx
mov ebx, dword [esp + 0x50]
push ebp
push esi
push edi
cmp ebx, 0x115f
jg 0x4ca78a
je 0x4ca6fc
lea eax, [ebx - 1]
cmp eax, 0x7a
ja case.0x4c99e0.2
movzx eax, byte [eax + 0x4caa64]
jmp dword [eax*4 + 0x4caa2c]
mov edi, dword [esp + 0x60]
mov esi, dword [esp + 0x58]
push 1
push dword [edi + 8]
push esi
call fcn.00498cd0
push dword [edi + 4]
mov ebx, eax
push esi
call fcn.004c5a20
add esp, 0x14
mov dword [ebx + 0x14], eax
or byte [ebx + 8], 2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov edi, dword [esp + 0x60]
mov esi, dword [esp + 0x58]
push dword [edi + 4]
push esi
call fcn.004c5a20
mov ebx, dword [edi + 0xc]
add esp, 8
mov dword [esp + 0x5c], eax
cmp ebx, 1
je 0x4c9a40
cmp ebx, 3
je 0x4c9a40
xor ecx, ecx
jmp 0x4c9a45
mov ecx, 1
mov eax, dword [esi + 0x6c]
cmp byte [eax + 5], 0
jne 0x4c9a87
test ecx, ecx
jne 0x4c9a60
cmp dword [esi + 0x64], 0x10400
jb 0x4c9a87
cmp ebx, 7
je 0x4c9a87
push 0x48c2e0
push 4
push dword [esi + 0x294]
lea eax, [edi + 8]
push dword [esi + 0x290]
push eax
call fcn.004ffe6e
add esp, 0x14
test eax, eax
je 0x4ca895
push 6
push dword [edi + 8]
push esi
call fcn.00498cd0
add esp, 0xc
mov ebp, eax
cmp dword [esp + 0x64], 4
jbe 0x4c9ac2
push dword [edi + 0x10]
push esi
call fcn.00499950
add esp, 8
push eax
push ebx
push dword [esp + 0x64]
push ebp
push esi
call fcn.004c7d10
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
xor eax, eax
push eax
push ebx
push dword [esp + 0x64]
push ebp
push esi
call fcn.004c7d10
add esp, 0x14
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebp, dword [esp + 0x60]
mov edi, dword [esp + 0x58]
push 4
push dword [ebp + 4]
push edi
call fcn.004cc130
push 6
push dword [ebp + 8]
mov esi, dword [eax + 0x14]
push edi
call fcn.00498cd0
push 0x24
push dword [edi + 0x18]
mov dword [esp + 0x38], eax
call fcn.00460410
mov ebx, eax
add esp, 0x20
mov dword [ebx], 6
mov dword [ebx + 0x18], esi
mov dword [ebx + 0x1c], 2
cmp byte [edi + 0x2a9], 0
je 0x4c9b31
mov ecx, dword [edi + 0x6c]
mov eax, dword [ecx + 0x38]
jmp 0x4c9b36
mov eax, 0xb
push eax
mov dword [esp + 0x60], eax
call fcn.0040f3d0
push dword [esp + 0x60]
mov esi, eax
call fcn.0040f420
push 0
push 0
push 0
push 1
push eax
xor ecx, ecx
mov eax, 9
cmp esi, 0x20
cmove eax, ecx
push eax
call fcn.0045e8d0
mov esi, dword [esp + 0x38]
push 0
push dword [ebx + 0x1c]
mov dword [ebx + 4], eax
push ebx
push esi
push edi
call fcn.004c7d10
mov eax, dword [esi + 0x18]
add esp, 0x34
mov eax, dword [eax + 0xc]
pop edi
mov esi, dword [eax + 0x1c]
mov eax, dword [esi + 0x3c]
or eax, 1
mov dword [esi + 0x3c], eax
mov ecx, dword [ebp + 0xc]
add ecx, ecx
xor ecx, eax
and ecx, 0xe
xor ecx, eax
mov dword [esi + 0x3c], ecx
mov edx, dword [ebp + 0x10]
shl edx, 4
xor edx, ecx
and edx, 0x10
xor edx, ecx
mov dword [esi + 0x3c], edx
mov eax, dword [ebp + 0x14]
shl eax, 5
xor eax, edx
and eax, 0x20
xor eax, edx
mov dword [esi + 0x3c], eax
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebp, dword [esp + 0x64]
mov eax, 1
mov edi, dword [esp + 0x58]
lea esi, [ebp - 4]
cmp esi, eax
cmova eax, esi
inc eax
shl eax, 4
push eax
push dword [edi + 0x18]
call fcn.00460410
add esp, 8
mov dword [esp + 0x20], eax
mov dword [eax], esi
mov dword [esp + 0x10], 0
cmp ebx, 0x43
je 0x4c9c08
cmp ebx, 0x46
je 0x4c9c08
xor cl, cl
jmp 0x4c9c0a
mov cl, 1
mov byte [eax + 4], cl
cmp ebp, 4
jbe 0x4c9d85
mov edx, dword [esp + 0x60]
lea ebx, [eax + 0x18]
add edx, 0x10
mov dword [esp + 0x18], 4
mov dword [esp + 0x14], edx
nop dword [eax]
mov eax, dword [edx]
cmp eax, dword [edi + 0x94]
jae 0x4c9db0
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [edi + 0x98]
cmp dword [eax + ecx*4], 5
lea eax, [eax + ecx*4]
mov dword [esp + 0x1c], eax
jne 0x4c9d3e
mov dword [ebx - 8], 1
mov ebp, dword [edx]
cmp ebp, dword [edi + 0x94]
jae 0x4ca8b3
mov eax, dword [edi + 0x98]
lea ecx, [ebp*8]
sub ecx, ebp
cmp dword [eax + ecx*4], 5
lea esi, [eax + ecx*4]
je 0x4c9c97
push 5
push ebp
push edi
call fcn.0048c1d0
add esp, 0xc
mov eax, dword [esi + 0x14]
cmp dword [eax], 1
jne 0x4ca89d
mov ecx, dword [eax + 4]
mov al, byte [ecx + 4]
cmp al, 5
je 0x4c9cdd
cmp al, 6
je 0x4c9cdd
cmp al, 7
je 0x4c9cdd
cmp al, 8
je 0x4c9cdd
test al, al
je 0x4c9cdd
cmp al, 1
je 0x4c9cdd
cmp al, 9
je 0x4c9cdd
cmp al, 0xa
je 0x4c9cdd
cmp al, 0xb
je 0x4c9cdd
cmp al, 0xd
je 0x4c9cdd
cmp al, 0xe
je 0x4c9cdd
cmp al, 0xf
jne 0x4ca89d
push ecx
call fcn.0040e420
add esp, 4
movzx eax, byte [eax + 0x4caaec]
jmp dword [eax*4 + 0x4caae0]
mov eax, dword [esi + 0x18]
mov ebp, dword [esp + 0x64]
movsx eax, byte [eax]
cdq
mov ecx, eax
mov eax, dword [esp + 0x1c]
jmp 0x4c9d49
mov eax, dword [esi + 0x18]
mov ebp, dword [esp + 0x64]
movsx eax, word [eax]
cdq
mov ecx, eax
mov eax, dword [esp + 0x1c]
jmp 0x4c9d49
mov eax, dword [esi + 0x18]
mov ebp, dword [esp + 0x64]
mov eax, dword [eax]
cdq
mov ecx, eax
mov eax, dword [esp + 0x1c]
jmp 0x4c9d49
mov eax, dword [esi + 0x18]
mov ebp, dword [esp + 0x64]
mov ecx, dword [eax]
mov edx, dword [eax + 4]
mov eax, dword [esp + 0x1c]
jmp 0x4c9d49
mov dword [ebx - 8], 0
mov ecx, dword [edx]
xor edx, edx
mov dword [ebx], ecx
lea ecx, [esp + 0x10]
push ecx
push 0x48cc50
push eax
push edi
mov dword [ebx + 4], edx
call fcn.0048ec00
mov ecx, dword [esp + 0x28]
add esp, 0x10
mov edx, dword [esp + 0x14]
inc ecx
add edx, 4
mov dword [esp + 0x18], ecx
add ebx, 0x10
mov dword [esp + 0x14], edx
cmp ecx, ebp
jb 0x4c9c30
mov ebx, dword [esp + 0x5c]
mov esi, dword [esp + 0x60]
push dword [esi + 4]
push edi
call fcn.004c5a20
push dword [esi + 0xc]
mov ebp, eax
push edi
call fcn.004cb1f0
add esp, 0x10
mov edx, eax
cmp ebx, 0x42
je 0x4c9db6
cmp ebx, 0x46
je 0x4c9db6
xor al, al
jmp 0x4c9db8
push eax
jmp 0x4ca8b4
mov al, 1
mov esi, dword [esp + 0x20]
mov byte [esi + 0xc], al
mov ecx, dword [edx + 0x1c]
and ecx, 0x20
or ecx, dword [esp + 0x10]
mov dword [esp + 0x10], ecx
cmp dword [edx], 5
jne 0x4c9de2
mov eax, dword [edi + 0x6c]
cmp byte [eax + 0x55], 0
je 0x4c9de2
or ecx, 0x20
mov dword [esp + 0x10], ecx
push esi
push edx
push edi
call fcn.004cb250
push eax
mov dword [eax + 8], ebp
mov ecx, dword [esp + 0x20]
or dword [eax + 0x1c], ecx
mov eax, dword [esp + 0x70]
push dword [eax + 8]
push edi
call fcn.004cbdd0
add esp, 0x18
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x58]
push dword [ebx + 4]
push ebp
call fcn.004cbd70
push dword [ebx + 8]
mov edi, eax
push ebp
call fcn.004cbd70
push edi
push ebp
mov esi, eax
call fcn.004cc190
push esi
push ebp
mov dword [esp + 0x48], eax
call fcn.004cc190
mov ecx, dword [esi + 0x14]
mov dword [esp + 0x44], eax
push dword [ecx + 0x18]
mov ecx, dword [edi + 0x14]
push dword [ecx + 0x18]
push dword [esp + 0x84]
push ebp
call fcn.004c79b0
mov esi, dword [esp + 0x94]
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x60]
mov dword [esp + 0x4c], 3
push eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x98]
push eax
lea eax, [esp + 0x58]
push eax
push esi
push ebx
push ebp
call fcn.004c9870
add esp, 0x50
lea eax, [esp + 0x14]
push eax
push 0
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x28]
push eax
push esi
push ebx
push ebp
call fcn.004c9870
mov esi, dword [esp + 0x40]
add esp, 0x20
test al, al
jne 0x4c9ec1
mov ebx, dword [esp + 0x5c]
mov eax, esi
jmp 0x4c9ec9
mov eax, dword [esp + 0x1c]
mov ebx, dword [esp + 0x10]
push eax
push dword [esp + 0x28]
push ebp
call fcn.004c78b0
push esi
push dword [esp + 0x38]
mov edi, eax
push ebp
call fcn.004c78b0
push dword [edi]
mov esi, eax
push dword [esp + 0x30]
push ebx
push ebp
call fcn.004c89c0
mov edx, dword [esp + 0x84]
mov ecx, ebx
and ecx, 1
and edx, 1
shl ecx, 2
mov eax, ecx
shl edx, 2
or eax, 0x80
test bl, 4
mov ebx, dword [esp + 0x84]
cmove eax, ecx
mov ecx, edx
or ecx, 0x80
test bl, 4
push eax
cmove ecx, edx
push ecx
push edi
push esi
push ebp
call fcn.004c6510
push dword [esi]
push dword [esp + 0x6c]
push ebx
push ebp
call fcn.004c8990
add esp, 0x4c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x58]
push dword [ebx + 4]
push ebp
call fcn.004cbd70
push dword [ebx + 8]
mov edi, eax
push ebp
call fcn.004cbd70
push dword [ebx + 0xc]
mov esi, eax
push ebp
call fcn.0048ef40
push edi
push ebp
mov dword [esp + 0x3c], eax
call fcn.004cc190
push esi
push ebp
mov dword [esp + 0x48], eax
call fcn.004cc190
mov esi, dword [esp + 0x8c]
mov dword [esp + 0x4c], eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x5c]
mov dword [esp + 0x88], 4
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x94]
push eax
push esi
push ebx
push ebp
call fcn.004c9870
add esp, 0x48
lea eax, [esp + 0x14]
push eax
push 0
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x6c]
push eax
push esi
push ebx
push ebp
call fcn.004c9870
mov edi, dword [esp + 0x30]
add esp, 0x20
test al, al
jne 0x4c9ff4
mov eax, dword [esp + 0x18]
mov ebx, edi
jmp 0x4c9ffc
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x28]
push eax
push dword [esp + 0x28]
mov dword [esp + 0x64], ebx
push ebp
call fcn.004c78b0
push dword [esp + 0x24]
mov esi, eax
push dword [esp + 0x30]
push ebp
call fcn.004c78b0
push dword [esi]
mov dword [esp + 0x34], eax
push dword [esp + 0x30]
push ebx
push ebp
call fcn.004c89c0
mov ebp, ebx
mov ebx, edi
push esi
mov esi, dword [esp + 0x84]
and ebp, 1
and ebx, 1
shl ebp, 2
push esi
shl ebx, 2
call fcn.004cbc30
push dword [esp + 0x48]
mov edi, eax
push esi
call fcn.004cbc30
mov esi, eax
mov eax, dword [esp + 0x90]
push 0x219
push dword [eax + 0x10]
call fcn.00409a30
mov edx, eax
lea ecx, [esi + 0x48]
mov esi, dword [esp + 0x50]
lea eax, [edi + 0x48]
xorps xmm0, xmm0
add esp, 0x40
movups xmmword [esp + 0x34], xmm0
mov dword [esp + 0x40], ecx
mov ecx, ebx
movups xmm0, xmmword [esp + 0x34]
or ecx, 0x80
push edx
movups xmmword [edx + 0x58], xmm0
xorps xmm0, xmm0
movups xmmword [esp + 0x38], xmm0
mov dword [esp + 0x44], eax
movups xmm0, xmmword [esp + 0x38]
mov eax, dword [esp + 0x20]
movups xmmword [edx + 0x68], xmm0
xorps xmm0, xmm0
movups xmmword [esp + 0x38], xmm0
mov dword [esp + 0x44], eax
mov eax, esi
movups xmm0, xmmword [esp + 0x38]
test al, 4
cmove ecx, ebx
imul eax, dword [edx + 0x18], 0x64
mov ebx, dword [esp + 0x5c]
movups xmmword [edx + 0x78], xmm0
push ebx
movzx eax, byte [eax + 0x52384c]
mov dword [edx + eax*4 + 0x30], ecx
mov ecx, ebp
or ecx, 0x80
test byte [esp + 0x64], 4
cmove ecx, ebp
imul eax, dword [edx + 0x18], 0x64
movzx eax, byte [eax + 0x52384d]
mov dword [edx + eax*4 + 0x30], ecx
call fcn.0041dc20
mov eax, dword [esp + 0x20]
push dword [eax]
push dword [esp + 0x3c]
push esi
push ebx
call fcn.004c8990
add esp, 0x18
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x58]
push dword [ebx + 4]
push ebp
call fcn.004c5a20
push 6
push dword [ebx + 0xc]
mov edi, eax
push ebp
call fcn.004cc130
mov esi, eax
push esi
push ebp
call fcn.004cc190
mov ecx, dword [esi + 0x14]
mov ebx, eax
push dword [ecx + 0x18]
push edi
push dword [esp + 0x80]
push ebp
call fcn.004c79b0
mov edi, dword [esp + 0x8c]
lea eax, [esp + 0x58]
push eax
push 0
lea eax, [esp + 0x64]
mov dword [esp + 0x90], 4
push eax
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x98]
push eax
push dword [esp + 0xa4]
push edi
push ebp
call fcn.004c9870
add esp, 0x4c
push dword [esp + 0x30]
push ebx
push ebp
call fcn.004c78b0
mov ebx, dword [esp + 0x34]
mov esi, eax
push dword [esi]
push dword [esp + 0x3c]
push ebx
push ebp
call fcn.004c89c0
mov ecx, ebx
and ecx, 1
shl ecx, 2
mov eax, ecx
or eax, 0x80
test bl, 4
cmove eax, ecx
push eax
push esi
push ebp
call fcn.004cc220
push eax
push dword [edi + 8]
push ebp
call fcn.00498c10
add esp, 0x34
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov esi, dword [esp + 0x60]
mov ebp, dword [esp + 0x58]
push dword [esi + 4]
push ebp
call fcn.004cbd70
push eax
push ebp
mov dword [esp + 0x6c], eax
call fcn.004cc190
push dword [esi + 8]
mov edi, eax
push ebp
call fcn.00499950
mov ecx, dword [edi + 4]
add esp, 0x18
mov edx, dword [ecx + 4]
test edx, edx
je 0x4ca8c9
cmp byte [edx + 4], 0xb
lea ecx, [eax + 0x14]
jne 0x4ca2e2
mov eax, dword [ecx]
mov eax, dword [eax + 4]
cmp byte [eax + 4], 0
jne 0x4ca2e2
push str.OpStore_of_value_of_type_OpTypeInt_to_a_pointer_to_type_OpTypeBool.__Doing_an_implicit_conversion_to_work_around_the_problem.
push 0xb15
push str..._.._src_compiler_spirv_vtn_variables.c
push ebp
call fcn.0048c220
mov eax, dword [edi + 4]
push dword [eax + 4]
push ebp
call fcn.0048e590
push dword [esi + 8]
mov ebx, eax
push ebp
call fcn.00499000
mov eax, dword [eax + 4]
mov dword [esp + 0x4c], eax
movzx esi, byte [eax + 0x11]
push esi
push 0
push 0
call fcn.0040fd20
push esi
push 1
push dword [ebp + 0x10]
mov dword [esp + 0x94], eax
mov dword [esp + 0x68], edx
call fcn.00409be0
mov esi, eax
add esp, 0x38
test esi, esi
je 0x4ca2ba
mov eax, dword [esp + 0x5c]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x30]
push esi
push ebp
mov dword [esi + 0x34], eax
call fcn.0041dc20
add esp, 8
add esi, 0x18
push esi
push dword [esp + 0x30]
push 0x146
push ebp
call fcn.0041d890
push 0
push edi
push ebx
push ebp
mov dword [ebx + 4], eax
call fcn.004cc260
add esp, 0x20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov eax, dword [esp + 0x5c]
push dword [ecx]
mov eax, dword [eax + 0x14]
push dword [eax + 0x18]
push ebx
push ebp
call fcn.004c79b0
push 0
lea eax, [esp + 0x3c]
mov dword [esp + 0x70], 3
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x7c]
push eax
push dword [esp + 0x88]
push esi
push ebp
call fcn.004c9870
push dword [esp + 0x60]
push edi
push ebp
call fcn.004c78b0
push dword [esi + 8]
mov ebx, eax
push ebp
call fcn.00499000
mov edi, dword [esp + 0x70]
add esp, 0x44
mov esi, edi
mov ecx, edi
and esi, 1
shl esi, 2
mov edx, esi
or edx, 0x80
test cl, 4
cmove edx, esi
push edx
push ebx
push eax
push ebp
call fcn.004cc260
push dword [ebx]
push dword [esp + 0x3c]
push edi
push ebp
call fcn.004c8990
add esp, 0x20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebp, dword [esp + 0x60]
mov ebx, dword [esp + 0x58]
push dword [ebp + 0xc]
push ebx
call fcn.004cb1f0
mov edx, dword [ebp + 0x10]
mov esi, eax
add esp, 8
mov ecx, dword [esi + 4]
cmp dword [ecx], 5
jne 0x4ca8de
mov eax, dword [ecx + 0xc]
dec eax
cmp edx, eax
jne 0x4ca8f3
mov eax, dword [ecx + 0x18]
mov eax, dword [eax + edx*4]
cmp dword [eax], 4
jne 0x4ca8f3
lea eax, [esp + 0x34]
mov dword [esp + 0x34], 1
push eax
push esi
push ebx
mov byte [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov byte [esp + 0x4c], 0
mov dword [esp + 0x50], 1
mov dword [esp + 0x58], edx
mov dword [esp + 0x5c], 0
call fcn.004cb250
mov ecx, dword [esi + 4]
push eax
push ebx
mov ebp, dword [ecx + 0x14]
or ebp, dword [esi + 0x1c]
call fcn.004cbc80
push 0x5d
push dword [ebx + 0x10]
mov esi, eax
call fcn.00409a30
mov edi, eax
push 0x20
push 1
lea ebx, [edi + 0x1c]
push ebx
push edi
call fcn.00407ee0
imul eax, dword [edi + 0x18], 0x64
xorps xmm0, xmm0
movups xmmword [esp + 0x60], xmm0
mov dword [esp + 0x6c], esi
movups xmm0, xmmword [esp + 0x60]
mov esi, dword [esp + 0x84]
push edi
movups xmmword [edi + 0x58], xmm0
push esi
movzx eax, byte [eax + 0x52383e]
mov dword [edi + eax*4 + 0x30], ebp
call fcn.0041dc20
mov eax, dword [esp + 0x94]
push ebx
push dword [eax + 8]
push esi
call fcn.00498b00
add esp, 0x40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov edi, dword [esp + 0x60]
mov esi, dword [esp + 0x58]
push dword [edi + 4]
push esi
call fcn.004c5a20
push dword [edi + 0xc]
mov ebx, eax
push esi
call fcn.0048f100
add esp, 0x10
cmp dword [eax], 6
jne 0x4ca91d
cmp dword [eax + 4], 0
je 0x4ca91d
mov eax, dword [ebx]
cmp eax, 2
je 0x4ca4ad
cmp eax, 1
jne 0x4ca908
push dword [edi + 0xc]
push esi
call fcn.0048ef40
push dword [ebx + 4]
push eax
push esi
call fcn.004c7320
push eax
push dword [edi + 8]
push esi
call fcn.00498b00
add esp, 0x20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebx, dword [esp + 0x60]
mov esi, dword [esp + 0x58]
push dword [ebx + 4]
push esi
call fcn.004c5a20
push dword [ebx + 0xc]
mov edi, eax
push esi
call fcn.0048f100
add esp, 0x10
cmp dword [edi], 6
jne 0x4ca947
cmp dword [edi + 4], 0
je 0x4ca947
mov eax, dword [eax]
cmp eax, 2
je 0x4ca517
cmp eax, 1
jne 0x4ca932
push dword [ebx + 0xc]
push esi
call fcn.0048ef40
push dword [edi + 4]
push eax
push esi
call fcn.004c7320
push edi
push eax
push esi
call fcn.004cbb20
push eax
push dword [ebx + 8]
push esi
call fcn.004cbdd0
add esp, 0x2c
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x58]
push dword [ebx + 4]
push ebp
call fcn.004c5a20
push dword [ebx + 0xc]
mov edi, eax
push ebp
call fcn.0048f100
mov esi, dword [ebx + 0x10]
add esp, 0x10
cmp dword [edi], 6
mov edx, eax
jne 0x4ca99b
cmp dword [edi + 0x1c], esi
jne 0x4ca99b
cmp dword [edx], 6
jne 0x4ca986
mov eax, dword [edx + 0x18]
mov ecx, dword [edi + 0x18]
mov eax, dword [eax + 8]
cmp eax, dword [ecx + 8]
jne 0x4ca986
cmp dword [edx + 0x1c], 8
jne 0x4ca95c
cmp esi, 4
je 0x4ca5b5
cmp esi, 5
je 0x4ca5b5
cmp esi, 7
jne 0x4ca971
push dword [ebx + 0xc]
push ebp
call fcn.004cb190
mov ebx, eax
lea eax, [esp + 0x64]
push eax
push dword [edi + 0x18]
push esi
push ebp
call fcn.004cbe50
push eax
push ebp
call fcn.004cb050
mov esi, eax
push esi
call fcn.0040f410
add esp, 0x24
push eax
push esi
call fcn.0040f3d0
add esp, 4
push eax
push esi
call fcn.0040f420
add esp, 4
push eax
push ebp
call fcn.0041c550
push dword [esp + 0x6c]
lea esi, [ebx + 0x48]
mov edi, eax
push 0
push esi
push 1
push ebp
call fcn.004c62b0
push edi
push esi
push eax
push ebp
call fcn.0049b6b0
push eax
jmp 0x4ca882
mov ebp, dword [esp + 0x60]
mov ebx, dword [esp + 0x58]
push dword [ebp + 4]
push ebx
call fcn.004c5a20
push dword [ebp + 0xc]
mov esi, eax
push ebx
call fcn.0048f100
add esp, 0x10
cmp dword [esi], 1
jne 0x4ca9c5
cmp dword [esi + 4], 0x536fac
jne 0x4ca9c5
cmp dword [eax], 6
jne 0x4ca9b0
cmp dword [eax + 0x1c], 8
jne 0x4ca9b0
push dword [ebp + 0xc]
push ebx
call fcn.004cb190
push 0
push ebx
lea edi, [eax + 0x48]
call fcn.004109e0
add esp, 0x10
push eax
push 0x200
push ebx
call fcn.004109e0
add esp, 8
push eax
push 0x20000
push 0
push edi
push 1
push ebx
call fcn.004c62b0
add esp, 0x14
push eax
push ebx
call fcn.0049b6b0
push 0
push ebx
mov esi, eax
call fcn.004109e0
add esp, 0x18
push eax
push 0x100
push ebx
call fcn.004109e0
add esp, 8
push eax
push 0x10000
push 0
push edi
push 1
push ebx
call fcn.004c62b0
add esp, 0x14
push eax
push ebx
call fcn.0049b6b0
push eax
push esi
push ebx
call fcn.004a2f50
push eax
push dword [ebp + 8]
push ebx
call fcn.00498b00
add esp, 0x28
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebx, dword [esp + 0x60]
mov esi, dword [esp + 0x58]
push dword [ebx + 4]
push esi
call fcn.004c5a20
push dword [ebx + 0xc]
mov dword [esp + 0x68], eax
push esi
call fcn.0048f100
mov ebp, eax
add esp, 0x10
cmp dword [ebp], 2
jne 0x4ca73e
push 0
push 0
push 0
push 1
push 2
push 0
call fcn.0045e8d0
add esp, 0x18
cmp dword [ebp + 4], eax
je 0x4ca755
cmp dword [ebp], 1
jne 0x4ca9ef
cmp dword [ebp + 4], 0x537524
jne 0x4ca9ef
mov edi, dword [esp + 0x5c]
cmp dword [edi], 0xa
jne 0x4ca9da
push dword [ebx + 0xc]
push esi
call fcn.0048ef40
push dword [edi + 4]
push eax
push esi
call fcn.004c7320
push eax
push dword [ebx + 8]
push esi
call fcn.00498b00
add esp, 0x20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov eax, ebx
sub eax, 0x15c7
je 0x4ca80f
sub eax, 1
jne case.0x4c99e0.2
mov esi, dword [esp + 0x60]
mov ebx, dword [esp + 0x58]
push dword [esi + 4]
push ebx
call fcn.004cb190
push dword [esi + 8]
mov edi, eax
push ebx
call fcn.00499000
push 0x25a
push dword [ebx + 0x10]
mov esi, dword [eax + 4]
call fcn.00409a30
xorps xmm0, xmm0
lea ecx, [edi + 0x48]
movups xmmword [esp + 0x4c], xmm0
mov edx, eax
mov dword [esp + 0x58], ecx
movups xmm0, xmmword [esp + 0x4c]
push edx
push ebx
movups xmmword [edx + 0x58], xmm0
xorps xmm0, xmm0
movups xmmword [esp + 0x54], xmm0
mov dword [esp + 0x60], esi
movups xmm0, xmmword [esp + 0x54]
movups xmmword [edx + 0x68], xmm0
mov al, byte [esi + 0x10]
mov byte [edx + 0x30], al
call fcn.0041dc20
add esp, 0x20
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x58]
push dword [ebx + 4]
push ebp
call fcn.004c5a20
push dword [ebx + 0xc]
mov edi, eax
push ebp
call fcn.004cb190
push 0x101
push dword [ebp + 0x10]
mov esi, eax
call fcn.00409a30
xorps xmm0, xmm0
lea ecx, [esi + 0x48]
mov ebx, eax
movups xmmword [esp + 0x4c], xmm0
mov dword [esp + 0x58], ecx
movups xmm0, xmmword [esp + 0x4c]
lea esi, [ebx + 0x1c]
movups xmmword [ebx + 0x58], xmm0
mov edx, dword [edi + 4]
push edx
call fcn.0040e420
movzx ecx, byte [edx + 0x11]
push eax
movzx eax, byte [edx + 0x10]
imul ecx, eax
push ecx
push esi
push ebx
call fcn.00407ee0
mov al, byte [ebx + 0x2c]
push ebx
push ebp
mov byte [ebx + 0x30], al
call fcn.0041dc20
push esi
mov eax, dword [esp + 0x98]
push dword [eax + 8]
push ebp
call fcn.00498b00
add esp, 0x40
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x44
ret
push ebp
push str.Expected_id__u_to_be_an_integer_constant
push 0x351
push str.C:mesa_srccompiler_spirv_vtn_private.h
push edi
call fcn.0048c130
push ebp
push str.SPIR_V_id__u_is_out_of_bounds
push 0x2dd
push str.C:mesa_srccompiler_spirv_vtn_private.h
push edi
call fcn.0048c130
push str.Invalid_destination_type_for_OpStore
push 0xb08
push str..._.._src_compiler_spirv_vtn_variables.c
push ebp
call fcn.0048c130
push str.OpArrayLength_must_take_a_pointer_to_a_structure_type
push 0xb31
push str..._.._src_compiler_spirv_vtn_variables.c
push ebx
call fcn.0048c130
push str.OpArrayLength_must_reference_the_last_member_of_the_structure_and_that_must_be_an_array
push 0xb35
push str..._.._src_compiler_spirv_vtn_variables.c
push ebx
call fcn.0048c130
push str.OpConvertPtrToU_can_only_be_used_to_cast_to_a_vector_or_scalar_type
push 0xb53
push str..._.._src_compiler_spirv_vtn_variables.c
push esi
call fcn.0048c130
push str.OpConvertPtrToU_can_only_be_used_on_physical_pointers
push 0xb4e
push str..._.._src_compiler_spirv_vtn_variables.c
push esi
call fcn.0048c130
push str.OpConvertUToPtr_can_only_be_used_to_cast_from_a_vector_or_scalar_type
push 0xb67
push str..._.._src_compiler_spirv_vtn_variables.c
push esi
call fcn.0048c130
push str.OpConvertUToPtr_can_only_be_used_on_physical_pointers
push 0xb62
push str..._.._src_compiler_spirv_vtn_variables.c
push esi
call fcn.0048c130
push str.Source_pointer_of_an_SpvOpGenericCastToPtrExplicit_must_point_to_the_Generic_Storage_Class.
push 0xb82
push str..._.._src_compiler_spirv_vtn_variables.c
push ebp
call fcn.0048c130
push str.Storage_must_be_one_of_the_following_literal_values_from_Storage_Class:_Workgroup__CrossWorkgroup__or_Function.
push 0xb88
push str..._.._src_compiler_spirv_vtn_variables.c
push ebp
call fcn.0048c130
push str.Source_pointer_of_an_SpvOpGenericCastToPtrExplicit_must_have_a_type_of_OpTypePointer_whose_Type_is_the_same_as_the_Type_of_Result_Type
push 0xb7e
push str..._.._src_compiler_spirv_vtn_variables.c
push ebp
call fcn.0048c130
push str.Result_type_of_an_SpvOpGenericCastToPtrExplicit_must_be_an_OpTypePointer._Its_Storage_Class_must_match_the_storage_class_specified_in_the_instruction
push 0xb78
push str..._.._src_compiler_spirv_vtn_variables.c
push ebp
call fcn.0048c130
push str.Source_pointer_of_an_SpvOpGenericPtrMemSemantics_must_point_to_the_Generic_Storage_Class
push 0xba9
push str..._.._src_compiler_spirv_vtn_variables.c
push ebx
call fcn.0048c130
push str.Result_type_of_an_SpvOpGenericPtrMemSemantics_must_be_an_OpTypeInt_with_32_bit_Width_and_0_Signedness.
push 0xba4
push str..._.._src_compiler_spirv_vtn_variables.c
push ebx
call fcn.0048c130
push str.The_result_type_of_an_OpConvertUToAccelerationStructure_must_be_OpTypeAccelerationStructure
push 0xbe7
push str..._.._src_compiler_spirv_vtn_variables.c
push esi
call fcn.0048c130
push str.OpConvertUToAccelerationStructure_may_only_be_used_to_cast_from_a_64_bit_scalar_integer_or_a_2_component_vector_of_32_bit_integers
push 0xbe4
push str..._.._src_compiler_spirv_vtn_variables.c
push esi
call fcn.0048c130
push ebx
push ebx
call fcn.004c22f0
add esp, 4
push eax
push str.Unhandled_opcode
push str._s:__s___u__n
push 0xbef
push str..._.._src_compiler_spirv_vtn_variables.c
push dword [esp + 0x70]
call fcn.0048c130
out 0x99, eax
dec esp
add ah, bl
lcall 0x4c, 0x9a17004c
and ah, byte [ecx - 0x5e14ffb4]
dec esp
add byte [0x49004c9e], cl
lahf
dec esp
add bh, al
wait
dec esp
add byte [edi - 0x5d], dh
dec esp
add byte [edi], bl
cmpsb byte [esi], byte es:[edi]
dec esp
add byte [ebx - 0x5c], ch
dec esp
add ch, dl
movsb byte es:[edi], byte [esi]
dec esp
add byte [edi - 0x5b], al
dec esp
add byte [edx + ebp*4], al
dec esp
add byte [eax], al
or eax, 0xd0d0d0d
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218172685
or eax, 218959117
or eax, 218959117
or eax, 51184141
add al, 5
push es
pop es
pop es
pop es
or byte [ecx], cl
pop es
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 218959117
or eax, 185404682
or eax, -191886323
pushfd
dec esp
add byte [edi], al
popfd
dec esp
add byte [edx], bl
popfd
dec esp
add byte [ebx*4 + 0x4c], ch
add byte [eax], al
add byte [esp + eax], al
add al, 4
add al, 4
add al, 1
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 2
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 4
add al, 3
int3