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

Disassembly:
push 0xffffffffffffffff
push 0x497d1b
mov eax, dword fs:[0]
push eax
mov eax, 0x10068
mov dword fs:[0], esp
call fcn.00493ca0
mov eax, dword [0x4ad238]
push ebx
push ebp
push esi
mov esi, ecx
mov dword [esp + 0xc], eax
push edi
mov eax, esi
call fcn.0040e840
test al, al
je 0x4417df
push 0x10
xor edi, edi
push edi
push esi
call fcn.004897de
mov esi, eax
add esp, 0xc
mov dword [esp + 0x4c], esi
jmp 0x4417f0
push esi
call fcn.00488d11
add esp, 4
mov dword [esp + 0x4c], eax
xor edi, edi
mov esi, eax
mov ebx, edx
cmp ebx, edi
jg 0x441849
jl 0x4417fd
cmp esi, 1
jae 0x441849
mov eax, dword [0x4a9978]
test byte [eax + 0xe0], 1
mov dword [eax + 0x30], 0x57
jne 0x44182d
mov ecx, dword [0x4adaf4]
push 1
push edi
push 0xffffffffffffffff
push 0x49cf28
push ecx
call fcn.00477500
jmp 0x441afa
mov ecx, dword [esp + 0x10088]
push 0x49b8bd
push edi
push 0x49cf28
call fcn.0042f3d0
jmp 0x441afa
mov eax, dword [0x4aea84]
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 0x44188d
lea edx, [esp + 0x28]
push edx
push eax
mov dword [esp + 0x2c], eax
call dword [sym.imp.KERNEL32.dll_GetCPInfo]
test eax, eax
jne 0x44188d
mov byte [esp + 0x2e], al
mov dword [esp + 0x14], vtable.TextFile.0
mov dword [esp + 0x48], ebp
mov edx, dword [esp + 0x1008c]
mov dword [esp + 0x10080], edi
mov eax, dword [0x4a9978]
mov eax, dword [eax + 0xdc]
and eax, 0x7fffffff
push 0x30c
lea ecx, [esp + 0x18]
call fcn.00472080
test al, al
jne 0x441912
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [0x4a9978]
test byte [ecx + 0xe0], 1
mov dword [ecx + 0x30], eax
jne 0x4418f6
mov ecx, dword [0x4adaf4]
push 1
push edi
push ebp
push 0x49cf28
push ecx
jmp 0x441add
mov ecx, dword [esp + 0x10088]
push 0x49b8bd
push edi
push 0x49cf28
call fcn.0042f3d0
jmp 0x441ae2
xor ebp, ebp
test ebx, ebx
jl 0x441a31
jg 0x441926
test esi, esi
je 0x441a31
push 1
push 0xffff
lea edx, [esp + 0x7c]
push edx
lea eax, [esp + 0x20]
call fcn.004721e0
mov esi, eax
test esi, esi
je 0x4419a4
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [0x4ae8dc]
mov ecx, dword [0x4a9978]
cmp eax, dword [ecx + 0xb8]
jbe 0x441989
push 0
push 0
push 0
push 0
lea edx, [esp + 0x68]
push edx
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x44197e
push 1
push 0xffffffffffffffff
call fcn.004013c0
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [0x4ae8dc], eax
add ebp, 1
adc edi, 0
cmp edi, ebx
jl 0x441926
jg 0x441a35
cmp ebp, dword [esp + 0x4c]
jb 0x441926
jmp 0x441a35
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [0x4a9978]
mov dword [ecx + 0x30], eax
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4419dd
cmp dword [esp + 0x40], 0
jne 0x4419dd
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 eax, dword [esp + 0x14]
mov edx, dword [eax + 8]
lea ecx, [esp + 0x14]
mov byte [esp + 0x3c], 0
call edx
mov eax, dword [0x4a9978]
test byte [eax + 0xe0], 1
jne 0x441a14
mov ecx, dword [0x4adaf4]
push 1
push 0
push 0xffffffffffffffff
push 0x49cf28
push ecx
jmp 0x441add
mov ecx, dword [esp + 0x10088]
push 0x49b8bd
push 0
push 0x49cf28
call fcn.0042f3d0
jmp 0x441ae2
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x441a5f
cmp dword [esp + 0x40], 0
jne 0x441a5f
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 eax, dword [esp + 0x14]
mov edx, dword [eax + 8]
lea ecx, [esp + 0x14]
mov byte [esp + 0x3c], 0
call edx
test esi, esi
je 0x441a81
cmp byte [esp + esi + 0x73], 0xa
jne 0x441a7d
dec esi
test esi, esi
jne 0x441aa6
mov ecx, dword [esp + 0x10]
call fcn.004147f0
test eax, eax
jne 0x441abf
lea ecx, [esp + 0x14]
mov dword [esp + 0x10080], 0xffffffff
call fcn.00416290
xor eax, eax
jmp 0x441afa
mov ecx, dword [esp + 0x10]
push 1
push 0
push esi
lea eax, [esp + 0x80]
push eax
push ecx
call fcn.00477500
jmp 0x441a8a
mov edx, dword [0x4a9978]
mov eax, dword [0x4adaf4]
push 1
push 0
push 0xffffffffffffffff
push 0x49b8d8
mov dword [edx + 0x30], 0
push eax
call fcn.00477500
lea ecx, [esp + 0x14]
mov esi, eax
mov dword [esp + 0x10080], 0xffffffff
call fcn.00416290
mov eax, esi
mov ecx, dword [esp + 0x10078]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x10074
ret 8