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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x44
cmp dword [0x102df90c], 0
push esi
je 0x10098531
cmp dword [0xe609e8], 4
jne 0x10098531
cmp byte [0x102c037d], 0
je 0x10098531
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c04e8]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100982a7
comiss xmm1, dword [0x102c04f0]
ja 0x100982a7
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c04ec]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100982a7
comiss xmm1, dword [0x102c04f4]
mov byte [0x102c04fe], 1
jbe 0x100982ae
mov byte [0x102c04fe], 0
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c0548]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100982f7
comiss xmm1, dword [0x102c0550]
ja 0x100982f7
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c054c]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x100982f7
comiss xmm1, dword [0x102c0554]
mov byte [0x102c055e], 1
jbe 0x100982fe
mov byte [0x102c055e], 0
mov esi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call esi
movd xmm1, dword [0x879340c]
movss xmm0, dword [0x102c05a8]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x10098358
comiss xmm1, dword [0x102c05b0]
ja 0x10098358
movd xmm1, dword [0x8793410]
movss xmm0, dword [0x102c05ac]
cvtdq2ps xmm1, xmm1
comiss xmm0, xmm1
ja 0x10098358
comiss xmm1, dword [0x102c05b4]
ja 0x10098358
cmp dword [ebp + 8], 0x201
jne 0x10098361
mov byte [0x102c05bc], 1
mov al, 1
pop esi
mov esp, ebp
pop ebp
ret 4
sub eax, dword [0x102c05b8]
mov byte [0x102c05bc], 0
cmp eax, 0x190
jb 0x10098531
call esi
mov dword [0x102c05b8], eax
mov al, byte [0x102c04ff]
cmp al, 0x61
jl 0x1009838d
cmp al, 0x7a
jle 0x10098397
sub al, 0x41
cmp al, 0x19
ja 0x10098527
mov ecx, 0x102c04ff
or esi, 0xffffffff
push edi
or edx, esi
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100983a5
xor eax, eax
sub ecx, edi
pop edi
je 0x10098527
push ebx
nop dword [eax + eax]
mov bl, byte [eax + 0x102c04ff]
cmp bl, 0x40
jne 0x100983cf
mov esi, eax
jmp 0x100983d5
cmp bl, 0x2e
cmove edx, eax
inc eax
cmp eax, ecx
jb 0x100983c0
pop ebx
cmp esi, 0xffffffff
je 0x10098527
cmp edx, 0xffffffff
je 0x10098527
cmp esi, edx
jg 0x10098527
lea eax, [ecx - 1]
cmp edx, eax
jge 0x10098527
mov ecx, 0x100fd2db
mov eax, 0x102c055f
nop word [eax + eax]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x10098430
test dl, dl
je 0x1009842c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x10098430
add eax, 2
add ecx, 2
test dl, dl
jne 0x10098410
xor eax, eax
jmp 0x10098435
sbb eax, eax
or eax, 1
test eax, eax
je 0x10098514
mov ecx, 0x102c055f
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10098445
sub ecx, edx
cmp ecx, 7
jne 0x10098514
push 0x43
lea eax, [ebp - 0x43]
push 0
push eax
call fcn.100d29b0
push 0x32
lea eax, [ebp - 0x40]
mov dword [ebp - 0x44], 0xf2f144c3
push 0
push eax
call fcn.100d29b0
movzx eax, word [0x102c052f]
lea ecx, [ebp - 0x44]
movzx edx, byte [ebp - 0x43]
xorps xmm0, xmm0
movq qword [ebp - 0xe], xmm0
movups xmm0, xmmword [0x102c04ff]
mov word [ebp - 0x10], ax
mov eax, dword [0x102c0567]
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 6], 0
movups xmm0, xmmword [0x102c050f]
mov dword [ebp - 6], eax
movzx eax, word [0x102c056b]
movups xmmword [ebp - 0x30], xmm0
mov word [ebp - 2], 0
movups xmm0, xmmword [0x102c051f]
mov word [ebp - 2], ax
movups xmmword [ebp - 0x20], xmm0
movq xmm0, qword [0x102c055f]
movq qword [ebp - 0xe], xmm0
call fcn.100c4ca0
push 0x3c
push 0
push 0x102c04ff
call fcn.100d29b0
push 0x3c
push 0
push 0x102c055f
call fcn.100d29b0
add esp, 0x30
mov byte [0x102c037d], 0
mov al, 1
pop esi
mov esp, ebp
pop ebp
ret 4
mov dword [0x1089df3c], 0x13e
xor al, al
pop esi
mov esp, ebp
pop ebp
ret 4
mov dword [0x1089df3c], 0x13d
xor al, al
pop esi
mov esp, ebp
pop ebp
ret 4