Function at 0x1019a10
Capabilities:
Check if file exists
Resolve function by parsing pe exports

Disassembly:
push 0x28
mov eax, 0x101ea1d
call fcn.01001448
mov ebx, ecx
mov dword [ebp - 0x20], ebx
lea ecx, [ebx + 0x1c]
xor esi, esi
call fcn.01001b0e
mov edi, dword [ebp + 8]
test eax, eax
je 0x1019a50
mov eax, dword [ebx + 0x1c]
test eax, eax
je 0x1019a3d
mov eax, dword [eax]
jmp 0x1019a3f
xor eax, eax
mov ecx, dword [edi]
push eax
push edi
call dword [ecx + 0x78]
mov esi, eax
test esi, esi
jl 0x1019c35
lea ecx, [ebx + 0x20]
call fcn.01001b0e
test eax, eax
je 0x1019a7d
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x1019a67
mov eax, dword [eax]
jmp 0x1019a69
xor eax, eax
mov ecx, dword [edi]
push eax
push edi
call dword [ecx + 0x80]
mov esi, eax
test esi, esi
jl 0x1019c35
lea ecx, [ebx + 0x34]
call fcn.01001b0e
test eax, eax
je 0x1019aaa
mov eax, dword [ebx + 0x34]
test eax, eax
je 0x1019a94
mov eax, dword [eax]
jmp 0x1019a96
xor eax, eax
mov ecx, dword [edi]
push eax
push edi
call dword [ecx + 0x88]
mov esi, eax
test esi, esi
jl 0x1019c35
lea ecx, [ebx + 0x2c]
call fcn.01001b0e
test eax, eax
je 0x1019ad4
mov eax, dword [ebx + 0x2c]
test eax, eax
je 0x1019ac1
mov eax, dword [eax]
jmp 0x1019ac3
xor eax, eax
mov ecx, dword [edi]
push eax
push edi
call dword [ecx + 0x64]
mov esi, eax
test esi, esi
jl 0x1019c35
lea ecx, [ebx + 0x30]
call fcn.01001b0e
test eax, eax
je 0x1019afe
mov eax, dword [ebx + 0x30]
test eax, eax
je 0x1019aeb
mov eax, dword [eax]
jmp 0x1019aed
xor eax, eax
mov ecx, dword [edi]
push eax
push edi
call dword [ecx + 0x38]
mov esi, eax
test esi, esi
jl 0x1019c35
lea ecx, [ebx + 0x24]
call fcn.01001b0e
test eax, eax
je 0x1019b28
mov eax, dword [ebx + 0x24]
test eax, eax
je 0x1019b15
mov eax, dword [eax]
jmp 0x1019b17
xor eax, eax
mov ecx, dword [edi]
push eax
push edi
call dword [ecx + 0x28]
mov esi, eax
test esi, esi
jl 0x1019c35
lea ecx, [ebx + 0x28]
call fcn.01001b0e
test eax, eax
je 0x1019b52
mov eax, dword [ebx + 0x28]
test eax, eax
je 0x1019b3f
mov eax, dword [eax]
jmp 0x1019b41
xor eax, eax
mov ecx, dword [edi]
push eax
push edi
call dword [ecx + 0x20]
mov esi, eax
test esi, esi
jl 0x1019c35
lea ecx, [ebx + 0x38]
call fcn.0101b867
test eax, eax
je 0x1019be5
and dword [ebp + 8], 0
lea ecx, [ebx + 0x38]
call fcn.0101b867
test eax, eax
jbe 0x1019be5
mov ecx, dword [ebp + 8]
mov eax, dword [ebx + 0x3c]
shl ecx, 2
add eax, ecx
mov eax, dword [eax]
test eax, eax
je 0x1019b87
mov eax, dword [eax]
jmp 0x1019b89
xor eax, eax
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1019bd5
xor edx, edx
mov dword [ebp - 0x18], edx
mov ecx, dword [ebp + 8]
mov eax, dword [ebx + 0x3c]
shl ecx, 2
add eax, ecx
mov eax, dword [eax]
mov dword [ebp - 4], edx
cmp eax, edx
je 0x1019bb1
mov eax, dword [eax]
jmp 0x1019bb3
xor eax, eax
mov ecx, dword [edi]
lea esi, [ebp - 0x18]
push esi
push edx
push edx
push eax
push edi
call dword [ecx + 0xd8]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
mov esi, eax
call fcn.010015aa
test esi, esi
jl 0x1019c35
inc dword [ebp + 8]
lea ecx, [ebx + 0x38]
call fcn.0101b867
cmp dword [ebp + 8], eax
jb 0x1019b72
lea ecx, [ebx + 0x48]
call fcn.0101b867
test eax, eax
je 0x1019c35
and dword [ebp + 8], 0
mov eax, dword [edi]
lea ecx, [ebp + 8]
push ecx
push edi
mov dword [ebp - 4], 1
call dword [eax + 0xc8]
mov esi, eax
test esi, esi
jl 0x1019c29
xor edi, edi
lea ecx, [ebx + 0x48]
mov dword [ebp - 0x18], edi
call fcn.0101b867
test eax, eax
ja 0x1019c45
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x38]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp + 8]
call fcn.010015aa
mov eax, esi
call fcn.0100165f
ret 4
mov edi, dword [ebp - 0x18]
mov ebx, dword [ebp - 0x20]
and dword [ebp - 0x14], 0
lea ecx, [ebx + 0x58]
mov byte [ebp - 4], 2
call fcn.0101b867
cmp edi, eax
jae 0x1019c68
mov eax, dword [ebx + 0x5c]
lea eax, [eax + edi*4]
push eax
lea ecx, [ebp - 0x14]
call fcn.010060e1
mov eax, dword [ebx + 0x4c]
lea eax, [eax + edi*4]
push eax
push 0x1019d48
lea eax, [ebp - 0x10]
push eax
call fcn.010091d9
lea eax, [ebp - 0x14]
push eax
lea ecx, [ebp - 0x34]
mov byte [ebp - 4], 3
call fcn.01018b57
mov edx, dword [ebp - 0x10]
mov ecx, dword [ebp + 8]
mov byte [ebp - 4], 4
mov dword [ebp - 0x24], ecx
test edx, edx
je 0x1019ca5
mov edx, dword [edx]
mov dword [ebp - 0x1c], edx
jmp 0x1019ca9
and dword [ebp - 0x1c], 0
mov ebx, dword [ecx]
sub esp, 0x10
mov edi, esp
mov esi, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0x40
lea ecx, [ebp - 0x14]
add ebx, 0x34
movsd dword es:[edi], dword [esi]
call fcn.01001b0e
add eax, eax
push eax
push 8
push dword [ebp - 0x1c]
push dword [ebp - 0x24]
call dword [ebx]
mov esi, eax
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 3
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
push eax
call fcn.010033fa
mov ecx, dword [ebp - 0x10]
test esi, esi
jl 0x1019d26
test ecx, ecx
je 0x1019cfa
call fcn.01001a04
and dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x14]
mov byte [ebp - 4], 1
test ecx, ecx
je 0x1019d0a
call fcn.01001a04
mov ecx, dword [ebp - 0x20]
inc dword [ebp - 0x18]
add ecx, 0x48
call fcn.0101b867
cmp dword [ebp - 0x18], eax
jae 0x1019c20
jmp 0x1019c3f
test ecx, ecx
je 0x1019d33
call fcn.01001a04
and dword [ebp - 0x10], 0
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x1019c29
call fcn.01001a04
jmp 0x1019c29