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

Disassembly:
mov eax, 0x200a1300
call fcn.2007d394
sub esp, 0xd4
mov eax, dword [0x200cc84c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov ebx, ecx
mov dword [ebp - 0x78], ebx
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x38], ecx
mov esi, dword [ebp + 0xc]
mov dword [ebp - 0x64], esi
call fcn.200342ea
test eax, eax
je 0x2005cfc5
mov eax, dword [esi + 0xc]
sub eax, dword [esi + 8]
add eax, dword [esi + 4]
cmp eax, 0x20
jl 0x2005cfc2
push 0x14
mov ecx, esi
call fcn.2000135f
mov dword [ebp - 0x84], eax
test eax, eax
jne 0x2005cb02
or eax, 0xffffffff
jmp 0x2005cfc5
mov ecx, esi
call fcn.2000131e
mov dword [ebp - 0x74], eax
mov ecx, esi
call fcn.2000131e
mov dword [ebp - 0x70], eax
mov ecx, esi
call fcn.200012b7
mov dword [ebp - 0x60], eax
mov ecx, esi
call fcn.20001279
mov byte [ebp - 0x32], al
mov ecx, esi
call fcn.20001279
mov byte [ebp - 0x31], al
mov edi, dword [esi + 0xc]
sub edi, dword [esi + 8]
add edi, dword [esi + 4]
mov dword [ebp - 0x5c], edi
push 0x14
lea eax, [ebx + 8]
push eax
push dword [ebp - 0x84]
call fcn.2007ce10
add esp, 0xc
test eax, eax
jne 0x2005cfc2
push dword [ebp - 0x38]
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebx + 0x19040]
call fcn.2003e7f0
mov eax, dword [ebx + 0x19044]
cmp dword [ebp - 0x44], eax
je 0x2005cfc2
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x68], eax
mov ecx, dword [ebp - 0x44]
mov dword [ecx + 0x24], eax
and dword [ecx + 0x30], 0
push dword [ebp - 0x38]
lea eax, [ebp - 0x7c]
push eax
lea ecx, [ebx + 0x191c4]
call fcn.2003e7f0
mov eax, dword [ebx + 0x191c8]
mov ecx, dword [ebp - 0x7c]
cmp ecx, eax
je 0x2005cbbe
mov eax, dword [ebp - 0x68]
mov dword [ecx + 0x24], eax
mov eax, dword [ebp - 0x44]
mov eax, dword [eax + 0x20]
mov dword [ecx + 0x20], eax
mov ecx, ebx
call fcn.2004d339
movzx eax, byte [ebp - 0x32]
imul eax, eax, 0x3e8
mov ecx, dword [ebp - 0x44]
mov dword [ecx + 0x28], eax
test eax, eax
jne 0x2005cbe2
mov dword [ecx + 0x28], 0x5f5e100
jmp 0x2005cbf7
mov edx, 0x4e20
cmp eax, edx
jb 0x2005cbf4
mov edx, 0x493e0
cmp eax, edx
jbe 0x2005cbf7
mov dword [ecx + 0x28], edx
xor eax, eax
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x2c], eax
cmp dword [ebx + 0x10c00], eax
jne 0x2005cc83
lea ecx, [ebp - 0x54]
call fcn.200013ff
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x54], eax
mov ax, word [ebp - 0x60]
mov word [ebp - 0x50], ax
lea edi, [ebx + 0x10c0c]
lea esi, [ebp - 0x54]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
cmp dword [ebx + 0x2a4], 2
je 0x2005cc7d
lea ecx, [ebx + 0x10c06]
call fcn.200342ea
test eax, eax
jne 0x2005cc7d
lea eax, [ebp - 0xa8]
push eax
lea ecx, [ebp - 0x54]
call fcn.20034401
and dword [ebp - 4], 0
cmp dword [eax + 0x18], 0x10
jb 0x2005cc5f
mov eax, dword [eax + 4]
jmp 0x2005cc62
add eax, 4
push eax
mov ecx, ebx
call fcn.2005c9ad
or dword [ebp - 4], 0xffffffff
push 0
push 1
lea ecx, [ebp - 0xa8]
call fcn.2000275e
mov edi, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x64]
lea ecx, [ebx + 0x10b5c]
call fcn.20076426
cmp word [ebp - 0x60], ax
jne 0x2005cca7
lea ecx, [ebx + 0x300]
call fcn.20034302
mov ecx, dword [ebp - 0x38]
call fcn.20034302
mov eax, dword [ebp - 0x38]
mov eax, dword [eax]
cmp eax, dword [ebx + 0x191e2]
jne 0x2005cccd
mov eax, dword [ebp - 0x74]
test eax, eax
je 0x2005cccd
mov dword [ebx + 0x2b4], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebx + 0x2b8], eax
movzx eax, byte [ebp - 0x31]
lea eax, [eax + eax*2]
shl eax, 1
cmp edi, eax
jl 0x2005ce21
lea ecx, [ebp - 0x40]
call fcn.200013ff
cmp byte [ebp - 0x31], 0
jbe 0x2005cdd4
movzx eax, byte [ebp - 0x31]
mov dword [ebp - 0x58], eax
mov ecx, esi
call fcn.2000131e
mov dword [ebp - 0x40], eax
mov ecx, esi
call fcn.200012b7
mov word [ebp - 0x3c], ax
lea ecx, [ebp - 0x40]
call fcn.200342ea
test eax, eax
je 0x2005cdcb
push 6
lea eax, [ebx + 0x300]
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.2007ce10
add esp, 0xc
test eax, eax
je 0x2005cdcb
push 6
lea eax, [ebx + 0x10c00]
push eax
lea eax, [ebp - 0x40]
push eax
call fcn.2007ce10
add esp, 0xc
test eax, eax
je 0x2005cdcb
cmp dword [ebx + 0x548], 0
jne 0x2005cdcb
xor edi, edi
inc edi
cmp dword [ebx + 0x192e4], edi
je 0x2005cdaa
lea eax, [ebp - 0xc4]
push eax
lea ecx, [ebp - 0x40]
call fcn.20034401
mov dword [ebp - 4], edi
cmp dword [eax + 0x18], 0x10
jb 0x2005cd83
mov eax, dword [eax + 4]
jmp 0x2005cd86
add eax, 4
push 0x82
push eax
push str.tracker
mov ecx, ebx
call fcn.20057758
or dword [ebp - 4], 0xffffffff
push 0
push edi
lea ecx, [ebp - 0xc4]
call fcn.2000275e
lea eax, [ebp - 0x40]
push eax
mov ecx, ebx
call fcn.2003fd59
test eax, eax
jne 0x2005cdcb
push eax
push eax
push 3
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 0x38]
mov ecx, ebx
call fcn.20057256
dec dword [ebp - 0x58]
jne 0x2005ccf7
lea eax, [ebx + 0x10938]
push eax
lea ecx, [ebp - 0x48]
call fcn.200011c0
mov dword [ebp - 4], 2
mov eax, dword [ebx + 0x10968]
mov ecx, dword [ebx + 0x10998]
lea edi, [ecx + eax]
or dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x48], 0
je 0x2005ce12
push dword [ebp - 0x48]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [ebp - 0x48]
dec dword [eax + 0x18]
cmp edi, 0x1e
jae 0x2005ce21
mov eax, dword [ebp - 0x44]
mov dword [eax + 0x28], 0x2710
mov edi, dword [esi + 0xc]
sub edi, dword [esi + 8]
add edi, dword [esi + 4]
cmp edi, 4
jl 0x2005cfc2
mov ecx, esi
call fcn.20001279
mov byte [ebp - 0x33], al
mov ecx, esi
call fcn.200012b7
mov dword [ebp - 0x80], eax
mov dword [ebp - 0x18], 0xf
push 0
lea ecx, [ebp - 0x30]
call fcn.20001bc0
mov dword [ebp - 4], 3
movzx eax, word [ebp - 0x80]
add eax, 4
cmp edi, eax
jne 0x2005cee5
mov byte [ebp - 4], 4
mov ecx, esi
call fcn.200013b6
mov dword [ebp - 0x8c], eax
push eax
lea ecx, [ebp - 0x30]
call fcn.20003a20
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x88], eax
cmp eax, 1
jb 0x2005cee5
push 0
lea ecx, [ebp - 0x30]
call fcn.200176a7
mov al, byte [eax]
mov byte [ebp - 0x49], al
cmp al, 0x3a
je 0x2005cee5
cmp al, 0x2a
jne 0x2005cec9
mov ecx, dword [ebx + 0x108f4]
test ecx, ecx
je 0x2005cee5
cmp dword [ebp - 0x18], 0x10
mov eax, dword [ebp - 0x2c]
jae 0x2005cebf
lea eax, [ebp - 0x2c]
mov edx, dword [ecx]
push eax
push 6
call dword [edx + 4]
jmp 0x2005cee5
cmp al, 0x23
je 0x2005cee5
push 0x200a4a9c
lea ecx, [ebp - 0x30]
call fcn.20003a20
jmp 0x2005cee5
mov dword [ebp - 4], 3
mov cl, byte [ebp - 0x33]
xor esi, esi
inc esi
cmp cl, 1
jne 0x2005cf03
lea eax, [ebx + 0x192e4]
cmp dword [eax], esi
je 0x2005cf03
mov dword [eax], esi
cmp dword [ebx + 0x192e4], esi
jne 0x2005cf20
cmp cl, 2
jne 0x2005cf20
cmp dword [ebx + 0x192e8], 0xffffffff
jne 0x2005cf48
and dword [ebx + 0x192e4], 0
cmp cl, 3
jne 0x2005cf34
cmp dword [ebx + 0x2a4], 2
jge 0x2005cf48
mov dword [ebx + 0x192e4], esi
cmp cl, 4
jne 0x2005cf48
cmp dword [ebx + 0x2a4], 2
jne 0x2005cf48
mov dword [ebx + 0x192e4], esi
cmp byte [ebp - 0x31], 0
jne 0x2005cfb3
test cl, 0x10
je 0x2005cfb3
lea eax, [ebp - 0xe0]
push eax
mov ecx, dword [ebp - 0x38]
call fcn.20034401
mov byte [ebp - 4], 6
cmp dword [eax + 0x18], 0x10
jb 0x2005cf71
mov eax, dword [eax + 4]
jmp 0x2005cf74
add eax, 4
push eax
lea ecx, [ebp - 0x6c]
call fcn.20004f37
mov byte [ebp - 4], 8
push 0
push esi
lea ecx, [ebp - 0xe0]
call fcn.2000275e
mov ebx, dword [ebx + 0x108f4]
test ebx, ebx
je 0x2005cfa7
mov eax, dword [ebx]
push 0x200aa2f0
push 5
mov ecx, ebx
call dword [eax + 4]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x6c]
call fcn.200026ee
or dword [ebp - 4], 0xffffffff
push 0
push esi
lea ecx, [ebp - 0x30]
call fcn.2000275e
xor eax, eax
inc eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.2007c9ae
leave
ret 0xc