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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
cmp byte [0x102bf17d], 0
je 0x100bc066
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
push edi
call ebx
movd xmm1, dword [0x879340c]
mov edi, eax
movss xmm0, dword [0x102bf888]
cvtdq2ps xmm1, xmm1
mov dword [ebp - 4], edi
comiss xmm0, xmm1
ja 0x100bb87b
comiss xmm1, dword [0x102bf890]
ja 0x100bb87b
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102bf88c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bb87b
comiss xmm1, dword [0x102bf894]
mov byte [0x102bf89e], 1
jbe 0x100bb882
mov byte [0x102bf89e], 0
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102bf348]
cvtdq2ps xmm1, xmm1
push esi
mov esi, dword [ebp + 8]
comiss xmm0, xmm1
ja 0x100bb934
comiss xmm1, dword [0x102bf350]
ja 0x100bb934
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102bf34c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bb934
comiss xmm1, dword [0x102bf354]
ja 0x100bb934
cmp esi, 0x201
jne 0x100bb8e8
pop esi
pop edi
mov byte [0x102bf35c], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
sub eax, dword [0x102bf358]
mov byte [0x102bf35c], 0
cmp eax, 0x1f4
jb 0x100bc063
call ebx
cmp byte [0x102bf17d], 1
mov dword [0x102bf358], eax
jne 0x100bb923
mov byte [0x102bf17d], 0
mov dword [0xe8cb3c], 0
jmp 0x100bb934
mov byte [0x102bf17d], 1
mov dword [0xe8cb3c], 1
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102bf3a8]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbaba
comiss xmm1, dword [0x102bf3b0]
ja 0x100bbaba
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102bf3ac]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbaba
comiss xmm1, dword [0x102bf3b4]
ja 0x100bbaba
cmp esi, 0x201
jne 0x100bb99e
pop esi
pop edi
mov byte [0x102bf3bc], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102bf3bc], 0
sub eax, dword [0x102bf3b8]
cmp eax, 0x1f4
jb 0x100bc063
call ebx
mov dl, byte [0x102df4c0]
mov ecx, 7
xor dl, 1
mov dword [0x102bf3b8], eax
cmp dword [0x102df70c], 3
mov byte [0x102df4c0], dl
jne 0x100bb9e3
mov ecx, 6
jmp 0x100bba12
cmp dword [0x102df70c], 2
jne 0x100bb9f3
mov ecx, 5
jmp 0x100bba12
cmp dword [0x102df70c], 1
jne 0x100bba03
mov ecx, 4
jmp 0x100bba12
cmp dword [0x102df70c], 4
mov eax, 3
cmove ecx, eax
xor eax, eax
cmp dl, 1
jne 0x100bba68
cmp eax, 6
ja case.default.0x100bba6d
jmp dword [eax*4 + 0x100bc06c]
mov byte [0x102df4c4], 1
jmp case.default.0x100bba6d
mov byte [0x102df4c5], 1
jmp case.default.0x100bba6d
mov byte [0x102df4c6], 1
jmp case.default.0x100bba6d
mov byte [0x102df4c7], 1
jmp case.default.0x100bba6d
mov byte [0x102df4c8], 1
jmp case.default.0x100bba6d
mov byte [0x102df4c9], 1
jmp case.default.0x100bba6d
mov byte [0x102df4ca], 1
jmp case.default.0x100bba6d
cmp eax, 6
ja case.default.0x100bba6d
jmp dword [eax*4 + 0x100bc088]
mov byte [0x102df4c4], 0
jmp case.default.0x100bba6d
mov byte [0x102df4c5], 0
jmp case.default.0x100bba6d
mov byte [0x102df4c6], 0
jmp case.default.0x100bba6d
mov byte [0x102df4c7], 0
jmp case.default.0x100bba6d
mov byte [0x102df4c8], 0
jmp case.default.0x100bba6d
mov byte [0x102df4c9], 0
jmp case.default.0x100bba6d
mov byte [0x102df4ca], 0
inc eax
cmp eax, ecx
jl 0x100bba14
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102bf408]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbb3c
comiss xmm1, dword [0x102bf410]
ja 0x100bbb3c
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102bf40c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbb3c
comiss xmm1, dword [0x102bf414]
ja 0x100bbb3c
cmp esi, 0x201
jne 0x100bbb14
pop esi
pop edi
mov byte [0x102bf41c], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102bf41c], 0
sub eax, dword [0x102bf418]
cmp eax, 0x1f4
jb 0x100bc063
call ebx
xor byte [0x102df4c1], 1
mov dword [0x102bf418], eax
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102bf468]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbbbe
comiss xmm1, dword [0x102bf470]
ja 0x100bbbbe
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102bf46c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbbbe
comiss xmm1, dword [0x102bf474]
ja 0x100bbbbe
cmp esi, 0x201
jne 0x100bbb96
pop esi
pop edi
mov byte [0x102bf47c], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102bf47c], 0
sub eax, dword [0x102bf478]
cmp eax, 0x1f4
jb 0x100bc063
call ebx
xor byte [0x102df4c2], 1
mov dword [0x102bf478], eax
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102bf4c8]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbd1d
comiss xmm1, dword [0x102bf4d0]
ja 0x100bbd1d
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102bf4cc]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbd1d
comiss xmm1, dword [0x102bf4d4]
ja 0x100bbd1d
cmp esi, 0x201
jne 0x100bbc28
pop esi
pop edi
mov byte [0x102bf4dc], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102bf4dc], 0
sub eax, dword [0x102bf4d8]
cmp eax, 0x1f4
jb 0x100bc063
call ebx
mov cl, byte [0x102df4c3]
xor cl, 1
mov dword [0x102bf4d8], eax
mov byte [0x102df4c3], cl
xor eax, eax
nop word [eax + eax]
test cl, cl
jne 0x100bbcb0
cmp eax, 6
ja case.default.0x100bbcb5
jmp dword [eax*4 + 0x100bc0a4]
mov byte [0x102df4c4], 1
inc eax
jmp 0x100bbc60
mov byte [0x102df4c5], 1
inc eax
jmp 0x100bbc60
mov byte [0x102df4c6], 1
inc eax
jmp 0x100bbc60
mov byte [0x102df4c7], 1
inc eax
jmp 0x100bbc60
mov byte [0x102df4c8], 1
inc eax
jmp 0x100bbc60
mov byte [0x102df4c9], 1
inc eax
jmp 0x100bbc60
cmp eax, 6
ja case.default.0x100bbcb5
jmp dword [eax*4 + 0x100bc0c0]
mov byte [0x102df4c4], 0
inc eax
jmp 0x100bbc60
mov byte [0x102df4c5], 0
inc eax
jmp 0x100bbc60
mov byte [0x102df4c6], 0
inc eax
jmp 0x100bbc60
mov byte [0x102df4c7], 0
inc eax
jmp 0x100bbc60
mov byte [0x102df4c8], 0
inc eax
jmp 0x100bbc60
mov byte [0x102df4c9], 0
inc eax
jmp 0x100bbc60
inc eax
cmp eax, 7
jl 0x100bbc60
jmp 0x100bbd1d
mov byte [0x102df4ca], 1
jmp 0x100bbd1d
mov byte [0x102df4ca], 0
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102bf8e8]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbeff
comiss xmm1, dword [0x102bf8f0]
ja 0x100bbeff
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102bf8ec]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bbeff
comiss xmm1, dword [0x102bf8f4]
ja 0x100bbeff
cmp esi, 0x201
jne 0x100bbd87
pop esi
pop edi
mov byte [0x102bf8fc], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102bf8fc], 0
sub eax, dword [0x102bf8f8]
cmp eax, 0x1f4
jb 0x100bc063
call ebx
push 0x2b
mov dword [0x102bf8f8], eax
lea eax, [ebp - 0x2f]
push 0
push eax
call fcn.100d2b30
movzx eax, byte [0x102df4c0]
add esp, 0xc
mov byte [ebp - 0x2c], al
movzx eax, byte [0x102df4c1]
mov byte [ebp - 0x2b], al
movzx eax, byte [0x102df4c2]
mov byte [ebp - 0x2a], al
movzx eax, byte [0x102df4c3]
mov byte [ebp - 0x29], al
movzx eax, byte [0x102df4c4]
mov byte [ebp - 0x28], al
movzx eax, byte [0x102df4c5]
mov byte [ebp - 0x27], al
movzx eax, byte [0x102df4c6]
mov byte [ebp - 0x26], al
movzx eax, byte [0x102df4c7]
mov byte [ebp - 0x25], al
movzx eax, byte [0x102df4c8]
mov byte [ebp - 0x24], al
movzx eax, byte [0x102df4c9]
mov byte [ebp - 0x23], al
movzx eax, byte [0x102df4ca]
mov byte [ebp - 0x22], al
mov eax, dword [0x102df4cc]
mov dword [ebp - 0x20], eax
mov eax, dword [0x102df70c]
mov dword [ebp - 0x30], 0x4ff2cc1
cmp eax, 3
jne 0x100bbe45
mov byte [ebp - 0x22], 0
jmp 0x100bbe6f
cmp eax, 2
jne 0x100bbe52
mov word [ebp - 0x23], 0
jmp 0x100bbe6f
cmp eax, 1
jne 0x100bbe63
mov word [ebp - 0x24], 0
mov byte [ebp - 0x22], 0
jmp 0x100bbe6f
cmp eax, 4
jne 0x100bbe6f
mov dword [ebp - 0x25], 0
mov ecx, 0x100fd2db
mov eax, 0x102bf89f
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100bbea0
test dl, dl
je 0x100bbe9c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100bbea0
add eax, 2
add ecx, 2
test dl, dl
jne 0x100bbe80
xor eax, eax
jmp 0x100bbea5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x100bbeae
mov byte [ebp - 0x1c], al
jmp 0x100bbec5
movups xmm0, xmmword [0x102bf89f]
mov eax, dword [0x102bf8af]
mov byte [ebp - 0x1c], 1
movups xmmword [ebp - 0x1b], xmm0
mov dword [ebp - 0xb], eax
mov edx, 0x2c
lea ecx, [ebp - 0x30]
call fcn.100c4b10
cmp byte [0x102bf17d], 1
jne 0x100bbeee
mov byte [0x102bf17d], 0
mov dword [0xe8cb3c], 0
jmp 0x100bbeff
mov byte [0x102bf17d], 1
mov dword [0xe8cb3c], 1
cmp dword [0x102df70c], 3
mov ebx, 7
movaps xmm0, xmmword [0x10102640]
movups xmmword [ebp - 0x20], xmm0
mov dword [ebp - 0x10], 0xd3
mov dword [ebp - 0xc], 0xd4
mov dword [ebp - 8], 0xd5
jne 0x100bbf34
mov ebx, 6
jmp 0x100bbf63
cmp dword [0x102df70c], 2
jne 0x100bbf44
mov ebx, 5
jmp 0x100bbf63
cmp dword [0x102df70c], 1
jne 0x100bbf54
mov ebx, 4
jmp 0x100bbf63
cmp dword [0x102df70c], 4
mov eax, 3
cmove ebx, eax
xor esi, esi
mov eax, 0x879340c
movd xmm1, dword [eax]
movsx eax, word [ebp + esi*4 - 0x20]
cvtdq2ps xmm1, xmm1
lea eax, [eax + eax*2]
shl eax, 5
movss xmm0, dword [eax + 0x102ba788]
comiss xmm0, xmm1
ja 0x100bc052
comiss xmm1, dword [eax + 0x102ba790]
ja 0x100bc052
movd xmm1, dword [0x8793410]
movss xmm0, dword [eax + 0x102ba78c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bc052
comiss xmm1, dword [eax + 0x102ba794]
ja 0x100bc052
mov eax, dword [ebp + esi*4 - 0x20]
lea edi, [eax + eax*2]
mov eax, dword [ebp - 4]
shl edi, 5
sub eax, dword [edi + 0x102ba798]
cmp dword [ebp + 8], 0x201
je 0x100bc05c
mov byte [edi + 0x102ba79c], 0
cmp eax, 0x1f4
jb 0x100bc063
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [edi + 0x102ba798], eax
cmp esi, 6
ja case.default.0x100bbffe
jmp dword [esi*4 + 0x100bc0dc]
xor byte [0x102df4c4], 1
jmp case.default.0x100bbffe
xor byte [0x102df4c5], 1
jmp case.default.0x100bbffe
xor byte [0x102df4c6], 1
jmp case.default.0x100bbffe
xor byte [0x102df4c7], 1
jmp case.default.0x100bbffe
xor byte [0x102df4c8], 1
jmp case.default.0x100bbffe
xor byte [0x102df4c9], 1
jmp case.default.0x100bbffe
xor byte [0x102df4ca], 1
cmp byte [0x102df4c3], 1
jne 0x100bc052
mov byte [0x102df4c3], 0
inc esi
cmp esi, ebx
jge 0x100bc063
jmp 0x100bbf65
mov byte [edi + 0x102ba79c], 1
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret 4