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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x58
mov eax, dword [0x100a69a0]
xor eax, ebp
mov dword [ebp - 4], eax
and dword [ebp - 0x54], 0
and dword [ebp - 0x50], 0
push ebx
push esi
push edi
pushal
mov ecx, dword ds:[0x12b5b20]
mov eax, 0x693d60
call eax
mov dword [ebp - 0x54], eax
popal
cmp dword [ebp - 0x54], 0
jne 0x10058a47
push 7
mov ecx, 0x35f6378
pop edx
mov eax, dword [ecx]
test eax, eax
je 0x10058811
cmp byte [eax + 0x330], 0
je 0x10058811
inc dword [ebp - 0x50]
add ecx, 4
dec edx
jne 0x100587ff
mov ebx, dword [ebp - 0x50]
cmp ebx, dword [0x103af1d4]
jge 0x10058a47
xor edi, edi
inc edi
test ebx, ebx
jne 0x10058839
cmp dword [0x103aed94], edi
je 0x10058a47
push 0x1008c714
call fcn.10006485
mov esi, eax
mov dword [esp], 0x1008c6c4
call fcn.10006485
pop ecx
cmp esi, edi
jne 0x100588a6
test eax, eax
jne 0x100588a6
call dword [sym.imp.KERNEL32.dll_GetTickCount]
xor edx, edx
mov ecx, 0x3e8
div ecx
sub eax, dword [0x103d26c8]
cmp eax, 0x1e
jb 0x10058a47
push 0
push 3
mov byte [0x103be374], 0
call fcn.10039177
push 0x1009a94c
call fcn.10006dd0
push 0x1009a938
push 0
call fcn.10039234
add esp, 0x14
jmp 0x10058a47
cmp ebx, 7
jge 0x10058a47
test esi, esi
jne 0x10058a47
cmp dword [0x103aed88], edi
je 0x100588cb
cmp dword [0x103aed98], edi
jne 0x10058961
lea eax, [ebp - 0x48]
push eax
call fcn.1004515c
cmp dword [ebp - 0x24], 0
pop ecx
jl 0x10058961
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
sub eax, dword [0x103428e8]
cmp eax, 0x2710
ja 0x100588ff
test ebx, ebx
jle 0x100588ff
and dword [0x103428e8], 0
call esi
xor edx, edx
mov ecx, 0x3e8
div ecx
push dword [ebp - 0x24]
mov dword [0x103d26c8], eax
call fcn.100392f0
mov eax, dword [ebp - 0x24]
and dword [eax*4 + 0x10122868], 0
lea eax, [ebp - 0x48]
push eax
push 0x103be374
call sub.MSVCR100.dll_strcpy
lea eax, [ebp - 0x48]
push eax
push 0x1009a930
mov esi, 0x10111d48
push esi
call dword [sym.imp.MSVCR100.dll_sprintf]
lea eax, [ebp - 0x48]
push eax
push 0x10110c78
call sub.MSVCR100.dll_strcpy
push esi
call fcn.10006dd0
add esp, 0x24
jmp 0x10058a47
cmp dword [0x103aed84], edi
jne 0x10058a47
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
xor eax, eax
push eax
push eax
mov edi, 0x18b
push edi
push dword [0x103aedc0]
mov dword [ebp - 0x4c], eax
call esi
test eax, eax
jle 0x10058a40
lea eax, [ebp - 0x18]
push eax
push dword [ebp - 0x4c]
push 0x189
push dword [0x103aedc0]
call esi
and dword [ebp - 0x58], 0
mov ebx, 0x35f6378
mov eax, dword [ebx]
test eax, eax
je 0x100589d1
cmp byte [eax + 0x330], 0
je 0x100589d1
add eax, 0x338
push eax
lea eax, [ebp - 0x18]
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10058a27
add ebx, 4
inc dword [ebp - 0x58]
cmp dword [ebp - 0x58], 7
jl 0x100589ad
lea eax, [ebp - 0x18]
push 0x33ccf58
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10058a27
or dword [ebp - 0x24], 0xffffffff
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x18]
push eax
call fcn.10045057
cmp dword [ebp - 0x24], 0
pop ecx
pop ecx
jl 0x10058a27
fld dword [ebp - 0x28]
fild dword [0x103aee88]
fcompp
fnstsw ax
test ah, 1
jne 0x10058a27
mov ebx, dword [ebp - 0x4c]
cmp ebx, dword [0x100a67f8]
jg 0x10058a56
inc dword [ebp - 0x4c]
push 0
push 0
push edi
push dword [0x103aedc0]
call esi
cmp dword [ebp - 0x4c], eax
jl 0x10058990
or dword [0x100a67f8], 0xffffffff
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10083a34
leave
ret
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
sub eax, dword [0x103428e8]
cmp eax, 0x2710
ja 0x10058a89
cmp dword [ebp - 0x50], 0
jle 0x10058a89
and dword [0x103428e8], 0
push 0x1009a924
push 0x10110c3c
call fcn.1003ad92
pop ecx
pop ecx
call esi
xor edx, edx
mov ecx, 0x3e8
div ecx
push dword [ebp - 0x24]
mov dword [0x103d26c8], eax
call fcn.100392f0
lea eax, [ebp - 0x48]
push eax
push 0x103be374
call sub.MSVCR100.dll_strcpy
mov dword [0x100a67f8], ebx
jmp 0x10058930