Function at 0x1006560
Capabilities:
Check if file exists
Get common file path
Get disk information
Get file attributes
Set file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x120
push 0
push 0
push 0x10013ac
call fcn.01005040
mov dword [ebp - 0x110], eax
mov eax, dword [ebp - 0x110]
add eax, 1
push eax
push 0x40
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x10065bd
push 0
push 0x10
push 0
push 0
push 0x4b5
push 0
call fcn.01004e90
call fcn.01007810
mov dword [0x100e704], eax
xor eax, eax
jmp 0x1006921
mov ecx, dword [ebp - 0x110]
push ecx
mov edx, dword [ebp - 4]
push edx
push 0x10013ac
call fcn.01005040
test eax, eax
jne 0x1006605
push 0
push 0x10
push 0
push 0
push 0x4b1
push 0
call fcn.01004e90
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov dword [0x100e704], 0x80070714
xor eax, eax
jmp 0x1006921
push 0x100138c
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpA]
test eax, eax
jne 0x1006622
mov dword [0x100e6d0], 1
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_LocalFree]
movsx eax, byte [0x100dbbe]
test eax, eax
je 0x10066a1
movsx ecx, byte [0x100dbbe]
cmp ecx, 0x5c
jne 0x100665b
movsx edx, byte [0x100dbbf]
cmp edx, 0x5c
jne 0x100665b
mov dword [ebp - 0x118], 0
jmp 0x1006665
mov dword [ebp - 0x118], 1
mov eax, dword [ebp - 0x118]
push eax
push 0
push 0x100dbbe
call fcn.010063e0
test eax, eax
je 0x1006686
mov eax, 1
jmp 0x1006921
push 0
push 0x10
push 0
push 0
push 0x4be
push 0
call fcn.01004e90
xor eax, eax
jmp 0x1006921
cmp dword [0x100daa4], 0
jne 0x10066b3
cmp dword [0x100e6d0], 0
je 0x10066e0
push 0
push 0
push 0x1003600
push 0
push 0x7d2
mov ecx, dword [0x100e6dc]
push ecx
call fcn.01007b80
mov dword [ebp - 0x10c], eax
mov eax, dword [ebp - 0x10c]
jmp 0x1006921
push 0x100de84
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
je 0x100673a
push 3
push 1
push 0x100de84
call fcn.010063e0
test eax, eax
je 0x1006710
mov eax, 1
jmp 0x1006921
push 0x100de84
call fcn.01002740
test eax, eax
jne 0x100673a
push 1
push 1
push 0x100de84
call fcn.010063e0
test eax, eax
je 0x100673a
mov eax, 1
jmp 0x1006921
push 0x1001488
lea edx, [ebp - 0x108]
push edx
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
movsx eax, byte [ebp - 0x108]
cmp eax, 0x5a
jg 0x10068f5
mov dword [ebp - 0x11c], 0
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_GetDriveTypeA]
mov dword [ebp - 0x120], eax
cmp dword [ebp - 0x120], 6
je 0x100678b
cmp dword [ebp - 0x120], 3
jne 0x100679d
lea edx, [ebp - 0x108]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x100680c
cmp dword [ebp - 0x120], 2
jne 0x10067d9
movsx eax, byte [ebp - 0x108]
cmp eax, 0x41
je 0x10067d9
movsx ecx, byte [ebp - 0x108]
cmp ecx, 0x42
je 0x10067d9
lea edx, [ebp - 0x108]
push edx
call fcn.01007e80
mov dword [ebp - 0x11c], eax
cmp dword [ebp - 0x11c], 0
jne 0x10067ec
mov al, byte [ebp - 0x108]
add al, 1
mov byte [ebp - 0x108], al
jmp 0x100674c
cmp dword [ebp - 0x11c], 0x19000
jae 0x100680c
mov cl, byte [ebp - 0x108]
add cl, 1
mov byte [ebp - 0x108], cl
jmp 0x100674c
push 0
push 3
lea edx, [ebp - 0x108]
push edx
call fcn.01006a20
test eax, eax
jne 0x1006858
lea eax, [ebp - 0x108]
push eax
call fcn.01002740
test eax, eax
jne 0x1006844
push 0
push 1
lea ecx, [ebp - 0x108]
push ecx
call fcn.01006a20
test eax, eax
jne 0x1006858
mov dl, byte [ebp - 0x108]
add dl, 1
mov byte [ebp - 0x108], dl
jmp 0x100674c
lea eax, [ebp - 0x108]
push eax
call fcn.01002740
test eax, eax
je 0x100687a
push 0x104
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x1001478
lea edx, [ebp - 0x108]
push edx
call fcn.01007d60
lea eax, [ebp - 0x108]
push eax
call fcn.01002700
test eax, eax
jne 0x10068b6
mov cl, byte [ebp - 0x108]
add cl, 1
mov byte [ebp - 0x108], cl
mov byte [ebp - 0x105], 0
jmp 0x100674c
push 2
lea edx, [ebp - 0x108]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea eax, [ebp - 0x108]
push eax
push 0x100de84
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0
push 1
push 0x100de84
call fcn.010063e0
test eax, eax
je 0x10068f0
mov eax, 1
jmp 0x1006921
jmp 0x100674c
push 0x104
lea ecx, [ebp - 0x108]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 4
push 3
lea edx, [ebp - 0x108]
push edx
call fcn.01006a20
test eax, eax
jne 0x100673a
xor eax, eax
mov esp, ebp
pop ebp
ret