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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0xb0
mov edi, dword [ebp + 8]
mov eax, dword [0x1038100c]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov eax, edx
mov dword [ebp - 0xa4], ecx
sub eax, ecx
cmp eax, 0x1080
setg cl
test edi, edi
jle 0x10092660
cmp eax, 0x1081
jl 0x10092660
mov dword [ebp - 0xb0], edx
mov eax, edx
mov esi, dword [ebp - 0xa4]
sub eax, esi
sar eax, 2
imul eax, eax, 0x3e0f83e1
sar eax, 1
mov ecx, eax
shl ecx, 7
lea eax, [ecx + eax*4]
mov ecx, esi
mov dword [ebp - 0xa8], eax
add esi, eax
mov dword [ebp - 0xa0], edx
lea eax, [edx - 0x84]
mov dword [ebp - 0x9c], eax
sub eax, ecx
cmp eax, 0x14a1
mov dword [ebp - 0xb8], edi
jl 0x10091418
mov edx, 0x3e0f83e1
mul edx
mov edi, edx
shr edi, 5
inc edi
shr edi, 3
lea eax, [edi + edi]
mov dword [ebp - 0xac], eax
mov eax, edi
shl eax, 8
lea eax, [eax + edi*8]
add eax, ecx
mov edx, edi
shl edx, 7
lea ebx, [edx + edi*4]
lea edx, [ecx + ebx]
mov dword [ebp - 0x98], edx
push eax
call 0x10093110
add esp, 4
add ebx, esi
mov dword [ebp - 0xb4], ebx
mov ebx, edi
neg ebx
lea eax, [edi*4]
shl ebx, 7
sub ebx, eax
lea ecx, [esi + ebx]
mov edx, esi
push dword [ebp - 0xb4]
call 0x10093110
add esp, 4
mov eax, dword [ebp - 0x9c]
add ebx, eax
mov ecx, dword [ebp - 0xac]
neg ecx
shl edi, 3
shl ecx, 7
sub ecx, edi
add ecx, eax
mov edx, ebx
push eax
call 0x10093110
add esp, 4
mov ecx, dword [ebp - 0x98]
mov edx, esi
push ebx
jmp 0x10091420
mov edx, esi
push dword [ebp - 0x9c]
call 0x10093110
add esp, 4
mov ebx, esi
cmp esi, dword [ebp - 0xa4]
jbe 0x10091452
lea esi, [ebx - 0x84]
mov ecx, esi
mov edx, ebx
call fcn.100907e0
test al, al
jne 0x10091452
mov ecx, ebx
mov edx, esi
call fcn.100907e0
test al, al
je 0x10091428
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
add ecx, eax
add ecx, 0x84
mov edi, ecx
cmp ecx, dword [ebp - 0xa0]
jae 0x10091490
mov ecx, edi
mov edx, ebx
call fcn.100907e0
test al, al
jne 0x10091490
mov ecx, ebx
mov edx, edi
call fcn.100907e0
lea ecx, [edi + 0x84]
test al, al
je 0x10091466
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xac], ebx
mov esi, dword [ebp - 0xa0]
cmp edi, esi
jae 0x10091740
mov dword [ebp - 0x9c], ebx
mov ecx, ebx
mov edx, edi
call fcn.100907e0
test al, al
jne 0x100916be
mov ecx, edi
mov edx, ebx
call fcn.100907e0
test al, al
jne 0x10091740
mov ecx, esi
mov esi, dword [ebp - 0xa8]
cmp edi, esi
je 0x100916b0
mov eax, dword [esi]
mov dword [ebp - 0x94], eax
mov al, byte [esi + 4]
mov byte [ebp - 0x90], al
xor edx, edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], edx
movsd xmm0, qword [esi + 0x18]
lea ecx, [ebp - 0x8c]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [esi + 8]
movups xmmword [ecx], xmm0
mov dword [esi + 0x18], edx
mov eax, 0xf
mov dword [esi + 0x1c], eax
mov byte [esi + 8], dl
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
movsd xmm0, qword [esi + 0x30]
movsd qword [ecx + 0x28], xmm0
movups xmm0, xmmword [esi + 0x20]
movups xmmword [ecx + 0x18], xmm0
mov dword [esi + 0x30], edx
mov dword [esi + 0x34], eax
mov ebx, 0xf
mov byte [esi + 0x20], dl
mov eax, dword [esi + 0x38]
mov dword [ebp - 0x5c], eax
mov al, byte [esi + 0x3c]
mov byte [ebp - 0x58], al
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
movsd xmm0, qword [esi + 0x50]
movsd qword [ecx + 0x48], xmm0
movups xmm0, xmmword [esi + 0x40]
movups xmmword [ecx + 0x38], xmm0
mov dword [esi + 0x50], edx
mov dword [esi + 0x54], ebx
mov byte [esi + 0x40], dl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
movsd xmm0, qword [esi + 0x68]
movsd qword [ecx + 0x60], xmm0
movups xmm0, xmmword [esi + 0x58]
movups xmmword [ecx + 0x50], xmm0
mov dword [esi + 0x68], edx
mov dword [esi + 0x6c], ebx
mov byte [esi + 0x58], dl
mov eax, dword [esi + 0x70]
mov dword [ebp - 0x24], eax
mov eax, dword [esi + 0x74]
mov dword [ebp - 0x20], eax
mov al, byte [esi + 0x78]
mov byte [ebp - 0x1c], al
mov eax, dword [esi + 0x7c]
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 0x80]
mov dword [ebp - 0x14], eax
mov ecx, esi
mov edx, edi
call fcn.1008c3b0
mov dword [ebp - 0x98], edi
mov ecx, edi
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x100915f3
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x100916ce
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
mov esi, dword [ebp - 0xa0]
mov ebx, dword [ebp - 0x9c]
jb 0x10091633
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x100916e6
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x10091667
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x10091704
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x1009169e
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x10091722
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
add dword [ebp - 0xa8], 0x84
mov edi, dword [ebp - 0x98]
jmp 0x100916be
lea eax, [edi + 0x84]
mov dword [ebp - 0xa8], eax
mov esi, ecx
add edi, 0x84
cmp edi, esi
jb 0x100914b0
jmp 0x10091740
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x100915e9
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
jmp 0x10091629
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
jmp 0x1009165d
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
jmp 0x10091694
mov dword [ebp - 0x98], edi
mov ecx, dword [ebp - 0xa4]
mov esi, dword [ebp - 0xac]
cmp esi, ecx
jbe 0x100919eb
mov eax, esi
mov edi, eax
lea esi, [eax - 0x84]
mov ecx, esi
mov edx, ebx
call fcn.100907e0
test al, al
je 0x10091778
mov edx, ebx
jmp 0x1009195c
mov ecx, ebx
mov dword [ebp - 0x9c], esi
mov edx, esi
call fcn.100907e0
test al, al
jne 0x100919ef
lea edx, [ebx - 0x84]
cmp edi, ebx
je 0x10091956
mov eax, dword [ebx - 0x84]
mov dword [ebp - 0x94], eax
mov al, byte [ebx - 0x80]
mov byte [ebp - 0x90], al
mov esi, edx
xor edx, edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], edx
movsd xmm0, qword [ebx - 0x6c]
lea ecx, [ebp - 0x8c]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [ebx - 0x7c]
movups xmmword [ecx], xmm0
mov dword [ebx - 0x6c], edx
mov edi, 0xf
mov dword [ebx - 0x68], edi
mov byte [ebx - 0x7c], dl
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
movsd xmm0, qword [ebx - 0x54]
movsd qword [ecx + 0x28], xmm0
movups xmm0, xmmword [ebx - 0x64]
movups xmmword [ecx + 0x18], xmm0
mov dword [ebx - 0x54], edx
mov dword [ebx - 0x50], edi
mov byte [ebx - 0x64], dl
mov eax, dword [ebx - 0x4c]
mov dword [ebp - 0x5c], eax
mov al, byte [ebx - 0x48]
mov byte [ebp - 0x58], al
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
movsd xmm0, qword [ebx - 0x34]
movsd qword [ecx + 0x48], xmm0
movups xmm0, xmmword [ebx - 0x44]
movups xmmword [ecx + 0x38], xmm0
mov dword [ebx - 0x34], edx
mov dword [ebx - 0x30], edi
mov byte [ebx - 0x44], dl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
movsd xmm0, qword [ebx - 0x1c]
movsd qword [ecx + 0x60], xmm0
movups xmm0, xmmword [ebx - 0x2c]
movups xmmword [ecx + 0x50], xmm0
mov dword [ebx - 0x1c], edx
mov dword [ebx - 0x18], edi
mov byte [ebx - 0x2c], dl
mov eax, dword [ebx - 0x14]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx - 0x10]
mov dword [ebp - 0x20], eax
mov al, byte [ebx - 0xc]
mov byte [ebp - 0x1c], al
mov eax, dword [ebx - 8]
mov dword [ebp - 0x18], eax
mov eax, dword [ebx - 4]
mov dword [ebp - 0x14], eax
mov ebx, esi
mov ecx, esi
mov esi, dword [ebp - 0x9c]
mov edx, esi
call fcn.1008c3b0
mov ecx, esi
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x100918ae
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x10091973
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x100918e2
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x10091991
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
mov edx, ebx
jb 0x1009191a
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x100919af
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov edx, ebx
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x1009195c
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x100919cd
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
jmp 0x10091771
mov esi, dword [ebp - 0x9c]
mov eax, esi
mov ebx, edx
mov ecx, dword [ebp - 0xa4]
cmp esi, ecx
ja 0x1009175c
jmp 0x100919f9
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x9c]
jmp 0x100918a4
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x9c]
jmp 0x100918d8
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x9c]
jmp 0x1009190e
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x9c]
jmp 0x10091947
mov edx, ebx
jmp 0x100919f9
mov edx, ebx
mov esi, edi
mov ecx, dword [ebp - 0xa4]
mov eax, dword [ebp - 0x98]
cmp eax, dword [ebp - 0xa0]
jne 0x10091a0f
cmp esi, ecx
je 0x100925b6
cmp esi, ecx
mov dword [ebp - 0x9c], edx
je 0x10091c0b
lea edi, [esi - 0x84]
mov ebx, dword [ebp - 0x98]
cmp ebx, dword [ebp - 0xa0]
mov dword [ebp - 0xac], edi
je 0x10091fc5
mov eax, dword [ebx]
mov dword [ebp - 0x94], eax
mov al, byte [ebx + 4]
mov byte [ebp - 0x90], al
xor edx, edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], edx
movsd xmm0, qword [ebx + 0x18]
lea ecx, [ebp - 0x8c]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [ebx + 8]
movups xmmword [ecx], xmm0
mov dword [ebx + 0x18], edx
mov esi, 0xf
mov dword [ebx + 0x1c], esi
mov byte [ebx + 8], dl
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
movsd xmm0, qword [ebx + 0x30]
movsd qword [ecx + 0x28], xmm0
movups xmm0, xmmword [ebx + 0x20]
movups xmmword [ecx + 0x18], xmm0
mov dword [ebx + 0x30], edx
mov dword [ebx + 0x34], esi
mov byte [ebx + 0x20], dl
mov eax, dword [ebx + 0x38]
mov dword [ebp - 0x5c], eax
mov al, byte [ebx + 0x3c]
mov byte [ebp - 0x58], al
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
movsd xmm0, qword [ebx + 0x50]
movsd qword [ecx + 0x48], xmm0
movups xmm0, xmmword [ebx + 0x40]
movups xmmword [ecx + 0x38], xmm0
mov dword [ebx + 0x50], edx
mov dword [ebx + 0x54], esi
mov byte [ebx + 0x40], dl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
movsd xmm0, qword [ebx + 0x68]
movsd qword [ecx + 0x60], xmm0
movups xmm0, xmmword [ebx + 0x58]
movups xmmword [ecx + 0x50], xmm0
mov dword [ebx + 0x68], edx
mov dword [ebx + 0x6c], esi
mov byte [ebx + 0x58], dl
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x74]
mov dword [ebp - 0x20], eax
mov al, byte [ebx + 0x78]
mov byte [ebp - 0x1c], al
mov eax, dword [ebx + 0x7c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x80]
mov dword [ebp - 0x14], eax
mov ecx, ebx
mov edx, edi
call fcn.1008c3b0
mov ecx, edi
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
mov esi, dword [ebp - 0xa0]
mov edi, ebx
jb 0x10091b49
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x1009234c
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
mov ebx, dword [ebp - 0x9c]
jb 0x10091b89
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x10092370
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x10091bc3
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x10092394
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x10091c00
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x100923b8
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ebx, dword [ebp - 0x9c]
add edi, 0x84
jmp 0x100914a2
mov eax, dword [ebp - 0x98]
cmp dword [ebp - 0xa8], eax
je 0x10091ddc
mov eax, dword [edx]
mov dword [ebp - 0x94], eax
mov al, byte [edx + 4]
mov byte [ebp - 0x90], al
mov ebx, edx
xor edx, edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], edx
movsd xmm0, qword [ebx + 0x18]
lea ecx, [ebp - 0x8c]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [ebx + 8]
movups xmmword [ecx], xmm0
mov dword [ebx + 0x18], edx
mov esi, 0xf
mov dword [ebx + 0x1c], esi
mov byte [ebx + 8], dl
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
movsd xmm0, qword [ebx + 0x30]
movsd qword [ecx + 0x28], xmm0
movups xmm0, xmmword [ebx + 0x20]
movups xmmword [ecx + 0x18], xmm0
mov dword [ebx + 0x30], edx
mov dword [ebx + 0x34], esi
mov byte [ebx + 0x20], dl
mov eax, dword [ebx + 0x38]
mov dword [ebp - 0x5c], eax
mov al, byte [ebx + 0x3c]
mov byte [ebp - 0x58], al
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
movsd xmm0, qword [ebx + 0x50]
movsd qword [ecx + 0x48], xmm0
movups xmm0, xmmword [ebx + 0x40]
movups xmmword [ecx + 0x38], xmm0
mov dword [ebx + 0x50], edx
mov dword [ebx + 0x54], esi
mov byte [ebx + 0x40], dl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
movsd xmm0, qword [ebx + 0x68]
movsd qword [ecx + 0x60], xmm0
movups xmm0, xmmword [ebx + 0x58]
movups xmmword [ecx + 0x50], xmm0
mov dword [ebx + 0x68], edx
mov dword [ebx + 0x6c], esi
mov byte [ebx + 0x58], dl
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x74]
mov dword [ebp - 0x20], eax
mov al, byte [ebx + 0x78]
mov byte [ebp - 0x1c], al
mov eax, dword [ebx + 0x7c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x80]
mov dword [ebp - 0x14], eax
mov ecx, ebx
mov esi, dword [ebp - 0xa8]
mov edx, esi
call fcn.1008c3b0
mov ecx, esi
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x10091d2b
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x10092466
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x10091d5f
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x1009247e
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
mov edx, dword [ebp - 0x9c]
jb 0x10091d9f
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x10092496
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x10091ddc
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x100924ae
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov edx, dword [ebp - 0x9c]
mov eax, dword [edx]
mov dword [ebp - 0x94], eax
mov al, byte [edx + 4]
mov byte [ebp - 0x90], al
mov ebx, edx
xor edx, edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], edx
movsd xmm0, qword [ebx + 0x18]
lea ecx, [ebp - 0x8c]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [ebx + 8]
movups xmmword [ecx], xmm0
mov dword [ebx + 0x18], edx
mov esi, 0xf
mov dword [ebx + 0x1c], esi
mov byte [ebx + 8], dl
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
movsd xmm0, qword [ebx + 0x30]
movsd qword [ecx + 0x28], xmm0
movups xmm0, xmmword [ebx + 0x20]
movups xmmword [ecx + 0x18], xmm0
mov dword [ebx + 0x30], edx
mov dword [ebx + 0x34], esi
mov byte [ebx + 0x20], dl
mov eax, dword [ebx + 0x38]
mov dword [ebp - 0x5c], eax
mov al, byte [ebx + 0x3c]
mov byte [ebp - 0x58], al
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
movsd xmm0, qword [ebx + 0x50]
movsd qword [ecx + 0x48], xmm0
movups xmm0, xmmword [ebx + 0x40]
movups xmmword [ecx + 0x38], xmm0
mov dword [ebx + 0x50], edx
mov dword [ebx + 0x54], esi
mov byte [ebx + 0x40], dl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
movsd xmm0, qword [ebx + 0x68]
movsd qword [ecx + 0x60], xmm0
movups xmm0, xmmword [ebx + 0x58]
movups xmmword [ecx + 0x50], xmm0
mov dword [ebx + 0x68], edx
mov dword [ebx + 0x6c], esi
mov byte [ebx + 0x58], dl
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x74]
mov dword [ebp - 0x20], eax
mov al, byte [ebx + 0x78]
mov byte [ebp - 0x1c], al
mov eax, dword [ebx + 0x7c]
mov dword [ebp - 0x18], eax
mov eax, dword [ebx + 0x80]
mov dword [ebp - 0x14], eax
mov ecx, ebx
mov edi, dword [ebp - 0x98]
mov edx, edi
call fcn.1008c3b0
mov ecx, edi
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x10091eea
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x100923dc
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
mov esi, dword [ebp - 0xa0]
jb 0x10091f24
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x100923fa
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
mov ebx, dword [ebp - 0x9c]
jb 0x10091f64
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x1009241e
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ebx, dword [ebp - 0x9c]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x10091fa1
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x10092442
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ebx, dword [ebp - 0x9c]
add dword [ebp - 0xa8], 0x84
mov eax, 0x84
add ebx, eax
add edi, eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0xac], eax
jmp 0x100914a2
lea ebx, [edx - 0x84]
cmp esi, edx
je 0x10092185
mov eax, dword [esi - 0x84]
mov dword [ebp - 0x94], eax
mov al, byte [esi - 0x80]
mov byte [ebp - 0x90], al
xor edx, edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], edx
movsd xmm0, qword [esi - 0x6c]
lea ecx, [ebp - 0x8c]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [esi - 0x7c]
movups xmmword [ecx], xmm0
mov dword [esi - 0x6c], edx
mov edi, 0xf
mov dword [esi - 0x68], edi
mov byte [esi - 0x7c], dl
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
movsd xmm0, qword [esi - 0x54]
movsd qword [ecx + 0x28], xmm0
movups xmm0, xmmword [esi - 0x64]
movups xmmword [ecx + 0x18], xmm0
mov dword [esi - 0x54], edx
mov dword [esi - 0x50], edi
mov byte [esi - 0x64], dl
mov eax, dword [esi - 0x4c]
mov dword [ebp - 0x5c], eax
mov al, byte [esi - 0x48]
mov byte [ebp - 0x58], al
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
movsd xmm0, qword [esi - 0x34]
movsd qword [ecx + 0x48], xmm0
movups xmm0, xmmword [esi - 0x44]
movups xmmword [ecx + 0x38], xmm0
mov dword [esi - 0x34], edx
mov dword [esi - 0x30], edi
mov byte [esi - 0x44], dl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
movsd xmm0, qword [esi - 0x1c]
movsd qword [ecx + 0x60], xmm0
movups xmm0, xmmword [esi - 0x2c]
movups xmmword [ecx + 0x50], xmm0
mov dword [esi - 0x1c], edx
mov dword [esi - 0x18], edi
mov edi, dword [sym.imp.mozglue.dll_free]
mov byte [esi - 0x2c], dl
mov eax, dword [esi - 0x14]
mov dword [ebp - 0x24], eax
mov eax, dword [esi - 0x10]
mov dword [ebp - 0x20], eax
mov al, byte [esi - 0xc]
mov byte [ebp - 0x1c], al
mov eax, dword [esi - 8]
mov dword [ebp - 0x18], eax
mov eax, dword [esi - 4]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0xac]
mov edx, ebx
call fcn.1008c3b0
mov ecx, ebx
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x100920e0
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x1009253e
push eax
call edi
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x10092110
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x1009255c
push eax
call edi
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
mov edx, dword [ebp - 0x9c]
jb 0x1009214c
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x1009257a
push eax
call edi
add esp, 4
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x10092185
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x10092598
push eax
call edi
add esp, 4
mov edx, dword [ebp - 0x9c]
mov eax, dword [edx - 0x84]
mov dword [ebp - 0x94], eax
mov al, byte [edx - 0x80]
mov byte [ebp - 0x90], al
mov edi, edx
xor edx, edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], edx
movsd xmm0, qword [edi - 0x6c]
lea ecx, [ebp - 0x8c]
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [edi - 0x7c]
movups xmmword [ecx], xmm0
mov dword [edi - 0x6c], edx
mov esi, 0xf
mov dword [edi - 0x68], esi
mov byte [edi - 0x7c], dl
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x60], edx
movsd xmm0, qword [edi - 0x54]
movsd qword [ecx + 0x28], xmm0
movups xmm0, xmmword [edi - 0x64]
movups xmmword [ecx + 0x18], xmm0
mov dword [edi - 0x54], edx
mov dword [edi - 0x50], esi
mov byte [edi - 0x64], dl
mov eax, dword [edi - 0x4c]
mov dword [ebp - 0x5c], eax
mov al, byte [edi - 0x48]
mov byte [ebp - 0x58], al
mov dword [ebp - 0x44], edx
mov dword [ebp - 0x40], edx
movsd xmm0, qword [edi - 0x34]
movsd qword [ecx + 0x48], xmm0
movups xmm0, xmmword [edi - 0x44]
movups xmmword [ecx + 0x38], xmm0
mov dword [edi - 0x34], edx
mov dword [edi - 0x30], esi
mov byte [edi - 0x44], dl
mov dword [ebp - 0x2c], edx
mov dword [ebp - 0x28], edx
movsd xmm0, qword [edi - 0x1c]
movsd qword [ecx + 0x60], xmm0
movups xmm0, xmmword [edi - 0x2c]
movups xmmword [ecx + 0x50], xmm0
mov dword [edi - 0x1c], edx
mov dword [edi - 0x18], esi
mov byte [edi - 0x2c], dl
mov eax, dword [edi - 0x14]
mov dword [ebp - 0x24], eax
mov eax, dword [edi - 0x10]
mov dword [ebp - 0x20], eax
mov al, byte [edi - 0xc]
mov byte [ebp - 0x1c], al
mov eax, dword [edi - 8]
mov dword [ebp - 0x18], eax
mov eax, dword [edi - 4]
mov dword [ebp - 0x14], eax
mov esi, dword [ebp - 0xa8]
add esi, 0xffffff7c
mov ecx, ebx
mov edx, esi
call fcn.1008c3b0
mov ecx, esi
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
mov edi, dword [ebp - 0xa0]
jb 0x100922a0
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x100924c6
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x100922d4
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x100924e4
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x10092308
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x10092502
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x1009233f
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x10092520
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0xa8], esi
mov esi, edi
jmp 0x100914a2
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x98]
jmp 0x10091b3f
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x98]
jmp 0x10091b79
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x98]
jmp 0x10091bb3
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x98]
jmp 0x10091bf0
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [ebp - 0x98]
jmp 0x10091ee0
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x98]
jmp 0x10091f1a
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x98]
jmp 0x10091f54
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0xa0]
mov edi, dword [ebp - 0x98]
jmp 0x10091f91
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x10091d21
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x10091d55
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x10091d8f
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x10091dcc
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [ebp - 0xa0]
jmp 0x10092296
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [ebp - 0xa0]
jmp 0x100922ca
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [ebp - 0xa0]
jmp 0x100922fe
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [ebp - 0xa0]
jmp 0x10092335
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [sym.imp.mozglue.dll_free]
jmp 0x100920da
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [sym.imp.mozglue.dll_free]
jmp 0x1009210a
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [sym.imp.mozglue.dll_free]
jmp 0x10092140
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov edi, dword [sym.imp.mozglue.dll_free]
jmp 0x10092179
mov edi, dword [ebp - 0xb8]
mov eax, edi
shr eax, 1
shr edi, 2
add edi, eax
mov eax, edx
sub eax, ecx
sar eax, 2
imul eax, eax, 0x3e0f83e1
mov esi, edx
mov edx, dword [ebp - 0xb0]
mov ebx, dword [ebp - 0xa8]
sub edx, ebx
sar edx, 2
mov dword [ebp - 0xa4], ecx
imul ecx, edx, 0x3e0f83e1
cmp eax, ecx
jge 0x1009260e
mov ecx, dword [ebp - 0xa4]
mov edx, esi
push edi
call fcn.100912f0
add esp, 4
mov eax, dword [ebp - 0xa0]
jmp 0x1009262d
mov ecx, ebx
mov edx, dword [ebp - 0xa0]
push edi
call fcn.100912f0
add esp, 4
mov eax, esi
mov dword [ebp - 0xa0], esi
mov ebx, dword [ebp - 0xa4]
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xa4], ebx
sub eax, ebx
cmp eax, 0x1080
setg cl
test edi, edi
je 0x1009265a
cmp eax, 0x1080
mov edx, dword [ebp - 0xa0]
jg 0x10091334
jmp 0x10092660
mov edx, dword [ebp - 0xa0]
test cl, cl
mov dword [ebp - 0xa0], edx
je 0x10092a3e
mov eax, edx
mov esi, dword [ebp - 0xa4]
sub eax, esi
cmp eax, 0x85
mov dword [ebp - 0xa4], esi
jl 0x10092da0
sar eax, 2
imul ecx, eax, 0x3e0f83e1
mov edx, ecx
sar edx, 1
lea eax, [ecx - 1]
mov edi, eax
sar edi, 1
mov dword [ebp - 0xb8], eax
shl eax, 7
mov dword [ebp - 0xb0], ecx
lea eax, [eax + ecx*4]
add eax, 0xfffffffc
add eax, esi
mov dword [ebp - 0xb4], eax
mov eax, edi
shl eax, 7
mov dword [ebp - 0x9c], edi
lea eax, [eax + edi*4]
add eax, esi
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x98], edx
lea eax, [edx - 1]
mov dword [ebp - 0xac], eax
shl eax, 7
lea eax, [eax + edx*4]
add eax, 0xfffffffc
mov edi, esi
mov ecx, dword [esi + eax]
mov dword [ebp - 0x94], ecx
mov cl, byte [esi + eax + 4]
mov byte [ebp - 0x90], cl
movsd xmm0, qword [esi + eax + 0x18]
lea ecx, [ebp - 0x8c]
mov esi, ecx
movsd qword [ecx + 0x10], xmm0
movups xmm0, xmmword [edi + eax + 8]
movups xmmword [ecx], xmm0
mov ebx, 0
mov dword [edi + eax + 0x18], ebx
mov edx, 0xf
mov dword [edi + eax + 0x1c], edx
mov byte [edi + eax + 8], bl
movsd xmm0, qword [edi + eax + 0x30]
movsd qword [ecx + 0x28], xmm0
movups xmm0, xmmword [edi + eax + 0x20]
movups xmmword [ecx + 0x18], xmm0
mov dword [edi + eax + 0x30], ebx
mov dword [edi + eax + 0x34], edx
mov byte [edi + eax + 0x20], bl
mov ecx, dword [edi + eax + 0x38]
mov dword [ebp - 0x5c], ecx
mov cl, byte [edi + eax + 0x3c]
mov byte [ebp - 0x58], cl
movsd xmm0, qword [edi + eax + 0x50]
movsd qword [esi + 0x48], xmm0
movups xmm0, xmmword [edi + eax + 0x40]
movups xmmword [esi + 0x38], xmm0
mov dword [edi + eax + 0x50], ebx
mov dword [edi + eax + 0x54], edx
mov byte [edi + eax + 0x40], bl
movsd xmm0, qword [edi + eax + 0x68]
movsd qword [esi + 0x60], xmm0
movups xmm0, xmmword [edi + eax + 0x58]
movups xmmword [esi + 0x50], xmm0
mov dword [edi + eax + 0x68], ebx
mov dword [edi + eax + 0x6c], edx
mov byte [edi + eax + 0x58], bl
mov ecx, dword [edi + eax + 0x70]
mov dword [ebp - 0x24], ecx
mov ecx, dword [edi + eax + 0x74]
mov dword [ebp - 0x20], ecx
mov cl, byte [edi + eax + 0x78]
mov byte [ebp - 0x1c], cl
mov ecx, dword [edi + eax + 0x7c]
mov dword [ebp - 0x18], ecx
mov eax, dword [edi + eax + 0x80]
mov dword [ebp - 0x14], eax
mov ebx, dword [ebp - 0xac]
mov eax, dword [ebp - 0x98]
cmp eax, dword [ebp - 0x9c]
jg 0x10092845
mov esi, dword [ebp - 0xac]
lea eax, [esi + esi]
lea edi, [esi + esi]
add edi, 2
lea ebx, [esi + esi]
inc ebx
mov ecx, ebx
shl ecx, 7
lea edx, [ecx + eax*4]
add edx, 4
mov dword [ebp - 0xa8], edi
shl edi, 7
lea ecx, [edi + eax*4]
add ecx, 8
mov eax, dword [ebp - 0xa4]
add edx, eax
add ecx, eax
call fcn.100907e0
test al, al
jne 0x1009281c
mov ebx, dword [ebp - 0xa8]
mov eax, ebx
shl eax, 7
lea edx, [eax + ebx*4]
mov edi, dword [ebp - 0xa4]
add edx, edi
mov eax, esi
shl eax, 7
lea ecx, [eax + esi*4]
add ecx, edi
call fcn.1008c3b0
mov esi, ebx
cmp ebx, dword [ebp - 0x9c]
jl 0x100927dc
test byte [ebp - 0xb0], 1
jne 0x10092875
cmp ebx, dword [ebp - 0x9c]
mov esi, dword [ebp - 0x98]
jne 0x1009287b
mov ecx, dword [ebp - 0xbc]
mov edx, dword [ebp - 0xb4]
call fcn.1008c3b0
mov ebx, dword [ebp - 0xb8]
jmp 0x1009287b
mov esi, dword [ebp - 0x98]
cmp ebx, esi
jge 0x10092889
mov edi, ebx
mov edx, dword [ebp - 0xa4]
jmp 0x100928d4
mov edx, dword [ebp - 0xa4]
lea edi, [ebx - 1]
sar edi, 1
mov eax, edi
shl eax, 7
lea esi, [eax + edi*4]
add esi, edx
mov ecx, esi
lea edx, [ebp - 0x94]
call fcn.100907e0
test al, al
je 0x1009287f
mov eax, ebx
shl eax, 7
lea ecx, [eax + ebx*4]
add ecx, dword [ebp - 0xa4]
mov edx, esi
call fcn.1008c3b0
mov ebx, edi
cmp edi, dword [ebp - 0x98]
mov edx, dword [ebp - 0xa4]
jge 0x1009288f
mov eax, edi
shl eax, 7
lea ecx, [eax + edi*4]
add ecx, edx
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
mov esi, dword [ebp - 0x98]
jb 0x10092911
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x100929c6
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x10092945
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x100929e4
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x10092979
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x10092a02
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x100929ac
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x10092a20
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
cmp esi, 1
mov edx, dword [ebp - 0xac]
mov esi, dword [ebp - 0xa4]
jg 0x100926d0
jmp 0x10092da0
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x98]
jmp 0x10092907
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x98]
jmp 0x1009293b
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x98]
jmp 0x1009296f
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x98]
jmp 0x100929a2
cmp eax, 0x85
mov edi, dword [ebp - 0xa4]
jl 0x100930f5
cmp edi, edx
je 0x100930f5
lea ebx, [edi + 0x84]
cmp ebx, edx
je 0x100930f5
mov eax, 0xffffff7c
mov esi, edi
mov dword [ebp - 0xa8], ebx
mov dword [ebp - 0x9c], eax
mov eax, dword [ebx]
mov dword [ebp - 0x94], eax
mov al, byte [esi + 0x88]
mov byte [ebp - 0x90], al
movsd xmm0, qword [esi + 0x9c]
lea eax, [ebp - 0x8c]
mov ecx, eax
movsd qword [eax + 0x10], xmm0
movups xmm0, xmmword [esi + 0x8c]
movups xmmword [eax], xmm0
mov edx, 0
mov dword [esi + 0x9c], edx
mov ebx, 0xf
mov dword [esi + 0xa0], ebx
mov byte [esi + 0x8c], dl
movsd xmm0, qword [esi + 0xb4]
movsd qword [eax + 0x28], xmm0
movups xmm0, xmmword [esi + 0xa4]
movups xmmword [eax + 0x18], xmm0
mov dword [esi + 0xb4], edx
mov dword [esi + 0xb8], ebx
mov byte [esi + 0xa4], dl
mov eax, dword [esi + 0xbc]
mov dword [ebp - 0x5c], eax
mov al, byte [esi + 0xc0]
mov byte [ebp - 0x58], al
movsd xmm0, qword [esi + 0xd4]
movsd qword [ecx + 0x48], xmm0
movups xmm0, xmmword [esi + 0xc4]
movups xmmword [ecx + 0x38], xmm0
mov dword [esi + 0xd4], edx
mov dword [esi + 0xd8], ebx
mov byte [esi + 0xc4], dl
movsd xmm0, qword [esi + 0xec]
movsd qword [ecx + 0x60], xmm0
movups xmm0, xmmword [esi + 0xdc]
movups xmmword [ecx + 0x50], xmm0
mov dword [esi + 0xec], edx
mov dword [esi + 0xf0], ebx
mov byte [esi + 0xdc], dl
mov eax, dword [esi + 0xf4]
mov dword [ebp - 0x24], eax
mov eax, dword [esi + 0xf8]
mov dword [ebp - 0x20], eax
mov al, byte [esi + 0xfc]
mov byte [ebp - 0x1c], al
mov eax, dword [esi + 0x100]
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x98], esi
mov eax, dword [esi + 0x104]
mov dword [ebp - 0x14], eax
lea esi, [ebp - 0x94]
mov ecx, esi
mov edx, edi
call fcn.100907e0
test al, al
je 0x10092bec
mov ecx, edi
mov eax, dword [ebp - 0xa8]
cmp eax, edi
mov ebx, eax
je 0x10092c2f
xor edi, edi
mov ebx, dword [ebp - 0x9c]
mov esi, dword [ebp - 0x98]
lea edx, [esi + edi]
mov eax, dword [ebp - 0xa8]
lea ecx, [eax + edi]
call fcn.1008c3b0
add edi, 0xffffff7c
cmp ebx, edi
jne 0x10092bbd
mov ecx, dword [ebp - 0xa4]
mov ebx, dword [ebp - 0xa8]
lea esi, [ebp - 0x94]
jmp 0x10092c2f
mov ebx, dword [ebp - 0xa8]
lea edi, [ebx - 0x84]
mov ecx, esi
mov edx, edi
call fcn.100907e0
mov ecx, ebx
test al, al
je 0x10092c2f
lea ecx, [edi + 0x84]
mov edx, edi
call fcn.1008c3b0
add edi, 0xffffff7c
mov ecx, esi
mov edx, edi
call fcn.100907e0
test al, al
jne 0x10092c07
add edi, 0x84
mov ecx, edi
mov edx, esi
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
mov esi, dword [ebp - 0x98]
jb 0x10092c5e
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x10092d28
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x10092c92
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x10092d46
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x10092cc6
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x10092d64
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x10092cfd
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x10092d82
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ecx, 0x84
add ebx, ecx
mov eax, dword [ebp - 0x9c]
add eax, 0xffffff7c
add esi, ecx
cmp ebx, dword [ebp - 0xa0]
mov edi, dword [ebp - 0xa4]
jne 0x10092a6c
jmp 0x100930f5
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x98]
jmp 0x10092c54
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x98]
jmp 0x10092c88
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x98]
jmp 0x10092cbc
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
mov esi, dword [ebp - 0x98]
jmp 0x10092cf3
mov ecx, dword [ebp - 0xa0]
mov eax, ecx
sub eax, esi
cmp eax, 0x85
jl 0x100930f5
mov eax, ecx
sub eax, esi
cmp eax, 0x85
jl 0x10093091
mov eax, dword [ecx - 0x84]
mov dword [ebp - 0x94], eax
mov al, byte [ecx - 0x80]
mov byte [ebp - 0x90], al
movsd xmm0, qword [ecx - 0x6c]
lea eax, [ebp - 0x8c]
mov edx, eax
movsd qword [eax + 0x10], xmm0
movups xmm0, xmmword [ecx - 0x7c]
movups xmmword [eax], xmm0
xor ebx, ebx
mov dword [ecx - 0x6c], ebx
mov edi, 0xf
mov dword [ecx - 0x68], edi
mov byte [ecx - 0x7c], bl
movsd xmm0, qword [ecx - 0x54]
movsd qword [eax + 0x28], xmm0
movups xmm0, xmmword [ecx - 0x64]
movups xmmword [eax + 0x18], xmm0
mov dword [ecx - 0x54], ebx
mov dword [ecx - 0x50], edi
mov byte [ecx - 0x64], bl
mov eax, dword [ecx - 0x4c]
mov dword [ebp - 0x5c], eax
mov al, byte [ecx - 0x48]
mov byte [ebp - 0x58], al
movsd xmm0, qword [ecx - 0x34]
movsd qword [edx + 0x48], xmm0
movups xmm0, xmmword [ecx - 0x44]
movups xmmword [edx + 0x38], xmm0
mov dword [ecx - 0x34], ebx
mov dword [ecx - 0x30], edi
mov byte [ecx - 0x44], bl
movsd xmm0, qword [ecx - 0x1c]
movsd qword [edx + 0x60], xmm0
movups xmm0, xmmword [ecx - 0x2c]
movups xmmword [edx + 0x50], xmm0
mov dword [ecx - 0x1c], ebx
mov dword [ecx - 0x18], edi
mov byte [ecx - 0x2c], bl
mov eax, dword [ecx - 0x14]
mov dword [ebp - 0x24], eax
mov eax, dword [ecx - 0x10]
mov dword [ebp - 0x20], eax
mov al, byte [ecx - 0xc]
mov byte [ebp - 0x1c], al
mov eax, dword [ecx - 8]
mov dword [ebp - 0x18], eax
mov eax, dword [ecx - 4]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0xa0], ecx
lea edi, [ecx - 0x84]
mov ecx, edi
mov edx, esi
call fcn.1008c3b0
sub edi, esi
mov eax, edi
sar eax, 2
imul eax, eax, 0x3e0f83e1
mov dword [ebp - 0x98], eax
dec eax
mov dword [ebp - 0xac], eax
mov ecx, eax
sar ecx, 1
cmp edi, 0x109
jl 0x10092f2b
xor edi, edi
mov dword [ebp - 0x9c], ecx
lea eax, [edi + edi]
lea ecx, [edi + edi]
add ecx, 2
mov dword [ebp - 0xa8], ecx
lea ebx, [edi + edi]
inc ebx
mov ecx, ebx
shl ecx, 7
lea edx, [ecx + eax*4]
add edx, 4
mov ecx, dword [ebp - 0xa8]
shl ecx, 7
lea ecx, [ecx + eax*4]
add ecx, 8
add edx, esi
add ecx, esi
call fcn.100907e0
test al, al
jne 0x10092f00
mov ebx, dword [ebp - 0xa8]
mov eax, ebx
shl eax, 7
lea edx, [eax + ebx*4]
mov esi, dword [ebp - 0xa4]
add edx, esi
mov eax, edi
shl eax, 7
lea ecx, [eax + edi*4]
add ecx, esi
call fcn.1008c3b0
mov edi, ebx
mov ecx, dword [ebp - 0x9c]
cmp ebx, ecx
jl 0x10092ec0
test byte [ebp - 0x98], 1
jne 0x10092f5d
cmp ebx, ecx
jne 0x10092f5d
mov ebx, dword [ebp - 0xac]
mov eax, ebx
shl eax, 7
lea edx, [eax + ebx*4]
mov esi, dword [ebp - 0xa4]
add edx, esi
mov eax, ecx
shl eax, 7
lea ecx, [eax + ecx*4]
add ecx, esi
call fcn.1008c3b0
test ebx, ebx
jle 0x10092fab
mov edx, dword [ebp - 0xa4]
lea esi, [ebx - 1]
sar esi, 1
mov eax, esi
shl eax, 7
lea edi, [eax + esi*4]
add edi, edx
mov ecx, edi
lea edx, [ebp - 0x94]
call fcn.100907e0
test al, al
je 0x10092fab
mov eax, ebx
shl eax, 7
lea ecx, [eax + ebx*4]
add ecx, dword [ebp - 0xa4]
mov edx, edi
call fcn.1008c3b0
cmp ebx, 2
mov ebx, esi
mov edx, dword [ebp - 0xa4]
jg 0x10092f67
jmp 0x10092fb3
mov esi, ebx
mov edx, dword [ebp - 0xa4]
mov eax, esi
shl eax, 7
lea ecx, [eax + esi*4]
add ecx, edx
lea edx, [ebp - 0x94]
call fcn.1008c3b0
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x10092fea
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x100930a8
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x1009301e
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x100930bc
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x10093052
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x100930d0
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x10093085
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x100930e4
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov esi, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa0]
add ecx, 0xffffff7c
mov eax, ecx
sub eax, esi
cmp eax, 0x84
jg 0x10092db5
jmp 0x100930f5
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x10092fe0
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x10093014
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x10093048
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009310a
mov eax, ecx
jmp 0x1009307b
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1021e470
add esp, 0xb0
pop esi
pop edi
pop ebx
pop ebp
ret
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x8c
mov edi, edx
mov esi, ecx
mov eax, dword [0x1038100c]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, edx
mov edx, esi
call fcn.100907e0
test al, al
je 0x100932c1
mov eax, dword [edi]
lea ebx, [ebp - 0x94]
mov dword [ebx], eax
mov al, byte [edi + 4]
mov byte [ebx + 4], al
movups xmm0, xmmword [edi + 8]
movups xmmword [ebx + 8], xmm0
movsd xmm0, qword [edi + 0x18]
movsd qword [ebx + 0x18], xmm0
xor eax, eax
mov dword [edi + 0x18], eax
mov ecx, 0xf
mov dword [edi + 0x1c], ecx
mov byte [edi + 8], al
movsd xmm0, qword [edi + 0x30]
movsd qword [ebx + 0x30], xmm0
movups xmm0, xmmword [edi + 0x20]
movups xmmword [ebx + 0x20], xmm0
mov dword [edi + 0x30], eax
mov dword [edi + 0x34], ecx
mov byte [edi + 0x20], al
mov edx, dword [edi + 0x38]
mov dword [ebx + 0x38], edx
mov dl, byte [edi + 0x3c]
mov byte [ebx + 0x3c], dl
movsd xmm0, qword [edi + 0x50]
movsd qword [ebx + 0x50], xmm0
movups xmm0, xmmword [edi + 0x40]
movups xmmword [ebx + 0x40], xmm0
mov dword [edi + 0x50], eax
mov dword [edi + 0x54], ecx
mov byte [edi + 0x40], al
movsd xmm0, qword [edi + 0x68]
movsd qword [ebx + 0x68], xmm0
movups xmm0, xmmword [edi + 0x58]
movups xmmword [ebx + 0x58], xmm0
mov dword [edi + 0x68], eax
mov dword [edi + 0x6c], ecx
mov byte [edi + 0x58], al
mov eax, dword [edi + 0x70]
mov dword [ebx + 0x70], eax
mov eax, dword [edi + 0x74]
mov dword [ebx + 0x74], eax
mov al, byte [edi + 0x78]
mov byte [ebx + 0x78], al
mov eax, dword [edi + 0x7c]
mov dword [ebx + 0x7c], eax
mov eax, dword [edi + 0x80]
mov dword [ebx + 0x80], eax
mov ecx, edi
mov edx, esi
call fcn.1008c3b0
mov ecx, esi
mov edx, ebx
call fcn.1008c3b0
mov ecx, dword [ebx + 0x6c]
cmp ecx, 0x10
jb 0x10093222
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x10093613
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x10093256
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x1009362b
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x1009328a
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x10093643
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x100932c1
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x1009365b
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ebx, dword [ebp + 8]
mov ecx, ebx
mov edx, edi
call fcn.100907e0
test al, al
je 0x100935fe
mov dword [ebp - 0x98], esi
mov eax, dword [ebx]
lea esi, [ebp - 0x94]
mov dword [esi], eax
mov al, byte [ebx + 4]
mov byte [esi + 4], al
movups xmm0, xmmword [ebx + 8]
movups xmmword [esi + 8], xmm0
movsd xmm0, qword [ebx + 0x18]
movsd qword [esi + 0x18], xmm0
xor eax, eax
mov dword [ebx + 0x18], eax
mov ecx, 0xf
mov dword [ebx + 0x1c], ecx
mov byte [ebx + 8], al
movsd xmm0, qword [ebx + 0x30]
movsd qword [esi + 0x30], xmm0
movups xmm0, xmmword [ebx + 0x20]
movups xmmword [esi + 0x20], xmm0
mov dword [ebx + 0x30], eax
mov dword [ebx + 0x34], ecx
mov byte [ebx + 0x20], al
mov edx, dword [ebx + 0x38]
mov dword [esi + 0x38], edx
mov dl, byte [ebx + 0x3c]
mov byte [esi + 0x3c], dl
movsd xmm0, qword [ebx + 0x50]
movsd qword [esi + 0x50], xmm0
movups xmm0, xmmword [ebx + 0x40]
movups xmmword [esi + 0x40], xmm0
mov dword [ebx + 0x50], eax
mov dword [ebx + 0x54], ecx
mov byte [ebx + 0x40], al
movsd xmm0, qword [ebx + 0x68]
movsd qword [esi + 0x68], xmm0
movups xmm0, xmmword [ebx + 0x58]
movups xmmword [esi + 0x58], xmm0
mov dword [ebx + 0x68], eax
mov dword [ebx + 0x6c], ecx
mov byte [ebx + 0x58], al
mov eax, dword [ebx + 0x70]
mov dword [esi + 0x70], eax
mov eax, dword [ebx + 0x74]
mov dword [esi + 0x74], eax
mov al, byte [ebx + 0x78]
mov byte [esi + 0x78], al
mov eax, dword [ebx + 0x7c]
mov dword [esi + 0x7c], eax
mov eax, dword [ebx + 0x80]
mov dword [esi + 0x80], eax
mov ecx, ebx
mov edx, edi
call fcn.1008c3b0
mov ecx, edi
mov edx, esi
call fcn.1008c3b0
mov ecx, dword [esi + 0x6c]
cmp ecx, 0x10
jb 0x100933c2
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x10093673
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
mov ebx, dword [ebp - 0x98]
jb 0x100933fc
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x1009368b
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x10093430
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x100936a9
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x10093467
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x100936c3
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ecx, edi
mov edx, ebx
call fcn.100907e0
test al, al
je 0x100935fe
mov eax, dword [edi]
lea esi, [ebp - 0x94]
mov dword [esi], eax
mov al, byte [edi + 4]
mov byte [esi + 4], al
movups xmm0, xmmword [edi + 8]
movups xmmword [esi + 8], xmm0
movsd xmm0, qword [edi + 0x18]
movsd qword [esi + 0x18], xmm0
xor eax, eax
mov dword [edi + 0x18], eax
mov ecx, 0xf
mov dword [edi + 0x1c], ecx
mov byte [edi + 8], al
movsd xmm0, qword [edi + 0x30]
movsd qword [esi + 0x30], xmm0
movups xmm0, xmmword [edi + 0x20]
movups xmmword [esi + 0x20], xmm0
mov dword [edi + 0x30], eax
mov dword [edi + 0x34], ecx
mov byte [edi + 0x20], al
mov edx, dword [edi + 0x38]
mov dword [esi + 0x38], edx
mov dl, byte [edi + 0x3c]
mov byte [esi + 0x3c], dl
movsd xmm0, qword [edi + 0x50]
movsd qword [esi + 0x50], xmm0
movups xmm0, xmmword [edi + 0x40]
movups xmmword [esi + 0x40], xmm0
mov dword [edi + 0x50], eax
mov dword [edi + 0x54], ecx
mov byte [edi + 0x40], al
movsd xmm0, qword [edi + 0x68]
movsd qword [esi + 0x68], xmm0
movups xmm0, xmmword [edi + 0x58]
movups xmmword [esi + 0x58], xmm0
mov dword [edi + 0x68], eax
mov dword [edi + 0x6c], ecx
mov byte [edi + 0x58], al
mov eax, dword [edi + 0x70]
mov dword [esi + 0x70], eax
mov eax, dword [edi + 0x74]
mov dword [esi + 0x74], eax
mov al, byte [edi + 0x78]
mov byte [esi + 0x78], al
mov eax, dword [edi + 0x7c]
mov dword [esi + 0x7c], eax
mov eax, dword [edi + 0x80]
mov dword [esi + 0x80], eax
mov ecx, edi
mov edx, ebx
call fcn.1008c3b0
mov ecx, ebx
mov edx, esi
call fcn.1008c3b0
mov ecx, dword [esi + 0x6c]
cmp ecx, 0x10
jb 0x1009355f
mov eax, dword [ebp - 0x3c]
inc ecx
cmp ecx, 0x1000
jae 0x100936dd
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0xf
mov byte [ebp - 0x3c], 0
mov ecx, dword [ebp - 0x40]
cmp ecx, 0x10
jb 0x10093593
mov eax, dword [ebp - 0x54]
inc ecx
cmp ecx, 0x1000
jae 0x100936f1
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0xf
mov byte [ebp - 0x54], 0
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x100935c7
mov eax, dword [ebp - 0x74]
inc ecx
cmp ecx, 0x1000
jae 0x10093705
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x100935fe
mov eax, dword [ebp - 0x8c]
inc ecx
cmp ecx, 0x1000
jae 0x10093719
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1021e470
add esp, 0x8c
pop esi
pop edi
pop ebx
pop ebp
ret
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x10093218
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x1009324c
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x10093280
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x100932b7
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x100933b8
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
mov ebx, dword [ebp - 0x98]
jmp 0x100933f2
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
mov ebx, dword [ebp - 0x98]
jmp 0x10093426
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
mov ebx, dword [ebp - 0x98]
jmp 0x1009345d
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x10093555
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x10093589
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x100935bd
mov ecx, dword [eax - 4]
add eax, 0xfffffffc
sub eax, ecx
cmp eax, 0x20
jae 0x1009372d
mov eax, ecx
jmp 0x100935f4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3