Function at 0x10024cd0
Capabilities:
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 ebx, edx
mov esi, ecx
mov eax, dword [0x100a400c]
xor eax, ebp
mov dword [esp + 0x98], eax
cmp edx, 9
jb 0x1002513c
cmp ebx, 0x1f1
jae 0x10024e82
add ebx, 0xf
mov eax, ebx
and eax, 0xfffffff0
mov dword [esp + 0x30], eax
shr ebx, 4
shl ebx, 5
mov edx, esi
cmp byte [esi + 0x40], 0
mov dword [esp + 0x14], ebx
je 0x10024d2e
cmp dword [edx + 0x44], 0
je 0x10026897
lea ecx, [edx + ebx]
add ecx, 0x5c
lea esi, [edx + 0xc]
mov dword [esp + 0x1c], edx
cmp dword [edx + 0x24], 0
jne 0x10024d4c
push esi
mov edi, ecx
call dword [sym.imp.kernel32.dll_EnterCriticalSection]
mov ecx, edi
mov edi, dword [ecx]
test edi, edi
mov dword [esp + 0x5c], esi
je 0x10024e9e
cmp dword [edi + 8], 0
je 0x10024e9e
mov ecx, dword [edi + 4]
mov edx, dword [edi + ecx*4 + 0xc]
test edx, edx
je 0x100250bc
mov eax, dword [esp + 0x1c]
mov esi, dword [eax + 0x44]
test esi, esi
jne 0x10024e0a
tzcnt ebx, edx
mov esi, ecx
shl esi, 5
or esi, ebx
btc edx, ebx
mov eax, dword [esp + 0x14]
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
imul esi, dword [ecx + eax + 0x64]
mov eax, dword [ecx + eax + 0x70]
mov dword [edi + ebx*4 + 0xc], edx
add eax, edi
add esi, eax
dec dword [edi + 8]
test esi, esi
je 0x10026aca
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x1c]
add dword [ecx + 0x30], eax
xor eax, eax
movzx ebx, byte [ebp + 8]
cmp dword [ecx + 0x24], 0
jne 0x10024ddb
push dword [esp + 0x5c]
mov edi, eax
call dword [sym.imp.kernel32.dll_LeaveCriticalSection]
mov eax, edi
xor bl, 1
or bl, al
test al, al
jne 0x100269fb
mov edi, esi
test bl, bl
je 0x10025223
mov ecx, dword [esp + 0x98]
xor ecx, ebp
call fcn.1004f020
mov eax, edi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 8], ecx
mov dword [esp + 0x10], edi
mov ecx, dword [esi]
mov eax, dword [esi + 4]
mov ebx, eax
shld ebx, ecx, 0x17
mov edi, ecx
shl edi, 0x17
xor edi, ecx
mov ecx, dword [esi + 0xc]
xor ebx, eax
mov eax, ecx
shr eax, 0x1a
xor eax, ecx
xor eax, ebx
mov dword [esp + 4], ebx
shr ebx, 0x11
xor ebx, eax
mov eax, dword [esi + 8]
mov dword [esi + 4], ecx
shld dword [esp + 4], edi, 0xf
shld ecx, eax, 6
xor ecx, eax
xor ecx, edi
xor ecx, dword [esp + 4]
mov dword [esi], eax
mov dword [esi + 0xc], ebx
mov dword [esi + 8], ecx
add ecx, eax
mov esi, edx
ror esi, cl
test esi, esi
je 0x10024e7b
tzcnt ebx, esi
mov edi, dword [esp + 0x10]
add ebx, ecx
and ebx, 0x1f
mov ecx, dword [esp + 8]
jmp 0x10024d86
mov ebx, 0x20
jmp 0x10024e69
add ebx, 0xff
mov eax, ebx
and eax, 0x1f00
mov dword [esp + 0x30], eax
shr ebx, 8
add ebx, 0x1e
jmp 0x10024d15
mov esi, dword [esp + 0x1c]
mov edx, dword [esi + ebx + 0x60]
test edx, edx
mov dword [esp + 0x24], ecx
je 0x1002540e
lea eax, [esi + ebx]
add eax, 0x60
mov dword [esp + 8], eax
mov eax, edx
mov esi, eax
mov eax, dword [eax]
test eax, eax
jne 0x10024ebe
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], 0
xor edi, edi
dec edi
xor eax, eax
cmp edx, esi
setb al
cmova eax, edi
cmp eax, 0xffffffff
jne 0x100251f2
mov ecx, dword [edx]
test ecx, ecx
je 0x10026967
mov eax, dword [ecx + 4]
mov dword [esp + 0x10], 0
test al, 1
je 0x10025120
mov eax, edx
mov edx, ecx
xor ecx, ecx
cmp edx, esi
setb cl
cmova ecx, edi
cmp ecx, 0xffffffff
jne 0x10024f91
test edx, edx
je 0x1002560f
mov ecx, dword [edx]
test ecx, ecx
je 0x1002560f
mov ebx, dword [ecx + 4]
test bl, 1
jne 0x10024f05
mov dword [esp + 4], eax
mov eax, dword [ecx]
test eax, eax
je 0x10024f42
test byte [eax + 4], 1
jne 0x10024f05
or ebx, 1
mov dword [ecx + 4], ebx
mov edi, dword [edx + 4]
mov ebx, edi
and ebx, 0xfffffffe
je 0x10026928
mov ecx, dword [ebx]
test ecx, ecx
je 0x10024f67
mov eax, dword [ecx + 4]
test al, 1
jne 0x10025334
or edi, 1
mov dword [edx + 4], edi
mov eax, dword [ebx]
or eax, 1
mov dword [edx + 4], eax
mov dword [ebx], edx
mov ecx, ebx
mov eax, dword [esp + 4]
cmp dword [eax], edx
mov edi, 0xffffffff
jne 0x10026aaa
mov dword [eax], ecx
jmp 0x10024f07
test ecx, ecx
jne 0x10024fb1
xor ecx, ecx
test edx, edx
je 0x10025082
mov ebx, dword [edx + 4]
mov dword [esp + 0x10], eax
cmp ebx, 1
jbe 0x10025078
jmp 0x10024fbc
test edx, edx
je 0x10026a3e
mov ebx, dword [edx + 4]
mov dword [esp + 4], eax
mov ecx, ebx
and ecx, 0xfffffffe
je 0x10024fd7
mov eax, dword [ecx]
test eax, eax
je 0x10024fd7
test byte [eax + 4], 1
jne 0x10024f05
mov eax, dword [edx]
test eax, eax
je 0x10026a3e
mov ecx, dword [eax + 4]
test cl, 1
je 0x100253a9
and ecx, 0xfffffffe
je 0x10026a4d
mov edi, dword [ecx]
test edi, edi
je 0x10025006
test byte [edi + 4], 1
jne 0x10025666
and ebx, 1
or ebx, ecx
mov dword [eax + 4], ebx
or byte [ecx + 4], 1
mov ecx, dword [edx]
test ecx, ecx
je 0x10026a62
mov eax, dword [ecx + 4]
and eax, 0xfffffffe
mov dword [edx], eax
mov eax, edx
and eax, 0xfffffffe
mov edi, dword [ecx + 4]
and edi, 1
or edi, eax
mov dword [ecx + 4], edi
mov edi, dword [edx + 4]
mov ebx, edi
and ebx, 0xfffffffe
je 0x10026a20
mov eax, dword [ebx]
and eax, 0xfffffffe
and edi, 1
or edi, eax
mov dword [edx + 4], edi
mov dword [ebx], edx
mov eax, dword [ecx + 4]
and eax, 1
or eax, ebx
mov dword [ecx + 4], eax
or byte [edx + 4], 1
xor edi, edi
dec edi
mov ebx, dword [esp + 4]
cmp dword [ebx], edx
jne 0x100253f7
mov dword [ebx], ecx
mov edx, ebx
jmp 0x10024f05
mov ebx, dword [edx]
test ebx, ebx
jne 0x10025287
cmp dword [eax], edx
jne 0x100253e2
mov dword [eax], ecx
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 8]
mov dword [edx], eax
xor eax, eax
mov dword [esi], eax
mov dword [esi + 4], eax
mov edi, 0xfffff000
and edi, dword [esi + 8]
mov dword [ecx], edi
test edi, edi
jne 0x10024d64
jmp 0x100262cb
mov eax, dword [esp + 0x1c]
mov edx, ecx
mov ecx, dword [eax + ebx + 0x6c]
mov esi, edx
shl esi, 5
inc edx
cmp edx, ecx
jae 0x10026ac7
mov eax, dword [edi + edx*4 + 0xc]
add esi, 0x20
mov dword [esp + 4], eax
test eax, eax
je 0x100250cb
mov dword [esp + 8], edx
mov eax, dword [esp + 0x1c]
mov edx, dword [eax + 0x44]
test edx, edx
jne 0x10025177
mov ecx, dword [esp + 4]
tzcnt edx, ecx
add esi, edx
imul esi, dword [eax + ebx + 0x64]
mov eax, dword [eax + ebx + 0x70]
add eax, edi
add esi, eax
btc ecx, edx
mov eax, dword [esp + 8]
mov dword [edi + eax*4 + 0xc], ecx
mov dword [edi + 4], eax
jmp 0x10024dab
mov edi, dword [ecx]
test edi, edi
je 0x10025240
test byte [edi + 4], 1
je 0x10025240
xor edi, edi
dec edi
jmp 0x10024f05
mov eax, ebx
dec eax
je 0x10025219
bsr ecx, eax
xor ecx, 0x1f
neg cl
xor edx, edx
inc edx
shl edx, cl
cmp edx, 9
mov eax, 8
cmovb edx, eax
cmp ebx, 2
cmovb edx, eax
mov dword [esp + 0x30], edx
mov eax, edx
shr eax, 3
or eax, 1
bsr ebx, eax
jmp 0x10024d15
mov dword [esp + 0x10], edi
mov eax, dword [edx]
mov ebx, dword [edx + 4]
mov dword [esp + 0x24], ebx
shld ebx, eax, 0x17
mov edi, eax
shl edi, 0x17
xor edi, eax
mov ecx, dword [edx + 0xc]
xor ebx, dword [esp + 0x24]
mov eax, ecx
shr eax, 0x1a
xor eax, ecx
xor eax, ebx
mov dword [esp + 0x24], ebx
shr ebx, 0x11
xor ebx, eax
mov eax, dword [edx + 8]
mov dword [edx + 4], ecx
shld dword [esp + 0x24], edi, 0xf
shld ecx, eax, 6
xor ecx, eax
xor ecx, edi
xor ecx, dword [esp + 0x24]
mov dword [edx], eax
mov dword [edx + 0xc], ebx
mov dword [edx + 8], ecx
add ecx, eax
mov edx, dword [esp + 4]
ror edx, cl
test edx, edx
je 0x10025239
tzcnt edx, edx
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
add edx, ecx
and edx, 0x1f
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 4]
jmp 0x100250fe
test eax, eax
jne 0x100252bd
mov eax, dword [edx + 4]
cmp eax, 1
ja 0x1002612f
mov eax, dword [edx]
test eax, eax
jne 0x100260ce
mov dword [esp + 0x78], eax
jmp 0x10025094
mov ecx, 0x20
jmp 0x1002514b
push dword [esp + 0x30]
push 0
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov edi, esi
jmp 0x10024df2
mov edx, 0x20
jmp 0x100251d8
or eax, 1
mov dword [ecx + 4], eax
mov edi, dword [edx + 4]
mov eax, edi
and eax, 0xfffffffe
je 0x10026955
mov ecx, dword [eax]
test ecx, ecx
je 0x10025266
mov ebx, dword [ecx + 4]
test bl, 1
jne 0x10025729
or edi, 1
mov dword [edx + 4], edi
mov ecx, dword [eax]
or ecx, 1
mov dword [edx + 4], ecx
mov dword [eax], edx
mov ecx, eax
and byte [ecx + 4], 0xfe
lea edx, [esp + 0x78]
mov dword [edx], ecx
jmp 0x10025134
mov edi, eax
mov eax, dword [ebx + 4]
and eax, 0xfffffffe
mov dword [edx], eax
mov eax, edx
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 eax, edi
mov dword [ebx + 4], ecx
or byte [edx + 4], 1
and dword [ebx + 4], 1
mov ecx, ebx
jmp 0x10025082
mov eax, dword [edx + 4]
mov dword [esp + 0x10], 0
mov ecx, eax
and ecx, 0xfffffffe
je 0x100252df
mov edi, dword [ecx]
test edi, edi
je 0x100252df
test byte [edi + 4], 1
jne 0x10025134
mov ecx, dword [edx]
test ecx, ecx
je 0x10026bc5
test byte [ecx + 4], 1
jne 0x100257bc
or eax, 1
mov dword [edx + 4], eax
mov edi, dword [ecx]
test edi, edi
je 0x1002530e
mov eax, dword [edi + 4]
mov dword [esp + 4], eax
test al, 1
jne 0x10026013
or byte [ecx + 4], 1
mov eax, dword [edx + 4]
mov ecx, eax
and ecx, 0xfffffffe
je 0x10026c0f
mov edi, dword [ecx]
and edi, 0xfffffffe
and eax, 1
or eax, edi
mov dword [edx + 4], eax
mov dword [ecx], edx
jmp 0x1002527c
and eax, 0xfffffffe
mov dword [ebx], eax
mov eax, dword [ecx + 4]
and eax, 1
or eax, ebx
mov dword [ecx + 4], eax
and ecx, 0xfffffffe
mov edi, dword [edx + 4]
and edi, 1
lea eax, [edi + ecx]
mov dword [edx + 4], eax
test ecx, ecx
je 0x10026a11
mov eax, dword [ecx]
and eax, 0xfffffffe
or eax, edi
mov dword [edx + 4], eax
mov dword [ecx], edx
mov edi, dword [edx + 4]
and edi, 0xfffffffe
je 0x100253a1
mov eax, dword [edi + 4]
test al, 1
je 0x100253a1
and eax, 0xfffffffe
mov dword [edi + 4], eax
mov edi, dword [edx + 4]
mov eax, edi
or eax, 1
mov dword [edx + 4], eax
and edi, 0xfffffffe
je 0x10026a02
mov eax, dword [edi]
or eax, 1
mov dword [edx + 4], eax
mov dword [edi], edx
mov dword [ecx], edi
jmp 0x10024f79
mov dword [edx + 4], edi
jmp 0x10024f79
or ecx, 1
mov dword [eax + 4], ecx
mov ecx, dword [eax]
test ecx, ecx
je 0x100253c0
mov eax, dword [ecx + 4]
test al, 1
jne 0x100256d4
mov edi, dword [edx + 4]
mov ecx, edi
and ecx, 0xfffffffe
je 0x10026a77
mov eax, dword [ecx]
and eax, 0xfffffffe
and edi, 1
or edi, eax
mov dword [edx + 4], edi
mov dword [ecx], edx
jmp 0x10025060
and ecx, 0xfffffffe
mov edx, eax
mov eax, dword [eax + 4]
and eax, 1
or eax, ecx
mov dword [edx + 4], eax
jmp 0x1002508c
mov eax, ecx
and eax, 0xfffffffe
mov edx, dword [ebx + 4]
and edx, 1
or edx, eax
mov dword [ebx + 4], edx
mov edx, ebx
jmp 0x10024f05
movzx eax, byte [esi + ebx + 0x7a]
mov dword [esp + 4], eax
lea eax, [esi + 0x58]
mov dword [esp + 0x2c], eax
mov ecx, dword [esi + 0x58]
test ecx, ecx
je 0x10025f8e
mov edx, dword [esp + 4]
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 0x1002545b
mov eax, ecx
mov ecx, dword [ecx]
test ecx, ecx
jne 0x10025435
jmp 0x1002546c
cmp ebx, 1
jne 0x10026b88
mov ecx, dword [ecx + 4]
and ecx, 0xfffffffe
jmp 0x10025455
test eax, eax
mov esi, dword [esp + 0x1c]
je 0x10025f8e
mov ecx, eax
and ecx, 0xfff00000
and eax, 0xfffff
add eax, 0xfffffff0
mov edx, 0xaaaaaaab
mul edx
mov edi, edx
and edi, 0xfffffff8
shl edi, 9
add edi, ecx
mov edx, edi
and edx, 0xfff00000
mov eax, dword [edx + 0xc]
mov dword [esp + 0x54], eax
mov eax, edi
shr eax, 0xc
movzx esi, al
lea eax, [esi*4]
lea eax, [eax + eax*2]
or eax, edx
mov dword [esp + 0xc], eax
mov eax, dword [eax + 0x18]
mov dword [esp + 0x58], eax
mov ebx, dword [esp + 4]
test ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x18], edx
mov dword [esp + 0x3c], esi
je 0x100257ce
xor eax, eax
inc eax
cmp ebx, 2
cmovae eax, ebx
mov dword [esp + 0x28], eax
lea eax, [esi + esi*2]
lea eax, [edx + eax*4]
add eax, 0x18
xor ecx, ecx
mov esi, ebx
xor ebx, ebx
mov dword [esp + 0x38], ecx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x3c]
lea ecx, [ebx + eax]
lea eax, [ecx + ecx*2]
test byte [edx + eax*4 + 0x18], 0x60
jne 0x1002552f
inc ebx
cmp ebx, dword [esp + 4]
setae cl
dec esi
mov eax, dword [esp + 8]
add eax, 0xc
cmp ebx, dword [esp + 0x28]
jne 0x100254fb
jmp 0x100257d0
mov dword [esp + 0x50], ebx
cmp ebx, dword [esp + 4]
mov eax, dword [esp + 8]
jae 0x10026327
xor edi, edi
mov ebx, ecx
mov ecx, dword [eax]
test cl, 0x60
je 0x1002555b
and ecx, 0xffffff9f
mov dword [eax], ecx
inc edi
add eax, 0xc
cmp esi, edi
jne 0x10025545
mov edi, esi
mov ecx, edi
shl ecx, 0xc
mov dword [esp + 0x20], edi
jne 0x10025fdb
jmp 0x100255be
mov dword [esp + 0x34], ebx
mov dword [esp + 0x4c], ecx
mov ebx, edx
call dword [sym.imp.kernel32.dll_GetLastError]
mov dword [esp + 0x48], eax
push 4
push 0x1000
mov dword [esp + 0x48], ebx
push ebx
mov ebx, dword [esp + 0x40]
push ebx
call dword [sym.imp.kernel32.dll_VirtualAlloc]
test eax, eax
je 0x100269a0
mov eax, dword [esp + 0x40]
add ebx, eax
mov ecx, dword [esp + 0x4c]
sub ecx, eax
mov eax, 0x100000
cmp ecx, eax
mov edx, 0x100000
cmovb edx, ecx
test ecx, ecx
jne 0x1002556c
mov al, 1
test edi, edi
je 0x100255e3
test al, al
mov ecx, 0x20
mov edx, 4
cmovne ecx, edx
mov edx, dword [esp + 8]
mov edi, dword [esp + 0x20]
or dword [edx], ecx
add edx, 0xc
dec edi
jne 0x100255db
test al, al
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x10]
je 0x10025d62
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
add dword [eax + 0x2c], ecx
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x50]
jmp 0x10025514
mov edi, dword [esp + 0x10]
test edi, edi
je 0x10026b8f
cmp dword [edi], esi
mov ebx, dword [esp + 0x14]
jne 0x1002579f
mov dword [edi], edx
test edx, edx
je 0x10026b9e
mov edi, eax
mov eax, dword [esi]
mov dword [edx], eax
mov ecx, dword [esi + 4]
and ecx, 0xfffffffe
mov eax, dword [edx + 4]
and eax, 1
or eax, ecx
mov dword [edx + 4], eax
mov eax, dword [esi + 4]
and eax, 1
or eax, ecx
mov dword [edx + 4], eax
cmp dword [edi], edx
jne 0x10026bad
mov dword [edi], 0
jmp 0x10025090
and ebx, 1
mov dword [esp + 0xc], eax
mov eax, dword [ecx + 4]
and eax, 0xfffffffe
or eax, ebx
mov ebx, dword [esp + 0xc]
mov dword [ecx + 4], eax
and byte [edi + 4], 0xfe
mov edi, dword [ebx + 4]
mov ecx, edi
and ecx, 0xfffffffe
je 0x10026a2f
mov eax, dword [ecx]
and eax, 0xfffffffe
and edi, 1
or edi, eax
mov dword [ebx + 4], edi
mov dword [ecx], ebx
mov dword [edx], ecx
mov eax, dword [ecx + 4]
and eax, 0xfffffffe
mov dword [edx], eax
mov eax, edx
and eax, 0xfffffffe
mov edi, dword [ecx + 4]
and edi, 1
or edi, eax
mov dword [ecx + 4], edi
mov edi, dword [edx + 4]
mov ebx, edi
and ebx, 0xfffffffe
jne 0x10025042
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
and eax, 0xfffffffe
mov dword [ecx + 4], eax
mov ecx, dword [edx]
test ecx, ecx
je 0x10026a86
mov eax, dword [ecx + 4]
and eax, 0xfffffffe
mov dword [edx], eax
mov eax, edx
and eax, 0xfffffffe
mov edi, dword [ecx + 4]
and edi, 1
or edi, eax
mov dword [ecx + 4], edi
mov ebx, dword [edx + 4]
mov edi, ebx
and edi, 0xfffffffe
je 0x10026a9b
mov eax, dword [edi]
and eax, 0xfffffffe
and ebx, 1
or ebx, eax
mov dword [edx + 4], ebx
mov dword [edi], edx
mov eax, dword [ecx + 4]
and eax, 1
or eax, edi
mov dword [ecx + 4], eax
jmp 0x10025060
and ebx, 0xfffffffe
mov dword [eax], ebx
mov edi, dword [ecx + 4]
and edi, 1
or edi, eax
mov dword [ecx + 4], edi
and ecx, 0xfffffffe
mov eax, dword [edx + 4]
and eax, 1
lea edi, [eax + ecx]
mov dword [edx + 4], edi
test ecx, ecx
je 0x10026c00
mov edi, dword [ecx]
and edi, 0xfffffffe
or edi, eax
mov dword [edx + 4], edi
mov dword [ecx], edx
mov eax, dword [edx + 4]
and eax, 0xfffffffe
je 0x10025797
mov ebx, dword [eax + 4]
test bl, 1
je 0x10025797
and ebx, 0xfffffffe
mov dword [eax + 4], ebx
mov eax, dword [edx + 4]
mov edi, eax
or edi, 1
mov dword [edx + 4], edi
and eax, 0xfffffffe
je 0x10026c34
mov edi, dword [eax]
or edi, 1
mov dword [edx + 4], edi
mov dword [eax], edx
mov dword [ecx], eax
jmp 0x10025278
mov dword [edx + 4], eax
jmp 0x10025278
mov dword [esp + 4], eax
mov eax, edx
and eax, 0xfffffffe
mov ecx, dword [edi + 4]
and ecx, 1
or ecx, eax
mov eax, dword [esp + 4]
mov dword [edi + 4], ecx
jmp 0x10025629
lea edi, [esp + 0x60]
mov ecx, edi
call fcn.10001010
mov ecx, dword [edi]
jmp 0x1002527c
mov cl, 1
mov dword [esp + 0x38], ecx
mov ecx, dword [esp + 0xc]
lea eax, [ecx + 0x10]
mov dword [esp + 0x28], eax
add ecx, 0x18
mov eax, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], 0
mov dword [esp + 0xc], ecx
mov ebx, dword [ecx]
mov esi, 0xfffff000
mov dword [esp + 8], ebx
and ebx, esi
and esi, dword [eax + 8]
xor edx, edx
dec edx
xor ecx, ecx
cmp ebx, esi
seta cl
cmovb ecx, edx
test ecx, ecx
je 0x10025f6e
cmp ecx, 0xffffffff
jne 0x10025df4
mov edx, dword [eax]
test edx, edx
je 0x10026bb6
mov ecx, dword [edx + 4]
mov dword [esp + 0x20], 0
test cl, 1
je 0x10025e6d
mov dword [esp + 8], eax
mov eax, edx
mov ecx, dword [esp + 0xc]
mov edx, dword [ecx]
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
mov ebx, dword [esp + 0x14]
je 0x100258a1
cmp ecx, 0xffffffff
jne 0x100258bb
mov edx, dword [eax]
test edx, edx
je 0x100263fa
mov ecx, dword [edx + 4]
test cl, 1
jne 0x10025844
mov esi, dword [edx]
test esi, esi
je 0x10025994
test byte [esi + 4], 1
jne 0x10025844
jmp 0x10025994
test dl, 0x10
mov edx, 0
cmove edx, dword [esp + 0x28]
xor ecx, ecx
cmp edx, eax
seta dl
jb 0x1002587a
mov cl, dl
jmp 0x10025875
test ecx, ecx
je 0x1002597f
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x100258dd
mov esi, dword [edx]
test esi, esi
je 0x100258dd
test byte [esi + 4], 1
jne 0x10025844
mov esi, dword [eax]
test esi, esi
je 0x10026b46
mov edx, dword [esi + 4]
test dl, 1
je 0x10025f34
and edx, 0xfffffffe
je 0x1002698e
mov edi, dword [edx]
test edi, edi
je 0x1002590c
test byte [edi + 4], 1
jne 0x10026476
and ecx, 1
or ecx, edx
mov dword [esi + 4], ecx
or byte [edx + 4], 1
mov edx, dword [eax]
test edx, edx
je 0x10026b13
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 0x10026b28
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 ecx, dword [esp + 8]
cmp dword [ecx], eax
mov eax, ecx
mov edi, dword [esp + 0x10]
jne 0x10025ffa
mov dword [eax], edx
jmp 0x10025844
mov ecx, dword [eax + 4]
mov edx, dword [esp + 8]
mov dword [esp + 0x20], edx
cmp ecx, 1
jbe 0x100259e1
jmp 0x100258c6
or ecx, 1
mov dword [edx + 4], ecx
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x10026943
mov edx, dword [ecx]
test edx, edx
je 0x100259ba
mov ebx, dword [edx + 4]
test bl, 1
jne 0x10026389
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 + 8]
cmp dword [ecx], eax
mov eax, ecx
jne 0x10026be9
mov dword [eax], edx
jmp 0x10025848
mov ecx, dword [eax]
test ecx, ecx
je 0x10025a12
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, dword [esp + 8]
cmp dword [edx], eax
mov eax, edx
jne 0x10025f1f
mov dword [eax], ecx
mov edx, dword [esp + 0x78]
mov esi, dword [esp + 0x58]
shr esi, 0xc
mov ecx, dword [esp + 0x2c]
mov dword [ecx], edx
xor eax, eax
mov edx, dword [esp + 0x28]
mov dword [edx], eax
mov dword [edx + 4], eax
mov edx, dword [esp + 4]
cmp esi, edx
jne 0x10025b30
test dl, dl
je 0x10025a99
mov eax, edi
or eax, 1
xor ecx, ecx
inc ecx
cmp edx, 2
cmovae ecx, edx
shl ecx, 2
lea ecx, [ecx + ecx*2]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x3c]
lea edx, [ecx + ecx*2]
mov esi, dword [esp + 0x18]
lea edx, [esi + edx*4]
add edx, 0x18
xor esi, esi
test byte [edx + esi], 8
je 0x10025a8d
mov ecx, dword [esp + 0x18]
dec dword [ecx + 0xc]
mov ecx, dword [esp + 0x1c]
dec dword [ecx + 0x48]
mov dword [edx + esi], eax
add esi, 0xc
cmp dword [esp + 4], esi
jne 0x10025a79
mov eax, dword [esp + 0x18]
cmp dword [eax + 0xc], 0
jne 0x10025d5e
cmp dword [esp + 0x54], 0
mov ecx, dword [esp + 0x24]
je 0x10025d62
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0x38]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x80], 0
xor esi, esi
dec esi
xor eax, eax
cmp edx, dword [esp + 0x18]
setb al
cmova eax, esi
cmp eax, 0xffffffff
je 0x1002613c
test eax, eax
je 0x1002659d
test edx, edx
je 0x100269da
mov esi, edx
mov ecx, dword [edx + 8]
mov dword [esp + 0xc], 0
mov eax, ecx
and eax, 0xfffffffe
je 0x10026547
mov edx, dword [eax + 4]
test edx, edx
je 0x10026547
test byte [edx + 8], 1
je 0x10026547
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, esi
jmp 0x10026169
mov eax, esi
mov ecx, esi
mov eax, dword [esp + 0x3c]
add esi, eax
mov dword [esp + 8], esi
sub ecx, edx
shl ecx, 0xc
add eax, edx
lea edx, [eax + eax*2]
mov dword [esp + 0x28], edx
mov eax, dword [esp + 0x18]
lea edx, [eax + edx*4 + 0x10]
mov dword [esp + 0xc], edx
mov edx, 0xfff
mov esi, dword [esp + 0xc]
mov esi, dword [esi + 8]
and esi, edx
or esi, ecx
mov eax, dword [esp + 0xc]
mov dword [eax + 8], esi
mov esi, dword [esp + 8]
lea esi, [esi + esi*2]
mov eax, dword [esp + 0x18]
and edx, dword [eax + esi*4 + 0xc]
or edx, ecx
mov dword [eax + esi*4 + 0xc], edx
mov edx, eax
mov eax, dword [esp + 0x2c]
mov ecx, dword [eax]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x7c], 0
test ecx, ecx
je 0x100262e7
mov eax, dword [esp + 0x28]
lea eax, [edx + eax*4]
add eax, 0x18
mov dword [esp + 0x28], eax
lea esi, [esp + 0x78]
mov dword [esp + 8], 0
mov eax, dword [esp + 8]
mov dword [esp + 0x20], eax
mov dword [esp + 8], esi
mov esi, dword [ecx]
test esi, esi
je 0x10025bdf
mov eax, dword [esi + 4]
test al, 1
je 0x10025bdf
mov edi, dword [esi]
test edi, edi
je 0x10025bdf
test byte [edi + 4], 1
jne 0x10025c44
mov esi, ecx
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
mov eax, ecx
mov edx, 0xfffff000
and eax, edx
mov edi, dword [esi + 8]
and edi, edx
xor ebx, ebx
cmp eax, edi
seta bl
mov eax, 0xffffffff
cmovb ebx, eax
cmp ebx, 0xffffffff
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 4]
je 0x10025c2e
xor eax, eax
inc eax
test ebx, ebx
jne 0x10025c78
test cl, 0x10
mov ecx, 0
cmove ecx, dword [esp + 0xc]
xor eax, eax
cmp ecx, esi
seta cl
jae 0x10025c76
mov ecx, dword [esi]
xor eax, eax
dec eax
test ecx, ecx
mov ebx, dword [esp + 0x14]
jne 0x10025bba
jmp 0x10025d27
and eax, 0xfffffffe
mov dword [ecx], eax
mov edi, ecx
and edi, 0xfffffffe
mov eax, dword [esi]
mov ebx, dword [esi + 4]
and ebx, 1
or ebx, edi
mov dword [esi + 4], ebx
test eax, eax
je 0x10026af5
and byte [eax + 4], 0xfe
mov edi, dword [esp + 8]
cmp dword [edi], ecx
jne 0x10025c80
mov dword [edi], esi
jmp 0x10025be1
mov al, cl
mov ecx, dword [esi + 4]
and ecx, 0xfffffffe
jmp 0x10025c33
and esi, 0xfffffffe
mov eax, dword [edi + 4]
and eax, 1
lea ecx, [eax + esi]
mov dword [edi + 4], ecx
test esi, esi
je 0x10026b04
mov ecx, dword [esi]
and ecx, 0xfffffffe
or ecx, eax
mov dword [edi + 4], ecx
mov dword [esi], edi
mov eax, dword [edi + 4]
and eax, 1
mov ecx, dword [esi + 4]
and ecx, 0xfffffffe
or ecx, eax
mov dword [esi + 4], ecx
or byte [edi + 4], 1
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x100269c5
cmp dword [ecx], edi
je 0x100263f3
jmp 0x10026466
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov ebx, eax
mov ecx, 0xfffff000
and ebx, ecx
mov edi, dword [esi + 8]
and edi, ecx
xor ecx, ecx
cmp ebx, edi
seta cl
mov edx, 0xffffffff
cmovb ecx, edx
test ecx, ecx
jne 0x100262d6
jmp 0x100264dc
mov ecx, dword [esi + 4]
and ecx, 0xfffffffe
mov dword [esp + 8], esi
test ecx, ecx
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 4]
jne 0x10025bc6
mov ecx, dword [esp + 0x20]
mov dword [esp + 8], ecx
mov ecx, dword [esp + 0xc]
mov dword [ecx], 0
mov dword [ecx + 4], 1
cmp eax, 1
je 0x10025ec8
mov dword [esi], ecx
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x78]
test eax, eax
je 0x10026bda
and byte [eax + 4], 0xfe
mov dword [ecx], eax
jmp 0x10025a4a
mov ecx, dword [esp + 0x24]
test byte [esp + 0x38], 1
je 0x100262c5
test edi, edi
je 0x100262c5
cmp dword [ecx], edi
je 0x100250ad
mov dword [edi], ecx
xor eax, eax
mov ecx, dword [esp + 0x1c]
cmp dword [ecx + ebx + 0x6c], 1
mov edx, 0
je 0x10025dac
mov ecx, dword [esp + 0x1c]
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 0x10025d9c
mov ecx, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov ebx, dword [esi + ecx + 0x68]
and ebx, 0x1f
mov ecx, ebx
neg cl
xor esi, esi
dec esi
shr esi, cl
cmp ebx, 1
mov ebx, dword [esp + 0x14]
sbb eax, eax
or eax, esi
mov dword [edi + edx*4 + 0xc], eax
mov dword [edi + 4], 0
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx + ebx + 0x68]
mov dword [edi + 8], eax
inc dword [ecx + ebx + 0x74]
mov eax, dword [esp + 0x24]
mov dword [eax], edi
jmp 0x10024d64
test ecx, ecx
je 0x10026080
mov ecx, dword [eax + 4]
mov dword [esp + 0x20], 0
mov edx, ecx
and edx, 0xfffffffe
je 0x10025e1e
mov esi, dword [edx]
test esi, esi
je 0x10025e1e
test byte [esi + 4], 1
jne 0x10025844
mov edx, dword [eax]
test edx, edx
je 0x100269e6
test byte [edx + 4], 1
jne 0x10026533
or ecx, 1
mov dword [eax + 4], ecx
mov ecx, dword [edx]
test ecx, ecx
je 0x10025e4a
mov ebx, dword [ecx + 4]
test bl, 1
jne 0x10026644
or byte [edx + 4], 1
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10026c70
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [eax + 4], ecx
mov dword [edx], eax
jmp 0x10025eb9
mov esi, dword [edx]
test esi, esi
je 0x10025e7d
test byte [esi + 4], 1
jne 0x10025844
or ecx, 1
mov dword [edx + 4], ecx
mov esi, dword [eax + 4]
mov ecx, esi
and ecx, 0xfffffffe
je 0x1002697c
mov edx, dword [ecx]
test edx, edx
je 0x10025ea3
mov ebx, dword [edx + 4]
test bl, 1
jne 0x100266cd
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
mov edi, dword [esp + 0x10]
jmp 0x10025844
mov eax, dword [esi + 4]
and eax, 1
mov ecx, eax
or ecx, dword [esp + 0xc]
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx]
and ecx, 0xfffffffe
or ecx, eax
mov dword [esi + 4], ecx
mov eax, dword [esp + 0xc]
mov dword [eax], esi
mov eax, dword [esi + 4]
and eax, 1
mov ecx, dword [esp + 0xc]
mov ecx, dword [ecx + 4]
and ecx, 0xfffffffe
or ecx, eax
mov eax, dword [esp + 0xc]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0xc]
or byte [esi + 4], 1
mov eax, dword [esp + 8]
cmp dword [eax], esi
jne 0x10026106
mov dword [eax], ecx
jmp 0x10025d43
and ecx, 0xfffffffe
mov edx, eax
mov eax, dword [eax + 4]
and eax, 1
or eax, ecx
mov dword [edx + 4], eax
jmp 0x10025a22
or edx, 1
mov dword [esi + 4], edx
mov ecx, dword [esi]
test ecx, ecx
je 0x10025f4c
mov edx, dword [ecx + 4]
test dl, 1
jne 0x10026334
mov ecx, dword [eax + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10026b55
mov esi, dword [edx]
and esi, 0xfffffffe
and ecx, 1
or ecx, esi
mov dword [eax + 4], ecx
mov dword [edx], eax
jmp 0x10025966
xor esi, esi
test byte [esp + 8], 0x10
cmove esi, dword [esp + 0x28]
xor ecx, ecx
cmp esi, eax
seta dl
jb 0x10025826
mov cl, dl
jmp 0x1002581d
mov edx, dword [esi + 0x3c]
test edx, edx
jne 0x10026305
lea eax, [esp + 0x78]
mov ecx, 0x100000
mov edx, 0x100000
push eax
push 0
call fcn.10050150
add esp, 8
test eax, eax
je 0x10026c67
mov edi, eax
movzx eax, byte [esp + 0x78]
mov ecx, dword [esp + 0x1c]
mov edx, edi
push eax
call fcn.10050070
add esp, 4
add edi, 0x2000
jmp 0x10025499
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 + 0x18]
jmp 0x1002556c
mov esi, eax
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 0x10025844
mov eax, dword [esp + 4]
and eax, 0xfffffffe
mov dword [edi + 4], eax
mov ecx, dword [edx]
test ecx, ecx
je 0x10026c43
mov eax, dword [ecx + 4]
and eax, 0xfffffffe
mov dword [edx], eax
mov eax, edx
and eax, 0xfffffffe
mov edi, dword [ecx + 4]
and edi, 1
or edi, eax
mov dword [ecx + 4], edi
mov edi, dword [edx + 4]
mov eax, edi
and eax, 0xfffffffe
je 0x10026c58
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
mov eax, dword [eax]
mov dword [esp + 4], eax
and dword [esp + 4], 0xfffffffe
and edi, 1
add edi, dword [esp + 4]
mov dword [edx + 4], edi
mov eax, dword [esp + 0xc]
mov dword [eax], edx
mov edx, dword [ecx + 4]
and edx, 1
or edx, eax
mov dword [ecx + 4], edx
jmp 0x1002527c
mov ecx, dword [eax + 4]
cmp ecx, 1
ja 0x10026772
mov ecx, dword [eax]
xor edx, edx
test ecx, ecx
mov ebx, dword [esp + 0x14]
je 0x10025a26
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 0x10025a26
mov ecx, dword [eax + 4]
and ecx, 0xfffffffe
mov dword [edx], ecx
mov ecx, edx
and ecx, 0xfffffffe
mov edi, dword [eax + 4]
and edi, 1
or edi, ecx
mov dword [eax + 4], edi
mov edi, dword [edx + 4]
and edi, 1
or edi, ecx
mov ecx, dword [esp + 0x24]
mov dword [eax + 4], edi
mov ebx, dword [esp + 0x14]
or byte [edx + 4], 1
and dword [eax + 4], 1
jmp 0x10025210
mov ecx, dword [eax + 4]
mov dword [esp + 0x28], ecx
and ecx, 0xfffffffe
cmp esi, ecx
mov ecx, dword [esp + 0x2c]
jne 0x10025d47
mov esi, dword [esp + 0x28]
and esi, 1
or esi, dword [esp + 0xc]
mov dword [eax + 4], esi
jmp 0x10025d47
lea ecx, [esp + 0x78]
mov dword [esp + 0x10], ecx
jmp 0x100252c8
test edx, edx
je 0x1002650d
mov eax, dword [edx + 4]
test eax, eax
je 0x1002650d
mov dword [esp + 0xc], 0
test byte [eax + 8], 1
je 0x100264fc
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edi, dword [esp + 0x10]
xor esi, esi
dec esi
mov dword [esp + 4], edx
mov edx, eax
xor eax, eax
cmp edx, ecx
setb al
cmova eax, esi
cmp eax, 0xffffffff
jne 0x100261c1
test edx, edx
je 0x1002677f
mov eax, dword [edx + 4]
test eax, eax
je 0x1002677f
test byte [eax + 8], 1
jne 0x10026170
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x1002660e
test byte [ecx + 8], 1
je 0x1002660e
mov dword [esp + 4], edx
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
jmp 0x10026174
test eax, eax
jne 0x100261e9
mov dword [esp + 8], 0
test edx, edx
je 0x1002627f
mov ecx, esi
mov eax, dword [edx + 8]
mov esi, dword [esp + 4]
mov dword [esp + 0xc], esi
cmp eax, 1
jbe 0x10026244
jmp 0x100261f6
mov ecx, esi
test edx, edx
je 0x10026c2d
mov eax, dword [edx + 8]
and eax, 0xfffffffe
mov esi, ecx
je 0x10026212
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10026212
test byte [ecx + 8], 1
mov ecx, dword [esp + 0x18]
jne 0x10026170
lea ecx, [esp + 0x70]
mov edi, edx
call fcn.1003cd70
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 4]
cmp dword [ecx + 4], edi
jne 0x10026699
jmp 0x10026737
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
jmp 0x10026170
mov eax, dword [edx + 4]
test eax, eax
je 0x1002627f
mov ecx, dword [eax + 8]
and ecx, 0xfffffffe
mov dword [edx + 4], ecx
mov ecx, edx
and ecx, 0xfffffffe
mov esi, edx
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
mov edx, esi
or byte [esi + 8], 1
and dword [eax + 8], 1
mov dword [esp + 8], eax
mov esi, dword [esp + 4]
cmp dword [esi + 4], edx
jne 0x100263dc
mov eax, dword [esp + 8]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x7c]
mov ecx, dword [esp + 0x1c]
mov dword [ecx + 0x38], eax
mov edx, dword [esp + 0x18]
test edx, edx
mov ecx, dword [esp + 0x24]
je 0x10026c1e
xor eax, eax
mov dword [edx + 4], eax
mov dword [edx + 8], eax
test edi, edi
setne al
test byte [esp + 0x38], al
jne 0x10025d75
mov dword [ecx], 0
mov al, 1
mov ecx, dword [esp + 0x1c]
jmp 0x10024dc3
xor eax, eax
inc eax
cmp ecx, 0xffffffff
jne 0x10025d01
jmp 0x10026604
mov ecx, dword [esp + 0xc]
mov dword [ecx], 0
mov dword [ecx + 4], 1
lea esi, [esp + 0x78]
mov edx, dword [esp + 4]
jmp 0x10025d41
mov eax, dword [esp + 0x1c]
mov dword [eax + 0x3c], 0
lea edi, [edx + 0x2000]
add edx, 0x28
mov ecx, dword [esp + 0x2c]
call fcn.100505c0
jmp 0x10025499
mov dword [esp + 0x20], 0
jmp 0x100255f7
and edx, 0xfffffffe
mov dword [ecx + 4], edx
mov edx, dword [eax]
test edx, edx
je 0x10026b64
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 0x10026b79
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 0x10025966
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 0x10026ae6
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 0x100263d0
mov ebx, dword [ecx + 4]
test bl, 1
jne 0x10026743
mov dword [eax + 4], ecx
mov edi, dword [esp + 0x10]
jmp 0x100259cc
mov ecx, dword [esp + 8]
and ecx, 0xfffffffe
mov eax, dword [esi + 8]
and eax, 1
or eax, ecx
mov dword [esi + 8], eax
jmp 0x10026293
mov dword [ecx], esi
jmp 0x10025cd1
cmp dword [esp + 0x20], 0
je 0x10026c7f
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
cmp dword [edx], ecx
jne 0x100266b4
mov ecx, dword [esp + 0x20]
mov dword [ecx], eax
mov esi, dword [esp + 0x28]
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 + 8]
cmp dword [ecx], eax
jne 0x10026c8e
mov eax, dword [esp + 8]
mov dword [eax], 0
mov edx, dword [esp + 0x78]
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
jmp 0x10025a26
mov eax, dword [ecx + 4]
and eax, 1
or eax, esi
mov dword [ecx + 4], eax
jmp 0x10025cd1
and ecx, 1
mov ebx, dword [edx + 4]
and ebx, 0xfffffffe
or ebx, ecx
mov dword [edx + 4], ebx
and byte [edi + 4], 0xfe
mov ecx, dword [esi + 4]
mov edx, ecx
and edx, 0xfffffffe
je 0x10026b37
mov edi, dword [edx]
and edi, 0xfffffffe
and ecx, 1
or ecx, edi
mov dword [esi + 4], ecx
mov dword [edx], esi
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 0x10025948
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
test al, 0x10
mov ecx, 0
cmove ecx, dword [esp + 0xc]
xor eax, eax
cmp ecx, esi
seta cl
jb 0x10026604
mov al, cl
jmp 0x10025d01
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x1002650d
test byte [ecx + 8], 1
jne 0x10026161
lea esi, [esp + 0x60]
mov ecx, esi
call fcn.1003cc60
mov eax, dword [esi]
test eax, eax
je 0x10026cfc
and byte [eax + 8], 0xfe
mov dword [esp + 0xc], 0
jmp 0x1002672b
lea esi, [esp + 0x60]
mov ecx, esi
mov edx, eax
call fcn.1003c3d0
mov edx, dword [esi]
jmp 0x10025eb9
mov eax, dword [esi + 4]
test eax, eax
je 0x10026c9b
test byte [eax + 8], 1
jne 0x1002671c
or ecx, 1
mov dword [esi + 8], ecx
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10026575
mov edx, dword [ecx + 8]
test dl, 1
jne 0x10026804
or byte [eax + 8], 1
mov ecx, dword [esi + 8]
mov eax, ecx
and eax, 0xfffffffe
je 0x10026d0b
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 0x1002672b
mov edi, ecx
mov eax, edx
xor edx, edx
test eax, eax
je 0x100265ea
mov esi, eax
mov ecx, dword [eax + 8]
cmp ecx, 1
ja 0x1002688a
mov eax, dword [esi + 4]
test eax, eax
je 0x100265ea
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, edi
mov dword [edi + 0x38], edx
mov ebx, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
jmp 0x100262ae
mov ecx, dword [esi]
xor eax, eax
dec eax
jmp 0x10025d07
lea ecx, [esp + 0x74]
mov edi, edx
call fcn.1003cc60
mov eax, dword [esp + 0x74]
mov ecx, dword [esp + 4]
cmp dword [ecx + 4], edi
jne 0x10026cb0
mov ecx, dword [esp + 4]
mov dword [ecx + 4], eax
mov edx, eax
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
jmp 0x10026176
and ebx, 0xfffffffe
mov dword [ecx + 4], ebx
mov edx, dword [eax]
test edx, edx
je 0x10026cc9
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 0x10026cde
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 0x10025eb9
mov ecx, eax
and ecx, 0xfffffffe
mov edi, dword [esp + 4]
mov edx, dword [edi + 8]
and edx, 1
or edx, ecx
mov dword [edi + 8], edx
mov edx, edi
jmp 0x10026233
mov ecx, eax
and ecx, 0xfffffffe
mov esi, dword [esp + 0x20]
mov edx, dword [esi + 4]
and edx, 1
or edx, ecx
mov dword [esi + 4], edx
jmp 0x1002641b
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 0x10026ced
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 0x10026714
mov ebx, dword [ecx + 4]
test bl, 1
jne 0x1002685f
mov dword [eax + 4], ecx
jmp 0x10025eb5
lea ebx, [esp + 0x60]
mov ecx, ebx
mov edx, esi
call fcn.1003cd70
mov eax, dword [ebx]
lea edx, [esp + 0x78]
mov dword [edx + 4], eax
jmp 0x10026161
mov edx, dword [esp + 4]
mov dword [edx + 4], eax
jmp 0x10026233
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 0x10026ad7
mov esi, dword [ecx]
or esi, 1
mov dword [eax + 4], esi
mov dword [ecx], eax
mov dword [edx], ecx
mov edi, dword [esp + 0x10]
jmp 0x100259cc
lea edx, [esp + 0x78]
mov dword [esp + 0x20], edx
jmp 0x10025e07
cmp dword [esp + 0xc], 0
je 0x10026d1a
mov edi, edx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0xc]
cmp dword [ecx + 4], eax
jne 0x1002690f
mov eax, dword [esp + 0xc]
mov dword [eax + 4], edi
cmp dword [esp + 0x18], 0
je 0x10026d35
test edi, edi
je 0x10026d4d
mov edx, dword [esp + 0x18]
mov eax, dword [edx + 4]
mov esi, edi
mov dword [edi + 4], eax
mov eax, dword [edx + 8]
and eax, 0xfffffffe
mov ecx, dword [edi + 8]
and ecx, 1
or ecx, eax
mov dword [edi + 8], ecx
mov ecx, dword [edx + 8]
and ecx, 1
or ecx, eax
mov dword [edi + 8], ecx
mov eax, dword [esp + 4]
cmp dword [eax + 4], edi
jne 0x10026d5c
mov eax, dword [esp + 4]
mov dword [eax + 4], 0
mov ebx, dword [esp + 0x14]
mov edi, dword [esp + 0x10]
jmp 0x10026293
and edx, 0xfffffffe
mov dword [ecx + 8], edx
mov eax, dword [esi + 4]
test eax, eax
je 0x10026d69
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 0x10026d7f
mov ebx, esi
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 0x1002672b
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 0x10026d8e
mov esi, dword [ecx]
or esi, 1
mov dword [eax + 4], esi
mov dword [ecx], eax
mov dword [edx], ecx
jmp 0x10025eb5
lea eax, [esp + 0x78]
mov dword [esp + 0xc], eax
jmp 0x10025b01
mov ebx, edx
mov byte [edx + 0x40], 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.100123e0
xor edx, edx
cmp byte [esi + 8], 0
mov ecx, 0
mov esi, 0
je 0x100268db
mov ecx, dword [esp + 0x64]
mov esi, dword [esp + 0x60]
cmp byte [esp + 0x80], 0
mov edi, 0
je 0x100268f2
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 edx, ebx
mov dword [ebx + 0x44], eax
mov byte [ebx + 0x40], 1
mov ebx, dword [esp + 0x14]
jmp 0x10024d2e
mov eax, edi
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 0x100267a4
or edi, 1
mov dword [edx + 4], edi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
int3
or esi, 1
mov dword [eax + 4], esi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
or edi, 1
mov dword [edx + 4], edi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
int3
or esi, 1
mov dword [eax + 4], esi
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
and ecx, 1
mov dword [esi + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
call dword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x5af
je 0x10026d9d
cmp eax, 8
je 0x10026d9d
xor eax, eax
mov edi, dword [esp + 0x20]
jmp 0x100255c0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
int3
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
or ecx, 1
mov dword [eax + 4], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
xor edi, edi
jmp 0x10024dea
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
and ebx, 1
mov dword [eax + 4], ebx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
mov dword [edx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [edx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov eax, ecx
and eax, 0xfffffffe
mov edx, dword [esp + 4]
mov edx, dword [edx + 4]
and edx, 1
or edx, eax
mov eax, dword [esp + 4]
mov dword [eax + 4], edx
jmp 0x10024f07
dec dword [edi + 8]
mov al, 1
xor esi, esi
mov ecx, dword [esp + 0x1c]
jmp 0x10024dc3
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov eax, ecx
jmp 0x10025478
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
and dword [edi + 4], 1
jmp 0x10025090
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
or eax, 1
mov dword [edx + 4], eax
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
mov esi, eax
mov eax, edx
and eax, 0xfffffffe
mov ecx, dword [esi + 4]
and ecx, 1
or ecx, eax
mov dword [esi + 4], ecx
jmp 0x10025848
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov esi, ecx
jmp 0x10026212
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [edx], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov ecx, dword [esp + 0x24]
jmp 0x100262c5
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov eax, dword [esp + 8]
and dword [eax + 4], 1
jmp 0x10026455
or ecx, 1
mov dword [esi + 8], ecx
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
mov ecx, eax
and ecx, 0xfffffffe
mov edi, dword [esp + 4]
mov edx, dword [edi + 8]
and edx, 1
or edx, ecx
mov dword [edi + 8], edx
jmp 0x10026631
mov dword [eax], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026971
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
int3
test edi, edi
je 0x10026d4d
mov eax, edi
mov dword [edi + 4], 0
and dword [edi + 8], 1
xor ecx, ecx
jmp 0x100267dc
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov eax, dword [esp + 4]
and dword [eax + 8], 1
jmp 0x100267f7
mov dword [esi + 4], 0
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x100269cf
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
mov dword [sym.mozglue.dll_gMozCrashReason], str.MOZ_RELEASE_ASSERT_mNode_
jmp 0x10026938
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 + 0x44], eax
push 0x32
call dword [sym.imp.kernel32.dll_Sleep]
push 4
push 0x1000
push dword [esp + 0x48]
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 0x10026dfd
cmp eax, 0x5af
je 0x10026dec
cmp eax, 8
jne 0x100269ba
xor eax, eax
dec dword [esp + 0x44]
mov edi, dword [esp + 0x20]
jne 0x10026db3
jmp 0x100255c0
cmp eax, 0x5af
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x34]
mov ecx, dword [esp + 0x48]
je 0x10026e19
cmp eax, 8
jne 0x1002559f
push ecx
call dword [sym.imp.kernel32.dll_SetLastError]
jmp 0x1002559f