Function at 0x10042900
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, 0xa8
mov eax, dword [0x1009a00c]
xor eax, ebp
mov dword [esp + 0xa0], eax
mov eax, dword [0x1009a804]
test eax, eax
je 0x100444c1
push 0x1009a72c
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov edi, dword [0x1009a750]
test edi, edi
je 0x100444ac
mov eax, dword [ebp + 8]
mov ecx, 0xffffffff
xor edx, edx
cmp dword [edi + 8], eax
setb dl
cmova edx, ecx
test edx, edx
je 0x10042972
cmp edx, 0xffffffff
je 0x1004296e
mov edi, dword [edi + 4]
and edi, 0xfffffffe
test edi, edi
jne 0x1004294b
jmp 0x100444ac
mov edi, dword [edi]
jmp 0x10042965
push 0x1009a72c
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [0x1009a804]
test eax, eax
je 0x10044216
mov ebx, dword [ebp + 0xc]
test ebx, ebx
je 0x100444c8
test edi, edi
je 0x100444d2
cmp ebx, 0xf00
ja 0x10042c95
cmp ebx, 9
jb 0x10042bf5
cmp ebx, 0x1f1
jae 0x10042b73
add ebx, 0xf
mov eax, ebx
and eax, 0xfffffff0
mov dword [esp + 0x40], eax
shr ebx, 4
shl ebx, 5
lea esi, [edi + ebx]
add esi, 0x58
cmp byte [edi + 0x3c], 0
mov dword [esp + 0x24], ebx
je 0x100429ea
cmp dword [edi + 0x40], 0
je 0x10044196
lea eax, [edi + 0xc]
mov dword [esp + 0x48], eax
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esi]
test ecx, ecx
je 0x10042b00
cmp dword [ecx + 8], 0
je 0x10042b00
mov eax, dword [ecx + 4]
mov edx, dword [ecx + eax*4 + 0xc]
test edx, edx
je 0x10042b8f
mov ebx, dword [edi + 0x40]
test ebx, ebx
jne 0x10042a83
tzcnt esi, edx
mov ebx, eax
shl ebx, 5
or ebx, esi
btc edx, esi
mov esi, eax
mov eax, dword [esp + 0x24]
imul ebx, dword [edi + eax + 0x60]
mov eax, dword [edi + eax + 0x6c]
mov dword [ecx + esi*4 + 0xc], edx
add eax, ecx
add ebx, eax
dec dword [ecx + 8]
test ebx, ebx
je 0x100439be
mov eax, dword [esp + 0x40]
add dword [edi + 0x2c], eax
push dword [esp + 0x48]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test ebx, ebx
je 0x100439c8
mov ecx, dword [esp + 0xa0]
xor ecx, ebp
call fcn.100468e0
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 0x10], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x14], edi
mov ecx, dword [ebx]
mov eax, dword [ebx + 4]
mov esi, eax
shld esi, ecx, 0x17
mov edi, ecx
shl edi, 0x17
xor edi, ecx
mov ecx, dword [ebx + 0xc]
xor esi, eax
mov eax, ecx
shr eax, 0x1a
xor eax, ecx
xor eax, esi
mov dword [esp], esi
shr esi, 0x11
xor esi, eax
mov eax, dword [ebx + 8]
mov dword [ebx + 4], ecx
shld dword [esp], edi, 0xf
shld ecx, eax, 6
xor ecx, eax
xor ecx, edi
xor ecx, dword [esp]
mov dword [ebx], eax
mov dword [ebx + 0xc], esi
mov dword [ebx + 8], ecx
add ecx, eax
mov esi, edx
ror esi, cl
test esi, esi
je 0x10042af9
tzcnt esi, esi
mov eax, dword [esp + 0x10]
add esi, ecx
and esi, 0x1f
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
jmp 0x10042a26
mov esi, 0x20
jmp 0x10042ae3
mov eax, dword [edi + ebx + 0x5c]
test eax, eax
mov dword [esp + 0x10], esi
je 0x10042dd3
lea ecx, [edi + ebx]
add ecx, 0x5c
mov dword [esp + 0x1c], ecx
mov ecx, eax
nop dword [eax]
mov ebx, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x10042b20
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 0
xor edx, edx
cmp eax, ebx
setb dl
mov ecx, 0xffffffff
cmovbe ecx, edx
cmp ecx, 0xffffffff
jne 0x10042d28
mov edx, dword [eax]
test edx, edx
je 0x10044545
mov ecx, dword [edx + 4]
mov dword [esp + 8], 0
test cl, 1
je 0x10042c32
mov dword [esp + 0xc], ebx
jmp 0x10044acc
add ebx, 0xff
mov eax, ebx
and eax, 0x1f00
mov dword [esp + 0x40], eax
shr ebx, 8
add ebx, 0x1e
jmp 0x100429cd
mov dword [esp + 0x1c], ecx
mov ecx, dword [edi + ebx + 0x68]
mov ebx, eax
shl ebx, 5
inc eax
cmp eax, ecx
jae 0x10044554
mov edx, eax
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + edx*4 + 0xc]
add ebx, 0x20
test esi, esi
mov eax, edx
je 0x10042b9c
mov dword [esp + 0x10], eax
mov edx, dword [edi + 0x40]
test edx, edx
jne 0x10042cb6
tzcnt edx, esi
add ebx, edx
mov eax, dword [esp + 0x24]
imul ebx, dword [edi + eax + 0x60]
mov eax, dword [edi + eax + 0x6c]
mov ecx, dword [esp + 0x1c]
add eax, ecx
add ebx, eax
btc esi, edx
mov eax, dword [esp + 0x10]
mov dword [ecx + eax*4 + 0xc], esi
mov dword [ecx + 4], eax
jmp 0x10042a47
mov eax, ebx
dec eax
je 0x10042d4b
bsr ecx, eax
xor ecx, 0x1f
neg cl
mov edx, 1
shl edx, cl
cmp edx, 9
mov eax, 8
cmovb edx, eax
cmp ebx, 2
cmovb edx, eax
mov dword [esp + 0x40], edx
mov eax, edx
shr eax, 3
or eax, 1
bsr ebx, eax
jmp 0x100429cd
mov esi, dword [edx]
test esi, esi
je 0x10042c42
test byte [esi + 4], 1
jne 0x10042b6a
or ecx, 1
mov dword [edx + 4], ecx
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x1004441e
mov edx, dword [ecx]
test edx, edx
je 0x10042c74
mov dword [esp + 0xc], esi
mov esi, dword [edx + 4]
mov dword [esp], esi
mov esi, dword [esp + 0xc]
test byte [esp], 1
jne 0x10042ffb
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 + 0x78]
mov dword [eax], edx
jmp 0x10042b6a
mov ecx, edi
mov edx, ebx
cmp ebx, 0xfd000
ja 0x10043ece
push 0
call fcn.1001acc0
add esp, 4
mov ebx, eax
jmp 0x10042a63
mov dword [esp + 0x14], edi
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov dword [esp], ecx
mov dword [esp + 8], esi
mov esi, ecx
shld esi, eax, 0x17
mov edi, eax
shl edi, 0x17
xor edi, eax
mov ecx, dword [edx + 0xc]
xor esi, dword [esp]
mov eax, ecx
shr eax, 0x1a
xor eax, ecx
xor eax, esi
mov dword [esp], esi
shr esi, 0x11
xor esi, eax
mov eax, dword [edx + 8]
mov dword [edx + 4], ecx
shld dword [esp], edi, 0xf
shld ecx, eax, 6
xor ecx, eax
xor ecx, edi
xor ecx, dword [esp]
mov dword [edx], eax
mov dword [edx + 0xc], esi
mov esi, dword [esp + 8]
mov dword [edx + 8], ecx
add ecx, eax
mov edx, esi
ror edx, cl
test edx, edx
je 0x10042d55
tzcnt edx, edx
add edx, ecx
and edx, 0x1f
mov edi, dword [esp + 0x14]
jmp 0x10042bcb
test ecx, ecx
jne 0x10042d5c
mov ecx, dword [eax + 4]
cmp ecx, 1
ja 0x10043bf0
mov ecx, dword [eax]
test ecx, ecx
jne 0x10043c3d
mov dword [esp + 0x78], ecx
jmp 0x10044aec
mov ecx, 0x20
jmp 0x10042c04
mov edx, 0x20
jmp 0x10042d1a
mov ecx, dword [eax + 4]
mov dword [esp + 8], 0
mov edx, ecx
and edx, 0xfffffffe
je 0x10042d7e
mov esi, dword [edx]
test esi, esi
je 0x10042d7e
test byte [esi + 4], 1
jne 0x10042b6a
mov edx, dword [eax]
test edx, edx
je 0x10044642
test byte [edx + 4], 1
jne 0x10043084
or ecx, 1
mov dword [eax + 4], ecx
mov esi, dword [edx]
test esi, esi
je 0x10042dad
mov ecx, dword [esi + 4]
mov dword [esp], ecx
test cl, 1
jne 0x10043a78
or byte [edx + 4], 1
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10044675
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [eax + 4], ecx
mov dword [edx], eax
jmp 0x10042c8a
movzx eax, byte [edi + ebx + 0x76]
mov dword [esp + 0xc], eax
lea eax, [edi + 0x54]
mov dword [esp + 0x28], eax
mov ecx, dword [edi + 0x54]
test ecx, ecx
mov dword [esp + 0x14], edi
je 0x1004390d
mov edx, dword [esp + 0xc]
shl edx, 0xc
xor eax, eax
xor esi, esi
dec esi
mov edi, dword [ecx + 8]
mov ebx, 0xfffff000
and edi, ebx
xor ebx, ebx
cmp edx, edi
seta bl
cmovb ebx, esi
lea edi, [ebx + 1]
cmp edi, 2
jae 0x10042e24
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x10042dfe
jmp 0x10042e35
cmp ebx, 1
jne 0x10044611
mov ecx, dword [ecx + 4]
and ecx, 0xfffffffe
jmp 0x10042e1e
test eax, eax
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x10]
je 0x1004390d
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
and ecx, 0xfff00000
mov eax, dword [ecx + 0xc]
mov dword [esp + 0x5c], eax
mov dword [esp + 0x1c], edx
mov eax, edx
shr eax, 0xc
movzx edx, al
lea eax, [edx*4]
lea eax, [eax + eax*2]
or eax, ecx
mov dword [esp], eax
mov eax, dword [eax + 0x18]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc]
test eax, eax
mov dword [esp + 0x3c], edx
mov dword [esp + 0x18], ecx
je 0x10043098
xor ebx, ebx
inc ebx
cmp eax, 2
cmovae ebx, eax
mov dword [esp + 0x2c], ebx
mov ebx, eax
lea eax, [edx + edx*2]
lea eax, [ecx + eax*4]
add eax, 0x18
mov dword [esp + 0x38], 0
mov dword [esp + 8], ebx
xor ebx, ebx
mov dword [esp + 4], eax
add edx, ebx
lea eax, [edx + edx*2]
mov ecx, dword [esp + 0x18]
test byte [ecx + eax*4 + 0x18], 0x60
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
jne 0x10042f10
inc ebx
cmp ebx, eax
setae al
mov dword [esp + 0x38], eax
dec ecx
mov dword [esp + 8], ecx
mov eax, dword [esp + 4]
add eax, 0xc
cmp ebx, dword [esp + 0x2c]
mov edx, dword [esp + 0x3c]
jne 0x10042ecf
jmp 0x1004309e
mov dword [esp + 8], ecx
mov dword [esp + 0x34], edx
mov dword [esp + 0x58], ebx
xor ecx, ecx
cmp ebx, eax
jae 0x10042feb
mov eax, dword [esp + 4]
mov dword [esp + 0x20], ecx
mov ecx, dword [eax]
test cl, 0x60
je 0x1004418d
and ecx, 0xffffff9f
mov dword [eax], ecx
mov ecx, dword [esp + 0x20]
inc ecx
add eax, 0xc
cmp dword [esp + 8], ecx
jne 0x10042f2a
mov edx, dword [esp + 8]
mov ebx, edx
shl ebx, 0xc
mov dword [esp + 0x20], edx
jne 0x100438df
jmp 0x10043bbe
mov dword [esp + 0x54], ebx
mov ebx, ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [esp + 0x50], eax
push 4
push 0x1000
mov dword [esp + 0x4c], ebx
push ebx
push esi
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
test eax, eax
je 0x10044684
mov eax, dword [esp + 0x44]
add esi, eax
mov ebx, dword [esp + 0x54]
sub ebx, eax
mov eax, 0x100000
cmp ebx, eax
mov ecx, 0x100000
cmovb ecx, ebx
test ebx, ebx
je 0x10043902
jmp 0x10042f64
test edx, edx
je 0x10042fd7
test al, al
mov ecx, 0x20
mov edx, 4
cmovne ecx, edx
mov edx, dword [esp + 4]
mov esi, dword [esp + 0x20]
or dword [edx], ecx
add edx, 0xc
dec esi
jne 0x10042fcf
test al, al
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x20]
je 0x1004372b
add dword [edi + 0x28], ecx
mov ebx, dword [esp + 0x58]
mov ecx, dword [esp + 8]
jmp 0x10042eeb
mov esi, dword [esp]
and esi, 0xfffffffe
mov dword [ecx], esi
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 0x10044666
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 0x1004307c
mov esi, dword [ecx + 4]
mov dword [esp + 0xc], esi
mov dword [esp], ecx
mov ecx, esi
test cl, 1
mov ecx, dword [esp]
je 0x1004307c
mov esi, dword [esp + 0xc]
and esi, 0xfffffffe
mov dword [ecx + 4], esi
mov ecx, dword [eax + 4]
mov esi, ecx
or esi, 1
mov dword [eax + 4], esi
and ecx, 0xfffffffe
je 0x10044738
mov esi, dword [ecx]
or esi, 1
mov dword [eax + 4], esi
mov dword [ecx], eax
mov dword [edx], ecx
jmp 0x10042c86
mov dword [eax + 4], ecx
jmp 0x10042c86
lea esi, [esp + 0x60]
mov ecx, esi
mov edx, eax
call fcn.10001f00
mov edx, dword [esi]
jmp 0x10042c8a
mov al, 1
mov dword [esp + 0x38], eax
mov ecx, dword [esp]
lea eax, [ecx + 0x10]
mov dword [esp + 4], eax
add ecx, 0x18
mov eax, dword [esp + 0x28]
mov ebx, dword [eax]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], 0
mov dword [esp], ecx
mov ecx, dword [ecx]
mov edx, 0xfffff000
mov dword [esp + 8], ecx
and ecx, edx
and edx, dword [ebx + 8]
xor eax, eax
cmp ecx, edx
seta al
mov ecx, 0xffffffff
cmovb eax, ecx
test eax, eax
je 0x100438bf
cmp eax, 0xffffffff
jne 0x100437bc
mov edx, dword [ebx]
test edx, edx
je 0x10044633
mov eax, dword [edx + 4]
mov dword [esp + 0x2c], 0
test al, 1
jne 0x10043163
mov ecx, dword [edx]
test ecx, ecx
je 0x10043115
test byte [ecx + 4], 1
jne 0x10043163
or eax, 1
mov dword [edx + 4], eax
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x1004444f
mov dword [esp + 8], ecx
mov edx, dword [eax]
test edx, edx
je 0x10043143
mov ecx, dword [edx + 4]
mov dword [esp + 0x20], ecx
test cl, 1
jne 0x10043f4c
mov ecx, dword [esp + 8]
or ecx, 1
mov dword [ebx + 4], ecx
mov ecx, dword [eax]
or ecx, 1
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov edx, eax
and byte [edx + 4], 0xfe
lea ebx, [esp + 0x78]
mov dword [ebx], edx
mov dword [esp + 8], ebx
mov ebx, edx
mov eax, dword [esp]
mov ecx, dword [eax]
mov edx, ecx
mov eax, 0xfffff000
and edx, eax
mov esi, dword [ebx + 8]
and esi, eax
xor eax, eax
cmp edx, esi
seta al
mov edx, 0xffffffff
cmovb eax, edx
test eax, eax
je 0x100431ba
cmp eax, 0xffffffff
jne 0x100431d4
mov edx, dword [ebx]
test edx, edx
je 0x10043ce3
mov eax, dword [edx + 4]
test al, 1
jne 0x10043163
mov ecx, dword [edx]
test ecx, ecx
je 0x100432ab
test byte [ecx + 4], 1
jne 0x10043163
jmp 0x100432ab
test cl, 0x10
mov ecx, 0
cmove ecx, dword [esp + 4]
xor eax, eax
cmp ecx, ebx
seta cl
jb 0x10043194
mov al, cl
jmp 0x1004318f
test eax, eax
je 0x10043292
mov ecx, dword [ebx + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x100431f6
mov eax, dword [edx]
test eax, eax
je 0x100431f6
test byte [eax + 4], 1
jne 0x10043163
mov eax, dword [ebx]
test eax, eax
je 0x1004459c
mov edx, dword [eax + 4]
test dl, 1
je 0x100432f8
and edx, 0xfffffffe
je 0x1004447f
mov esi, dword [edx]
test esi, esi
je 0x10043225
test byte [esi + 4], 1
jne 0x10043b54
and ecx, 1
or ecx, edx
mov dword [eax + 4], ecx
or byte [edx + 4], 1
mov edx, dword [ebx]
test edx, edx
je 0x100445ab
mov eax, dword [edx + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x100445c0
mov esi, dword [eax]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
or byte [ebx + 4], 1
mov eax, dword [esp + 8]
cmp dword [eax], ebx
mov ebx, eax
je 0x10043161
jmp 0x10043897
mov ecx, dword [ebx + 4]
mov eax, dword [esp + 8]
mov dword [esp + 0x2c], eax
cmp ecx, 1
jbe 0x10043332
jmp 0x100431df
or eax, 1
mov dword [edx + 4], eax
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x1004443a
mov esi, dword [eax]
test esi, esi
je 0x100432d1
mov edx, dword [esi + 4]
test dl, 1
jne 0x10043a29
or ecx, 1
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 edx, dword [esp + 8]
cmp dword [edx], ebx
jne 0x1004461c
mov dword [edx], esi
mov ebx, esi
jmp 0x10043169
or edx, 1
mov dword [eax + 4], edx
mov eax, dword [eax]
test eax, eax
je 0x10043310
mov ecx, dword [eax + 4]
test cl, 1
jne 0x10043ad8
mov eax, dword [ebx + 4]
mov edx, eax
and edx, 0xfffffffe
je 0x100445cf
mov ecx, dword [edx]
and ecx, 0xfffffffe
and eax, 1
or eax, ecx
mov dword [ebx + 4], eax
mov dword [edx], ebx
jmp 0x1004327f
mov eax, dword [ebx]
test eax, eax
je 0x10043363
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
mov dword [ebx], ecx
mov ecx, ebx
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
or byte [ebx + 4], 1
and dword [eax + 4], 1
mov edx, dword [esp + 8]
cmp dword [edx], ebx
mov esi, dword [esp + 0x30]
jne 0x100438ac
mov dword [edx], eax
mov ecx, dword [esp + 0x78]
shr esi, 0xc
mov eax, dword [esp + 0x28]
mov dword [eax], ecx
xor eax, eax
mov edx, dword [esp + 4]
mov dword [edx], eax
mov dword [edx + 4], eax
mov eax, dword [esp + 0xc]
cmp esi, eax
mov ebx, dword [esp + 0x18]
jne 0x1004352b
test al, al
je 0x100433de
mov edx, eax
mov eax, dword [esp + 0x1c]
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 + 0x3c]
lea edx, [edx + edx*2]
lea edx, [ebx + edx*4]
add edx, 0x18
xor esi, esi
test byte [edx + esi], 8
je 0x100433d4
dec dword [ebx + 0xc]
dec dword [edi + 0x44]
mov dword [edx + esi], eax
add esi, 0xc
cmp ecx, esi
jne 0x100433c8
cmp dword [ebx + 0xc], 0
jne 0x10043727
cmp dword [esp + 0x5c], 0
mov esi, dword [esp + 0x10]
je 0x1004372b
mov edx, dword [edi + 0x34]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], 0
xor ecx, ecx
dec ecx
xor eax, eax
cmp edx, ebx
setb al
cmova eax, ecx
cmp eax, 0xffffffff
je 0x10043c71
test eax, eax
je 0x10043e3e
test edx, edx
je 0x100444a0
mov ebx, edx
mov ecx, dword [edx + 8]
mov dword [esp + 0xc], 0
mov eax, ecx
and eax, 0xfffffffe
je 0x10043de8
mov edx, dword [eax + 4]
test edx, edx
je 0x10043de8
test byte [edx + 8], 1
je 0x10043de8
mov edx, ebx
xor ebx, ebx
dec ebx
mov dword [esp], edx
mov edx, eax
xor eax, eax
cmp edx, dword [esp + 0x18]
setb al
cmova eax, ebx
cmp eax, 0xffffffff
jne 0x100434a6
test edx, edx
je 0x1004406a
mov eax, dword [edx + 4]
test eax, eax
je 0x1004406a
test byte [eax + 8], 1
jne 0x10043461
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10043fbc
test byte [ecx + 8], 1
jne 0x10043461
jmp 0x10043fbc
test eax, eax
jne 0x100434d1
mov dword [esp + 8], 0
test edx, edx
je 0x10043973
mov ecx, ebx
mov eax, dword [edx + 8]
mov ebx, dword [esp]
mov dword [esp + 0xc], ebx
cmp eax, 1
jbe 0x10043938
jmp 0x100434da
test edx, edx
je 0x100434f2
mov ecx, ebx
mov eax, dword [edx + 8]
and eax, 0xfffffffe
mov ebx, ecx
je 0x100434f2
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x100434f2
test byte [ecx + 8], 1
jne 0x10043461
lea ecx, [esp + 0x70]
mov esi, edx
call fcn.1001ce60
mov eax, dword [esp + 0x70]
mov ecx, dword [esp]
cmp dword [ecx + 4], esi
je 0x10043fe8
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [esp]
mov edx, dword [esi + 8]
and edx, 1
or edx, ecx
mov dword [esi + 8], edx
mov edx, esi
mov esi, dword [esp + 0x10]
jmp 0x10043461
mov edx, dword [esp + 0x3c]
lea ecx, [edx + esi]
mov dword [esp], ecx
sub esi, eax
shl esi, 0xc
add eax, edx
lea eax, [eax + eax*2]
mov dword [esp + 8], eax
lea eax, [ebx + eax*4 + 0x10]
mov edx, 0xfff
mov ecx, esi
mov dword [esp + 0x30], esi
mov esi, dword [eax + 8]
and esi, edx
or esi, ecx
mov dword [esp + 4], eax
mov dword [eax + 8], esi
mov eax, dword [esp]
lea ecx, [eax + eax*2]
and edx, dword [ebx + ecx*4 + 0xc]
add edx, dword [esp + 0x30]
mov dword [ebx + ecx*4 + 0xc], edx
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], 0
test ecx, ecx
je 0x10043bd6
mov eax, dword [esp + 8]
lea eax, [ebx + eax*4]
add eax, 0x18
mov dword [esp], eax
lea ebx, [esp + 0x78]
xor esi, esi
mov dword [esp + 8], esi
mov esi, ebx
mov ebx, dword [ecx]
test ebx, ebx
je 0x100435be
mov eax, dword [ebx + 4]
test al, 1
je 0x100435be
mov edx, dword [ebx]
test edx, edx
je 0x100435be
test byte [edx + 4], 1
jne 0x10043616
mov ebx, ecx
mov eax, dword [esp]
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
mov edi, dword [esp + 0x14]
je 0x10043608
xor eax, eax
inc eax
test edx, edx
jne 0x10043648
test cl, 0x10
mov ecx, 0
cmove ecx, dword [esp + 4]
xor eax, eax
cmp ecx, ebx
seta cl
jae 0x10043646
mov ecx, dword [ebx]
xor eax, eax
dec eax
test ecx, ecx
jne 0x1004359f
jmp 0x100436e8
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 0x1004457e
and byte [eax + 4], 0xfe
mov edx, esi
cmp dword [esi], ecx
jne 0x10043650
mov dword [edx], ebx
jmp 0x100435c0
mov al, cl
mov ecx, dword [ebx + 4]
and ecx, 0xfffffffe
jmp 0x1004360d
and ebx, 0xfffffffe
mov eax, dword [edx + 4]
and eax, 1
lea ecx, [eax + ebx]
mov dword [edx + 4], ecx
test ebx, ebx
je 0x1004458d
mov ecx, dword [ebx]
and ecx, 0xfffffffe
or ecx, eax
mov dword [edx + 4], ecx
mov dword [ebx], edx
mov eax, dword [edx + 4]
and eax, 1
mov ecx, dword [ebx + 4]
and ecx, 0xfffffffe
or ecx, eax
mov dword [ebx + 4], ecx
or byte [edx + 4], 1
mov ecx, dword [esp + 8]
test ecx, ecx
mov edi, dword [esp + 0x14]
je 0x10044491
cmp dword [ecx], edx
je 0x10043cc5
jmp 0x10043d40
mov eax, dword [esp]
mov eax, dword [eax]
mov edx, eax
mov ecx, 0xfffff000
and edx, ecx
mov esi, dword [ebx + 8]
and esi, ecx
xor ecx, ecx
cmp edx, esi
seta cl
mov edx, 0xffffffff
cmovb ecx, edx
test ecx, ecx
jne 0x10043bc5
jmp 0x10043dc8
mov ecx, dword [ebx + 4]
and ecx, 0xfffffffe
mov esi, ebx
test ecx, ecx
jne 0x100435a5
mov esi, dword [esp + 8]
mov ecx, dword [esp + 4]
mov dword [ecx], 0
mov dword [ecx + 4], 1
cmp eax, 1
je 0x10043844
mov dword [ebx], ecx
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x78]
test eax, eax
je 0x10044657
and byte [eax + 4], 0xfe
mov dword [ecx], eax
mov eax, dword [esp + 0xc]
jmp 0x1004339d
mov esi, dword [esp + 0x10]
test byte [esp + 0x38], 1
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x1c]
je 0x100439b8
test ebx, ebx
je 0x100439b8
cmp dword [esi], ebx
je 0x10044433
mov dword [ebx], esi
cmp dword [edi + ecx + 0x68], 1
mov edx, 0
je 0x10043773
add ecx, edi
add ecx, 0x68
xor edx, edx
mov dword [ebx + edx*4 + 0xc], 0xffffffff
inc edx
mov esi, dword [ecx]
dec esi
cmp edx, esi
jb 0x10043763
mov ecx, dword [esp + 0x24]
mov esi, ebx
mov ebx, dword [edi + ecx + 0x64]
and ebx, 0x1f
mov ecx, ebx
neg cl
xor eax, eax
dec eax
shr eax, cl
cmp ebx, 1
mov ebx, dword [esp + 0x24]
mov ecx, 0
sbb ecx, ecx
or ecx, eax
mov dword [esi + edx*4 + 0xc], ecx
mov dword [esi + 4], 0
mov eax, dword [edi + ebx + 0x64]
mov dword [esi + 8], eax
inc dword [edi + ebx + 0x70]
mov eax, dword [esp + 0x10]
mov dword [eax], esi
mov ecx, esi
jmp 0x10042a0c
test eax, eax
je 0x100439db
mov eax, dword [ebx + 4]
mov dword [esp + 0x2c], 0
mov edx, eax
and edx, 0xfffffffe
je 0x100437e6
mov ecx, dword [edx]
test ecx, ecx
je 0x100437e6
test byte [ecx + 4], 1
jne 0x10043163
mov ecx, dword [ebx]
test ecx, ecx
je 0x10044464
mov edx, dword [ecx + 4]
test dl, 1
jne 0x10043d50
or eax, 1
mov dword [ebx + 4], eax
mov eax, dword [ecx]
test eax, eax
je 0x10043814
mov edx, dword [eax + 4]
test dl, 1
jne 0x10043ee2
or byte [ecx + 4], 1
mov eax, dword [ebx + 4]
mov edx, eax
and edx, 0xfffffffe
je 0x1004476e
mov ecx, dword [edx]
and ecx, 0xfffffffe
and eax, 1
or eax, ecx
mov dword [ebx + 4], eax
mov dword [edx], ebx
lea ebx, [esp + 0x78]
mov dword [ebx], edx
mov edi, dword [esp + 0x14]
jmp 0x10043163
mov eax, dword [ebx + 4]
and eax, 1
mov ecx, eax
or ecx, dword [esp + 4]
mov dword [ebx + 4], ecx
mov ecx, dword [esp + 4]
mov ecx, dword [ecx]
and ecx, 0xfffffffe
or ecx, eax
mov dword [ebx + 4], ecx
mov eax, dword [esp + 4]
mov dword [eax], ebx
mov eax, dword [ebx + 4]
and eax, 1
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 4]
and ecx, 0xfffffffe
or ecx, eax
mov eax, dword [esp + 4]
mov dword [eax + 4], ecx
mov eax, dword [esp + 4]
or byte [ebx + 4], 1
cmp dword [esi], ebx
jne 0x10043b2d
mov dword [esi], eax
jmp 0x10043704
mov eax, edx
and eax, 0xfffffffe
mov ecx, dword [ebx + 4]
and ecx, 1
or ecx, eax
mov dword [ebx + 4], ecx
jmp 0x10043163
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
jmp 0x10043375
xor ecx, ecx
test byte [esp + 8], 0x10
cmove ecx, dword [esp + 4]
xor eax, eax
cmp ecx, ebx
seta cl
jb 0x100430f0
mov al, cl
jmp 0x100430e7
mov esi, dword [esp + 0x34]
shl esi, 0xc
mov eax, esi
and eax, 0xff000
mov ecx, 0x100000
sub ecx, eax
cmp ecx, ebx
cmovae ecx, ebx
add esi, dword [esp + 0x18]
jmp 0x10042f64
mov al, 1
mov edx, dword [esp + 0x20]
jmp 0x10042fb4
mov edx, dword [edi + 0x38]
test edx, edx
je 0x10043bfd
mov dword [edi + 0x38], 0
lea ebx, [edx + 0x2000]
add edx, 0x28
mov ecx, dword [esp + 0x28]
call fcn.10047dd0
mov edx, ebx
jmp 0x10042e64
mov eax, dword [edx + 4]
test eax, eax
je 0x10043973
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 dword [esp + 8], eax
mov ebx, dword [esp]
cmp dword [ebx + 4], edx
jne 0x10043ccc
mov eax, dword [esp + 8]
mov dword [ebx + 4], eax
mov eax, dword [esp + 0x7c]
mov dword [edi + 0x34], eax
mov edx, dword [esp + 0x18]
test edx, edx
mov ecx, dword [esp + 0x24]
je 0x10044703
xor eax, eax
mov dword [edx + 4], eax
mov dword [edx + 8], eax
mov ebx, dword [esp + 0x1c]
test ebx, ebx
setne al
test byte [esp + 0x38], al
jne 0x10043746
mov dword [esi], 0
push dword [esp + 0x48]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [eax], 0xc
xor ebx, ebx
jmp 0x10042a6b
mov eax, dword [ebx + 4]
cmp eax, 1
ja 0x10043ff7
mov eax, dword [ebx]
xor ecx, ecx
test eax, eax
mov esi, dword [esp + 0x30]
je 0x10043379
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
mov dword [ebx], ecx
mov ecx, ebx
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
or byte [ebx + 4], 1
and dword [eax + 4], 1
mov ecx, eax
jmp 0x10043379
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 0x10044560
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 0x10043a70
mov ecx, dword [eax + 4]
test cl, 1
jne 0x10043ea3
mov dword [ebx + 4], eax
jmp 0x100432e3
mov ecx, dword [esp]
and ecx, 0xfffffffe
mov dword [esi + 4], ecx
mov edx, dword [eax]
test edx, edx
je 0x10044530
mov dword [esp + 0x14], edi
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 0x10044747
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
mov edi, dword [esp + 0x14]
jmp 0x10042c8a
and ecx, 0xfffffffe
mov dword [eax + 4], ecx
mov edx, dword [ebx]
test edx, edx
je 0x100445de
mov eax, dword [edx + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x100445f3
mov esi, dword [eax]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
jmp 0x1004327f
mov eax, dword [esi + 4]
mov ecx, eax
and ecx, 0xfffffffe
cmp ebx, ecx
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x28]
jne 0x1004370c
and eax, 1
or eax, dword [esp + 4]
mov dword [esi + 4], eax
jmp 0x1004370c
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 [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10044602
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [eax + 4], ecx
mov dword [edx], eax
mov dword [ebx], edx
mov eax, dword [edx + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
mov edi, dword [esp + 0x14]
jne 0x10043261
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov al, 1
jmp 0x10042fb4
xor eax, eax
inc eax
cmp ecx, 0xffffffff
jne 0x100436d4
jmp 0x10043e99
mov ecx, dword [esp + 4]
mov dword [ecx], 0
mov dword [ecx + 4], 1
lea ebx, [esp + 0x78]
jmp 0x10043702
lea edx, [esp + 0x78]
mov dword [esp + 8], edx
jmp 0x10042d67
lea eax, [esp + 0x78]
mov ecx, 0x100000
mov edx, 0x100000
push eax
push 0
call fcn.10047a20
add esp, 8
test eax, eax
je 0x100439b8
mov ebx, eax
movzx eax, byte [esp + 0x78]
mov ecx, edi
mov edx, ebx
push eax
call fcn.10047940
add esp, 4
add ebx, 0x2000
jmp 0x10043931
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
mov esi, dword [esp + 0x10]
or byte [eax + 4], 1
and dword [ecx + 4], 1
jmp 0x10042d42
test edx, edx
je 0x10043c9f
mov eax, dword [edx + 4]
test eax, eax
je 0x10043c9f
mov dword [esp + 0xc], 0
test byte [eax + 8], 1
jne 0x1004345e
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10043c9f
test byte [ecx + 8], 1
jne 0x1004345e
lea ebx, [esp + 0x60]
mov ecx, ebx
call fcn.10001010
mov eax, dword [ebx]
test eax, eax
je 0x10044822
and byte [eax + 8], 0xfe
mov dword [esp + 0xc], 0
jmp 0x10043fb0
mov dword [ecx], ebx
jmp 0x100436a5
mov ecx, dword [esp + 8]
and ecx, 0xfffffffe
mov eax, dword [ebx + 8]
and eax, 1
or eax, ecx
mov dword [ebx + 8], eax
jmp 0x10043986
mov edx, dword [esp + 0x2c]
test edx, edx
je 0x10044756
mov eax, dword [esp + 4]
cmp dword [edx], eax
jne 0x10043f37
mov dword [edx], ebx
mov edx, dword [esp + 4]
mov eax, dword [edx]
mov dword [ebx], eax
mov eax, dword [edx + 4]
and eax, 0xfffffffe
mov ecx, dword [ebx + 4]
and ecx, 1
or ecx, eax
mov dword [ebx + 4], ecx
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [ebx + 4], ecx
mov eax, dword [esp + 8]
cmp dword [eax], ebx
jne 0x10044765
mov dword [eax], 0
mov ecx, dword [esp + 0x78]
mov esi, dword [esp + 0x30]
jmp 0x10043379
mov eax, dword [ecx + 4]
and eax, 1
or eax, ebx
mov dword [ecx + 4], eax
jmp 0x100436a5
and edx, 0xfffffffe
je 0x100444e9
mov esi, dword [edx]
test esi, esi
je 0x10043d69
test byte [esi + 4], 1
jne 0x10044004
and eax, 1
or eax, edx
mov dword [ecx + 4], eax
or byte [edx + 4], 1
mov edx, dword [ebx]
test edx, edx
je 0x1004477d
mov eax, dword [edx + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x10044792
mov esi, dword [eax]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
or byte [ebx + 4], 1
jmp 0x10043835
test al, 0x10
mov ecx, 0
cmove ecx, dword [esp + 4]
xor eax, eax
cmp ecx, ebx
seta cl
jb 0x10043e99
mov al, cl
jmp 0x100436d4
mov eax, dword [ebx + 4]
test eax, eax
je 0x100447a1
test byte [eax + 8], 1
jne 0x10043f9f
or ecx, 1
mov dword [ebx + 8], ecx
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10043e16
mov edx, dword [ecx + 8]
test dl, 1
jne 0x100440f4
or byte [eax + 8], 1
mov ecx, dword [ebx + 8]
mov eax, ecx
and eax, 0xfffffffe
je 0x100447e9
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 0x10043fb0
mov eax, edx
xor edx, edx
test eax, eax
je 0x10043e89
mov ebx, eax
mov ecx, dword [eax + 8]
cmp ecx, 1
ja 0x10044155
mov eax, dword [ebx + 4]
test eax, eax
je 0x10043e89
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 dword [edi + 0x34], edx
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x18]
jmp 0x1004399d
mov ecx, dword [ebx]
xor eax, eax
dec eax
jmp 0x100436da
and ecx, 0xfffffffe
mov dword [eax + 4], ecx
mov eax, dword [ebx + 4]
mov ecx, eax
or ecx, 1
mov dword [ebx + 4], ecx
and eax, 0xfffffffe
je 0x1004456f
mov ecx, dword [eax]
or ecx, 1
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov dword [esi], eax
jmp 0x100432e3
push 0
push 0x100000
call fcn.10003720
add esp, 8
jmp 0x10042caf
and edx, 0xfffffffe
mov dword [eax + 4], edx
mov edx, dword [ebx]
test edx, edx
je 0x100447b6
mov eax, dword [edx + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
je 0x100447cb
mov esi, dword [eax]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
jmp 0x10043835
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
jmp 0x10043cfd
mov ecx, dword [esp + 0x20]
and ecx, 0xfffffffe
mov dword [eax], ecx
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
and edx, 0xfffffffe
mov eax, dword [ebx + 4]
and eax, 1
lea ecx, [eax + edx]
mov dword [ebx + 4], ecx
test edx, edx
je 0x100447da
mov ecx, dword [edx]
and ecx, 0xfffffffe
or ecx, eax
mov dword [ebx + 4], ecx
mov dword [edx], ebx
mov eax, dword [ebx + 4]
and eax, 0xfffffffe
je 0x10043f97
mov ecx, dword [eax + 4]
test cl, 1
jne 0x10044162
mov dword [ebx + 4], eax
jmp 0x10043159
lea ecx, [esp + 0x60]
mov edx, ebx
call fcn.1001ce60
lea eax, [esp + 0x60]
mov eax, dword [eax]
lea edx, [esp + 0x78]
mov dword [edx + 4], eax
jmp 0x1004345e
lea ecx, [esp + 0x74]
mov dword [esp + 4], edx
call fcn.10001010
mov eax, dword [esp + 0x74]
mov ecx, dword [esp]
mov edx, dword [esp + 4]
cmp dword [ecx + 4], edx
jne 0x100447f8
mov ecx, dword [esp]
mov dword [ecx + 4], eax
jmp 0x10043464
mov edx, dword [esp]
mov dword [edx + 4], eax
mov esi, dword [esp + 0x10]
jmp 0x10043461
lea ecx, [esp + 0x78]
mov dword [esp + 0x2c], ecx
jmp 0x100437cf
and eax, 1
mov edi, dword [edx + 4]
and edi, 0xfffffffe
or edi, eax
mov dword [edx + 4], edi
and byte [esi + 4], 0xfe
mov eax, dword [ecx + 4]
mov edx, eax
and edx, 0xfffffffe
je 0x10044813
mov esi, dword [edx]
and esi, 0xfffffffe
and eax, 1
or eax, esi
mov dword [ecx + 4], eax
mov dword [edx], ecx
mov dword [ebx], edx
mov eax, dword [edx + 4]
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, ebx
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov ecx, dword [ebx + 4]
mov eax, ecx
and eax, 0xfffffffe
jne 0x10043da5
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [esp + 4], edx
cmp dword [esp + 0xc], 0
je 0x10044831
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0xc]
cmp dword [ecx + 4], eax
jne 0x10044403
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc]
mov dword [ecx + 4], eax
cmp dword [esp + 0x18], 0
je 0x1004484c
cmp dword [esp + 4], 0
je 0x10044875
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 4]
mov ebx, dword [esp + 4]
mov dword [ebx + 4], eax
mov eax, dword [edx + 8]
and eax, 0xfffffffe
mov ecx, dword [ebx + 8]
and ecx, 1
or ecx, eax
mov dword [ebx + 8], ecx
mov ecx, dword [edx + 8]
and ecx, 1
or ecx, eax
mov eax, dword [esp + 4]
mov dword [eax + 8], ecx
mov ecx, dword [esp]
cmp dword [ecx + 4], eax
jne 0x10044869
mov eax, dword [esp]
mov dword [eax + 4], 0
jmp 0x10043986
and edx, 0xfffffffe
mov dword [ecx + 8], edx
mov eax, dword [ebx + 4]
test eax, eax
je 0x10044884
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 dword [esp + 4], ebx
mov edx, dword [ebx + 8]
mov ecx, edx
and ecx, 0xfffffffe
je 0x1004489a
mov ebx, dword [ecx + 4]
and ebx, 0xfffffffe
and edx, 1
or edx, ebx
mov ebx, dword [esp + 4]
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 0x10043fb0
lea eax, [esp + 0x78]
mov dword [esp + 0xc], eax
jmp 0x1004343c
and ecx, 0xfffffffe
mov dword [eax + 4], ecx
mov eax, dword [ebx + 4]
mov ecx, eax
or ecx, 1
mov dword [ebx + 4], ecx
and eax, 0xfffffffe
je 0x100448a9
mov ecx, dword [eax]
or ecx, 1
mov dword [ebx + 4], ecx
mov dword [eax], ebx
mov dword [edx], eax
jmp 0x10043159
mov edx, dword [esp + 0x20]
jmp 0x10042f50
mov dword [esp + 0x10], esi
mov ebx, edi
mov byte [edi + 0x3c], 0
lea eax, [esp + 0x78]
push eax
call sym.mozglue.dll_class_mozilla::Maybe_unsigned_long_long_unsigned___int64_____cdecl_mozilla::RandomUint64_void_
add esp, 4
lea esi, [esp + 0x60]
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.1000c400
xor edx, edx
cmp byte [esi + 8], 0
mov ecx, 0
mov esi, 0
je 0x100441de
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
cmp byte [esp + 0x80], 0
mov edi, 0
je 0x100441f5
mov edx, dword [esp + 0x7c]
mov edi, dword [esp + 0x78]
mov dword [eax], edi
mov dword [eax + 4], edx
mov dword [eax + 8], esi
mov dword [eax + 0xc], ecx
mov edi, ebx
mov dword [ebx + 0x40], eax
mov byte [ebx + 0x3c], 1
mov ebx, dword [esp + 0x24]
mov esi, dword [esp + 0x10]
jmp 0x100429ea
mov dword [esp + 0x14], edi
push 0x1009a808
call dword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
mov eax, dword [0x1009a804]
test eax, eax
jne 0x100443ef
mov eax, dword [0x1009a3c8]
mov ecx, dword fs:[0x2c]
mov ecx, dword [ecx + eax*4]
mov eax, dword [0x1009a810]
mov dword [esp + 0x24], ecx
cmp eax, dword [ecx + 4]
jle 0x10044288
push 0x1009a810
call fcn.10046148
add esp, 4
cmp dword [0x1009a810], 0xffffffff
jne 0x10044288
lea esi, [esp + 0x78]
push esi
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [esi + 4]
mov dword [0x1009a80c], eax
push 0x1009a810
call fcn.100460fe
add esp, 4
mov eax, 0x1000
xor edx, edx
div dword [0x1009a80c]
test edx, edx
jne 0x100448e0
mov edi, 0x1009a814
push 0x40
push edi
push str.MALLOC_OPTIONS
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableA]
test eax, eax
cmove edi, eax
je 0x100442f3
mov al, byte [edi]
test al, al
je 0x100442f3
xor esi, esi
movsx eax, al
add eax, 0xffffffd0
cmp eax, 9
jbe 0x1004492a
xor ebx, ebx
inc ebx
mov al, byte [edi + esi]
movsx ecx, al
cmp ecx, 0x72
jne 0x100448b8
mov byte [0x1009a76c], 1
dec ebx
jne 0x100442d1
mov al, byte [edi + esi + 1]
inc esi
test al, al
jne 0x100442bf
mov dword [0x1009a7d0], 0
mov ebx, 0x1388
mov edi, dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
push ebx
push 0x1009a7b0
call edi
xor esi, esi
mov dword [0x1009a7c8], esi
mov dword [0x1009a7cc], esi
push ebx
push 0x1009a770
call edi
mov dword [0x1009a788], esi
mov dword [0x1009a78c], esi
mov dword [0x1009a790], esi
push ebx
push 0x1009a7d4
call edi
mov dword [0x1009a800], esi
mov dword [0x1009a7f8], esi
mov dword [0x1009a74c], esi
mov dword [0x1009a750], esi
mov dword [esp + 0x80], esi
mov dword [esp + 0x7c], esi
mov dword [esp + 0x84], esi
mov eax, dword [0x1009a024]
mov dword [esp + 0x78], eax
push ebx
push 0x1009a72c
call edi
test eax, eax
je 0x10044904
lea edx, [esp + 0x78]
xor ecx, ecx
call fcn.1003b4f0
mov dword [0x1009a744], eax
test eax, eax
je 0x1004491a
mov ecx, dword [esp + 0x24]
lea ecx, [ecx + 8]
mov dword [ecx], eax
push 0x1388
push 0x1009a794
call dword [sym.imp.KERNEL32.dll_InitializeCriticalSectionAndSpinCount]
mov ecx, 0x4000
call fcn.1000c400
test eax, eax
je 0x10044910
mov edi, eax
push 0x4000
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [0x1009a7ac], edi
xor eax, eax
inc eax
xchg dword [0x1009a804], eax
call fcn.10002140
push 0x1009a808
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov edi, dword [esp + 0x14]
jmp 0x1004298a
mov eax, dword [esp + 4]
and eax, 0xfffffffe
mov edx, dword [esp + 0xc]
mov ecx, dword [edx + 8]
and ecx, 1
or ecx, eax
mov dword [edx + 8], ecx
jmp 0x10044095
or esi, 1
mov dword [eax + 4], esi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov ecx, ebx
jmp 0x100449c6
or ecx, 1
mov dword [ebx + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
or ecx, 1
mov dword [ebx + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
or eax, 1
mov dword [ebx + 4], eax
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
int3
and ecx, 1
mov dword [eax + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_result_
int3
xor edi, edi
jmp 0x1004297d
mov ebx, 1
jmp 0x10042995
mov edx, ebx
cmp ebx, 0x1f1
jb 0x100444fe
mov edi, dword [0x1009a744]
mov ebx, edx
jmp 0x1004299d
and eax, 1
mov dword [ecx + 4], eax
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov eax, dword [0x1009a3c8]
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + eax*4]
mov edi, dword [eax + 8]
test edi, edi
mov ebx, edx
jne 0x100429a9
lea eax, [eax + 8]
mov edi, dword [0x1009a744]
mov dword [eax], edi
jmp 0x100429a9
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov eax, dword [esp + 0x1c]
dec dword [eax + 8]
jmp 0x100439be
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [ebx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [ebx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov eax, ecx
mov edi, dword [esp + 0x14]
jmp 0x10042e45
mov eax, esi
and eax, 0xfffffffe
mov ecx, dword [edx + 4]
and ecx, 1
or ecx, eax
mov dword [edx + 4], ecx
mov ebx, esi
jmp 0x10043169
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
or ecx, 1
mov dword [eax + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [esp + 0x34], esi
mov esi, edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x5af
je 0x1004469c
cmp eax, 8
jne 0x100446fa
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 + 0x4c], eax
push 0x32
call dword [sym.imp.KERNEL32.dll_Sleep]
push 4
push 0x1000
push dword [esp + 0x4c]
push dword [esp + 0x40]
call dword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
jne 0x10044712
cmp eax, 0x5af
je 0x100446e7
cmp eax, 8
jne 0x100446fa
xor eax, eax
dec dword [esp + 0x4c]
mov edi, esi
mov edx, dword [esp + 0x20]
jne 0x100446b2
jmp 0x10042fb4
xor eax, eax
mov edi, esi
jmp 0x10043904
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
cmp eax, 0x5af
mov edi, esi
mov esi, dword [esp + 0x34]
mov ecx, dword [esp + 0x50]
je 0x1004472c
cmp eax, 8
jne 0x10042f8f
push ecx
call dword [sym.imp.KERNEL32.dll_SetLastError]
jmp 0x10042f8f
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
and dword [eax + 4], 1
jmp 0x10043d33
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [ebx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
or ecx, 1
mov dword [ebx + 8], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [ebx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov ecx, eax
and ecx, 0xfffffffe
mov edx, dword [esp]
mov edx, dword [edx + 8]
and edx, 1
or edx, ecx
mov ecx, dword [esp]
mov dword [ecx + 8], edx
jmp 0x10043464
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
int3
cmp dword [esp + 4], 0
je 0x10044875
mov eax, dword [esp + 4]
mov dword [eax + 4], 0
and dword [eax + 8], 1
xor ecx, ecx
jmp 0x100440d2
mov eax, dword [esp]
and dword [eax + 8], 1
jmp 0x10043986
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [ebx + 4], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
cmp ecx, 0x46
jne 0x1004494d
mov eax, dword [0x1009a024]
test eax, eax
je 0x1004496e
add eax, eax
je 0x100442e7
mov dword [0x1009a024], eax
jmp 0x100442e7
mov ecx, str._jemalloc_
mov edx, str.Compile_time_page_size_does_not_divide_the_runtime_one._n
call fcn.1004cde0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_CRASH__
int3
mov dword [0x1009a744], 0
jmp 0x1004491a
mov dword [0x1009a7ac], 0
push 0x1009a808
call dword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
jmp 0x100439c8
xor ebx, ebx
lea ecx, [ebx + ebx*4]
lea ebx, [eax + ecx*2]
movsx eax, byte [edi + esi + 1]
inc esi
add eax, 0xffffffd0
cmp eax, 0xa
jb 0x1004492c
test ebx, ebx
je 0x100442ea
jmp 0x100442d1
cmp ecx, 0x52
jne 0x1004495e
mov byte [0x1009a76c], 0
jmp 0x100442e7
cmp ecx, 0x66
jne 0x1004497d
shr dword [0x1009a024], 1
jmp 0x100442e7
mov dword [0x1009a024], 1
jmp 0x100442e7
lea ecx, [esp + 0x78]
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 + 0x78]
mov edx, 0x10090196
call fcn.1004cde0
jmp 0x100442e7
mov dword [esi], ecx
test ecx, ecx
mov ebx, dword [esp + 0x24]
jne 0x10042a0c
jmp 0x100439be
int3
mov dword [esp], eax
mov eax, edx
xor ecx, ecx
cmp edx, ebx
setb cl
mov edx, 0xffffffff
cmova ecx, edx
cmp ecx, 0xffffffff
jne 0x10044a72
test eax, eax
je 0x10044ce7
mov edx, dword [eax]
test edx, edx
je 0x10044ce7
mov ecx, dword [edx + 4]
test cl, 1
jne 0x100449f0
mov esi, dword [edx]
test esi, esi
je 0x10044a33
test byte [esi + 4], 1
jne 0x10044acc
or ecx, 1
mov dword [edx + 4], ecx
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x10044e1f
mov edx, dword [ecx]
test edx, edx
jne 0x10044a95
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 ecx, dword [esp]
cmp dword [ecx], eax
mov esi, dword [esp + 0x10]
jne 0x10044eec
mov dword [ecx], edx
jmp 0x100449f3
test ecx, ecx
jne 0x10044aae
xor edx, edx
test eax, eax
je 0x10044ee3
mov ecx, dword [eax + 4]
mov ebx, dword [esp]
mov dword [esp + 8], ebx
cmp ecx, 1
mov ebx, dword [esp + 0xc]
jbe 0x10044ad5
jmp 0x10044ab9
mov dword [esp + 4], edx
mov edx, dword [esp + 4]
mov edx, dword [edx + 4]
mov dword [esp + 0x18], edx
test dl, 1
je 0x10044a4d
jmp 0x10044bf3
test eax, eax
je 0x10044e7f
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10044b10
mov esi, dword [edx]
test esi, esi
je 0x10044b10
test byte [esi + 4], 1
je 0x10044b10
mov esi, dword [esp + 0x10]
jmp 0x100449f0
mov ecx, dword [eax]
test ecx, ecx
jne 0x10044bbd
mov ecx, dword [esp]
cmp dword [ecx], eax
jne 0x10044c7b
mov dword [ecx], edx
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x78]
mov dword [ecx], eax
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov ecx, 0xfffff000
and ecx, dword [ebx + 8]
jmp 0x100449c6
mov esi, dword [eax]
test esi, esi
je 0x10044e7f
mov edx, dword [esi + 4]
test dl, 1
je 0x10044c96
mov dword [esp + 4], esi
and edx, 0xfffffffe
je 0x10044e8e
mov esi, dword [edx]
test esi, esi
mov dword [esp + 0x14], edi
je 0x10044b47
test byte [esi + 4], 1
jne 0x10044d3b
and ecx, 1
or ecx, edx
mov esi, dword [esp + 4]
mov dword [esi + 4], ecx
or byte [edx + 4], 1
mov edx, dword [eax]
test edx, edx
je 0x10044e34
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 0x10044ea7
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
or byte [eax + 4], 1
mov edi, dword [esp + 0x14]
mov esi, dword [esp]
cmp dword [esi], eax
jne 0x10044cd0
mov dword [esi], edx
mov eax, esi
jmp 0x10044acc
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
mov esi, dword [esp + 0x10]
or byte [eax + 4], 1
and dword [ecx + 4], 1
mov edx, ecx
jmp 0x10044adf
mov edx, dword [esp + 0x18]
and edx, 0xfffffffe
mov dword [ecx], edx
mov edx, dword [esp + 4]
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 0x10044e70
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 0x10044c8e
mov esi, dword [ecx + 4]
mov dword [esp + 0x18], esi
mov dword [esp + 4], ecx
mov ecx, esi
test cl, 1
mov ecx, dword [esp + 4]
je 0x10044c8e
mov esi, dword [esp + 0x18]
and esi, 0xfffffffe
mov dword [ecx + 4], esi
mov ecx, dword [eax + 4]
mov esi, ecx
or esi, 1
mov dword [eax + 4], esi
and ecx, 0xfffffffe
je 0x10044e61
mov esi, dword [ecx]
or esi, 1
mov dword [eax + 4], esi
mov dword [ecx], eax
mov dword [edx], ecx
jmp 0x10044a5f
and edx, 0xfffffffe
mov eax, dword [ecx + 4]
and eax, 1
or eax, edx
mov dword [ecx + 4], eax
jmp 0x10044aec
mov dword [eax + 4], ecx
jmp 0x10044a5f
or edx, 1
mov dword [esi + 4], edx
mov ecx, dword [esi]
test ecx, ecx
je 0x10044cae
mov edx, dword [ecx + 4]
test dl, 1
jne 0x10044da5
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10044eb6
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [eax + 4], ecx
mov dword [edx], eax
jmp 0x10044ba9
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 0x10044acc
mov edx, dword [esp + 8]
test edx, edx
je 0x10044f07
cmp dword [edx], ebx
jne 0x10044dfe
mov dword [edx], eax
test eax, eax
je 0x10044f16
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
mov ecx, dword [esp]
cmp dword [ecx], eax
jne 0x10044f25
mov dword [ecx], 0
jmp 0x10044aec
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 edi, dword [esp + 4]
mov ecx, dword [edi + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10044ec5
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
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 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
jne 0x10044b87
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
and edx, 0xfffffffe
mov dword [ecx + 4], edx
mov edx, dword [eax]
test edx, edx
je 0x10044e4f
mov dword [esp + 0x14], edi
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 0x10044ed4
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 0x10044ba5
mov ecx, eax
and ecx, 0xfffffffe
mov dword [esp + 8], edx
mov edx, dword [esp + 8]
mov edx, dword [edx + 4]
and edx, 1
or edx, ecx
mov ecx, dword [esp + 8]
mov dword [ecx + 4], edx
jmp 0x10044cfd
or esi, 1
mov dword [eax + 4], esi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
int3
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
and ecx, 1
mov eax, dword [esp + 4]
mov dword [eax + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044474
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
mov ebx, dword [esp + 0xc]
jmp 0x10044adf
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
mov ebx, dword [esp + 0xc]
jmp 0x100449f3
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10044e44
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100449d9
and dword [ecx + 4], 1
jmp 0x10044aec