Function at 0x100203c0
Capabilities:
Get system information on windows
Query environment variable
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xa0
mov eax, dword [0x100a400c]
xor eax, ebp
mov dword [esp + 0x98], eax
cmp dword [0x100a4810], 0
je 0x10022721
mov eax, dword [ebp + 8]
test eax, eax
je 0x10021f63
mov edi, eax
cmp edi, 0x1f0
ja 0x100205bc
mov eax, dword [0x100a43c8]
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + eax*4]
cmp byte [eax + 8], 0
je 0x10022b79
mov eax, dword [0x100a43c8]
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + eax*4]
mov eax, dword [eax + 0xc]
mov esi, eax
test eax, eax
je 0x10022266
mov edx, edi
cmp edi, 9
jb 0x10020729
add edx, 0xf
mov eax, edx
and eax, 0xfffffff0
mov dword [esp + 0x20], eax
shr edx, 4
shl edx, 5
mov dword [esp + 0x18], edx
cmp byte [esi + 0x40], 0
je 0x1002046f
cmp dword [esi + 0x44], 0
je 0x10022697
mov eax, dword [esp + 0x18]
lea ebx, [esi + eax]
add ebx, 0x5c
lea eax, [esi + 0xc]
mov dword [esp + 0x38], eax
mov dword [esp + 0x10], esi
cmp dword [esi + 0x24], 0
jne 0x10020494
push dword [esp + 0x38]
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov ecx, dword [ebx]
test ecx, ecx
je 0x100205ec
cmp dword [ecx + 8], 0
je 0x100205ec
mov eax, dword [ecx + 4]
mov dword [esp + 8], eax
mov edx, dword [ecx + eax*4 + 0xc]
test edx, edx
je 0x100206be
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x44]
test ebx, ebx
jne 0x1002054e
tzcnt ebx, edx
mov esi, dword [esp + 8]
mov edi, esi
shl edi, 5
or edi, ebx
btc edx, ebx
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
imul edi, dword [ebx + eax + 0x64]
mov eax, dword [ebx + eax + 0x70]
mov dword [ecx + esi*4 + 0xc], edx
add eax, ecx
add edi, eax
dec dword [ecx + 8]
mov dword [esp + 8], edi
test edi, edi
je 0x10022b89
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x10]
add dword [ecx + 0x30], eax
xor ebx, ebx
cmp dword [ecx + 0x24], 0
jne 0x10020521
push dword [esp + 0x38]
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
test bl, bl
jne 0x1002411c
cmp dword [esp + 8], 0
je 0x1002411c
mov ecx, dword [esp + 0x98]
xor ecx, ebp
call fcn.1004f020
mov eax, dword [esp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp], ecx
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
mov edi, eax
shld edi, ecx, 0x17
mov esi, ecx
shl esi, 0x17
xor esi, ecx
mov ecx, dword [ebx + 0xc]
xor edi, eax
mov eax, ecx
shr eax, 0x1a
xor eax, ecx
xor eax, edi
mov dword [esp + 4], edi
shr edi, 0x11
xor edi, eax
mov eax, dword [ebx + 8]
mov dword [ebx + 4], ecx
shld dword [esp + 4], esi, 0xf
shld ecx, eax, 6
xor ecx, eax
xor ecx, esi
xor ecx, dword [esp + 4]
mov dword [ebx], eax
mov dword [ebx + 0xc], edi
mov dword [ebx + 8], ecx
add ecx, eax
mov esi, edx
ror esi, cl
test esi, esi
je 0x100205b5
tzcnt ebx, esi
add ebx, ecx
and ebx, 0x1f
mov ecx, dword [esp]
jmp 0x100204ce
mov ebx, 0x20
jmp 0x100205a8
mov esi, dword [0x100a4744]
mov edx, edi
cmp edi, 0xf01
jae 0x1002080f
add edx, 0xff
mov eax, edx
and eax, 0x1f00
mov dword [esp + 0x20], eax
shr edx, 8
add edx, 0x1e
jmp 0x10020458
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov eax, dword [edx + ecx + 0x60]
test eax, eax
mov dword [esp + 8], ebx
je 0x10020bee
add ecx, edx
add ecx, 0x60
mov dword [esp + 4], ecx
mov ecx, eax
nop
mov ebx, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x10020610
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
xor edx, edx
cmp eax, ebx
setb dl
mov ecx, 0xffffffff
cmovbe ecx, edx
cmp ecx, 0xffffffff
jne 0x100207e1
mov edx, dword [eax]
test edx, edx
je 0x100229be
mov ecx, dword [edx + 4]
mov dword [esp], 0
test cl, 1
jne 0x100235ff
mov esi, dword [edx]
test esi, esi
je 0x10020669
test byte [esi + 4], 1
jne 0x100235ff
or ecx, 1
mov dword [edx + 4], ecx
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x100229a9
mov edx, dword [ecx]
test edx, edx
je 0x1002069d
mov edi, dword [edx + 4]
mov dword [esp + 0x14], edi
mov dword [esp + 0xc], ecx
mov ecx, edi
test cl, 1
mov ecx, dword [esp + 0xc]
jne 0x10020e96
or esi, 1
mov dword [eax + 4], esi
mov edx, dword [ecx]
or edx, 1
mov dword [eax + 4], edx
mov dword [ecx], eax
mov edx, ecx
and byte [edx + 4], 0xfe
lea eax, [esp + 0x70]
mov dword [eax], edx
jmp 0x100235ff
mov dword [esp], ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + eax + 0x6c]
mov edx, dword [esp + 8]
mov edi, edx
shl edi, 5
mov eax, dword [esp]
inc edx
cmp edx, ecx
jae 0x10022b83
mov esi, dword [eax + edx*4 + 0xc]
add edi, 0x20
test esi, esi
je 0x100206d9
mov dword [esp + 8], edx
mov ecx, dword [esp + 0x10]
mov ebx, dword [ecx + 0x44]
test ebx, ebx
jne 0x10020766
tzcnt ebx, esi
add edi, ebx
mov eax, dword [esp + 0x18]
imul edi, dword [ecx + eax + 0x64]
mov eax, dword [ecx + eax + 0x70]
mov ecx, dword [esp]
add eax, ecx
add edi, eax
btc esi, ebx
mov eax, dword [esp + 8]
mov dword [ecx + eax*4 + 0xc], esi
mov dword [ecx + 4], eax
jmp 0x100204f5
mov eax, edx
dec eax
je 0x100207d7
bsr ecx, eax
xor ecx, 0x1f
neg cl
mov edx, 1
shl edx, cl
cmp edx, 9
mov eax, 8
cmovb edx, eax
cmp edi, 2
cmovb edx, eax
mov dword [esp + 0x20], edx
mov eax, edx
shr eax, 3
or eax, 1
bsr edx, eax
jmp 0x10020458
mov eax, dword [ebx]
mov edx, dword [ebx + 4]
mov dword [esp + 4], edx
shld edx, eax, 0x17
mov dword [esp + 0xc], esi
mov esi, eax
shl esi, 0x17
xor esi, eax
mov ecx, dword [ebx + 0xc]
xor edx, dword [esp + 4]
mov eax, ecx
shr eax, 0x1a
xor eax, ecx
xor eax, edx
mov dword [esp + 4], edx
shr edx, 0x11
xor edx, eax
mov eax, dword [ebx + 8]
mov dword [ebx + 4], ecx
shld dword [esp + 4], esi, 0xf
shld ecx, eax, 6
xor ecx, eax
xor ecx, esi
mov esi, dword [esp + 0xc]
xor ecx, dword [esp + 4]
mov dword [ebx], eax
mov dword [ebx + 0xc], edx
mov dword [ebx + 8], ecx
add ecx, eax
mov edx, esi
ror edx, cl
test edx, edx
je 0x10020808
tzcnt ebx, edx
add ebx, ecx
and ebx, 0x1f
mov ecx, dword [esp + 0x10]
jmp 0x10020700
mov ecx, 0x20
jmp 0x10020738
test ecx, ecx
jne 0x10020afc
mov ecx, dword [eax + 4]
cmp ecx, 1
ja 0x10021d48
mov ecx, dword [eax]
test ecx, ecx
jne 0x10021cf5
mov dword [esp + 0x70], ecx
jmp 0x1002361c
mov ebx, 0x20
jmp 0x100207c9
cmp edx, 0xfd000
ja 0x100225ea
add edx, 0xfff
mov dword [esp + 0x18], edx
mov ecx, esi
lea eax, [esi + 0xc]
cmp dword [esi + 0x24], 0
mov dword [esp + 0x2c], eax
jne 0x1002083b
push eax
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov eax, dword [esp + 0x18]
and eax, 0xfffff000
mov dword [esp + 0x38], eax
mov edx, dword [esi + 0x58]
test edx, edx
mov dword [esp + 0x10], esi
je 0x10020e15
xor eax, eax
mov ecx, 0xfffff000
mov esi, edx
mov edx, 0xffffffff
mov dword [esp], esi
mov edi, dword [esi + 8]
and edi, ecx
xor ebx, ebx
cmp dword [esp + 0x38], edi
seta bl
cmovb ebx, edx
lea edi, [ebx + 1]
cmp edi, 2
jae 0x1002088b
mov eax, esi
mov esi, dword [esi]
test esi, esi
jne 0x10020868
jmp 0x1002089e
cmp ebx, 1
jne 0x10022d99
mov esi, dword [esi + 4]
and esi, 0xfffffffe
test esi, esi
jne 0x10020868
test eax, eax
je 0x10022bba
mov ecx, eax
and ecx, 0xfff00000
and eax, 0xfffff
add eax, 0xfffffff0
mov edx, 0xaaaaaaab
mul edx
and edx, 0xfffffff8
shl edx, 9
add edx, ecx
mov esi, dword [esp + 0x10]
mov edi, edx
and edi, 0xfff00000
mov eax, dword [edi + 0xc]
mov dword [esp + 0x34], eax
mov dword [esp + 8], edx
mov eax, edx
shr eax, 0xc
movzx edx, al
lea eax, [edx*4]
lea eax, [eax + eax*2]
or eax, edi
mov dword [esp + 0x20], eax
mov eax, dword [eax + 0x18]
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x18]
shr ecx, 0xc
cmp dword [esp + 0x38], 0
mov dword [esp + 4], edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x18], ecx
je 0x10020de3
xor eax, eax
inc eax
cmp ecx, 2
cmovae eax, ecx
mov dword [esp + 0x14], eax
lea eax, [edx + edx*2]
lea eax, [edi + eax*4]
add eax, 0x18
xor ebx, ebx
mov esi, ecx
xor edx, edx
mov dword [esp], eax
mov eax, dword [esp + 0xc]
lea edi, [edx + eax]
lea eax, [edi + edi*2]
mov ecx, dword [esp + 4]
test byte [ecx + eax*4 + 0x18], 0x60
jne 0x10020967
inc edx
cmp edx, dword [esp + 0x18]
setae bl
dec esi
mov eax, dword [esp]
add eax, 0xc
cmp edx, dword [esp + 0x14]
jne 0x10020935
jmp 0x10020a28
mov dword [esp + 0x30], edx
cmp edx, dword [esp + 0x18]
mov eax, dword [esp]
jae 0x10020fa6
mov edx, edi
xor edi, edi
mov ecx, dword [eax]
test cl, 0x60
je 0x10020992
and ecx, 0xffffff9f
mov dword [eax], ecx
inc edi
add eax, 0xc
cmp esi, edi
jne 0x1002097c
mov edi, esi
mov ecx, edi
shl ecx, 0xc
mov dword [esp + 0x1c], ebx
jne 0x10020e75
jmp 0x100209ee
mov dword [esp + 0x24], edx
mov dword [esp + 0x48], ecx
call dword [sym.imp.kernel32.dll_GetLastError]
mov dword [esp + 0x44], eax
push 4
push 0x1000
push dword [esp + 0x2c]
push ebx
call dword [sym.imp.kernel32.dll_VirtualAlloc]
test eax, eax
je 0x100229cd
mov eax, dword [esp + 0x24]
add ebx, eax
mov ecx, dword [esp + 0x48]
sub ecx, eax
mov eax, 0x100000
cmp ecx, eax
mov edx, 0x100000
cmovb edx, ecx
test ecx, ecx
jne 0x100209a3
mov al, 1
test edi, edi
je 0x10020a10
test al, al
mov ecx, 0x20
mov edx, 4
cmovne ecx, edx
mov edx, dword [esp]
mov ebx, edi
or dword [edx], ecx
add edx, 0xc
dec ebx
jne 0x10020a08
test al, al
je 0x10023d02
mov eax, dword [esp + 0x10]
add dword [eax + 0x2c], edi
mov edx, dword [esp + 0x30]
jmp 0x1002094d
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x10]
mov esi, eax
mov ecx, dword [eax + 0x58]
mov eax, dword [esp + 0x20]
lea edx, [eax + 0x10]
mov dword [esp + 0x14], edx
add eax, 0x18
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], 0
mov dword [esp + 0x20], eax
mov ebx, dword [eax]
mov edx, 0xfffff000
mov edi, ebx
and ebx, edx
mov dword [esp], ecx
and edx, dword [ecx + 8]
xor ecx, ecx
dec ecx
xor eax, eax
cmp ebx, edx
seta al
cmovb eax, ecx
test eax, eax
je 0x10020df1
cmp eax, 0xffffffff
mov edx, dword [esp]
jne 0x10020b6f
mov esi, dword [edx]
test esi, esi
je 0x10022dbe
mov eax, dword [esi + 4]
mov dword [esp + 0x24], 0
test al, 1
jne 0x10023af3
mov ecx, dword [esi]
test ecx, ecx
je 0x10020ab2
test byte [ecx + 4], 1
jne 0x10023af3
or eax, 1
mov dword [esi + 4], eax
mov ecx, dword [edx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x10022991
mov esi, dword [eax]
test esi, esi
je 0x10020ad8
mov edx, dword [esi + 4]
test dl, 1
jne 0x10022163
or ecx, 1
mov edx, dword [esp]
mov dword [edx + 4], ecx
mov ecx, dword [eax]
or ecx, 1
mov dword [edx + 4], ecx
mov dword [eax], edx
mov esi, eax
and byte [esi + 4], 0xfe
lea edx, [esp + 0x70]
mov dword [edx], esi
jmp 0x10023af3
mov ecx, dword [eax + 4]
mov dword [esp], 0
mov edx, ecx
and edx, 0xfffffffe
je 0x10020b1d
mov esi, dword [edx]
test esi, esi
je 0x10020b1d
test byte [esi + 4], 1
jne 0x100235ff
mov edx, dword [eax]
test edx, edx
je 0x10022ec5
test byte [edx + 4], 1
jne 0x10020fad
or ecx, 1
mov dword [eax + 4], ecx
mov edi, dword [edx]
test edi, edi
je 0x10020b49
mov ecx, dword [edi + 4]
test cl, 1
jne 0x10021c42
or byte [edx + 4], 1
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10022f47
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [eax + 4], ecx
mov dword [edx], eax
jmp 0x100206b3
test eax, eax
je 0x10020f0e
mov eax, dword [edx + 4]
mov dword [esp + 0x24], 0
mov esi, eax
and esi, 0xfffffffe
je 0x10020b99
mov ecx, dword [esi]
test ecx, ecx
je 0x10020b99
test byte [ecx + 4], 1
jne 0x10023af3
mov ecx, dword [edx]
test ecx, ecx
je 0x10022ac1
test byte [ecx + 4], 1
jne 0x10021ce3
or eax, 1
mov dword [edx + 4], eax
mov eax, dword [ecx]
test eax, eax
je 0x10020bc5
mov edx, dword [eax + 4]
test dl, 1
jne 0x1002202f
or byte [ecx + 4], 1
mov edx, dword [esp]
mov eax, dword [edx + 4]
mov esi, eax
and esi, 0xfffffffe
je 0x10022fa8
mov ecx, dword [esi]
and ecx, 0xfffffffe
and eax, 1
or eax, ecx
mov dword [edx + 4], eax
mov dword [esi], edx
jmp 0x10020af1
movzx eax, byte [edx + ecx + 0x7a]
mov dword [esp + 0x14], eax
lea eax, [edx + 0x58]
mov dword [esp + 0x34], eax
mov ecx, dword [edx + 0x58]
test ecx, ecx
je 0x10021a9c
mov edx, dword [esp + 0x14]
shl edx, 0xc
xor eax, eax
xor edi, edi
dec edi
mov esi, dword [ecx + 8]
mov ebx, 0xfffff000
and esi, ebx
xor ebx, ebx
cmp edx, esi
seta bl
cmovb ebx, edi
lea esi, [ebx + 1]
cmp esi, 2
jae 0x10020c3f
mov eax, ecx
mov ecx, dword [ecx]
mov ebx, dword [esp + 8]
test ecx, ecx
jne 0x10020c15
jmp 0x10020c50
cmp ebx, 1
jne 0x10022e60
mov ecx, dword [ecx + 4]
and ecx, 0xfffffffe
jmp 0x10020c35
test eax, eax
mov edx, dword [esp + 0x10]
je 0x10021a9c
mov ecx, eax
and ecx, 0xfff00000
and eax, 0xfffff
add eax, 0xfffffff0
mov edx, 0xaaaaaaab
mul edx
and edx, 0xfffffff8
shl edx, 9
add edx, ecx
mov ecx, edx
mov edx, ecx
and edx, 0xfff00000
mov eax, dword [edx + 0xc]
mov dword [esp + 0x44], eax
mov eax, ecx
shr eax, 0xc
movzx edi, al
lea eax, [edi*4]
lea eax, [eax + eax*2]
or eax, edx
mov dword [esp + 0x24], eax
mov eax, dword [eax + 0x18]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x14]
test eax, eax
mov dword [esp + 4], edx
mov dword [esp + 0x28], edi
mov dword [esp], ecx
je 0x10020fc1
xor ebx, ebx
inc ebx
cmp eax, 2
cmovae ebx, eax
mov dword [esp + 0x2c], ebx
mov ebx, eax
lea eax, [edi + edi*2]
lea eax, [edx + eax*4]
add eax, 0x18
xor edx, edx
mov dword [esp + 0x1c], ebx
xor ebx, ebx
mov dword [esp + 0xc], eax
lea esi, [ebx + edi]
lea eax, [esi + esi*2]
mov edi, dword [esp + 4]
test byte [edi + eax*4 + 0x18], 0x60
jne 0x10020d19
inc ebx
cmp ebx, dword [esp + 0x14]
setae dl
dec dword [esp + 0x1c]
mov eax, dword [esp + 0xc]
add eax, 0xc
cmp ebx, dword [esp + 0x2c]
mov edi, dword [esp + 0x28]
jne 0x10020ce2
jmp 0x10020fc3
mov dword [esp + 0x3c], esi
cmp ebx, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
jae 0x10021f5c
xor esi, esi
mov edi, dword [esp + 0x1c]
mov ecx, dword [eax]
test cl, 0x60
je 0x10020d47
and ecx, 0xffffff9f
mov dword [eax], ecx
inc esi
add eax, 0xc
cmp edi, esi
jne 0x10020d31
mov esi, edi
mov dword [esp + 0x30], edx
mov edx, esi
shl edx, 0xc
mov dword [esp + 0x40], esi
jne 0x10021aeb
jmp 0x10020d9c
mov dword [esp + 0x3c], edx
call dword [sym.imp.kernel32.dll_GetLastError]
mov dword [esp + 0x54], eax
push 4
push 0x1000
push edi
push esi
call dword [sym.imp.kernel32.dll_VirtualAlloc]
test eax, eax
je 0x10022a18
add esi, edi
mov edx, dword [esp + 0x3c]
sub edx, edi
mov eax, 0x100000
cmp edx, eax
mov edi, 0x100000
cmovb edi, edx
test edx, edx
jne 0x10020d5c
mov al, 1
cmp dword [esp + 0x40], 0
je 0x10020dc4
test al, al
mov ecx, 0x20
mov edx, 4
cmovne ecx, edx
mov edx, dword [esp + 0xc]
mov esi, dword [esp + 0x40]
or dword [edx], ecx
add edx, 0xc
dec esi
jne 0x10020dbc
test al, al
mov ecx, dword [esp]
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x40]
je 0x100214fb
mov eax, dword [esp + 0x10]
add dword [eax + 0x2c], edx
jmp 0x10020cf7
mov al, 1
mov dword [esp + 0x1c], eax
mov ecx, dword [esp]
jmp 0x10020a35
xor edx, edx
mov eax, edi
test al, 0x10
cmove edx, dword [esp + 0x14]
xor eax, eax
mov ecx, dword [esp]
cmp edx, ecx
mov edx, ecx
seta cl
jb 0x10020a85
mov al, cl
jmp 0x10020a79
mov ecx, esi
mov edx, dword [esi + 0x3c]
test edx, edx
jne 0x10020f66
push 0x100a47bc
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov eax, dword [0x100a47d4]
test eax, eax
je 0x10021b25
xor ebx, ebx
xor ecx, ecx
dec ecx
mov esi, dword [eax + 0x14]
xor edx, edx
cmp esi, 0x100000
setb dl
cmova edx, ecx
cmp edx, 0xffffffff
jne 0x10020e62
mov ebx, eax
mov eax, dword [eax]
test eax, eax
jne 0x10020e3f
jmp 0x1002170e
test edx, edx
jne 0x10023052
cmp dword [eax + 0x10], 0
jne 0x10020e55
jmp 0x10023062
mov ebx, edx
shl ebx, 0xc
mov eax, ebx
and eax, 0xff000
mov edx, 0x100000
sub edx, eax
cmp edx, ecx
cmovae edx, ecx
add ebx, dword [esp + 4]
jmp 0x100209a3
mov edi, dword [esp + 0x14]
and edi, 0xfffffffe
mov dword [ecx], edi
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
and edx, 0xfffffffe
mov ecx, dword [eax + 4]
and ecx, 1
lea esi, [ecx + edx]
mov dword [eax + 4], esi
test edx, edx
je 0x10022f13
mov esi, dword [edx]
and esi, 0xfffffffe
or esi, ecx
mov dword [eax + 4], esi
mov dword [edx], eax
mov edi, dword [eax + 4]
and edi, 0xfffffffe
je 0x10020f5e
mov ecx, dword [edi + 4]
test cl, 1
je 0x10020f5e
mov esi, ecx
and esi, 0xfffffffe
mov dword [edi + 4], esi
mov ecx, dword [eax + 4]
mov esi, ecx
or esi, 1
mov dword [eax + 4], esi
and ecx, 0xfffffffe
je 0x1002307f
mov esi, dword [ecx]
or esi, 1
mov dword [eax + 4], esi
mov dword [ecx], eax
mov dword [edx], ecx
jmp 0x100206af
mov eax, dword [edx + 4]
cmp eax, 1
mov ebx, dword [esp + 4]
ja 0x100222a4
mov eax, dword [edx]
xor ecx, ecx
test eax, eax
je 0x10023c83
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
mov dword [edx], ecx
mov ecx, edx
and ecx, 0xfffffffe
mov edi, edx
mov edx, dword [eax + 4]
and edx, 1
or edx, ecx
mov dword [eax + 4], edx
mov edx, dword [edi + 4]
and edx, 1
or edx, ecx
mov dword [eax + 4], edx
or byte [edi + 4], 1
and dword [eax + 4], 1
mov ecx, eax
jmp 0x10023c83
mov dword [eax + 4], edi
jmp 0x100206af
xor eax, eax
mov dword [ecx + 0x3c], eax
lea ecx, [esp + 0x70]
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov dword [edx + 0x28], eax
lea eax, [edx + 0x28]
mov dword [edx + 0x2c], 1
lea edi, [edx + 0x2000]
mov dword [ecx], eax
mov eax, dword [esp + 0x70]
test eax, eax
je 0x10022f99
and byte [eax + 4], 0xfe
mov dword [esp], eax
mov dword [esi + 0x58], eax
mov edx, edi
jmp 0x100208c9
xor edi, edi
jmp 0x10020a18
lea esi, [esp + 0x58]
mov ecx, esi
mov edx, eax
call fcn.10001010
mov edx, dword [esi]
jmp 0x100206b3
mov dl, 1
mov dword [esp + 0x30], edx
mov ecx, dword [esp + 0x24]
lea eax, [ecx + 0x10]
mov dword [esp + 0x1c], eax
add ecx, 0x18
mov eax, dword [esp + 0x34]
mov eax, dword [eax]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 0
mov dword [esp + 0x24], ecx
mov edx, dword [ecx]
mov esi, 0xfffff000
mov ebx, edx
and ebx, esi
and esi, dword [eax + 8]
xor edi, edi
dec edi
xor ecx, ecx
cmp ebx, esi
seta cl
cmovb ecx, edi
test ecx, ecx
je 0x10021a7e
cmp ecx, 0xffffffff
jne 0x10021592
mov edx, dword [eax]
test edx, edx
je 0x10022eb6
mov ecx, dword [edx + 4]
mov dword [esp + 0x2c], 0
test cl, 1
mov edi, dword [esp + 0x24]
je 0x1002160f
mov dword [esp + 0xc], eax
mov eax, edx
mov edx, dword [edi]
mov ebx, edx
mov ecx, 0xfffff000
and ebx, ecx
mov esi, dword [eax + 8]
and esi, ecx
xor ecx, ecx
cmp ebx, esi
seta cl
mov esi, 0xffffffff
cmovb ecx, esi
test ecx, ecx
je 0x1002108e
cmp ecx, 0xffffffff
jne 0x100210a8
mov edx, dword [eax]
test edx, edx
je 0x10022089
mov ecx, dword [edx + 4]
test cl, 1
jne 0x10021039
mov esi, dword [edx]
test esi, esi
je 0x10021181
test byte [esi + 4], 1
jne 0x10021039
jmp 0x10021181
test dl, 0x10
mov edx, 0
cmove edx, dword [esp + 0x1c]
xor ecx, ecx
cmp edx, eax
seta dl
jb 0x10021067
mov cl, dl
jmp 0x10021062
test ecx, ecx
je 0x1002116c
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x100210ca
mov esi, dword [edx]
test esi, esi
je 0x100210ca
test byte [esi + 4], 1
jne 0x10021039
mov ebx, dword [eax]
test ebx, ebx
je 0x10022e1e
mov edx, dword [ebx + 4]
test dl, 1
je 0x100216d0
and edx, 0xfffffffe
je 0x10022a03
mov esi, dword [edx]
test esi, esi
je 0x100210f9
test byte [esi + 4], 1
jne 0x100220f9
and ecx, 1
or ecx, edx
mov dword [ebx + 4], ecx
or byte [edx + 4], 1
mov edx, dword [eax]
test edx, edx
je 0x10022deb
mov ecx, dword [edx + 4]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
mov edi, dword [eax + 4]
mov ecx, edi
and ecx, 0xfffffffe
mov ebx, dword [esp + 0xc]
je 0x10022e00
mov esi, dword [ecx]
and esi, 0xfffffffe
and edi, 1
or edi, esi
mov dword [eax + 4], edi
mov dword [ecx], eax
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
or byte [eax + 4], 1
cmp dword [ebx], eax
mov edi, dword [esp + 0x24]
jne 0x10021b0e
mov dword [ebx], edx
mov eax, ebx
jmp 0x10021039
mov ecx, dword [eax + 4]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x2c], ebx
cmp ecx, 1
jbe 0x100211cc
jmp 0x100210b3
or ecx, 1
mov dword [edx + 4], ecx
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x1002297c
mov edx, dword [ecx]
test edx, edx
je 0x100211a7
mov ebx, dword [edx + 4]
test bl, 1
jne 0x10021fc2
or esi, 1
mov dword [eax + 4], esi
mov edx, dword [ecx]
or edx, 1
mov dword [eax + 4], edx
mov dword [ecx], eax
mov edx, ecx
mov esi, dword [esp + 0xc]
cmp dword [esi], eax
jne 0x10022efe
mov dword [esi], edx
jmp 0x1002103d
mov ecx, dword [eax]
test ecx, ecx
je 0x100211fd
mov edx, dword [ecx + 4]
and edx, 0xfffffffe
mov dword [eax], edx
mov edx, eax
and edx, 0xfffffffe
mov esi, dword [ecx + 4]
and esi, 1
or esi, edx
mov dword [ecx + 4], esi
mov esi, dword [eax + 4]
and esi, 1
or esi, edx
mov dword [ecx + 4], esi
or byte [eax + 4], 1
and dword [ecx + 4], 1
cmp dword [ebx], eax
jne 0x100216bd
mov dword [ebx], ecx
mov edx, dword [esp + 0x70]
mov edi, dword [esp + 0x48]
shr edi, 0xc
mov ebx, dword [esp + 0x34]
mov dword [ebx], edx
xor eax, eax
mov ecx, dword [esp + 0x1c]
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x14]
cmp edi, eax
jne 0x10021308
test al, al
mov edi, dword [esp + 4]
je 0x1002127b
mov edx, eax
mov eax, dword [esp]
or eax, 1
xor ecx, ecx
inc ecx
cmp edx, 2
cmovae ecx, edx
shl ecx, 2
lea ecx, [ecx + ecx*2]
mov edx, dword [esp + 0x28]
lea edx, [edx + edx*2]
lea edx, [edi + edx*4]
add edx, 0x18
xor esi, esi
test byte [edx + esi], 8
je 0x10021271
dec dword [edi + 0xc]
mov edi, dword [esp + 0x10]
dec dword [edi + 0x48]
mov edi, dword [esp + 4]
mov dword [edx + esi], eax
add esi, 0xc
cmp ecx, esi
jne 0x1002125d
cmp dword [edi + 0xc], 0
jne 0x100214f4
cmp dword [esp + 0x44], 0
mov ecx, dword [esp]
mov eax, dword [esp + 0x30]
je 0x100214fb
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x38]
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], 0
xor ecx, ecx
dec ecx
xor eax, eax
cmp edx, edi
setb al
cmova eax, ecx
cmp eax, 0xffffffff
je 0x10021d54
test eax, eax
je 0x1002232b
test edx, edx
je 0x10022b55
mov ebx, edx
mov ecx, dword [edx + 8]
mov dword [esp + 0x14], 0
mov eax, ecx
and eax, 0xfffffffe
je 0x100222d5
mov edx, dword [eax + 4]
test edx, edx
je 0x100222d5
test byte [edx + 8], 1
je 0x100222d5
mov edi, dword [esp + 4]
mov edx, ebx
jmp 0x10021d7d
mov edx, dword [esp + 0x28]
lea ecx, [edx + edi]
sub edi, eax
shl edi, 0xc
add eax, edx
lea edx, [eax + eax*2]
mov eax, dword [esp + 4]
mov dword [esp + 0xc], edx
lea ebx, [eax + edx*4]
add ebx, 0x10
mov edx, 0xfff
mov esi, dword [ebx + 8]
and esi, edx
or esi, edi
mov dword [esp + 0x1c], ebx
mov dword [ebx + 8], esi
lea ecx, [ecx + ecx*2]
and edx, dword [eax + ecx*4 + 0xc]
or edx, edi
mov edi, eax
mov dword [eax + ecx*4 + 0xc], edx
mov eax, dword [esp + 0x34]
mov ecx, dword [eax]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], 0
test ecx, ecx
je 0x10021ee3
mov eax, dword [esp + 0xc]
lea eax, [edi + eax*4]
add eax, 0x18
mov dword [esp + 0xc], eax
lea ebx, [esp + 0x70]
xor esi, esi
mov edx, esi
mov esi, ebx
mov ebx, dword [ecx]
test ebx, ebx
je 0x10021398
mov eax, dword [ebx + 4]
test al, 1
je 0x10021398
mov dword [esp + 0x2c], edx
mov edx, dword [ebx]
test edx, edx
je 0x10021398
test byte [edx + 4], 1
jne 0x100213ed
mov ebx, ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [eax]
mov eax, ecx
mov edx, 0xfffff000
and eax, edx
mov edi, dword [ebx + 8]
and edi, edx
xor edx, edx
cmp eax, edi
seta dl
mov eax, 0xffffffff
cmovb edx, eax
cmp edx, 0xffffffff
je 0x100213df
xor eax, eax
inc eax
test edx, edx
jne 0x1002141a
test cl, 0x10
mov ecx, 0
cmove ecx, dword [esp + 0x1c]
xor eax, eax
cmp ecx, ebx
seta cl
jae 0x10021418
mov ecx, dword [ebx]
xor eax, eax
dec eax
test ecx, ecx
jne 0x10021377
jmp 0x100214b9
and eax, 0xfffffffe
mov dword [ecx], eax
mov edx, ecx
and edx, 0xfffffffe
mov eax, dword [ebx]
mov edi, dword [ebx + 4]
and edi, 1
or edi, edx
mov dword [ebx + 4], edi
test eax, eax
je 0x10022da0
and byte [eax + 4], 0xfe
cmp dword [esi], ecx
jne 0x10021422
mov dword [esi], ebx
jmp 0x1002139a
mov al, cl
mov ecx, dword [ebx + 4]
and ecx, 0xfffffffe
jmp 0x100213e4
and ebx, 0xfffffffe
mov eax, dword [esi + 4]
and eax, 1
lea ecx, [eax + ebx]
mov dword [esi + 4], ecx
test ebx, ebx
je 0x10022daf
mov ecx, dword [ebx]
and ecx, 0xfffffffe
or ecx, eax
mov dword [esi + 4], ecx
mov dword [ebx], esi
mov eax, dword [esi + 4]
and eax, 1
mov ecx, dword [ebx + 4]
and ecx, 0xfffffffe
or ecx, eax
mov dword [ebx + 4], ecx
or byte [esi + 4], 1
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x10022a3d
cmp dword [ecx], esi
je 0x10022028
jmp 0x100220e9
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov edx, eax
mov ecx, 0xfffff000
and edx, ecx
mov edi, dword [ebx + 8]
and edi, ecx
xor ecx, ecx
cmp edx, edi
seta cl
mov edx, 0xffffffff
cmovb ecx, edx
test ecx, ecx
jne 0x10021ed2
jmp 0x100221dc
mov ecx, dword [ebx + 4]
and ecx, 0xfffffffe
mov esi, ebx
test ecx, ecx
mov edx, dword [esp + 0x2c]
jne 0x1002137b
mov esi, edx
mov ecx, dword [esp + 0x1c]
mov dword [ecx], 0
mov dword [ecx + 4], 1
cmp eax, 1
je 0x1002166a
mov dword [ebx], ecx
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x70]
test eax, eax
je 0x10022eef
and byte [eax + 4], 0xfe
mov dword [ecx], eax
mov eax, dword [esp + 0x14]
jmp 0x1002122f
mov ecx, dword [esp]
mov eax, dword [esp + 0x30]
test al, 1
mov ebx, dword [esp + 8]
je 0x10021ec1
test ecx, ecx
je 0x10021ec1
cmp dword [ebx], ecx
je 0x1002363b
mov dword [ecx], ebx
xor eax, eax
mov edi, ecx
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
cmp dword [ebx + ecx + 0x6c], 1
mov edx, 0
je 0x1002154c
mov ecx, dword [esp + 0x18]
add ecx, ebx
add ecx, 0x6c
xor edx, edx
mov dword [edi + edx*4 + 0xc], 0xffffffff
inc edx
mov esi, dword [ecx]
dec esi
cmp edx, esi
jb 0x1002153c
mov ecx, dword [esp + 0x18]
mov ebx, dword [ebx + ecx + 0x68]
and ebx, 0x1f
mov ecx, ebx
neg cl
xor esi, esi
dec esi
shr esi, cl
cmp ebx, 1
sbb eax, eax
or eax, esi
mov ecx, dword [esp + 0x10]
mov dword [edi + edx*4 + 0xc], eax
mov dword [edi + 4], 0
mov edx, dword [esp + 0x18]
mov eax, dword [ecx + edx + 0x68]
mov dword [edi + 8], eax
inc dword [ecx + edx + 0x74]
mov eax, dword [esp + 8]
mov dword [eax], edi
mov ecx, edi
jmp 0x100204a8
test ecx, ecx
je 0x10021c99
mov ecx, dword [eax + 4]
mov dword [esp + 0x2c], 0
mov edi, dword [esp + 0x24]
mov edx, ecx
and edx, 0xfffffffe
je 0x100215c0
mov esi, dword [edx]
test esi, esi
je 0x100215c0
test byte [esi + 4], 1
jne 0x10021039
mov edx, dword [eax]
test edx, edx
je 0x10022b64
test byte [edx + 4], 1
jne 0x100222c1
or ecx, 1
mov dword [eax + 4], ecx
mov ecx, dword [edx]
test ecx, ecx
je 0x100215ec
mov ebx, dword [ecx + 4]
test bl, 1
jne 0x100223ef
or byte [edx + 4], 1
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x100230bf
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [eax + 4], ecx
mov dword [edx], eax
jmp 0x1002165b
mov esi, dword [edx]
test esi, esi
je 0x1002161f
test byte [esi + 4], 1
jne 0x10021039
or ecx, 1
mov dword [edx + 4], ecx
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x100229ee
mov edx, dword [ecx]
test edx, edx
je 0x10021645
mov ebx, dword [edx + 4]
test bl, 1
jne 0x10022478
or esi, 1
mov dword [eax + 4], esi
mov edx, dword [ecx]
or edx, 1
mov dword [eax + 4], edx
mov dword [ecx], eax
mov edx, ecx
and byte [edx + 4], 0xfe
lea eax, [esp + 0x70]
mov dword [eax], edx
mov edi, dword [esp + 0x24]
jmp 0x10021039
mov eax, dword [ebx + 4]
and eax, 1
mov ecx, eax
or ecx, dword [esp + 0x1c]
mov dword [ebx + 4], ecx
mov ecx, dword [esp + 0x1c]
mov ecx, dword [ecx]
and ecx, 0xfffffffe
or ecx, eax
mov dword [ebx + 4], ecx
mov eax, dword [esp + 0x1c]
mov dword [eax], ebx
mov eax, dword [ebx + 4]
and eax, 1
mov ecx, dword [esp + 0x1c]
mov ecx, dword [ecx + 4]
and ecx, 0xfffffffe
or ecx, eax
mov eax, dword [esp + 0x1c]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x1c]
or byte [ebx + 4], 1
cmp dword [esi], ebx
jne 0x10021d25
mov dword [esi], eax
jmp 0x100214d5
and ecx, 0xfffffffe
mov eax, dword [ebx + 4]
and eax, 1
or eax, ecx
mov dword [ebx + 4], eax
jmp 0x10021207
or edx, 1
mov dword [ebx + 4], edx
mov ecx, dword [ebx]
test ecx, ecx
je 0x100216e8
mov edx, dword [ecx + 4]
test dl, 1
jne 0x10021f6d
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10022e2d
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [eax + 4], ecx
mov dword [edx], eax
mov ebx, dword [esp + 0xc]
jmp 0x10021157
test ebx, ebx
je 0x10021b25
mov esi, dword [ebx + 0x14]
mov edx, dword [ebx + 0x10]
mov dword [esp + 4], edx
lea edi, [edx + 0xfffff]
mov eax, 0xfff00000
and edi, eax
mov ecx, edi
sub ecx, edx
sub esi, ecx
add esi, eax
mov eax, dword [ebx + 0x18]
mov dword [esp], eax
mov ecx, ebx
call fcn.10001f60
mov ecx, 0x100a47d8
mov dword [esp + 0x20], ebx
mov edx, ebx
call fcn.10001b30
mov dword [esp + 8], edi
mov eax, edi
sub eax, dword [esp + 4]
jne 0x10022fd6
test esi, esi
je 0x10021efd
mov eax, dword [esp + 8]
add eax, 0x100000
mov edi, dword [esp + 0x20]
mov dword [edi + 0x10], eax
mov dword [edi + 0x14], esi
mov eax, dword [esp]
mov dword [edi + 0x18], eax
mov ecx, edi
call fcn.100018b0
mov ecx, 0x100a47d8
mov edx, edi
call fcn.10001630
lock add dword [0x100a47dc], 0xfff00000
mov eax, 0x100a47bc
push eax
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
call dword [sym.imp.kernel32.dll_GetLastError]
mov esi, eax
push 4
push 0x1000
push 0x100000
mov edi, dword [esp + 0x14]
push edi
call dword [sym.imp.kernel32.dll_VirtualAlloc]
test eax, eax
je 0x10022a4c
test edi, edi
je 0x10021b30
push 0x100a47a0
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov eax, dword [0x100a47b8]
test eax, eax
je 0x10022f56
mov esi, dword [esp + 8]
mov ecx, esi
shr ecx, 0x14
mov dword [eax + ecx*4], esi
push 0x100a47a0
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x10]
add dword [eax + 0x28], 0x100000
mov dword [esi], eax
xor eax, eax
mov dword [esi + 0xc], eax
mov dword [esi + 0x18], eax
mov dword [esi + 0x24], 0x20
mov dword [esi + 0x30], 0xfd024
mov eax, 0x60
mov dword [esi + eax - 0x24], 0x24
mov dword [esi + eax - 0x18], 0x24
mov dword [esi + eax - 0xc], 0x24
cmp eax, 0xc00
je 0x1002185e
mov dword [esi + eax], 0x24
add eax, 0x30
jmp 0x10021833
mov dword [esi + 0xc00], 0xfd024
mov dword [esi + 0xc0c], 0x20
lea edi, [esi + 0x1000]
mov eax, edi
and eax, 0xfffff
mov ebx, 0x100000
sub ebx, eax
mov esi, 0xff000
cmp ebx, esi
cmovae ebx, esi
push 0x4000
push ebx
push edi
call dword [sym.imp.kernel32.dll_VirtualFree]
test eax, eax
je 0x10022eda
add edi, ebx
sub esi, ebx
mov eax, 0x100000
cmp esi, eax
mov ebx, 0x100000
cmovb ebx, esi
test esi, esi
jne 0x10021890
mov esi, dword [esp + 0x10]
add dword [esi + 0x2c], 2
mov eax, dword [esp + 8]
add eax, 0x28
mov dword [esp + 4], eax
mov ecx, dword [esi + 0x58]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], 0
test ecx, ecx
je 0x10022244
lea eax, [esp + 0x70]
xor edi, edi
mov ebx, eax
mov dword [esp + 0x20], ebx
mov eax, dword [ecx]
test eax, eax
je 0x1002190c
mov edx, dword [eax + 4]
test dl, 1
je 0x1002190c
mov ebx, dword [eax]
test ebx, ebx
je 0x1002190c
test byte [ebx + 4], 1
jne 0x1002196a
mov eax, ecx
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x30]
mov edx, ecx
mov ebx, 0xfffff000
and edx, ebx
mov esi, dword [eax + 8]
and esi, ebx
xor ebx, ebx
cmp edx, esi
seta bl
mov edx, 0xffffffff
cmovb ebx, edx
cmp ebx, 0xffffffff
mov esi, dword [esp + 0x10]
je 0x10021958
xor edx, edx
inc edx
test ebx, ebx
jne 0x1002199e
test cl, 0x10
mov ecx, 0
cmove ecx, dword [esp + 4]
xor edx, edx
cmp ecx, eax
seta cl
jae 0x1002199c
mov ecx, dword [eax]
xor edx, edx
dec edx
test ecx, ecx
mov edi, dword [esp + 0x20]
jne 0x100218ec
jmp 0x10021a38
and edx, 0xfffffffe
mov dword [ecx], edx
mov ebx, ecx
and ebx, 0xfffffffe
mov edx, dword [eax]
mov esi, dword [eax + 4]
and esi, 1
or esi, ebx
mov dword [eax + 4], esi
test edx, edx
je 0x10022dcd
and byte [edx + 4], 0xfe
mov esi, dword [esp + 0x20]
cmp dword [esi], ecx
jne 0x100219a6
mov dword [esi], eax
jmp 0x1002190e
mov dl, cl
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
jmp 0x1002195d
and eax, 0xfffffffe
mov ecx, dword [esi + 4]
and ecx, 1
lea edx, [ecx + eax]
mov dword [esi + 4], edx
test eax, eax
je 0x10022ddc
mov edx, dword [eax]
and edx, 0xfffffffe
or edx, ecx
mov dword [esi + 4], edx
mov dword [eax], esi
mov ecx, dword [esi + 4]
and ecx, 1
mov edx, dword [eax + 4]
and edx, 0xfffffffe
or edx, ecx
mov dword [eax + 4], edx
or byte [esi + 4], 1
test edi, edi
je 0x10022b46
cmp dword [edi], esi
je 0x1002225f
jmp 0x100222b1
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x30]
mov edx, ecx
mov ebx, 0xfffff000
and edx, ebx
mov esi, dword [eax + 8]
and esi, ebx
xor ebx, ebx
cmp edx, esi
seta bl
mov edx, 0xffffffff
cmovb ebx, edx
test ebx, ebx
jne 0x10022233
jmp 0x1002239b
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
mov ebx, eax
test ecx, ecx
mov esi, dword [esp + 0x10]
jne 0x100218ee
mov ecx, dword [esp + 8]
mov dword [ecx + 0x28], 0
mov dword [ecx + 0x2c], 1
cmp edx, 1
je 0x10021bef
mov ecx, dword [esp + 4]
mov dword [eax], ecx
mov eax, dword [esp + 0x70]
test eax, eax
je 0x10022f79
and byte [eax + 4], 0xfe
mov dword [esp], eax
mov dword [esi + 0x58], eax
mov edx, dword [esp + 8]
add edx, 0x2000
jmp 0x100208c9
xor esi, esi
test dl, 0x10
cmove esi, dword [esp + 0x1c]
xor ecx, ecx
cmp esi, eax
seta dl
jb 0x10021017
mov cl, dl
jmp 0x1002100e
mov edx, dword [edx + 0x3c]
test edx, edx
jne 0x10021f3a
lea eax, [esp + 0x70]
mov ecx, 0x100000
mov edx, 0x100000
push eax
push 0
call fcn.10050150
add esp, 8
test eax, eax
je 0x10021ec1
mov edi, eax
movzx eax, byte [esp + 0x70]
mov ecx, dword [esp + 0x10]
mov edx, edi
push eax
call fcn.10050070
add esp, 4
add edi, 0x2000
mov ecx, edi
jmp 0x10020c7d
mov esi, dword [esp + 0x3c]
shl esi, 0xc
mov eax, esi
and eax, 0xff000
mov edi, 0x100000
sub edi, eax
cmp edi, edx
cmovae edi, edx
add esi, dword [esp + 4]
jmp 0x10020d5c
mov eax, edx
and eax, 0xfffffffe
mov ecx, dword [ebx + 4]
and ecx, 1
or ecx, eax
mov dword [ebx + 4], ecx
mov eax, ebx
jmp 0x10021039
push 0x100a47bc
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
call dword [sym.imp.kernel32.dll_GetLastError]
mov esi, eax
sub esp, 0x10
movaps xmm0, xmmword [0x10092150]
movups xmmword [esp], xmm0
call dword [sym.imp.kernel32.dll_VirtualAlloc]
test eax, eax
je 0x10022ad6
mov dword [esp + 8], eax
test eax, 0xfffff
je 0x100217dc
push 0x8000
push 0
push dword [esp + 0x10]
call dword [sym.imp.kernel32.dll_VirtualFree]
test eax, eax
je 0x1002314a
mov esi, dword [sym.imp.kernel32.dll_VirtualFree]
xor ecx, ecx
mov edx, 0x1ff000
push 0x3000
call fcn.10050500
add esp, 4
test eax, eax
je 0x1002410e
mov ecx, eax
add ecx, 0xfffff
and ecx, 0xfff00000
mov dword [esp + 8], ecx
push 0x8000
push 0
push eax
call esi
test eax, eax
je 0x1002311d
mov edi, dword [esp + 8]
mov ecx, edi
mov edx, 0x100000
push 0x3000
call fcn.10050500
add esp, 4
cmp eax, edi
jne 0x10022942
cmp dword [esp + 8], 0
jne 0x100217dc
jmp 0x10021b82
mov dword [esp + 0x20], edi
mov ebx, dword [esp + 4]
and ebx, 0xfffffffe
mov ecx, dword [eax + 4]
and ecx, 1
lea edx, [ecx + ebx]
mov dword [eax + 4], edx
test ebx, ebx
je 0x10023069
mov edx, dword [ebx]
and edx, 0xfffffffe
or edx, ecx
mov dword [eax + 4], edx
mov dword [ebx], eax
mov ecx, dword [eax + 4]
and ecx, 1
mov edx, dword [ebx + 4]
and edx, 0xfffffffe
or edx, ecx
mov dword [ebx + 4], edx
or byte [eax + 4], 1
mov ecx, dword [esp + 0x20]
cmp dword [ecx], eax
jne 0x100221bb
mov dword [ecx], ebx
jmp 0x10021a59
mov esi, ecx
and esi, 0xfffffffe
mov dword [edi + 4], esi
mov edx, dword [eax]
test edx, edx
je 0x1002308e
mov ecx, dword [edx + 4]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x100230a3
mov edi, dword [ecx]
and edi, 0xfffffffe
and esi, 1
or esi, edi
mov dword [eax + 4], esi
mov dword [ecx], eax
mov eax, dword [edx + 4]
and eax, 1
or eax, ecx
mov dword [edx + 4], eax
jmp 0x100206b3
mov ecx, dword [eax + 4]
cmp ecx, 1
ja 0x10022558
mov ecx, dword [eax]
xor edx, edx
test ecx, ecx
je 0x1002120b
mov edx, dword [ecx + 4]
and edx, 0xfffffffe
mov dword [eax], edx
mov edx, eax
and edx, 0xfffffffe
mov esi, dword [ecx + 4]
and esi, 1
or esi, edx
mov dword [ecx + 4], esi
mov esi, dword [eax + 4]
and esi, 1
or esi, edx
mov dword [ecx + 4], esi
or byte [eax + 4], 1
and dword [ecx + 4], 1
mov edx, ecx
jmp 0x1002120b
lea esi, [esp + 0x58]
mov ecx, esi
call fcn.1003c3d0
mov esi, dword [esi]
jmp 0x10020af1
mov edx, dword [ecx + 4]
and edx, 0xfffffffe
mov dword [eax], edx
mov edx, eax
and edx, 0xfffffffe
mov esi, dword [ecx + 4]
and esi, 1
or esi, edx
mov dword [ecx + 4], esi
mov esi, dword [eax + 4]
and esi, 1
or esi, edx
mov dword [ecx + 4], esi
or byte [eax + 4], 1
and dword [ecx + 4], 1
jmp 0x100207ff
mov eax, dword [esi + 4]
mov ecx, eax
and ecx, 0xfffffffe
cmp ebx, ecx
mov ecx, dword [esp + 0x34]
jne 0x100214d9
and eax, 1
or eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
jmp 0x100214d9
lea edx, [esp + 0x70]
mov dword [esp], edx
jmp 0x10020b06
test edx, edx
je 0x1002220d
mov eax, dword [edx + 4]
test eax, eax
je 0x1002220d
mov dword [esp + 0x14], 0
test byte [eax + 8], 1
je 0x100221fc
mov edi, dword [esp + 4]
lea ecx, [esp + 0x6c]
xor ebx, ebx
dec ebx
mov dword [esp + 0xc], edx
mov edx, eax
xor eax, eax
cmp edx, edi
setb al
cmova eax, ebx
cmp eax, 0xffffffff
jne 0x10021dc8
test edx, edx
je 0x10022565
mov eax, dword [edx + 4]
test eax, eax
je 0x10022565
test byte [eax + 8], 1
jne 0x10021d84
mov esi, dword [eax + 4]
test esi, esi
je 0x100223bc
test byte [esi + 8], 1
jne 0x10021d84
jmp 0x100223bc
test eax, eax
jne 0x10021dea
xor esi, esi
test edx, edx
je 0x10021e7a
mov edi, ebx
mov eax, dword [edx + 8]
mov ebx, dword [esp + 0xc]
mov dword [esp + 0x14], ebx
cmp eax, 1
jbe 0x10021e41
jmp 0x10021df7
mov edi, ebx
test edx, edx
je 0x10023078
mov eax, dword [edx + 8]
and eax, 0xfffffffe
mov ebx, edi
je 0x10021e13
mov esi, dword [eax + 4]
test esi, esi
je 0x10021e13
test byte [esi + 8], 1
mov edi, dword [esp + 4]
jne 0x10021d84
lea ecx, [esp + 0x68]
mov esi, edx
call fcn.1003cd70
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0xc]
cmp dword [ecx + 4], esi
jne 0x10022444
jmp 0x100224ec
mov edi, dword [esp + 4]
lea ecx, [esp + 0x6c]
jmp 0x10021d84
mov eax, dword [edx + 4]
test eax, eax
je 0x10021e7a
mov ecx, dword [eax + 8]
and ecx, 0xfffffffe
mov dword [edx + 4], ecx
mov ecx, edx
and ecx, 0xfffffffe
mov ebx, edx
mov edx, dword [eax + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
mov edx, dword [ebx + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
mov edx, ebx
or byte [ebx + 8], 1
and dword [eax + 8], 1
mov esi, eax
mov ebx, dword [esp + 0xc]
cmp dword [ebx + 4], edx
mov edx, dword [esp + 0x30]
mov edi, dword [esp + 4]
jne 0x10022015
mov dword [ebx + 4], esi
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x38], eax
test edi, edi
mov ebx, dword [esp + 8]
mov ecx, dword [esp]
je 0x10023024
xor eax, eax
mov dword [edi + 4], eax
mov dword [edi + 8], eax
test ecx, ecx
setne al
test dl, al
jne 0x1002150f
mov dword [ebx], 0
mov bl, 1
mov ecx, dword [esp + 0x10]
jmp 0x10020511
xor eax, eax
inc eax
cmp ecx, 0xffffffff
jne 0x100214a3
jmp 0x10022391
mov ecx, dword [esp + 0x1c]
mov dword [ecx], 0
mov dword [ecx + 4], 1
lea ebx, [esp + 0x70]
jmp 0x100214d3
lock add dword [0x100a47dc], 0xfff00000
push 0x100a47bc
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
push 0x100a47e0
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov eax, 0x100a47e0
mov ecx, dword [0x100a4764]
mov edx, dword [esp + 0x20]
mov dword [edx], ecx
mov dword [0x100a4764], edx
jmp 0x100217a6
mov eax, dword [esp + 0x10]
mov dword [eax + 0x3c], 0
lea edi, [edx + 0x2000]
add edx, 0x28
mov ecx, dword [esp + 0x34]
call fcn.100505c0
jmp 0x10021ae4
xor edx, edx
jmp 0x10020dd7
mov edi, 1
jmp 0x100203f7
and edx, 0xfffffffe
mov dword [ecx + 4], edx
mov edx, dword [eax]
test edx, edx
je 0x10022e3c
mov ecx, dword [edx + 4]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x10022e51
mov edi, dword [ecx]
and edi, 0xfffffffe
and esi, 1
or esi, edi
mov dword [eax + 4], esi
mov dword [ecx], eax
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
jmp 0x10021705
and ebx, 0xfffffffe
mov dword [ecx], ebx
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
and edx, 0xfffffffe
mov ecx, dword [eax + 4]
and ecx, 1
lea esi, [ecx + edx]
mov dword [eax + 4], esi
test edx, edx
je 0x10022bab
mov esi, dword [edx]
and esi, 0xfffffffe
or esi, ecx
mov dword [eax + 4], esi
mov dword [edx], eax
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
je 0x10022009
mov ebx, dword [ecx + 4]
test bl, 1
jne 0x100224f8
mov dword [eax + 4], ecx
mov edi, dword [esp + 0x24]
jmp 0x100211b9
and esi, 0xfffffffe
mov eax, dword [ebx + 8]
and eax, 1
or eax, esi
mov dword [ebx + 8], eax
jmp 0x10021e92
mov dword [ecx], ebx
jmp 0x10021473
and edx, 0xfffffffe
mov dword [eax + 4], edx
mov edx, dword [esp]
mov esi, dword [edx]
test esi, esi
je 0x100230ce
mov eax, dword [esi + 4]
and eax, 0xfffffffe
mov dword [edx], eax
mov eax, edx
and eax, 0xfffffffe
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
mov ecx, dword [edx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x100230e3
mov ebx, edx
mov edx, dword [eax]
and edx, 0xfffffffe
and ecx, 1
or ecx, edx
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
jmp 0x10020af1
cmp dword [esp + 0x2c], 0
je 0x100230f2
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x2c]
cmp dword [edx], ecx
jne 0x1002245f
mov ecx, dword [esp + 0x2c]
mov dword [ecx], eax
mov esi, dword [esp + 0x1c]
mov ecx, dword [esi]
mov dword [eax], ecx
mov ecx, dword [esi + 4]
and ecx, 0xfffffffe
mov edx, dword [eax + 4]
and edx, 1
or edx, ecx
mov dword [eax + 4], edx
mov edx, dword [esi + 4]
and edx, 1
or edx, ecx
mov dword [eax + 4], edx
mov ecx, dword [esp + 0xc]
cmp dword [ecx], eax
jne 0x10023101
mov eax, dword [esp + 0xc]
mov dword [eax], 0
jmp 0x10021207
mov eax, dword [ecx + 4]
and eax, 1
or eax, ebx
mov dword [ecx + 4], eax
jmp 0x10021473
and ecx, 1
mov edi, dword [edx + 4]
and edi, 0xfffffffe
or edi, ecx
mov dword [edx + 4], edi
and byte [esi + 4], 0xfe
mov ecx, dword [ebx + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10022e0f
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [ebx + 4], ecx
mov dword [edx], ebx
mov dword [eax], edx
mov ecx, dword [edx + 4]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
mov edi, dword [eax + 4]
mov ecx, edi
and ecx, 0xfffffffe
mov ebx, dword [esp + 0xc]
jne 0x10021139
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
and edx, 0xfffffffe
mov dword [eax], edx
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
and esi, 0xfffffffe
mov edx, dword [esp]
mov eax, dword [edx + 4]
and eax, 1
lea ecx, [eax + esi]
mov dword [edx + 4], ecx
test esi, esi
je 0x1002310e
mov ecx, dword [esi]
and ecx, 0xfffffffe
or ecx, eax
mov eax, dword [esp]
mov dword [eax + 4], ecx
mov dword [esi], eax
mov eax, dword [eax + 4]
and eax, 0xfffffffe
je 0x100221b0
mov ecx, dword [eax + 4]
test cl, 1
jne 0x10022527
mov ecx, dword [esp]
mov dword [ecx + 4], eax
jmp 0x10020aed
mov ecx, dword [ecx + 4]
mov edx, ecx
and edx, 0xfffffffe
cmp eax, edx
jne 0x10021a59
and ecx, 1
or ecx, ebx
mov eax, dword [esp + 0x20]
mov dword [eax + 4], ecx
jmp 0x10021a59
test al, 0x10
mov ecx, 0
cmove ecx, dword [esp + 0x1c]
xor eax, eax
cmp ecx, ebx
seta cl
jb 0x10022391
mov al, cl
jmp 0x100214a3
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x1002220d
test byte [ecx + 8], 1
jne 0x10021d79
lea esi, [esp + 0x58]
mov ecx, esi
call fcn.1003cc60
mov eax, dword [esi]
test eax, eax
je 0x100231c9
and byte [eax + 8], 0xfe
mov dword [esp + 0x14], 0
jmp 0x100224d6
xor edx, edx
inc edx
cmp ebx, 0xffffffff
jne 0x10021a24
jmp 0x100224e2
mov eax, dword [esp + 8]
mov dword [eax + 0x28], 0
mov dword [eax + 0x2c], 1
lea eax, [esp + 0x70]
jmp 0x10021a53
mov dword [edi], eax
jmp 0x100219f3
mov esi, dword [0x100a4744]
mov eax, dword [0x100a43c8]
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + eax*4]
cmp byte [eax + 8], 0
je 0x1002315e
mov eax, dword [0x100a43c8]
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + eax*4]
mov ecx, esi
mov dword [eax + 0xc], esi
jmp 0x1002043e
lea ecx, [esp + 0x70]
mov dword [esp + 0x24], ecx
jmp 0x10020b82
mov ecx, dword [edi + 4]
and ecx, 1
or ecx, eax
mov dword [edi + 4], ecx
jmp 0x100219f3
lea esi, [esp + 0x58]
mov ecx, esi
mov edx, eax
call fcn.1003c3d0
mov edx, dword [esi]
jmp 0x1002165b
mov eax, dword [ebx + 4]
test eax, eax
je 0x10023168
test byte [eax + 8], 1
jne 0x100224c7
or ecx, 1
mov dword [ebx + 8], ecx
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10022303
mov edx, dword [ecx + 8]
test dl, 1
jne 0x10022604
or byte [eax + 8], 1
mov ecx, dword [ebx + 8]
mov eax, ecx
and eax, 0xfffffffe
je 0x100231d8
mov edx, dword [eax + 4]
and edx, 0xfffffffe
and ecx, 1
or ecx, edx
mov dword [ebx + 8], ecx
mov dword [eax + 4], ebx
jmp 0x100224d6
mov eax, edx
xor edx, edx
test eax, eax
je 0x10022376
mov ebx, eax
mov ecx, dword [eax + 8]
cmp ecx, 1
ja 0x1002268a
mov eax, dword [ebx + 4]
test eax, eax
je 0x10022376
mov ecx, dword [eax + 8]
and ecx, 0xfffffffe
mov dword [ebx + 4], ecx
mov ecx, ebx
and ecx, 0xfffffffe
mov edx, dword [eax + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
mov edx, dword [ebx + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
or byte [ebx + 8], 1
and dword [eax + 8], 1
mov edx, eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x38], edx
mov ebx, dword [esp + 8]
mov ecx, dword [esp]
mov edi, dword [esp + 4]
mov edx, dword [esp + 0x30]
jmp 0x10021eac
mov ecx, dword [ebx]
xor eax, eax
dec eax
jmp 0x100214a9
test cl, 0x10
mov ecx, 0
cmove ecx, dword [esp + 4]
xor edx, edx
cmp ecx, eax
seta cl
jb 0x100224e2
mov dl, cl
jmp 0x10021a24
mov ebx, ecx
mov esi, edx
call fcn.1003cc60
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0xc]
cmp dword [ecx + 4], esi
jne 0x1002317d
mov ecx, dword [esp + 0xc]
mov dword [ecx + 4], eax
mov edx, eax
mov edi, dword [esp + 4]
xor eax, eax
dec eax
mov ecx, ebx
mov ebx, eax
jmp 0x10021d8a
and ebx, 0xfffffffe
mov dword [ecx + 4], ebx
mov edx, dword [eax]
test edx, edx
je 0x10023196
mov ecx, dword [edx + 4]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x100231ab
mov edi, dword [ecx]
and edi, 0xfffffffe
and esi, 1
or esi, edi
mov dword [eax + 4], esi
mov dword [ecx], eax
mov eax, dword [edx + 4]
and eax, 1
or eax, ecx
mov dword [edx + 4], eax
jmp 0x1002165b
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [esp + 0xc]
mov edx, dword [esi + 8]
and edx, 1
or edx, ecx
mov dword [esi + 8], edx
mov edx, esi
jmp 0x10021e34
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [esp + 0x2c]
mov edx, dword [esi + 4]
and edx, 1
or edx, ecx
mov dword [esi + 4], edx
jmp 0x100220aa
and ebx, 0xfffffffe
mov dword [ecx], ebx
mov esi, dword [edx + 4]
and esi, 1
or esi, ecx
mov dword [edx + 4], esi
and edx, 0xfffffffe
mov ecx, dword [eax + 4]
and ecx, 1
lea esi, [ecx + edx]
mov dword [eax + 4], esi
test edx, edx
je 0x100231ba
mov esi, dword [edx]
and esi, 0xfffffffe
or esi, ecx
mov dword [eax + 4], esi
mov dword [edx], eax
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
je 0x100224bf
mov ebx, dword [ecx + 4]
test bl, 1
jne 0x1002265f
mov dword [eax + 4], ecx
jmp 0x10021657
lea esi, [esp + 0x58]
mov ecx, esi
mov edx, ebx
call fcn.1003cd70
mov eax, dword [esi]
lea edx, [esp + 0x70]
mov dword [edx + 4], eax
jmp 0x10021d79
mov ecx, dword [eax]
xor edx, edx
dec edx
jmp 0x10021a2a
mov edx, dword [esp + 0xc]
mov dword [edx + 4], eax
jmp 0x10021e34
and ebx, 0xfffffffe
mov dword [ecx + 4], ebx
mov ecx, dword [eax + 4]
mov esi, ecx
or esi, 1
mov dword [eax + 4], esi
and ecx, 0xfffffffe
je 0x10022b9c
mov esi, dword [ecx]
or esi, 1
mov dword [eax + 4], esi
mov dword [ecx], eax
mov dword [edx], ecx
mov edi, dword [esp + 0x24]
jmp 0x100211b9
and ecx, 0xfffffffe
mov dword [eax + 4], ecx
mov edx, dword [esp]
mov eax, dword [edx + 4]
mov ecx, eax
or ecx, 1
mov dword [edx + 4], ecx
and eax, 0xfffffffe
je 0x100231e7
mov ecx, dword [eax]
or ecx, 1
mov edx, dword [esp]
mov dword [edx + 4], ecx
mov dword [eax], edx
mov dword [esi], eax
jmp 0x10020aed
lea edx, [esp + 0x70]
mov dword [esp + 0x2c], edx
jmp 0x100215a5
cmp dword [esp + 0x14], 0
je 0x100231f6
mov esi, edx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x14]
cmp dword [ecx + 4], eax
jne 0x10022708
mov eax, dword [esp + 0x14]
mov dword [eax + 4], esi
cmp dword [esp + 4], 0
je 0x10023205
test esi, esi
je 0x1002321d
mov edx, dword [esp + 4]
mov eax, dword [edx + 4]
mov edi, esi
mov dword [esi + 4], eax
mov eax, dword [edx + 8]
and eax, 0xfffffffe
mov ecx, dword [esi + 8]
and ecx, 1
or ecx, eax
mov dword [esi + 8], ecx
mov ecx, dword [edx + 8]
and ecx, 1
or ecx, eax
mov dword [esi + 8], ecx
mov eax, dword [esp + 0xc]
cmp dword [eax + 4], esi
jne 0x1002322c
mov eax, dword [esp + 0xc]
mov dword [eax + 4], 0
mov edi, dword [esp + 4]
mov edx, dword [esp + 0x30]
jmp 0x10021e92
mov ecx, esi
push 0
push 0x100000
call fcn.100023d0
add esp, 8
mov dword [esp + 8], eax
jmp 0x10020529
and edx, 0xfffffffe
mov dword [ecx + 8], edx
mov eax, dword [ebx + 4]
test eax, eax
je 0x10023239
mov ecx, dword [eax + 8]
and ecx, 0xfffffffe
mov dword [ebx + 4], ecx
mov ecx, ebx
and ecx, 0xfffffffe
mov edx, dword [eax + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
mov edx, dword [ebx + 8]
mov ecx, edx
and ecx, 0xfffffffe
je 0x1002324f
mov edi, ebx
mov esi, dword [ecx + 4]
and esi, 0xfffffffe
and edx, 1
or edx, esi
mov dword [ebx + 8], edx
mov dword [ecx + 4], ebx
mov edx, dword [eax + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
jmp 0x100224d6
and ebx, 0xfffffffe
mov dword [ecx + 4], ebx
mov ecx, dword [eax + 4]
mov esi, ecx
or esi, 1
mov dword [eax + 4], esi
and ecx, 0xfffffffe
je 0x1002325e
mov esi, dword [ecx]
or esi, 1
mov dword [eax + 4], esi
mov dword [ecx], eax
mov dword [edx], ecx
jmp 0x10021657
lea eax, [esp + 0x70]
mov dword [esp + 0x14], eax
jmp 0x100212dd
mov ebx, esi
mov byte [esi + 0x40], 0
lea eax, [esp + 0x70]
push eax
call sym.mozglue.dll_class_mozilla::Maybe_unsigned_long_long_unsigned___int64_____cdecl_mozilla::RandomUint64_void_
add esp, 4
lea esi, [esp + 0x58]
push esi
call sym.mozglue.dll_class_mozilla::Maybe_unsigned_long_long_unsigned___int64_____cdecl_mozilla::RandomUint64_void_
add esp, 4
mov ecx, 0x10
call fcn.100123e0
xor edx, edx
cmp byte [esi + 8], 0
mov ecx, 0
mov esi, 0
je 0x100226db
mov ecx, dword [esp + 0x5c]
mov esi, dword [esp + 0x58]
cmp byte [esp + 0x78], 0
mov edi, 0
je 0x100226ef
mov edx, dword [esp + 0x74]
mov edi, dword [esp + 0x70]
mov dword [eax], edi
mov dword [eax + 4], edx
mov dword [eax + 8], esi
mov dword [eax + 0xc], ecx
mov esi, ebx
mov dword [ebx + 0x44], eax
mov byte [ebx + 0x40], 1
jmp 0x1002046f
mov eax, esi
and eax, 0xfffffffe
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 8]
and ecx, 1
or ecx, eax
mov dword [edx + 8], ecx
jmp 0x1002258a
push 0x100a4814
call dword [sym.imp.kernel32.dll_AcquireSRWLockExclusive]
cmp dword [0x100a4810], 0
jne 0x10022932
mov eax, dword [0x100a43c8]
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + eax*4]
cmp byte [eax + 8], 0
je 0x100232bb
mov eax, dword [0x100a481c]
mov ecx, dword [0x100a43c8]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jle 0x100227a8
push 0x100a481c
call fcn.1004f9c2
add esp, 4
cmp dword [0x100a481c], 0xffffffff
jne 0x100227a8
lea esi, [esp + 0x70]
push esi
call dword [sym.imp.kernel32.dll_GetSystemInfo]
mov eax, dword [esi + 4]
mov dword [0x100a4818], eax
push 0x100a481c
call fcn.1004f9c2
add esp, 4
mov eax, 0x1000
xor edx, edx
div dword [0x100a4818]
test edx, edx
jne 0x100232c5
mov edi, 0x100a4820
push 0x40
push edi
push str.MALLOC_OPTIONS
call dword [sym.imp.kernel32.dll_GetEnvironmentVariableA]
test eax, eax
cmove edi, eax
je 0x10022813
mov al, byte [edi]
test al, al
je 0x10022813
xor ebx, ebx
movsx eax, al
add eax, 0xffffffd0
cmp eax, 9
jbe 0x100232f8
xor esi, esi
inc esi
mov al, byte [edi + ebx]
movsx ecx, al
cmp ecx, 0x72
jne 0x1002326d
mov byte [0x100a4778], 1
dec esi
jne 0x100227f1
mov al, byte [edi + ebx + 1]
inc ebx
test al, al
jne 0x100227df
xor ebx, ebx
mov dword [0x100a47dc], ebx
mov edi, 0x1388
mov esi, dword [sym.imp.kernel32.dll_InitializeCriticalSectionAndSpinCount]
push edi
push 0x100a47bc
call esi
mov dword [0x100a47d4], ebx
mov dword [0x100a47d8], ebx
push edi
push 0x100a477c
call esi
mov dword [0x100a4794], ebx
mov dword [0x100a4798], ebx
mov dword [0x100a479c], ebx
push edi
push 0x100a47e0
call esi
mov dword [0x100a480c], ebx
mov dword [0x100a4804], ebx
mov dword [0x100a474c], ebx
mov dword [0x100a4750], ebx
mov dword [0x100a4754], ebx
mov dword [esp + 0x78], ebx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x7c], ebx
mov eax, dword [0x100a4024]
mov dword [esp + 0x70], eax
push edi
push 0x100a472c
call esi
test eax, eax
je 0x10023295
lea edx, [esp + 0x70]
xor ecx, ecx
call fcn.10040920
mov dword [0x100a4744], eax
test eax, eax
je 0x100232ab
mov ecx, dword [0x100a43c8]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp byte [ecx + 8], 0
je 0x100232e9
mov ecx, dword [0x100a43c8]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
mov dword [ecx + 0xc], eax
push 0x1388
push 0x100a47a0
call dword [sym.imp.kernel32.dll_InitializeCriticalSectionAndSpinCount]
mov ecx, 0x4000
call fcn.100123e0
test eax, eax
je 0x100232a1
mov esi, eax
push 0x4000
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [0x100a47b8], esi
xor eax, eax
inc eax
xchg dword [0x100a4810], eax
call fcn.10001250
push 0x100a4814
call dword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
jmp 0x100203ea
mov dword [esp + 8], 0
test eax, eax
je 0x10021be2
push 0x8000
push 0
push eax
call dword [sym.imp.kernel32.dll_VirtualFree]
test eax, eax
jne 0x10021be2
mov ecx, str._jemalloc_
mov edx, str.:__malloc__Error_in_VirtualFree___n
call fcn.10054100
jmp 0x10021be2
or esi, 1
mov dword [eax + 4], esi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
or ecx, 1
mov eax, dword [esp]
mov dword [eax + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
or esi, 1
mov dword [eax + 4], esi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x5af
je 0x10023394
cmp eax, 8
je 0x10023394
xor eax, eax
jmp 0x100209f0
or esi, 1
mov dword [eax + 4], esi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
and ecx, 1
mov dword [ebx + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [esp + 0x4c], edi
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x5af
je 0x10023421
cmp eax, 8
je 0x10023421
xor eax, eax
jmp 0x10020d9e
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x5af
je 0x10022a62
cmp eax, 8
jne 0x10021b30
xor eax, eax
cmp dword [sym.mozglue.dll_enum_GeckoProcessType_mozilla::startup::sChildProcessType], 0
sete al
lea ebx, [eax + eax*4]
add ebx, 5
mov edi, dword [sym.imp.kernel32.dll_Sleep]
push 0x32
call edi
push 4
push 0x1000
push 0x100000
push dword [esp + 0x14]
call dword [sym.imp.kernel32.dll_VirtualAlloc]
mov dword [esp + 0x20], eax
call dword [sym.imp.kernel32.dll_GetLastError]
cmp dword [esp + 0x20], 0
jne 0x1002349e
cmp eax, 0x5af
je 0x10022ab9
cmp eax, 8
jne 0x10021b30
dec ebx
jne 0x10022a7a
jmp 0x10021b30
or eax, 1
mov dword [edx + 4], eax
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x5af
je 0x10022aec
cmp eax, 8
jne 0x1002410e
xor eax, eax
cmp dword [sym.mozglue.dll_enum_GeckoProcessType_mozilla::startup::sChildProcessType], 0
sete al
lea ebx, [eax + eax*4]
add ebx, 5
push 0x32
call dword [sym.imp.kernel32.dll_Sleep]
sub esp, 0x10
movaps xmm0, xmmword [0x10092150]
movups xmmword [esp], xmm0
call dword [sym.imp.kernel32.dll_VirtualAlloc]
mov edi, eax
call dword [sym.imp.kernel32.dll_GetLastError]
mov dword [esp + 8], edi
test edi, edi
jne 0x100234be
cmp eax, 0x5af
je 0x10022b3e
cmp eax, 8
jne 0x1002410e
dec ebx
jne 0x10022afe
jmp 0x1002410e
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
or ecx, 1
mov dword [eax + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
call fcn.1004eb54
jmp 0x1002041f
mov eax, dword [esp]
dec dword [eax + 8]
mov bl, 1
mov dword [esp + 8], 0
mov ecx, dword [esp + 0x10]
jmp 0x10020511
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x3c]
mov dword [esp + 0x20], ecx
test ecx, ecx
je 0x10020e22
xor esi, esi
mov dword [eax + 0x3c], esi
mov eax, dword [esp + 0x20]
lea edi, [eax + 0x2000]
add eax, 0x28
lea ecx, [esp + 0x70]
mov edx, dword [esp]
mov dword [ecx], edx
mov dword [esp + 8], 0
mov dword [ecx + 4], esi
mov edx, dword [esp + 8]
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
mov ecx, dword [esp]
mov ecx, dword [ecx]
test ecx, ecx
je 0x10022c1c
mov edx, dword [ecx + 4]
test dl, 1
je 0x10022c1c
mov ebx, dword [ecx]
test ebx, ebx
je 0x10022c1c
test byte [ebx + 4], 1
jne 0x10022c78
mov ecx, dword [esp]
mov edx, dword [esp + 0x20]
mov ebx, dword [edx + 0x30]
mov dword [esp + 4], ebx
mov edx, 0xfffff000
and ebx, edx
mov esi, dword [ecx + 8]
and esi, edx
xor edx, edx
cmp ebx, esi
seta dl
mov esi, 0xffffffff
cmovb edx, esi
cmp edx, 0xffffffff
je 0x10022c65
xor esi, esi
inc esi
test edx, edx
jne 0x10022cb8
test byte [esp + 4], 0x10
mov edx, 0
cmove edx, eax
cmp edx, ecx
seta dl
jae 0x10022cb2
mov edx, dword [ecx]
mov dword [esp], edx
xor esi, esi
dec esi
cmp dword [esp], 0
jne 0x10022bf3
jmp 0x10022d75
and edx, 0xfffffffe
mov ebx, dword [esp]
mov dword [ebx], edx
and ebx, 0xfffffffe
mov edx, dword [ecx]
mov esi, dword [ecx + 4]
and esi, 1
or esi, ebx
mov dword [ecx + 4], esi
test edx, edx
je 0x100234e6
and byte [edx + 4], 0xfe
mov edx, dword [esp]
mov esi, dword [esp + 8]
cmp dword [esi], edx
jne 0x10022cc3
mov edx, dword [esp + 8]
mov dword [edx], ecx
jmp 0x10022c1f
xor ebx, ebx
mov bl, dl
mov esi, ebx
mov edx, dword [ecx + 4]
and edx, 0xfffffffe
mov dword [esp], edx
jmp 0x10022c6d
and ecx, 0xfffffffe
mov ebx, dword [esp + 8]
mov edx, dword [ebx + 4]
and edx, 1
lea esi, [edx + ecx]
mov dword [ebx + 4], esi
test ecx, ecx
je 0x100234f2
mov esi, dword [ecx]
and esi, 0xfffffffe
or esi, edx
mov ebx, dword [esp + 8]
mov dword [ebx + 4], esi
mov dword [ecx], ebx
mov edx, dword [ebx + 4]
and edx, 1
mov esi, dword [ecx + 4]
and esi, 0xfffffffe
or esi, edx
mov dword [ecx + 4], esi
or byte [ebx + 4], 1
cmp dword [esp + 4], 0
je 0x10023412
mov edx, dword [esp + 8]
mov esi, dword [esp + 4]
cmp dword [esi], edx
je 0x10022fb7
jmp 0x10022fc2
mov edx, dword [esp + 0x20]
mov edx, dword [edx + 0x30]
mov dword [esp + 8], edx
mov ebx, 0xfffff000
and edx, ebx
mov esi, dword [ecx + 8]
and esi, ebx
xor ebx, ebx
cmp edx, esi
seta bl
mov edx, 0xffffffff
cmovb ebx, edx
test ebx, ebx
jne 0x10022f88
jmp 0x10023033
mov edx, dword [ecx + 4]
and edx, 0xfffffffe
mov dword [esp], edx
mov dword [esp + 8], ecx
cmp dword [esp], 0
jne 0x10022bff
mov edx, dword [esp + 4]
mov dword [esp + 8], edx
mov edx, dword [esp + 0x20]
mov dword [edx + 0x28], 0
mov dword [edx + 0x2c], 1
cmp esi, 1
je 0x10022e67
mov esi, dword [esp + 0x10]
jmp 0x10020f87
mov eax, esi
jmp 0x100208a6
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov eax, ecx
jmp 0x10020c5c
and eax, 0xfffffffe
mov edx, dword [ecx + 4]
and edx, 1
lea esi, [edx + eax]
mov dword [ecx + 4], esi
test eax, eax
je 0x100234da
mov esi, dword [eax]
and esi, 0xfffffffe
or esi, edx
mov dword [ecx + 4], esi
mov dword [eax], ecx
mov edx, dword [ecx + 4]
and edx, 1
mov esi, dword [eax + 4]
and esi, 0xfffffffe
or esi, edx
mov dword [eax + 4], esi
or byte [ecx + 4], 1
mov edx, dword [esp + 8]
cmp dword [edx], ecx
jne 0x10022f22
mov ecx, dword [esp + 8]
mov dword [ecx], eax
mov esi, dword [esp + 0x10]
jmp 0x10020f89
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
or ecx, 1
mov dword [eax + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_CRASH__
int3
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov eax, edx
and eax, 0xfffffffe
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
jmp 0x1002103d
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov edx, dword [esp + 8]
mov edx, dword [edx + 4]
mov esi, edx
and esi, 0xfffffffe
cmp ecx, esi
jne 0x10022ead
and edx, 1
or edx, eax
mov eax, dword [esp + 8]
mov dword [eax + 4], edx
jmp 0x10022ead
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
push 0x100a47a0
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 8]
mov edx, 0x100000
push 0
call fcn.10005780
add esp, 4
jmp 0x1002410e
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
xor esi, esi
inc esi
cmp ebx, 0xffffffff
jne 0x10022d56
jmp 0x100230b2
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov edx, dword [esp + 4]
mov dword [edx], ecx
jmp 0x10022d23
mov esi, dword [esp + 4]
mov edx, dword [esi + 4]
and edx, 1
or edx, ecx
mov dword [esi + 4], edx
jmp 0x10022d23
mov edi, dword [esp + 0x20]
mov dword [edi + 0x14], eax
mov ecx, edi
call fcn.100018b0
mov ecx, 0x100a47d8
mov edx, edi
call fcn.10001630
test esi, esi
je 0x10021796
push 0x100a47bc
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
call fcn.10054150
mov dword [esp + 0x20], eax
test eax, eax
je 0x10023131
push 0x100a47bc
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
jmp 0x1002176a
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
test byte [esp + 8], 0x10
mov edx, 0
cmove edx, eax
cmp edx, ecx
seta dl
jb 0x100230b2
xor ebx, ebx
mov bl, dl
mov esi, ebx
jmp 0x10022d56
cmp edx, 1
jne 0x10023062
mov eax, dword [eax + 4]
and eax, 0xfffffffe
jmp 0x10020e59
mov ebx, eax
jmp 0x10021719
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov ebx, edi
jmp 0x10021e13
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov edx, dword [ecx]
mov dword [esp], edx
xor esi, esi
dec esi
jmp 0x10022d5f
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [edx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov eax, dword [esp + 0xc]
and dword [eax + 4], 1
jmp 0x10021207
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov ecx, str._jemalloc_
mov edx, str.:__malloc__Error_in_VirtualFree___n
call fcn.10054100
jmp 0x10021bc2
mov ecx, dword [esp + 8]
mov edx, 0x100000
push dword [esp]
call fcn.10005780
add esp, 4
jmp 0x10021b30
mov ecx, str._jemalloc_
mov edx, str.:__malloc__Error_in_VirtualFree___n
call fcn.10054100
jmp 0x10021b7c
call fcn.1004eb54
jmp 0x10022288
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [esp + 0xc]
mov edx, dword [esi + 8]
and edx, 1
or edx, ecx
mov dword [esi + 8], edx
jmp 0x100223dd
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a56
test esi, esi
je 0x1002321d
mov eax, esi
mov dword [esi + 4], 0
and dword [esi + 8], 1
xor ecx, ecx
jmp 0x100225c2
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov eax, dword [esp + 0xc]
and dword [eax + 8], 1
jmp 0x100225dd
mov dword [ebx + 4], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
cmp ecx, 0x46
jne 0x1002331b
mov eax, dword [0x100a4024]
test eax, eax
je 0x1002333c
add eax, eax
je 0x10022807
mov dword [0x100a4024], eax
jmp 0x10022807
mov dword [0x100a4744], 0
jmp 0x100232ab
mov dword [0x100a47b8], 0
push 0x100a4814
call dword [sym.imp.kernel32.dll_ReleaseSRWLockExclusive]
jmp 0x1002411c
call fcn.1004eb54
jmp 0x10022755
mov ecx, str._jemalloc_
mov edx, str.Compile_time_page_size_does_not_divide_the_runtime_one._n
call fcn.10054100
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_CRASH__
int3
call fcn.1004eb54
mov eax, dword [0x100a4744]
jmp 0x100228d4
xor esi, esi
lea ecx, [esi + esi*4]
lea esi, [eax + ecx*2]
movsx eax, byte [edi + ebx + 1]
inc ebx
add eax, 0xffffffd0
cmp eax, 0xa
jb 0x100232fa
test esi, esi
je 0x1002280a
jmp 0x100227f1
cmp ecx, 0x52
jne 0x1002332c
mov byte [0x100a4778], 0
jmp 0x10022807
cmp ecx, 0x66
jne 0x1002334b
shr dword [0x100a4024], 1
jmp 0x10022807
mov dword [0x100a4024], 1
jmp 0x10022807
lea ecx, [esp + 0x70]
mov byte [ecx], al
mov byte [ecx + 1], 0
mov eax, 2
push 0xa
push str._jemalloc_
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__write]
add esp, 0xc
push 0x35
push str.:__malloc__Unsupported_character_in_malloc_options:_
mov eax, 2
push eax
call dword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll__write]
add esp, 0xc
lea ecx, [esp + 0x70]
mov edx, 0x1009a0a1
call fcn.10054100
jmp 0x10022807
xor eax, eax
cmp dword [sym.mozglue.dll_enum_GeckoProcessType_mozilla::startup::sChildProcessType], 0
sete al
lea eax, [eax + eax*4]
add eax, 5
mov dword [esp + 0x3c], eax
push 0x32
call dword [sym.imp.kernel32.dll_Sleep]
push 4
push 0x1000
push dword [esp + 0x2c]
push ebx
call dword [sym.imp.kernel32.dll_VirtualAlloc]
mov dword [esp + 0x40], eax
call dword [sym.imp.kernel32.dll_GetLastError]
cmp dword [esp + 0x40], 0
jne 0x100233f2
cmp eax, 0x5af
je 0x100233e5
cmp eax, 8
jne 0x100229e7
xor eax, eax
dec dword [esp + 0x3c]
jne 0x100233aa
jmp 0x100209f0
cmp eax, 0x5af
mov ecx, dword [esp + 0x44]
je 0x10023406
cmp eax, 8
jne 0x100209cf
push ecx
call dword [sym.imp.kernel32.dll_SetLastError]
jmp 0x100209cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
xor eax, eax
cmp dword [sym.mozglue.dll_enum_GeckoProcessType_mozilla::startup::sChildProcessType], 0
sete al
lea eax, [eax + eax*4]
add eax, 5
mov dword [esp + 0x50], eax
push 0x32
call dword [sym.imp.kernel32.dll_Sleep]
push 4
push 0x1000
push dword [esp + 0x54]
push esi
call dword [sym.imp.kernel32.dll_VirtualAlloc]
mov edi, eax
call dword [sym.imp.kernel32.dll_GetLastError]
test edi, edi
jne 0x1002347a
cmp eax, 0x5af
je 0x1002346d
cmp eax, 8
jne 0x10022a36
xor eax, eax
dec dword [esp + 0x50]
jne 0x10023437
jmp 0x10020d9e
cmp eax, 0x5af
mov edi, dword [esp + 0x4c]
mov ecx, dword [esp + 0x54]
je 0x10023492
cmp eax, 8
jne 0x10020d81
push ecx
call dword [sym.imp.kernel32.dll_SetLastError]
jmp 0x10020d81
cmp eax, 0x5af
mov edi, dword [esp + 8]
je 0x100234b2
cmp eax, 8
jne 0x100217d4
push esi
call dword [sym.imp.kernel32.dll_SetLastError]
jmp 0x100217d4
cmp eax, 0x5af
je 0x100234ca
cmp eax, 8
jne 0x100234d1
push esi
call dword [sym.imp.kernel32.dll_SetLastError]
mov eax, dword [esp + 8]
jmp 0x10021b54
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
int3
int3
xor ecx, ecx
cmp eax, ebx
setb cl
cmova ecx, edi
cmp ecx, 0xffffffff
jne 0x100235b9
test eax, eax
je 0x10023816
mov edx, dword [eax]
test edx, edx
je 0x10023816
mov ecx, dword [edx + 4]
test cl, 1
jne 0x100235b0
mov edi, dword [edx]
test edi, edi
je 0x1002355d
test byte [edi + 4], 1
jne 0x100235ff
mov dword [esp + 0xc], esi
or ecx, 1
mov dword [edx + 4], ecx
mov edi, dword [eax + 4]
mov ecx, edi
and ecx, 0xfffffffe
je 0x10023954
mov esi, dword [ecx]
test esi, esi
jne 0x100235d0
or edi, 1
mov dword [eax + 4], edi
mov edx, dword [ecx]
or edx, 1
mov dword [eax + 4], edx
mov dword [ecx], eax
mov esi, ecx
mov edx, dword [esp + 0xc]
cmp dword [edx], eax
mov edi, 0xffffffff
jne 0x10023a12
mov dword [edx], esi
mov eax, esi
mov esi, edx
jmp 0x10023520
mov esi, eax
mov eax, edx
jmp 0x10023520
test ecx, ecx
jne 0x100235e1
xor edx, edx
test eax, eax
je 0x10023612
mov ecx, dword [eax + 4]
mov dword [esp], esi
cmp ecx, 1
jbe 0x10023608
jmp 0x100235ec
mov edx, dword [esi + 4]
mov dword [esp + 0x14], edx
test dl, 1
je 0x1002357b
jmp 0x10023738
test eax, eax
je 0x10023a03
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x1002364e
mov edi, dword [edx]
test edi, edi
je 0x1002364e
test byte [edi + 4], 1
je 0x1002364e
mov esi, eax
mov edi, 0xffffffff
jmp 0x100235b2
mov ecx, dword [eax]
test ecx, ecx
jne 0x10023706
cmp dword [esi], eax
jne 0x100237ec
mov dword [esi], edx
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 4]
mov dword [ecx], eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov ecx, 0xfffff000
and ecx, dword [ebx + 8]
mov eax, dword [esp + 8]
mov dword [eax], ecx
test ecx, ecx
jne 0x100204a8
jmp 0x10021ec7
mov edi, dword [eax]
test edi, edi
je 0x10023a03
mov edx, dword [edi + 4]
test dl, 1
je 0x100237b2
mov dword [esp + 0xc], edi
and edx, 0xfffffffe
je 0x100239ba
mov edi, dword [edx]
mov dword [esp + 0x14], edi
test edi, edi
je 0x10023689
mov edi, dword [esp + 0x14]
test byte [edi + 4], 1
jne 0x10023866
and ecx, 1
or ecx, edx
mov edi, dword [esp + 0xc]
mov dword [edi + 4], ecx
or byte [edx + 4], 1
mov edx, dword [eax]
test edx, edx
je 0x100239a5
mov ecx, dword [edx + 4]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, eax
and ecx, 0xfffffffe
mov edi, dword [edx + 4]
and edi, 1
or edi, ecx
mov dword [edx + 4], edi
mov ecx, dword [eax + 4]
mov dword [esp + 0x14], ecx
and ecx, 0xfffffffe
je 0x10023996
mov edi, dword [ecx]
mov dword [esp + 0xc], edi
and dword [esp + 0xc], 0xfffffffe
mov edi, dword [esp + 0x14]
and edi, 1
add edi, dword [esp + 0xc]
mov dword [eax + 4], edi
mov dword [ecx], eax
mov edi, dword [edx + 4]
and edi, 1
or edi, ecx
mov dword [edx + 4], edi
or byte [eax + 4], 1
cmp dword [esi], eax
jne 0x100237ff
mov dword [esi], edx
mov eax, esi
jmp 0x100235ff
mov edx, dword [ecx + 4]
and edx, 0xfffffffe
mov dword [eax], edx
mov edx, eax
and edx, 0xfffffffe
mov edi, dword [ecx + 4]
and edi, 1
or edi, edx
mov dword [ecx + 4], edi
mov edi, dword [eax + 4]
and edi, 1
or edi, edx
mov dword [ecx + 4], edi
or byte [eax + 4], 1
and dword [ecx + 4], 1
mov edx, ecx
jmp 0x10023612
mov edx, dword [esp + 0x14]
and edx, 0xfffffffe
mov dword [ecx], edx
mov edi, dword [esi + 4]
and edi, 1
or edi, ecx
mov dword [esi + 4], edi
and esi, 0xfffffffe
mov ecx, dword [eax + 4]
and ecx, 1
lea edi, [ecx + esi]
mov dword [eax + 4], edi
test esi, esi
je 0x10023978
mov edi, dword [esi]
and edi, 0xfffffffe
or edi, ecx
mov dword [eax + 4], edi
mov dword [esi], eax
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
je 0x100237aa
mov edx, dword [ecx + 4]
test dl, 1
je 0x100237aa
and edx, 0xfffffffe
mov dword [ecx + 4], edx
mov ecx, dword [eax + 4]
mov edi, ecx
or edi, 1
mov dword [eax + 4], edi
and ecx, 0xfffffffe
je 0x10023969
mov edi, dword [ecx]
or edi, 1
mov dword [eax + 4], edi
mov dword [ecx], eax
mov dword [esi], ecx
jmp 0x1002358d
mov dword [eax + 4], ecx
jmp 0x1002358d
or edx, 1
mov dword [edi + 4], edx
mov ecx, dword [edi]
test ecx, ecx
je 0x100237ca
mov edx, dword [ecx + 4]
test dl, 1
jne 0x100238da
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x100239f4
mov edi, dword [edx]
and edi, 0xfffffffe
and ecx, 1
or ecx, edi
mov dword [eax + 4], ecx
mov dword [edx], eax
jmp 0x100236f5
and edx, 0xfffffffe
mov eax, dword [esi + 4]
and eax, 1
or eax, edx
mov dword [esi + 4], eax
jmp 0x1002361c
mov eax, edx
and eax, 0xfffffffe
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
mov eax, esi
jmp 0x100235ff
mov edx, dword [esp]
test edx, edx
je 0x10023a27
cmp dword [edx], ebx
jne 0x1002393d
mov dword [edx], eax
test eax, eax
je 0x10023a33
mov ecx, dword [ebx]
mov dword [eax], ecx
mov ecx, dword [ebx + 4]
and ecx, 0xfffffffe
mov edx, dword [eax + 4]
and edx, 1
or edx, ecx
mov dword [eax + 4], edx
mov edx, dword [ebx + 4]
and edx, 1
or edx, ecx
mov dword [eax + 4], edx
cmp dword [esi], eax
jne 0x10023a42
mov dword [esi], 0
jmp 0x1002361c
and ecx, 1
mov edi, dword [edx + 4]
and edi, 0xfffffffe
or edi, ecx
mov dword [edx + 4], edi
mov ecx, dword [esp + 0x14]
and byte [ecx + 4], 0xfe
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10023987
mov edi, dword [edx]
and edi, 0xfffffffe
and ecx, 1
or ecx, edi
mov edi, dword [esp + 0xc]
mov dword [edi + 4], ecx
mov dword [edx], edi
mov dword [eax], edx
mov ecx, dword [edx + 4]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, eax
and ecx, 0xfffffffe
mov edi, dword [edx + 4]
and edi, 1
or edi, ecx
mov dword [edx + 4], edi
mov ecx, dword [eax + 4]
mov dword [esp + 0x14], ecx
and ecx, 0xfffffffe
jne 0x100236cb
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
and edx, 0xfffffffe
mov dword [ecx + 4], edx
mov edx, dword [eax]
test edx, edx
je 0x100239e2
mov ecx, dword [edx + 4]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, eax
and ecx, 0xfffffffe
mov edi, dword [edx + 4]
and edi, 1
or edi, ecx
mov dword [edx + 4], edi
mov ecx, dword [eax + 4]
mov dword [esp + 0x14], ecx
and ecx, 0xfffffffe
je 0x100239d3
mov edi, dword [ecx]
mov dword [esp + 0xc], edi
and dword [esp + 0xc], 0xfffffffe
mov edi, dword [esp + 0x14]
and edi, 1
add edi, dword [esp + 0xc]
mov dword [eax + 4], edi
mov dword [ecx], eax
mov edi, dword [edx + 4]
and edi, 1
or edi, ecx
mov dword [edx + 4], edi
jmp 0x100236f5
mov ecx, eax
and ecx, 0xfffffffe
mov edi, edx
mov edx, dword [edx + 4]
and edx, 1
or edx, ecx
mov dword [edi + 4], edx
jmp 0x1002382b
or edi, 1
mov dword [eax + 4], edi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
and ecx, 1
mov eax, dword [esp + 0xc]
mov dword [eax + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov eax, esi
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
jmp 0x100235a0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
and dword [esi + 4], 1
jmp 0x1002361c
int3
int3
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
mov edx, ecx
and edx, 0xfffff000
mov ebx, esi
mov esi, dword [esi + 8]
mov eax, 0xfffff000
and esi, eax
xor eax, eax
cmp edx, esi
seta al
mov edx, 0xffffffff
cmovb eax, edx
test eax, eax
mov esi, dword [esp + 0x10]
je 0x10023abb
cmp eax, 0xffffffff
mov edx, ebx
jne 0x10023ad9
mov esi, dword [edx]
test esi, esi
je 0x10024309
mov eax, dword [esi + 4]
test al, 1
jne 0x10023af3
mov ecx, dword [esi]
test ecx, ecx
je 0x10023b10
test byte [ecx + 4], 1
jne 0x10023af3
jmp 0x10023b10
mov edx, dword [esp + 0x14]
test cl, 0x10
jne 0x10024603
xor eax, eax
mov ecx, ebx
cmp edx, ebx
mov edx, ebx
seta cl
jb 0x10023a9c
mov al, cl
jmp 0x10023a95
test eax, eax
je 0x10023afb
mov ecx, dword [edx + 4]
mov esi, ecx
and esi, 0xfffffffe
je 0x10023b5c
mov eax, dword [esi]
test eax, eax
je 0x10023b5c
test byte [eax + 4], 1
je 0x10023b5c
mov dword [esp], edx
jmp 0x10023a64
mov ecx, dword [edx + 4]
mov eax, dword [esp]
mov dword [esp + 0x24], eax
cmp ecx, 1
jbe 0x10023c3b
jmp 0x10023ae0
or eax, 1
mov dword [esi + 4], eax
mov ecx, dword [edx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x100245ee
mov esi, dword [eax]
test esi, esi
je 0x10023b36
mov edx, dword [esi + 4]
test dl, 1
jne 0x1002418a
or ecx, 1
mov edx, ebx
mov dword [ebx + 4], ecx
mov ecx, dword [eax]
or ecx, 1
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov esi, eax
mov ebx, dword [esp]
cmp dword [ebx], edx
jne 0x100246ee
mov dword [ebx], esi
jmp 0x10023a64
mov edx, dword [edx]
test edx, edx
je 0x100246ac
mov eax, dword [edx + 4]
test al, 1
je 0x10023c04
and eax, 0xfffffffe
je 0x1002460a
mov edi, dword [eax]
test edi, edi
je 0x10023b8a
test byte [edi + 4], 1
jne 0x10024202
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
or byte [eax + 4], 1
mov esi, dword [ebx]
test esi, esi
je 0x10024679
mov eax, dword [esi + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x1002468e
mov edx, dword [eax]
and edx, 0xfffffffe
and ecx, 1
or ecx, edx
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
or byte [ebx + 4], 1
mov edx, dword [esp]
cmp dword [edx], ebx
je 0x10020af5
mov eax, esi
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
jmp 0x10023af3
or eax, 1
mov dword [edx + 4], eax
mov eax, dword [edx]
test eax, eax
je 0x10023c1c
mov ecx, dword [eax + 4]
test cl, 1
jne 0x10024135
mov eax, dword [ebx + 4]
mov esi, eax
and esi, 0xfffffffe
je 0x100246bb
mov ecx, dword [esi]
and ecx, 0xfffffffe
and eax, 1
or eax, ecx
mov dword [ebx + 4], eax
mov dword [esi], ebx
jmp 0x10023be4
mov ecx, dword [edx]
test ecx, ecx
je 0x10023c6e
mov eax, dword [ecx + 4]
and eax, 0xfffffffe
mov dword [edx], eax
mov eax, edx
and eax, 0xfffffffe
mov edx, dword [ecx + 4]
and edx, 1
or edx, eax
mov dword [ecx + 4], edx
mov edx, dword [ebx + 4]
and edx, 1
or edx, eax
mov dword [ecx + 4], edx
mov edx, ebx
or byte [ebx + 4], 1
and dword [ecx + 4], 1
mov ebx, dword [esp]
cmp dword [ebx], edx
jne 0x10023f7f
mov dword [ebx], ecx
mov ecx, dword [esp + 0x70]
mov ebx, dword [esp + 4]
mov edx, dword [esp + 0x28]
shr edx, 0xc
mov dword [esi + 0x58], ecx
xor eax, eax
mov ecx, dword [esp + 0x14]
mov dword [ecx], eax
mov dword [ecx + 4], eax
cmp edx, dword [esp + 0x18]
mov ecx, dword [esp + 0xc]
jne 0x10023d3d
cmp dword [esp + 0x38], 0
je 0x10023ce7
xor eax, eax
inc eax
mov edx, ecx
mov ecx, dword [esp + 0x18]
cmp ecx, 2
cmovae eax, ecx
shl eax, 2
lea eax, [eax + eax*2]
lea ecx, [edx + edx*2]
lea ecx, [ebx + ecx*4]
add ecx, 0x18
xor edx, edx
test byte [ecx + edx], 8
je 0x10023cd9
dec dword [ebx + 0xc]
dec dword [esi + 0x48]
mov dword [ecx + edx], 3
add edx, 0xc
cmp eax, edx
jne 0x10023ccd
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x20]
or dword [ecx], eax
cmp dword [ebx + 0xc], 0
jne 0x10023d02
cmp dword [esp + 0x34], 0
jne 0x10023f92
test byte [esp + 0x1c], 1
je 0x1002410e
cmp dword [esp + 8], 0
je 0x1002410e
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
add dword [eax + 0x34], ecx
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x18], 0
jne 0x10020529
push eax
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
jmp 0x10020529
mov eax, edx
mov edx, ecx
add ecx, eax
mov dword [esp], ecx
mov ecx, eax
mov eax, dword [esp + 0x18]
sub ecx, eax
shl ecx, 0xc
add eax, edx
lea edi, [eax + eax*2]
lea eax, [ebx + edi*4]
add eax, 0x10
mov edx, 0xfff
mov esi, dword [eax + 8]
and esi, edx
or esi, ecx
mov dword [esp + 0x28], eax
mov dword [eax + 8], esi
mov eax, dword [esp]
lea esi, [eax + eax*2]
and edx, dword [ebx + esi*4 + 0xc]
or edx, ecx
mov dword [ebx + esi*4 + 0xc], edx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x58]
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], 0
test ecx, ecx
je 0x100242d5
lea eax, [ebx + edi*4]
add eax, 0x18
mov dword [esp + 0x14], eax
lea esi, [esp + 0x70]
xor edi, edi
mov edx, esi
mov dword [esp], edx
mov esi, dword [ecx]
test esi, esi
je 0x10023dc8
mov eax, dword [esi + 4]
test al, 1
je 0x10023dc8
mov ebx, dword [esi]
test ebx, ebx
je 0x10023dc8
test byte [ebx + 4], 1
jne 0x10023e35
mov esi, ecx
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
mov edx, eax
and edx, 0xfffff000
mov ebx, dword [esi + 8]
mov ecx, 0xfffff000
and ebx, ecx
xor ecx, ecx
cmp edx, ebx
seta cl
mov edx, 0xffffffff
cmovb ecx, edx
cmp ecx, 0xffffffff
je 0x10023e0f
test ecx, ecx
jne 0x10023e24
test al, 0x10
mov ecx, 0
cmove ecx, dword [esp + 0x28]
xor eax, eax
cmp ecx, esi
seta cl
jae 0x10023e66
mov ecx, dword [esi]
xor eax, eax
dec eax
mov ebx, dword [esp + 4]
mov edi, dword [esp]
test ecx, ecx
jne 0x10023daa
jmp 0x10023ef7
mov eax, 1
mov ebx, dword [esp + 4]
mov ecx, dword [esi + 4]
and ecx, 0xfffffffe
jmp 0x10023e18
and eax, 0xfffffffe
mov dword [ecx], eax
mov ebx, ecx
and ebx, 0xfffffffe
mov eax, dword [esi]
mov edx, dword [esi + 4]
and edx, 1
or edx, ebx
mov dword [esi + 4], edx
test eax, eax
je 0x1002465b
and byte [eax + 4], 0xfe
mov edx, dword [esp]
cmp dword [edx], ecx
jne 0x10023e6a
mov dword [edx], esi
jmp 0x10023dca
mov al, cl
jmp 0x10023e29
and esi, 0xfffffffe
mov eax, dword [edx + 4]
and eax, 1
lea ecx, [eax + esi]
mov dword [edx + 4], ecx
test esi, esi
je 0x1002466a
mov ecx, dword [esi]
and ecx, 0xfffffffe
or ecx, eax
mov dword [edx + 4], ecx
mov dword [esi], edx
mov eax, dword [edx + 4]
and eax, 1
mov ecx, dword [esi + 4]
and ecx, 0xfffffffe
or ecx, eax
mov dword [esi + 4], ecx
or byte [edx + 4], 1
test edi, edi
je 0x1002461f
cmp dword [edi], edx
je 0x10024302
jmp 0x10024361
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
mov edx, eax
mov ecx, 0xfffff000
and edx, ecx
mov ebx, dword [esi + 8]
and ebx, ecx
xor ecx, ecx
cmp edx, ebx
seta cl
mov edx, 0xffffffff
cmovb ecx, edx
test ecx, ecx
jne 0x100242c0
jmp 0x10024371
mov ecx, dword [esi + 4]
and ecx, 0xfffffffe
mov edx, esi
test ecx, ecx
jne 0x10023dac
mov ecx, dword [esp + 0x28]
mov dword [ecx], 0
mov dword [ecx + 4], 1
cmp eax, 1
je 0x10023f2f
mov dword [esi], ecx
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x70]
test eax, eax
je 0x10024703
and byte [eax + 4], 0xfe
mov dword [esi + 0x58], eax
jmp 0x10023ca6
mov eax, dword [esi + 4]
and eax, 1
mov ecx, eax
or ecx, dword [esp + 0x28]
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x28]
mov ecx, dword [ecx]
and ecx, 0xfffffffe
or ecx, eax
mov dword [esi + 4], ecx
mov eax, dword [esp + 0x28]
mov dword [eax], esi
mov eax, dword [esi + 4]
and eax, 1
mov ecx, dword [esp + 0x28]
mov ecx, dword [ecx + 4]
and ecx, 0xfffffffe
or ecx, eax
mov eax, dword [esp + 0x28]
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x28]
or byte [esi + 4], 1
cmp dword [edi], esi
jne 0x100241db
mov dword [edi], eax
jmp 0x10023f0f
and ecx, 0xfffffffe
mov eax, dword [ebx + 4]
and eax, 1
or eax, ecx
mov dword [ebx + 4], eax
jmp 0x10023c7b
mov esi, dword [esi + 0x38]
mov dword [esp + 0x74], esi
mov dword [esp + 0x78], 0
xor edx, edx
dec edx
xor eax, eax
cmp esi, ebx
setb al
cmova eax, edx
cmp eax, 0xffffffff
je 0x10024268
test eax, eax
je 0x100243eb
test esi, esi
je 0x1002462e
mov ebx, edx
mov ecx, dword [esi + 8]
mov dword [esp + 0x18], 0
mov eax, ecx
and eax, 0xfffffffe
je 0x10024395
mov edx, dword [eax + 4]
test edx, edx
je 0x10024395
test byte [edx + 8], 1
je 0x10024395
mov edx, ebx
lea edi, [esp + 0x6c]
mov ebx, esi
mov esi, eax
xor eax, eax
cmp esi, dword [esp + 4]
setb al
cmova eax, edx
cmp eax, 0xffffffff
jne 0x1002403e
test esi, esi
je 0x100244f1
mov eax, dword [esi + 4]
test eax, eax
je 0x100244f1
test byte [eax + 8], 1
jne 0x10023ffa
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10024452
test byte [ecx + 8], 1
jne 0x10023ffa
jmp 0x10024452
test eax, eax
jne 0x1002405a
xor ecx, ecx
test esi, esi
je 0x100240cf
mov eax, dword [esi + 8]
mov dword [esp + 0x18], ebx
cmp eax, 1
jbe 0x1002409a
jmp 0x10024061
test esi, esi
je 0x10024073
mov eax, dword [esi + 8]
and eax, 0xfffffffe
je 0x10024073
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10024073
test byte [ecx + 8], 1
jne 0x10023ffa
lea ecx, [esp + 0x68]
mov edx, esi
call fcn.1003cd70
mov eax, dword [esp + 0x68]
cmp dword [ebx + 4], esi
jne 0x100244a2
jmp 0x100244e9
mov esi, ebx
xor edx, edx
dec edx
jmp 0x10023ffa
mov eax, dword [esi + 4]
test eax, eax
je 0x100240cf
mov ecx, dword [eax + 8]
and ecx, 0xfffffffe
mov dword [esi + 4], ecx
mov ecx, esi
and ecx, 0xfffffffe
mov edx, dword [eax + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
mov edx, dword [esi + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
or byte [esi + 8], 1
and dword [eax + 8], 1
mov ecx, eax
cmp dword [ebx + 4], esi
jne 0x100242ef
mov dword [ebx + 4], ecx
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x74]
mov dword [ecx + 0x38], eax
mov ecx, dword [esp + 4]
test ecx, ecx
mov edx, dword [esp + 0x1c]
je 0x10024712
xor eax, eax
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
cmp dword [esp + 8], 0
setne al
test dl, al
jne 0x10023d18
mov eax, dword [esp + 0x2c]
cmp dword [eax + 0x18], 0
je 0x100245e1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [eax], 0xc
mov dword [esp + 8], 0
jmp 0x10020534
and ecx, 0xfffffffe
mov dword [eax + 4], ecx
mov esi, dword [ebx]
test esi, esi
je 0x100246ca
mov eax, dword [esi + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x100246df
mov edx, dword [eax]
and edx, 0xfffffffe
and ecx, 1
or ecx, edx
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
jmp 0x10023be4
and edx, 0xfffffffe
mov dword [eax], edx
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
and esi, 0xfffffffe
mov eax, dword [ebx + 4]
and eax, 1
lea ecx, [eax + esi]
mov dword [ebx + 4], ecx
test esi, esi
je 0x1002464c
mov edx, ebx
mov ecx, dword [esi]
and ecx, 0xfffffffe
or ecx, eax
mov dword [ebx + 4], ecx
mov dword [esi], ebx
mov eax, dword [ebx + 4]
and eax, 0xfffffffe
je 0x100241d3
mov ecx, dword [eax + 4]
test cl, 1
jne 0x10024475
mov dword [edx + 4], eax
jmp 0x10023b4a
mov eax, dword [edi + 4]
mov ecx, eax
and ecx, 0xfffffffe
cmp esi, ecx
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0xc]
jne 0x10023f17
and eax, 1
or eax, dword [esp + 0x28]
mov dword [edi + 4], eax
jmp 0x10023f17
and ecx, 1
mov esi, dword [eax + 4]
and esi, 0xfffffffe
or esi, ecx
mov dword [eax + 4], esi
and byte [edi + 4], 0xfe
mov eax, dword [edx + 4]
mov esi, eax
and esi, 0xfffffffe
je 0x1002469d
mov ecx, dword [esi]
and ecx, 0xfffffffe
and eax, 1
or eax, ecx
mov dword [edx + 4], eax
mov dword [esi], edx
mov dword [ebx], esi
mov eax, dword [esi + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
jne 0x10023bc6
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
test esi, esi
je 0x10024296
mov eax, dword [esi + 4]
test eax, eax
je 0x10024296
mov dword [esp + 0x18], 0
test byte [eax + 8], 1
jne 0x10023ff6
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10024296
test byte [ecx + 8], 1
jne 0x10023ff6
mov ebx, edx
lea edi, [esp + 0x58]
mov ecx, edi
mov edx, esi
call fcn.1003cc60
mov eax, dword [edi]
test eax, eax
je 0x10024763
and byte [eax + 8], 0xfe
mov dword [esp + 0x18], 0
jmp 0x100244dd
xor eax, eax
inc eax
cmp ecx, 0xffffffff
mov ebx, dword [esp + 4]
jne 0x10023ee7
jmp 0x10024448
mov ecx, dword [esp + 0x28]
mov dword [ecx], 0
mov dword [ecx + 4], 1
lea esi, [esp + 0x70]
jmp 0x10023f0d
and ecx, 0xfffffffe
mov eax, dword [ebx + 8]
and eax, 1
or eax, ecx
mov dword [ebx + 8], eax
jmp 0x100240db
mov dword [edi], esi
jmp 0x10023eb7
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x10024721
mov eax, dword [esp + 0x14]
cmp dword [ecx], eax
mov esi, dword [esp + 0x10]
jne 0x100244b7
mov dword [ecx], edx
mov ebx, dword [esp + 0x14]
mov eax, dword [ebx]
mov dword [edx], eax
mov eax, dword [ebx + 4]
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov ecx, dword [ebx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov eax, dword [esp]
cmp dword [eax], edx
jne 0x10024730
mov dword [eax], 0
jmp 0x10023c7b
mov eax, dword [edi + 4]
and eax, 1
or eax, esi
mov dword [edi + 4], eax
jmp 0x10023eb7
test al, 0x10
mov ecx, 0
cmove ecx, dword [esp + 0x28]
xor eax, eax
cmp ecx, esi
seta cl
mov ebx, dword [esp + 4]
jb 0x10024448
mov al, cl
jmp 0x10023ee7
mov eax, dword [esi + 4]
test eax, eax
je 0x10024739
test byte [eax + 8], 1
jne 0x100244ce
or ecx, 1
mov dword [esi + 8], ecx
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x100243c3
mov edx, dword [ecx + 8]
test dl, 1
jne 0x10024562
or byte [eax + 8], 1
mov ecx, dword [esi + 8]
mov eax, ecx
and eax, 0xfffffffe
je 0x10024772
mov edx, dword [eax + 4]
and edx, 0xfffffffe
and ecx, 1
or ecx, edx
mov dword [esi + 8], ecx
mov dword [eax + 4], esi
jmp 0x100244dd
mov ebx, edx
xor edx, edx
test esi, esi
je 0x10024434
mov ecx, dword [esi + 8]
cmp ecx, 1
ja 0x100245bb
mov eax, dword [esi + 4]
test eax, eax
je 0x10024434
mov ecx, dword [eax + 8]
and ecx, 0xfffffffe
mov dword [esi + 4], ecx
mov ecx, esi
and ecx, 0xfffffffe
mov edx, dword [eax + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
mov edx, dword [esi + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
or byte [esi + 8], 1
and dword [eax + 8], 1
mov edx, eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0x38], edx
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x1c]
jmp 0x100240f6
mov ecx, dword [esi]
xor eax, eax
dec eax
jmp 0x10023eed
mov ecx, edi
mov edx, esi
call fcn.1003cc60
mov eax, dword [esp + 0x6c]
cmp dword [ebx + 4], esi
jne 0x1002474e
mov dword [ebx + 4], eax
mov esi, eax
xor edx, edx
dec edx
jmp 0x10023ffe
and ecx, 0xfffffffe
mov dword [eax + 4], ecx
mov eax, dword [edx + 4]
mov ecx, eax
or ecx, 1
mov dword [edx + 4], ecx
and eax, 0xfffffffe
je 0x1002463d
mov ecx, dword [eax]
or ecx, 1
mov edx, ebx
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov dword [esi], eax
jmp 0x10023b4a
mov ecx, eax
and ecx, 0xfffffffe
mov edx, dword [ebx + 8]
and edx, 1
or edx, ecx
mov dword [ebx + 8], edx
jmp 0x10024090
mov eax, edx
and eax, 0xfffffffe
mov ebx, ecx
mov ecx, dword [ecx + 4]
and ecx, 1
or ecx, eax
mov dword [ebx + 4], ecx
jmp 0x10024327
lea edi, [esp + 0x58]
mov ecx, edi
mov edx, esi
call fcn.1003cd70
mov eax, dword [edi]
lea esi, [esp + 0x70]
mov dword [esi + 4], eax
jmp 0x10023ff4
mov dword [ebx + 4], eax
jmp 0x10024090
cmp dword [esp + 0x18], 0
je 0x10024781
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x18]
cmp dword [ecx + 4], eax
jne 0x100245c8
mov eax, dword [esp + 0x18]
mov dword [eax + 4], esi
cmp dword [esp + 4], 0
je 0x10024790
test esi, esi
je 0x100247a6
mov edx, dword [esp + 4]
mov eax, dword [edx + 4]
mov dword [esi + 4], eax
mov eax, dword [edx + 8]
and eax, 0xfffffffe
mov ecx, dword [esi + 8]
and ecx, 1
or ecx, eax
mov dword [esi + 8], ecx
mov ecx, dword [edx + 8]
and ecx, 1
or ecx, eax
mov dword [esi + 8], ecx
cmp dword [ebx + 4], esi
jne 0x100247b5
mov dword [ebx + 4], 0
jmp 0x100240db
and edx, 0xfffffffe
mov dword [ecx + 8], edx
mov eax, dword [esi + 4]
test eax, eax
je 0x100247be
mov ecx, dword [eax + 8]
and ecx, 0xfffffffe
mov dword [esi + 4], ecx
mov ecx, esi
and ecx, 0xfffffffe
mov edx, dword [eax + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
mov edx, dword [esi + 8]
mov ecx, edx
and ecx, 0xfffffffe
je 0x100247d4
mov edi, dword [ecx + 4]
and edi, 0xfffffffe
and edx, 1
or edx, edi
mov dword [esi + 8], edx
mov dword [ecx + 4], esi
mov edx, dword [eax + 8]
and edx, 1
or edx, ecx
mov dword [eax + 8], edx
jmp 0x100244dd
lea eax, [esp + 0x70]
mov dword [esp + 0x18], eax
jmp 0x10023fd4
mov eax, esi
and eax, 0xfffffffe
mov edx, dword [esp + 0x18]
mov ecx, dword [edx + 8]
and ecx, 1
or ecx, eax
mov dword [edx + 8], ecx
jmp 0x10024514
mov dword [esp + 8], 0
jmp 0x10023d31
or ecx, 1
mov dword [ebx + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
xor edx, edx
jmp 0x10023ac8
and ecx, 1
mov dword [edx + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [ebx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [ebx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov eax, esi
and eax, 0xfffffffe
mov ecx, dword [ebx + 4]
and ecx, 1
or ecx, eax
mov dword [ebx + 4], ecx
jmp 0x10023a64
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
and dword [eax + 4], 1
jmp 0x10023c7b
or ecx, 1
mov dword [esi + 8], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov ecx, eax
and ecx, 0xfffffffe
mov edx, dword [ebx + 8]
and edx, 1
or edx, ecx
mov dword [ebx + 8], edx
jmp 0x1002446b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023507
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a56
test esi, esi
je 0x100247a6
mov dword [esi + 4], 0
and dword [esi + 8], 1
xor ecx, ecx
jmp 0x1002454a
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc
and dword [ebx + 8], 1
jmp 0x100240db
mov dword [esi + 4], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10023a4b
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100234fc