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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
sub esp, 0x40
mov eax, dword [0x101b11c0]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
push edi
push 0x48
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
je 0x10045c64
mov eax, dword [0x1058eee0]
mov byte [eax + 0x29], 0
mov eax, dword [0x1058eee0]
cmp byte [eax + 0x29], 0
jne 0x10045c84
xor al, al
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.10141b74
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push str.Event_System
push eax
push 0x1035837c
call fcn.100110c0
mov ecx, dword [0x1058eee0]
add esp, 0xc
mov byte [ebp - 0x26], al
movss xmm0, dword [ecx + 4]
addss xmm0, dword [0x101a32d8]
push 0x1019a6f6
sub esp, 8
movss dword [esp + 4], xmm0
movss xmm0, dword [ecx]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x101a2f70]
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push dword [0x1058ee80]
push 0x1035837c
call fcn.10011b70
add esp, 0x14
test al, al
je 0x10045cf3
mov eax, dword [0x1058eee0]
mov byte [eax + 0x29], 0
mov dword [ebp - 0x3c], 0x1019dcec
xor al, al
mov dword [ebp - 0x38], 0x1019dcf0
mov edi, 2
mov byte [ebp - 0x25], al
nop dword [eax + eax]
movsx esi, al
mov eax, esi
mov ecx, dword [0x1058eee0]
cdq
idiv edi
movss xmm0, dword [ecx + 4]
addss xmm0, dword [0x101a3648]
push dword [ebp + esi*4 - 0x3c]
sub esp, 8
cvtps2pd xmm1, xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
mulsd xmm0, qword [0x101a2d70]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movd xmm1, edx
movss dword [esp + 4], xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a3284]
cvtdq2pd xmm1, xmm1
cvtps2pd xmm0, xmm0
mulsd xmm1, qword [0x101a2ec0]
addsd xmm1, xmm0
cvtpd2ps xmm0, xmm1
movss dword [esp], xmm0
push dword [esi*4 + 0x1058eee4]
push 0x1035837c
call fcn.10011b70
add esp, 0x14
test al, al
mov al, byte [ebp - 0x25]
je 0x10045dea
test al, al
jne 0x10045dcf
mov ecx, dword [0x1036b4d0]
cmp ecx, edi
jne 0x10045db9
mov dword [0x1036b4d0], 1
inc al
jmp 0x10045d08
cmp ecx, 1
jne 0x10045dc8
mov dword [0x1036b4d0], 0
inc al
jmp 0x10045d08
cmp al, 1
jne 0x10045dea
mov ecx, dword [0x1036b4d0]
test ecx, ecx
je 0x10045e01
cmp ecx, 1
jne 0x10045dea
cmp dword [0x1036b4d4], ecx
je 0x10045df9
inc al
mov byte [ebp - 0x25], al
cmp al, 2
jl 0x10045d10
jmp 0x10045e0b
mov dword [0x1036b4d0], edi
jmp 0x10045e0b
mov dword [0x1036b4d0], 1
cmp dword [0x1036b4dc], 1
mov ecx, dword [0x1058eee0]
movss xmm0, dword [ecx + 4]
jne 0x10046139
addss xmm0, dword [0x101a3378]
push str.Event:
push 1
push 0x34
cvttss2si eax, xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a3330]
push eax
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x101f9640
call fcn.1007a8d0
mov ecx, dword [0x1058eee0]
add esp, 0x1c
movss xmm0, dword [ecx + 4]
addss xmm0, dword [0x101a3378]
push str.Time:
push 1
push 0x34
cvttss2si eax, xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a34b0]
push eax
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x101f9640
call fcn.1007a8d0
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
add esp, 0x1c
call esi
sub eax, dword [0x1036b4e0]
cmp eax, 0x3e8
jbe 0x10045ee6
mov edx, dword [0x1036b4e4]
xor ecx, ecx
test edx, edx
jle 0x10045edf
mov eax, dword [ecx*8 + 0x1036bc24]
test eax, eax
jle 0x10045eda
dec eax
mov dword [ecx*8 + 0x1036bc24], eax
mov edx, dword [0x1036b4e4]
inc ecx
cmp ecx, edx
jl 0x10045ec1
call esi
mov dword [0x1036b4e0], eax
mov edx, dword [0x1036b4d0]
mov dword [ebp - 0x2c], 0
lea esi, [edx*8]
sub esi, edx
add esi, esi
lea eax, [esi + 0xe]
cmp esi, eax
jge 0x1004626e
imul eax, esi, 0x2c
mov dword [ebp - 0x40], 0x3c
add eax, 0x1036b4ec
mov dword [ebp - 0x30], eax
nop dword [eax + eax]
mov edi, dword [esi*8 + 0x1036bc24]
cmp edi, 0xffffffff
jle 0x10046114
test edi, edi
jne 0x10045f4b
lea eax, [ebp - 0x24]
push str.Online
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 8
jmp 0x10045fe5
mov eax, 0x91a2b3c5
imul edi
add edx, edi
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0x34], eax
mov eax, 0x88888889
imul edi
add edx, edi
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, ecx
cdq
idiv dword [ebp - 0x40]
mov eax, ecx
shl eax, 4
sub eax, ecx
mov dword [ebp - 0x38], edx
shl eax, 2
sub edi, eax
lea eax, [ebp - 0x24]
push edi
push edx
push dword [ebp - 0x34]
push 0x1019dd0c
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
mov ecx, dword [ebp - 0x34]
add esp, 0x14
cmp ecx, 0x17
jle 0x10045fce
mov eax, 0x2aaaaaab
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
lea eax, [ebp - 0x24]
push 0x1019dd1c
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x10045fe5
push edi
push dword [ebp - 0x38]
lea eax, [ebp - 0x24]
push ecx
push 0x1019dd28
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
mov eax, dword [esi*8 + 0x1036bc24]
cmp eax, 0xffffffff
jg 0x10045ff8
mov edi, 0xff2d5fe1
jmp 0x10046015
test eax, eax
jne 0x10046003
mov edi, 0xff8be100
jmp 0x10046015
cmp eax, 0x12c
mov edi, 0xff00ffff
mov eax, 0xff8be100
cmovl edi, eax
mov ecx, dword [0x1058eee0]
movd xmm1, dword [ebp - 0x2c]
push dword [ebp - 0x30]
cvtdq2ps xmm1, xmm1
push 1
push 0x34
movss xmm0, dword [ecx + 4]
addss xmm0, dword [0x101a33d0]
addss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a3330]
push eax
cvttss2si eax, xmm0
push eax
push 0xffffffffffffffff
push 0x101f9640
call fcn.1007a8d0
mov ecx, dword [0x1058eee0]
lea eax, [ebp - 0x24]
movd xmm1, dword [ebp - 0x2c]
add esp, 0x1c
cvtdq2ps xmm1, xmm1
push eax
push 1
movss xmm0, dword [ecx + 4]
addss xmm0, dword [0x101a33d0]
push 0x34
addss xmm0, xmm1
cvttss2si eax, xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a34b0]
push eax
cvttss2si eax, xmm0
push eax
push edi
push 0x101f9640
call fcn.1007a8d0
mov ecx, dword [0x1058eee0]
add esp, 0x1c
mov edi, dword [ebp - 0x2c]
movss xmm0, dword [ecx + 4]
addss xmm0, dword [0x101a33d0]
movd xmm1, edi
cvtdq2ps xmm1, xmm1
push 0x1019dd38
push 1
push 0x6e
addss xmm0, xmm1
addss xmm0, dword [0x101a2ba0]
cvttss2si eax, xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a3344]
push eax
cvttss2si eax, xmm0
push eax
push 0x64d3d3d3
push 0x101f9640
call fcn.1007a8d0
mov edx, dword [0x1036b4d0]
add esp, 0x1c
mov eax, dword [ebp - 0x30]
add edi, 0xc
mov dword [ebp - 0x2c], edi
add eax, 0x2c
inc esi
mov dword [ebp - 0x30], eax
lea eax, [edx + 1]
lea ecx, [eax*8]
sub ecx, eax
mov eax, dword [ebp - 0x30]
add ecx, ecx
cmp esi, ecx
jl 0x10045f20
jmp 0x1004626e
mov eax, dword [0x1036b4d8]
addss xmm0, dword [0x101a3438]
cmp eax, 1
jne 0x10046183
push 0x1019dd5c
push eax
cvttss2si eax, xmm0
push 0x34
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a32c0]
push eax
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x101f9640
call fcn.1007a8d0
mov dword [0x1036b4d8], edi
jmp 0x1004626b
cmp eax, 2
jne 0x100461c5
cvttss2si eax, xmm0
push 0x1019dd68
push 1
push 0x34
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a32c0]
push eax
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x101f9640
call fcn.1007a8d0
mov dword [0x1036b4d8], 3
jmp 0x1004626b
cmp eax, 3
jne 0x10046204
cvttss2si eax, xmm0
push 0x1019dd74
push 1
push 0x34
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a32c0]
push eax
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x101f9640
call fcn.1007a8d0
mov dword [0x1036b4d8], 4
jmp 0x1004626b
cmp eax, 4
cvttss2si eax, xmm0
movss xmm0, dword [ecx]
addss xmm0, dword [0x101a32c0]
jne 0x10046243
push 0x1019dd84
push 1
push 0x34
push eax
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x101f9640
call fcn.1007a8d0
mov dword [0x1036b4d8], 0
jmp 0x1004626b
push 0x1019dd94
push 1
push 0x34
push eax
cvttss2si eax, xmm0
push eax
push 0xff19bdff
push 0x101f9640
call fcn.1007a8d0
mov dword [0x1036b4d8], 1
add esp, 0x1c
mov ecx, dword [ebp - 4]
mov al, byte [ebp - 0x26]
xor ecx, ebp
pop edi
pop esi
call fcn.10141b74
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret