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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x590
mov ebx, ecx
mov eax, dword [ebp + 0xc]
mov ecx, dword [0x1038000c]
xor ecx, ebp
mov dword [esp + 0x588], ecx
mov dword [ebx + 0x1fcc], eax
cmp byte [ebx + 0x1fb8], 0
mov dword [esp], ebx
je 0x1000f54a
mov edi, dword [ebp + 8]
mov ecx, ebx
mov edx, edi
call fcn.10012e70
cmp dword [edi], 0x3000
jne 0x1000fde3
mov ebx, dword [ebp + 0x14]
lea esi, [edi + 8]
mov eax, dword [edi + 8]
test eax, eax
jne 0x1000fe46
mov eax, dword [ebx + 0x1d14]
mov ecx, dword [ebx + 0x1fd4]
mov dword [eax + 0x14], ecx
mov edi, dword [ebx + 0x1d14]
mov eax, dword [edi]
mov esi, ebx
mov ebx, dword [eax + 0xe8]
mov ecx, ebx
call dword [section..00cfg]
lea eax, [esp + 0x168]
mov ecx, edi
push eax
mov edi, eax
call ebx
lea ecx, [esi + 0x28]
push edi
call fcn.100061e0
mov ecx, edi
call fcn.100060f0
mov edi, dword [esi + 0x1d14]
mov eax, dword [edi]
mov ebx, dword [eax + 0xf0]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
call ebx
lea esi, [esp + 0x168]
mov cl, byte [eax]
mov byte [esp + 0x41], cl
mov cl, byte [eax + 1]
mov byte [esp + 0x4b], cl
mov ecx, dword [eax + 2]
mov dword [esp + 0x120], ecx
mov cl, byte [eax + 6]
mov dword [esp + 0x94], ecx
mov cl, byte [eax + 7]
mov dword [esp + 0xf4], ecx
movsd xmm0, qword [eax + 0xa]
mov cl, byte [eax + 8]
mov dword [esp + 0x24], ecx
mov cl, byte [eax + 9]
mov dword [esp + 0xd8], ecx
movsd qword [esi], xmm0
movsd xmm0, qword [eax + 0xf]
movsd qword [esi + 5], xmm0
movzx ecx, word [eax + 0x23]
mov dl, byte [eax + 0x17]
mov byte [esp + 0x47], dl
mov dl, byte [eax + 0x18]
mov byte [esp + 0x40], dl
mov word [esp + 0x4f8], cx
movsd xmm0, qword [eax + 0x1b]
movsd qword [esp + 0x4f0], xmm0
mov cl, byte [eax + 0x29]
mov dl, byte [eax + 0x25]
mov dword [esp + 0x8c], edx
mov dl, byte [eax + 0x26]
mov dword [esp + 0x88], edx
mov byte [esp + 0x166], cl
movzx ecx, word [eax + 0x27]
mov word [esp + 0x164], cx
movsd xmm0, qword [eax + 0x3f]
mov ecx, dword [eax + 0x37]
mov dword [esp + 0x118], ecx
mov ecx, dword [eax + 0x33]
mov dword [esp + 0x11c], ecx
mov cl, byte [eax + 0x2b]
mov byte [esp + 0x36], cl
mov cl, byte [eax + 0x2d]
mov byte [esp + 0x37], cl
mov cl, byte [eax + 0x2f]
mov byte [esp + 0x38], cl
mov cl, byte [eax + 0x30]
mov byte [esp + 0xa], cl
mov cl, byte [eax + 0x31]
mov byte [esp + 0x3a], cl
mov cl, byte [eax + 0x3d]
mov byte [esp + 0x3c], cl
mov cl, byte [eax + 0x2a]
mov dword [esp + 0x98], ecx
mov cl, byte [eax + 0x2c]
mov dword [esp + 0x9c], ecx
mov cl, byte [eax + 0x2e]
mov dword [esp + 0xa0], ecx
mov cl, byte [eax + 0x3b]
mov dword [esp + 0x54], ecx
mov cl, byte [eax + 0x3c]
mov dword [esp + 0x70], ecx
mov cl, byte [eax + 0x3e]
mov dword [esp + 0x58], ecx
movsd qword [esp + 0x4d8], xmm0
movzx ecx, word [eax + 0x47]
mov word [esp + 0x4e0], cx
mov ecx, dword [eax + 0x4c]
mov dword [esp + 0x124], ecx
movzx ecx, word [eax + 0x5a]
mov dl, byte [eax + 0x52]
mov byte [esp + 0x3f], dl
mov dl, byte [eax + 0x54]
mov byte [esp + 0x42], dl
mov dl, byte [eax + 0x55]
mov byte [esp + 0xb], dl
mov dl, byte [eax + 0x49]
mov dword [esp + 0xa4], edx
mov dl, byte [eax + 0x4a]
mov dword [esp + 0xa8], edx
mov dl, byte [eax + 0x50]
mov dword [esp + 0xf0], edx
mov dl, byte [eax + 0x53]
mov dword [esp + 0x60], edx
mov word [esp + 0x160], cx
mov ecx, dword [eax + 0x56]
mov dword [esp + 0x15c], ecx
mov cl, byte [eax + 0x5c]
mov byte [esp + 8], cl
mov cl, byte [eax + 0x5d]
mov byte [esp + 0x43], cl
mov cl, byte [eax + 0x5e]
mov byte [esp + 9], cl
mov cl, byte [eax + 0x5f]
mov byte [esp + 0x45], cl
mov cl, byte [eax + 0x65]
mov dl, byte [eax + 0x60]
mov dword [esp + 0xb0], edx
mov byte [esp + 0x158], cl
mov ecx, dword [eax + 0x61]
mov dword [esp + 0x154], ecx
mov cl, byte [eax + 0x6a]
mov byte [esp + 0x46], cl
mov cl, byte [eax + 0x6e]
mov dl, byte [eax + 0x66]
mov dword [esp + 0x64], edx
mov dl, byte [eax + 0x67]
mov dword [esp + 0x10], edx
mov dl, byte [eax + 0x68]
mov dword [esp + 0x78], edx
mov dl, byte [eax + 0x69]
mov dword [esp + 0x7c], edx
mov dl, byte [eax + 0x6b]
mov dword [esp + 0xbc], edx
mov byte [esp + 0x152], cl
movzx ecx, word [eax + 0x6c]
mov word [esp + 0x150], cx
movzx ecx, word [eax + 0x70]
mov word [esp + 0xe6], cx
mov ecx, dword [eax + 0x81]
mov dword [esp + 0x130], ecx
mov ecx, dword [eax + 0x7d]
mov dword [esp + 0x128], ecx
movzx ecx, word [eax + 0x8f]
mov word [esp + 0xe8], cx
mov ecx, dword [eax + 0x97]
mov dword [esp + 0x12c], ecx
movzx ecx, word [eax + 0xa0]
mov word [esp + 0xea], cx
mov cl, byte [eax + 0x6f]
mov byte [esp + 0x1c], cl
mov cl, byte [eax + 0x73]
mov byte [esp + 0x30], cl
mov cl, byte [eax + 0x76]
mov byte [esp + 0x1e], cl
mov cl, byte [eax + 0x77]
mov byte [esp + 0x31], cl
mov cl, byte [eax + 0x7b]
mov byte [esp + 0x32], cl
mov cl, byte [eax + 0x7c]
mov byte [esp + 0x33], cl
mov cl, byte [eax + 0x87]
mov byte [esp + 0xd4], cl
mov cl, byte [eax + 0x88]
mov byte [esp + 0x1d], cl
mov dh, byte [eax + 0x8a]
mov dl, byte [eax + 0x8c]
mov cl, byte [eax + 0x94]
mov byte [esp + 0x1f], cl
mov cl, byte [eax + 0x95]
mov byte [esp + 0x39], cl
mov cl, byte [eax + 0x9c]
mov byte [esp + 0x3b], cl
mov cl, byte [eax + 0x9e]
mov byte [esp + 0x3d], cl
mov cl, byte [eax + 0xa9]
mov bl, byte [eax + 0x74]
mov dword [esp + 0x5c], ebx
mov bl, byte [eax + 0x75]
mov dword [esp + 0xec], ebx
mov bl, byte [eax + 0x78]
mov dword [esp + 0x68], ebx
mov bl, byte [eax + 0x79]
mov dword [esp + 0x74], ebx
mov bl, byte [eax + 0x7a]
mov dword [esp + 0xac], ebx
mov bl, byte [eax + 0x85]
mov dword [esp + 0x80], ebx
mov bl, byte [eax + 0x86]
mov dword [esp + 0xb4], ebx
mov bl, byte [eax + 0x89]
mov dword [esp + 0xdc], ebx
mov bl, byte [eax + 0x8b]
mov dword [esp + 0xc0], ebx
mov bl, byte [eax + 0x8d]
mov dword [esp + 0xe0], ebx
mov bl, byte [eax + 0x8e]
mov dword [esp + 0x100], ebx
mov bl, byte [eax + 0x91]
mov dword [esp + 4], ebx
mov bl, byte [eax + 0x92]
mov dword [esp + 0xc4], ebx
mov bl, byte [eax + 0x93]
mov dword [esp + 0xc8], ebx
mov bl, byte [eax + 0x96]
mov dword [esp + 0xc], ebx
mov bl, byte [eax + 0x9d]
mov dword [esp + 0xd0], ebx
mov bl, byte [eax + 0x9f]
mov dword [esp + 0xcc], ebx
mov bl, byte [eax + 0xa5]
mov dword [esp + 0xfc], ebx
mov bl, byte [eax + 0xa6]
mov dword [esp + 0xf8], ebx
mov byte [esp + 0x14e], cl
movzx ecx, word [eax + 0xa7]
mov word [esp + 0x14c], cx
mov cl, byte [eax + 0xad]
mov bl, byte [eax + 0xaa]
mov dword [esp + 0x28], ebx
mov byte [esp + 0x14a], cl
movzx ecx, word [eax + 0xab]
mov word [esp + 0x148], cx
mov cl, byte [eax + 0xb0]
mov byte [esp + 0x3e], cl
mov cl, byte [eax + 0xb4]
mov byte [esp + 0x146], cl
movzx ecx, word [eax + 0xb2]
mov word [esp + 0x144], cx
mov cl, byte [eax + 0xb8]
mov byte [esp + 0x44], cl
mov cl, byte [eax + 0xbc]
mov bl, byte [eax + 0xb7]
mov dword [esp + 0xb8], ebx
mov byte [esp + 0x142], cl
movzx ecx, word [eax + 0xba]
mov word [esp + 0x140], cx
mov cl, byte [eax + 0xbe]
mov byte [esp + 0x48], cl
mov cl, byte [eax + 0xc0]
mov byte [esp + 0x49], cl
mov cl, byte [eax + 0xc2]
mov byte [esp + 0x4a], cl
mov cl, byte [eax + 0xc9]
mov bl, byte [eax + 0xc3]
mov dword [esp + 0x50], ebx
mov bl, byte [eax + 0xc4]
mov esi, ebx
mov byte [esp + 0x13c], cl
mov ecx, dword [eax + 0xc5]
mov dword [esp + 0x138], ecx
movzx ecx, word [eax + 0xcb]
mov bl, byte [eax + 0xca]
mov word [esp + 0x134], cx
mov cl, byte [eax + 0xcd]
mov byte [esp + 0x136], cl
mov ecx, dword [esp]
mov ecx, dword [ecx + 0x1c]
mov dword [esp + 0x6c], ecx
cmp ecx, 2
mov byte [esp + 0x35], dl
mov byte [esp + 0x34], dh
jae 0x1000fdfd
mov byte [esp + 0x17], 1
mov dword [esp + 0xf4], 0
mov byte [esp + 0x1b], 1
mov byte [esp + 0x1a], 1
mov byte [esp + 0x19], 1
mov byte [esp + 0x18], 1
mov dword [esp + 0xf0], 0
mov dword [esp + 0xec], 0
mov esi, dword [esp]
mov dword [esp + 0x100], 0
xor edi, edi
cmp byte [esp + 0x1c], 0
mov ecx, dword [esp + 4]
movzx ecx, cl
cmove ecx, edi
mov dword [esp + 4], ecx
cmp byte [esp + 0x1d], 0
sete cl
test dl, dl
sete dl
or dl, cl
mov ecx, dword [esp + 0xe0]
movzx ecx, cl
cmovne ecx, edi
mov dword [esp + 0xe0], ecx
mov ecx, dword [esp + 0xdc]
movzx ecx, cl
cmovne ecx, edi
mov dword [esp + 0xdc], ecx
mov edi, dword [esi + 0x20]
cmp dword [esp + 0x6c], 2
mov dword [esp + 0x84], edi
jne 0x1000fee9
mov dword [esp + 0xd0], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0x80], 0
mov ecx, 0
mov dword [esp + 0xac], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x54], 0
mov esi, 0
mov ebx, 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov edx, 0
mov dword [esp + 0x94], 0
test edi, edi
jne 0x10010085
mov dword [esp + 0xd0], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
xor ebx, ebx
xor edx, edx
mov dword [esp + 0x24], 0
mov dword [esp + 0x94], 0
mov esi, dword [esp]
jmp 0x100100e0
mov ecx, dword [esp + 0x588]
xor ecx, ebp
call fcn.10212780
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov cl, byte [eax + 0xcf]
mov byte [esp + 0x18], cl
mov cl, byte [eax + 0xd0]
mov byte [esp + 0x19], cl
mov cl, byte [eax + 0xd2]
mov byte [esp + 0x1a], cl
mov cl, byte [eax + 0xd3]
mov byte [esp + 0x1b], cl
mov cl, byte [eax + 0xd5]
mov byte [esp + 0x17], cl
jne 0x1000fe53
mov esi, dword [esp]
cmp byte [esi + 0x1fd0], 0
jne 0x1000faae
jmp 0x1000fab9
mov cl, byte [eax + 0xce]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp]
mov edi, dword [ecx + 0x20]
cmp dword [esp + 0x6c], 3
jne 0x10010076
mov dword [esp + 0x4c], ebx
test edi, edi
mov dword [esp + 0x20], esi
jne 0x1001005d
mov dword [esp + 0x84], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x54], 0
jmp 0x10010064
mov dword [esp + 0xd0], 0
mov dword [esp + 0xcc], 0
mov dword [esp + 0xc], 0
mov dword [esp + 0xc8], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc0], 0
mov dword [esp + 0xb4], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x28], 0
mov dword [esp + 0xac], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0xbc], 0
mov dword [esp + 0xb8], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0xb0], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0xa8], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x20], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0x98], 0
xor ebx, ebx
xor edx, edx
mov dword [esp + 0x24], 0
mov dword [esp + 0x94], 0
jmp 0x100100e0
mov dword [esp + 0x84], edi
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x4c]
mov esi, dword [esp + 0x20]
jmp 0x10010085
mov dword [esp + 0x84], edi
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x20], esi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x28], ecx
xor ebx, ebx
movzx edi, dl
mov ecx, dword [esp]
or dl, byte [ecx + 0x1fd0]
mov esi, ecx
mov ecx, dword [esp + 0xd8]
movzx ecx, cl
cmove ecx, ebx
mov dword [esp + 0xd8], ecx
mov dword [esp + 0xfc], 0
cmove edi, ebx
mov dword [esp + 0x24], edi
mov dword [esp + 0xf8], 0
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x88]
mov ecx, esi
mov esi, dword [esi + 0x1fcc]
xor edi, edi
cmp byte [esi + 0x3a4], 0
movzx ebx, bl
cmovne ebx, edi
mov dword [esp + 0x114], ebx
movzx edx, dl
cmovne edx, edi
mov dword [esp + 0x10c], edx
cmp byte [esi + 0x3bc], 0
movzx ebx, byte [esp + 0xd4]
cmovne ebx, edi
mov dword [esp + 0xd4], ebx
cmp byte [esi + 0x494], 0
movzx ebx, byte [esp + 0x50]
cmove ebx, edi
mov dword [esp + 0x50], ebx
movzx ebx, byte [esp + 0x20]
cmove ebx, edi
mov dword [esp + 0x20], ebx
mov bl, byte [ecx + 0x1d01]
mov byte [esp + 0x2f], bl
xor bl, 1
mov byte [esp + 0x8c], bl
cmp byte [ecx + 0x18], 0
setne bl
and bl, byte [esp + 8]
mov byte [esp + 8], bl
cmp byte [esi + 0x1c9], 0
movzx edx, byte [esp + 0xa]
cmove edx, edi
mov dword [esp + 0x104], edx
xor ebx, ebx
inc ebx
cmp byte [esi + 0x1f6], 0
movzx edx, byte [esp + 9]
cmovne edx, ebx
mov dword [esp + 0x110], edx
cmp byte [esi + 0x1fb], 0
mov esi, ecx
movzx ecx, byte [esp + 0xb]
cmove ecx, edi
mov dword [esp + 0x108], ecx
mov cl, byte [eax + 0xd1]
mov byte [esp + 0xb], cl
mov al, byte [eax + 0xd4]
mov byte [esp + 0x88], al
mov al, byte [esi + 0x1fc0]
mov byte [esp + 9], al
mov al, byte [esi + 0x18ad]
mov byte [esp + 0xa], al
mov cl, 1
mov eax, dword [esp + 0x6c]
cmp eax, 3
jb 0x100101f0
xor eax, 3
or eax, dword [esp + 0x84]
sete cl
mov byte [esp + 0x6c], cl
mov al, byte [esp + 0x41]
mov byte [esi + 0x1d1c], al
mov cl, byte [esp + 0x4b]
mov byte [esi + 0x1d1d], cl
mov eax, dword [esp + 0x120]
mov dword [esi + 0x1d1e], eax
cmp byte [esp + 0x80], 0
movzx ebx, byte [esp + 4]
cmove ebx, edi
mov esi, dword [esp]
mov eax, dword [esp + 0x94]
mov byte [esi + 0x1d22], al
cmp byte [esp + 0x68], 0
cmove ebx, edi
mov esi, dword [esp]
mov eax, dword [esp + 0xf4]
mov byte [esi + 0x1d23], al
cmp byte [esp + 0x1e], 0
cmove ebx, edi
mov esi, dword [esp]
mov eax, dword [esp + 0x24]
mov byte [esi + 0x1d24], al
cmp byte [esp + 0x5c], 0
cmove ebx, edi
mov esi, dword [esp]
mov eax, dword [esp + 0xd8]
mov byte [esi + 0x1d25], al
cmp byte [esp + 0x10], 0
cmove ebx, edi
cmp byte [esp + 0x60], 0
cmove ebx, edi
movsd xmm0, qword [esp + 0x168]
movsd xmm1, qword [esp + 0x16d]
mov esi, dword [esp]
movsd qword [esi + 0x1d26], xmm0
mov esi, dword [esp]
movsd qword [esi + 0x1d2b], xmm1
mov esi, dword [esp]
mov ch, byte [esp + 0x47]
mov byte [esi + 0x1d33], ch
mov esi, dword [esp]
mov al, byte [esp + 0x40]
mov byte [esi + 0x1d34], al
cmp byte [esp + 0x58], 0
cmove ebx, edi
cmp byte [esp + 0x54], 0
cmove ebx, edi
mov ax, 0x101
mov esi, dword [esp]
mov word [esi + 0x1d35], ax
movsd xmm0, qword [esp + 0x4f0]
mov esi, dword [esp]
movsd qword [esi + 0x1d37], xmm0
movzx esi, word [esp + 0x4f8]
mov eax, dword [esp]
mov word [eax + 0x1d3f], si
mov edx, dword [esp + 0x10c]
test dl, dl
mov eax, dword [esp]
mov byte [eax + 0x1d41], dl
mov eax, dword [esp]
mov edx, dword [esp + 0x114]
mov byte [eax + 0x1d42], dl
cmove ebx, edi
test ch, ch
mov dl, byte [esp + 0x166]
mov esi, dword [esp]
mov byte [esi + 0x1d45], dl
cmove ebx, edi
movzx edx, word [esp + 0x164]
mov esi, dword [esp]
mov word [esi + 0x1d43], dx
cmp byte [esp + 0xc], 0
cmove ebx, edi
mov eax, dword [esp]
mov edx, dword [esp + 0x98]
mov byte [eax + 0x1d46], dl
cmp byte [esp + 0x1f], 0
cmove ebx, edi
mov eax, dword [esp]
mov dl, byte [esp + 0x36]
mov byte [eax + 0x1d47], dl
cmp byte [esp + 0x7c], 0
cmove ebx, edi
mov eax, dword [esp]
mov edx, dword [esp + 0x9c]
mov byte [eax + 0x1d48], dl
cmp byte [esp + 0x64], 0
cmove ebx, edi
mov eax, dword [esp]
mov dl, byte [esp + 0x37]
mov byte [eax + 0x1d49], dl
mov eax, dword [esp + 0xb0]
test al, al
mov esi, eax
cmove ebx, edi
mov eax, dword [esp]
mov edx, dword [esp + 0xa0]
mov byte [eax + 0x1d4a], dl
mov dl, byte [esp + 0x45]
test dl, dl
cmove ebx, edi
test cl, cl
mov eax, dword [esp]
mov cl, byte [esp + 0x38]
mov byte [eax + 0x1d4b], cl
cmove ebx, edi
mov eax, dword [esp]
mov ecx, dword [esp + 0x104]
mov byte [eax + 0x1d4c], cl
mov dh, byte [esp + 0x33]
test dh, dh
cmove ebx, edi
cmp byte [esp + 0x6c], 0
mov eax, dword [esp]
mov cl, byte [esp + 0x3a]
mov byte [eax + 0x1d4d], cl
cmovne ebx, edi
mov eax, dword [esp]
mov byte [eax + 0x1d4e], bl
mov ebx, dword [esp]
mov eax, dword [esp + 0x118]
mov dword [ebx + 0x1d53], eax
mov eax, dword [esp + 0x11c]
mov dword [ebx + 0x1d4f], eax
mov eax, dword [esp + 0x54]
mov byte [ebx + 0x1d57], al
mov eax, dword [esp + 0x70]
mov byte [ebx + 0x1d58], al
mov al, byte [esp + 0x3c]
mov byte [ebx + 0x1d59], al
mov eax, dword [esp + 0x58]
mov byte [ebx + 0x1d5a], al
movzx eax, word [esp + 0x4e0]
mov word [ebx + 0x1d63], ax
movsd xmm0, qword [esp + 0x4d8]
movsd qword [ebx + 0x1d5b], xmm0
mov eax, dword [esp + 0xa4]
mov byte [ebx + 0x1d65], al
mov eax, dword [esp + 0xa8]
mov byte [ebx + 0x1d66], al
mov al, byte [esp + 0x2f]
mov byte [ebx + 0x1d67], al
mov eax, dword [esp + 0x124]
mov dword [ebx + 0x1d68], eax
mov eax, dword [esp + 0xf0]
mov byte [ebx + 0x1d6c], al
mov cl, 1
mov byte [ebx + 0x1d6d], cl
mov al, byte [esp + 0x3f]
mov byte [ebx + 0x1d6e], al
mov eax, dword [esp + 0x60]
mov byte [ebx + 0x1d6f], al
mov al, byte [esp + 0x42]
mov byte [ebx + 0x1d70], al
mov eax, dword [esp + 0x108]
mov byte [ebx + 0x1d71], al
mov eax, dword [esp + 0x15c]
mov dword [ebx + 0x1d72], eax
movzx eax, word [esp + 0x160]
mov word [ebx + 0x1d76], ax
mov al, byte [esp + 8]
mov byte [ebx + 0x1d78], al
mov al, byte [esp + 0x43]
mov byte [ebx + 0x1d79], al
mov eax, dword [esp + 0x110]
mov byte [ebx + 0x1d7a], al
mov byte [ebx + 0x1d7b], dl
mov eax, esi
mov byte [ebx + 0x1d7c], al
mov al, byte [esp + 0x158]
mov byte [ebx + 0x1d81], al
mov eax, dword [esp + 0x154]
mov dword [ebx + 0x1d7d], eax
mov eax, dword [esp + 0x64]
mov byte [ebx + 0x1d82], al
mov eax, dword [esp + 0x10]
mov byte [ebx + 0x1d83], al
mov eax, dword [esp + 0x78]
mov byte [ebx + 0x1d84], al
mov eax, dword [esp + 0x7c]
mov byte [ebx + 0x1d85], al
mov al, byte [esp + 0x46]
mov byte [ebx + 0x1d86], al
mov eax, dword [esp + 0xbc]
mov byte [ebx + 0x1d87], al
movzx eax, word [esp + 0x150]
mov word [ebx + 0x1d88], ax
mov al, byte [esp + 0x152]
mov byte [ebx + 0x1d8a], al
mov al, byte [esp + 0x1c]
mov byte [ebx + 0x1d8b], al
movzx eax, word [esp + 0xe6]
mov word [ebx + 0x1d8c], ax
mov al, byte [esp + 9]
mov byte [ebx + 0x1d8e], al
mov al, byte [esp + 0x30]
mov byte [ebx + 0x1d8f], al
mov eax, dword [esp + 0x5c]
mov byte [ebx + 0x1d90], al
mov eax, dword [esp + 0xec]
mov byte [ebx + 0x1d91], al
mov al, byte [esp + 0x1e]
mov byte [ebx + 0x1d92], al
mov al, byte [esp + 0x31]
mov byte [ebx + 0x1d93], al
mov eax, dword [esp + 0x68]
mov byte [ebx + 0x1d94], al
mov eax, dword [esp + 0x74]
mov byte [ebx + 0x1d95], al
mov eax, dword [esp + 0xac]
mov byte [ebx + 0x1d96], al
mov al, byte [esp + 0x32]
mov byte [ebx + 0x1d97], al
mov byte [ebx + 0x1d98], dh
mov eax, dword [esp + 0x128]
mov dword [ebx + 0x1d99], eax
mov eax, dword [esp + 0x130]
mov dword [ebx + 0x1d9d], eax
mov eax, dword [esp + 0x80]
mov byte [ebx + 0x1da1], al
mov eax, dword [esp + 0xb4]
mov byte [ebx + 0x1da2], al
mov eax, dword [esp + 0xd4]
mov byte [ebx + 0x1da3], al
mov al, byte [esp + 0x1d]
mov byte [ebx + 0x1da4], al
mov eax, dword [esp + 0xdc]
mov byte [ebx + 0x1da5], al
mov al, byte [esp + 0x34]
mov byte [ebx + 0x1da6], al
mov eax, dword [esp + 0xc0]
mov byte [ebx + 0x1da7], al
mov al, byte [esp + 0x35]
mov byte [ebx + 0x1da8], al
mov eax, dword [esp + 0xe0]
mov byte [ebx + 0x1da9], al
mov eax, dword [esp + 0x100]
mov byte [ebx + 0x1daa], al
movzx eax, word [esp + 0xe8]
mov word [ebx + 0x1dab], ax
mov eax, dword [esp + 4]
mov byte [ebx + 0x1dad], al
mov eax, dword [esp + 0xc4]
mov byte [ebx + 0x1dae], al
mov eax, dword [esp + 0xc8]
mov byte [ebx + 0x1daf], al
mov al, byte [esp + 0x1f]
mov byte [ebx + 0x1db0], al
mov al, byte [esp + 0x39]
mov byte [ebx + 0x1db1], al
mov eax, dword [esp + 0xc]
mov byte [ebx + 0x1db2], al
mov eax, dword [esp + 0x12c]
mov dword [ebx + 0x1db3], eax
mov byte [ebx + 0x1db7], cl
mov al, byte [esp + 0x3b]
mov byte [ebx + 0x1db8], al
mov eax, dword [esp + 0xd0]
mov byte [ebx + 0x1db9], al
mov al, byte [esp + 0x3d]
mov byte [ebx + 0x1dba], al
mov eax, dword [esp + 0xcc]
mov byte [ebx + 0x1dbb], al
movzx eax, word [esp + 0xea]
mov word [ebx + 0x1dbc], ax
mov dx, 0x101
mov word [ebx + 0x1dbe], dx
mov byte [ebx + 0x1dc0], cl
mov eax, dword [esp + 0xfc]
mov byte [ebx + 0x1dc1], al
mov eax, dword [esp + 0xf8]
mov byte [ebx + 0x1dc2], al
mov al, byte [esp + 0x14e]
mov byte [ebx + 0x1dc5], al
movzx eax, word [esp + 0x14c]
mov word [ebx + 0x1dc3], ax
mov eax, dword [esp + 0x28]
mov byte [ebx + 0x1dc6], al
movzx eax, word [esp + 0x148]
mov word [ebx + 0x1dc7], ax
mov al, byte [esp + 0x14a]
mov byte [ebx + 0x1dc9], al
mov word [ebx + 0x1dca], dx
mov al, byte [esp + 0x3e]
mov byte [ebx + 0x1dcc], al
mov byte [ebx + 0x1dcd], cl
movzx eax, word [esp + 0x144]
mov word [ebx + 0x1dce], ax
mov al, byte [esp + 0x146]
mov byte [ebx + 0x1dd0], al
mov word [ebx + 0x1dd1], dx
mov eax, dword [esp + 0xb8]
mov byte [ebx + 0x1dd3], al
mov al, byte [esp + 0x44]
mov byte [ebx + 0x1dd4], al
mov byte [ebx + 0x1dd5], cl
mov al, byte [esp + 0x142]
mov byte [ebx + 0x1dd8], al
movzx eax, word [esp + 0x140]
mov word [ebx + 0x1dd6], ax
mov byte [ebx + 0x1dd9], cl
mov al, byte [esp + 0x48]
mov byte [ebx + 0x1dda], al
mov al, byte [esp + 0x8c]
mov byte [ebx + 0x1ddb], al
mov al, byte [esp + 0x49]
mov byte [ebx + 0x1ddc], al
mov al, byte [esp + 0xa]
mov byte [ebx + 0x1ddd], al
mov al, byte [esp + 0x4a]
mov byte [ebx + 0x1dde], al
mov eax, dword [esp + 0x50]
mov byte [ebx + 0x1ddf], al
mov eax, dword [esp + 0x20]
mov byte [ebx + 0x1de0], al
mov al, byte [esp + 0x13c]
mov byte [ebx + 0x1de5], al
mov eax, dword [esp + 0x138]
mov dword [ebx + 0x1de1], eax
mov eax, dword [esp + 0x4c]
mov byte [ebx + 0x1de6], al
movzx eax, word [esp + 0x134]
mov word [ebx + 0x1de7], ax
mov al, byte [esp + 0x136]
mov byte [ebx + 0x1de9], al
mov eax, dword [esp + 0x90]
mov byte [ebx + 0x1dea], al
mov al, byte [esp + 0x18]
mov byte [ebx + 0x1deb], al
mov al, byte [esp + 0x19]
mov byte [ebx + 0x1dec], al
mov al, byte [esp + 0xb]
mov byte [ebx + 0x1ded], al
mov al, byte [esp + 0x1a]
mov byte [ebx + 0x1dee], al
mov al, byte [esp + 0x1b]
mov byte [ebx + 0x1def], al
mov al, byte [esp + 0x88]
mov byte [ebx + 0x1df0], al
mov al, byte [esp + 0x17]
mov byte [ebx + 0x1df1], al
mov eax, dword [ebx + 0x1fcc]
cmp byte [eax + 0x3d4], 0
lea esi, [ebx + 0x1d1c]
jne 0x100109fa
lea edi, [ebx + 0x1d26]
mov eax, dword [esp]
lea ebx, [eax + 0x1d96]
lea ecx, [esp + 0x168]
push 1
push 0xf29
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.1021b150
lea eax, [esp + 0x178]
push str.Limiting_compressed_format_support._n
push eax
call fcn.102134b0
add esp, 8
lea ecx, [esp + 0x168]
call fcn.1021b200
xor eax, eax
mov ecx, dword [esp]
mov word [ecx + 0x1dc3], ax
mov ecx, dword [esp]
mov byte [ecx + 0x1d72], al
mov ecx, dword [esp]
mov word [ecx + 0x1de2], ax
mov ecx, dword [esp]
mov byte [ecx + 0x1d9e], al
mov ecx, dword [esp]
mov byte [ecx + 0x1da0], al
mov ecx, dword [esp]
mov byte [ecx + 0x1de5], al
mov dword [edi + 4], eax
mov dword [edi], eax
mov dword [edi + 8], eax
mov dword [ebx + 3], eax
mov dword [ebx], eax
mov ebx, dword [esp]
mov eax, dword [ebx + 0xb4]
mov dword [ebx + 0xb8], eax
lea edi, [ebx + 0x1278]
push 0xd6
push esi
push edi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov esi, dword [ebx + 0x1d14]
mov eax, dword [esi]
mov ecx, dword [eax + 0xf4]
mov dword [esp + 4], ecx
call dword [section..00cfg]
mov ecx, esi
call dword [esp + 4]
movups xmm0, xmmword [eax]
movups xmmword [ebx + 0x134e], xmm0
mov al, byte [eax + 0x10]
mov byte [ebx + 0x135e], al
mov ecx, dword [ebx + 0x1c]
cmp dword [ebx + 0xc], 0x30a2
je 0x10010a51
cmp ecx, 1
ja 0x10010a7e
movaps xmm0, xmmword [0x102c3300]
movups xmmword [ebx + 0x364], xmm0
mov eax, 0x10
mov dword [ebx + 0x374], eax
mov dword [ebx + 0x378], eax
movaps xmm0, xmmword [0x102c3310]
movups xmmword [ebx + 0x37c], xmm0
movaps xmm0, xmmword [0x102c3320]
movups xmmword [ebx + 0x33c], xmm0
cmp ecx, 2
ja 0x10010a9b
mov dword [ebx + 0x338], 1
cmp dword [ebx + 0x6c], 9
jl 0x10010aa8
mov dword [ebx + 0x6c], 8
cmp dword [ebx + 0x7c], 9
jl 0x10010ab5
mov dword [ebx + 0x7c], 8
mov eax, dword [ebx + 0x240]
cmp eax, 0x11
jl 0x10010acf
mov dword [ebx + 0x240], 0x10
mov eax, 0x10
cmp dword [ebx + 0xa8], 0x801
jl 0x10010ae5
mov dword [ebx + 0xa8], 0x800
cmp ecx, 3
jb 0x10010afa
jne 0x10011895
cmp dword [ebx + 0x20], 0
jne 0x10011895
mov dword [ebx + 0xa4], eax
mov al, byte [ebx + 0x1fd0]
mov edx, dword [ebx + 0x44]
test al, al
je 0x10010b67
cmp byte [ebx + 0x135e], 0
je 0x10010b67
cmp edx, 0x1001
jl 0x10010b25
mov dword [ebx + 0x44], 0x1000
cmp dword [ebx + 0x40], 0x1001
jl 0x10010b35
mov dword [ebx + 0x40], 0x1000
cmp dword [ebx + 0x54], 0x1001
jl 0x10010b45
mov dword [ebx + 0x54], 0x1000
cmp dword [ebx + 0x4c], 0x1001
jl 0x10010b55
mov dword [ebx + 0x4c], 0x1000
cmp dword [ebx + 0x48], 0x1001
jl 0x10010b76
mov dword [ebx + 0x48], 0x1000
jmp 0x10010b76
cmp edx, 0x8001
jl 0x10010b76
mov dword [ebx + 0x44], 0x8000
cmp dword [ebx + 0x54], 0x8001
jl 0x10010b86
mov dword [ebx + 0x54], 0x8000
cmp dword [ebx + 0x40], 0x4001
jl 0x10010b96
mov dword [ebx + 0x40], 0x4000
cmp dword [ebx + 0x4c], 0x801
jl 0x10010ba6
mov dword [ebx + 0x4c], 0x800
cmp dword [ebx + 0x48], 0x8001
jl 0x10010bb6
mov dword [ebx + 0x48], 0x8000
cmp dword [ebx + 0x168], 0x11
jl 0x10010bc9
mov dword [ebx + 0x168], 0x10
cmp dword [ebx + 0x174], 0x11
jl 0x10010bdc
mov dword [ebx + 0x174], 0x10
cmp dword [ebx + 0x178], 0x11
jl 0x10010bef
mov dword [ebx + 0x178], 0x10
cmp dword [ebx + 0x17c], 0x11
jl 0x10010c02
mov dword [ebx + 0x17c], 0x10
cmp dword [ebx + 0x294], 0x3d
jl 0x10010c15
mov dword [ebx + 0x294], 0x3c
cmp dword [ebx + 0x284], 0x49
jl 0x10010c28
mov dword [ebx + 0x284], 0x48
cmp dword [ebx + 0x248], 0x81
jl 0x10010c3e
mov dword [ebx + 0x248], 0x80
cmp dword [ebx + 0x250], 0x81
jl 0x10010c54
mov dword [ebx + 0x250], 0x80
cmp dword [ebx + 0x2d8], 0x81
jl 0x10010c6a
mov dword [ebx + 0x2d8], 0x80
cmp dword [ebx + 0x2dc], 5
jl 0x10010c7d
mov dword [ebx + 0x2dc], 4
cmp dword [ebx + 0x2e0], 5
jl 0x10010c90
mov dword [ebx + 0x2e0], 4
mov dl, 1
cmp ecx, 3
jb 0x10010ca0
jne 0x10010cc2
cmp dword [ebx + 0x20], 2
setb dl
test dl, dl
je 0x10010cc2
cmp byte [ebx + 0x12ec], 0
jne 0x10010cc2
cmp dword [ebx + 0x2a0], 0x41
jl 0x10010cd5
mov dword [ebx + 0x2a0], 0x40
jmp 0x10010cd5
cmp dword [ebx + 0x2a0], 0x61
jl 0x10010cd5
mov dword [ebx + 0x2a0], 0x60
cmp dword [ebx + 0x180], 0x21
jl 0x10010ce8
mov dword [ebx + 0x180], 0x20
cmp dword [ebx + 0x184], 0x21
jl 0x10010cfb
mov dword [ebx + 0x184], 0x20
cmp dword [ebx + 0x188], 0x21
jl 0x10010d0e
mov dword [ebx + 0x188], 0x20
cmp dword [ebx + 0x18c], 0x21
jl 0x10010d21
mov dword [ebx + 0x18c], 0x20
cmp dword [ebx + 0x190], 0x21
jl 0x10010d34
mov dword [ebx + 0x190], 0x20
cmp dword [ebx + 0x194], 0x21
jl 0x10010d47
mov dword [ebx + 0x194], 0x20
cmp dword [ebx + 0x2bc], 0x61
jl 0x10010d5a
mov dword [ebx + 0x2bc], 0x60
cmp dword [ebx + 0x2c0], 0x61
jl 0x10010d6d
mov dword [ebx + 0x2c0], 0x60
cmp dword [ebx + 0x1f8], 0x61
jl 0x10010d80
mov dword [ebx + 0x1f8], 0x60
cmp dword [ebx + 0x1fc], 0x61
jl 0x10010d93
mov dword [ebx + 0x1fc], 0x60
cmp dword [ebx + 0x200], 0x61
jl 0x10010da6
mov dword [ebx + 0x200], 0x60
cmp dword [ebx + 0x204], 0x61
jl 0x10010db9
mov dword [ebx + 0x204], 0x60
cmp dword [ebx + 0x208], 0x61
jl 0x10010dcc
mov dword [ebx + 0x208], 0x60
cmp dword [ebx + 0x20c], 0x61
jl 0x10010ddf
mov dword [ebx + 0x20c], 0x60
cmp dword [ebx + 0x1c8], 9
jl 0x10010df2
mov dword [ebx + 0x1c8], 8
cmp dword [ebx + 0x1cc], 9
jl 0x10010e05
mov dword [ebx + 0x1cc], 8
cmp dword [ebx + 0x1d0], 9
jl 0x10010e18
mov dword [ebx + 0x1d0], 8
cmp dword [ebx + 0x1d4], 9
jl 0x10010e2b
mov dword [ebx + 0x1d4], 8
cmp dword [ebx + 0x1d8], 9
jl 0x10010e3e
mov dword [ebx + 0x1d8], 8
cmp dword [ebx + 0x1dc], 9
jl 0x10010e51
mov dword [ebx + 0x1dc], 8
cmp dword [ebx + 0x2ac], 9
jl 0x10010e64
mov dword [ebx + 0x2ac], 8
cmp dword [ebx + 0x2b4], 9
jl 0x10010e77
mov dword [ebx + 0x2b4], 8
cmp dword [ebx + 0x198], 0x41
jl 0x10010e8a
mov dword [ebx + 0x198], 0x40
cmp dword [ebx + 0x19c], 0x41
jl 0x10010e9d
mov dword [ebx + 0x19c], 0x40
cmp dword [ebx + 0x1a0], 0x41
jl 0x10010eb0
mov dword [ebx + 0x1a0], 0x40
cmp dword [ebx + 0x1a4], 0x41
jl 0x10010ec3
mov dword [ebx + 0x1a4], 0x40
cmp dword [ebx + 0x1a8], 0x41
jl 0x10010ed6
mov dword [ebx + 0x1a8], 0x40
cmp dword [ebx + 0x1ac], 0x41
jl 0x10010ee9
mov dword [ebx + 0x1ac], 0x40
cmp dword [ebx + 0x2c4], 0x41
jl 0x10010efc
mov dword [ebx + 0x2c4], 0x40
cmp dword [ebx + 0x2d0], 0x41
jl 0x10010f0f
mov dword [ebx + 0x2d0], 0x40
cmp dword [ebx + 0x34c], 9
jb 0x10010f22
mov dword [ebx + 0x34c], 8
cmp dword [ebx + 0x2e8], 0x101
jl 0x10010f38
mov dword [ebx + 0x2e8], 0x100
cmp dword [ebx + 0x88], 2
jl 0x10010f4b
mov dword [ebx + 0x88], 1
cmp dword [ebx + 0x2e4], 0x21
jl 0x10010f5e
mov dword [ebx + 0x2e4], 0x20
cmp dword [ebx + 0x78], 0x21
jl 0x10010f6b
mov dword [ebx + 0x78], 0x20
cmp dword [ebx + 0x8c], 0x21
jl 0x10010f7e
mov dword [ebx + 0x8c], 0x20
cmp dword [ebx + 0x90], 0x21
jl 0x10010f91
mov dword [ebx + 0x90], 0x20
cmp dword [ebx + 0x94], 0x21
jl 0x10010fa4
mov dword [ebx + 0x94], 0x20
cmp dword [ebx + 0x338], 5
jb 0x10010fb7
mov dword [ebx + 0x338], 4
cmp dword [ebx + 0x328], 2
jb 0x10010fca
mov dword [ebx + 0x328], 1
mov byte [ebx + 0x1345], al
call fcn.100b9030
mov eax, dword [eax]
mov ecx, dword [eax]
cmp ecx, eax
je 0x1001101e
cmp byte [ebx + 0x1fd2], 0
jne 0x10010ff3
cmp byte [ecx + 0x28], 0
je 0x10010ff3
mov edx, dword [ecx + 0x2c]
mov byte [edi + edx], 0
mov esi, dword [ecx + 8]
cmp byte [esi + 0xd], 0
je 0x1001100e
mov edx, dword [ecx + 4]
cmp byte [edx + 0xd], 0
jne 0x10011018
cmp ecx, dword [edx + 8]
mov ecx, edx
je 0x10010ffc
jmp 0x10011018
mov edx, esi
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
je 0x1001100e
mov ecx, edx
cmp edx, eax
jne 0x10010fdd
cmp byte [ebx + 0x1fd0], 0
je 0x10011039
cmp byte [ebx + 0x135a], 0
je 0x10011039
mov word [ebx + 0x1d2a], 0
cmp byte [ebx + 0x135b], 0
je 0x10011050
xor eax, eax
mov byte [ebx + 0x1d98], al
mov byte [ebx + 0x12f4], al
mov eax, dword [ebx + 0x1360]
mov eax, dword [eax + 0x10]
cmp byte [eax + 0x1c], 0
jne 0x10011072
mov eax, dword [ebx + 0x1fcc]
cmp byte [eax + 0x404], 0
je 0x100117f5
lea ecx, [esp + 0x168]
push 1
push 0x1018
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.1021b150
lea esi, [esp + 0x178]
push str.Limit_some_features_because
push esi
call fcn.102134b0
add esp, 8
mov ecx, dword [ebx + 0x1360]
mov ecx, dword [ecx + 0x10]
cmp byte [ecx + 0x1c], 0
mov ecx, str.FrameCapture_limits_were_forced
mov edx, str.FrameCapture_is_enabled
cmove edx, ecx
push edx
push eax
call fcn.102134b0
add esp, 8
mov edi, eax
mov eax, dword [eax]
mov ecx, dword [eax + 4]
add ecx, edi
push 0xa
call dword [sym.imp.MSVCP140.dll_public:_char___thiscall_std::basic_ios_char__struct_std::char_traits_char__::widen_char_const]
movsx eax, al
mov ecx, edi
push eax
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::put_char_]
mov ecx, edi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::flush_void_]
lea ecx, [esp + 0x168]
call fcn.1021b200
mov eax, dword [ebx + 0x1fcc]
cmp byte [eax + 0x464], 0
jne 0x100112c4
lea edi, [esp + 0x168]
mov ecx, edi
xor esi, esi
inc esi
push esi
push 0x1022
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.1021b150
push str.Disabling_GL_OES_get_program_binary_for_trace_portability
lea eax, [esp + 0x17c]
push eax
call fcn.102134b0
add esp, 8
mov ecx, edi
call fcn.1021b200
mov esi, 0x32c
add esi, dword [ebx + 0x1fcc]
xor ebx, ebx
mov dword [edi], ebx
mov dword [edi + 0x10], ebx
mov dword [edi + 0x14], 0xf
mov byte [edi], bl
push 0x20
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov dword [edi + 0x10], 0x16
mov dword [edi + 0x14], 0x1f
movups xmm0, xmmword [str.disable_program_binary]
movups xmmword [eax], xmm0
movsd xmm0, qword [0x10328eec]
movsd qword [eax + 0xe], xmm0
mov byte [eax + 0x16], bl
mov dword [edi], eax
lea eax, [esp + 0x180]
lea edi, [esp + 0x4f0]
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
lea edx, [esp + 0x168]
mov ecx, edi
push eax
call fcn.10214770
add esp, 4
mov ecx, esi
xor eax, eax
inc eax
push eax
push edi
call fcn.1019a610
mov esi, dword [edi]
test esi, esi
je 0x1001127c
mov edi, dword [esp + 0x4f4]
cmp esi, edi
je 0x10011238
mov ebx, dword [sym.imp.mozglue.dll_free]
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10011219
mov eax, dword [esi]
add ecx, 0xfffff001
cmp ecx, 0xffffefff
ja 0x10011213
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001269e
mov eax, ecx
push eax
call ebx
add esp, 4
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
add esi, 0x18
cmp esi, edi
jne 0x100111e8
mov esi, dword [esp + 0x4f0]
mov eax, dword [esp + 0x4f8]
sub eax, esi
cmp eax, 0x1000
jb 0x1001125b
mov eax, dword [esi - 4]
add esi, 0xfffffffc
sub esi, eax
cmp esi, 0x20
jae 0x1001269e
mov esi, eax
push esi
call dword [sym.imp.mozglue.dll_free]
add esp, 4
xor eax, eax
mov dword [esp + 0x4f0], eax
mov dword [esp + 0x4f4], eax
mov dword [esp + 0x4f8], eax
mov ecx, dword [esp + 0x17c]
cmp ecx, 0x10
mov ebx, dword [esp]
lea esi, [esp + 0x178]
jb 0x100112c4
mov eax, dword [esp + 0x168]
add ecx, 0xfffff001
cmp ecx, 0xffffefff
ja 0x100112ba
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001269e
mov eax, ecx
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
lea edi, [esp + 0x168]
mov ecx, edi
push 1
push 0x1028
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.1021b150
push str.Limiting_image_unit_count_to
push esi
call fcn.102134b0
add esp, 8
mov ecx, eax
push 8
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
mov ecx, edi
call fcn.1021b200
cmp dword [ebx + 0x2bc], 9
jl 0x10011315
mov dword [ebx + 0x2bc], 8
cmp dword [ebx + 0x1f8], 9
jl 0x10011328
mov dword [ebx + 0x1f8], 8
cmp dword [ebx + 0x1fc], 9
jl 0x1001133b
mov dword [ebx + 0x1fc], 8
cmp dword [ebx + 0x200], 9
jl 0x1001134e
mov dword [ebx + 0x200], 8
cmp dword [ebx + 0x204], 9
jl 0x10011361
mov dword [ebx + 0x204], 8
cmp dword [ebx + 0x208], 9
jl 0x10011374
mov dword [ebx + 0x208], 8
cmp dword [ebx + 0x20c], 9
jl 0x10011387
mov dword [ebx + 0x20c], 8
lea ecx, [esp + 0x168]
push 1
push 0x1034
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.1021b150
push str.Setting_uniform_buffer_offset_alignment_to
push esi
call fcn.102134b0
add esp, 8
mov edi, 0x100
mov ecx, eax
push edi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
lea ecx, [esp + 0x168]
call fcn.1021b200
mov dword [ebx + 0x290], edi
mov al, byte [ebx + 0x12f0]
or al, byte [ebx + 0x12f1]
je 0x10011426
lea ecx, [esp + 0x168]
push 1
push 0x103d
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.1021b150
push str.Setting_texture_buffer_offset_alignment_to
push esi
call fcn.102134b0
add esp, 8
mov ecx, eax
push edi
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
lea ecx, [esp + 0x168]
call fcn.1021b200
mov dword [ebx + 0x390], edi
mov edx, str.initCaps
lea edi, [esp + 0x168]
mov ecx, edi
xor eax, eax
inc eax
push eax
push 0x1041
push edx
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.1021b150
push str.Disabling_GL_EXT_map_buffer_range_and_GL_OES_mapbuffer_during_capture__which_are_not_supported_on_some_native_drivers
push esi
call fcn.102134b0
add esp, 8
mov ecx, edi
call fcn.1021b200
mov word [ebx + 0x12b9], 0
lea edi, [esp + 0x168]
mov ecx, edi
xor ebx, ebx
inc ebx
push ebx
push 0x1046
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.1021b150
push str.Disabling_GL_CHROMIUM_bind_uniform_location_during_capture__which_is_not_supported_on_native_drivers
push esi
call fcn.102134b0
add esp, 8
mov ecx, edi
call fcn.1021b200
xor ecx, ecx
mov eax, dword [esp]
mov byte [eax + 0x131b], cl
lea edi, [esp + 0x168]
mov ecx, edi
push ebx
push 0x104a
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.1021b150
push str.Disabling_GL_NV_shader_noperspective_interpolation_during_capture__which_is_not_supported_on_some_native_drivers
push esi
call fcn.102134b0
add esp, 8
mov ecx, edi
call fcn.1021b200
mov eax, dword [esp]
xor ecx, ecx
mov byte [eax + 0x12e3], cl
lea edi, [esp + 0x168]
mov ecx, edi
push ebx
push 0x104e
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.1021b150
push str.Disabling_GL_NV_framebuffer_blit_during_capture__which_is_not_supported_on_some_native_drivers
push esi
call fcn.102134b0
add esp, 8
mov ecx, edi
call fcn.1021b200
mov eax, dword [esp]
xor ecx, ecx
mov byte [eax + 0x12b1], cl
mov edi, dword [esp]
lea ecx, [esp + 0x168]
push ebx
push 0x1054
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.1021b150
push str.Limiting_draw_buffer_count_to
mov ebx, esi
push esi
call fcn.102134b0
add esp, 8
mov ecx, eax
push 4
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
lea ecx, [esp + 0x168]
call fcn.1021b200
cmp dword [edi + 0x6c], 5
jl 0x1001157e
mov dword [edi + 0x6c], 4
lea edi, [esp + 0x168]
mov ecx, edi
xor esi, esi
inc esi
push esi
push 0x105c
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.1021b150
push str.Enabling_validation_to_prevent_invalid_calls_from_being_captured._This_effectively_disables_GL_KHR_no_error_and_enables_GL_ANGLE_robust_client_memory.
mov esi, ebx
push ebx
call fcn.102134b0
add esp, 8
mov ecx, edi
call fcn.1021b200
xor ebx, ebx
mov eax, dword [esp]
mov byte [eax + 0x1d01], bl
mov eax, dword [esp]
mov byte [eax + 0x12c3], bl
mov eax, dword [esp]
mov byte [eax + 0x1337], 1
lea edi, [esp + 0x168]
mov ecx, edi
xor eax, eax
inc eax
push eax
push 0x1062
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.1021b150
push str.Disabling_GL_OES_depth32_during_capture__which_is_not_widely_supported_on_mobile
push esi
call fcn.102134b0
add esp, 8
mov ecx, edi
call fcn.1021b200
mov eax, dword [esp]
mov byte [eax + 0x1295], bl
mov ebx, dword [esp]
lea edi, [esp + 0x168]
mov ecx, edi
xor eax, eax
inc eax
push eax
push 0x1068
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.1021b150
push str.Limiting_max_atomic_counter_buffer_bindings_to
push esi
call fcn.102134b0
add esp, 8
mov ecx, eax
push 6
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
mov ecx, edi
call fcn.1021b200
cmp dword [ebx + 0x2ac], 7
jl 0x1001166f
mov dword [ebx + 0x2ac], 6
cmp dword [ebx + 0x1c8], 7
jl 0x10011682
mov dword [ebx + 0x1c8], 6
cmp dword [ebx + 0x1cc], 7
jl 0x10011695
mov dword [ebx + 0x1cc], 6
cmp dword [ebx + 0x1d0], 7
jl 0x100116a8
mov dword [ebx + 0x1d0], 6
cmp dword [ebx + 0x1d4], 7
jl 0x100116bb
mov dword [ebx + 0x1d4], 6
cmp dword [ebx + 0x1d8], 7
jl 0x100116ce
mov dword [ebx + 0x1d8], 6
cmp dword [ebx + 0x1dc], 7
jl 0x100116e1
mov dword [ebx + 0x1dc], 6
lea edi, [esp + 0x168]
mov ecx, edi
push 1
push 0x1074
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.1021b150
push str.Limiting_max_shader_storage_buffer_bindings_to
push esi
call fcn.102134b0
add esp, 8
mov ecx, eax
push 0xc
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
mov ecx, edi
call fcn.1021b200
cmp dword [ebx + 0x2c4], 0xd
jl 0x10011732
mov dword [ebx + 0x2c4], 0xc
cmp dword [ebx + 0x198], 0xd
jl 0x10011745
mov dword [ebx + 0x198], 0xc
cmp dword [ebx + 0x19c], 0xd
jl 0x10011758
mov dword [ebx + 0x19c], 0xc
cmp dword [ebx + 0x1a0], 0xd
jl 0x1001176b
mov dword [ebx + 0x1a0], 0xc
cmp dword [ebx + 0x1a4], 0xd
jl 0x1001177e
mov dword [ebx + 0x1a4], 0xc
cmp dword [ebx + 0x1a8], 0xd
jl 0x10011791
mov dword [ebx + 0x1a8], 0xc
cmp dword [ebx + 0x1ac], 0xd
jl 0x100117a4
mov dword [ebx + 0x1ac], 0xc
lea edi, [esp + 0x168]
mov ecx, edi
push 1
push 0x1080
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.1021b150
push str.Limiting_GL_MAX_SAMPLES_to
push esi
call fcn.102134b0
add esp, 8
mov ecx, eax
push 4
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___int_]
mov ecx, edi
call fcn.1021b200
cmp dword [ebx + 0x2e4], 5
jl 0x100117f5
mov dword [ebx + 0x2e4], 4
mov eax, dword [ebx + 0x1fcc]
cmp byte [eax + 0x38c], 0
je 0x1001182d
mov byte [ebx + 0x12b5], 0
mov eax, dword [ebx + 0xc0]
mov ecx, dword [ebx + 0xcc]
mov dword [ebx + 0xd0], ecx
mov dword [ebx + 0xc4], eax
mov dword [ebx + 0x1fd4], 0
cmp byte [ebx + 0x1ddf], 0
je 0x100118eb
mov esi, dword [ebx + 0x6c]
mov eax, dword [ebx + 0x7c]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x1d14]
mov dword [esp + 4], eax
mov eax, dword [eax]
mov edi, dword [eax + 0xf8]
mov ecx, edi
call dword [section..00cfg]
mov ecx, dword [esp + 4]
call edi
dec eax
cmp eax, 1
ja 0x100118b1
mov ecx, dword [ebx + 0x208]
cmp ecx, 8
mov eax, 8
cmovb eax, ecx
mov esi, dword [ebx + 0x6c]
mov ecx, dword [ebx + 0x7c]
cmp ecx, esi
cmovl esi, ecx
add esi, eax
mov edx, dword [ebx + 0x2a4]
cmp edx, esi
cmovl esi, edx
jmp 0x100118d9
cmp dword [ebx + 0xa4], 0x11
jl 0x10010b00
mov dword [ebx + 0xa4], 0x10
jmp 0x10010b00
mov eax, dword [esp + 0xc]
cmp eax, esi
cmovl esi, eax
cmp esi, 8
mov eax, 8
cmovb eax, esi
mov dl, byte [ebx + 0x1d41]
xor ecx, ecx
or dl, byte [ebx + 0x1d42]
lea edx, [esi - 1]
cmovne ecx, edx
mov dword [ebx + 0x358], eax
mov dword [ebx + 0x35c], ecx
mov dword [ebx + 0x360], esi
mov ecx, ebx
call fcn.1001b790
lea ecx, [ebx + 8]
mov dword [esp + 0x10], ecx
push ebx
call fcn.10082650
mov esi, dword [ebx + 0x1d14]
push 0x400
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push esi
push ebx
call fcn.1003cd80
mov esi, dword [ebx + 0x2218]
mov dword [ebx + 0x2218], edi
test esi, esi
je 0x1001193f
mov ecx, esi
call fcn.1003d450
push esi
call dword [sym.imp.mozglue.dll_free]
add esp, 4
xor esi, esi
mov dword [ebx + 0x1e80], esi
mov dword [ebx + 0x1e84], esi
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push esi
push esi
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e04]
mov dword [ebx + 0x1e04], edi
test esi, esi
je 0x100119a8
dec dword [esi + 4]
jne 0x100119a8
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 7
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e3c]
mov dword [ebx + 0x1e3c], edi
test esi, esi
je 0x10011a05
dec dword [esi + 4]
jne 0x10011a05
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
cmp dword [ebx + 0x1c], 2
ja 0x10011a18
cmp byte [ebx + 0x1d91], 0
je 0x10011ae6
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 4
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e24]
mov dword [ebx + 0x1e24], edi
test esi, esi
je 0x10011a75
dec dword [esi + 4]
jne 0x10011a75
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
cmp dword [ebx + 0x1c], 3
jb 0x10011ae6
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 1
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e0c]
mov dword [ebx + 0x1e0c], edi
test esi, esi
je 0x10011ad8
dec dword [esi + 4]
jne 0x10011ad8
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
cmp dword [ebx + 0x1c], 3
jb 0x10011ae6
jne 0x10011aef
cmp dword [ebx + 0x20], 0
jne 0x10011aef
cmp byte [ebx + 0x1de6], 0
je 0x10011b4c
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 2
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e14]
mov dword [ebx + 0x1e14], edi
test esi, esi
je 0x10011b4c
dec dword [esi + 4]
jne 0x10011b4c
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
cmp dword [ebx + 0x1c], 3
jb 0x10011c05
jne 0x10011b62
cmp dword [ebx + 0x20], 0
je 0x10011c05
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 3
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e1c]
mov dword [ebx + 0x1e1c], edi
test esi, esi
je 0x10011bbf
dec dword [esi + 4]
jne 0x10011bbf
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
cmp dword [ebx + 0x2ac], 0
jle 0x10011be2
xor esi, esi
xor edi, edi
mov ecx, ebx
push esi
push esi
push esi
push edi
push 1
call fcn.1000d480
inc edi
cmp edi, dword [ebx + 0x2ac]
jl 0x10011bcc
cmp dword [ebx + 0x2c4], 0
jle 0x10011c05
xor esi, esi
xor edi, edi
mov ecx, ebx
push esi
push esi
push esi
push edi
push 9
call fcn.1000d480
inc edi
cmp edi, dword [ebx + 0x2c4]
jl 0x10011bef
cmp dword [ebx + 0xc], 0x30a2
je 0x10011c1c
cmp dword [ebx + 0x1c], 3
jb 0x10011c1c
jne 0x10011c2a
cmp dword [ebx + 0x20], 1
ja 0x10011c2a
mov al, byte [ebx + 0x1da1]
or al, byte [ebx + 0x1da2]
je 0x10011c87
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 8
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e44]
mov dword [ebx + 0x1e44], edi
test esi, esi
je 0x10011c87
dec dword [esi + 4]
jne 0x10011c87
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
lea esi, [ebx + 0x1de7]
cmp dword [ebx + 0xc], 0x30a2
je 0x10011ca4
cmp dword [ebx + 0x1c], 3
jb 0x10011ca4
jne 0x10011cb2
cmp dword [ebx + 0x20], 1
ja 0x10011cb2
mov al, byte [ebx + 0x1d94]
or al, byte [ebx + 0x1d95]
je 0x10011d19
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 0xa
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov edx, dword [ebx + 0x1e54]
mov dword [ebx + 0x1e54], edi
test edx, edx
je 0x10011d19
dec dword [edx + 4]
jne 0x10011d19
mov eax, dword [edx]
mov ecx, dword [eax]
mov dword [esp + 4], ecx
mov edi, edx
call dword [section..00cfg]
mov ecx, edi
push ebx
call dword [esp + 8]
mov eax, dword [edi]
mov ecx, dword [eax + 4]
mov dword [esp + 4], ecx
call dword [section..00cfg]
mov ecx, edi
push 1
call dword [esp + 8]
cmp byte [esi], 0
je 0x10011d7b
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 6
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e34]
mov dword [ebx + 0x1e34], edi
test esi, esi
je 0x10011d7b
dec dword [esi + 4]
jne 0x10011d7b
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
mov al, byte [ebx + 0x1d47]
or al, byte [ebx + 0x1d4b]
je 0x10011de6
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 5
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov esi, dword [ebx + 0x1e2c]
mov dword [ebx + 0x1e2c], edi
test esi, esi
je 0x10011de6
dec dword [esi + 4]
jne 0x10011de6
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push ebx
call edi
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
push 1
call edi
lea esi, [ebx + 0x1e00]
cmp byte [ebx + 0x1dba], 0
je 0x10011e5c
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov edi, eax
mov ecx, eax
push 9
push 0
push dword [ebx + 0x1d14]
call fcn.1008d730
inc dword [edi + 4]
mov edx, dword [ebx + 0x1e4c]
mov dword [ebx + 0x1e4c], edi
test edx, edx
je 0x10011e5c
dec dword [edx + 4]
jne 0x10011e5c
mov eax, dword [edx]
mov ecx, dword [eax]
mov dword [esp + 4], ecx
mov edi, edx
call dword [section..00cfg]
mov ecx, edi
push ebx
call dword [esp + 8]
mov eax, dword [edi]
mov ecx, dword [eax + 4]
mov dword [esp + 4], ecx
call dword [section..00cfg]
mov ecx, edi
push 1
call dword [esp + 8]
mov ecx, dword [esp + 0x10]
push esi
push ebx
call fcn.10086440
mov esi, dword [ebx + 0x1d14]
mov eax, dword [esi]
mov edi, dword [eax + 0x4c]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
call edi
cmp eax, 1
je 0x1001211d
mov ecx, dword [ebx + 0x1360]
push ebx
call fcn.10032c40
mov ecx, ebx
push 0
call fcn.1000d610
cmp dword [ebx + 0x1c], 3
jb 0x10011efb
mov esi, ebx
xor ebx, ebx
mov ecx, esi
xor edx, edx
call fcn.100163c0
mov ecx, dword [esp + 0x10]
push eax
push esi
call fcn.10087540
lea ecx, [esi + 0x1fe0]
mov eax, dword [esi + 0x1834]
test eax, eax
je 0x10011eda
cmp byte [eax + 0x34], 0
jne 0x10011ed4
xor ebx, ebx
jmp 0x10011eda
mov bl, byte [eax + 0x36]
xor bl, 1
mov eax, dword [esp]
mov byte [eax + 0x200c], bl
mov ebx, eax
xor eax, eax
inc eax
mov dword [ebx + 0x2000], eax
mov dword [ebx + 0x2004], eax
mov edx, ebx
call fcn.1002ce80
lea eax, [ebx + 0x178c]
mov dword [esp + 0xc], eax
xor esi, esi
mov ecx, dword [ebx + 0x1364]
cmp dword [ecx + 0x2c], 0
je 0x10011f25
mov eax, dword [ecx + 0x30]
mov edx, dword [eax]
cmp edx, 0xffffffff
mov eax, 0
cmove edx, eax
jmp 0x10011f64
mov edx, dword [ecx + 0x4c]
mov eax, dword [ecx + 0x38]
mov edi, dword [ecx + 0x40]
add edx, edx
and edx, 0x972bea2a
mov ecx, dword [edi + edx*4 + 4]
cmp ecx, eax
je 0x10011f62
cmp dword [ecx + 8], 0
je 0x10011f54
mov edx, dword [edi + edx*4]
cmp ecx, edx
je 0x10011f62
mov ecx, dword [ecx + 4]
cmp dword [ecx + 8], 0
jne 0x10011f47
cmp ecx, eax
mov edx, 0
je 0x10011f64
mov edx, dword [ecx + 0xc]
jmp 0x10011f64
xor edx, edx
mov ebx, dword [esp]
mov eax, dword [ebx + 0x1514]
add eax, 0x60
cmp esi, 6
mov ecx, dword [esp + 0xc]
lea ecx, [ecx + esi*8]
cmove ecx, eax
cmp edx, dword [ecx + 4]
je 0x10011faf
mov edi, dword [esi*4 + 0x102cc060]
mov ecx, edi
mov dword [esp + 4], edx
call dword [section..00cfg]
mov ecx, dword [esp + 0x10]
push dword [esp + 4]
push ebx
call edi
xor eax, eax
inc eax
mov dword [ebx + 0x2000], eax
mov dword [ebx + 0x2004], eax
inc esi
cmp esi, 0xd
jne 0x10011f07
mov ecx, dword [ebx + 0x1370]
cmp dword [ecx + 0x2c], 0
jne 0x10011ffd
mov edx, dword [ecx + 0x4c]
mov eax, dword [ecx + 0x38]
mov esi, dword [ecx + 0x40]
add edx, edx
and edx, 0x972bea2a
mov ecx, dword [esi + edx*4 + 4]
cmp ecx, eax
je 0x1001200b
cmp dword [ecx + 8], 0
je 0x10011ff4
mov edx, dword [esi + edx*4]
cmp ecx, edx
je 0x1001200b
cmp ecx, eax
je 0x1001200b
mov eax, dword [ecx + 0x30]
mov eax, dword [eax]
cmp eax, 0xffffffff
je 0x1001200b
test eax, eax
jne 0x1001200d
xor eax, eax
mov ecx, dword [esp + 0x10]
push eax
push ebx
call fcn.100868d0
cmp dword [ebx + 0x284], 0
jle 0x1001203c
xor esi, esi
xor edi, edi
mov ecx, ebx
push 0xffffffffffffffff
push esi
push esi
push edi
push 0xc
call fcn.1000d480
inc edi
cmp edi, dword [ebx + 0x284]
jl 0x10012025
cmp dword [ebx + 0x1c], 2
jae 0x1001207a
mov ecx, ebx
call fcn.100126b0
lea esi, [esp + 0x1b8]
mov dword [esi - 0x50], 0x102c343c
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::ios_base::constructor_void_]
mov dword [esi], 0x102c3458
mov eax, dword [esi - 0x50]
mov eax, dword [eax + 4]
mov ecx, 0x102c3438
mov dword [esp + eax + 0x168], ecx
mov eax, dword [esi - 0x50]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x164], ecx
lea edi, [esp + 0x16c]
mov eax, dword [edi - 4]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x168], 0x102c3464
mov eax, dword [edi - 4]
mov eax, dword [eax + 4]
lea ecx, [eax - 8]
mov dword [esp + eax + 0x164], ecx
mov eax, dword [edi - 4]
mov ecx, dword [eax + 4]
lea esi, [esp + 0x168]
add ecx, esi
xor eax, eax
push eax
push edi
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::init_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [edi - 4]
mov eax, dword [eax + 4]
mov ecx, 0x102c3438
mov dword [esp + eax + 0x168], ecx
mov eax, dword [edi - 4]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x164], ecx
mov ecx, edi
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov dword [edi], 0x102c3470
xor eax, eax
mov dword [edi + 0x38], eax
mov dword [edi + 0x3c], 4
cmp dword [ebx + 0xc], 0x30a0
jne 0x100121f6
push str.OpenGL_ES
push esi
call fcn.102134b0
add esp, 8
mov esi, dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_int_]
lea ecx, [esp + 0x168]
push dword [ebx + 0x1c]
call esi
push 0x1035b9e8
push eax
call fcn.102134b0
add esp, 8
mov ecx, eax
push dword [ebx + 0x20]
call esi
push str..0__ANGLE
push eax
call fcn.102134b0
add esp, 8
push 0x1034f1d5
push eax
call fcn.102134b0
add esp, 8
push 0x1035c300
push eax
call fcn.102134b0
add esp, 8
lea edi, [esp + 0x4f0]
lea ecx, [esp + 0x16c]
push edi
call fcn.1002daf0
push edi
call fcn.1001aa90
add esp, 4
mov dword [ebx + 0x1f88], eax
mov esi, edi
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x100122a6
mov eax, dword [esp + 0x4f0]
add ecx, 0xfffff001
cmp ecx, 0xffffefff
ja 0x1001229c
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001269e
mov eax, ecx
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
lea ebx, [esp + 0x540]
mov dword [ebx - 0x50], 0x102c343c
mov ecx, ebx
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::ios_base::constructor_void_]
mov dword [ebx], 0x102c3458
mov eax, dword [ebx - 0x50]
mov eax, dword [eax + 4]
mov ecx, 0x102c3438
mov dword [esp + eax + 0x4f0], ecx
mov eax, dword [ebx - 0x50]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x4ec], ecx
lea edi, [esp + 0x4f4]
mov eax, dword [edi - 4]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x4f0], 0x102c3464
mov eax, dword [edi - 4]
mov eax, dword [eax + 4]
lea ecx, [eax - 8]
mov dword [esp + eax + 0x4ec], ecx
mov eax, dword [edi - 4]
mov ecx, dword [eax + 4]
add ecx, esi
xor ebx, ebx
push ebx
push edi
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::init_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [edi - 4]
mov eax, dword [eax + 4]
mov ecx, 0x102c3438
mov dword [esp + eax + 0x4f0], ecx
mov eax, dword [edi - 4]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x4ec], ecx
mov ecx, edi
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov dword [edi], 0x102c3470
mov dword [edi + 0x38], ebx
mov dword [edi + 0x3c], 4
mov ebx, dword [esp]
cmp dword [ebx + 0xc], 0x30a0
mov eax, str.OpenGL_ES_GLSL_ES
mov ecx, str.OpenGL_GLSL
cmove ecx, eax
push ecx
push esi
call fcn.102134b0
add esp, 8
mov eax, dword [ebx + 0x1c]
cmp eax, 2
mov edx, 1
cmovne edx, eax
mov ecx, esi
push edx
mov esi, dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___unsigned_int_]
call esi
push 0x1035b9e8
push eax
call fcn.102134b0
add esp, 8
mov ecx, eax
push dword [ebx + 0x20]
call esi
push 0x1035dbe4
push eax
call fcn.102134b0
add esp, 8
push 0x1034f1d5
push eax
call fcn.102134b0
add esp, 8
push 0x1035c300
push eax
call fcn.102134b0
add esp, 8
lea esi, [esp + 0x4d8]
mov ecx, edi
push esi
call fcn.1002daf0
push esi
call fcn.1001aa90
add esp, 4
mov dword [ebx + 0x1f8c], eax
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x10012429
mov eax, dword [esp + 0x4d8]
add ecx, 0xfffff001
cmp ecx, 0xffffefff
ja 0x1001241f
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001269e
mov eax, ecx
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov eax, dword [esp + 0x4f0]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x4f0], 0x102c3438
mov eax, dword [esp + 0x4f0]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x4ec], ecx
mov dword [esp + 0x4f4], 0x102c3470
test byte [esp + 0x530], 1
je 0x100124a6
mov eax, dword [esp + 0x514]
mov eax, dword [eax]
mov ecx, 0x34
test eax, eax
je 0x1001264a
mov ecx, dword [esp + ecx + 0x4f0]
add eax, dword [ecx]
mov ecx, dword [esp + 0x500]
mov ecx, dword [ecx]
sub eax, ecx
cmp eax, 0x1000
jae 0x1001265d
push ecx
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov eax, dword [esp + 0x500]
xor edi, edi
mov dword [eax], edi
mov eax, dword [esp + 0x510]
mov dword [eax], edi
mov eax, dword [esp + 0x520]
mov dword [eax], edi
mov eax, dword [esp + 0x504]
mov dword [eax], edi
mov eax, dword [esp + 0x514]
mov dword [eax], edi
mov eax, dword [esp + 0x524]
mov dword [eax], edi
mov dword [esp + 0x52c], edi
and byte [esp + 0x530], 0xfe
lea ecx, [esp + 0x4f4]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [esp + 0x540]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::ios_base::destructor_void_]
mov eax, dword [esp + 0x168]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x168], 0x102c3438
mov eax, dword [esp + 0x168]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x164], ecx
mov dword [esp + 0x16c], 0x102c3470
test byte [esp + 0x1a8], 1
je 0x10012584
mov eax, dword [esp + 0x18c]
mov eax, dword [eax]
mov ecx, 0x34
test eax, eax
je 0x10012674
mov ecx, dword [esp + ecx + 0x168]
add eax, dword [ecx]
mov ecx, dword [esp + 0x178]
mov ecx, dword [ecx]
sub eax, ecx
cmp eax, 0x1000
jae 0x10012687
push ecx
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov eax, dword [esp + 0x178]
mov dword [eax], edi
mov eax, dword [esp + 0x188]
mov dword [eax], edi
mov eax, dword [esp + 0x198]
mov dword [eax], edi
mov eax, dword [esp + 0x17c]
mov dword [eax], edi
mov eax, dword [esp + 0x18c]
mov dword [eax], edi
mov eax, dword [esp + 0x19c]
mov dword [eax], edi
mov dword [esp + 0x1a4], edi
and byte [esp + 0x1a8], 0xfe
lea ecx, [esp + 0x16c]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [esp + 0x1b8]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::ios_base::destructor_void_]
mov ecx, ebx
call fcn.10012c80
mov eax, 0
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x1001260e
mov ecx, esi
call fcn.1008bf60
mov dword [esp + 4], eax
mov ecx, esi
call fcn.1008bfa0
mov edi, eax
mov eax, dword [esp + 4]
mov dword [esp + 4], eax
xor edx, edx
mov esi, dword [esp + 0x10]
mov ecx, esi
push edi
push eax
push edx
push edx
call fcn.10085d40
mov ecx, esi
push edi
push dword [esp + 8]
xor eax, eax
push eax
push eax
call fcn.10085190
mov byte [ebx + 0x1fb8], 1
jmp 0x1000f349
mov eax, dword [esp + 0x510]
mov eax, dword [eax]
mov ecx, 0x30
jmp 0x1001247d
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x1001269e
mov ecx, eax
mov ebx, dword [esp]
jmp 0x1001249c
mov eax, dword [esp + 0x188]
mov eax, dword [eax]
mov ecx, 0x30
jmp 0x1001255b
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x1001269e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3