Function at 0x44803f
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
push ecx
push ecx
push ebx
mov ebx, dword [sym.imp.___total_physical_size__lu_MB_GetTickCount]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, 0x402
test esi, esi
jne 0x4480b0
cmp dword [ebp + 8], 0x3f4
push 0x48
push 0
push 0x4d7538
je 0x448077
call fcn.00450230
add esp, 0xc
call ebx
jmp 0x44808a
mov eax, dword [0x4d7538]
mov dword [ebp - 8], eax
call fcn.00450230
mov eax, dword [ebp - 8]
add esp, 0xc
push 0x640000
push 0
push 0x401
push dword [ebp + 8]
mov dword [0x4d7538], eax
call fcn.00448019
push 0
push 0
push edi
push dword [ebp + 8]
call fcn.00448019
cmp dword [0x4d617c], 0
je 0x448292
call ebx
cmp dword [ebp + 0x14], 0
mov ebx, eax
jne 0x4480d8
sub eax, dword [0x4d7534]
cmp eax, 0x3e8
jb 0x448292
mov dword [0x4d7534], ebx
test esi, esi
je 0x448292
cmp dword [ebp + 0x10], 0
je 0x448292
mov eax, esi
imul eax, eax, 0x64
xor edx, edx
div dword [ebp + 0x10]
push 0
push eax
push edi
push dword [ebp + 8]
mov dword [ebp - 4], eax
call fcn.00448019
mov eax, dword [0x4d753c]
or dword [ebp - 8], 0xffffffff
mov dword [eax*8 + 0x4d7540], ebx
mov eax, dword [0x4d753c]
mov dword [eax*8 + 0x4d7544], esi
mov eax, dword [0x4d753c]
lea edi, [eax + 1]
and edi, 7
mov ecx, dword [edi*8 + 0x4d7540]
test ecx, ecx
je 0x448164
mov esi, dword [eax*8 + 0x4d7544]
sub esi, dword [edi*8 + 0x4d7544]
je 0x448164
mov eax, dword [eax*8 + 0x4d7540]
sub eax, ecx
mov ecx, dword [ebp + 0x10]
sub ecx, dword [ebp + 0xc]
xor edx, edx
imul eax, ecx
div esi
mov dword [ebp - 8], eax
mov eax, dword [ebp + 0x10]
mov esi, dword [0x4d7538]
sub eax, dword [ebp + 0xc]
mov dword [ebp + 8], ebx
sub dword [ebp + 8], esi
mul dword [ebp + 8]
push 0
push dword [ebp + 0xc]
push edx
push eax
call fcn.004544c0
mov ecx, dword [ebp - 8]
sub eax, esi
add eax, ebx
cmp ecx, 0xffffffff
je 0x44819e
mov edx, ebx
sub edx, esi
add ecx, edx
add eax, ecx
cdq
sub eax, edx
sar eax, 1
cmp dword [ebp + 0x14], 0
je 0x4481f9
mov ecx, dword [ebp - 4]
cmp ecx, 0x64
jb 0x4481af
push 0x64
pop ecx
mov eax, dword [ebp + 8]
xor edx, edx
mov esi, 0x3e8
div esi
push 0x3c
pop esi
xor edx, edx
div esi
push edx
push eax
push ecx
push str.Done__d____total_time_used__2d:_02d
push 0x515
call fcn.00447f71
add esp, 0x14
cmp dword [0x4d751c], 0
je 0x44828c
push 0x96
push 0x5dc
call dword [sym.imp.___total_physical_size__lu_MB_Beep]
jmp 0x44828c
cmp ecx, 0xffffffff
je 0x448259
sub esi, ebx
add esi, eax
test esi, esi
jg 0x448208
xor esi, esi
mov eax, dword [ebp - 4]
mov dword [ebp + 0x10], eax
cmp eax, 0x64
jb 0x44821a
mov dword [ebp + 0x10], 0x64
mov eax, esi
cdq
mov ecx, 0x3e8
mov esi, ecx
idiv esi
push 0x3c
pop esi
push 0x3c
cdq
idiv esi
mov esi, edx
mov ebx, eax
mov eax, dword [ebp + 8]
xor edx, edx
div ecx
pop ecx
xor edx, edx
push esi
push ebx
div ecx
push edx
push eax
push dword [ebp + 0x10]
push str.Done__d____time_used__2d:_02d__estimated__d:_02d_remaining
push 0x515
call fcn.00447f71
add esp, 0x1c
jmp 0x44828c
mov ecx, dword [ebp - 4]
cmp ecx, 0x64
jb 0x448264
push 0x64
pop ecx
mov eax, dword [ebp + 8]
xor edx, edx
mov esi, 0x3e8
div esi
push 0x3c
pop esi
xor edx, edx
div esi
push edx
push eax
push ecx
push str.Done__d____time_used__2d:_02d
push 0x515
call fcn.00447f71
add esp, 0x14
mov dword [0x4d753c], edi
pop edi
pop esi
pop ebx
leave
ret 0x10