Function at 0x414030
Capabilities:
Get disk size

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x18c
mov ecx, dword [0x4282d0]
mov ebx, dword [0x4282d4]
mov dword [ebp - 0x14c], ecx
mov word [ebp - 0x14c], ax
lea eax, [ebp - 0x158]
mov dword [esp + 0xc], eax
lea eax, [ebp - 0x160]
mov dword [ebp - 0x148], ebx
lea ebx, [ebp - 0x14c]
mov dword [esp + 8], eax
lea eax, [ebp - 0x168]
mov dword [esp + 4], eax
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_GetDiskFreeSpaceExW]
sub esp, 0x10
test byte [0x425020], 8
jne 0x414110
mov eax, dword [0x42e078]
or eax, dword [0x437470]
jne 0x414101
mov eax, dword [0x42e080]
test eax, eax
je 0x414240
mov edx, dword [0x42e0a4]
mov eax, dword [0x42e0a0]
call dbg.WCMD_filesize64
mov dword [esp], str._n_____Total_files_listed:_n_1_8d__files_2_25s__bytes_n
mov dword [esp + 8], eax
mov eax, dword [0x42e0b0]
mov dword [esp + 4], eax
call dbg.WCMD_output
mov eax, dword [ebp - 0x158]
mov edx, dword [ebp - 0x154]
call dbg.WCMD_filesize64
mov dword [esp], str._1_8d__directories__2_18s__bytes_free_n_n
mov dword [esp + 8], eax
mov eax, dword [0x42e0ac]
mov dword [esp + 4], eax
call dbg.WCMD_output
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
mov esi, eax
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0x34]
mov dword [ebp - 0x170], eax
mov eax, ebx
shr eax, 0x10
je 0x414333
mov dword [esp + 4], 0xffffffff
mov dword [esp], ebx
call dword [sym.imp.kernel32.dll_IsBadStringPtrW]
mov edi, eax
sub esp, 8
mov eax, 0x4281b4
test edi, edi
jne 0x414200
cmp word [ebp - 0x14c], 0
je 0x41416a
lea esi, [esi]
add edi, 1
cmp word [ebx + edi*2], 0
jne 0x414160
mov eax, 0x224c
mov dword [ebp - 0x16c], ebx
lea ecx, [ebp - 0x142]
mov word [ebp - 0x144], ax
lea eax, [ebp - 0x22]
lea ebx, [edi - 1]
cmp ecx, eax
ja 0x4141d5
test edi, edi
jle 0x4141d5
add dword [ebp - 0x16c], 2
mov eax, dword [ebp - 0x16c]
movzx eax, word [eax - 2]
cmp ax, 0xd
je 0x414290
ja 0x414270
cmp ax, 9
je 0x414320
cmp ax, 0xa
jne 0x4142c0
mov eax, 0x6e5c
add ecx, 2
mov edi, ebx
mov word [ecx - 2], ax
jmp 0x414182
mov byte [ecx], 0x22
lea eax, [ecx + 1]
test ebx, ebx
jle 0x4141ef
mov edx, 0x2e2e
mov byte [ecx + 3], 0x2e
lea eax, [ecx + 4]
mov word [ecx + 1], dx
mov byte [eax], 0
lea eax, [ebp - 0x144]
mov dword [esp], eax
call dbg.__wine_dbg_strdup
mov edx, dword [ebp - 0x170]
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], edx
mov dword [esp + 0xc], str.Writing_trailer_for__s_gave__ld__ld__n
mov dword [esp + 8], str.WCMD_dir_trailer
mov dword [esp + 4], 0x425020
mov dword [esp], 3
call sym._wine_dbg_log.constprop.4
jmp 0x414094
mov edx, dword [ebp - 0x154]
mov eax, dword [ebp - 0x158]
call dbg.WCMD_filesize64
mov dword [esp], str.__1_18s__bytes_free_n_n
mov dword [esp + 4], eax
call dbg.WCMD_output
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
cmp ax, 0x22
je 0x4142a3
cmp ax, 0x5c
jne 0x4142c0
mov edi, 0x5c5c
add ecx, 2
mov word [ecx - 2], di
mov edi, ebx
jmp 0x414182
mov eax, 0x725c
add ecx, 2
mov edi, ebx
mov word [ecx - 2], ax
jmp 0x414182
mov eax, 0x225c
add ecx, 2
mov edi, ebx
mov word [ecx - 2], ax
jmp 0x414182
lea edi, [eax - 0x20]
cmp di, 0x5e
jbe 0x414350
mov edi, eax
mov byte [ecx], 0x5c
add ecx, 5
shr di, 0xc
movzx edi, di
movzx edx, byte [edi + str.0123456789abcdefWCMD_directory]
mov edi, eax
shr di, 8
and edi, 0xf
mov byte [ecx - 4], dl
movzx edx, byte [edi + str.0123456789abcdefWCMD_directory]
mov edi, eax
and eax, 0xf
shr di, 4
movzx eax, byte [eax + str.0123456789abcdefWCMD_directory]
and edi, 0xf
mov byte [ecx - 3], dl
movzx edx, byte [edi + str.0123456789abcdefWCMD_directory]
mov byte [ecx - 1], al
mov edi, ebx
mov byte [ecx - 2], dl
jmp 0x414182
mov eax, 0x745c
add ecx, 2
mov edi, ebx
mov word [ecx - 2], ax
jmp 0x414182
movzx edx, bx
mov dword [esp], 0x4281a0
mov dword [esp + 4], edx
call sym._wine_dbg_sprintf.constprop.6
jmp 0x414200
mov byte [ecx], al
mov edi, ebx
add ecx, 1
jmp 0x414182