Function at 0x44b2b2
Capabilities:
Get disk size

Disassembly:
push ebp
lea ebp, [esp - 0x644]
sub esp, 0x6c4
mov eax, dword [0x4c3a60]
xor eax, ebp
mov dword [ebp + 0x640], eax
push ebx
push esi
push edi
push 0x2d9
mov esi, ecx
call fcn.004446a8
mov ecx, eax
call fcn.00445251
lea edi, [esi + 0x4c]
push 0x4b3140
mov ecx, edi
call fcn.00401aaf
mov ecx, dword [esi + 0x44]
push edi
call fcn.004218a0
cmp dword [esi + 0x60], 0xa0
jbe 0x44b393
push 0x50
call fcn.00476d64
xor ebx, ebx
pop ecx
cmp eax, ebx
je 0x44b322
mov ecx, eax
call fcn.0044ea1b
mov dword [ebp - 0x50], eax
jmp 0x44b325
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438f81
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 0x4ac874
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.0044966c
mov eax, dword [ebp - 0x50]
push ebx
push dword [eax + 4]
lea ecx, [ebp - 0x4c]
call fcn.00438f1d
push 1
push dword [esi + 4]
call edi
mov eax, dword [esi + 0x24]
lea ecx, [ebp - 0x4c]
mov dword [eax + 0x7c], ebx
call fcn.004491a6
xor eax, eax
inc eax
jmp 0x44b8d4
xor eax, eax
push 0x206
mov word [ebp + 0x230], ax
xor ebx, ebx
lea eax, [ebp + 0x232]
push ebx
push eax
call fcn.00476cc0
push 0x208
lea eax, [ebp + 0x230]
push ebx
push eax
call fcn.00476cc0
mov ecx, dword [esi + 0x60]
mov eax, 0x104
add esp, 0x18
cmp ecx, eax
jae 0x44b3d3
mov eax, ecx
cmp dword [edi + 0x18], 8
jb 0x44b3de
mov ecx, dword [edi + 4]
jmp 0x44b3e1
lea ecx, [edi + 4]
inc eax
push eax
push ecx
lea eax, [ebp + 0x230]
push eax
call dword [sym.imp.SHLWAPI.dll_StrCpyNW]
lea eax, [ebp + 0x230]
push eax
call dword [sym.imp.SHLWAPI.dll_PathRemoveBlanksW]
lea eax, [ebp + 0x230]
push eax
mov ecx, edi
call fcn.00401aaf
cmp dword [esi + 0x60], ebx
jbe 0x44b51a
mov eax, dword [esi + 0x60]
dec eax
push eax
mov ecx, edi
call fcn.0040317f
cmp word [eax], 0x5c
je 0x44b43b
mov eax, dword [esi + 0x60]
dec eax
push eax
mov ecx, edi
call fcn.0040317f
push 0x2f
pop ecx
cmp word [eax], cx
jne 0x44b469
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.0040819e
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x80]
push eax
mov ecx, edi
call fcn.00401a1c
push ebx
push 1
lea ecx, [ebp - 0x80]
call fcn.00401ad3
jmp 0x44b415
push 1
push ebx
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], ecx
push eax
mov ecx, edi
call fcn.0040e2e3
mov dword [ebp - 0x50], eax
cmp eax, 0xffffffff
je 0x44b4b3
mov dword [ebp - 0x54], 0x2f
push dword [ebp - 0x50]
mov ecx, edi
call fcn.0040317f
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.0040e2e3
mov dword [ebp - 0x50], eax
cmp eax, 0xffffffff
jne 0x44b489
push 1
push ebx
lea eax, [ebp - 0x54]
push eax
mov ecx, edi
mov dword [ebp - 0x54], 0x5c
call fcn.0040e2e3
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.0040e2e3
cmp eax, 0xffffffff
je 0x44b51a
mov dword [ebp - 0x54], 0x5c
mov ecx, dword [ebp - 0x50]
inc ecx
cmp eax, ecx
jne 0x44b500
push 1
push eax
mov ecx, edi
call fcn.00401cda
jmp 0x44b503
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.0040e2e3
cmp eax, 0xffffffff
jne 0x44b4ec
cmp dword [edi + 0x18], 8
jb 0x44b525
mov eax, dword [edi + 4]
jmp 0x44b528
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 + 0x28], ax
lea eax, [ebp + 0x2a]
push ebx
push eax
call fcn.00476cc0
movzx eax, word [ebp - 0x54]
push eax
lea eax, [ebp + 0x28]
push str._c:_
push eax
call fcn.004774f5
lea eax, [ebp - 0x64]
add esp, 0x18
push eax
mov dword [ebp - 0x64], ebx
call fcn.00403cce
mov ecx, eax
call fcn.00403d6e
lea eax, [ebp + 0x28]
push eax
mov ecx, esi
call fcn.00449a3f
test eax, eax
je 0x44b5a0
push ebx
push ebx
lea eax, [ebp - 0x58]
push eax
lea eax, [ebp + 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExW]
mov eax, dword [ebp - 0x58]
or eax, dword [ebp - 0x54]
jne 0x44b5eb
push 0x50
call fcn.00476d64
pop ecx
cmp eax, ebx
je 0x44b5b8
mov ecx, eax
call fcn.0044ea1b
mov dword [ebp - 0x50], eax
jmp 0x44b5bb
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438f81
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 0x4ac84c
jmp 0x44b350
mov eax, dword [ebp - 0x64]
cdq
cmp edx, dword [ebp - 0x54]
jb 0x44b646
ja 0x44b5fb
cmp eax, dword [ebp - 0x58]
jbe 0x44b646
push 0x50
call fcn.00476d64
pop ecx
cmp eax, ebx
je 0x44b613
mov ecx, eax
call fcn.0044ea1b
mov dword [ebp - 0x50], eax
jmp 0x44b616
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438f81
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 0x4ac810
jmp 0x44b350
push ebx
push 0x4b40e0
mov ecx, edi
call fcn.0041213a
mov ecx, dword [esi + 0x60]
dec ecx
cmp eax, ecx
jae 0x44b67c
inc eax
push eax
mov ecx, edi
mov dword [ebp - 0x54], eax
call fcn.0040317f
cmp word [eax], 0x5c
je 0x44b67c
push 0x4b3018
push dword [ebp - 0x54]
mov ecx, edi
call fcn.0044a35c
push ebx
push 0x4b3018
mov ecx, edi
call fcn.0041213a
cmp eax, 0xffffffff
jne 0x44b6ff
push ebx
push 0x4b4128
mov ecx, edi
call fcn.0041213a
cmp eax, 0xffffffff
jne 0x44b6ff
xor eax, eax
push 0x206
mov word [ebp + 0x438], ax
lea eax, [ebp + 0x43a]
push ebx
push eax
call fcn.00476cc0
push 0x208
lea eax, [ebp + 0x438]
push ebx
push eax
call fcn.00476cc0
add esp, 0x18
cmp dword [edi + 0x18], 8
jb 0x44b6db
mov eax, dword [edi + 4]
jmp 0x44b6de
lea eax, [edi + 4]
push 0x4ac7f0
push eax
lea eax, [ebp + 0x438]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [ebp + 0x438]
push eax
mov ecx, edi
call fcn.00401aaf
cmp dword [edi + 0x18], 8
jb 0x44b70a
mov eax, dword [edi + 4]
jmp 0x44b70d
lea eax, [edi + 4]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsRootW]
test eax, eax
je 0x44b777
xor eax, eax
push 0x206
mov word [ebp + 0x438], ax
lea eax, [ebp + 0x43a]
push ebx
push eax
call fcn.00476cc0
push 0x208
lea eax, [ebp + 0x438]
push ebx
push eax
call fcn.00476cc0
add esp, 0x18
cmp dword [edi + 0x18], 8
jb 0x44b753
mov eax, dword [edi + 4]
jmp 0x44b756
lea eax, [edi + 4]
push 0x4ac7f0
push eax
lea eax, [ebp + 0x438]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [ebp + 0x438]
push eax
mov ecx, edi
call fcn.00401aaf
cmp dword [edi + 0x18], 8
mov dword [ebp - 0x60], ebx
jb 0x44b785
mov eax, dword [edi + 4]
jmp 0x44b788
lea eax, [edi + 4]
lea ecx, [ebp - 0x60]
push ecx
push eax
call fcn.0040338c
pop ecx
pop ecx
cmp dword [ebp - 0x60], ebx
je 0x44b842
mov ecx, esi
call fcn.0044ad1d
test eax, eax
je 0x44b83f
push 0x50
call fcn.00476d64
pop ecx
cmp eax, ebx
je 0x44b7c4
mov ecx, eax
call fcn.0044ea1b
mov dword [ebp - 0x50], eax
jmp 0x44b7c7
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438f81
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 0x4ac780
push 5
push 3
mov dword [eax + 0x7c], 1
push dword [esi + 0x24]
lea ecx, [ebp - 0x4c]
call fcn.0044966c
mov eax, dword [ebp - 0x50]
push ebx
push dword [eax + 4]
lea ecx, [ebp - 0x4c]
call fcn.00438f1d
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.004491a6
cmp dword [ebp - 0x54], 7
je 0x44b38b
push ebx
jmp 0x44b8a8
cmp dword [edi + 0x18], 8
jb 0x44b84d
mov edi, dword [edi + 4]
jmp 0x44b850
add edi, 4
push edi
call fcn.004033be
pop ecx
test eax, eax
je 0x44b8a6
push 0x50
call fcn.00476d64
pop ecx
cmp eax, ebx
je 0x44b873
mov ecx, eax
call fcn.0044ea1b
mov dword [ebp - 0x50], eax
jmp 0x44b876
mov dword [ebp - 0x50], ebx
mov edi, dword [ebp - 0x50]
push ebx
push dword [esi + 4]
mov ecx, edi
call fcn.00438f81
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 0x4ac758
jmp 0x44b350
push 1
call fcn.00403cce
mov ecx, eax
call fcn.00403db0
push ebx
call fcn.00439bb3
mov ecx, eax
call fcn.004324c0
mov ecx, dword [esi + 0x24]
push ebx
call fcn.00447245
mov ecx, dword [esi + 0x24]
call fcn.004474d8
xor eax, eax
mov ecx, dword [ebp + 0x640]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00476d3a
add ebp, 0x644
leave
ret 0x10