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

Disassembly:
push 0xffffffffffffffff
push 0x4abe2b
mov eax, dword fs:[0]
push eax
mov eax, 0x20068
mov dword fs:[0], esp
call fcn.004a72a0
mov eax, dword [0x4d85e0]
push ebx
push ebp
push esi
mov esi, ecx
mov dword [esp + 0xc], eax
push edi
mov eax, esi
call fcn.00403f40
test al, al
je 0x44c46f
push 0x10
xor edi, edi
push edi
push esi
call fcn.004992a0
mov esi, eax
add esp, 0xc
mov dword [esp + 0x4c], esi
jmp 0x44c480
push esi
call fcn.00499318
add esp, 4
mov dword [esp + 0x4c], eax
xor edi, edi
mov esi, eax
mov ebx, edx
cmp ebx, edi
jg 0x44c4d9
jl 0x44c48d
cmp esi, 1
jae 0x44c4d9
mov eax, dword [0x4d4b04]
test byte [eax + 0x100], 1
mov dword [eax + 0x30], 0x57
jne 0x44c4bd
mov ecx, dword [0x4d8ea8]
push 1
push edi
push 0xffffffffffffffff
push 0x4b356c
push ecx
call fcn.004825d0
jmp 0x44c78a
push 0x4af9bc
push edi
mov edi, dword [esp + 0x20090]
push 0x4b356c
call fcn.00439a40
jmp 0x44c78a
mov eax, dword [0x4da3a4]
or ebp, 0xffffffff
mov dword [esp + 0x14], vtable.TextStream.0
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], ebp
mov dword [esp + 0x40], edi
mov dword [esp + 0x44], edi
cmp eax, ebp
je 0x44c51d
lea edx, [esp + 0x28]
push edx
push eax
mov dword [esp + 0x2c], eax
call dword [sym.imp.KERNEL32.dll_GetCPInfo]
test eax, eax
jne 0x44c51d
mov byte [esp + 0x2e], al
mov dword [esp + 0x14], vtable.TextFile.0
mov dword [esp + 0x48], ebp
mov edx, dword [esp + 0x2008c]
mov dword [esp + 0x20080], edi
mov eax, dword [0x4d4b04]
mov eax, dword [eax + 0xfc]
and eax, 0x7fffffff
push 0x30c
lea ecx, [esp + 0x18]
call fcn.0047cde0
test al, al
jne 0x44c59b
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [0x4d4b04]
test byte [ecx + 0x100], 1
mov dword [ecx + 0x30], eax
jne 0x44c57f
push 1
push edi
push ebp
push 0x4b356c
jmp 0x44c766
push 0x4af9bc
push edi
mov edi, dword [esp + 0x20090]
push 0x4b356c
call fcn.00439a40
jmp 0x44c772
xor ebp, ebp
test ebx, ebx
jl 0x44c6be
jg 0x44c5af
test esi, esi
je 0x44c6be
push 1
push 0xffff
lea edx, [esp + 0x7c]
push edx
lea eax, [esp + 0x20]
push eax
call fcn.0047cf40
mov esi, eax
test esi, esi
je 0x44c62e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x4da1dc]
mov ecx, dword [0x4d4b04]
cmp eax, dword [ecx + 0xd8]
jbe 0x44c613
push 0
push 0
push 0
push 0
lea edx, [esp + 0x68]
push edx
call dword [sym.imp.USER32.dll_PeekMessageW]
test eax, eax
je 0x44c608
push 1
push 0xffffffffffffffff
call fcn.00401460
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x4da1dc], eax
add edi, 1
adc ebp, 0
cmp ebp, ebx
jl 0x44c5af
jg 0x44c6c2
cmp edi, dword [esp + 0x4c]
jb 0x44c5af
jmp 0x44c6c2
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [0x4d4b04]
mov dword [ecx + 0x30], eax
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x44c667
cmp dword [esp + 0x40], 0
jne 0x44c667
mov edx, dword [esp + 0x44]
push eax
mov eax, dword [esp + 0x18]
push edx
mov edx, dword [eax + 0x10]
lea ecx, [esp + 0x1c]
call edx
mov dword [esp + 0x1c], 0
mov edx, dword [esp + 0x14]
xor eax, eax
mov word [esp + 0x3c], ax
mov eax, dword [edx + 8]
lea ecx, [esp + 0x14]
call eax
mov ecx, dword [0x4d4b04]
test byte [ecx + 0x100], 1
jne 0x44c6a1
mov edx, dword [0x4d8ea8]
push 1
push 0
push 0xffffffffffffffff
push 0x4b356c
push edx
jmp 0x44c76d
mov edi, dword [esp + 0x20088]
push 0x4af9bc
push 0
push 0x4b356c
call fcn.00439a40
jmp 0x44c772
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x44c6ec
cmp dword [esp + 0x40], 0
jne 0x44c6ec
mov edx, dword [esp + 0x14]
push eax
mov eax, dword [esp + 0x48]
push eax
mov eax, dword [edx + 0x10]
lea ecx, [esp + 0x1c]
call eax
mov dword [esp + 0x1c], 0
mov edx, dword [esp + 0x14]
mov eax, dword [edx + 8]
xor ecx, ecx
mov word [esp + 0x3c], cx
lea ecx, [esp + 0x14]
call eax
test esi, esi
je 0x44c711
cmp word [esp + esi*2 + 0x72], 0xa
jne 0x44c70d
dec esi
test esi, esi
jne 0x44c736
mov ecx, dword [esp + 0x10]
call fcn.0041a1d0
test eax, eax
jne 0x44c74f
lea ecx, [esp + 0x14]
mov dword [esp + 0x20080], 0xffffffff
call fcn.00404130
xor eax, eax
jmp 0x44c78a
mov edx, dword [esp + 0x10]
push 1
push 0
push esi
lea ecx, [esp + 0x80]
push ecx
push edx
call fcn.004825d0
jmp 0x44c71a
mov eax, dword [0x4d4b04]
push 1
push 0
push 0xffffffffffffffff
mov dword [eax + 0x30], 0
push 0x4af9cc
mov ecx, dword [0x4d8ea8]
push ecx
call fcn.004825d0
lea ecx, [esp + 0x14]
mov esi, eax
mov dword [esp + 0x20080], 0xffffffff
call fcn.00404130
mov eax, esi
mov ecx, dword [esp + 0x20078]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x20074
ret 8