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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x30
cmp byte [0x102c00bd], 0
je 0x100bd9a6
push ebx
mov ebx, dword [sym.imp.KERNEL32.dll_GetTickCount]
push edi
call ebx
movd xmm1, dword [0x879340c]
mov edi, eax
movss xmm0, dword [0x102c07c8]
cvtdq2ps xmm1, xmm1
mov dword [ebp - 4], edi
comiss xmm0, xmm1
ja 0x100bd1bb
comiss xmm1, dword [0x102c07d0]
ja 0x100bd1bb
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c07cc]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd1bb
comiss xmm1, dword [0x102c07d4]
mov byte [0x102c07de], 1
jbe 0x100bd1c2
mov byte [0x102c07de], 0
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c0288]
cvtdq2ps xmm1, xmm1
push esi
mov esi, dword [ebp + 8]
comiss xmm0, xmm1
ja 0x100bd274
comiss xmm1, dword [0x102c0290]
ja 0x100bd274
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c028c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd274
comiss xmm1, dword [0x102c0294]
ja 0x100bd274
cmp esi, 0x201
jne 0x100bd228
pop esi
pop edi
mov byte [0x102c029c], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
sub eax, dword [0x102c0298]
mov byte [0x102c029c], 0
cmp eax, 0x1f4
jb 0x100bd9a3
call ebx
cmp byte [0x102c00bd], 1
mov dword [0x102c0298], eax
jne 0x100bd263
mov byte [0x102c00bd], 0
mov dword [0xe8cb3c], 0
jmp 0x100bd274
mov byte [0x102c00bd], 1
mov dword [0xe8cb3c], 1
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c02e8]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd3fa
comiss xmm1, dword [0x102c02f0]
ja 0x100bd3fa
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c02ec]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd3fa
comiss xmm1, dword [0x102c02f4]
ja 0x100bd3fa
cmp esi, 0x201
jne 0x100bd2de
pop esi
pop edi
mov byte [0x102c02fc], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102c02fc], 0
sub eax, dword [0x102c02f8]
cmp eax, 0x1f4
jb 0x100bd9a3
call ebx
mov dl, byte [0x102e0400]
mov ecx, 7
xor dl, 1
mov dword [0x102c02f8], eax
cmp dword [0x102e064c], 3
mov byte [0x102e0400], dl
jne 0x100bd323
mov ecx, 6
jmp 0x100bd352
cmp dword [0x102e064c], 2
jne 0x100bd333
mov ecx, 5
jmp 0x100bd352
cmp dword [0x102e064c], 1
jne 0x100bd343
mov ecx, 4
jmp 0x100bd352
cmp dword [0x102e064c], 4
mov eax, 3
cmove ecx, eax
xor eax, eax
cmp dl, 1
jne 0x100bd3a8
cmp eax, 6
ja case.default.0x100bd3ad
jmp dword [eax*4 + 0x100bd9ac]
mov byte [0x102e0404], 1
jmp case.default.0x100bd3ad
mov byte [0x102e0405], 1
jmp case.default.0x100bd3ad
mov byte [0x102e0406], 1
jmp case.default.0x100bd3ad
mov byte [0x102e0407], 1
jmp case.default.0x100bd3ad
mov byte [0x102e0408], 1
jmp case.default.0x100bd3ad
mov byte [0x102e0409], 1
jmp case.default.0x100bd3ad
mov byte [0x102e040a], 1
jmp case.default.0x100bd3ad
cmp eax, 6
ja case.default.0x100bd3ad
jmp dword [eax*4 + 0x100bd9c8]
mov byte [0x102e0404], 0
jmp case.default.0x100bd3ad
mov byte [0x102e0405], 0
jmp case.default.0x100bd3ad
mov byte [0x102e0406], 0
jmp case.default.0x100bd3ad
mov byte [0x102e0407], 0
jmp case.default.0x100bd3ad
mov byte [0x102e0408], 0
jmp case.default.0x100bd3ad
mov byte [0x102e0409], 0
jmp case.default.0x100bd3ad
mov byte [0x102e040a], 0
inc eax
cmp eax, ecx
jl 0x100bd354
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c0348]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd47c
comiss xmm1, dword [0x102c0350]
ja 0x100bd47c
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c034c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd47c
comiss xmm1, dword [0x102c0354]
ja 0x100bd47c
cmp esi, 0x201
jne 0x100bd454
pop esi
pop edi
mov byte [0x102c035c], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102c035c], 0
sub eax, dword [0x102c0358]
cmp eax, 0x1f4
jb 0x100bd9a3
call ebx
xor byte [0x102e0401], 1
mov dword [0x102c0358], eax
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c03a8]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd4fe
comiss xmm1, dword [0x102c03b0]
ja 0x100bd4fe
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c03ac]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd4fe
comiss xmm1, dword [0x102c03b4]
ja 0x100bd4fe
cmp esi, 0x201
jne 0x100bd4d6
pop esi
pop edi
mov byte [0x102c03bc], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102c03bc], 0
sub eax, dword [0x102c03b8]
cmp eax, 0x1f4
jb 0x100bd9a3
call ebx
xor byte [0x102e0402], 1
mov dword [0x102c03b8], eax
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c0408]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd65d
comiss xmm1, dword [0x102c0410]
ja 0x100bd65d
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c040c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd65d
comiss xmm1, dword [0x102c0414]
ja 0x100bd65d
cmp esi, 0x201
jne 0x100bd568
pop esi
pop edi
mov byte [0x102c041c], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102c041c], 0
sub eax, dword [0x102c0418]
cmp eax, 0x1f4
jb 0x100bd9a3
call ebx
mov cl, byte [0x102e0403]
xor cl, 1
mov dword [0x102c0418], eax
mov byte [0x102e0403], cl
xor eax, eax
nop word [eax + eax]
test cl, cl
jne 0x100bd5f0
cmp eax, 6
ja case.default.0x100bd5f5
jmp dword [eax*4 + 0x100bd9e4]
mov byte [0x102e0404], 1
inc eax
jmp 0x100bd5a0
mov byte [0x102e0405], 1
inc eax
jmp 0x100bd5a0
mov byte [0x102e0406], 1
inc eax
jmp 0x100bd5a0
mov byte [0x102e0407], 1
inc eax
jmp 0x100bd5a0
mov byte [0x102e0408], 1
inc eax
jmp 0x100bd5a0
mov byte [0x102e0409], 1
inc eax
jmp 0x100bd5a0
cmp eax, 6
ja case.default.0x100bd5f5
jmp dword [eax*4 + 0x100bda00]
mov byte [0x102e0404], 0
inc eax
jmp 0x100bd5a0
mov byte [0x102e0405], 0
inc eax
jmp 0x100bd5a0
mov byte [0x102e0406], 0
inc eax
jmp 0x100bd5a0
mov byte [0x102e0407], 0
inc eax
jmp 0x100bd5a0
mov byte [0x102e0408], 0
inc eax
jmp 0x100bd5a0
mov byte [0x102e0409], 0
inc eax
jmp 0x100bd5a0
inc eax
cmp eax, 7
jl 0x100bd5a0
jmp 0x100bd65d
mov byte [0x102e040a], 1
jmp 0x100bd65d
mov byte [0x102e040a], 0
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c0828]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd83f
comiss xmm1, dword [0x102c0830]
ja 0x100bd83f
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c082c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd83f
comiss xmm1, dword [0x102c0834]
ja 0x100bd83f
cmp esi, 0x201
jne 0x100bd6c7
pop esi
pop edi
mov byte [0x102c083c], 1
pop ebx
mov esp, ebp
pop ebp
ret 4
mov eax, edi
mov byte [0x102c083c], 0
sub eax, dword [0x102c0838]
cmp eax, 0x1f4
jb 0x100bd9a3
call ebx
push 0x2b
mov dword [0x102c0838], eax
lea eax, [ebp - 0x2f]
push 0
push eax
call fcn.100d44a0
movzx eax, byte [0x102e0400]
add esp, 0xc
mov byte [ebp - 0x2c], al
movzx eax, byte [0x102e0401]
mov byte [ebp - 0x2b], al
movzx eax, byte [0x102e0402]
mov byte [ebp - 0x2a], al
movzx eax, byte [0x102e0403]
mov byte [ebp - 0x29], al
movzx eax, byte [0x102e0404]
mov byte [ebp - 0x28], al
movzx eax, byte [0x102e0405]
mov byte [ebp - 0x27], al
movzx eax, byte [0x102e0406]
mov byte [ebp - 0x26], al
movzx eax, byte [0x102e0407]
mov byte [ebp - 0x25], al
movzx eax, byte [0x102e0408]
mov byte [ebp - 0x24], al
movzx eax, byte [0x102e0409]
mov byte [ebp - 0x23], al
movzx eax, byte [0x102e040a]
mov byte [ebp - 0x22], al
mov eax, dword [0x102e040c]
mov dword [ebp - 0x20], eax
mov eax, dword [0x102e064c]
mov dword [ebp - 0x30], 0x4ff2cc1
cmp eax, 3
jne 0x100bd785
mov byte [ebp - 0x22], 0
jmp 0x100bd7af
cmp eax, 2
jne 0x100bd792
mov word [ebp - 0x23], 0
jmp 0x100bd7af
cmp eax, 1
jne 0x100bd7a3
mov word [ebp - 0x24], 0
mov byte [ebp - 0x22], 0
jmp 0x100bd7af
cmp eax, 4
jne 0x100bd7af
mov dword [ebp - 0x25], 0
mov ecx, 0x100fe2db
mov eax, 0x102c07df
nop dword [eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100bd7e0
test dl, dl
je 0x100bd7dc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100bd7e0
add eax, 2
add ecx, 2
test dl, dl
jne 0x100bd7c0
xor eax, eax
jmp 0x100bd7e5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x100bd7ee
mov byte [ebp - 0x1c], al
jmp 0x100bd805
movups xmm0, xmmword [0x102c07df]
mov eax, dword [0x102c07ef]
mov byte [ebp - 0x1c], 1
movups xmmword [ebp - 0x1b], xmm0
mov dword [ebp - 0xb], eax
mov edx, 0x2c
lea ecx, [ebp - 0x30]
call fcn.100c6710
cmp byte [0x102c00bd], 1
jne 0x100bd82e
mov byte [0x102c00bd], 0
mov dword [0xe8cb3c], 0
jmp 0x100bd83f
mov byte [0x102c00bd], 1
mov dword [0xe8cb3c], 1
cmp dword [0x102e064c], 3
mov ebx, 7
movaps xmm0, xmmword [0x10103690]
movups xmmword [ebp - 0x20], xmm0
mov dword [ebp - 0x10], 0xd3
mov dword [ebp - 0xc], 0xd4
mov dword [ebp - 8], 0xd5
jne 0x100bd874
mov ebx, 6
jmp 0x100bd8a3
cmp dword [0x102e064c], 2
jne 0x100bd884
mov ebx, 5
jmp 0x100bd8a3
cmp dword [0x102e064c], 1
jne 0x100bd894
mov ebx, 4
jmp 0x100bd8a3
cmp dword [0x102e064c], 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 + 0x102bb6c8]
comiss xmm0, xmm1
ja 0x100bd992
comiss xmm1, dword [eax + 0x102bb6d0]
ja 0x100bd992
movd xmm1, dword [0x8793410]
movss xmm0, dword [eax + 0x102bb6cc]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100bd992
comiss xmm1, dword [eax + 0x102bb6d4]
ja 0x100bd992
mov eax, dword [ebp + esi*4 - 0x20]
lea edi, [eax + eax*2]
mov eax, dword [ebp - 4]
shl edi, 5
sub eax, dword [edi + 0x102bb6d8]
cmp dword [ebp + 8], 0x201
je 0x100bd99c
mov byte [edi + 0x102bb6dc], 0
cmp eax, 0x1f4
jb 0x100bd9a3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [edi + 0x102bb6d8], eax
cmp esi, 6
ja case.default.0x100bd93e
jmp dword [esi*4 + 0x100bda1c]
xor byte [0x102e0404], 1
jmp case.default.0x100bd93e
xor byte [0x102e0405], 1
jmp case.default.0x100bd93e
xor byte [0x102e0406], 1
jmp case.default.0x100bd93e
xor byte [0x102e0407], 1
jmp case.default.0x100bd93e
xor byte [0x102e0408], 1
jmp case.default.0x100bd93e
xor byte [0x102e0409], 1
jmp case.default.0x100bd93e
xor byte [0x102e040a], 1
cmp byte [0x102e0403], 1
jne 0x100bd992
mov byte [0x102e0403], 0
inc esi
cmp esi, ebx
jge 0x100bd9a3
jmp 0x100bd8a5
mov byte [edi + 0x102bb6dc], 1
pop esi
pop edi
pop ebx
mov esp, ebp
pop ebp
ret 4