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

Disassembly:
mov edx, dword [esp + 0x30]
sub esp, 0x6c
push ebx
mov ebx, dword [esp + 0x98]
push ebp
mov ebp, dword [esp + 0xa0]
push esi
mov esi, dword [esp + 0x7c]
push edi
push dword [esp + 0x94]
mov edi, dword [esp + 0x88]
push edx
push ebp
push ebx
push dword [esp + 0x98]
push edi
push esi
call fcn.100b15f0
add esp, 0x1c
test al, al
jne 0x100c0908
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0x501
push eax
mov ecx, esi
mov dword [esp + 0x28], 0x501
mov dword [esp + 0x2c], 0
call fcn.10125940
mov esi, dword [esp + 0x28]
test esi, esi
je 0x100c0a87
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x100c0a6c
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x100c0a62
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100c0a60
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
cmp dword [esp + 0xb0], 0
jne 0x100c0a0d
mov edx, dword [esp + 0x98]
test edx, edx
js 0x100c0a0d
cmp dword [esp + 0x9c], 0
jl 0x100c0a0d
cmp dword [esp + 0xa0], 0
jl 0x100c0a0d
mov ecx, 0x7fffffff
mov eax, ecx
sub eax, edx
cmp eax, ebx
jl 0x100c0a0d
mov eax, ecx
sub eax, dword [esp + 0x9c]
cmp eax, ebp
jl 0x100c0a0d
sub ecx, dword [esp + 0xa0]
mov edx, dword [esp + 0xac]
cmp ecx, edx
jl 0x100c0a0d
mov eax, dword [esi + 0x14]
cmp edi, 0x8515
ja 0x100c0a91
je case.0x100c0aae.34070
cmp edi, 0xde1
je 0x100c09f5
cmp edi, 0x806f
jne case.default.0x100c0aae
mov eax, dword [eax + 8]
mov ecx, dword [esp + 0x88]
shr eax, cl
cmp ebx, eax
ja 0x100c09be
cmp ebp, eax
ja 0x100c09be
cmp edx, eax
jbe 0x100c0b06
mov dword [esp + 0x20], 0x501
mov dword [esp + 0x24], 0x501
lea eax, [esp + 0x20]
mov dword [esp + 0x28], 0
push eax
mov ecx, esi
call fcn.10125940
lea ecx, [esp + 0x28]
call fcn.100016b0
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x6c
ret
mov eax, dword [eax + 0xc]
mov ecx, dword [esp + 0x88]
shr eax, cl
cmp ebx, eax
ja 0x100c0a0d
cmp ebp, eax
jbe 0x100c0b06
mov dword [esp + 0x24], 0x501
mov dword [esp + 0x20], 0x501
lea eax, [esp + 0x20]
mov dword [esp + 0x28], 0
push eax
mov ecx, esi
call fcn.10125940
mov esi, dword [esp + 0x28]
test esi, esi
je 0x100c0a87
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x100c0a6c
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x100c0a62
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c0902
mov eax, edx
push ecx
push eax
call fcn.10174919
add esp, 8
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
push esi
mov byte [esi], 0
call dword [sym.imp.mozglue.dll_free]
add esp, 4
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x6c
ret
cmp edi, 0x8c1a
ja case.default.0x100c0aae
je 0x100c0ada
lea ecx, [edi - 0x8516]
cmp ecx, 4
ja case.default.0x100c0aae
jmp dword [ecx*4 + 0x100c108c]
cmp byte [esp + 0x94], 0
jne 0x100c0ac7
cmp ebx, ebp
jne 0x100c0a0d
mov eax, dword [eax + 0x18]
mov ecx, dword [esp + 0x88]
shr eax, cl
cmp ebx, eax
jmp 0x100c0a07
mov edx, dword [eax + 0xc]
mov ecx, dword [esp + 0x88]
shr edx, cl
cmp ebx, edx
ja 0x100c0a0d
cmp ebp, edx
ja 0x100c0a0d
mov edx, dword [esp + 0xac]
cmp edx, dword [eax + 0x10]
ja 0x100c0a0d
push edi
call fcn.1002e190
add esp, 4
mov edx, 0x8513
test al, al
mov ecx, edi
cmovne ecx, edx
push ecx
mov ecx, esi
call fcn.10125800
mov dword [esp + 0x14], eax
test eax, eax
jne 0x100c0b40
mov dword [esp + 0x20], 0x502
mov dword [esp + 0x24], 0x502
jmp 0x100c0a1d
mov ecx, eax
call fcn.10154230
test al, al
je 0x100c0b6a
cmp byte [esp + 0x94], 0
jne 0x100c0b74
mov dword [esp + 0x20], 0x502
mov dword [esp + 0x24], 0x502
jmp 0x100c0a1d
cmp byte [esp + 0x94], 0
je 0x100c0b8e
push dword [esp + 0x88]
mov ecx, dword [esp + 0x18]
push edi
call fcn.101540e0
mov ecx, eax
call fcn.1014fe70
jmp 0x100c0b95
mov eax, dword [esp + 0x8c]
push eax
mov dword [esp + 0x1c], eax
call fcn.1014e780
add esp, 4
mov dword [esp + 0x1c], eax
cmp byte [esp + 0x90], 0
je 0x100c0c5c
cmp byte [eax + 0x2c], 0
jne 0x100c0bec
push str.internalformat_is_not_a_supported_compressed_internal_format.
lea eax, [esp + 0x34]
push 0x500
push eax
call fcn.101314c0
add esp, 0xc
mov ecx, esi
push eax
call fcn.10125940
lea ecx, [esp + 0x38]
call fcn.100016b0
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x6c
ret
push ebp
push ebx
push dword [esp + 0x20]
push esi
call fcn.100b1550
add esp, 0x10
test al, al
jne 0x100c0c14
mov dword [esp + 0x20], 0x502
mov dword [esp + 0x24], 0x502
jmp 0x100c0a1d
mov eax, dword [esp + 0x1c]
push dword [esi + 0x1c]
push dword [esi + 4]
mov eax, dword [eax + 0x48]
call eax
add esp, 8
test al, al
jne 0x100c0c3f
mov dword [esp + 0x20], 0x500
mov dword [esp + 0x24], 0x500
jmp 0x100c0a1d
cmp edi, 0x806f
jne 0x100c0cb1
mov dword [esp + 0x20], 0x502
mov dword [esp + 0x24], 0x502
jmp 0x100c0a1d
push dword [esp + 0xb8]
push dword [esp + 0xb8]
push dword [esp + 0x20]
push esi
call fcn.100c4160
add esp, 0x10
test al, al
je 0x100c0a87
cmp edi, 0x806f
jne 0x100c0cb1
mov eax, dword [esp + 0xb4]
cmp eax, 0x1902
je 0x100c0c9c
cmp eax, 0x84f9
jne 0x100c0cb1
mov dword [esp + 0x20], 0x502
mov dword [esp + 0x24], 0x502
jmp 0x100c09ce
cmp byte [esp + 0x94], 0
je 0x100c0d6d
mov eax, dword [esp + 0x1c]
mov cl, byte [esp + 0x90]
cmp cl, byte [eax + 0x2c]
je 0x100c0ce4
mov dword [esp + 0x20], 0x502
mov dword [esp + 0x24], 0x502
jmp 0x100c0a1d
test ebx, ebx
je 0x100c0a87
test ebp, ebp
je 0x100c0a87
cmp dword [esp + 0xac], 0
je 0x100c0a87
push dword [esp + 0x88]
mov ecx, dword [esp + 0x18]
push edi
call fcn.10155b20
mov ecx, dword [esp + 0x98]
add ecx, ebx
cmp ecx, eax
ja 0x100c09be
push dword [esp + 0x88]
mov ecx, dword [esp + 0x18]
push edi
call fcn.10154170
mov ecx, dword [esp + 0x9c]
add ecx, ebp
cmp ecx, eax
ja 0x100c09be
push dword [esp + 0x88]
mov ecx, dword [esp + 0x18]
push edi
call fcn.10153d00
mov ecx, dword [esp + 0xa0]
add ecx, dword [esp + 0xac]
cmp ecx, eax
ja 0x100c09be
mov ecx, dword [esi + 0x10]
push 0x88ec
call fcn.101557b0
mov dword [esp + 0x2c], eax
test eax, eax
je 0x100c0fc2
push dword [esp + 0xb8]
push dword [esp + 0x1c]
call fcn.1014e950
push eax
call fcn.1014e780
mov ecx, dword [esi + 0x10]
add esp, 0xc
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], eax
call fcn.10155a80
mov ecx, dword [esp + 0x18]
push eax
mov dword [esp + 0x18], eax
lea eax, [esp + 0x34]
push eax
push dword [esp + 0xc0]
lea eax, [esp + 0x78]
push eax
call fcn.10151970
cmp dword [esp + 0x6c], 0
je 0x100c0e03
lea eax, [esp + 0x6c]
mov ecx, esi
push eax
call fcn.10125940
lea ecx, [esp + 0x74]
call fcn.100016b0
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x6c
ret
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0xbc]
mov byte [esp + 0x13], 0
lea ecx, [edx + eax]
not eax
cmp eax, edx
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x18]
sbb al, al
and al, 2
or byte [esp + 0x13], al
mov eax, dword [esp + 0x14]
push dword [eax + 0xc]
push dword [eax + 8]
lea eax, [esp + 0x64]
push ebx
push dword [esp + 0xc4]
push eax
call fcn.10151400
cmp dword [esp + 0x5c], 0
je 0x100c0e75
lea eax, [esp + 0x5c]
mov ecx, esi
push eax
call fcn.10125940
lea ecx, [esp + 0x64]
call fcn.100016b0
lea ecx, [esp + 0x74]
call fcn.100016b0
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x6c
ret
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
push dword [eax + 0x18]
push dword [eax + 0xc]
push dword [eax + 8]
lea eax, [esp + 0x58]
push ebp
mov ebp, dword [esp + 0xc8]
push ebx
push ebp
push eax
call fcn.101510e0
cmp dword [esp + 0x4c], 0
je 0x100c0eb2
lea eax, [esp + 0x4c]
mov ecx, esi
push eax
call fcn.10125940
jmp 0x100c104f
cmp edi, 0x806f
je 0x100c0ec7
mov byte [esp + 0x20], 0
cmp edi, 0x8c1a
jne 0x100c0ecc
mov byte [esp + 0x20], 1
push dword [esp + 0x20]
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x20]
push dword [eax + 0x14]
push dword [eax + 0x10]
push dword [eax + 0x1c]
lea eax, [esp + 0x4c]
push dword [esp + 0x68]
push dword [esp + 0x7c]
push eax
call fcn.10151820
cmp dword [esp + 0x3c], 0
je 0x100c0f0f
lea eax, [esp + 0x3c]
mov ecx, esi
push eax
call fcn.10125940
jmp 0x100c1046
mov eax, dword [esp + 0x48]
lea ecx, [eax + ebx]
not ebx
cmp ebx, eax
mov dword [esp + 0x20], ecx
sbb al, al
and al, 2
or al, byte [esp + 0x13]
jne 0x100c0fcc
mov edi, dword [esp + 0x2c]
cmp ecx, dword [edi + 0x30]
ja 0x100c0fcc
cmp byte [esp + 0x90], al
jne 0x100c0f98
push ebp
call fcn.1014e980
mov ecx, eax
xor edx, edx
mov eax, dword [esp + 0xc0]
add esp, 4
div dword [ecx]
test edx, edx
je 0x100c0f98
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0x502
push eax
mov ecx, esi
mov dword [esp + 0x28], 0x502
mov dword [esp + 0x2c], 0
call fcn.10125940
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x100c1046
push 1
call fcn.1004a480
jmp 0x100c1046
cmp byte [edi + 0x40], 0
jne 0x100c0f5c
lea ecx, [esp + 0x44]
call fcn.100016b0
lea ecx, [esp + 0x54]
call fcn.100016b0
lea ecx, [esp + 0x64]
call fcn.100016b0
lea ecx, [esp + 0x74]
call fcn.100016b0
pop edi
pop esi
pop ebp
mov al, 1
pop ebx
add esp, 0x6c
ret
lea eax, [esp + 0x20]
mov dword [esp + 0x20], 0x502
push eax
mov ecx, esi
mov dword [esp + 0x28], 0x502
mov dword [esp + 0x2c], 0
call fcn.10125940
mov esi, dword [esp + 0x28]
test esi, esi
je 0x100c1046
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x100c102b
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x100c1021
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100c0902
mov eax, edx
push ecx
push eax
call fcn.10174919
add esp, 8
push esi
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
call dword [sym.imp.mozglue.dll_free]
add esp, 4
lea ecx, [esp + 0x44]
call fcn.100016b0
lea ecx, [esp + 0x54]
call fcn.100016b0
lea ecx, [esp + 0x64]
call fcn.100016b0
lea ecx, [esp + 0x74]
call fcn.100016b0
pop edi
pop esi
pop ebp
xor al, al
pop ebx
add esp, 0x6c
ret
mov dword [esp + 0x20], 0x500
mov dword [esp + 0x24], 0x500
jmp 0x100c09ce