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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x144
push 0
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x436b28
lea ecx, [ebp - 0x40]
call fcn.00406e29
push 0x436b34
lea ecx, [ebp - 0x40]
call fcn.00412b29
push 0x436b40
lea ecx, [ebp - 0x40]
call fcn.00412b29
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [0x44854c], eax
push 0x104
lea eax, [ebp - 0x144]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0x17
lea ecx, [ebp - 0x40]
call fcn.0040e34c
push eax
lea eax, [ebp - 0x144]
push eax
call fcn.0041a47d
add esp, 0xc
test eax, eax
jne 0x41084f
push 0xea60
call dword [sym.imp.KERNEL32.dll_Sleep]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.00401767
pop ecx
pop ecx
call fcn.00410758
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x18], eax
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x14]
sub eax, dword [ebp - 0x18]
cmp eax, 0x384
jge 0x410892
push 1
call fcn.004204a2
call fcn.0041077e
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0x1e8480
jge 0x4108aa
push 1
call fcn.004204a2
call fcn.00415a6f
push dword [0x448540]
call fcn.00418edf
pop ecx
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
mov dword [0x448554], eax
push 8
call fcn.00418ea1
pop ecx
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0
je 0x4108e9
xor eax, eax
mov ecx, dword [ebp - 8]
mov dword [ecx], eax
mov dword [ecx + 4], eax
mov eax, dword [ebp - 8]
mov dword [ebp - 0x10], eax
jmp 0x4108ed
and dword [ebp - 0x10], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov ecx, dword [0x448554]
mov dword [eax + 4], ecx
mov eax, dword [0x448540]
add eax, 6
sub eax, dword [0x44854c]
push eax
call fcn.00418edf
pop ecx
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 4], eax
push dword [0x448540]
push dword [0x44853c]
mov eax, dword [0x448540]
add eax, 6
sub eax, dword [0x44854c]
push eax
push dword [ebp - 4]
call fcn.0041020e
add esp, 0x10
mov eax, dword [0x446018]
add eax, 6
sub eax, dword [0x44854c]
push eax
push dword [0x448540]
push 6
pop eax
sub eax, dword [0x44854c]
push eax
mov eax, dword [0x448540]
add eax, 6
sub eax, dword [0x44854c]
push eax
push dword [ebp - 4]
call fcn.00401487
add esp, 0x14
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 4]
mov dword [eax], ecx
push dword [ebp - 0xc]
mov eax, dword [0x448540]
add eax, 6
sub eax, dword [0x44854c]
push eax
push dword [ebp - 4]
call fcn.004104a7
add esp, 0xc
mov eax, dword [0x446018]
add eax, 6
sub eax, dword [0x44854c]
push eax
mov eax, dword [0x448540]
add eax, 6
sub eax, dword [0x44854c]
push eax
push 0
push dword [0x448540]
mov eax, dword [ebp - 4]
add eax, 6
sub eax, dword [0x44854c]
push eax
call fcn.0040140c
add esp, 0x14
mov eax, dword [0x448540]
add eax, 6
sub eax, dword [0x44854c]
push eax
push 7
push dword [0x448554]
call fcn.0041a300
add esp, 0xc
push 0x41067a
push 1
call dword [sym.imp.KERNEL32.dll_AddVectoredExceptionHandler]
push 0x448544
push 0x46
pop eax
sub eax, dword [0x44854c]
push eax
mov eax, dword [0x448540]
add eax, 6
sub eax, dword [0x44854c]
push eax
push dword [0x448554]
call dword [sym.imp.KERNEL32.dll_VirtualProtect]
push dword [0x448554]
call fcn.00410749
pop ecx
call fcn.00401900
and dword [ebp - 0x28], 0
lea ecx, [ebp - 0x40]
call fcn.00407cb4
mov eax, dword [ebp - 0x28]
leave
ret