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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10066cdd
mov eax, dword fs:[0]
push eax
sub esp, 0x50
mov eax, dword [0x1008f00c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
cmp dword [0x10097134], 0
jne 0x10025935
mov ecx, dword [0x100953f4]
mov eax, dword [0x1009177c]
add eax, 4
push eax
mov edx, dword [ecx]
call dword [edx + 4]
cmp dword [eax], 2
jne 0x10025935
push 0x2d
mov dword [0x10095ad8], 0x100129c0
call fcn.100129c0
cwde
shr eax, 0x10
test eax, eax
je 0x10025677
cmp byte [0x10097390], 0
je 0x1002566e
cmp dword [0x10097394], 0
je 0x1002567e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [0x10097394], eax
ja 0x1002567e
mov byte [0x10097390], 1
jmp 0x100256be
mov byte [0x10097390], 0
push 0x2e
mov dword [0x10095ad8], 0x100129c0
call fcn.100129c0
cwde
shr eax, 0x10
test eax, eax
je 0x100256e0
cmp byte [0x10097398], 0
je 0x100256b7
cmp dword [0x1009739c], 0
je 0x100256e7
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [0x1009739c], eax
ja 0x100256e7
mov byte [0x10097398], 1
xor eax, eax
cmp dword [0x1008f01c], eax
sete al
mov dword [0x1008f01c], eax
xor eax, eax
cmp dword [0x10097134], eax
sete al
mov dword [0x10097134], eax
jmp 0x100256e7
mov byte [0x10097398], 0
cmp dword [0x1008f01c], 0
je 0x10025935
mov eax, dword [0x10095818]
mov ecx, dword [eax]
push ecx
mov dword [esp], 0x43200000
push eax
call dword [ecx + 0x2c]
mov eax, dword [0x10095818]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x34]
mov eax, dword [0x10095818]
movaps xmm0, xmmword [0x100825b0]
movups xmmword [ebp - 0x24], xmm0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x10]
mov eax, dword [0x10095818]
lea edx, [ebp - 0x24]
push 0xc8000000
push 2
push edx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x14]
mov eax, dword [0x10095818]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x44]
movss xmm0, dword [0x10081f70]
mov edx, edi
movss xmm3, dword [0x10081f60]
movaps xmm1, xmm0
movss xmm2, dword [0x10081f74]
push ecx
mov ecx, 0xfffd1c03
mov dword [esp], 0x40000000
call fcn.10019890
add esp, 4
mov ecx, 0xed
xor edx, edx
mov al, byte [edx + 0x10081850]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x30], al
and ecx, 0x800000ff
jns 0x100257a1
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x1a
jl 0x10025784
mov byte [ebp - 0x16], 0
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 0
push eax
push 0xffbfff00
push 0x134
push 0x134
push dword [0x10095828]
call fcn.10012fc0
add esp, 0x14
mov ecx, 0x6e
xor edx, edx
nop word [eax + eax]
mov al, byte [edx + 0x1008186c]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x30], al
and ecx, 0x800000ff
jns 0x100257fd
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x1a
jl 0x100257e0
mov byte [ebp - 0x16], 0
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 1
push eax
push 0xffccffff
push 0x14b
push 0x134
push dword [0x10095828]
call fcn.10012fc0
add esp, 0x14
mov ecx, 0x3c
xor edx, edx
mov al, byte [edx + 0x10081888]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x30], al
and ecx, 0x800000ff
jns 0x10025853
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x1d
jl 0x10025836
mov byte [ebp - 0x13], 0
lea eax, [ebp - 0x30]
mov dword [ebp - 4], 2
push eax
push 0xffccffff
push 0x15d
push 0x134
push dword [0x10095828]
call fcn.10012fc0
add esp, 0x14
mov ecx, 0xbe
xor edx, edx
nop dword [eax]
mov al, byte [edx + 0x100818a8]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x34], al
and ecx, 0x800000ff
jns 0x100258ad
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x21
jl 0x10025890
mov byte [ebp - 0x13], 0
lea eax, [ebp - 0x34]
mov dword [ebp - 4], 3
push eax
push 0xffccffff
push 0x16f
push 0x134
push dword [0x10095828]
call fcn.10012fc0
add esp, 0x14
mov ecx, 0x44
xor edx, edx
mov al, byte [edx + 0x100818cc]
xor al, cl
inc ecx
mov byte [ebp + edx - 0x5c], al
and ecx, 0x800000ff
jns 0x10025903
dec ecx
or ecx, 0xffffff00
inc ecx
inc edx
cmp edx, 0x24
jl 0x100258e6
mov byte [ebp - 0x38], 0
lea eax, [ebp - 0x5c]
mov dword [ebp - 4], 4
push eax
push 0xff800080
push 0x19b
push 0x134
push dword [0x10095828]
call fcn.10012fc0
add esp, 0x14
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10062c29
mov esp, ebp
pop ebp
ret