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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x24
mov esi, ecx
mov eax, dword [0x1038100c]
xor eax, ebp
mov dword [ebp - 0x10], eax
call fcn.10078700
lea eax, [esi + 0x24]
cmp dword [esi + 0x38], 0x10
jb 0x10079bf5
mov eax, dword [eax]
mov dword [esi + 0x34], 0
mov byte [eax], 0
mov eax, dword [esi + 0x3c]
mov ecx, dword [esi + 0x134]
mov dword [esi + 0x40], eax
lea eax, [esi + 0x120]
cmp ecx, 0x10
jb 0x10079c18
mov eax, dword [eax]
mov dword [esi + 0x130], 0
mov byte [eax], 0
mov dword [esi + 0x20], 0x64
mov edi, dword [esi + 0x6c]
mov ebx, dword [esi + 0x70]
cmp edi, ebx
je 0x10079c4a
mov ecx, edi
call fcn.10222d30
add edi, 0xb4
cmp ebx, edi
jne 0x10079c36
mov ebx, dword [esi + 0x6c]
mov dword [esi + 0x70], ebx
mov edi, dword [esi + 0x78]
mov ebx, dword [esi + 0x7c]
cmp edi, ebx
je 0x10079c6b
mov ecx, edi
call fcn.10222d30
add edi, 0xb4
cmp ebx, edi
jne 0x10079c57
mov ebx, dword [esi + 0x78]
mov dword [esi + 0x7c], ebx
mov edi, dword [esi + 0x84]
mov ebx, dword [esi + 0x88]
cmp edi, ebx
je 0x10079c95
mov ecx, edi
call fcn.10222d30
add edi, 0xb4
cmp ebx, edi
jne 0x10079c7e
mov ebx, dword [esi + 0x84]
mov dword [esi + 0x88], ebx
mov edi, dword [esi + 0x90]
mov ebx, dword [esi + 0x94]
cmp edi, ebx
je 0x10079cbf
mov ecx, edi
call fcn.10224f80
add edi, 0x6c
cmp ebx, edi
jne 0x10079cab
mov ebx, dword [esi + 0x90]
mov dword [esi + 0x94], ebx
mov edi, dword [esi + 0x9c]
mov ebx, dword [esi + 0xa0]
cmp edi, ebx
je 0x10079ce9
mov ecx, edi
call fcn.10224f80
add edi, 0x6c
cmp ebx, edi
jne 0x10079cd5
mov ebx, dword [esi + 0x9c]
mov dword [esi + 0xa0], ebx
mov edi, dword [esi + 0xb4]
mov ebx, dword [esi + 0xb8]
cmp edi, ebx
je 0x10079d16
mov ecx, edi
call fcn.10222d30
add edi, 0xb4
cmp ebx, edi
jne 0x10079cff
mov ebx, dword [esi + 0xb4]
mov dword [esi + 0xb8], ebx
mov ebx, dword [esi + 0xc0]
mov edi, dword [esi + 0xc4]
cmp ebx, edi
je 0x10079d43
mov ecx, ebx
call fcn.10222d30
add ebx, 0xb4
cmp edi, ebx
jne 0x10079d2c
mov edi, dword [esi + 0xc0]
mov dword [esi + 0xc4], edi
mov dword [esi + 0xd4], 0xffffffff
xor eax, eax
mov byte [esi + 0xd8], al
mov byte [esi + 0xda], al
mov byte [esi + 0xdc], al
xor ecx, ecx
inc ecx
mov dword [esi + 0xe4], ecx
mov byte [esi + 0xcc], al
mov dword [esi + 0xd0], eax
xorps xmm0, xmm0
movups xmmword [esi + 0xe8], xmm0
mov dword [esi + 0xf8], eax
mov dword [esi + 0xfc], ecx
mov ecx, dword [ebp + 8]
call fcn.1001e3d0
test eax, eax
je 0x10079da1
inc dword [eax + 4]
mov ebx, dword [esi + 0x13c]
mov dword [esi + 0x13c], eax
test ebx, ebx
je 0x10079ddc
dec dword [ebx + 4]
jne 0x10079ddc
mov eax, dword [ebx]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, ebx
push dword [ebp + 8]
call edi
mov eax, dword [ebx]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, ebx
push 1
call edi
mov edx, dword [ebp + 8]
cmp byte [edx + 0x1213], 0
mov eax, 0x240
mov ecx, 0x2c0
cmove ecx, eax
mov dword [ebp - 0x30], ecx
mov eax, 0xc
mov ecx, 0x3a0c
cmove ecx, eax
movzx eax, byte [esi + 0x108]
or eax, ecx
mov ecx, dword [edx + 0x1ee8]
lea edi, [eax + 0x10000]
cmp byte [ecx + 0x208], 0
cmove edi, eax
mov dword [ebp - 0x2c], edi
mov eax, dword [edx + 0x274]
mov dword [esi + 0x160], eax
mov eax, dword [edx + 0x278]
mov dword [esi + 0x164], eax
mov ecx, dword [esi + 0x13c]
movzx eax, byte [esi + 0x1c]
lea ebx, [ebp - 0x1c]
push eax
push ebx
call fcn.10013b80
push dword [ebx]
call fcn.102b2110
add esp, 4
lea ecx, [esi + 0x144]
push eax
call fcn.10223b40
push 0x14
call dword [sym.imp.mozglue.dll_moz_xmalloc]
add esp, 4
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov edi, dword [esi + 0x140]
mov dword [esi + 0x140], eax
test edi, edi
je 0x10079eda
mov ebx, dword [edi + 4]
test ebx, ebx
je 0x10079ec7
lock dec dword [ebx + 4]
jne 0x10079ec7
mov eax, dword [ebx]
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
call dword [section..00cfg]
mov ecx, ebx
call dword [ebp - 0x28]
lock dec dword [ebx + 8]
jne 0x10079ec7
mov eax, dword [ebx]
mov ecx, dword [eax + 4]
mov dword [ebp - 0x28], ecx
call dword [section..00cfg]
mov ecx, ebx
call dword [ebp - 0x28]
push edi
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov eax, dword [esi + 0x140]
lea ebx, [ebp - 0x1c]
add eax, 8
mov ecx, eax
push ebx
call fcn.10013e60
mov edi, dword [esi + 0x100]
mov ebx, dword [esi + 0x140]
add ebx, 8
mov eax, dword [edi]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x28], ecx
call dword [section..00cfg]
lea eax, [ebp - 0x24]
mov ecx, edi
push dword [ebp - 0x30]
push dword [ebp - 0x2c]
push ebx
push dword [ebp + 8]
mov edi, eax
push eax
call dword [ebp - 0x28]
mov eax, dword [esi + 0x140]
mov ecx, dword [edi]
mov edx, dword [edi + 4]
xor esi, esi
mov dword [edi], esi
mov dword [edi + 4], esi
mov dword [eax], ecx
mov esi, dword [eax + 4]
mov dword [eax + 4], edx
test esi, esi
je 0x10079f62
lock dec dword [esi + 4]
jne 0x10079f62
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
call edi
lock dec dword [esi + 8]
jne 0x10079f62
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
call edi
mov esi, dword [ebp - 0x20]
test esi, esi
je 0x10079f96
lock dec dword [esi + 4]
jne 0x10079f96
mov eax, dword [esi]
mov edi, dword [eax]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
call edi
lock dec dword [esi + 8]
jne 0x10079f96
mov eax, dword [esi]
mov edi, dword [eax + 4]
mov ecx, edi
call dword [section..00cfg]
mov ecx, esi
call edi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1021e470
add esp, 0x24
pop esi
pop edi
pop ebx
pop ebp
ret 4