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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x36dc
call fcn.100841d0
mov eax, dword [0x100a69a0]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x2f91a04], 0xa7f9
jne 0x100599b4
mov dword [ebp + 8], 0x3e8
push esi
push edi
xor edi, edi
xor esi, esi
cmp dword [0x10110464], esi
jle 0x100599f0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [esi*4 + 0x1010f2d0]
cmp eax, 0x7d0
jbe 0x100599e7
push dword [esi*4 + 0x1010eb00]
call fcn.10037e0b
pop ecx
test al, al
je 0x10059a17
inc esi
cmp esi, dword [0x10110464]
jl 0x100599c2
mov eax, dword [0x2fb6ac4]
mov ecx, dword [0x36f9de0]
mov dword [ebp - 0x36d8], eax
mov eax, dword [0x36f9ddc]
mov dword [ebp - 0x36dc], ecx
cmp eax, ecx
je 0x10059ecd
push ebx
jmp 0x10059a84
mov eax, dword [0x10110464]
and dword [ebp - 0x36b8], edi
sub eax, esi
dec eax
test eax, eax
jle 0x10059a73
lea ecx, [esi + 0x1010faa0]
lea eax, [esi*4 + 0x1010eb00]
mov edx, dword [eax + 4]
inc dword [ebp - 0x36b8]
mov dword [eax], edx
mov edx, dword [eax + 0x7d4]
mov dword [eax + 0x7d0], edx
mov dl, byte [ecx + 1]
mov byte [ecx], dl
mov edx, dword [eax + 0x1198]
mov dword [eax + 0x1194], edx
mov edx, dword [0x10110464]
add eax, 4
sub edx, esi
inc ecx
dec edx
cmp dword [ebp - 0x36b8], edx
jl 0x10059a36
dec dword [0x10110464]
jmp 0x100599b8
mov eax, dword [ebp - 0x36c8]
mov esi, dword [eax]
fld dword [esi]
add eax, 4
mov dword [ebp - 0x36c8], eax
mov eax, dword [esi + 0x20]
mov dword [ebp - 0x36d0], eax
call fcn.10083f90
fld dword [esi + 8]
mov dword [ebp - 0x36c0], eax
call fcn.10083f90
cmp dword [0x103acdac], 1
mov ebx, dword [esi + 0x30]
mov dword [ebp - 0x36c4], eax
jne 0x10059b02
fild dword [0x10342a30]
sub esp, 0x10
fstp dword [esp + 0xc]
fild dword [0x10342a2c]
fstp dword [esp + 8]
fild dword [ebp - 0x36c4]
fstp dword [esp + 4]
fild dword [ebp - 0x36c0]
fstp dword [esp]
call fcn.10006f97
fcomp dword [0x1009a9a4]
add esp, 0x10
fnstsw ax
test ah, 5
jnp 0x10059eba
fild dword [ebp - 0x36c4]
sub esp, 0x10
fstp dword [ebp - 0x36b8]
fild dword [ebp - 0x36c0]
fstp dword [ebp - 0x36bc]
fild dword [0x100a6384]
fstp dword [esp + 0xc]
fild dword [0x100a6380]
fstp dword [esp + 8]
fld dword [ebp - 0x36b8]
fstp dword [esp + 4]
fld dword [ebp - 0x36bc]
fstp dword [esp]
call fcn.10006f97
fcomp dword [0x1009a9a4]
add esp, 0x10
fnstsw ax
test ah, 5
jnp 0x10059eba
fld dword [ebp - 0x36b8]
mov eax, dword [ebp - 0x36d8]
sub esp, 0x10
fstp dword [esp + 0xc]
fld dword [ebp - 0x36bc]
fstp dword [esp + 8]
fld dword [eax + 0x1f68]
fstp dword [esp + 4]
fld dword [eax + 0x1f60]
fstp dword [esp]
call fcn.10006f97
add esp, 0x10
call fcn.10083f90
mov dword [ebp - 0x36d4], eax
mov eax, dword [esi + 0xc]
test eax, eax
je 0x10059eba
lea ecx, [ebp - 0xcc]
push ecx
push eax
call fcn.100493d9
cmp dword [0x103acf5c], 1
pop ecx
pop ecx
jne 0x10059d71
lea eax, [ebp - 0xcc]
push 0x1008c55c
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008c554
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008c548
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008c53c
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008fe78
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008fe70
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008c528
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008c51c
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008fe5c
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008fe50
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008c508
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1008c4fc
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e25
lea eax, [ebp - 0xcc]
push 0x1009853c
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e12
lea eax, [ebp - 0xcc]
push 0x10096108
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
je 0x10059e12
lea eax, [ebp - 0xcc]
push 0x1008fe68
push eax
call sub.MSVCR100.dll_strcmp
pop ecx
pop ecx
test eax, eax
jne 0x10059d71
mov eax, ebx
cdq
mov ecx, 0x186a0
idiv ecx
push edx
call fcn.1003710d
pop ecx
test al, al
je 0x10059eba
xor eax, eax
mov dword [ebp - 0x36bc], eax
mov dword [ebp - 0x36b8], eax
mov dword [ebp - 0x36cc], eax
cmp dword [0x10110464], eax
jle 0x10059e6a
mov ecx, dword [ebp - 0x36d0]
mov ebx, eax
cmp dword [ebx*4 + 0x1010eb00], ecx
jne 0x10059e01
cmp dword [ebx*4 + 0x1010fc94], 2
jge 0x10059e60
mov ecx, 0x2f91a04
cmp dword [ecx], 0xa7f9
jne 0x10059dca
cmp byte [eax + 0x1010faa0], 0
je 0x10059e4d
cmp byte [eax + 0x1010faa0], 0
jne 0x10059de7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebx*4 + 0x1010f2d0]
cmp eax, 0x1388
jae 0x10059e4d
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [ebx*4 + 0x1010f2d0]
cmp eax, 0xea60
jb 0x10059e60
mov eax, dword [ebp - 0x36cc]
inc eax
mov dword [ebp - 0x36cc], eax
cmp eax, dword [0x10110464]
jl 0x10059d91
jmp 0x10059e6a
lea eax, [ebp - 0xcc]
push ebx
push eax
call fcn.10048576
pop ecx
jmp 0x10059d68
mov eax, ebx
cdq
mov ecx, 0x186a0
idiv ecx
push eax
push 0x64
mov eax, ebx
cdq
pop ecx
idiv ecx
lea eax, [ebp - 0xcc]
push edx
push eax
call fcn.100370ac
add esp, 0xc
jmp 0x10059d69
and dword [ebp - 0x36bc], 0
mov dword [ebp - 0x36b8], 1
jmp 0x10059e6a
mov dword [ebp - 0x36bc], 1
mov ebx, dword [ebp - 0x36d4]
cmp ebx, dword [ebp + 8]
jge 0x10059eba
cmp dword [ebp - 0x36bc], 0
jne 0x10059eba
cmp dword [0x103acd94], 1
jne 0x10059e98
lea eax, [ebp - 0xcc]
push eax
call fcn.1003752a
pop ecx
cmp al, 1
je 0x10059eba
cmp dword [ebp - 0x36b8], 1
mov eax, edi
mov dword [ebp + eax*4 - 0x36b4], esi
mov dword [ebp + eax*4 - 0x2714], ebx
sete al
mov byte [ebp + edi - 0x4b4], al
inc edi
mov eax, dword [ebp - 0x36dc]
cmp dword [ebp - 0x36c8], eax
jne 0x10059a7e
pop ebx
xor ecx, ecx
test edi, edi
jle 0x10059eea
mov al, byte [ebp + edi - 0x4b4]
test al, al
je 0x10059ee5
inc ecx
cmp ecx, edi
jl 0x10059eda
jmp 0x10059eea
mov eax, edi
dec eax
jne 0x10059ee7
xor esi, esi
xor ecx, ecx
mov edx, 0x1869f
test edi, edi
jle 0x10059f6d
mov eax, dword [ebp + ecx*4 - 0x2714]
cmp eax, edx
jge 0x10059f0b
mov esi, dword [ebp + ecx*4 - 0x36b4]
mov edx, eax
inc ecx
cmp ecx, edi
jl 0x10059ef7
test esi, esi
jle 0x10059f6d
mov edx, dword [0x10110464]
xor eax, eax
test edx, edx
jle 0x10059f31
mov ecx, dword [esi + 0x20]
cmp dword [eax*4 + 0x1010eb00], ecx
je 0x10059f7d
inc eax
cmp eax, edx
jl 0x10059f23
mov eax, dword [esi + 0x20]
mov dword [edx*4 + 0x1010eb00], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [0x10110464]
mov dword [ecx*4 + 0x1010f2d0], eax
mov eax, dword [0x10110464]
mov byte [eax + 0x1010faa0], 1
mov eax, dword [0x10110464]
and dword [eax*4 + 0x1010fc94], 0
inc dword [0x10110464]
mov ecx, dword [ebp - 4]
pop edi
mov eax, esi
xor ecx, ebp
pop esi
call fcn.10083e24
leave
ret
mov byte [eax + 0x1010faa0], 1
jmp 0x10059f6d