Function at 0x1000e380
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1018d748
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x101f62b4]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, edx
mov dword [ebp - 0x18], edi
mov ebx, ecx
mov edx, dword [ebp + 8]
mov dword [ebp - 4], 0
mov dword [ebx], 0
cmp edi, 3
jne 0x1000e3ea
test edx, edx
jne 0x1000e3ea
push str.InstallPath_is_empty_while_path_type_is_PIM_PATH_TYPE_CUSTOM
push 0x101aee58
call fcn.1004cb70
push eax
call fcn.1004dbb0
add esp, 0xc
mov esi, edi
jmp 0x1000e68d
xor eax, eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 7
mov word [ebp - 0x30], ax
mov byte [ebp - 4], 1
cmp edi, 5
ja case.default.0x1000e40b
jmp dword [edi*4 + 0x1000e6ec]
lea edx, [ebp - 0x30]
lea ecx, [ebp - 0x18]
call fcn.10046030
test al, al
jne 0x1000e443
push str.Failed_to_get_ACF_Path
push 0x101aedac
call fcn.1004cb70
push eax
call fcn.1004d580
add esp, 0xc
mov esi, 1
jmp 0x1000e643
call fcn.1000cdb0
test al, al
je 0x1000e451
call fcn.100095f0
mov edi, dword [ebp - 0x18]
jmp 0x1000e5e7
lea edx, [ebp - 0x30]
lea ecx, [ebp - 0x18]
call fcn.10046030
test al, al
jne 0x1000e451
mov esi, 1
jmp 0x1000e643
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1000e477
sub ecx, esi
sar ecx, 1
push ecx
push edx
lea ecx, [ebp - 0x30]
call fcn.10001d60
lea ecx, [ebp - 0x30]
call fcn.100060e0
test al, al
je 0x1000e5e7
push str.Detected_Old_content_in_USF_trying_to_delete_it...
push 0x101aee58
call fcn.1004cb70
push eax
call fcn.1004db20
add esp, 4
lea ecx, [ebp - 0x30]
mov dl, 1
push 0
push 1
call fcn.1010a370
add esp, 0x10
test al, al
jne 0x1000e5cf
cmp dword [ebp - 0x1c], 8
lea eax, [ebp - 0x30]
cmovae eax, dword [ebp - 0x30]
push eax
push str.Failed_to_delete_Old_content_in__s.
push 0x101aee58
push ecx
call fcn.1004cb70
add esp, 4
push eax
call fcn.1004db20
push str.pim.db
lea edx, [ebp - 0x30]
lea ecx, [ebp - 0x48]
call fcn.1000b090
add esp, 0x14
mov byte [ebp - 4], 2
lea eax, [ebp - 0x48]
cmp dword [ebp - 0x34], 8
cmovae eax, dword [ebp - 0x48]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1000e58f
cmp dword [ebp - 0x34], 8
lea eax, [ebp - 0x48]
cmovae eax, dword [ebp - 0x48]
push eax
push str.pim_db_exists_at_path:__s.
push 0x101aee58
push ecx
call fcn.1004cb70
add esp, 4
push eax
call fcn.1004db20
mov edx, dword [ebp - 0x34]
add esp, 0x10
cmp edx, 8
jb 0x1000e585
mov ecx, dword [ebp - 0x48]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000e57b
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e6e1
push edx
push ecx
call fcn.1015cbd5
add esp, 8
mov esi, 1
jmp 0x1000e643
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x34]
cmp edx, 8
jb 0x1000e5e7
mov ecx, dword [ebp - 0x48]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000e5c3
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e6e1
push edx
push ecx
call fcn.1015cbd5
add esp, 8
jmp 0x1000e5e7
push str.Successfully_deleted_old_content...
push 0x101aedac
call fcn.1004cb70
push eax
call fcn.1004d400
add esp, 0xc
lea ecx, [ebp - 0x30]
call fcn.1000d100
mov esi, eax
test esi, esi
jne 0x1000e643
sub esp, 0x18
lea eax, [ebp + 0xc]
mov ecx, esp
push eax
call fcn.10002700
cmp dword [ebp - 0x1c], 8
lea edx, [ebp - 0x30]
push esi
cmovae edx, dword [ebp - 0x30]
mov ecx, ebx
call fcn.1000dda0
mov esi, eax
add esp, 0x1c
test esi, esi
jne 0x1000e643
mov eax, dword [ebx]
mov dword [eax + 4], edi
jmp 0x1000e643
push str.Invalid_arguments_in_pim_createLibraryRefWithType
push 0x101aedac
call fcn.1004cb70
push eax
call fcn.1004d580
add esp, 0xc
mov esi, 3
mov edx, dword [ebp - 0x1c]
cmp edx, 8
jb 0x1000e679
mov ecx, dword [ebp - 0x30]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000e66f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e6e6
push edx
push ecx
call fcn.1015cbd5
add esp, 8
xor eax, eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 7
mov word [ebp - 0x30], ax
mov edx, dword [ebp + 0x20]
cmp edx, 8
jb 0x1000e6c3
mov ecx, dword [ebp + 0xc]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1000e6b9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000e6e6
push edx
push ecx
call fcn.1015cbd5
add esp, 8
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1015c875
mov esp, ebp
pop ebp
in eax, 0x5d
ret
call fcn.101686f5
call fcn.101686f5
nop
adc ah, ah
add byte [eax], dl
pop ecx
in al, 0
adc byte [ecx - 0x1c], bl
add byte [eax], dl
jb 0x1000e6de
add byte [eax], dl
pop ecx
in al, 0
adc byte [ecx - 0x1c], bl
add byte [eax], dl
int3