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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x520
mov esi, ecx
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
mov ecx, dword [0x1038100c]
xor ecx, ebp
mov dword [esp + 0x518], ecx
mov dword [esi + 0x1ee8], eax
cmp byte [esi + 0x1ed4], 0
mov dword [esp + 0xc], esi
jne 0x10019df1
mov eax, dword [esi + 0x1bf4]
mov ecx, dword [esi + 0x1ef0]
mov dword [eax + 0x14], ecx
mov edi, dword [esi + 0x1bf4]
mov eax, dword [edi]
mov ebx, dword [eax + 0xd8]
mov ecx, ebx
call dword [section..00cfg]
lea eax, [esp + 0x120]
mov ecx, edi
push eax
mov edi, eax
call ebx
lea ecx, [esi + 0x20]
push edi
call fcn.1000ee10
mov ecx, edi
call fcn.1000ed10
mov edi, dword [esi + 0x1bf4]
mov eax, dword [edi]
mov ebx, dword [eax + 0xe0]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
lea edi, [esp + 0x120]
call ebx
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 5]
movsd qword [esp + 0x46d], xmm1
movsd qword [esp + 0x468], xmm0
mov cl, byte [eax + 0xd]
mov dword [esp + 0x90], ecx
mov cl, byte [eax + 0xe]
mov byte [esp + 0x1f], cl
mov cl, byte [eax + 0xf]
mov dword [esp + 0x18], ecx
mov cl, byte [eax + 0x10]
mov byte [esp + 0x1e], cl
mov cl, byte [eax + 0x11]
mov dword [esp + 0x14], ecx
movups xmm0, xmmword [eax + 0x1b]
mov ecx, dword [eax + 0x16]
mov dword [esp + 0xa4], ecx
mov ecx, dword [eax + 0x12]
mov dword [esp + 0xa8], ecx
mov cl, byte [eax + 0x1a]
mov dword [esp + 0x88], ecx
movaps xmmword [edi], xmm0
movzx ecx, word [eax + 0x2b]
mov word [edi + 0x10], cx
movzx ecx, word [eax + 0x32]
mov dl, byte [eax + 0x2d]
mov byte [esp + 0x1d], dl
mov word [esp + 0x10c], cx
mov ecx, dword [eax + 0x2e]
mov dword [esp + 0x108], ecx
movzx ecx, word [eax + 0x35]
mov dl, byte [eax + 0x34]
mov dword [esp + 0x9c], edx
mov word [esp + 0x104], cx
mov cl, byte [eax + 0x37]
mov byte [esp + 0x106], cl
movups xmm0, xmmword [eax + 0x3b]
mov cl, byte [eax + 0x3a]
mov byte [esp + 0x13], cl
mov cl, byte [eax + 0x38]
mov dword [esp + 0x4c], ecx
mov cl, byte [eax + 0x39]
mov dword [esp + 0x50], ecx
movaps xmmword [esp + 0x480], xmm0
movzx ecx, word [eax + 0x4b]
mov word [esp + 0x490], cx
movsd xmm0, qword [eax + 0x4e]
movsd xmm1, qword [eax + 0x53]
mov cl, byte [eax + 0x4d]
mov byte [esp + 0x20], cl
movsd qword [esp + 0xf0], xmm0
movsd qword [esp + 0xf5], xmm1
mov ecx, dword [eax + 0x5c]
mov dword [esp + 0x8c], ecx
mov cl, byte [eax + 0x65]
mov dl, byte [eax + 0x5b]
mov dword [esp + 0x54], edx
mov dl, byte [eax + 0x60]
mov dword [esp + 0x60], edx
mov byte [esp + 0xec], cl
mov ecx, dword [eax + 0x61]
mov dword [esp + 0xe8], ecx
movzx ecx, word [eax + 0x67]
mov word [esp + 0x94], cx
mov ecx, dword [eax + 0x74]
mov dl, byte [eax + 0x6a]
mov byte [esp + 0x24], dl
mov dl, byte [eax + 0x6b]
mov byte [esp + 0x2c], dl
mov dl, byte [eax + 0x69]
mov dword [esp + 0x58], edx
mov dword [esp + 0xe0], ecx
movsd xmm0, qword [eax + 0x6c]
movsd qword [esp + 0xd8], xmm0
mov cl, byte [eax + 0x7b]
mov byte [esp + 0x25], cl
mov cl, byte [eax + 0x8d]
mov byte [esp + 0x27], cl
mov cl, byte [eax + 0x91]
mov dl, byte [eax + 0x79]
mov dword [esp + 0x64], edx
mov byte [esp + 0xd6], cl
movzx ecx, word [eax + 0x8f]
mov word [esp + 0xd4], cx
movzx ecx, word [eax + 0x97]
mov word [esp + 0x98], cx
movzx ecx, word [eax + 0xa0]
mov word [esp + 0x96], cx
mov cl, byte [eax + 0x93]
mov byte [esp + 0x23], cl
mov cl, byte [eax + 0x9b]
mov byte [esp + 0x26], cl
mov cl, byte [eax + 0xa7]
mov byte [esp + 0x29], cl
mov cl, byte [eax + 0xad]
mov dl, byte [eax + 0x92]
mov dword [esp + 0x5c], edx
mov dl, byte [eax + 0x99]
mov dword [esp + 0x30], edx
mov dl, byte [eax + 0x9a]
mov dword [esp + 0x68], edx
mov dl, byte [eax + 0x9c]
mov dword [esp + 0x80], edx
mov dl, byte [eax + 0x9d]
mov dword [esp + 0x84], edx
mov dl, byte [eax + 0x9e]
mov dword [esp + 0x6c], edx
mov dl, byte [eax + 0x9f]
mov edi, edx
mov dl, byte [eax + 0xa2]
mov dword [esp + 0x70], edx
mov dl, byte [eax + 0xa8]
mov dword [esp + 0x38], edx
mov byte [esp + 0xd0], cl
mov ecx, dword [eax + 0xa9]
mov dword [esp + 0xcc], ecx
movzx ecx, word [eax + 0xbb]
mov dl, byte [eax + 0xae]
mov byte [esp + 0x12], dl
mov dl, byte [eax + 0xaf]
mov byte [esp + 0x7c], dl
mov dl, byte [eax + 0xb1]
mov bl, byte [eax + 0xb2]
mov dword [esp + 0x3c], ebx
mov word [esp + 0x118], cx
movsd xmm0, qword [eax + 0xb3]
movsd qword [esp + 0x110], xmm0
movzx ecx, word [eax + 0xc0]
mov word [esp + 0x9a], cx
movzx ecx, word [eax + 0xcb]
mov bl, byte [eax + 0xbe]
mov dword [esp + 0x74], ebx
mov word [esp + 0xc8], cx
movsd xmm0, qword [eax + 0xc3]
movsd qword [esp + 0xc0], xmm0
mov ecx, dword [eax + 0xd5]
mov bl, byte [eax + 0xcd]
mov dword [esp + 0xa0], ebx
mov dword [esp + 0xb7], ecx
movsd xmm0, qword [eax + 0xce]
movsd qword [esp + 0xb0], xmm0
mov cl, byte [eax + 0xd9]
mov byte [esp + 0x2a], cl
mov cl, byte [eax + 0xde]
mov bl, byte [eax + 0xdb]
mov dword [esp + 0x34], ebx
mov byte [esp + 0xae], cl
movzx ecx, word [eax + 0xdc]
mov word [esp + 0xac], cx
mov ecx, dword [esi + 0x14]
mov dh, byte [eax + 0xe2]
cmp ecx, 1
mov byte [esp + 0x2b], dh
mov byte [esp + 0x28], dl
ja 0x10017eea
mov byte [esp + 0xd0], 1
mov dword [esp + 0xcc], 0x1010101
mov dword [esp + 0x78], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0x9c], 0
jmp 0x10017f0e
mov bl, byte [eax + 0xdf]
mov al, byte [eax + 0xe0]
cmp ecx, 3
je 0x1001812f
cmp ecx, 2
jne 0x1001814d
mov al, 1
mov dword [esp + 0x78], eax
xor edi, edi
cmp byte [esp + 0x1d], 0
mov eax, dword [esp + 0x30]
movzx eax, al
cmove eax, edi
mov dword [esp + 0x30], eax
cmp byte [esp + 0x1e], 0
sete al
cmp byte [esp + 0x1f], 0
sete dl
or dl, al
mov eax, dword [esp + 0x14]
movzx eax, al
cmovne eax, edi
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x18]
movzx eax, al
mov dword [esp + 0x74], 0
cmovne eax, edi
mov dword [esp + 0x18], eax
xor eax, eax
inc eax
cmp ecx, 2
jne 0x10018090
mov dword [esp + 0x8c], eax
mov dword [esp + 0x88], 0
cmp dword [esi + 0x18], 0
mov ecx, 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x58], 0
mov ebx, 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x74], 0
mov dl, byte [esp + 0x2c]
mov al, byte [esp + 0x13]
jne 0x1001818f
mov dword [esp + 0x74], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x40], 0
jmp 0x100181d2
mov dword [esp + 0x8c], eax
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x6c], 0
mov dword [esp + 0x68], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x48], 0
mov dword [esp + 0x58], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x50], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x88], 0
mov dl, byte [esp + 0x2c]
mov al, byte [esp + 0x13]
jmp 0x100181d2
cmp dword [esi + 0x18], 0
jne 0x1001814d
mov dword [esp + 0x3c], 0
mov dword [esp + 0x38], 0
mov dword [esp + 0x34], 0
mov ecx, eax
mov al, 1
mov dword [esp + 0x78], eax
mov eax, edi
test al, al
je 0x10018187
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x48], ebx
mov dl, byte [esp + 0x2c]
mov dword [esp + 0x44], eax
mov al, byte [esp + 0x13]
mov dword [esp + 0x40], ecx
jmp 0x100181d2
mov dl, byte [esp + 0x2c]
mov al, byte [esp + 0x13]
mov dword [esp + 0x40], ecx
mov dword [esp + 0x48], ebx
xor edi, edi
cmp byte [esi + 0x1eec], 0
mov ecx, dword [esp + 0x90]
movzx ecx, cl
mov dword [esp + 0x44], 0
cmove ecx, edi
mov dword [esp + 0x90], ecx
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov dh, byte [esp + 0x12]
mov edi, dword [esi + 0x1ee8]
xor esi, esi
cmp byte [edi + 0x238], 0
movzx ecx, al
cmovne ecx, esi
mov eax, dword [esp + 0xc]
mov al, byte [eax + 0x1be1]
mov byte [esp + 0x12], al
mov ah, 1
xor al, ah
mov byte [esp + 0x13], al
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x1edc], 0
setne al
and byte [esp + 0x20], al
xor ebx, ebx
inc ebx
mov eax, dword [esp + 0xc]
cmp byte [eax + 0x1ede], 0
movzx eax, byte [esp + 0x7c]
cmovne eax, ebx
mov dword [esp + 0x7c], eax
movzx eax, dh
cmovne eax, ebx
mov dword [esp + 0x2c], eax
cmp byte [edi + 0x96], 0
movzx eax, dl
cmove eax, esi
cmp byte [edi + 0xc1], 0
movsd xmm0, qword [esp + 0x468]
movsd xmm1, qword [esp + 0x46d]
mov edx, dword [esp + 0xc]
mov dl, byte [edx + 0x1edd]
mov byte [esp + 0x21], dl
mov edx, dword [esp + 0xc]
mov dl, byte [edx + 0x17c1]
mov byte [esp + 0x22], dl
mov edx, dword [esp + 0xc]
movsd qword [edx + 0x1bfc], xmm0
mov edx, dword [esp + 0xc]
movsd qword [edx + 0x1c01], xmm1
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x90]
mov byte [edx + 0x1c09], bl
mov edx, dword [esp + 0xc]
mov bh, byte [esp + 0x1f]
mov byte [edx + 0x1c0a], bh
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x18]
mov byte [edx + 0x1c0b], bl
mov edx, dword [esp + 0xc]
mov bh, byte [esp + 0x1e]
mov byte [edx + 0x1c0c], bh
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x14]
mov byte [edx + 0x1c0d], bl
mov edx, dword [esp + 0xc]
mov esi, dword [esp + 0xa4]
mov dword [edx + 0x1c12], esi
mov edx, dword [esp + 0xc]
mov esi, dword [esp + 0xa8]
mov dword [edx + 0x1c0e], esi
mov edx, dword [esp + 0xc]
mov ebx, dword [esp + 0x88]
mov byte [edx + 0x1c16], bl
movaps xmm0, xmmword [esp + 0x120]
mov edx, dword [esp + 0xc]
movups xmmword [edx + 0x1c17], xmm0
movzx esi, word [esp + 0x130]
mov edx, dword [esp + 0xc]
mov word [edx + 0x1c27], si
mov edx, dword [esp + 0xc]
mov bl, byte [esp + 0x1d]
mov byte [edx + 0x1c29], bl
movzx esi, word [esp + 0x10c]
mov edx, dword [esp + 0xc]
mov word [edx + 0x1c2e], si
mov esi, dword [esp + 0x108]
mov edx, dword [esp + 0xc]
mov dword [edx + 0x1c2a], esi
mov esi, dword [esp + 0xc]
mov edx, dword [esp + 0x9c]
mov byte [esi + 0x1c30], dl
mov dl, byte [esp + 0x106]
mov byte [esi + 0x1c33], dl
movzx edx, word [esp + 0x104]
mov word [esi + 0x1c31], dx
mov edx, dword [esp + 0x4c]
mov byte [esi + 0x1c34], dl
mov edx, dword [esp + 0x50]
mov byte [esi + 0x1c35], dl
mov byte [esi + 0x1c36], cl
movaps xmm0, xmmword [esp + 0x480]
movups xmmword [esi + 0x1c37], xmm0
movzx ecx, word [esp + 0x490]
mov word [esi + 0x1c47], cx
mov cl, byte [esp + 0x20]
mov byte [esi + 0x1c49], cl
movsd xmm0, qword [esp + 0xf0]
movsd xmm1, qword [esp + 0xf5]
movsd qword [esi + 0x1c4f], xmm1
movsd qword [esi + 0x1c4a], xmm0
mov ecx, dword [esp + 0x54]
mov byte [esi + 0x1c57], cl
mov ecx, dword [esp + 0x8c]
mov dword [esi + 0x1c58], ecx
mov ecx, dword [esp + 0x60]
mov byte [esi + 0x1c5c], cl
mov ecx, dword [esp + 0xe8]
mov dword [esi + 0x1c5d], ecx
mov cl, byte [esp + 0xec]
mov byte [esi + 0x1c61], cl
mov cl, 1
mov byte [esi + 0x1c62], cl
movzx ecx, word [esp + 0x94]
mov word [esi + 0x1c63], cx
mov ecx, dword [esp + 0x58]
mov byte [esi + 0x1c65], cl
mov cl, byte [esp + 0x24]
mov byte [esi + 0x1c66], cl
mov byte [esi + 0x1c67], al
mov eax, dword [esp + 0xe0]
mov dword [esi + 0x1c70], eax
movsd xmm0, qword [esp + 0xd8]
movsd qword [esi + 0x1c68], xmm0
mov cl, 1
mov byte [esi + 0x1c74], cl
mov eax, dword [esp + 0x64]
mov byte [esi + 0x1c75], al
mov byte [esi + 0x1c76], cl
mov al, byte [esp + 0x25]
mov byte [esi + 0x1c77], al
movaps xmm0, xmmword [0x102b42c0]
movups xmmword [esi + 0x1c78], xmm0
mov al, byte [esp + 0x12]
mov byte [esi + 0x1c88], al
mov al, byte [esp + 0x27]
mov byte [esi + 0x1c89], al
mov byte [esi + 0x1c8a], cl
mov cl, 1
movzx eax, word [esp + 0xd4]
mov word [esi + 0x1c8b], ax
mov al, byte [esp + 0xd6]
mov byte [esi + 0x1c8d], al
mov eax, dword [esp + 0x5c]
mov byte [esi + 0x1c8e], al
mov al, byte [esp + 0x23]
mov byte [esi + 0x1c8f], al
mov word [esi + 0x1c90], 0x101
mov al, byte [esp + 0x13]
mov byte [esi + 0x1c92], al
movzx eax, word [esp + 0x98]
mov word [esi + 0x1c93], ax
mov eax, dword [esp + 0x30]
mov byte [esi + 0x1c95], al
mov eax, dword [esp + 0x68]
mov byte [esi + 0x1c96], al
mov al, byte [esp + 0x26]
mov byte [esi + 0x1c97], al
mov eax, dword [esp + 0x80]
mov byte [esi + 0x1c98], al
mov eax, dword [esp + 0x84]
mov byte [esi + 0x1c99], al
mov eax, dword [esp + 0x6c]
mov byte [esi + 0x1c9a], al
mov eax, dword [esp + 0x44]
mov byte [esi + 0x1c9b], al
movzx eax, word [esp + 0x96]
mov word [esi + 0x1c9c], ax
mov eax, dword [esp + 0x70]
mov byte [esi + 0x1c9e], al
mov al, byte [esp + 0x21]
mov byte [esi + 0x1c9f], al
mov byte [esi + 0x1ca0], cl
mov al, byte [esp + 0x22]
mov byte [esi + 0x1ca1], al
mov byte [esi + 0x1ca2], cl
mov al, byte [esp + 0x29]
mov byte [esi + 0x1ca3], al
mov eax, dword [esp + 0x38]
mov byte [esi + 0x1ca4], al
mov al, byte [esp + 0xd0]
mov byte [esi + 0x1ca9], al
mov eax, dword [esp + 0xcc]
mov dword [esi + 0x1ca5], eax
mov eax, dword [esp + 0x2c]
mov byte [esi + 0x1caa], al
mov eax, dword [esp + 0x7c]
mov byte [esi + 0x1cab], al
mov eax, dword [esp + 0x78]
mov byte [esi + 0x1cac], al
mov al, byte [esp + 0x28]
mov byte [esi + 0x1cad], al
mov eax, dword [esp + 0x3c]
mov byte [esi + 0x1cae], al
movsd xmm0, qword [esp + 0x110]
movsd qword [esi + 0x1caf], xmm0
movzx eax, word [esp + 0x118]
mov word [esi + 0x1cb7], ax
mov byte [esi + 0x1cb9], cl
mov eax, dword [esp + 0x74]
mov byte [esi + 0x1cba], al
mov byte [esi + 0x1cbb], cl
movzx eax, word [esp + 0x9a]
mov word [esi + 0x1cbc], ax
mov byte [esi + 0x1cbe], cl
movzx eax, word [esp + 0xc8]
mov word [esi + 0x1cc7], ax
movsd xmm0, qword [esp + 0xc0]
movsd qword [esi + 0x1cbf], xmm0
mov eax, dword [esp + 0xa0]
mov byte [esi + 0x1cc9], al
mov eax, dword [esp + 0xb7]
mov dword [esi + 0x1cd1], eax
movzx eax, byte [esp + 0x2a]
mov edx, 1
cmovne eax, edx
movsd xmm0, qword [esp + 0xb0]
movsd qword [esi + 0x1cca], xmm0
mov byte [esi + 0x1cd5], al
mov byte [esi + 0x1cd6], cl
mov eax, dword [esp + 0x34]
mov byte [esi + 0x1cd7], al
mov al, byte [esp + 0xae]
mov byte [esi + 0x1cda], al
movzx eax, word [esp + 0xac]
mov word [esi + 0x1cd8], ax
mov eax, dword [esp + 0x48]
mov byte [esi + 0x1cdb], al
mov eax, dword [esp + 0x40]
mov byte [esi + 0x1cdc], al
mov byte [esi + 0x1cdd], cl
mov al, byte [esp + 0x2b]
mov byte [esi + 0x1cde], al
cmp byte [edi + 0x250], 0
lea ebx, [esi + 0x1bfc]
jne 0x10018771
lea edi, [esp + 0x120]
mov ecx, edi
push 1
push 0xde7
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.10226940
lea eax, [esp + 0x130]
push str.Limiting_compressed_format_support._n
push eax
call fcn.10003890
add esp, 8
mov ecx, edi
call fcn.102269f0
xor eax, eax
mov byte [esi + 0x1c8d], al
mov byte [esi + 0x1cbd], al
xorps xmm0, xmm0
movups xmmword [esi + 0x1c10], xmm0
movups xmmword [esi + 0x1c19], xmm0
mov eax, dword [esi + 0xac]
mov dword [esi + 0xb0], eax
lea eax, [esi + 0x1180]
push 0xe3
push ebx
mov dword [esp + 0x1c], eax
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov edi, dword [esi + 0x1bf4]
mov eax, dword [edi]
mov ebx, dword [eax + 0xe4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
call ebx
movsd xmm0, qword [eax]
movsd qword [esi + 0x1264], xmm0
mov eax, dword [eax + 8]
mov dword [esi + 0x126c], eax
cmp dword [esi + 0xc], 0x30a2
je 0x100187c8
cmp dword [esi + 0x14], 1
ja 0x100187f5
movaps xmm0, xmmword [0x102b42d0]
movups xmmword [esi + 0x32c], xmm0
mov eax, 0x10
mov dword [esi + 0x33c], eax
mov dword [esi + 0x340], eax
movaps xmm0, xmmword [0x102b42e0]
movups xmmword [esi + 0x344], xmm0
mov ecx, dword [esi + 0x238]
cmp ecx, 0x11
jl 0x1001880f
mov dword [esi + 0x238], 0x10
mov ecx, 0x10
cmp dword [esi + 0xa0], 0x801
mov edi, dword [esp + 0x14]
jl 0x10018829
mov dword [esi + 0xa0], 0x800
mov eax, dword [esi + 0x14]
cmp eax, 3
jae 0x10018839
mov dword [esi + 0x9c], ecx
jmp 0x10018854
jne 0x10018841
cmp dword [esi + 0x18], 0
je 0x10018831
cmp dword [esi + 0x9c], 0x11
jl 0x10018854
mov dword [esi + 0x9c], 0x10
cmp dword [esi + 0x3c], 0x8001
jl 0x10018864
mov dword [esi + 0x3c], 0x8000
cmp dword [esi + 0x4c], 0x8001
jl 0x10018874
mov dword [esi + 0x4c], 0x8000
cmp dword [esi + 0x38], 0x4001
jl 0x10018884
mov dword [esi + 0x38], 0x4000
cmp dword [esi + 0x44], 0x801
jl 0x10018894
mov dword [esi + 0x44], 0x800
cmp dword [esi + 0x40], 0x8001
jl 0x100188a4
mov dword [esi + 0x40], 0x8000
cmp dword [esi + 0x160], 0x11
jl 0x100188b7
mov dword [esi + 0x160], 0x10
cmp dword [esi + 0x16c], 0x11
jl 0x100188ca
mov dword [esi + 0x16c], 0x10
cmp dword [esi + 0x170], 0x11
jl 0x100188dd
mov dword [esi + 0x170], 0x10
cmp dword [esi + 0x174], 0x11
jl 0x100188f0
mov dword [esi + 0x174], 0x10
cmp dword [esi + 0x28c], 0x3d
jl 0x10018903
mov dword [esi + 0x28c], 0x3c
cmp dword [esi + 0x27c], 0x49
jl 0x10018916
mov dword [esi + 0x27c], 0x48
cmp dword [esi + 0x240], 0x81
jl 0x1001892c
mov dword [esi + 0x240], 0x80
cmp dword [esi + 0x248], 0x81
jl 0x10018942
mov dword [esi + 0x248], 0x80
cmp dword [esi + 0x2d0], 0x81
jl 0x10018958
mov dword [esi + 0x2d0], 0x80
cmp dword [esi + 0x2d4], 5
jl 0x1001896b
mov dword [esi + 0x2d4], 4
cmp dword [esi + 0x2d8], 5
jl 0x1001897e
mov dword [esi + 0x2d8], 4
cmp eax, 3
jae 0x100189a1
cmp byte [esi + 0x125b], 0
jne 0x100189a9
cmp dword [esi + 0x298], 0x41
jl 0x100189bc
mov dword [esi + 0x298], 0x40
jmp 0x100189bc
jne 0x100189a9
cmp dword [esi + 0x18], 1
jbe 0x10018983
cmp dword [esi + 0x298], 0x61
jl 0x100189bc
mov dword [esi + 0x298], 0x60
cmp dword [esi + 0x178], 0x21
jl 0x100189cf
mov dword [esi + 0x178], 0x20
cmp dword [esi + 0x17c], 0x20
jle 0x100189e2
mov dword [esi + 0x17c], 0x20
cmp dword [esi + 0x180], 0x21
jl 0x100189f5
mov dword [esi + 0x180], 0x20
cmp dword [esi + 0x184], 0x21
jl 0x10018a08
mov dword [esi + 0x184], 0x20
cmp dword [esi + 0x188], 0x21
jl 0x10018a1b
mov dword [esi + 0x188], 0x20
cmp dword [esi + 0x18c], 0x21
jl 0x10018a2e
mov dword [esi + 0x18c], 0x20
cmp dword [esi + 0x2b4], 0x60
jle 0x10018a41
mov dword [esi + 0x2b4], 0x60
cmp dword [esi + 0x2b8], 0x61
jl 0x10018a54
mov dword [esi + 0x2b8], 0x60
cmp dword [esi + 0x1f0], 0x61
jl 0x10018a67
mov dword [esi + 0x1f0], 0x60
cmp dword [esi + 0x1f4], 0x60
jle 0x10018a7a
mov dword [esi + 0x1f4], 0x60
cmp dword [esi + 0x1f8], 0x61
jl 0x10018a8d
mov dword [esi + 0x1f8], 0x60
cmp dword [esi + 0x1fc], 0x61
jl 0x10018aa0
mov dword [esi + 0x1fc], 0x60
cmp dword [esi + 0x200], 0x61
jl 0x10018ab3
mov dword [esi + 0x200], 0x60
cmp dword [esi + 0x204], 0x61
jl 0x10018ac6
mov dword [esi + 0x204], 0x60
cmp dword [esi + 0x1c0], 8
jle 0x10018ad9
mov dword [esi + 0x1c0], 8
cmp dword [esi + 0x1c4], 8
jle 0x10018aec
mov dword [esi + 0x1c4], 8
cmp dword [esi + 0x1c8], 9
jl 0x10018aff
mov dword [esi + 0x1c8], 8
cmp dword [esi + 0x1cc], 9
jl 0x10018b12
mov dword [esi + 0x1cc], 8
cmp dword [esi + 0x1d0], 9
jl 0x10018b25
mov dword [esi + 0x1d0], 8
cmp dword [esi + 0x1d4], 9
jl 0x10018b38
mov dword [esi + 0x1d4], 8
cmp dword [esi + 0x2a4], 8
jle 0x10018b4b
mov dword [esi + 0x2a4], 8
cmp dword [esi + 0x2ac], 9
jl 0x10018b5e
mov dword [esi + 0x2ac], 8
cmp dword [esi + 0x190], 0x41
jl 0x10018b71
mov dword [esi + 0x190], 0x40
cmp dword [esi + 0x194], 0x40
jle 0x10018b84
mov dword [esi + 0x194], 0x40
cmp dword [esi + 0x198], 0x41
jl 0x10018b97
mov dword [esi + 0x198], 0x40
cmp dword [esi + 0x19c], 0x41
jl 0x10018baa
mov dword [esi + 0x19c], 0x40
cmp dword [esi + 0x1a0], 0x41
jl 0x10018bbd
mov dword [esi + 0x1a0], 0x40
cmp dword [esi + 0x1a4], 0x41
jl 0x10018bd0
mov dword [esi + 0x1a4], 0x40
cmp dword [esi + 0x2bc], 0x40
jle 0x10018be3
mov dword [esi + 0x2bc], 0x40
cmp dword [esi + 0x2c8], 0x41
jl 0x10018bf6
mov dword [esi + 0x2c8], 0x40
cmp dword [esi + 0x320], 0x21
jb 0x10018c09
mov dword [esi + 0x320], 0x20
cmp dword [esi + 0x2e0], 0x101
jl 0x10018c1f
mov dword [esi + 0x2e0], 0x100
cmp dword [esi + 0x80], 3
jl 0x10018c32
mov dword [esi + 0x80], 2
mov al, byte [esi + 0x1eec]
mov byte [esi + 0x1213], al
call fcn.100070e0
mov eax, dword [eax]
mov ecx, dword [eax]
cmp ecx, eax
je 0x10018c90
cmp byte [esi + 0x1eee], 0
jne 0x10018c61
cmp byte [ecx + 0x28], 0
je 0x10018c61
mov edx, dword [ecx + 0x2c]
mov byte [edi + edx], 0
mov esi, dword [ecx + 8]
cmp byte [esi + 0xd], 0
je 0x10018c7c
mov edx, dword [ecx + 4]
cmp byte [edx + 0xd], 0
jne 0x10018c86
cmp ecx, dword [edx + 8]
mov ecx, edx
je 0x10018c6a
jmp 0x10018c86
mov edx, esi
mov esi, dword [esi]
cmp byte [esi + 0xd], 0
je 0x10018c7c
mov ecx, edx
cmp edx, eax
mov esi, dword [esp + 0xc]
jne 0x10018c4b
cmp byte [esi + 0x1eec], 0
je 0x10018ca9
cmp byte [esi + 0x126f], 0
je 0x10018ca9
mov byte [esi + 0x1c1a], 0
mov eax, dword [esi + 0x20cc]
cmp byte [eax + 0x24], 0
jne 0x100194a4
mov eax, dword [esi + 0x1ee8]
cmp byte [eax + 0x268], 0
jne 0x100194a4
mov eax, dword [esi + 0x1ee8]
cmp byte [eax + 0x220], 0
je 0x10018cfa
mov byte [esi + 0x1185], 0
mov eax, dword [esi + 0xb8]
mov ecx, dword [esi + 0xc4]
mov dword [esi + 0xc8], ecx
mov dword [esi + 0xbc], eax
mov ecx, esi
call fcn.10022860
mov eax, dword [esi + 0x1ee8]
cmp byte [eax + 0x1f0], 0
je 0x10018d17
or byte [esi + 0x2000], 3
lea ecx, [esi + 8]
mov dword [esp + 0x18], ecx
push esi
call fcn.1007c9f0
xor esi, esi
mov eax, dword [esp + 0xc]
mov dword [eax + 0x1d6c], esi
mov eax, dword [esp + 0xc]
mov dword [eax + 0x1d70], esi
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push esi
push esi
mov esi, dword [esp + 0x14]
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1cf0]
mov dword [esi + 0x1cf0], ebx
test edi, edi
je 0x10018d99
dec dword [edi + 4]
jne 0x10018d99
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 7
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d28]
mov dword [esi + 0x1d28], ebx
test edi, edi
je 0x10018df6
dec dword [edi + 4]
jne 0x10018df6
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
cmp dword [esi + 0x14], 2
ja 0x10018e09
cmp byte [esi + 0x1c30], 0
je 0x10018ed3
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 4
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d10]
mov dword [esi + 0x1d10], ebx
test edi, edi
je 0x10018e66
dec dword [edi + 4]
jne 0x10018e66
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
cmp dword [esi + 0x14], 3
jb 0x10018ed3
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 1
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1cf8]
mov dword [esi + 0x1cf8], ebx
test edi, edi
je 0x10018ec9
dec dword [edi + 4]
jne 0x10018ec9
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
cmp dword [esi + 0x14], 3
jae 0x10019454
cmp byte [esi + 0x1cba], 0
je 0x10018f39
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 2
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d00]
mov dword [esi + 0x1d00], ebx
test edi, edi
je 0x10018f39
dec dword [edi + 4]
jne 0x10018f39
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
cmp dword [esi + 0x14], 3
jb 0x100190fe
jne 0x10018f4f
cmp dword [esi + 0x18], 0
je 0x100190f8
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 3
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d08]
mov dword [esi + 0x1d08], ebx
test edi, edi
je 0x10018fac
dec dword [edi + 4]
jne 0x10018fac
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
cmp dword [esi + 0x2a4], 0
jle 0x10019052
xor edi, edi
mov dword [esp + 0x14], edi
mov edx, dword [esi + 0x1274]
cmp dword [edx + 0x38], 0
je 0x10018fd7
mov eax, dword [edx + 0x3c]
mov eax, dword [eax]
cmp eax, 0xffffffff
jne 0x10019011
jmp 0x10019015
mov eax, dword [edx + 0x58]
add eax, eax
and eax, 0x972bea2a
mov ecx, dword [edx + 0x44]
mov esi, dword [edx + 0x4c]
mov ebx, dword [esi + eax*4]
or eax, 1
mov edx, ebx
cmp ecx, ebx
je 0x10018ffa
mov edi, dword [esi + eax*4]
mov edi, dword [edi]
jmp 0x10018ffc
mov edi, ebx
cmp edx, edi
je 0x10019015
cmp dword [edx + 8], 0
je 0x1001900a
mov edx, dword [edx]
jmp 0x10018fef
cmp edx, ecx
je 0x10019015
mov eax, dword [edx + 0xc]
test eax, eax
jne 0x10019017
xor eax, eax
mov ecx, dword [esp + 0x18]
xor edx, edx
push edx
push edx
push eax
mov edi, dword [esp + 0x20]
push edi
push 1
mov esi, dword [esp + 0x20]
push esi
call fcn.10080ec0
cmp eax, 1
je 0x10019045
xor eax, eax
inc eax
mov dword [esi + 0x1f18], eax
mov dword [esi + 0x1f1c], eax
inc edi
cmp edi, dword [esi + 0x2a4]
jl 0x10018fbb
cmp dword [esi + 0x2bc], 0
jle 0x100190f8
xor edi, edi
mov dword [esp + 0x14], edi
mov edx, dword [esi + 0x1274]
cmp dword [edx + 0x38], 0
je 0x1001907d
mov eax, dword [edx + 0x3c]
mov eax, dword [eax]
cmp eax, 0xffffffff
jne 0x100190b7
jmp 0x100190bb
mov eax, dword [edx + 0x58]
add eax, eax
and eax, 0x972bea2a
mov ecx, dword [edx + 0x44]
mov esi, dword [edx + 0x4c]
mov ebx, dword [esi + eax*4]
or eax, 1
mov edx, ebx
cmp ecx, ebx
je 0x100190a0
mov edi, dword [esi + eax*4]
mov edi, dword [edi]
jmp 0x100190a2
mov edi, ebx
cmp edx, edi
je 0x100190bb
cmp dword [edx + 8], 0
je 0x100190b0
mov edx, dword [edx]
jmp 0x10019095
cmp edx, ecx
je 0x100190bb
mov eax, dword [edx + 0xc]
test eax, eax
jne 0x100190bd
xor eax, eax
mov ecx, dword [esp + 0x18]
xor edx, edx
push edx
push edx
push eax
mov edi, dword [esp + 0x20]
push edi
push 9
mov esi, dword [esp + 0x20]
push esi
call fcn.10080ec0
cmp eax, 1
je 0x100190eb
xor eax, eax
inc eax
mov dword [esi + 0x1f18], eax
mov dword [esi + 0x1f1c], eax
inc edi
cmp edi, dword [esi + 0x2bc]
jl 0x10019061
cmp dword [esi + 0x14], 3
jae 0x10019112
cmp byte [esi + 0x1ccb], 0
jne 0x1001911a
cmp byte [esi + 0x1ccc], 0
jne 0x1001911a
jmp 0x10019177
jne 0x1001911a
cmp dword [esi + 0x18], 1
jbe 0x100190fe
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 8
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d30]
mov dword [esi + 0x1d30], ebx
test edi, edi
je 0x10019177
dec dword [edi + 4]
jne 0x10019177
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
cmp dword [esi + 0x14], 3
jae 0x10019191
cmp byte [esi + 0x1cd9], 0
jne 0x10019199
cmp byte [esi + 0x1cda], 0
jne 0x10019199
jmp 0x100191f6
jne 0x10019199
cmp dword [esi + 0x18], 1
jbe 0x1001917d
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 0xa
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d40]
mov dword [esi + 0x1d40], ebx
test edi, edi
je 0x100191f6
dec dword [edi + 4]
jne 0x100191f6
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
cmp byte [esi + 0x1ca3], 0
je 0x1001925c
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 6
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d20]
mov dword [esi + 0x1d20], ebx
test edi, edi
je 0x1001925c
dec dword [edi + 4]
jne 0x1001925c
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
cmp byte [esi + 0x1c64], 0
jne 0x1001926e
cmp byte [esi + 0x1c6f], 0
je 0x100192cb
push 0x200
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 5
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d18]
mov dword [esi + 0x1d18], ebx
test edi, edi
je 0x100192cb
dec dword [edi + 4]
jne 0x100192cb
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
lea eax, [esi + 0x1cec]
cmp byte [esi + 0x1cc8], 0
je 0x10019343
push 0x200
mov dword [esp + 0x18], eax
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push 9
push 0
push dword [esi + 0x1bf4]
call fcn.100863f0
mov eax, dword [esp + 0x14]
inc dword [ebx + 4]
mov edi, dword [esi + 0x1d38]
mov dword [esi + 0x1d38], ebx
test edi, edi
je 0x10019343
dec dword [edi + 4]
jne 0x10019343
mov eax, dword [edi]
mov ebx, dword [eax]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push esi
call ebx
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
push 1
call ebx
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
push eax
push esi
call fcn.1007f990
mov edi, dword [esi + 0x1bf4]
mov eax, dword [edi]
mov ebx, dword [eax + 0x4c]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
call ebx
cmp eax, 1
je 0x10019909
mov ecx, esi
push 0
call fcn.10016360
cmp dword [esi + 0x14], 3
jb 0x10019391
mov ecx, esi
push 0
call fcn.1001d780
mov ecx, dword [esp + 0x18]
push eax
push esi
call fcn.10080710
mov dword [esp + 0x30], 0
mov edx, dword [esi + 0x1274]
cmp dword [edx + 0x38], 0
je 0x100193ef
mov eax, dword [edx + 0x3c]
mov esi, dword [eax]
cmp esi, 0xffffffff
mov eax, 0
cmove esi, eax
mov ebx, dword [esp + 0x30]
mov edi, dword [ebx*4 + 0x102bcaf0]
mov ecx, edi
call dword [section..00cfg]
mov ecx, dword [esp + 0x18]
push esi
mov esi, dword [esp + 0x10]
push esi
call edi
xor eax, eax
inc eax
mov dword [esi + 0x1f18], eax
mov dword [esi + 0x1f1c], eax
inc ebx
mov dword [esp + 0x30], ebx
cmp ebx, 0xd
jne 0x10019399
jmp 0x10019435
mov eax, dword [edx + 0x58]
add eax, eax
and eax, 0x972bea2a
mov ecx, dword [edx + 0x44]
mov edx, dword [edx + 0x4c]
mov dword [esp + 0x14], edx
mov edi, dword [edx + eax*4]
or eax, 1
mov edx, edi
cmp ecx, edi
je 0x1001941a
mov esi, dword [esp + 0x14]
mov esi, dword [esi + eax*4]
mov ebx, dword [esi]
jmp 0x1001941c
mov ebx, edi
xor esi, esi
cmp edx, ebx
je 0x100193b5
cmp dword [edx + 8], 0
je 0x1001942c
mov edx, dword [edx]
jmp 0x1001940b
cmp edx, ecx
je 0x100193b5
mov esi, dword [edx + 0xc]
jmp 0x100193b5
mov edx, dword [esi + 0x1280]
cmp dword [edx + 0x38], 0
je 0x10019469
mov eax, dword [edx + 0x3c]
mov eax, dword [eax]
cmp eax, 0xffffffff
jne 0x100197eb
jmp 0x100197ef
jne 0x10018edc
cmp dword [esi + 0x18], 0
jne 0x10018edc
jmp 0x10018ed3
mov eax, dword [edx + 0x58]
add eax, eax
and eax, 0x972bea2a
mov ecx, dword [edx + 0x44]
mov esi, dword [edx + 0x4c]
mov edi, dword [esi + eax*4]
or eax, 1
mov edx, edi
cmp ecx, edi
je 0x1001948c
mov ebx, dword [esi + eax*4]
mov ebx, dword [ebx]
jmp 0x1001948e
mov ebx, edi
cmp edx, ebx
je 0x100197ef
cmp dword [edx + 8], 0
je 0x100197e4
mov edx, dword [edx]
jmp 0x10019481
mov edx, str.initCaps
mov ebx, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
lea edi, [esp + 0x120]
mov ecx, edi
xor eax, eax
inc eax
push eax
push 0xea5
push edx
push ebx
call fcn.10226940
lea eax, [esp + 0x130]
push str.Limit_some_features_because
push eax
call fcn.10003890
add esp, 8
mov ecx, dword [esi + 0x20cc]
cmp byte [ecx + 0x24], 0
mov ecx, str.FrameCapture_limits_were_forced
mov edx, str.FrameCapture_is_enabled
cmove edx, ecx
push edx
push eax
call fcn.10003890
add esp, 8
mov ebx, eax
mov eax, dword [eax]
mov ecx, dword [eax + 4]
add ecx, ebx
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, ebx
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, ebx
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_]
mov ecx, edi
call fcn.102269f0
lea edi, [esp + 0x120]
mov ecx, edi
xor eax, eax
inc eax
push eax
push 0xeaa
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.10226940
push str.Limiting_binary_format_support_count_to_zero
lea eax, [esp + 0x134]
push eax
call fcn.10003890
add esp, 8
mov ecx, edi
call fcn.102269f0
mov eax, dword [esi + 0x1ee8]
mov dword [esp + 0x14], eax
xor esi, esi
mov dword [edi + 0x10], esi
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
sub esp, 0xc
lea edi, [esp + 0x48c]
mov al, byte [edi]
mov byte [esp + 4], al
mov dword [esp + 8], str.disable_program_binary
mov dword [esp], 0x16
lea ebx, [esp + 0x12c]
mov ecx, ebx
call fcn.10001080
lea eax, [esp + 0x138]
mov dword [edi], esi
mov dword [edi + 4], esi
mov dword [edi + 8], esi
lea esi, [esp + 0x130]
mov ecx, edi
mov edx, ebx
mov ebx, dword [esp + 0xc]
push eax
call fcn.10220a70
add esp, 4
mov ecx, dword [esp + 0x14]
xor eax, eax
inc eax
push eax
push edi
call fcn.1003ee60
mov ecx, edi
call fcn.10004b50
lea eax, [esp + 0x138]
mov ecx, dword [eax - 4]
cmp ecx, 0x10
jb 0x1001961b
mov eax, dword [esp + 0x120]
inc ecx
cmp ecx, 0x1000
jae 0x1001a1d1
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ebx, dword [esp + 0xc]
lea edi, [esp + 0x120]
mov ecx, edi
push 1
push 0xeaf
push str.initCaps
push str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
call fcn.10226940
push str.Limiting_image_unit_count_to
push esi
call fcn.10003890
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.102269f0
cmp dword [ebx + 0x2b4], 9
mov edi, esi
jl 0x10019670
mov eax, ebx
mov dword [ebx + 0x2b4], 8
mov eax, str.initCaps
mov edx, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
lea ecx, [esp + 0x120]
xor esi, esi
inc esi
push esi
push 0xeb7
push eax
push edx
call fcn.10226940
push str.Setting_uniform_buffer_offset_alignment_to
push edi
call fcn.10003890
add esp, 8
mov ebx, 0x100
mov ecx, eax
push ebx
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 + 0x120]
call fcn.102269f0
mov eax, dword [esp + 0xc]
mov dword [eax + 0x288], ebx
lea ebx, [esp + 0x120]
mov ecx, ebx
push esi
push 0xeba
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.10226940
push str.Disabling_GL_EXT_map_buffer_range_and_GL_OES_mapbuffer_during_capture__which_are_not_supported_on_some_native_drivers
push edi
call fcn.10003890
add esp, 8
mov ecx, ebx
call fcn.102269f0
mov eax, dword [esp + 0xc]
mov word [eax + 0x118b], 0
lea ebx, [esp + 0x120]
mov ecx, ebx
push esi
push 0xebf
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.10226940
push str.Disabling_GL_CHROMIUM_bind_uniform_location_during_capture__which_is_not_supported_on_native_drivers
push edi
call fcn.10003890
add esp, 8
mov ecx, ebx
call fcn.102269f0
xor ebx, ebx
mov eax, dword [esp + 0xc]
mov byte [eax + 0x120e], bl
lea esi, [esp + 0x120]
mov ecx, esi
xor eax, eax
inc eax
push eax
push 0xec3
mov eax, str.initCaps
push eax
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.10226940
push str.Disabling_GL_NV_shader_noperspective_interpolation_during_capture__which_is_not_supported_on_some_native_drivers
push edi
call fcn.10003890
add esp, 8
mov ecx, esi
call fcn.102269f0
mov eax, dword [esp + 0xc]
mov byte [eax + 0x11f6], bl
lea ebx, [esp + 0x120]
mov ecx, ebx
xor eax, eax
inc eax
push eax
push 0xec9
mov eax, str.initCaps
push eax
mov esi, dword [esp + 0x18]
mov eax, str._builds_worker_checkouts_gecko_gfx_angle_checkout_src_libANGLE_Context.cpp
push eax
call fcn.10226940
push str.Limiting_draw_buffer_count_to
push edi
call fcn.10003890
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, ebx
call fcn.102269f0
cmp dword [esi + 0x64], 5
jl 0x10018ccc
mov dword [esi + 0x64], 4
jmp 0x10018ccc
cmp edx, ecx
je 0x100197ef
mov eax, dword [edx + 0xc]
test eax, eax
jne 0x100197f1
xor eax, eax
mov ecx, dword [esp + 0x18]
push eax
mov ebx, dword [esp + 0x10]
push ebx
call fcn.1007fe20
cmp dword [ebx + 0x27c], 0
jle 0x10019824
xor esi, esi
xor edi, edi
mov ecx, ebx
push 0xffffffffffffffff
push esi
push esi
push edi
push 0xc
call fcn.10016210
inc edi
cmp edi, dword [ebx + 0x27c]
jl 0x1001980d
cmp dword [ebx + 0x14], 2
mov esi, ebx
jae 0x10019874
push 0x7b8
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
xor ecx, ecx
mov byte [eax], cl
mov byte [eax + 0x79c], cl
xorps xmm0, xmm0
movups xmmword [eax + 0x7a0], xmm0
mov dword [eax + 0x7b4], ecx
mov dword [eax + 0x7b0], ecx
mov ecx, dword [esi + 0x1ed0]
mov dword [esi + 0x1ed0], eax
test ecx, ecx
je 0x10019874
push ecx
call dword [sym.imp.mozglue.dll_free]
add esp, 4
xor eax, eax
dec eax
mov dword [esi + 0x1ffc], eax
mov dword [esi + 0x1ff8], eax
or dword [esi + 0x1ef4], 0xfc1
or dword [esi + 0x2004], 0x80000060
or dword [esi + 0x2010], 0x180
or byte [esi + 0x200c], 2
or byte [esi + 0x2014], 0x20
or byte [esi + 0x201c], 0x1c
or dword [esi + 0x2018], 0x8304041d
or byte [esi + 0x2020], 0x40
mov eax, dword [esi + 0x2024]
or dword [esi + 0x2028], 0x4000000
or eax, 0xf
mov dword [esi + 0x2024], eax
or byte [esi + 0x202c], 0x60
or dword [esi + 0x2034], 0x77e000
or dword [esi + 0x2038], 0xf01
or byte [esi + 0x203c], 2
or byte [esi + 0x2044], 0x20
mov ecx, esi
call fcn.1001a1f0
lea edi, [esp + 0x170]
mov dword [edi - 0x50], 0x102b437c
mov ecx, edi
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::ios_base::constructor_void_]
mov dword [edi], 0x102b4410
mov eax, dword [edi - 0x50]
mov eax, dword [eax + 4]
mov esi, 0x102b4378
mov dword [esp + eax + 0x120], esi
mov eax, dword [edi - 0x50]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x11c], ecx
lea ebx, [esp + 0x124]
mov eax, dword [ebx - 4]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x120], 0x102b441c
mov eax, dword [ebx - 4]
mov eax, dword [eax + 4]
lea ecx, [eax - 8]
mov dword [esp + eax + 0x11c], ecx
mov eax, dword [ebx - 4]
mov ecx, dword [eax + 4]
lea edi, [esp + 0x120]
add ecx, edi
xor eax, eax
push eax
push ebx
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 [ebx - 4]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x120], esi
mov esi, dword [esp + 0xc]
mov eax, dword [ebx - 4]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x11c], ecx
mov ecx, ebx
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov dword [ebx], 0x102b4390
xor eax, eax
mov dword [ebx + 0x38], eax
mov dword [ebx + 0x3c], 4
cmp dword [esi + 0xc], 0x30a0
jne 0x100199e1
push str.OpenGL_ES
push edi
call fcn.10003890
add esp, 8
mov edi, 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 + 0x120]
push dword [esi + 0x14]
call edi
push 0x1034b635
push eax
call fcn.10003890
add esp, 8
mov ecx, eax
push dword [esi + 0x18]
call edi
push str..0__ANGLE
push eax
call fcn.10003890
add esp, 8
push 0x1032af97
push eax
call fcn.10003890
add esp, 8
push 0x1034be17
push eax
call fcn.10003890
add esp, 8
lea ebx, [esp + 0x480]
lea ecx, [esp + 0x124]
push ebx
call fcn.100033e0
mov ecx, ebx
call fcn.10021c80
mov dword [esi + 0x1ea4], eax
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x10
jb 0x10019a7d
mov eax, dword [esp + 0x480]
inc ecx
cmp ecx, 0x1000
jae 0x1001a136
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov esi, dword [esp + 0xc]
lea edi, [esp + 0x4d0]
mov dword [edi - 0x50], 0x102b437c
mov ecx, edi
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::ios_base::constructor_void_]
mov dword [edi], 0x102b4410
mov eax, dword [edi - 0x50]
mov eax, dword [eax + 4]
mov ecx, 0x102b4378
mov dword [esp + eax + 0x480], ecx
mov eax, dword [edi - 0x50]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x47c], ecx
mov edi, esi
lea esi, [esp + 0x484]
mov eax, dword [esi - 4]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x480], 0x102b441c
mov eax, dword [esi - 4]
mov eax, dword [eax + 4]
lea ecx, [eax - 8]
mov dword [esp + eax + 0x47c], ecx
mov eax, dword [esi - 4]
mov ecx, dword [eax + 4]
add ecx, ebx
xor eax, eax
push eax
push esi
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 [esi - 4]
mov eax, dword [eax + 4]
mov ecx, 0x102b4378
mov dword [esp + eax + 0x480], ecx
mov eax, dword [esi - 4]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x47c], ecx
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
mov dword [esi], 0x102b4390
xor eax, eax
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], 4
cmp dword [edi + 0xc], 0x30a0
mov eax, str.OpenGL_ES_GLSL_ES
mov ecx, str.OpenGL_GLSL
cmove ecx, eax
push ecx
push ebx
call fcn.10003890
add esp, 8
mov eax, dword [edi + 0x14]
cmp eax, 2
mov edx, 1
cmovne edx, eax
mov ecx, ebx
push edx
mov ebx, 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 ebx
push 0x1034b635
push eax
call fcn.10003890
add esp, 8
mov ecx, eax
push dword [edi + 0x18]
call ebx
push 0x1034d411
push eax
call fcn.10003890
add esp, 8
push 0x1032af97
push eax
call fcn.10003890
add esp, 8
push 0x1034be17
push eax
call fcn.10003890
add esp, 8
lea edi, [esp + 0x468]
mov ecx, esi
push edi
call fcn.100033e0
mov ecx, edi
call fcn.10021c80
mov esi, dword [esp + 0xc]
mov dword [esi + 0x1ea8], eax
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
lea ebx, [esp + 0x170]
jb 0x10019bf6
mov eax, dword [esp + 0x468]
inc ecx
cmp ecx, 0x1000
jae 0x1001a14e
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov eax, dword [esp + 0x480]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x480], 0x102b4378
mov eax, dword [esp + 0x480]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x47c], ecx
mov dword [esp + 0x484], 0x102b4390
test byte [esp + 0x4c0], 1
je 0x10019c73
mov eax, dword [esp + 0x4a4]
mov eax, dword [eax]
test eax, eax
je 0x1001a0cf
lea ecx, [esp + 0x4d0]
add ecx, 0xffffffe4
mov ecx, dword [ecx]
add eax, dword [ecx]
mov ecx, dword [esp + 0x490]
mov ecx, dword [ecx]
sub eax, ecx
cmp eax, 0x1000
jae 0x1001a0e7
push ecx
call dword [sym.imp.mozglue.dll_free]
add esp, 4
lea esi, [esp + 0x4d0]
lea ecx, [esi - 0x4c]
mov eax, dword [esp + 0x490]
xor edi, edi
mov dword [eax], edi
mov eax, dword [esp + 0x4a0]
mov dword [eax], edi
mov eax, dword [esp + 0x4b0]
mov dword [eax], edi
mov eax, dword [esp + 0x494]
mov dword [eax], edi
mov eax, dword [esp + 0x4a4]
mov dword [eax], edi
mov eax, dword [esp + 0x4b4]
mov dword [eax], edi
mov dword [esp + 0x4bc], edi
and byte [esp + 0x4c0], 0xfe
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::destructor_void_]
mov ecx, esi
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::ios_base::destructor_void_]
mov eax, dword [esp + 0x120]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x120], 0x102b4378
mov eax, dword [esp + 0x120]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x50]
mov dword [esp + eax + 0x11c], ecx
mov dword [esp + 0x124], 0x102b4390
test byte [esp + 0x160], 1
je 0x10019d48
mov eax, dword [esp + 0x144]
mov eax, dword [eax]
test eax, eax
je 0x1001a106
lea ecx, [ebx - 0x1c]
mov ecx, dword [ecx]
add eax, dword [ecx]
mov ecx, dword [esp + 0x130]
mov ecx, dword [ecx]
sub eax, ecx
cmp eax, 0x1000
jae 0x1001a117
push ecx
call dword [sym.imp.mozglue.dll_free]
add esp, 4
lea ecx, [ebx - 0x4c]
mov eax, dword [esp + 0x130]
mov dword [eax], edi
mov eax, dword [esp + 0x140]
mov dword [eax], edi
mov eax, dword [esp + 0x150]
mov dword [eax], edi
mov eax, dword [esp + 0x134]
mov dword [eax], edi
mov eax, dword [esp + 0x144]
mov dword [eax], edi
mov eax, dword [esp + 0x154]
mov dword [eax], edi
mov dword [esp + 0x15c], edi
and byte [esp + 0x160], 0xfe
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::destructor_void_]
mov ecx, ebx
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::ios_base::destructor_void_]
mov ecx, dword [esp + 0xc]
call fcn.1001a7f0
mov ebx, 0
mov esi, dword [ebp + 0x10]
test esi, esi
je 0x10019dc5
mov ecx, esi
call fcn.100852d0
mov ebx, eax
mov ecx, esi
call fcn.10085310
mov edi, eax
xor eax, eax
mov esi, dword [esp + 0x18]
mov ecx, esi
push edi
push ebx
push eax
push eax
call fcn.1007f2e0
mov ecx, esi
push edi
push ebx
xor eax, eax
push eax
push eax
call fcn.1007e7d0
mov esi, dword [esp + 0xc]
mov byte [esi + 0x1ed4], 1
mov ebx, dword [ebp + 0x10]
cmp byte [esi + 0x20ef], 0
je 0x10019e4c
mov edi, esi
mov ecx, esi
mov esi, dword [ebp + 8]
mov edx, esi
call fcn.1001a950
cmp dword [esi], 0x3000
jne 0x1001a0b5
mov edx, dword [esi + 8]
test edx, edx
mov esi, edi
je 0x10019e4c
mov ecx, dword [edx + 0x14]
cmp ecx, 0x10
jb 0x10019e42
mov eax, dword [edx]
inc ecx
cmp ecx, 0x1000
jae 0x1001a16d
mov edi, edx
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov edx, edi
push edx
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov edi, dword [ebp + 0x14]
xor eax, eax
dec eax
mov dword [esi + 0x1b98], eax
mov dword [esi + 0x1b94], eax
mov dword [esi + 0x1ba4], 0xffff
mov dword [esi + 0x1ba0], 0xfff
mov dword [esi + 0x1ee0], ebx
mov dword [esi + 0x1ee4], edi
test ebx, ebx
je 0x10019ef1
mov ecx, ebx
mov edi, esi
push esi
mov esi, dword [ebp + 8]
push esi
call fcn.10084910
cmp dword [esi], 0x3000
jne 0x1001a0b5
mov ebx, dword [esi + 8]
test ebx, ebx
mov esi, edi
mov edi, dword [ebp + 0x14]
je 0x10019ed3
mov ecx, dword [ebx + 0x14]
cmp ecx, 0x10
jb 0x10019ec9
mov eax, dword [ebx]
inc ecx
cmp ecx, 0x1000
jae 0x1001a187
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
push ebx
call dword [sym.imp.mozglue.dll_free]
add esp, 4
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push edi
push dword [ebp + 0x10]
push esi
call fcn.100434e0
jmp 0x10019f10
push 0x210
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
mov ebx, eax
mov ecx, eax
push edi
push dword [esi + 0x1bf4]
push esi
call fcn.10043ec0
test edi, edi
je 0x10019f6b
cmp dword [ebp + 0x10], edi
je 0x10019f6b
mov ecx, edi
mov edi, esi
push esi
mov esi, dword [ebp + 8]
push esi
call fcn.10084910
cmp dword [esi], 0x3000
jne 0x1001a0b5
mov eax, dword [esi + 8]
test eax, eax
mov esi, edi
je 0x10019f6b
mov ecx, dword [eax + 0x14]
cmp ecx, 0x10
jb 0x10019f61
mov edi, eax
mov eax, dword [eax]
inc ecx
cmp ecx, 0x1000
jae 0x1001a1a2
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov eax, edi
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ecx, dword [esi + 0x128c]
push ebx
call fcn.100768f0
cmp dword [esi + 0x13fc], 0
jne 0x10019fd2
lea eax, [esi + 8]
mov dword [esp + 0x14], eax
mov ecx, dword [esi + 0x128c]
lea eax, [esi + 0x20]
mov edx, dword [esi + 0x1bf4]
push dword [esi + 0x1270]
push dword [ebx + 0x38]
push eax
call fcn.1001c570
add esp, 0xc
mov edi, eax
mov ecx, dword [esp + 0x14]
push eax
call fcn.1007ff90
lea ecx, [esi + 0x2058]
lea eax, [edi + 8]
test edi, edi
cmove eax, edi
push eax
call fcn.100545d0
mov dword [esi + 0x1f18], 1
cmp dword [esi + 0x13f8], 0
jne 0x1001a01d
lea edi, [esi + 8]
mov ecx, dword [esi + 0x128c]
lea eax, [esi + 0x20]
mov edx, dword [esi + 0x1bf4]
push dword [esi + 0x1270]
push dword [ebx + 0x38]
push eax
call fcn.1001c570
add esp, 0xc
mov ebx, eax
mov ecx, edi
push eax
call fcn.1007ff50
lea ecx, [esi + 0x2068]
lea eax, [ebx + 8]
test ebx, ebx
cmove eax, ebx
push eax
call fcn.100545d0
mov eax, esi
mov esi, dword [ebp + 8]
mov dword [esi], 0x3000
mov ecx, eax
xor eax, eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov edi, dword [ecx + 0x1bf4]
mov eax, dword [edi]
mov ebx, dword [eax + 0xd0]
mov ecx, ebx
call dword [section..00cfg]
mov ecx, edi
mov edi, dword [esp + 0xc]
push edi
call ebx
test eax, eax
je 0x1001a0a0
mov ecx, edi
mov edx, esi
call fcn.1001a950
cmp dword [esi], 0x3000
jne 0x1001a0b5
mov edi, dword [esi + 8]
test edi, edi
je 0x1001a098
mov ecx, dword [edi + 0x14]
cmp ecx, 0x10
jb 0x1001a08e
mov eax, dword [edi]
inc ecx
cmp ecx, 0x1000
jae 0x1001a1ba
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
push edi
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [esi], 0x3002
jmp 0x1001a0ad
mov byte [edi + 0x20ef], 1
mov dword [esi], 0x3000
xor eax, eax
mov dword [esi + 4], eax
mov dword [esi + 8], eax
mov ecx, dword [esp + 0x518]
xor ecx, ebp
call fcn.1021e470
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x10
mov eax, dword [esp + 0x4a0]
mov eax, dword [eax]
lea ecx, [esp + 0x4d0]
add ecx, 0xffffffe0
jmp 0x10019c4f
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x1001a1e5
mov ecx, eax
lea ebx, [esp + 0x170]
jmp 0x10019c69
mov eax, dword [esp + 0x140]
mov eax, dword [eax]
lea ecx, [ebx - 0x20]
jmp 0x10019d24
mov eax, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, eax
cmp ecx, 0x20
jae 0x1001a1e5
mov ecx, eax
lea ebx, [esp + 0x170]
jmp 0x10019d3e
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001a1e5
mov eax, ecx
jmp 0x10019a6f
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001a1e5
mov eax, ecx
lea ebx, [esp + 0x170]
jmp 0x10019bec
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001a1e5
mov edi, edx
mov eax, ecx
mov esi, dword [esp + 0xc]
jmp 0x10019e36
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001a1e5
mov eax, ecx
mov esi, dword [esp + 0xc]
mov edi, dword [ebp + 0x14]
jmp 0x10019ebf
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001a1e5
mov eax, ecx
mov esi, dword [esp + 0xc]
jmp 0x10019f55
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001a1e5
mov eax, ecx
mov esi, dword [ebp + 8]
jmp 0x1001a084
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1001a1e5
mov eax, ecx
jmp 0x1001960d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3