Function at 0x406040
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x51e945
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xcc8
push ebx
push esi
push edi
push 0x700
lea eax, [ebp - 0xcd4]
push 0
push eax
call fcn.004fc310
mov edi, dword [ebp + 8]
lea esi, [ebp - 0xcd4]
mov ecx, 0x1c0
add esp, 0xc
rep movsd dword es:[edi], dword [esi]
xor esi, esi
lea ecx, [ebp - 0x48]
xor ebx, ebx
mov dword [ebp - 0x10], esi
call fcn.00405520
xor edi, edi
mov dword [ebp - 4], esi
cmp dword [ebp + 0x14], edi
jbe 0x4060d9
mov esi, dword [ebp + 0x10]
push dword [esi + edi*4]
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x42c]
push eax
lea ecx, [ebp - 0x48]
call fcn.00411260
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0
call fcn.00401760
inc edi
cmp edi, dword [ebp + 0x14]
jb 0x4060a3
xor esi, esi
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], eax
mov dword [ebp - 0xa0], eax
mov dword [ebp - 0x9c], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0xb0]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
lea edi, [ebp - 0xb0]
mov edx, eax
mov dword [ebp - 0x9c], ecx
mov ecx, dword [str.VK_KHR_16bit_storage]
add esp, 8
mov dword [ebp - 0xb0], edx
mov dword [ebp - 0xa0], 0x14
mov dword [edx], ecx
mov ecx, dword [0x52dba0]
mov dword [edx + 4], ecx
mov eax, dword [0x52dba4]
mov dword [edx + 8], eax
mov eax, dword [0x52dba8]
mov dword [edx + 0xc], eax
mov eax, dword [0x52dbac]
mov dword [edx + 0x10], eax
mov byte [edx + 0x14], 0
mov edx, 0x811c9dc5
cmp dword [ebp - 0x9c], 0xf
cmova edi, dword [ebp - 0xb0]
xor ecx, ecx
cmp dword [ebp - 0xa0], ecx
jbe 0x406199
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [ebp - 0xa0]
jb 0x406184
push edx
lea eax, [ebp - 0xb0]
push eax
lea eax, [ebp - 0x5d4]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov edi, dword [eax + 4]
mov eax, dword [ebp - 0x9c]
cmp eax, 0xf
jbe 0x4061ef
mov edx, dword [ebp - 0xb0]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x4061e5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a671
push ecx
push edx
call fcn.004fa253
add esp, 8
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
jb 0x40622a
test edi, edi
mov edi, dword [ebp + 8]
je 0x40622d
lea esi, [edi + 4]
mov dword [edi], 0x3b9c0e38
mov dword [ebp - 0x10], esi
mov ebx, edi
jmp 0x40622d
mov edi, dword [ebp + 8]
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0xc8]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edx, eax
mov dword [ebp - 0xb4], ecx
add esp, 8
mov ecx, dword [str.VK_KHR_multiview]
mov dword [ebp - 0xc8], edx
mov dword [ebp - 0xb8], 0x10
mov dword [edx], ecx
mov ecx, dword [0x52dbb8]
mov dword [edx + 4], ecx
mov eax, dword [0x52dbbc]
mov dword [edx + 8], eax
mov eax, dword [0x52dbc0]
mov dword [edx + 0xc], eax
lea eax, [ebp - 0xc8]
mov byte [edx + 0x10], 0
mov edx, 0x811c9dc5
cmp dword [ebp - 0xb4], 0xf
cmova eax, dword [ebp - 0xc8]
xor ecx, ecx
cmp dword [ebp - 0xb8], ecx
jbe 0x4062ea
mov esi, eax
movzx eax, byte [esi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [ebp - 0xb8]
jb 0x4062d2
mov esi, dword [ebp - 0x10]
push edx
lea eax, [ebp - 0xc8]
push eax
lea eax, [ebp - 0x5cc]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0xb4]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x406346
mov edx, dword [ebp - 0xc8]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x406339
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a671
push ecx
push edx
call fcn.004fa253
mov ecx, dword [ebp + 0x14]
add esp, 8
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0xf
mov byte [ebp - 0xc8], 0
jb 0x406389
test ecx, ecx
je 0x406389
test ebx, ebx
mov dword [edi + 0x18], 0x3b9b9909
lea eax, [edi + 0x18]
cmove ebx, eax
test esi, esi
je 0x406383
mov dword [esi], eax
lea esi, [edi + 0x1c]
mov dword [ebp - 0x10], esi
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x160], eax
mov dword [ebp - 0x15c], eax
mov dword [ebp - 0x158], eax
mov dword [ebp - 0x154], eax
mov dword [ebp - 0x150], eax
mov dword [ebp - 0x14c], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x160]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edx, eax
mov dword [ebp - 0x14c], ecx
add esp, 8
mov ecx, dword [str.VK_KHR_variable_pointers]
mov dword [ebp - 0x160], edx
mov dword [ebp - 0x150], 0x18
mov dword [edx], ecx
mov ecx, dword [0x52dbcc]
mov dword [edx + 4], ecx
mov eax, dword [0x52dbd0]
mov dword [edx + 8], eax
mov eax, dword [0x52dbd4]
mov dword [edx + 0xc], eax
mov eax, dword [0x52dbd8]
mov dword [edx + 0x10], eax
mov eax, dword [0x52dbdc]
mov dword [edx + 0x14], eax
lea eax, [ebp - 0x160]
mov byte [edx + 0x18], 0
mov edx, 0x811c9dc5
cmp dword [ebp - 0x14c], 0xf
cmova eax, dword [ebp - 0x160]
xor ecx, ecx
cmp dword [ebp - 0x150], ecx
jbe 0x406458
mov esi, eax
mov edi, edi
movzx eax, byte [esi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [ebp - 0x150]
jb 0x406440
mov esi, dword [ebp - 0x10]
push edx
lea eax, [ebp - 0x160]
push eax
lea eax, [ebp - 0x5c4]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x14c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x4064b4
mov edx, dword [ebp - 0x160]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x4064a7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a671
push ecx
push edx
call fcn.004fa253
mov ecx, dword [ebp + 0x14]
add esp, 8
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x150], 0
mov dword [ebp - 0x14c], 0xf
mov byte [ebp - 0x160], 0
jb 0x4064f7
test ecx, ecx
je 0x4064f7
test ebx, ebx
mov dword [edi + 0x2c], 0x3b9c9ec0
lea eax, [edi + 0x2c]
cmove ebx, eax
test esi, esi
je 0x4064f1
mov dword [esi], eax
lea eax, [edi + 0x30]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0xe4], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0xf8]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov esi, str.VK_KHR_sampler_ycbcr_conversion
mov dword [ebp - 0xe4], ecx
mov edi, eax
mov dword [ebp - 0xf8], eax
mov ecx, 7
mov dword [ebp - 0xe8], 0x1f
add esp, 8
rep movsd dword es:[edi], dword [esi]
mov edx, 0x811c9dc5
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov byte [eax + 0x1f], 0
lea esi, [ebp - 0xf8]
cmp dword [ebp - 0xe4], 0xf
mov edi, dword [ebp - 0xe8]
cmova esi, dword [ebp - 0xf8]
xor ecx, ecx
test edi, edi
je 0x4065a1
lea ebx, [ebx]
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x406590
push edx
lea eax, [ebp - 0xf8]
push eax
lea eax, [ebp - 0x5bc]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0xe4]
cmp eax, 0xf
jbe 0x4065dc
push eax
push dword [ebp - 0xf8]
lea eax, [ebp - 0xf8]
push eax
call fcn.00405a60
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xe4], 0xf
mov byte [ebp - 0xf8], 0
jb 0x406624
test esi, esi
je 0x406624
mov edx, dword [ebp + 8]
test ebx, ebx
mov eax, dword [ebp - 0x10]
lea ecx, [edx + 0x3c]
cmove ebx, ecx
mov dword [ecx], 0x3b9d2b64
test eax, eax
je 0x40661e
mov dword [eax], ecx
lea eax, [edx + 0x40]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x98], eax
mov dword [ebp - 0x94], eax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], eax
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x84], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x98]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov esi, str.VK_KHR_shader_draw_parameters
mov dword [ebp - 0x84], ecx
mov edi, eax
mov dword [ebp - 0x98], eax
mov ecx, 7
mov dword [ebp - 0x88], 0x1d
add esp, 8
rep movsd dword es:[edi], dword [esi]
mov edx, 0x811c9dc5
movsb byte es:[edi], byte [esi]
mov byte [eax + 0x1d], 0
lea esi, [ebp - 0x98]
cmp dword [ebp - 0x84], 0xf
mov edi, dword [ebp - 0x88]
cmova esi, dword [ebp - 0x98]
xor ecx, ecx
test edi, edi
je 0x4066c6
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x4066b5
push edx
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x5b4]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0x84]
cmp eax, 0xf
jbe 0x406701
push eax
push dword [ebp - 0x98]
lea eax, [ebp - 0x98]
push eax
call fcn.00405a60
add esp, 0xc
cmp dword [ebp + 0xc], section..text
mov edi, dword [ebp + 8]
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
jb 0x40674b
test esi, esi
je 0x40674b
mov eax, dword [ebp - 0x10]
lea ecx, [edi + 0x48]
test ebx, ebx
mov dword [ecx], 0x3b9bc018
cmove ebx, ecx
test eax, eax
je 0x406743
mov dword [eax], ecx
lea esi, [edi + 0x4c]
mov dword [ebp - 0x10], esi
jmp 0x40674e
mov esi, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x124], eax
mov dword [ebp - 0x120], eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x114], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x128]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edx, eax
mov dword [ebp - 0x114], ecx
mov ecx, dword [str.VK_KHR_8bit_storage]
mov dword [ebp - 0x128], edx
mov dword [ebp - 0x118], 0x13
mov dword [edx], ecx
mov ecx, dword [0x52dc28]
mov dword [edx + 4], ecx
mov eax, dword [0x52dc2c]
mov dword [edx + 8], eax
mov eax, dword [0x52dc30]
mov dword [edx + 0xc], eax
mov ax, word [0x52dc34]
mov word [edx + 0x10], ax
mov al, byte [0x52dc36]
mov byte [edx + 0x12], al
lea eax, [ebp - 0x128]
mov byte [edx + 0x13], 0
cmp dword [ebp - 0x114], 0xf
push dword [ebp - 0x118]
cmova eax, dword [ebp - 0x128]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0x14
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x128]
push eax
lea eax, [ebp - 0x5ac]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x114]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x406846
push eax
push dword [ebp - 0x128]
lea eax, [ebp - 0x128]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
jb 0x406889
test ecx, ecx
je 0x406889
test ebx, ebx
mov dword [edi + 0x54], 0x3b9d7d68
lea eax, [edi + 0x54]
cmove ebx, eax
test esi, esi
je 0x406883
mov dword [esi], eax
lea eax, [edi + 0x58]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x424], eax
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x41c], eax
mov dword [ebp - 0x418], eax
mov dword [ebp - 0x414], eax
mov dword [ebp - 0x410], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x424]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edi, eax
mov dword [ebp - 0x410], ecx
mov esi, str.VK_KHR_shader_atomic_int64
mov dword [ebp - 0x424], eax
mov ecx, 6
mov dword [ebp - 0x414], 0x1a
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov byte [eax + 0x1a], 0
lea eax, [ebp - 0x424]
mov esi, dword [ebp - 0x410]
cmp esi, 0xf
push dword [ebp - 0x414]
mov edi, dword [ebp - 0x424]
cmova eax, edi
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0x14
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x424]
push eax
lea eax, [ebp - 0x5a4]
push eax
call fcn.00404870
mov eax, dword [eax + 4]
mov dword [ebp + 0x14], eax
cmp esi, 0xf
jbe 0x406955
push esi
lea eax, [ebp - 0x424]
push edi
push eax
call fcn.00405a60
mov eax, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x414], 0
mov dword [ebp - 0x410], 0xf
mov byte [ebp - 0x424], 0
jb 0x40699d
test eax, eax
je 0x40699d
mov edx, dword [ebp + 8]
test ebx, ebx
mov eax, dword [ebp - 0x10]
lea ecx, [edx + 0x68]
cmove ebx, ecx
mov dword [ecx], 0x3b9d8920
test eax, eax
je 0x406997
mov dword [eax], ecx
lea eax, [edx + 0x6c]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x404], eax
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x3fc], eax
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x408]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edi, eax
mov dword [ebp - 0x3f4], ecx
mov esi, str.VK_KHR_shader_float16_int8
mov dword [ebp - 0x408], eax
mov ecx, 6
mov dword [ebp - 0x3f8], 0x1a
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov byte [eax + 0x1a], 0
lea eax, [ebp - 0x408]
mov esi, dword [ebp - 0x3f4]
cmp esi, 0xf
push dword [ebp - 0x3f8]
mov edi, dword [ebp - 0x408]
cmova eax, edi
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0x14
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x408]
push eax
lea eax, [ebp - 0x59c]
push eax
call fcn.00404870
mov eax, dword [eax + 4]
mov dword [ebp + 0x14], eax
cmp esi, 0xf
jbe 0x406a69
push esi
lea eax, [ebp - 0x408]
push edi
push eax
call fcn.00405a60
mov eax, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov esi, dword [ebp + 8]
mov dword [ebp - 0x3f8], 0
mov dword [ebp - 0x3f4], 0xf
mov byte [ebp - 0x408], 0
jb 0x406ab3
test eax, eax
je 0x406ab3
mov eax, dword [ebp - 0x10]
lea ecx, [esi + 0x78]
test ebx, ebx
mov dword [ecx], 0x3b9c0a50
cmove ebx, ecx
test eax, eax
je 0x406aab
mov dword [eax], ecx
lea edi, [esi + 0x7c]
mov dword [ebp - 0x10], edi
jmp 0x406ab6
mov edi, dword [ebp - 0x10]
xor eax, eax
lea ecx, [ebp - 0x370]
push 0x1a
push str.VK_EXT_descriptor_indexing
mov dword [ebp - 0x370], eax
mov dword [ebp - 0x36c], eax
mov dword [ebp - 0x368], eax
mov dword [ebp - 0x364], eax
mov dword [ebp - 0x360], eax
mov dword [ebp - 0x35c], eax
call fcn.004011f0
cmp dword [ebp - 0x35c], 0xf
lea eax, [ebp - 0x370]
push dword [ebp - 0x360]
cmova eax, dword [ebp - 0x370]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x370]
push eax
lea eax, [ebp - 0x594]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x35c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x406b57
push eax
push dword [ebp - 0x370]
lea eax, [ebp - 0x370]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x360], 0
mov dword [ebp - 0x35c], 0xf
mov byte [ebp - 0x370], 0
jb 0x406ba3
test ecx, ecx
je 0x406ba3
test ebx, ebx
mov dword [esi + 0x88], 0x3b9d3ee9
lea eax, [esi + 0x88]
cmove ebx, eax
test edi, edi
je 0x406b9a
mov dword [edi], eax
lea edi, [esi + 0x8c]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x340]
push 0x1a
push str.VK_KHR_vulkan_memory_model
mov dword [ebp - 0x340], eax
mov dword [ebp - 0x33c], eax
mov dword [ebp - 0x338], eax
mov dword [ebp - 0x334], eax
mov dword [ebp - 0x330], eax
mov dword [ebp - 0x32c], eax
call fcn.004011f0
cmp dword [ebp - 0x32c], 0xf
lea eax, [ebp - 0x340]
push dword [ebp - 0x330]
cmova eax, dword [ebp - 0x340]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x340]
push eax
lea eax, [ebp - 0x584]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x32c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x406c44
push eax
push dword [ebp - 0x340]
lea eax, [ebp - 0x340]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x330], 0
mov dword [ebp - 0x32c], 0xf
mov byte [ebp - 0x340], 0
jb 0x406c90
test ecx, ecx
je 0x406c90
test ebx, ebx
mov dword [esi + 0xe0], 0x3b9e0238
lea eax, [esi + 0xe0]
cmove ebx, eax
test edi, edi
je 0x406c87
mov dword [edi], eax
lea edi, [esi + 0xe4]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x328]
push 0x25
push str.VK_KHR_uniform_buffer_standard_layout
mov dword [ebp - 0x328], eax
mov dword [ebp - 0x324], eax
mov dword [ebp - 0x320], eax
mov dword [ebp - 0x31c], eax
mov dword [ebp - 0x318], eax
mov dword [ebp - 0x314], eax
call fcn.004011f0
cmp dword [ebp - 0x314], 0xf
lea eax, [ebp - 0x328]
push dword [ebp - 0x318]
cmova eax, dword [ebp - 0x328]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x328]
push eax
lea eax, [ebp - 0x574]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x314]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x406d31
push eax
push dword [ebp - 0x328]
lea eax, [ebp - 0x328]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x318], 0
mov dword [ebp - 0x314], 0xf
mov byte [ebp - 0x328], 0
jb 0x406d7d
test ecx, ecx
je 0x406d7d
test ebx, ebx
mov dword [esi + 0xf4], 0x3b9ea648
lea eax, [esi + 0xf4]
cmove ebx, eax
test edi, edi
je 0x406d74
mov dword [edi], eax
lea edi, [esi + 0xf8]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x190]
push 0x25
push str.VK_KHR_shader_subgroup_extended_types
mov dword [ebp - 0x190], eax
mov dword [ebp - 0x18c], eax
mov dword [ebp - 0x188], eax
mov dword [ebp - 0x184], eax
mov dword [ebp - 0x180], eax
mov dword [ebp - 0x17c], eax
call fcn.004011f0
cmp dword [ebp - 0x17c], 0xf
lea eax, [ebp - 0x190]
mov edx, 0x811c9dc5
cmova eax, dword [ebp - 0x190]
xor ecx, ecx
cmp dword [ebp - 0x180], ecx
jbe 0x406df8
mov edi, eax
lea ebx, [ebx]
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [ebp - 0x180]
jb 0x406de0
mov edi, dword [ebp - 0x10]
push edx
lea eax, [ebp - 0x190]
push eax
lea eax, [ebp - 0x56c]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x17c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x406e39
push eax
push dword [ebp - 0x190]
lea eax, [ebp - 0x190]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], section..text
mov dword [ebp - 0x180], 0
mov dword [ebp - 0x17c], 0xf
mov byte [ebp - 0x190], 0
jb 0x406e85
test ecx, ecx
je 0x406e85
test ebx, ebx
mov dword [esi + 0x100], 0x3b9d7598
lea eax, [esi + 0x100]
cmove ebx, eax
test edi, edi
je 0x406e7c
mov dword [edi], eax
lea edi, [esi + 0x104]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x1f0]
push 0x25
push str.VK_KHR_separate_depth_stencil_layouts
mov dword [ebp - 0x1f0], eax
mov dword [ebp - 0x1ec], eax
mov dword [ebp - 0x1e8], eax
mov dword [ebp - 0x1e4], eax
mov dword [ebp - 0x1e0], eax
mov dword [ebp - 0x1dc], eax
call fcn.004011f0
cmp dword [ebp - 0x1dc], 0xf
lea eax, [ebp - 0x1f0]
push dword [ebp - 0x1e0]
cmova eax, dword [ebp - 0x1f0]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x1f0]
push eax
lea eax, [ebp - 0x564]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x1dc]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x406f26
push eax
push dword [ebp - 0x1f0]
lea eax, [ebp - 0x1f0]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x1e0], 0
mov dword [ebp - 0x1dc], 0xf
mov byte [ebp - 0x1f0], 0
jb 0x406f72
test ecx, ecx
je 0x406f72
test ebx, ebx
mov dword [esi + 0x10c], 0x3b9e7768
lea eax, [esi + 0x10c]
cmove ebx, eax
test edi, edi
je 0x406f69
mov dword [edi], eax
lea edi, [esi + 0x110]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x310]
push 0x1c
push str.VK_KHR_buffer_device_address
mov dword [ebp - 0x310], eax
mov dword [ebp - 0x30c], eax
mov dword [ebp - 0x308], eax
mov dword [ebp - 0x304], eax
mov dword [ebp - 0x300], eax
mov dword [ebp - 0x2fc], eax
call fcn.004011f0
cmp dword [ebp - 0x2fc], 0xf
lea eax, [ebp - 0x310]
push dword [ebp - 0x300]
cmova eax, dword [ebp - 0x310]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x310]
push eax
lea eax, [ebp - 0x55c]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x2fc]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x407013
push eax
push dword [ebp - 0x310]
lea eax, [ebp - 0x310]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x300], 0
mov dword [ebp - 0x2fc], 0xf
mov byte [ebp - 0x310], 0
jb 0x40705f
test ecx, ecx
je 0x40705f
test ebx, ebx
mov dword [esi + 0x118], 0x3b9eb5e8
lea eax, [esi + 0x118]
cmove ebx, eax
test edi, edi
je 0x407056
mov dword [edi], eax
lea edi, [esi + 0x11c]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x2f8]
push 0x13
push str.VK_KHR_shader_clock
mov dword [ebp - 0x2f8], eax
mov dword [ebp - 0x2f4], eax
mov dword [ebp - 0x2f0], eax
mov dword [ebp - 0x2ec], eax
mov dword [ebp - 0x2e8], eax
mov dword [ebp - 0x2e4], eax
call fcn.004011f0
cmp dword [ebp - 0x2e4], 0xf
lea eax, [ebp - 0x2f8]
push dword [ebp - 0x2e8]
cmova eax, dword [ebp - 0x2f8]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x2f8]
push eax
lea eax, [ebp - 0x554]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x2e4]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x407100
push eax
push dword [ebp - 0x2f8]
lea eax, [ebp - 0x2f8]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0xf
mov byte [ebp - 0x2f8], 0
jb 0x40714c
test ecx, ecx
je 0x40714c
test ebx, ebx
mov dword [esi + 0x12c], 0x3b9d8d08
lea eax, [esi + 0x12c]
cmove ebx, eax
test edi, edi
je 0x407143
mov dword [edi], eax
lea edi, [esi + 0x130]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x2e0]
push 0x1c
push str.VK_KHR_fragment_shading_rate
mov dword [ebp - 0x2e0], eax
mov dword [ebp - 0x2dc], eax
mov dword [ebp - 0x2d8], eax
mov dword [ebp - 0x2d4], eax
mov dword [ebp - 0x2d0], eax
mov dword [ebp - 0x2cc], eax
call fcn.004011f0
cmp dword [ebp - 0x2cc], 0xf
lea eax, [ebp - 0x2e0]
push dword [ebp - 0x2d0]
cmova eax, dword [ebp - 0x2e0]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x2e0]
push eax
lea eax, [ebp - 0x54c]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x2cc]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x4071ed
push eax
push dword [ebp - 0x2e0]
lea eax, [ebp - 0x2e0]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0xf
mov byte [ebp - 0x2e0], 0
jb 0x407239
test ecx, ecx
je 0x407239
test ebx, ebx
mov dword [esi + 0x13c], 0x3b9e3cd3
lea eax, [esi + 0x13c]
cmove ebx, eax
test edi, edi
je 0x407230
mov dword [edi], eax
lea edi, [esi + 0x140]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x2c8]
push 0x1b
push str.VK_KHR_ray_tracing_pipeline
mov dword [ebp - 0x2c8], eax
mov dword [ebp - 0x2c4], eax
mov dword [ebp - 0x2c0], eax
mov dword [ebp - 0x2bc], eax
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x2b4], eax
call fcn.004011f0
cmp dword [ebp - 0x2b4], 0xf
lea eax, [ebp - 0x2c8]
push dword [ebp - 0x2b8]
cmova eax, dword [ebp - 0x2c8]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x2c8]
push eax
lea eax, [ebp - 0x544]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x2b4]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x4072da
push eax
push dword [ebp - 0x2c8]
lea eax, [ebp - 0x2c8]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x2b8], 0
mov dword [ebp - 0x2b4], 0xf
mov byte [ebp - 0x2c8], 0
jb 0x407326
test ecx, ecx
je 0x407326
test ebx, ebx
mov dword [esi + 0x15c], 0x3ba01578
lea eax, [esi + 0x15c]
cmove ebx, eax
test edi, edi
je 0x40731d
mov dword [edi], eax
lea edi, [esi + 0x160]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x1d8]
push 0x1d
push str.VK_KHR_acceleration_structure
mov dword [ebp - 0x1d8], eax
mov dword [ebp - 0x1d4], eax
mov dword [ebp - 0x1d0], eax
mov dword [ebp - 0x1cc], eax
mov dword [ebp - 0x1c8], eax
mov dword [ebp - 0x1c4], eax
call fcn.004011f0
cmp dword [ebp - 0x1c4], 0xf
lea eax, [ebp - 0x1d8]
push dword [ebp - 0x1c8]
cmova eax, dword [ebp - 0x1d8]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x1d8]
push eax
lea eax, [ebp - 0x53c]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x1c4]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x4073c7
push eax
push dword [ebp - 0x1d8]
lea eax, [ebp - 0x1d8]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x1c8], 0
mov dword [ebp - 0x1c4], 0xf
mov byte [ebp - 0x1d8], 0
jb 0x407413
test ecx, ecx
je 0x407413
test ebx, ebx
mov dword [esi + 0x178], 0x3b9d13fd
lea eax, [esi + 0x178]
cmove ebx, eax
test edi, edi
je 0x40740a
mov dword [edi], eax
lea edi, [esi + 0x17c]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x3d0]
push 0x10
push str.VK_KHR_ray_query
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x3cc], eax
mov dword [ebp - 0x3c8], eax
mov dword [ebp - 0x3c4], eax
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x3bc], eax
call fcn.004011f0
cmp dword [ebp - 0x3bc], 0xf
lea eax, [ebp - 0x3d0]
push dword [ebp - 0x3c0]
cmova eax, dword [ebp - 0x3d0]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x3d0]
push eax
lea eax, [ebp - 0x534]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x3bc]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x4074b4
push eax
push dword [ebp - 0x3d0]
lea eax, [ebp - 0x3d0]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x3c0], 0
mov dword [ebp - 0x3bc], 0xf
mov byte [ebp - 0x3d0], 0
jb 0x407500
test ecx, ecx
je 0x407500
test ebx, ebx
mov dword [esi + 0x150], 0x3ba0196d
lea eax, [esi + 0x150]
cmove ebx, eax
test edi, edi
je 0x4074f7
mov dword [edi], eax
lea edi, [esi + 0x154]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x3b8]
push 0x27
push str.VK_KHR_workgroup_memory_explicit_layout
mov dword [ebp - 0x3b8], eax
mov dword [ebp - 0x3b4], eax
mov dword [ebp - 0x3b0], eax
mov dword [ebp - 0x3ac], eax
mov dword [ebp - 0x3a8], eax
mov dword [ebp - 0x3a4], eax
call fcn.004011f0
cmp dword [ebp - 0x3a4], 0xf
lea eax, [ebp - 0x3b8]
push dword [ebp - 0x3a8]
cmova eax, dword [ebp - 0x3b8]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x3b8]
push eax
lea eax, [ebp - 0x52c]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x3a4]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x4075a1
push eax
push dword [ebp - 0x3b8]
lea eax, [ebp - 0x3b8]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x3a8], 0
mov dword [ebp - 0x3a4], 0xf
mov byte [ebp - 0x3b8], 0
jb 0x4075ed
test ecx, ecx
je 0x4075ed
test ebx, ebx
mov dword [esi + 0x194], 0x3b9fea80
lea eax, [esi + 0x194]
cmove ebx, eax
test edi, edi
je 0x4075e4
mov dword [edi], eax
lea edi, [esi + 0x198]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x474]
push 0x21
push str.VK_KHR_shader_integer_dot_product
mov dword [ebp - 0x474], eax
mov dword [ebp - 0x470], eax
mov dword [ebp - 0x46c], eax
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x464], eax
mov dword [ebp - 0x460], eax
call fcn.004011f0
lea eax, [ebp - 0x474]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x474]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x40769b
cmp dword [ebp + 0x14], 0
je 0x40769b
test ebx, ebx
mov dword [esi + 0x1ac], 0x3b9f0fc0
lea eax, [esi + 0x1ac]
cmove ebx, eax
test edi, edi
je 0x40766c
mov dword [edi], eax
lea edi, [esi + 0x1b0]
push str.VK_KHR_synchronization2
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x4076c8
push str.VK_KHR_synchronization2
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x407718
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407718
lea eax, [esi + 0x1b8]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9f9497
cmovne ebx, ecx
test edi, edi
je 0x4076e9
mov dword [edi], eax
lea edi, [esi + 0x1bc]
push str.VK_KHR_dynamic_rendering
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407745
push str.VK_KHR_dynamic_rendering
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x40776f
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x40776f
lea eax, [esi + 0x1c4]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9b75e3
cmovne ebx, ecx
test edi, edi
je 0x407766
mov dword [edi], eax
lea edi, [esi + 0x1c8]
mov dword [ebp - 0x10], edi
xor eax, eax
lea ecx, [ebp - 0x45c]
push 0x27
push str.VK_KHR_zero_initialize_workgroup_memory
mov dword [ebp - 0x45c], eax
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x454], eax
mov dword [ebp - 0x450], eax
mov dword [ebp - 0x44c], eax
mov dword [ebp - 0x448], eax
call fcn.004011f0
lea eax, [ebp - 0x45c]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x45c]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x40781d
cmp dword [ebp + 0x14], 0
je 0x40781d
test ebx, ebx
mov dword [esi + 0x1e8], 0x3b9fbf88
lea eax, [esi + 0x1e8]
cmove ebx, eax
test edi, edi
je 0x4077ee
mov dword [edi], eax
lea edi, [esi + 0x1ec]
push str.VK_EXT_transform_feedback
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x40784a
push str.VK_EXT_transform_feedback
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x40789a
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x40789a
lea eax, [esi + 0x1f4]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9b3760
cmovne ebx, ecx
test edi, edi
je 0x40786b
mov dword [edi], eax
lea edi, [esi + 0x1f8]
push str.VK_EXT_depth_clip_enable
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x4078c7
push str.VK_EXT_depth_clip_enable
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x407917
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407917
lea eax, [esi + 0x204]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9c5870
cmovne ebx, ecx
test edi, edi
je 0x4078e8
mov dword [edi], eax
lea edi, [esi + 0x208]
push str.VK_EXT_inline_uniform_block
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407944
push str.VK_EXT_inline_uniform_block
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x407994
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407994
lea eax, [esi + 0x210]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9ce510
cmovne ebx, ecx
test edi, edi
je 0x407965
mov dword [edi], eax
lea edi, [esi + 0x214]
push str.VK_EXT_blend_operation_advanced
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x4079c1
push str.VK_EXT_blend_operation_advanced
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x4079eb
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x4079eb
lea eax, [esi + 0x220]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9d0c20
cmovne ebx, ecx
test edi, edi
je 0x4079e2
mov dword [edi], eax
lea edi, [esi + 0x224]
mov dword [ebp - 0x10], edi
push str.VK_KHR_vertex_attribute_divisor
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
mov esi, eax
lea ecx, [ebp - 0x28]
test esi, esi
setne byte [ebp + 0x17]
call fcn.00401760
test esi, esi
jne 0x407a3f
push str.VK_EXT_vertex_attribute_divisor
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
test eax, eax
lea ecx, [ebp - 0x28]
setne byte [ebp + 0x17]
call fcn.00401760
mov esi, dword [ebp + 0xc]
cmp esi, 0x400000
jb 0x407a99
cmp byte [ebp + 0x17], 0
je 0x407a99
mov esi, dword [ebp + 8]
test ebx, ebx
lea eax, [esi + 0x22c]
cmove ebx, eax
mov dword [eax], 0x3b9db032
test edi, edi
je 0x407a6a
mov dword [edi], eax
lea edi, [esi + 0x230]
push str.VK_EXT_shader_demote_to_helper_invocation
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407ac8
push str.VK_EXT_shader_demote_to_helper_invocation
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407b1b
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407b18
lea eax, [esi + 0x23c]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9f0020
cmovne ebx, ecx
test edi, edi
je 0x407ae9
mov dword [edi], eax
lea edi, [esi + 0x240]
push str.VK_EXT_fragment_shader_interlock
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407b4a
mov esi, dword [ebp + 0xc]
push str.VK_EXT_fragment_shader_interlock
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407b9d
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407b9a
lea eax, [esi + 0x248]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9e9e78
cmovne ebx, ecx
test edi, edi
je 0x407b6b
mov dword [edi], eax
lea edi, [esi + 0x24c]
push str.VK_EXT_fragment_density_map
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407bcc
mov esi, dword [ebp + 0xc]
push str.VK_EXT_fragment_density_map
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407c1f
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407c1c
lea eax, [esi + 0x25c]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9e1d90
cmovne ebx, ecx
test edi, edi
je 0x407bed
mov dword [edi], eax
lea edi, [esi + 0x260]
push str.VK_EXT_buffer_device_address
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407c4e
mov esi, dword [ebp + 0xc]
push str.VK_EXT_buffer_device_address
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407c78
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407c78
lea eax, [esi + 0x270]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9e8320
cmovne ebx, ecx
test edi, edi
je 0x407c6f
mov dword [edi], eax
lea edi, [esi + 0x274]
mov dword [ebp - 0x10], edi
push str.VK_KHR_line_rasterization
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
mov esi, eax
lea ecx, [ebp - 0x28]
test esi, esi
setne byte [ebp + 0x17]
call fcn.00401760
test esi, esi
jne 0x407ccc
push str.VK_EXT_line_rasterization
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
test eax, eax
lea ecx, [ebp - 0x28]
setne byte [ebp + 0x17]
call fcn.00401760
mov esi, dword [ebp + 0xc]
cmp esi, 0x400000
jb 0x407d26
cmp byte [ebp + 0x17], 0
je 0x407d26
mov esi, dword [ebp + 8]
test ebx, ebx
lea eax, [esi + 0x284]
cmove ebx, eax
mov dword [eax], 0x3b9ebdb8
test edi, edi
je 0x407cf7
mov dword [edi], eax
lea edi, [esi + 0x288]
push str.VK_EXT_subgroup_size_control
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407d55
push str.VK_EXT_subgroup_size_control
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407da8
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407da5
lea eax, [esi + 0x2a4]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9e38ea
cmovne ebx, ecx
test edi, edi
je 0x407d76
mov dword [edi], eax
lea edi, [esi + 0x2a8]
push str.VK_EXT_extended_dynamic_state
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407dd7
mov esi, dword [ebp + 0xc]
push str.VK_EXT_extended_dynamic_state
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407e2a
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407e27
lea eax, [esi + 0x2b4]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9edcf8
cmovne ebx, ecx
test edi, edi
je 0x407df8
mov dword [edi], eax
lea edi, [esi + 0x2b8]
push str.VK_EXT_extended_dynamic_state2
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407e59
mov esi, dword [ebp + 0xc]
push str.VK_EXT_extended_dynamic_state2
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407eac
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407ea9
lea eax, [esi + 0x2c0]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3ba08aa8
cmovne ebx, ecx
test edi, edi
je 0x407e7a
mov dword [edi], eax
lea edi, [esi + 0x2c4]
push str.VK_EXT_extended_dynamic_state3
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407edb
mov esi, dword [ebp + 0xc]
push str.VK_EXT_extended_dynamic_state3
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407f2e
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407f2b
lea eax, [esi + 0x2d4]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3ba1bb58
cmovne ebx, ecx
test edi, edi
je 0x407efc
mov dword [edi], eax
lea edi, [esi + 0x2d8]
push str.VK_EXT_color_write_enable
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407f5d
mov esi, dword [ebp + 0xc]
push str.VK_EXT_color_write_enable
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x407fb0
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x407fad
lea eax, [esi + 0x364]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3ba09a48
cmovne ebx, ecx
test edi, edi
je 0x407f7e
mov dword [edi], eax
lea edi, [esi + 0x368]
push str.VK_EXT_vertex_input_dynamic_state
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x407fdf
mov esi, dword [ebp + 0xc]
push str.VK_EXT_vertex_input_dynamic_state
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x408032
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x40802f
lea eax, [esi + 0x358]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3ba02900
cmovne ebx, ecx
test edi, edi
je 0x408000
mov dword [edi], eax
lea edi, [esi + 0x35c]
push str.VK_EXT_shader_image_atomic_int64
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x408061
mov esi, dword [ebp + 0xc]
push str.VK_EXT_shader_image_atomic_int64
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x4080b4
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x4080b1
lea eax, [esi + 0x370]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9e5c10
cmovne ebx, ecx
test edi, edi
je 0x408082
mov dword [edi], eax
lea edi, [esi + 0x374]
push str.VK_EXT_shader_atomic_float
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x4080e3
mov esi, dword [ebp + 0xc]
push str.VK_EXT_shader_atomic_float
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x408136
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x408133
lea eax, [esi + 0x380]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9ec1a0
cmovne ebx, ecx
test edi, edi
je 0x408104
mov dword [edi], eax
lea edi, [esi + 0x384]
push str.VK_EXT_shader_atomic_float2
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x408165
mov esi, dword [ebp + 0xc]
push str.VK_EXT_shader_atomic_float2
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x4081b8
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x4081b5
lea eax, [esi + 0x3b8]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9ef468
cmovne ebx, ecx
test edi, edi
je 0x408186
mov dword [edi], eax
lea edi, [esi + 0x3bc]
push str.VK_EXT_provoking_vertex
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x4081e7
mov esi, dword [ebp + 0xc]
push str.VK_EXT_provoking_vertex
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x40823a
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x408237
lea eax, [esi + 0x3f0]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9eaa30
cmovne ebx, ecx
test edi, edi
je 0x408208
mov dword [edi], eax
lea edi, [esi + 0x3f4]
push str.VK_EXT_custom_border_color
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x408269
mov esi, dword [ebp + 0xc]
push str.VK_EXT_custom_border_color
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x408293
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x408293
lea eax, [esi + 0x400]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9f2b1a
cmovne ebx, ecx
test edi, edi
je 0x40828a
mov dword [edi], eax
lea edi, [esi + 0x404]
mov dword [ebp - 0x10], edi
push str.VK_KHR_compute_shader_derivatives
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
mov esi, eax
lea ecx, [ebp - 0x28]
test esi, esi
setne byte [ebp + 0x17]
call fcn.00401760
test esi, esi
jne 0x4082e7
push str.VK_NV_compute_shader_derivatives
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
test eax, eax
lea ecx, [ebp - 0x28]
setne byte [ebp + 0x17]
call fcn.00401760
mov esi, dword [ebp + 0xc]
cmp esi, 0x400000
jb 0x408341
cmp byte [ebp + 0x17], 0
je 0x408341
mov esi, dword [ebp + 8]
test ebx, ebx
lea eax, [esi + 0x410]
cmove ebx, eax
mov dword [eax], 0x3b9ddb28
test edi, edi
je 0x408312
mov dword [edi], eax
lea edi, [esi + 0x414]
push str.VK_KHR_fragment_shader_barycentric
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x10], edi
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x408370
push str.VK_KHR_fragment_shader_barycentric
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp esi, 0x400000
jb 0x40839a
mov esi, dword [ebp + 8]
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x40839a
lea eax, [esi + 0x420]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3b9de2f8
cmovne ebx, ecx
test edi, edi
je 0x408391
mov dword [edi], eax
lea eax, [esi + 0x424]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x3ec], eax
mov dword [ebp - 0x3e8], eax
mov dword [ebp - 0x3e4], eax
mov dword [ebp - 0x3e0], eax
mov dword [ebp - 0x3dc], eax
mov dword [ebp - 0x3d8], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x3ec]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov esi, str.VK_NV_shader_image_footprint
mov dword [ebp - 0x3d8], ecx
mov edi, eax
mov dword [ebp - 0x3ec], eax
mov ecx, 7
mov dword [ebp - 0x3dc], 0x1c
add esp, 8
rep movsd dword es:[edi], dword [esi]
mov byte [eax + 0x1c], 0
lea esi, [ebp - 0x3ec]
cmp dword [ebp - 0x3d8], 0xf
mov edx, 0x811c9dc5
mov edi, dword [ebp - 0x3ec]
cmova esi, edi
xor ecx, ecx
cmp dword [ebp - 0x3dc], ecx
jbe 0x408445
lea ebx, [ebx]
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [ebp - 0x3dc]
jb 0x408430
push edx
lea eax, [ebp - 0x3ec]
push eax
lea eax, [ebp - 0x524]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0x3d8]
cmp eax, 0xf
jbe 0x408495
lea ecx, [eax + 1]
mov eax, edi
cmp ecx, 0x1000
jb 0x40848b
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a671
push ecx
push edi
call fcn.004fa253
add esp, 8
cmp dword [ebp + 0xc], 0x400000
mov edi, dword [ebp + 8]
mov dword [ebp - 0x3dc], 0
mov dword [ebp - 0x3d8], 0xf
mov byte [ebp - 0x3ec], 0
jb 0x4084e5
test esi, esi
je 0x4084e5
mov eax, dword [ebp - 0x10]
lea ecx, [edi + 0x42c]
test ebx, ebx
mov dword [ecx], 0x3b9de6e0
cmove ebx, ecx
test eax, eax
je 0x4084da
mov dword [eax], ecx
lea esi, [edi + 0x430]
mov dword [ebp - 0x10], esi
jmp 0x4084e8
mov esi, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x144], eax
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x134], eax
mov dword [ebp - 0x130], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x144]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edx, eax
mov dword [ebp - 0x130], ecx
add esp, 8
mov ecx, dword [str.VK_NV_shading_rate_image]
mov dword [ebp - 0x144], edx
mov dword [ebp - 0x134], 0x18
mov dword [edx], ecx
mov ecx, dword [0x52e0ec]
mov dword [edx + 4], ecx
mov eax, dword [0x52e0f0]
mov dword [edx + 8], eax
mov eax, dword [0x52e0f4]
mov dword [edx + 0xc], eax
mov eax, dword [0x52e0f8]
mov dword [edx + 0x10], eax
mov eax, dword [0x52e0fc]
mov dword [edx + 0x14], eax
lea eax, [ebp - 0x144]
mov byte [edx + 0x18], 0
mov edx, 0x811c9dc5
cmp dword [ebp - 0x130], 0xf
cmova eax, dword [ebp - 0x144]
xor ecx, ecx
cmp dword [ebp - 0x134], ecx
jbe 0x4085b8
mov esi, eax
lea ecx, [ecx]
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [ebp - 0x134]
jb 0x4085a0
mov esi, dword [ebp - 0x10]
push edx
lea eax, [ebp - 0x144]
push eax
lea eax, [ebp - 0x51c]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x130]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x408614
mov edx, dword [ebp - 0x144]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x408607
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x40a671
push ecx
push edx
call fcn.004fa253
mov ecx, dword [ebp + 0x14]
add esp, 8
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0xf
mov byte [ebp - 0x144], 0
jb 0x408660
test ecx, ecx
je 0x408660
test ebx, ebx
mov dword [edi + 0x438], 0x3b9d4aa1
lea eax, [edi + 0x438]
cmove ebx, eax
test esi, esi
je 0x408657
mov dword [esi], eax
lea esi, [edi + 0x43c]
mov dword [ebp - 0x10], esi
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x7c], eax
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], eax
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x6c], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x80]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edx, eax
mov dword [ebp - 0x6c], ecx
add esp, 8
mov ecx, dword [str.VK_NV_cooperative_matrix]
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x70], 0x18
mov dword [edx], ecx
mov ecx, dword [0x52e108]
mov dword [edx + 4], ecx
mov eax, dword [0x52e10c]
mov dword [edx + 8], eax
mov eax, dword [0x52e110]
mov dword [edx + 0xc], eax
mov eax, dword [0x52e114]
mov dword [edx + 0x10], eax
mov eax, dword [0x52e118]
mov dword [edx + 0x14], eax
lea eax, [ebp - 0x80]
mov byte [edx + 0x18], 0
mov edx, 0x811c9dc5
cmp dword [ebp - 0x6c], 0xf
cmova eax, dword [ebp - 0x80]
xor ecx, ecx
cmp dword [ebp - 0x70], ecx
jbe 0x408705
mov esi, eax
jmp 0x4086f0
movzx eax, byte [esi + ecx]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [ebp - 0x70]
jb 0x4086f0
mov esi, dword [ebp - 0x10]
push edx
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x514]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x6c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x40873a
push eax
push dword [ebp - 0x80]
lea eax, [ebp - 0x80]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
jb 0x40877d
test ecx, ecx
je 0x40877d
test ebx, ebx
mov dword [edi + 0x448], 0x3b9e96a8
lea eax, [edi + 0x448]
cmove ebx, eax
test esi, esi
je 0x408774
mov dword [esi], eax
lea esi, [edi + 0x44c]
mov dword [ebp - 0x10], esi
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edx, eax
mov dword [ebp - 0x50], ecx
add esp, 8
mov ecx, dword [str.VK_NV_shader_sm_builtins]
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x54], 0x18
mov dword [edx], ecx
mov ecx, dword [0x52d574]
mov dword [edx + 4], ecx
mov eax, dword [0x52d578]
mov dword [edx + 8], eax
mov eax, dword [0x52d57c]
mov dword [edx + 0xc], eax
mov eax, dword [0x52d580]
mov dword [edx + 0x10], eax
mov eax, dword [0x52d584]
mov dword [edx + 0x14], eax
lea eax, [ebp - 0x64]
mov byte [edx + 0x18], 0
mov edx, 0x811c9dc5
cmp dword [ebp - 0x50], 0xf
cmova eax, dword [ebp - 0x64]
xor ecx, ecx
cmp dword [ebp - 0x54], ecx
jbe 0x40881d
mov esi, eax
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, dword [ebp - 0x54]
jb 0x408808
mov esi, dword [ebp - 0x10]
push edx
lea eax, [ebp - 0x64]
push eax
lea eax, [ebp - 0x50c]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x50]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x408852
push eax
push dword [ebp - 0x64]
lea eax, [ebp - 0x64]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x64], 0
jb 0x408895
test ecx, ecx
je 0x408895
test ebx, ebx
mov dword [edi + 0x458], 0x3b9d2390
lea eax, [edi + 0x458]
cmove ebx, eax
test esi, esi
je 0x40888c
mov dword [esi], eax
lea eax, [edi + 0x45c]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp + 0x14], 0x2f
mov dword [ebp - 0x110], eax
mov dword [ebp - 0x10c], eax
mov dword [ebp - 0x108], eax
mov dword [ebp - 0x104], eax
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xfc], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov esi, str.VK_INTEL_shader_integer_functions2
mov dword [ebp - 0xfc], ecx
mov edi, eax
mov dword [ebp - 0x110], eax
mov ecx, 8
mov dword [ebp - 0x100], 0x22
add esp, 8
rep movsd dword es:[edi], dword [esi]
mov edx, 0x811c9dc5
movsw word es:[edi], word [esi]
mov byte [eax + 0x22], 0
lea esi, [ebp - 0x110]
cmp dword [ebp - 0xfc], 0xf
mov edi, dword [ebp - 0x100]
cmova esi, dword [ebp - 0x110]
xor ecx, ecx
test edi, edi
je 0x408938
movzx eax, byte [ecx + esi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, edi
jb 0x408927
push edx
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x504]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404870
mov esi, dword [eax + 4]
mov eax, dword [ebp - 0xfc]
cmp eax, 0xf
jbe 0x408973
push eax
push dword [ebp - 0x110]
lea eax, [ebp - 0x110]
push eax
call fcn.00405a60
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x100], 0
mov dword [ebp - 0xfc], 0xf
mov byte [ebp - 0x110], 0
jb 0x4089c1
test esi, esi
je 0x4089c1
mov edx, dword [ebp + 8]
test ebx, ebx
mov eax, dword [ebp - 0x10]
lea ecx, [edx + 0x464]
cmove ebx, ecx
mov dword [ecx], 0x3b9dfa68
test eax, eax
je 0x4089b8
mov dword [eax], ecx
lea eax, [edx + 0x468]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x178], eax
mov dword [ebp - 0x174], eax
mov dword [ebp - 0x170], eax
mov dword [ebp - 0x16c], eax
mov dword [ebp - 0x168], eax
mov dword [ebp - 0x164], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x178]
push eax
call fcn.00401190
mov edx, dword [ebp + 0x14]
mov edi, eax
mov dword [ebp - 0x178], eax
mov ecx, 7
mov dword [ebp - 0x168], 0x1e
mov esi, str.VK_EXT_mutable_descriptor_type
mov dword [ebp - 0x164], edx
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
mov byte [eax + 0x1e], 0
lea eax, [ebp - 0x178]
mov esi, dword [ebp - 0x164]
cmp esi, 0xf
push dword [ebp - 0x168]
cmova eax, dword [ebp - 0x178]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0x14
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x178]
push eax
lea eax, [ebp - 0x4fc]
push eax
call fcn.00404870
mov edi, dword [eax + 4]
test edi, edi
setne byte [ebp + 0x17]
cmp esi, 0xf
jbe 0x408a90
push esi
push dword [ebp - 0x178]
lea eax, [ebp - 0x178]
push eax
call fcn.00405a60
add esp, 0xc
mov dword [ebp - 0x168], 0
mov dword [ebp - 0x164], 0xf
mov byte [ebp - 0x178], 0
test edi, edi
jne 0x408ad6
push str.VK_VALVE_mutable_descriptor_type
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
test eax, eax
lea ecx, [ebp - 0x28]
setne byte [ebp + 0x17]
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
mov edi, dword [ebp + 8]
jb 0x408b0d
cmp byte [ebp + 0x17], 0
je 0x408b0d
mov eax, dword [ebp - 0x10]
lea ecx, [edi + 0x470]
test ebx, ebx
mov dword [ecx], 0x3ba02518
cmove ebx, ecx
test eax, eax
je 0x408b02
mov dword [eax], ecx
lea esi, [edi + 0x474]
mov dword [ebp - 0x10], esi
jmp 0x408b10
mov esi, dword [ebp - 0x10]
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0xe0], eax
mov dword [ebp - 0xdc], eax
mov dword [ebp - 0xd8], eax
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xcc], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0xe0]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edx, eax
mov dword [ebp - 0xcc], ecx
mov ecx, dword [str.VK_EXT_robustness2]
mov dword [ebp - 0xe0], edx
mov dword [ebp - 0xd0], 0x12
mov dword [edx], ecx
mov ecx, dword [0x52e18c]
mov dword [edx + 4], ecx
mov eax, dword [0x52e190]
mov dword [edx + 8], eax
mov eax, dword [0x52e194]
mov dword [edx + 0xc], eax
mov ax, word [0x52e198]
mov word [edx + 0x10], ax
lea eax, [ebp - 0xe0]
mov byte [edx + 0x12], 0
cmp dword [ebp - 0xcc], 0xf
push dword [ebp - 0xd0]
cmova eax, dword [ebp - 0xe0]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0x14
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0xe0]
push eax
lea eax, [ebp - 0x4f4]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0xcc]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x408c00
push eax
push dword [ebp - 0xe0]
lea eax, [ebp - 0xe0]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
jb 0x408c4c
test ecx, ecx
je 0x408c4c
test ebx, ebx
mov dword [edi + 0x47c], 0x3b9f2730
lea eax, [edi + 0x47c]
cmove ebx, eax
test esi, esi
je 0x408c43
mov dword [esi], eax
lea eax, [edi + 0x480]
mov dword [ebp - 0x10], eax
xor eax, eax
mov dword [ebp + 0x14], 0x1f
mov dword [ebp - 0x1a8], eax
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1a0], eax
mov dword [ebp - 0x19c], eax
mov dword [ebp - 0x198], eax
mov dword [ebp - 0x194], eax
lea eax, [ebp + 0x14]
push eax
lea eax, [ebp - 0x1a8]
push eax
call fcn.00401190
mov ecx, dword [ebp + 0x14]
mov edi, eax
mov dword [ebp - 0x194], ecx
mov esi, str.VK_EXT_image_robustness
mov dword [ebp - 0x1a8], eax
mov ecx, 5
mov dword [ebp - 0x198], 0x17
rep movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
mov byte [eax + 0x17], 0
lea eax, [ebp - 0x1a8]
mov esi, dword [ebp - 0x194]
cmp esi, 0xf
push dword [ebp - 0x198]
mov edi, dword [ebp - 0x1a8]
cmova eax, edi
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0x14
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x1a8]
push eax
lea eax, [ebp - 0x4ec]
push eax
call fcn.00404870
mov eax, dword [eax + 4]
mov dword [ebp + 0x14], eax
cmp esi, 0xf
jbe 0x408d19
push esi
lea eax, [ebp - 0x1a8]
push edi
push eax
call fcn.00405a60
mov eax, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov esi, dword [ebp + 8]
mov dword [ebp - 0x198], 0
mov dword [ebp - 0x194], 0xf
mov byte [ebp - 0x1a8], 0
jb 0x408d66
test eax, eax
je 0x408d66
mov eax, dword [ebp - 0x10]
lea ecx, [esi + 0x490]
test ebx, ebx
mov dword [ecx], 0x3b9fe698
cmove ebx, ecx
test eax, eax
je 0x408d5e
mov dword [eax], ecx
lea edi, [esi + 0x494]
jmp 0x408d69
mov edi, dword [ebp - 0x10]
xor eax, eax
lea ecx, [ebp - 0x3a0]
push 0x20
push str.VK_EXT_graphics_pipeline_library
mov dword [ebp - 0x3a0], eax
mov dword [ebp - 0x39c], eax
mov dword [ebp - 0x398], eax
mov dword [ebp - 0x394], eax
mov dword [ebp - 0x390], eax
mov dword [ebp - 0x38c], eax
call fcn.004011f0
cmp dword [ebp - 0x38c], 0xf
lea eax, [ebp - 0x3a0]
push dword [ebp - 0x390]
cmova eax, dword [ebp - 0x3a0]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x3a0]
push eax
lea eax, [ebp - 0x4e4]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x38c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x408e0a
push eax
push dword [ebp - 0x3a0]
lea eax, [ebp - 0x3a0]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x390], 0
mov dword [ebp - 0x38c], 0xf
mov byte [ebp - 0x3a0], 0
jb 0x408e53
test ecx, ecx
je 0x408e53
test ebx, ebx
mov dword [esi + 0x49c], 0x3b9fac00
lea eax, [esi + 0x49c]
cmove ebx, eax
test edi, edi
je 0x408e4d
mov dword [edi], eax
lea edi, [esi + 0x4a0]
xor eax, eax
lea ecx, [ebp - 0x358]
push 0x21
push str.VK_NV_fragment_shading_rate_enums
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x354], eax
mov dword [ebp - 0x350], eax
mov dword [ebp - 0x34c], eax
mov dword [ebp - 0x348], eax
mov dword [ebp - 0x344], eax
call fcn.004011f0
cmp dword [ebp - 0x344], 0xf
lea eax, [ebp - 0x358]
push dword [ebp - 0x348]
cmova eax, dword [ebp - 0x358]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x358]
push eax
lea eax, [ebp - 0x4dc]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x344]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x408ef4
push eax
push dword [ebp - 0x358]
lea eax, [ebp - 0x358]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x348], 0
mov dword [ebp - 0x344], 0xf
mov byte [ebp - 0x358], 0
jb 0x408f3d
test ecx, ecx
je 0x408f3d
test ebx, ebx
mov dword [esi + 0x4a8], 0x3b9fc371
lea eax, [esi + 0x4a8]
cmove ebx, eax
test edi, edi
je 0x408f37
mov dword [edi], eax
lea edi, [esi + 0x4ac]
xor eax, eax
lea ecx, [ebp - 0x388]
push 0x19
push str.VK_EXT_depth_clip_control
mov dword [ebp - 0x388], eax
mov dword [ebp - 0x384], eax
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x37c], eax
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x374], eax
call fcn.004011f0
cmp dword [ebp - 0x374], 0xf
lea eax, [ebp - 0x388]
push dword [ebp - 0x378]
cmova eax, dword [ebp - 0x388]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x388]
push eax
lea eax, [ebp - 0x4cc]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x374]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x408fde
push eax
push dword [ebp - 0x388]
lea eax, [ebp - 0x388]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x378], 0
mov dword [ebp - 0x374], 0xf
mov byte [ebp - 0x388], 0
jb 0x409027
test ecx, ecx
je 0x409027
test ebx, ebx
mov dword [esi + 0x4bc], 0x3ba034b8
lea eax, [esi + 0x4bc]
cmove ebx, eax
test edi, edi
je 0x409021
mov dword [edi], eax
lea edi, [esi + 0x4c0]
xor eax, eax
lea ecx, [ebp - 0x1c0]
push 0x11
push str.VK_NV_mesh_shader
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1bc], eax
mov dword [ebp - 0x1b8], eax
mov dword [ebp - 0x1b4], eax
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x1ac], eax
call fcn.004011f0
cmp dword [ebp - 0x1ac], 0xf
lea eax, [ebp - 0x1c0]
push dword [ebp - 0x1b0]
cmova eax, dword [ebp - 0x1c0]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x1c0]
push eax
lea eax, [ebp - 0x4c4]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x1ac]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x4090c8
push eax
push dword [ebp - 0x1c0]
lea eax, [ebp - 0x1c0]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x1b0], 0
mov dword [ebp - 0x1ac], 0xf
mov byte [ebp - 0x1c0], 0
jb 0x409111
test ecx, ecx
je 0x409111
test ebx, ebx
mov dword [esi + 0x4c8], 0x3b9ddf10
lea eax, [esi + 0x4c8]
cmove ebx, eax
test edi, edi
je 0x40910b
mov dword [edi], eax
lea edi, [esi + 0x4cc]
xor eax, eax
lea ecx, [ebp - 0x2b0]
push 0x12
push str.VK_EXT_mesh_shader
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], eax
mov dword [ebp - 0x2a8], eax
mov dword [ebp - 0x2a4], eax
mov dword [ebp - 0x2a0], eax
mov dword [ebp - 0x29c], eax
call fcn.004011f0
cmp dword [ebp - 0x29c], 0xf
lea eax, [ebp - 0x2b0]
push dword [ebp - 0x2a0]
cmova eax, dword [ebp - 0x2b0]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x2b0]
push eax
lea eax, [ebp - 0x4d4]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x29c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x4091b2
push eax
push dword [ebp - 0x2b0]
lea eax, [ebp - 0x2b0]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0xf
mov byte [ebp - 0x2b0], 0
jb 0x4091fb
test ecx, ecx
je 0x4091fb
test ebx, ebx
mov dword [esi + 0x4d8], 0x3b9fcb40
lea eax, [esi + 0x4d8]
cmove ebx, eax
test edi, edi
je 0x4091f5
mov dword [edi], eax
lea edi, [esi + 0x4dc]
xor eax, eax
lea ecx, [ebp - 0x298]
push 0x18
push str.VK_EXT_descriptor_buffer
mov dword [ebp - 0x298], eax
mov dword [ebp - 0x294], eax
mov dword [ebp - 0x290], eax
mov dword [ebp - 0x28c], eax
mov dword [ebp - 0x288], eax
mov dword [ebp - 0x284], eax
call fcn.004011f0
cmp dword [ebp - 0x284], 0xf
lea eax, [ebp - 0x298]
push dword [ebp - 0x288]
cmova eax, dword [ebp - 0x298]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x298]
push eax
lea eax, [ebp - 0x4bc]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x284]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x40929c
push eax
push dword [ebp - 0x298]
lea eax, [ebp - 0x298]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], 0
jb 0x4092e5
test ecx, ecx
je 0x4092e5
test ebx, ebx
mov dword [esi + 0x4f4], 0x3b9f9c62
lea eax, [esi + 0x4f4]
cmove ebx, eax
test edi, edi
je 0x4092df
mov dword [edi], eax
lea edi, [esi + 0x4f8]
xor eax, eax
lea ecx, [ebp - 0x280]
push 0x1c
push str.VK_EXT_non_seamless_cube_map
mov dword [ebp - 0x280], eax
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x274], eax
mov dword [ebp - 0x270], eax
mov dword [ebp - 0x26c], eax
call fcn.004011f0
cmp dword [ebp - 0x26c], 0xf
lea eax, [ebp - 0x280]
push dword [ebp - 0x270]
cmova eax, dword [ebp - 0x280]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x280]
push eax
lea eax, [ebp - 0x4b4]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x26c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x409386
push eax
push dword [ebp - 0x280]
lea eax, [ebp - 0x280]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0xf
mov byte [ebp - 0x280], 0
jb 0x4093cf
test ecx, ecx
je 0x4093cf
test ebx, ebx
mov dword [esi + 0x50c], 0x3ba13a70
lea eax, [esi + 0x50c]
cmove ebx, eax
test edi, edi
je 0x4093c9
mov dword [edi], eax
lea edi, [esi + 0x510]
xor eax, eax
lea ecx, [ebp - 0x268]
push 0x26
push str.VK_EXT_attachment_feedback_loop_layout
mov dword [ebp - 0x268], eax
mov dword [ebp - 0x264], eax
mov dword [ebp - 0x260], eax
mov dword [ebp - 0x25c], eax
mov dword [ebp - 0x258], eax
mov dword [ebp - 0x254], eax
call fcn.004011f0
cmp dword [ebp - 0x254], 0xf
lea eax, [ebp - 0x268]
push dword [ebp - 0x258]
cmova eax, dword [ebp - 0x268]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x4ac]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x254]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x409470
push eax
push dword [ebp - 0x268]
lea eax, [ebp - 0x268]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x254], 0xf
mov byte [ebp - 0x268], 0
jb 0x4094b9
test ecx, ecx
je 0x4094b9
test ebx, ebx
mov dword [esi + 0x518], 0x3b9ff638
lea eax, [esi + 0x518]
cmove ebx, eax
test edi, edi
je 0x4094b3
mov dword [edi], eax
lea edi, [esi + 0x51c]
xor eax, eax
lea ecx, [ebp - 0x250]
push 0x13
push str.VK_KHR_maintenance4
mov dword [ebp - 0x250], eax
mov dword [ebp - 0x24c], eax
mov dword [ebp - 0x248], eax
mov dword [ebp - 0x244], eax
mov dword [ebp - 0x240], eax
mov dword [ebp - 0x23c], eax
call fcn.004011f0
cmp dword [ebp - 0x23c], 0xf
lea eax, [ebp - 0x250]
push dword [ebp - 0x240]
cmova eax, dword [ebp - 0x250]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x250]
push eax
lea eax, [ebp - 0x4a4]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x23c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x40955a
push eax
push dword [ebp - 0x250]
lea eax, [ebp - 0x250]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 0xf
mov byte [ebp - 0x250], 0
jb 0x4095a3
test ecx, ecx
je 0x4095a3
test ebx, ebx
mov dword [esi + 0x1d0], 0x3ba11748
lea eax, [esi + 0x1d0]
cmove ebx, eax
test edi, edi
je 0x40959d
mov dword [edi], eax
lea edi, [esi + 0x1d4]
xor eax, eax
lea ecx, [ebp - 0x238]
push 0x13
push str.VK_KHR_maintenance5
mov dword [ebp - 0x238], eax
mov dword [ebp - 0x234], eax
mov dword [ebp - 0x230], eax
mov dword [ebp - 0x22c], eax
mov dword [ebp - 0x228], eax
mov dword [ebp - 0x224], eax
call fcn.004011f0
cmp dword [ebp - 0x224], 0xf
lea eax, [ebp - 0x238]
push dword [ebp - 0x228]
cmova eax, dword [ebp - 0x238]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x238]
push eax
lea eax, [ebp - 0x49c]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x224]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x409644
push eax
push dword [ebp - 0x238]
lea eax, [ebp - 0x238]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x224], 0xf
mov byte [ebp - 0x238], 0
jb 0x40968d
test ecx, ecx
je 0x40968d
test ebx, ebx
mov dword [esi + 0x1dc], 0x3ba1f5f0
lea eax, [esi + 0x1dc]
cmove ebx, eax
test edi, edi
je 0x409687
mov dword [edi], eax
lea edi, [esi + 0x1e0]
xor eax, eax
lea ecx, [ebp - 0x220]
push 0x1f
push str.VK_EXT_shader_module_identifier
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x218], eax
mov dword [ebp - 0x214], eax
mov dword [ebp - 0x210], eax
mov dword [ebp - 0x20c], eax
call fcn.004011f0
cmp dword [ebp - 0x20c], 0xf
lea eax, [ebp - 0x220]
push dword [ebp - 0x210]
cmova eax, dword [ebp - 0x220]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x220]
push eax
lea eax, [ebp - 0x494]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x20c]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x40972e
push eax
push dword [ebp - 0x220]
lea eax, [ebp - 0x220]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x20c], 0xf
mov byte [ebp - 0x220], 0
jb 0x409777
test ecx, ecx
je 0x409777
test ebx, ebx
mov dword [esi + 0x524], 0x3ba1d6b0
lea eax, [esi + 0x524]
cmove ebx, eax
test edi, edi
je 0x409771
mov dword [edi], eax
lea edi, [esi + 0x528]
xor eax, eax
lea ecx, [ebp - 0x208]
push 0x1f
push str.VK_KHR_ray_tracing_maintenance1
mov dword [ebp - 0x208], eax
mov dword [ebp - 0x204], eax
mov dword [ebp - 0x200], eax
mov dword [ebp - 0x1fc], eax
mov dword [ebp - 0x1f8], eax
mov dword [ebp - 0x1f4], eax
call fcn.004011f0
cmp dword [ebp - 0x1f4], 0xf
lea eax, [ebp - 0x208]
push dword [ebp - 0x1f8]
cmova eax, dword [ebp - 0x208]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x208]
push eax
lea eax, [ebp - 0x58c]
push eax
call fcn.00404870
mov ecx, dword [eax + 4]
mov eax, dword [ebp - 0x1f4]
mov dword [ebp + 0x14], ecx
cmp eax, 0xf
jbe 0x409818
push eax
push dword [ebp - 0x208]
lea eax, [ebp - 0x208]
push eax
call fcn.00405a60
mov ecx, dword [ebp + 0x14]
add esp, 0xc
cmp dword [ebp + 0xc], 0x400000
mov dword [ebp - 0x1f8], 0
mov dword [ebp - 0x1f4], 0xf
mov byte [ebp - 0x208], 0
jb 0x409861
test ecx, ecx
je 0x409861
test ebx, ebx
mov dword [esi + 0x530], 0x3ba0add0
lea eax, [esi + 0x530]
cmove ebx, eax
test edi, edi
je 0x40985b
mov dword [edi], eax
lea edi, [esi + 0x534]
xor eax, eax
lea ecx, [ebp - 0x444]
push 0x1d
push str.VK_NV_ray_tracing_motion_blur
mov dword [ebp - 0x444], eax
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], eax
mov dword [ebp - 0x430], eax
call fcn.004011f0
cmp dword [ebp - 0x430], 0xf
lea eax, [ebp - 0x444]
push dword [ebp - 0x434]
cmova eax, dword [ebp - 0x444]
push eax
push 0x811c9dc5
call fcn.00405aa0
add esp, 0xc
lea ecx, [ebp - 0x48]
push eax
lea eax, [ebp - 0x444]
push eax
lea eax, [ebp - 0x57c]
push eax
call fcn.00404870
lea ecx, [ebp - 0x444]
mov eax, dword [eax + 4]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x40993f
cmp dword [ebp + 0x14], 0
je 0x40993f
test ebx, ebx
mov dword [esi + 0x540], 0x3b9fc759
lea eax, [esi + 0x540]
cmove ebx, eax
test edi, edi
je 0x409913
mov dword [edi], eax
push str.VK_QCOM_image_processing
lea ecx, [ebp - 0x28]
lea edi, [esi + 0x544]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x40996c
push str.VK_QCOM_image_processing
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x4099b9
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x4099b9
lea eax, [esi + 0x550]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3ba180c0
cmovne ebx, ecx
test edi, edi
je 0x40998d
mov dword [edi], eax
push str.VK_QCOM_image_processing2
lea ecx, [ebp - 0x28]
lea edi, [esi + 0x554]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x4099e6
push str.VK_QCOM_image_processing2
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x409a33
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x409a33
lea eax, [esi + 0x564]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3ba2b170
cmovne ebx, ecx
test edi, edi
je 0x409a07
mov dword [edi], eax
push str.VK_ARM_shader_core_builtins
lea ecx, [ebp - 0x28]
lea edi, [esi + 0x568]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
jmp 0x409a60
push str.VK_ARM_shader_core_builtins
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x409aad
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x409aad
lea eax, [esi + 0x570]
test ecx, ecx
mov ebx, eax
mov dword [eax], 0x3ba25f68
cmovne ebx, ecx
test edi, edi
je 0x409a81
push str.VK_KHR_ray_tracing_position_fetch
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x409b27
cmp dword [ebp + 0x14], 0
mov ecx, ebx
je 0x409b27
push str.VK_EXT_shader_tile_image
lea ecx, [ebp - 0x28]
call fcn.004054e0
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
call fcn.00404e00
lea ecx, [ebp - 0x28]
mov dword [ebp + 0x14], eax
call fcn.00401760
cmp dword [ebp + 0xc], 0x400000
jb 0x409ba1
call fcn.004ff45f
int3