Function at 0x44ac75
Capabilities:
Get disk size

Disassembly:
push ebp
lea ebp, [esp - 0x64c]
sub esp, 0x6cc
mov eax, dword [0x4c3a10]
xor eax, ebp
mov dword [ebp + 0x648], eax
push ebx
push esi
push edi
push 0x2d9
mov esi, ecx
call fcn.0044481d
mov ecx, eax
call fcn.00445a9c
lea edi, [esi + 0x4c]
push 0x4b31c8
mov ecx, edi
call fcn.00401a3e
mov ecx, dword [esi + 0x44]
push edi
call fcn.0042151d
cmp dword [esi + 0x60], 0xa0
jbe 0x44ad56
push 0x50
call fcn.00476774
xor ebx, ebx
pop ecx
cmp eax, ebx
je 0x44ace5
mov ecx, eax
call fcn.0044e344
mov dword [ebp - 0x50], eax
jmp 0x44ace8
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438da9
push 1
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov edi, dword [sym.imp.USER32.dll_EnableWindow]
push ebx
push dword [esi + 4]
call edi
push ebx
push 0x4aa744
mov ecx, dword [esi + 0x24]
xor eax, eax
inc eax
push eax
mov dword [ecx + 0x7c], eax
push 3
push dword [esi + 0x24]
lea ecx, [ebp - 0x4c]
call fcn.00448ee5
mov eax, dword [ebp - 0x50]
push ebx
push dword [eax + 4]
lea ecx, [ebp - 0x4c]
call fcn.00438d77
push 1
push dword [esi + 4]
call edi
mov eax, dword [esi + 0x24]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0x7c], ebx
call fcn.00447e22
xor eax, eax
inc eax
jmp 0x44b297
xor eax, eax
push 0x206
mov word [ebp + 0x238], ax
xor ebx, ebx
lea eax, [ebp + 0x23a]
push ebx
push eax
call fcn.004766d0
push 0x208
lea eax, [ebp + 0x238]
push ebx
push eax
call fcn.004766d0
mov ecx, dword [esi + 0x60]
mov eax, 0x104
add esp, 0x18
cmp ecx, eax
jae 0x44ad96
mov eax, ecx
cmp dword [edi + 0x18], 8
jb 0x44ada1
mov ecx, dword [edi + 4]
jmp 0x44ada4
lea ecx, [edi + 4]
inc eax
push eax
push ecx
lea eax, [ebp + 0x238]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCpyNW]
lea eax, [ebp + 0x238]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveBlanksW]
lea eax, [ebp + 0x238]
push eax
mov ecx, edi
call fcn.00401a3e
cmp dword [esi + 0x60], ebx
jbe 0x44aedd
mov eax, dword [esi + 0x60]
dec eax
push eax
mov ecx, edi
call fcn.00403108
cmp word [eax], 0x5c
je 0x44adfe
mov eax, dword [esi + 0x60]
dec eax
push eax
mov ecx, edi
call fcn.00403108
push 0x2f
pop ecx
cmp word [eax], cx
jne 0x44ae2c
lea eax, [ebp - 0x59]
push eax
mov eax, dword [esi + 0x60]
dec eax
push eax
push ebx
push edi
lea ecx, [ebp - 0x80]
call fcn.0040809a
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x80]
push eax
mov ecx, edi
call fcn.004019ab
push ebx
push 1
lea ecx, [ebp - 0x80]
call fcn.00401a62
jmp 0x44add8
push 1
push ebx
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], ecx
push eax
mov ecx, edi
call fcn.0040dd37
mov dword [ebp - 0x50], eax
cmp eax, 0xffffffff
je 0x44ae76
mov dword [ebp - 0x54], 0x2f
push dword [ebp - 0x50]
mov ecx, edi
call fcn.00403108
push 0x5c
pop ecx
mov word [eax], cx
mov eax, dword [ebp - 0x50]
push 1
inc eax
push eax
lea eax, [ebp - 0x54]
push eax
mov ecx, edi
call fcn.0040dd37
mov dword [ebp - 0x50], eax
cmp eax, 0xffffffff
jne 0x44ae4c
push 1
push ebx
lea eax, [ebp - 0x54]
push eax
mov ecx, edi
mov dword [ebp - 0x54], 0x5c
call fcn.0040dd37
push 1
push eax
mov dword [ebp - 0x50], eax
lea eax, [ebp - 0x54]
push eax
mov ecx, edi
mov dword [ebp - 0x54], 0x5c
call fcn.0040dd37
cmp eax, 0xffffffff
je 0x44aedd
mov dword [ebp - 0x54], 0x5c
mov ecx, dword [ebp - 0x50]
inc ecx
cmp eax, ecx
jne 0x44aec3
push 1
push eax
mov ecx, edi
call fcn.00401c69
jmp 0x44aec6
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0x50]
push 1
inc eax
push eax
lea eax, [ebp - 0x54]
push eax
mov ecx, edi
call fcn.0040dd37
cmp eax, 0xffffffff
jne 0x44aeaf
cmp dword [edi + 0x18], 8
jb 0x44aee8
mov eax, dword [edi + 4]
jmp 0x44aeeb
lea eax, [edi + 4]
push eax
call dword [sym.imp.SHLWAPI.dll_PathGetDriveNumberW]
cbw
add ax, 0x41
movzx eax, ax
mov dword [ebp - 0x54], eax
xor eax, eax
push 0x206
mov word [ebp + 0x30], ax
lea eax, [ebp + 0x32]
push ebx
push eax
call fcn.004766d0
movzx eax, word [ebp - 0x54]
push eax
lea eax, [ebp + 0x30]
push str._c:_
push eax
call fcn.00476f05
lea eax, [ebp - 0x64]
add esp, 0x18
push eax
mov dword [ebp - 0x64], ebx
call fcn.00403c57
mov ecx, eax
call fcn.00403ce1
lea eax, [ebp + 0x30]
push eax
mov ecx, esi
call fcn.0044930d
test eax, eax
je 0x44af63
push ebx
push ebx
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp + 0x30]
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
mov eax, dword [ebp - 0x58]
or eax, dword [ebp - 0x54]
jne 0x44afae
push 0x50
call fcn.00476774
pop ecx
cmp eax, ebx
je 0x44af7b
mov ecx, eax
call fcn.0044e344
mov dword [ebp - 0x50], eax
jmp 0x44af7e
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438da9
push 1
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov edi, dword [sym.imp.USER32.dll_EnableWindow]
push ebx
push dword [esi + 4]
call edi
push ebx
push 0x4aa71c
jmp 0x44ad13
mov eax, dword [ebp - 0x64]
cdq
cmp edx, dword [ebp - 0x54]
jb 0x44b009
ja 0x44afbe
cmp eax, dword [ebp - 0x58]
jbe 0x44b009
push 0x50
call fcn.00476774
pop ecx
cmp eax, ebx
je 0x44afd6
mov ecx, eax
call fcn.0044e344
mov dword [ebp - 0x50], eax
jmp 0x44afd9
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438da9
push 1
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov edi, dword [sym.imp.USER32.dll_EnableWindow]
push ebx
push dword [esi + 4]
call edi
push ebx
push 0x4aa6e0
jmp 0x44ad13
push ebx
push 0x4b4100
mov ecx, edi
call fcn.00411cab
mov ecx, dword [esi + 0x60]
dec ecx
cmp eax, ecx
jae 0x44b03f
inc eax
push eax
mov ecx, edi
mov dword [ebp - 0x54], eax
call fcn.00403108
cmp word [eax], 0x5c
je 0x44b03f
push 0x4b30a0
push dword [ebp - 0x54]
mov ecx, edi
call fcn.00449c2a
push ebx
push 0x4b30a0
mov ecx, edi
call fcn.00411cab
cmp eax, 0xffffffff
jne 0x44b0c2
push ebx
push 0x4b4148
mov ecx, edi
call fcn.00411cab
cmp eax, 0xffffffff
jne 0x44b0c2
xor eax, eax
push 0x206
mov word [ebp + 0x440], ax
lea eax, [ebp + 0x442]
push ebx
push eax
call fcn.004766d0
push 0x208
lea eax, [ebp + 0x440]
push ebx
push eax
call fcn.004766d0
add esp, 0x18
cmp dword [edi + 0x18], 8
jb 0x44b09e
mov eax, dword [edi + 4]
jmp 0x44b0a1
lea eax, [edi + 4]
push 0x4aa6c0
push eax
lea eax, [ebp + 0x440]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [ebp + 0x440]
push eax
mov ecx, edi
call fcn.00401a3e
cmp dword [edi + 0x18], 8
jb 0x44b0cd
mov eax, dword [edi + 4]
jmp 0x44b0d0
lea eax, [edi + 4]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsRootW]
test eax, eax
je 0x44b13a
xor eax, eax
push 0x206
mov word [ebp + 0x440], ax
lea eax, [ebp + 0x442]
push ebx
push eax
call fcn.004766d0
push 0x208
lea eax, [ebp + 0x440]
push ebx
push eax
call fcn.004766d0
add esp, 0x18
cmp dword [edi + 0x18], 8
jb 0x44b116
mov eax, dword [edi + 4]
jmp 0x44b119
lea eax, [edi + 4]
push 0x4aa6c0
push eax
lea eax, [ebp + 0x440]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [ebp + 0x440]
push eax
mov ecx, edi
call fcn.00401a3e
cmp dword [edi + 0x18], 8
mov dword [ebp - 0x60], ebx
jb 0x44b148
mov eax, dword [edi + 4]
jmp 0x44b14b
lea eax, [edi + 4]
lea ecx, [ebp - 0x60]
push ecx
push eax
call fcn.00403315
pop ecx
pop ecx
cmp dword [ebp - 0x60], ebx
je 0x44b205
mov ecx, esi
call fcn.0044a6d7
test eax, eax
je 0x44b202
push 0x50
call fcn.00476774
pop ecx
cmp eax, ebx
je 0x44b187
mov ecx, eax
call fcn.0044e344
mov dword [ebp - 0x50], eax
jmp 0x44b18a
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438da9
push 1
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov edi, dword [sym.imp.USER32.dll_EnableWindow]
push ebx
push dword [esi + 4]
call edi
mov eax, dword [esi + 0x24]
push ebx
push 0x4aa650
push 5
push 3
mov dword [eax + 0x7c], 1
push dword [esi + 0x24]
lea ecx, [ebp - 0x4c]
call fcn.00448ee5
mov eax, dword [ebp - 0x50]
push ebx
push dword [eax + 4]
lea ecx, [ebp - 0x4c]
call fcn.00438d77
mov eax, dword [ebp + 0x20]
push 1
push dword [esi + 4]
mov dword [ebp - 0x54], eax
call edi
mov eax, dword [esi + 0x24]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0x7c], ebx
call fcn.00447e22
cmp dword [ebp - 0x54], 7
je 0x44ad4e
push ebx
jmp 0x44b26b
cmp dword [edi + 0x18], 8
jb 0x44b210
mov edi, dword [edi + 4]
jmp 0x44b213
add edi, 4
push edi
call fcn.00403347
pop ecx
test eax, eax
je 0x44b269
push 0x50
call fcn.00476774
pop ecx
cmp eax, ebx
je 0x44b236
mov ecx, eax
call fcn.0044e344
mov dword [ebp - 0x50], eax
jmp 0x44b239
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438da9
push 1
push dword [edi + 4]
call dword [sym.imp.USER32.dll_ShowWindow]
mov edi, dword [sym.imp.USER32.dll_EnableWindow]
push ebx
push dword [esi + 4]
call edi
push ebx
push 0x4aa628
jmp 0x44ad13
push 1
call fcn.00403c57
mov ecx, eax
call fcn.00403d23
push ebx
call fcn.004399ea
mov ecx, eax
call fcn.004322f7
mov ecx, dword [esi + 0x24]
push ebx
call fcn.004466ec
mov ecx, dword [esi + 0x24]
call fcn.00446997
xor eax, eax
mov ecx, dword [ebp + 0x648]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0047674a
add ebp, 0x64c
leave
ret 0x10