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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x414
push esi
xor esi, esi
cmp dword [0x242aa70], esi
jne 0x40a9c2
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0040abfb
add esp, 0xc
jmp 0x40abf8
push ebx
push edi
push 0x7530
mov ebx, 0x2413b20
push esi
push ebx
mov dword [ebp - 4], 1
mov dword [ebp - 0x14], esi
call sub.MSVCRT.dll_memset
add esp, 0xc
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edi, 0x3e8
mov dword [ebp - 8], eax
push edi
push 0
push dword [ebp + 8]
call sub.MSVCRT.dll_memset
add esp, 0xc
lea eax, [ebp - 0x10]
push eax
mov eax, dword [ebp + 0xc]
push 0x4004667f
push dword [eax + 4]
call sub.WSOCK32.dll_ioctlsocket
cmp eax, 0xffffffff
je 0x40abb5
cmp dword [ebp - 0x10], 0
jne 0x40aa66
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [ebp - 0x14], 1
mov edi, eax
jne 0x40aa44
sub eax, dword [ebp - 8]
push eax
call sub.MSVCRT.dll_labs
cmp eax, 0x1f40
pop ecx
jge 0x40aba8
sub edi, dword [ebp - 8]
push edi
call sub.MSVCRT.dll_labs
cmp eax, 0x493e0
pop ecx
jg 0x40abae
push 0x64
call dword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x40ab91
cmp dword [ebp - 0x10], edi
jae 0x40aa6e
mov edi, dword [ebp - 0x10]
mov ecx, dword [ebp + 0xc]
push 0
lea edx, [ebp - 0x414]
push edi
mov eax, dword [ecx]
push edx
call dword [eax + 0x1c]
cmp eax, edi
mov dword [ebp - 0xc], eax
jne 0x40abb5
test eax, eax
jle 0x40ab91
lea edi, [ebp - 0x414]
mov al, byte [edi]
mov byte [esi + 0x2413b20], al
inc esi
inc edi
cmp esi, 0x4e20
jg 0x40ab91
cmp dword [ebp + 0x10], 0
jle 0x40aac3
dec dword [ebp + 0x10]
je 0x40aba1
jmp 0x40ab77
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp esi, 0x14
mov dword [ebp - 8], eax
mov dword [ebp - 0x14], 1
jle 0x40ab77
mov eax, ebx
dec eax
cmp byte [eax], 0xa
jne 0x40ab05
mov ecx, ebx
dec ecx
dec ecx
cmp byte [ecx], 0xd
jne 0x40ab05
mov ecx, ebx
sub ecx, 3
cmp byte [ecx], 0xa
jne 0x40ab05
mov ecx, ebx
sub ecx, 4
cmp byte [ecx], 0xd
je 0x40aba1
cmp byte [eax + esi], 0x3e
jne 0x40ab77
cmp byte [esi + 0x2413b1e], 0x70
jne 0x40ab77
cmp byte [esi + 0x2413b1d], 0x74
jne 0x40ab77
cmp byte [esi + 0x2413b1c], 0x74
jne 0x40ab77
cmp byte [esi + 0x2413b1b], 0x68
jne 0x40ab77
cmp byte [esi + 0x2413b1a], 0x2d
jne 0x40ab77
cmp byte [esi + 0x2413b19], 0x73
jne 0x40ab77
cmp byte [esi + 0x2413b18], 0x6d
jne 0x40ab77
cmp byte [esi + 0x2413b17], 0x73
jne 0x40ab77
cmp byte [esi + 0x2413b16], 0x66
jne 0x40ab77
cmp byte [esi + 0x2413b15], 0x6b
jne 0x40ab77
cmp byte [esi + 0x2413b14], 0x2f
jne 0x40ab77
cmp byte [esi + 0x2413b13], 0x3c
je 0x40ab86
dec dword [ebp - 0xc]
cmp dword [ebp - 0xc], 0
jg 0x40aa99
jmp 0x40ab91
mov eax, dword [ebp + 8]
and byte [esi + eax], 0
and dword [ebp - 4], 0
cmp dword [ebp - 4], 0
je 0x40abb5
mov edi, 0x3e8
jmp 0x40a9fe
mov eax, dword [ebp + 8]
and byte [esi + eax], 0
and dword [ebp - 4], 0
jmp 0x40abb5
mov dword [ebp - 4], 2
mov esi, dword [sym.imp.MSVCRT.dll_strstr]
push str._resultline_
push ebx
call esi
pop ecx
pop ecx
pop edi
test eax, eax
pop ebx
je 0x40abf5
add eax, 0xc
push eax
push 0x41a1b0
push dword [ebp + 8]
call dword [sym.imp.MSVCRT.dll_sprintf]
push str.__resultline_
push dword [ebp + 8]
call esi
add esp, 0x14
test eax, eax
je 0x40abf5
and byte [eax], 0
and byte [eax + 1], 0
mov eax, dword [ebp - 4]
pop esi
leave
ret