Function at 0x1002b1f6
Capabilities:
Get disk information
Get disk size

Disassembly:
push 0x7c
mov eax, 0x10050bbe
call fcn.1003b89c
mov edi, dword [ebp + 8]
push str.bakpath
push str.Softwareprojonepodlpdlpcore_
mov esi, reloc.OLEAUT32.dll_SysReAllocString
lea eax, [ebp - 0x2c]
push esi
xor ebx, ebx
push eax
mov dword [ebp - 0x6c], edi
mov dword [ebp - 0x78], ebx
call fcn.100043df
add esp, 0x10
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x18], ebx
je 0x1002b265
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x1002b23d
lea eax, [ebp - 0x28]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
je 0x1002b265
lea eax, [ebp - 0x2c]
push eax
mov ecx, edi
call fcn.10004b0e
push ebx
push 1
lea ecx, [ebp - 0x2c]
call fcn.10005a26
mov eax, edi
jmp 0x1002b3ff
call dword [sym.imp.KERNEL32.dll_GetLogicalDrives]
mov dword [ebp - 0x78], eax
xor eax, eax
lea edi, [ebp - 0x7c]
mov dword [ebp - 0x80], ebx
mov byte [ebp - 0x65], bl
stosd dword es:[edi], eax
mov dword [ebp - 0x70], ebx
mov ecx, dword [ebp - 0x70]
xor edi, edi
inc edi
mov eax, edi
shl eax, cl
mov ecx, dword [ebp - 0x78]
test ecx, eax
je 0x1002b37f
mov al, byte [ebp - 0x70]
add al, 0x61
mov byte [ebp - 0x74], al
cbw
movzx eax, ax
push eax
lea eax, [ebp - 0x48]
push str._c:_
push eax
call fcn.10004194
add esp, 0xc
cmp dword [ebp - 0x30], 8
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 1
jae 0x1002b2c1
lea eax, [ebp - 0x44]
push eax
call dword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 3
jne 0x1002b372
lea eax, [ebp - 0x66]
push eax
push dword [ebp - 0x74]
mov byte [ebp - 0x66], bl
call fcn.1000a925
pop ecx
pop ecx
test al, al
je 0x1002b2ef
cmp byte [ebp - 0x66], bl
jne 0x1002b372
movsx eax, byte [ebp - 0x74]
push eax
lea eax, [ebp - 0x64]
push str._c:podlp_backup
push eax
call fcn.10004194
add esp, 0xc
cmp dword [ebp - 0x4c], 8
mov eax, dword [ebp - 0x60]
mov byte [ebp - 4], 2
jae 0x1002b315
lea eax, [ebp - 0x60]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
jne 0x1002b405
cmp dword [ebp - 0x30], 8
mov eax, dword [ebp - 0x44]
jae 0x1002b330
lea eax, [ebp - 0x44]
lea ecx, [ebp - 0x88]
push ecx
push ebx
push ebx
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
test eax, eax
je 0x1002b368
mov eax, dword [ebp - 0x84]
cmp eax, dword [ebp - 0x7c]
jb 0x1002b368
mov ecx, dword [ebp - 0x88]
ja 0x1002b35c
cmp ecx, dword [ebp - 0x80]
jbe 0x1002b368
mov dl, byte [ebp - 0x74]
mov byte [ebp - 0x65], dl
mov dword [ebp - 0x80], ecx
mov dword [ebp - 0x7c], eax
push ebx
push edi
lea ecx, [ebp - 0x64]
call fcn.10005a26
push ebx
push edi
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.10005a26
inc dword [ebp - 0x70]
cmp dword [ebp - 0x70], 0x1a
jl 0x1002b27d
cmp byte [ebp - 0x65], bl
je 0x1002b3e6
movsx ax, byte [ebp - 0x65]
movzx eax, ax
push eax
lea eax, [ebp - 0x48]
push str._c:podlp_backup
push eax
call fcn.10004194
add esp, 0xc
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 3
call fcn.100058fb
push ebx
push edi
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], bl
call fcn.10005a26
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x1002b3d4
lea eax, [ebp - 0x28]
push ebx
push eax
push str.bakpath
push str.Softwareprojonepodlpdlpcore_
push esi
call fcn.10004305
mov ecx, dword [ebp - 0x6c]
lea eax, [ebp - 0x2c]
push eax
call fcn.10004b0e
push ebx
push edi
lea ecx, [ebp - 0x2c]
call fcn.10005a26
mov eax, dword [ebp - 0x6c]
call fcn.1003b91f
ret
cmp dword [ebp - 0x4c], 8
mov eax, dword [ebp - 0x60]
jae 0x1002b411
lea eax, [ebp - 0x60]
push ebx
push eax
push str.bakpath
push str.Softwareprojonepodlpdlpcore_
push esi
call fcn.10004305
mov ecx, dword [ebp - 0x6c]
lea eax, [ebp - 0x64]
push eax
call fcn.10004b0e
push ebx
push edi
lea ecx, [ebp - 0x64]
call fcn.10005a26
push ebx
push edi
lea ecx, [ebp - 0x48]
call fcn.10005a26
jmp 0x1002b3f2