Function at 0x4042a0
Capabilities:
Get disk size

Disassembly:
push 0xffffffffffffffff
push 0x427ea8
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x34
push esi
push edi
lea ecx, [esp + 0x2c]
call fcn.00421297
push 0
push 0
push str.D:DogDown.exe
lea ecx, [esp + 0x38]
mov dword [esp + 0x50], 0
call fcn.004213a9
mov esi, dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
mov edi, 0x7ae00
test eax, eax
je 0x404314
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x433430
call esi
cmp dword [esp + 8], edi
jne 0x404314
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.E:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x404352
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x43341c
call esi
cmp dword [esp + 8], edi
jne 0x404352
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.F:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x404390
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x433408
call esi
cmp dword [esp + 8], edi
jne 0x404390
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.G:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x4043ce
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x4333f4
call esi
cmp dword [esp + 8], edi
jne 0x4043ce
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.H:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x40440c
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x4333e0
call esi
cmp dword [esp + 8], edi
jne 0x40440c
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.I:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x40444a
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x4333cc
call esi
cmp dword [esp + 8], edi
jne 0x40444a
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.J:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x404488
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x4333b8
call esi
cmp dword [esp + 8], edi
jne 0x404488
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.K:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x4044c2
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x4333a4
call esi
cmp dword [esp + 8], edi
jne 0x4044c2
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.L:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x4044fc
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x433390
call esi
cmp dword [esp + 8], edi
jne 0x4044fc
mov eax, dword [esp + 0xc]
test eax, eax
je 0x404536
push 0
push 0
push str.M:DogDown.exe
lea ecx, [esp + 0x38]
call fcn.004213a9
test eax, eax
je 0x404570
lea eax, [esp + 0x10]
lea ecx, [esp + 8]
push eax
lea edx, [esp + 0x1c]
push ecx
push edx
push 0x43337c
call esi
cmp dword [esp + 8], edi
jne 0x404570
mov eax, dword [esp + 0xc]
test eax, eax
jne 0x404570
push 0
push 0x35290
lea ecx, [esp + 0x34]
call fcn.0042154b
lea eax, [esp + 0x20]
push 0xa
push eax
lea ecx, [esp + 0x34]
call fcn.004214c6
lea ecx, [esp + 0x2c]
call fcn.004215c4
cmp byte [esp + 0x25], 0x31
jne 0x404570
mov dword [0x43864c], 2
lea ecx, [esp + 0x2c]
mov dword [esp + 0x44], 0xffffffff
call fcn.004212ec
mov ecx, dword [esp + 0x3c]
pop edi
pop esi
mov dword fs:[0], ecx
add esp, 0x40
ret