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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x68
mov eax, dword [0x10216574]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x5fe9d4], 0
push esi
mov esi, ecx
je 0x1019cccf
cmp byte [esi + 0xa8], 0
push ebx
push edi
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
je 0x1019c90d
push 0x3e9
call fcn.1001bc43
test eax, eax
je 0x1019c90d
mov eax, dword [0x1022188c]
test al, 1
jne 0x1019c84f
or eax, 1
mov dword [0x1022188c], eax
call edi
mov dword [0x10221890], eax
push 1
push 0
push 0x3ea
mov ecx, esi
call fcn.1001b69c
imul eax, eax, 0x3e8
mov dword [esi + 0xb4], eax
call edi
cmp byte [esi + 0xc8], 0
mov ebx, eax
je 0x1019c884
mov byte [esi + 0xc8], 0
jmp 0x1019c907
mov eax, ebx
sub eax, dword [0x10221890]
cmp eax, dword [esi + 0xb4]
jbe 0x1019c90d
push 0x64
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.1015d520
add esp, 0xc
lea eax, [ebp - 0x68]
mov ecx, esi
push 0x63
push eax
push 0x3f1
call fcn.1001b6dc
lea ecx, [ebp - 0x68]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1019c8c0
sub ecx, edx
je 0x1019c907
lea eax, [ebp - 0x68]
push 0x101ef9dc
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
jne 0x1019c8ff
lea eax, [ebp - 0x68]
push 0x101ef9e0
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
je 0x1019c8ff
lea ecx, [ebp - 0x68]
call fcn.1018a7d0
jmp 0x1019c907
lea ecx, [ebp - 0x68]
call fcn.1018aa00
mov dword [0x10221890], ebx
cmp byte [esi + 0xb0], 0
je 0x1019c9fd
push 0x3eb
mov ecx, esi
call fcn.1001bc43
test eax, eax
je 0x1019c9fd
mov eax, dword [0x10221894]
test al, 1
jne 0x1019c946
or eax, 1
mov dword [0x10221894], eax
call edi
mov dword [0x10221898], eax
push 1
push 0
push 0x3ec
mov ecx, esi
call fcn.1001b69c
imul eax, eax, 0x3e8
mov dword [esi + 0xb8], eax
call edi
cmp byte [esi + 0xc9], 0
mov ebx, eax
je 0x1019c978
mov byte [esi + 0xc9], 0
jmp 0x1019c9f7
mov eax, ebx
sub eax, dword [0x10221898]
cmp eax, dword [esi + 0xb8]
jbe 0x1019c9fd
push 0x64
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.1015d520
add esp, 0xc
lea eax, [ebp - 0x68]
mov ecx, esi
push 0x63
push eax
push 0x3f2
call fcn.1001b6dc
lea ecx, [ebp - 0x68]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1019c9b0
sub ecx, edx
je 0x1019c9f7
lea eax, [ebp - 0x68]
push 0x101ef9dc
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
jne 0x1019c9ef
lea eax, [ebp - 0x68]
push 0x101ef9e0
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
je 0x1019c9ef
lea ecx, [ebp - 0x68]
call fcn.1018a7d0
jmp 0x1019c9f7
lea ecx, [ebp - 0x68]
call fcn.1018aa00
mov dword [0x10221898], ebx
cmp byte [esi + 0xb1], 0
je 0x1019caed
push 0x3ef
mov ecx, esi
call fcn.1001bc43
test eax, eax
je 0x1019caed
mov eax, dword [0x1022189c]
test al, 1
jne 0x1019ca36
or eax, 1
mov dword [0x1022189c], eax
call edi
mov dword [0x102218a0], eax
push 1
push 0
push 0x3f0
mov ecx, esi
call fcn.1001b69c
imul eax, eax, 0x3e8
mov dword [esi + 0xbc], eax
call edi
cmp byte [esi + 0xca], 0
mov ebx, eax
je 0x1019ca68
mov byte [esi + 0xca], 0
jmp 0x1019cae7
mov eax, ebx
sub eax, dword [0x102218a0]
cmp eax, dword [esi + 0xbc]
jbe 0x1019caed
push 0x64
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.1015d520
add esp, 0xc
lea eax, [ebp - 0x68]
mov ecx, esi
push 0x63
push eax
push 0x3f3
call fcn.1001b6dc
lea ecx, [ebp - 0x68]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1019caa0
sub ecx, edx
je 0x1019cae7
lea eax, [ebp - 0x68]
push 0x101ef9dc
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
jne 0x1019cadf
lea eax, [ebp - 0x68]
push 0x101ef9e0
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
je 0x1019cadf
lea ecx, [ebp - 0x68]
call fcn.1018a7d0
jmp 0x1019cae7
lea ecx, [ebp - 0x68]
call fcn.1018aa00
mov dword [0x102218a0], ebx
cmp byte [esi + 0xb2], 0
je 0x1019cbdd
push 0x3f5
mov ecx, esi
call fcn.1001bc43
test eax, eax
je 0x1019cbdd
mov eax, dword [0x102218a4]
test al, 1
jne 0x1019cb26
or eax, 1
mov dword [0x102218a4], eax
call edi
mov dword [0x102218a8], eax
push 1
push 0
push 0x3f6
mov ecx, esi
call fcn.1001b69c
imul eax, eax, 0x3e8
mov dword [esi + 0xc0], eax
call edi
cmp byte [esi + 0xcb], 0
mov ebx, eax
je 0x1019cb58
mov byte [esi + 0xcb], 0
jmp 0x1019cbd7
mov eax, ebx
sub eax, dword [0x102218a8]
cmp eax, dword [esi + 0xc0]
jbe 0x1019cbdd
push 0x64
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.1015d520
add esp, 0xc
lea eax, [ebp - 0x68]
mov ecx, esi
push 0x63
push eax
push 0x3f7
call fcn.1001b6dc
lea ecx, [ebp - 0x68]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1019cb90
sub ecx, edx
je 0x1019cbd7
lea eax, [ebp - 0x68]
push 0x101ef9dc
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
jne 0x1019cbcf
lea eax, [ebp - 0x68]
push 0x101ef9e0
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
je 0x1019cbcf
lea ecx, [ebp - 0x68]
call fcn.1018a7d0
jmp 0x1019cbd7
lea ecx, [ebp - 0x68]
call fcn.1018aa00
mov dword [0x102218a8], ebx
cmp byte [esi + 0xb3], 0
je 0x1019cccd
push 0x3f9
mov ecx, esi
call fcn.1001bc43
test eax, eax
je 0x1019cccd
mov eax, dword [0x102218ac]
test al, 1
jne 0x1019cc16
or eax, 1
mov dword [0x102218ac], eax
call edi
mov dword [0x102218b0], eax
push 1
push 0
push 0x3fa
mov ecx, esi
call fcn.1001b69c
imul eax, eax, 0x3e8
mov dword [esi + 0xc4], eax
call edi
cmp byte [esi + 0xcc], 0
mov edi, eax
je 0x1019cc48
mov byte [esi + 0xcc], 0
jmp 0x1019ccc7
mov eax, edi
sub eax, dword [0x102218b0]
cmp eax, dword [esi + 0xc4]
jbe 0x1019cccd
push 0x64
lea eax, [ebp - 0x68]
push 0
push eax
call fcn.1015d520
add esp, 0xc
lea eax, [ebp - 0x68]
mov ecx, esi
push 0x63
push eax
push 0x3fb
call fcn.1001b6dc
lea ecx, [ebp - 0x68]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1019cc80
sub ecx, edx
je 0x1019ccc7
lea eax, [ebp - 0x68]
push 0x101ef9dc
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
jne 0x1019ccbf
lea eax, [ebp - 0x68]
push 0x101ef9e0
push eax
call fcn.1015d0f0
add esp, 8
test eax, eax
je 0x1019ccbf
lea ecx, [ebp - 0x68]
call fcn.1018a7d0
jmp 0x1019ccc7
lea ecx, [ebp - 0x68]
call fcn.1018aa00
mov dword [0x102218b0], edi
pop edi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop esi
call fcn.1015b166
mov esp, ebp
pop ebp
ret