Function at 0x1001c7a0
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1018e438
mov eax, dword fs:[0]
push eax
sub esp, 0x44
mov eax, dword [0x101f62b4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov eax, dword [ebp + 8]
lea ecx, [ebp - 0x28]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x48], eax
lea eax, [ebx + 0x60]
push eax
mov dword [ebp - 0x4c], edi
call fcn.10002700
push 0
lea eax, [edi + 4]
mov dword [ebp - 4], 0
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.100fd940
add esp, 0xc
call fcn.1004cb70
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x1001c834
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
mov cl, 1
setne al
jmp 0x1001c838
xor cl, cl
mov al, cl
xor edx, edx
movzx eax, al
test cl, cl
cmove eax, edx
test al, al
je 0x1001c87d
xorps xmm0, xmm0
mov dword [ebp - 0x2c], edx
movq qword [ebp - 0x34], xmm0
mov dword [ebp - 0x34], edx
mov dword [ebp - 0x30], edx
push ecx
push 1
push edx
push 1
push 1
lea edx, [ebp - 0x34]
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x28]
call fcn.100fe710
add esp, 0x14
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x34]
call fcn.1000ad70
push ecx
lea ecx, [ebp - 0x28]
call fcn.100fe260
add esp, 4
test al, al
jne 0x1001c8b1
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
cmovae eax, dword [ebp - 0x28]
push eax
push str.Unable_to_create_packageSet_folder_at_path:__s
push 0x101aee58
call fcn.1004cb70
push eax
call fcn.1004dbb0
add esp, 0x10
mov esi, dword [edi + 0x7c]
cmp esi, dword [edi + 0x80]
je 0x1001c9a8
mov edi, dword [esi]
cmp byte [edi + 0x110], 0
je 0x1001c984
lea ecx, [edi + 0x120]
lea eax, [ebp - 0x28]
cmp ecx, eax
je 0x1001c8ed
cmp dword [ebp - 0x14], 8
push dword [ebp - 0x18]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.10001d60
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
lea ecx, [edi + 4]
mov byte [ebp - 4], 2
cmp dword [ecx + 0x14], 0x10
jb 0x1001c910
mov ecx, dword [ecx]
push 0
lea edx, [ebp - 0x40]
call fcn.10101490
push 0
lea eax, [ebp - 0x40]
push eax
lea eax, [edi + 0x120]
push eax
call fcn.100fd940
add esp, 0x10
mov ecx, ebx
push dword [ebp - 0x48]
push edi
call fcn.1001cad0
mov edi, eax
mov dword [ebp - 0x50], edi
test edi, edi
jne 0x1001c9f3
mov byte [ebp - 4], al
mov edx, dword [ebp - 0x2c]
cmp edx, 8
jb 0x1001c984
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001c97a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001cac2
push edx
push ecx
call fcn.1015cbd5
add esp, 8
push 0
push dword [ebp - 0x48]
mov ecx, ebx
add esi, 4
call fcn.1001d6d0
mov edi, eax
test edi, edi
jne 0x1001c9b6
mov eax, dword [ebp - 0x4c]
cmp esi, dword [eax + 0x80]
jne 0x1001c8c0
push 0
push dword [ebp - 0x48]
mov ecx, ebx
call fcn.1001d6d0
mov edi, eax
mov edx, dword [ebp - 0x14]
cmp edx, 8
jb 0x1001ca9d
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001ca93
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001cabd
jmp 0x1001ca93
mov esi, dword [ebx + 0x50]
mov eax, dword [ebx + 0x54]
cmp esi, eax
je 0x1001ca4e
nop dword [eax]
mov ecx, dword [esi]
mov ecx, dword [ecx]
call fcn.1012d920
mov eax, dword [ebx + 0x54]
add esi, 8
cmp esi, eax
jne 0x1001ca00
mov esi, dword [ebx + 0x50]
cmp esi, eax
je 0x1001ca4e
nop word [eax + eax]
mov edi, dword [esi]
test edi, edi
je 0x1001ca43
mov ecx, dword [edi]
test ecx, ecx
je 0x1001ca32
push ecx
call fcn.1012ca00
push 4
push edi
mov dword [edi], 0
call fcn.1015cbd5
add esp, 8
add esi, 8
cmp esi, dword [ebx + 0x54]
jne 0x1001ca20
mov edi, dword [ebp - 0x50]
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebx + 0x50]
mov dword [ebx + 0x54], eax
cmp edx, 8
jb 0x1001c9b6
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001ca84
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1001cac2
push edx
push ecx
call fcn.1015cbd5
add esp, 8
jmp 0x1001c9b6
push edx
push ecx
call fcn.1015cbd5
add esp, 8
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1015c875
mov esp, ebp
pop ebp
ret 8
call fcn.101686f5
call fcn.101686f5
int3