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

Disassembly:
push ebp
mov ebp, esp
push ecx
push ebx
push esi
push edi
mov ecx, 0x101a2048
xor edi, edi
call fcn.10001240
test eax, eax
jle 0x1005d6f2
jmp 0x1005d610
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x101a203c]
mov edx, dword [ecx + edi*4]
sub eax, dword [edx]
cmp eax, 0xbb8
jae 0x1005d6df
mov edx, dword [0x2fb6a98]
xor ecx, ecx
mov eax, 0x2fc5570
mov dword [ebp - 4], edx
test edx, edx
jle 0x1005d6df
mov esi, dword [eax]
add eax, 4
cmp dword [esi], 0xd70444
jne 0x1005d682
cmp dword [esi + 0x10a4], 0
je 0x1005d682
cmp dword [esi + 0x3c0], 1
je 0x1005d682
cmp dword [esi + 0x3b0], 0x270f
jle 0x1005d682
mov edx, dword [0x101a2048]
mov edx, dword [edx + edi*4]
mov ebx, dword [esi + 0x14]
cmp ebx, dword [edx]
je 0x1005d689
mov edx, dword [ebp - 4]
inc ecx
cmp ecx, edx
jl 0x1005d644
jmp 0x1005d6df
mov eax, dword [esi + 0x10a4]
fld dword [eax + 0x280]
call fcn.100867a0
mov dword [ebp - 4], eax
fild dword [ebp - 4]
sub esp, 0x10
fstp dword [ebp - 4]
fld dword [0x1012d2ac]
fstp dword [esp + 0xc]
fld dword [0x1012d2a8]
fstp dword [esp + 8]
fld dword [ebp - 4]
fst dword [esp + 4]
fstp dword [esp]
call fcn.100081e0
fild dword [0x1012d2cc]
add esp, 0x10
fcompp
fnstsw ax
test ah, 1
je 0x1005d87a
mov ecx, 0x101a2048
inc edi
call fcn.10001240
cmp edi, eax
jl 0x1005d610
xor eax, eax
mov dword [0x10119568], eax
mov ebx, 0x2fc5570
mov dword [ebp - 4], eax
cmp dword [0x2fb6a98], eax
jle 0x1005d834
lea ecx, [ecx]
mov esi, dword [ebx]
add ebx, 4
test esi, esi
je 0x1005d820
cmp dword [esi], 0xd70444
jne 0x1005d820
mov edi, dword [esi + 0x10a4]
test edi, edi
je 0x1005d820
cmp dword [esi + 0x3c0], 1
je 0x1005d820
mov eax, dword [esi + 0x3b0]
cmp eax, 0x270f
jle 0x1005d820
cmp eax, 0x3e7
jl 0x1005d820
mov edx, dword [esi + 0xc]
push edx
call fcn.1003e3d0
add esp, 4
test al, al
jne 0x1005d820
mov eax, dword [0x1019188c]
push 0
push 0
push 0x147
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
cmp eax, 3
jne 0x1005d7a2
mov eax, dword [esi + 0x3b0]
cmp eax, 0x2af9
jl 0x1005d7a2
cmp eax, 0x2b35
jle 0x1005d820
mov ecx, dword [esi + 0x5f4]
mov edx, dword [0x10119568]
mov dword [edx*4 + 0x10116e58], ecx
fld dword [edi + 0x280]
call fcn.100867a0
mov ecx, dword [0x10119568]
mov dword [ecx*4 + 0x101185c8], eax
fld dword [edi + 0x288]
call fcn.100867a0
mov edx, dword [0x10119568]
mov dword [edx*4 + 0x10118d98], eax
mov eax, dword [0x10119568]
imul eax, eax, 0xc8
lea edx, [esi + 0x360]
add eax, 0x100fe7b8
jmp 0x1005d800
mov cl, byte [edx]
mov byte [eax], cl
inc edx
inc eax
test cl, cl
jne 0x1005d800
mov eax, dword [esi + 0xc]
mov ecx, dword [0x10119568]
mov dword [ecx*4 + 0x10117df8], eax
inc dword [0x10119568]
mov ecx, dword [ebp - 4]
inc ecx
mov eax, 0x2fb6a98
mov dword [ebp - 4], ecx
cmp ecx, dword [eax]
jl 0x1005d710
call fcn.1003e400
mov edx, dword [0x101919e4]
inc edx
cmp eax, edx
jl 0x1005d8d7
mov eax, dword [0x101a46e8]
mov ecx, dword [0x100eaf2c]
push fcn.1005f2e0
push 0x1f4
add eax, 0x45
push eax
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
pop edi
pop esi
mov dword [0x1012d264], eax
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.10037c50
mov ecx, dword [esi + 0xc]
push ecx
call fcn.100386f0
mov edx, dword [esi + 0xc]
push edx
add esi, 0x360
push esi
push 0x100a0304
push 0x1011c6e8
call dword [sym.imp.MSVCR100.dll_sprintf]
push 0x1011c6e8
call fcn.10008080
mov eax, dword [0x101a46e8]
mov ecx, dword [0x100eaf2c]
add esp, 0x18
push 0x1004ba70
push 0x1f4
add eax, 0x45
push eax
push ecx
call dword [sym.imp.USER32.dll_SetTimer]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [0x1012d388]
push edx
call fcn.1003e460
mov eax, dword [0x1019188c]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
add esp, 4
push 0
push 0
push 0x147
push eax
call esi
cmp eax, 1
je 0x1005d919
mov ecx, dword [0x1019188c]
push 0
push 0
push 0x147
push ecx
call esi
cmp eax, 2
jne 0x1005d923
push 1
call fcn.1004ac10
add esp, 4
cmp dword [0x10191bc4], 3
jle 0x1005d936
push 0
call fcn.1004ac10
add esp, 4
call fcn.10037b20
call fcn.1003e550
mov edx, eax
test edx, edx
jle 0x1005d9d0
mov esi, dword [edx*4 + 0x2fb6ae0]
mov byte [0x1012d401], 0
call fcn.10037c50
push edx
call fcn.100386f0
mov edx, dword [esi + 0xc]
push edx
add esi, 0x360
push esi
push 0x100a02f4
push 0x1011c6e8
call dword [sym.imp.MSVCR100.dll_sprintf]
push 0x1011c6e8
call fcn.10008080
mov eax, dword [0x101a46e8]
mov ecx, dword [0x100eaf2c]
add esp, 0x18
push fcn.1003e6b0
push 0x190
add eax, 0x48
push eax
push ecx
mov byte [0x1012d3fb], 0
mov dword [0x1012d3c8], 0xffffffff
call dword [sym.imp.USER32.dll_SetTimer]
push 0
push 0
push 0
push 0
call fcn.1003e6b0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.1004b990
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret