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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x648
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, dword [ebp + 0x10]
push 0
push 0x2d
push dword [edi]
lea eax, [ebp - 0x234]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCompactPathExW]
mov eax, dword [ebx]
push 0
lea ecx, [ebp - 0x234]
push ecx
mov ecx, ebx
call dword [eax + 0x20]
mov eax, dword [ebx]
push 1
push str.Please_wait...
mov ecx, ebx
call dword [eax + 0x20]
lea eax, [edi + 4]
lea esi, [ebp - 8]
call fcn.004a4810
mov eax, dword [edi + 8]
inc word [eax + 0x12]
mov ecx, dword [ebp - 8]
test ecx, ecx
mov dword [ebp - 0x10], eax
je 0x4a28a6
cmp byte [ecx + 0xd], 0
setne cl
jmp 0x4a28a8
mov cl, 1
test cl, cl
je 0x4a28ba
mov esi, dword [ebp + 8]
mov dword [esi], 2
jmp 0x4a2ad5
test byte [eax + 0xd], 1
jne 0x4a28ac
movzx ecx, byte [eax + 0xc]
push ecx
push dword [eax + 8]
lea eax, [ebp - 8]
call fcn.004a6aa6
and dword [ebp - 0x25], 0
lea eax, [ebp - 8]
push eax
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebp - 0x29]
mov byte [ebp - 0x21], 0
mov dword [ebp - 0x29], 0x553760
mov dword [ebp - 0x20], 0x7fff0
call dword [0x553764]
push eax
lea edi, [ebp - 8]
call fcn.004a488a
lea eax, [ebp + 0xc]
call fcn.004a4856
mov ecx, dword [ebp - 8]
xor edi, edi
cmp ecx, edi
je 0x4a2917
mov eax, dword [ecx]
push edi
call dword [eax + 0x10]
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0xc], edi
mov eax, dword [ebx]
sete byte [ebp + 0xf]
cmp byte [ebp + 0xf], 0
mov ecx, ebx
je 0x4a2930
call dword [eax + 0x28]
jmp 0x4a2933
call dword [eax + 0x2c]
mov eax, dword [ebp - 8]
cmp eax, edi
je 0x4a293f
mov al, byte [eax + 8]
jmp 0x4a2941
mov al, 1
movzx eax, al
shl eax, 0xd
lea esi, [ebp - 0xc]
call fcn.0041d5d0
mov dword [ebp - 0x14], edi
jmp 0x4a2a95
mov ecx, dword [ebp - 8]
test ecx, ecx
je 0x4a296a
mov eax, dword [ecx]
call dword [eax + 8]
mov ecx, dword [ebp - 8]
mov esi, eax
jmp 0x4a296c
xor esi, esi
test ecx, ecx
je 0x4a2977
mov eax, dword [ecx]
call dword [eax + 0xc]
jmp 0x4a2979
xor eax, eax
sub eax, esi
mov dword [ebp - 0x18], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebp - 0x14]
cmp eax, 0xc8
jbe 0x4a29ea
mov eax, dword [ebp - 8]
test eax, eax
je 0x4a299a
mov eax, dword [eax + 4]
jmp 0x4a299f
mov eax, 0xac44
push eax
push esi
call fcn.004a3e1d
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x10]
push dword [eax]
lea esi, [ebp - 0x644]
lea eax, [ebp - 0x14]
call fcn.00402433
push eax
push str.Read__s_of__s
mov esi, 0x104
lea edi, [ebp - 0x43c]
call fcn.0044b138
mov eax, dword [ebx]
add esp, 0xc
push 0
mov ecx, edi
push ecx
mov ecx, ebx
call dword [eax + 0x20]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14], eax
mov edi, dword [ebp - 0x18]
test edi, edi
jle 0x4a2a66
mov eax, 0x2000
cmp edi, eax
jle 0x4a29fc
mov edi, eax
mov ecx, dword [ebp - 8]
test ecx, ecx
push edi
push dword [ebp - 0xc]
je 0x4a2a0e
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x4a2a15
mov al, 1
call fcn.00424aa0
mov esi, dword [ebp - 0x10]
mov eax, dword [esi]
push edi
push dword [ebp - 0xc]
mov ecx, esi
call dword [eax + 4]
test byte [esi + 0xd], 1
jne 0x4a2aae
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0xc]
test eax, eax
mov dword [ebp - 0x1c], eax
je 0x4a2a5a
push dword [esi + 8]
mov edi, dword [ebx]
push dword [esi + 4]
call fcn.004a3e1d
mov dword [ebp - 0x18], eax
fild dword [ebp - 0x18]
push ecx
push ecx
mov ecx, ebx
fidiv dword [ebp - 0x1c]
fstp qword [esp]
call dword [edi + 0x24]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
test al, al
jne 0x4a2aa3
jmp 0x4a2a95
mov ecx, dword [ebp - 8]
test ecx, ecx
je 0x4a2a74
mov eax, dword [ecx]
call dword [eax + 0x18]
jmp 0x4a2a76
xor al, al
test al, al
je 0x4a2ab9
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
test al, al
jne 0x4a2aa3
mov ecx, dword [ebp - 8]
test ecx, ecx
je 0x4a2a95
mov eax, dword [ecx]
push 0x96
call dword [eax + 0x1c]
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax]
test al, al
je 0x4a2957
mov esi, dword [ebp + 8]
mov dword [esi], 1
jmp 0x4a2acc
mov esi, dword [ebp + 8]
mov dword [esi], 2
jmp 0x4a2acc
cmp byte [ebp + 0xf], 0
je 0x4a2ac6
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x2c]
mov esi, dword [ebp + 8]
and dword [esi], 0
push dword [ebp - 0xc]
call fcn.00520947
pop ecx
lea ecx, [ebp - 0x10]
call fcn.00404ca4
lea eax, [ebp - 8]
call fcn.004a4856
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 0xc