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

Disassembly:
push 0xffffffffffffffff
push 0x10276b38
mov eax, dword fs:[0]
push eax
sub esp, 0x110
push ebp
push esi
push edi
mov eax, dword [0x1037c990]
xor eax, esp
push eax
lea eax, [esp + 0x120]
mov dword fs:[0], eax
mov esi, ecx
xor ebp, ebp
mov dword [esp + 0x18], ebp
mov dword [esp + 0x128], 3
mov eax, dword [esi]
mov edx, dword [eax + 0x6c]
lea ecx, [esp + 0x18]
push ecx
push esi
call edx
cmp eax, ebp
jge 0x100c064e
push ebp
push 0x79
push 0x102c50ac
push eax
call fcn.100048f0
lea ecx, [esp + 0x44]
call fcn.10002dd0
mov byte [esp + 0x128], 4
lea ecx, [esp + 0x44]
mov dword [esp + 0x5c], ebp
call fcn.100041b0
lea eax, [esp + 0x4c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jge 0x100c0688
push ebp
push ebp
push 0x102b274a
push eax
call fcn.100048f0
mov edx, dword [esi]
lea eax, [esp + 0x54]
mov ecx, 8
push eax
mov word [esp + 0x50], cx
mov ecx, dword [edx + 0x5c]
push esi
mov dword [esp + 0x64], 2
mov dword [esp + 0x5c], ebp
call ecx
cmp eax, ebp
jge 0x100c06bd
push ebp
push 0x7c
push 0x102c50ac
push eax
call fcn.100048f0
lea edx, [esp + 0x44]
push edx
lea ecx, [esp + 0x108]
call fcn.100555b0
mov byte [esp + 0x128], 5
lea ecx, [esp + 0xb0]
push ecx
mov ecx, eax
call fcn.101daa80
mov byte [esp + 0x128], 7
lea ecx, [esp + 0x104]
call fcn.10056b10
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x14]
mov dword [esp + 0x14], ebp
mov edx, dword [eax]
mov edx, dword [edx + 0x28]
push ecx
xor esi, esi
push eax
mov dword [esp + 0x28], esi
call edx
cmp eax, ebp
jl 0x100c0a27
mov edi, dword [sym.imp.KERNEL32.dll_DeleteCriticalSection]
jmp 0x100c0734
mov esi, dword [esp + 0x20]
cmp esi, dword [esp + 0x14]
jge 0x100c0a45
push esi
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x20]
call fcn.100c1050
mov byte [esp + 0x128], 8
lea ecx, [esp + 0x24]
call fcn.10002dd0
mov byte [esp + 0x128], 9
mov esi, dword [esp + 0x1c]
lea ecx, [esp + 0x24]
mov dword [esp + 0x3c], ebp
call fcn.100041b0
lea ecx, [esp + 0x2c]
push ecx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp eax, ebp
jl 0x100c067b
mov edx, 8
mov word [esp + 0x2c], dx
lea ecx, [esp + 0x34]
mov dword [esp + 0x3c], 2
mov dword [esp + 0x34], ebp
mov eax, dword [esi]
mov edx, dword [eax + 0x1c]
push ecx
push esi
call edx
cmp eax, ebp
jl 0x100c0a34
lea ecx, [esp + 0x78]
call fcn.10056c80
mov byte [esp + 0x128], 0xa
lea ecx, [esp + 0x24]
call fcn.10003840
mov eax, dword [eax]
sub eax, 0x10
lea ecx, [esp + 0x90]
push eax
mov dword [esp + 0x18], ecx
call fcn.10004780
add eax, 0x10
add esp, 4
mov dword [esp + 0x90], eax
mov byte [esp + 0x128], 0xd
lea edx, [esp + 0xb0]
push edx
lea eax, [esp + 0x98]
push eax
lea ecx, [esp + 0x80]
call fcn.101ddff0
mov byte [esp + 0x128], 0x10
lea ecx, [esp + 0x90]
mov dword [esp + 0x14], ecx
mov byte [esp + 0x128], 0x10
mov eax, dword [esp + 0x90]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x100c0854
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x128], 0xf
lea ecx, [esp + 0x78]
push ecx
call edi
lea edx, [esp + 0xcc]
push edx
lea ecx, [esp + 0x98]
call fcn.101daa00
mov esi, eax
mov byte [esp + 0x128], 0x14
lea eax, [esp + 0xe8]
push eax
lea ecx, [esp + 0x98]
call fcn.101daa80
mov byte [esp + 0x128], 0x15
push ebp
push 0x10
mov dword [esp + 0x70], vtable.CAtlListBuilder_class_CFilePath__class_ATL::CElementTraits_class_CFilePath___class_ATL::CAtlList_class_CFilePath__class_ATL::CElementTraits_class_CFilePath___.0
mov dword [esp + 0x7c], ebx
mov dword [esp + 0x74], ebp
mov ecx, dword [ebx]
lea edx, [esp + 0x70]
push edx
mov dword [esp + 0x7c], ecx
push esi
mov ecx, eax
call fcn.101dcdb0
mov byte [esp + 0x128], 0x16
lea eax, [esp + 0x100]
mov dword [esp + 0x14], eax
mov byte [esp + 0x128], 0x16
mov eax, dword [esp + 0x100]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100c0901
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x128], 0x14
lea ecx, [esp + 0xe8]
push ecx
call edi
mov byte [esp + 0x128], 0x1a
lea edx, [esp + 0xe4]
mov dword [esp + 0x14], edx
mov byte [esp + 0x128], 0x1a
mov eax, dword [esp + 0xe4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100c0951
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x128], 0xf
lea ecx, [esp + 0xcc]
push ecx
call edi
mov byte [esp + 0x128], 0x1e
lea edx, [esp + 0xac]
mov dword [esp + 0x14], edx
mov byte [esp + 0x128], 0x1e
mov eax, dword [esp + 0xac]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100c09a1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x128], 9
lea ecx, [esp + 0x94]
push ecx
call edi
mov byte [esp + 0x128], 0x22
lea edx, [esp + 0x2c]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [esp + 0x128], 8
mov eax, dword [esp + 0x24]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100c09ee
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x128], 7
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x100c0a06
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x18]
inc dword [esp + 0x20]
lea edx, [esp + 0x14]
mov dword [esp + 0x14], ebp
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x28]
call eax
cmp eax, ebp
jge 0x100c0730
push ebp
push ebp
push 0x102b274a
push eax
call fcn.100048f0
push ebp
push 0x83
push 0x102c50ac
push eax
call fcn.100048f0
mov al, 0x26
mov byte [esp + 0x128], al
lea ecx, [esp + 0xc8]
mov dword [esp + 0x1c], ecx
mov byte [esp + 0x128], al
mov eax, dword [esp + 0xc8]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x100c0a83
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov byte [esp + 0x128], 4
lea ecx, [esp + 0xb0]
push ecx
call edi
mov byte [esp + 0x128], 0x2a
lea edx, [esp + 0x4c]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov byte [esp + 0x128], 3
mov eax, dword [esp + 0x44]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x100c0ad0
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov dword [esp + 0x128], 0xffffffff
mov eax, dword [esp + 0x18]
cmp eax, ebp
je 0x100c0aeb
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov ecx, dword [esp + 0x120]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
add esp, 0x11c
ret