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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x3c
cmp dword [0x118d9b1c], 0
push ebx
push esi
push edi
jbe 0x100b92e4
mov al, byte [0x118d9b20]
dec al
cmp al, 7
ja 0x100b92e4
push 0xa
mov ecx, 0x861110
call ecx
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x100b92e4
push 0xb
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x100b92e4
push 0xc
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x100b92e4
push 0xd
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x100b92e4
push 0xe
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x100b92e4
push 0xf
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x100b92e4
push 0x10
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x100b92e4
push 0x4f
mov eax, 0x861110
call eax
mov edx, 0x85ec20
mov ecx, eax
call edx
test al, al
jne 0x100b92e4
cmp dword [0x10a723a8], 0x66
jne 0x100b9c76
fild dword [0xe61e58]
sub esp, 0x10
fdiv dword [0xe7c3d4]
fld qword [0x1013fa58]
fsub st(1), st(0)
fxch st(1)
fsub qword [0x1013f760]
fstp dword [esp + 0x1c]
fild dword [0xe61e5c]
fdiv dword [0xe7c3d8]
fsubrp st(1)
fstp dword [esp + 0x20]
fld dword [esp + 0x20]
fsub qword [0x1013fd80]
fstp dword [esp + 0x24]
fld dword [0x10150fa8]
fstp dword [esp + 0xc]
fld dword [0x1013f7f0]
fstp dword [esp + 8]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [esp + 0x1c]
fstp dword [esp]
call fcn.10037e20
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
test al, al
je 0x100b9136
call edi
add eax, 0x1f4
mov dword [0x10a88818], eax
fldz
sub esp, 0x14
fstp dword [esp + 0x10]
fld dword [0x1013fc74]
fstp dword [esp + 0xc]
fld dword [0x1013f54c]
fstp dword [esp + 8]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [esp + 0x20]
fstp dword [esp]
call fcn.100c51b0
fld dword [esp + 0xc]
call fcn.1012e5b0
fld dword [esp + 0x10]
fadd qword [0x1013f6e8]
mov esi, eax
movzx eax, byte [0x118d9b20]
mov ecx, dword [eax*4 + 0x10150e38]
push ecx
push 0x10135e70
push 0
push 0x6b
push 0
push 0xe6fcf7ff
call fcn.1012e5b0
mov edx, dword [0x116de53c]
push eax
push esi
push edx
mov cl, 3
call fcn.1008a600
movzx eax, word [0x118d9b1a]
fld dword [esp + 0x34]
movzx ecx, word [0x118d9b18]
fadd qword [0x1013fee0]
add esp, 0x24
push eax
push ecx
push 0x10906578
push 0
push 0x6b
push 0xffe50064
push 0xe6fcf7ff
call fcn.1012e5b0
mov edx, dword [0x116de53c]
push eax
push esi
push edx
mov cl, 3
call fcn.1008a600
fld dword [esp + 0x38]
add esp, 0x28
fadd qword [0x1013f750]
push 0x109067d0
push 0
push 0x6b
fst qword [esp + 0x3c]
push 0x70707064
fsub qword [0x1013fcb8]
push 0xe6fcf7ff
call fcn.1012e5b0
push eax
mov eax, dword [0x116de53c]
push esi
push eax
mov cl, 3
call fcn.1008a600
fld dword [0x10140218]
mov ecx, dword [0x118d9b1c]
fstp dword [esp + 0x1c]
fld qword [esp + 0x50]
add esp, 0x14
fsub qword [0x1013f8f0]
fstp dword [esp + 0x24]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [esp + 0x18]
fstp dword [esp]
call fcn.100b8830
add esp, 0xc
fld dword [0x1013f7f0]
push 0x10906a28
sub esp, 0xc
fstp dword [esp + 8]
fld dword [esp + 0x24]
fstp dword [esp + 4]
fld dword [esp + 0x1c]
fstp dword [esp]
call fcn.100c54b0
test al, al
je 0x100b92e4
call edi
sub eax, dword [0x118c4fe8]
cmp eax, 0x3e8
jbe 0x100b92e4
cmp byte [0x118c7f2d], 0
je 0x100b92bb
mov byte [0x118c7f2d], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
lea edx, [esp + 0x28]
mov ecx, 8
push edx
mov dword [esp + 0x2c], 0x33d308c1
mov dword [esp + 0x30], 1
call fcn.10100800
add esp, 4
call edi
mov dword [0x118c4fe8], eax
cmp byte [0x118c7f2d], 0
je 0x100b9c76
cmp byte [0x118d9b20], 4
mov ebx, dword [0x10a88860]
push 0x91
jb 0x100b9a39
mov ecx, 0x109083f0
call fcn.10029370
mov eax, dword [0x10a88860]
fld dword [eax]
add esp, 4
fadd qword [0x1013f6d8]
push str.Tahoma
push 0
push 3
push 0
fstp dword [esp + 0x20]
fld dword [eax + 4]
mov eax, dword [0x108c77ec]
fadd qword [0x1013f918]
push 0
push 1
push 0
push 0
fstp dword [esp + 0x2c]
push 0
push 0x2bc
push 0
push 0
push eax
push 0xf
call dword [sym.imp.GDI32.dll_CreateFontA]
fldz
sub esp, 0x14
fstp dword [esp + 0x10]
fld dword [0x1013f548]
mov edi, eax
fstp dword [esp + 0xc]
fld dword [0x10140490]
fstp dword [esp + 8]
fld dword [esp + 0x20]
fstp dword [esp + 4]
fld dword [esp + 0x24]
fstp dword [esp]
call fcn.100c51b0
fld dword [esp + 0xc]
fadd qword [0x1013f590]
sub esp, 0x14
fst qword [esp + 0x34]
fstp dword [esp + 0x2c]
fldz
fstp dword [esp + 0x10]
fld dword [0x1013f548]
fstp dword [esp + 0xc]
fld dword [0x10140490]
fstp dword [esp + 8]
fld dword [esp + 0x2c]
fstp dword [esp + 4]
fld dword [esp + 0x24]
fstp dword [esp]
call fcn.100c51b0
fld dword [esp + 0xc]
fadd qword [0x1013fb00]
sub esp, 0x14
fst qword [esp + 0x3c]
fld dword [esp + 0x24]
fadd qword [0x1013f9d8]
fst qword [esp + 0x4c]
fstp dword [esp + 0x28]
fldz
fstp dword [esp + 0x10]
fld dword [0x1013f548]
fstp dword [esp + 0xc]
fld dword [0x10140490]
fstp dword [esp + 8]
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fstp dword [esp + 4]
fld dword [esp + 0x28]
fstp dword [esp]
call fcn.100c51b0
fld dword [esp + 0x10]
sub esp, 0x14
fadd qword [0x1013fc90]
fst qword [esp + 0x54]
fldz
fstp dword [esp + 0x10]
fld dword [0x1013f828]
fstp dword [esp + 0xc]
fld dword [0x10140490]
fstp dword [esp + 8]
fld qword [esp + 0x3c]
fadd qword [0x1013f6d8]
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fstp dword [esp + 4]
fstp dword [esp + 0x30]
fld dword [esp + 0x30]
fstp dword [esp]
call fcn.100c51b0
push 1
mov ecx, 0x635fd0
call ecx
fld1
fst dword [esp]
sub esp, 0xc
fst dword [esp + 8]
fst dword [esp + 4]
fstp dword [esp]
call dword [sym.imp.OPENGL32.dll_glColor4f]
fld dword [esp + 0xc]
fadd qword [0x1013fd80]
push ecx
mov edx, 0x637c60
fst qword [esp + 0x34]
fldz
fst dword [esp]
fld dword [0x1013f8b4]
push 1
push 1
sub esp, 0x20
fstp dword [esp + 0x1c]
fld dword [0x10140ae0]
fstp dword [esp + 0x18]
fst dword [esp + 0x14]
fstp dword [esp + 0x10]
fld dword [0x10140384]
fstp dword [esp + 0xc]
fld dword [0x1013fc78]
fstp dword [esp + 8]
fstp dword [esp + 0x48]
fld dword [esp + 0x48]
fstp dword [esp + 4]
fld dword [esp + 0x40]
fstp dword [esp]
push 0x7b36
call edx
fldz
fst dword [esp + 0x2c]
add esp, 0x2c
fld dword [0x10140adc]
push 1
push 1
sub esp, 0x20
fstp dword [esp + 0x1c]
mov eax, 0x637c60
fld dword [0x10140ae0]
fstp dword [esp + 0x18]
fld dword [0x1013f8b4]
fstp dword [esp + 0x14]
fstp dword [esp + 0x10]
fld dword [0x10140384]
fstp dword [esp + 0xc]
fld dword [0x1013fc78]
fstp dword [esp + 8]
fld dword [esp + 0x44]
fstp dword [esp + 4]
fld dword [esp + 0x40]
fstp dword [esp]
push 0x7b36
call eax
fldz
add esp, 0x2c
fst dword [esp]
fld dword [0x10140ad8]
push 1
push 1
sub esp, 0x20
fst dword [esp + 0x1c]
mov ecx, 0x637c60
fstp dword [esp + 0x18]
fst dword [esp + 0x14]
fstp dword [esp + 0x10]
fld dword [0x1013f6b0]
fstp dword [esp + 0xc]
fld dword [0x1013f79c]
fstp dword [esp + 8]
fld dword [esp + 0x38]
fadd qword [0x1013fac0]
fstp dword [esp + 0x48]
fld dword [esp + 0x48]
fstp dword [esp + 4]
fld dword [esp + 0x3c]
fadd qword [0x101407b8]
fstp dword [esp + 0x48]
fld dword [esp + 0x48]
fstp dword [esp]
push 0x7b32
call ecx
mov edx, 0x635f50
call edx
push 0
mov eax, 0x635fd0
call eax
fld dword [esp + 0x44]
add esp, 0x34
call fcn.1012e5b0
fld qword [esp + 0x30]
fsub qword [0x1013f578]
push str.
push 0
push 0x4e
push 0x7d787064
push 0
mov esi, eax
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push eax
push esi
push ecx
mov cl, 3
call fcn.1008a600
fld qword [esp + 0x50]
fsub qword [0x1013f6b8]
add esp, 0x20
push 0x1013ab98
push 0
push 0x4e
push 0
push 0xffc45eff
call fcn.1012e5b0
push eax
push esi
push edi
mov cl, 3
call fcn.1008a600
mov ecx, dword [0x118d9b28]
mov ebx, dword [0x118d9b24]
sub ecx, ebx
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
add esp, 0x20
cmp eax, 1
jae 0x100b9680
mov ebx, str.NULL
jmp 0x100b9683
add ebx, 8
fld dword [esp + 0xc]
push ebx
fadd qword [0x1013f6f8]
push 0
push 0x4e
push 0
push 0xe6fcf7ff
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push eax
push esi
push ecx
mov cl, 3
call fcn.1008a600
mov ecx, dword [0x118d9b28]
mov ebx, dword [0x118d9b24]
sub ecx, ebx
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
add esp, 0x20
cmp eax, 3
mov eax, str.NULL
jb 0x100b96dd
lea eax, [ebx + 0x30]
fld dword [esp + 0xc]
push eax
fadd qword [0x1013ff10]
push 0
push 0x4e
push 0
fadd qword [0x1013f6d8]
push 0xe6fcf7ff
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push eax
push esi
push ecx
mov cl, 3
call fcn.1008a600
fld qword [esp + 0x40]
fadd qword [0x1013fd80]
add esp, 0x20
push str.
push 0
push 0x4e
fst qword [esp + 0x3c]
fsub qword [0x1013f578]
push 0x7d787064
push 0
call fcn.1012e5b0
mov edx, dword [0x116de53c]
push eax
push esi
push edx
mov cl, 3
call fcn.1008a600
fld qword [esp + 0x50]
fsub qword [0x1013f6b8]
add esp, 0x20
push 0x1013ab98
push 0
push 0x4e
push 0
push 0xffc45eff
call fcn.1012e5b0
push eax
push esi
push edi
mov cl, 3
call fcn.1008a600
mov ecx, dword [0x118d9b28]
mov ebx, dword [0x118d9b24]
sub ecx, ebx
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
add esp, 0x20
cmp eax, 2
jae 0x100b97a4
mov ebx, str.NULL
jmp 0x100b97a7
add ebx, 0x1c
fld qword [esp + 0x20]
push ebx
fadd qword [0x1013f6f8]
push 0
push 0x4e
push 0
push 0xe6fcf7ff
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push eax
push esi
push ecx
mov cl, 3
call fcn.1008a600
mov ecx, dword [0x118d9b28]
mov ebx, dword [0x118d9b24]
sub ecx, ebx
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
add esp, 0x20
cmp eax, 4
mov eax, str.NULL
jb 0x100b9801
lea eax, [ebx + 0x44]
fld qword [esp + 0x20]
push eax
fadd qword [0x1013ff10]
push 0
push 0x4e
push 0
fadd qword [0x1013f6d8]
push 0xe6fcf7ff
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push eax
push esi
push ecx
mov cl, 3
call fcn.1008a600
fld qword [esp + 0x48]
fadd qword [0x1013fd80]
add esp, 0x20
fst qword [esp + 0x30]
fld qword [esp + 0x38]
call fcn.1012e5b0
fsub qword [0x1013f578]
push str.
push 0
push 0x4e
push 0x7d787064
push 0
mov esi, eax
call fcn.1012e5b0
mov edx, dword [0x116de53c]
push eax
push esi
push edx
mov cl, 3
call fcn.1008a600
fld qword [esp + 0x50]
fsub qword [0x1013f6b8]
add esp, 0x20
push 0x1013ab98
push 0
push 0x4e
push 0
push 0xffc45eff
call fcn.1012e5b0
push eax
push esi
push edi
mov cl, 3
call fcn.1008a600
add esp, 0x20
cmp byte [0x118d9b20], 5
jbe 0x100b996f
mov ecx, dword [0x118d9b28]
mov ebx, dword [0x118d9b24]
sub ecx, ebx
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
mov eax, str.NULL
jb 0x100b98e1
lea eax, [ebx + 8]
fld qword [esp + 0x28]
push eax
fadd qword [0x1013f6f8]
push 0
push 0x4e
push 0
push 0xe6fcf7ff
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push eax
push esi
push ecx
mov cl, 3
call fcn.1008a600
mov ecx, dword [0x118d9b28]
mov ebx, dword [0x118d9b24]
sub ecx, ebx
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
add esp, 0x20
cmp eax, 2
mov eax, str.NULL
jb 0x100b993b
lea eax, [ebx + 0x1c]
fld qword [esp + 0x28]
push eax
fadd qword [0x1013ff10]
push 0
push 0x4e
push 0
fadd qword [0x1013f6d8]
push 0xe6fcf7ff
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push eax
push esi
push ecx
mov cl, 3
call fcn.1008a600
add esp, 0x20
fld qword [esp + 0x28]
fadd qword [0x1013f708]
call fcn.1012e5b0
fld qword [esp + 0x40]
mov ebx, eax
call fcn.1012e5b0
mov edx, dword [0x116de53c]
push str.
push 0
push 0x4e
push 0x7d787064
push 0
mov esi, eax
push ebx
push esi
push edx
mov cl, 3
call fcn.1008a600
push str.TOP_1
push 0
push 0x4e
push 0
push 0xffc45eff
push ebx
push esi
push edi
mov cl, 3
call fcn.1008a600
add esp, 0x40
cmp byte [0x118d9b20], 7
jbe 0x100b9a2b
mov ecx, dword [0x118d9b28]
mov ebx, dword [0x118d9b24]
sub ecx, ebx
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
mov eax, str.NULL
jb 0x100b99fd
lea eax, [ebx + 8]
fld qword [esp + 0x28]
push eax
fadd qword [0x1013fa48]
push 0
push 0x4e
push 0
push 0xe6fcf7ff
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push eax
push esi
push ecx
mov cl, 3
call fcn.1008a600
add esp, 0x20
push edi
call dword [sym.imp.GDI32.dll_DeleteObject]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x10908648
call fcn.10029370
mov eax, dword [0x10a88860]
fld dword [eax]
add esp, 4
fadd qword [0x1013f6c0]
fstp dword [esp + 0x14]
fld dword [eax + 4]
fstp dword [esp + 0x18]
fld dword [eax + 0x18]
fsub qword [0x1013f580]
fstp dword [esp + 0x1c]
fld dword [esp + 0x1c]
fdiv qword [0x1013f6e8]
fst qword [esp + 0x30]
call fcn.1012e5b0
fld dword [esp + 0x18]
fadd qword [0x1013f750]
mov edi, eax
call fcn.1012e5b0
fld dword [esp + 0x14]
mov esi, eax
call fcn.1012e5b0
mov edx, dword [0x116de53c]
push 0x1013aba4
xor ebx, ebx
push ebx
push edi
push ebx
push 0xfabb00ff
push esi
push eax
push edx
mov cl, 3
mov dword [esp + 0x3c], eax
call fcn.1008a600
fld dword [esp + 0x34]
fadd qword [esp + 0x50]
call fcn.1012e5b0
push str.Name
push ebx
push edi
push ebx
push 0xfabb00ff
push esi
push eax
mov dword [esp + 0x5c], eax
mov eax, dword [0x116de53c]
push eax
mov cl, 3
call fcn.1008a600
fld qword [esp + 0x70]
fadd st(0), st(0)
add esp, 0x40
fadd dword [esp + 0x14]
call fcn.1012e5b0
mov ecx, dword [0x116de53c]
push str.Score
push ebx
push edi
push ebx
push 0xfabb00ff
push esi
push eax
push ecx
mov cl, 3
mov dword [esp + 0x48], eax
call fcn.1008a600
mov ecx, dword [0x118d9b28]
sub ecx, dword [0x118d9b24]
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
add esp, 0x20
add eax, edx
mov dword [esp + 0x14], ebx
je 0x100b9c76
fld dword [esp + 0x18]
mov dword [esp + 0xc], ebx
fadd qword [0x10140200]
mov dword [esp + 0x10], ebx
fstp qword [esp + 0x40]
jmp 0x100b9b64
mov ebx, dword [esp + 0x14]
mov esi, ebx
and esi, 0x80000001
jns 0x100b9b73
dec esi
or esi, 0xfffffffe
inc esi
neg esi
sbb esi, esi
and esi, 0xc2c3c700
add esi, 0xe0dfdcff
cmp ebx, 3
jge 0x100b9b8d
mov esi, 0xffe240ff
fild dword [esp + 0xc]
xor ecx, ecx
cmp ebx, 3
setge cl
fadd qword [esp + 0x40]
lea ebx, [ecx - 1]
and ebx, 0xffe2400f
call fcn.1012e5b0
mov ecx, dword [0x118d9b24]
mov edx, dword [esp + 0x10]
mov edx, dword [edx + ecx]
mov ecx, dword [0x116de53c]
push edx
push 0x10135fd4
push 0
push edi
push ebx
push esi
push eax
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x38]
push eax
push ecx
mov cl, 3
call fcn.1008a600
mov edx, dword [0x118d9b24]
mov eax, dword [esp + 0x34]
add esp, 0x24
lea ecx, [eax + edx + 8]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
push ecx
mov ecx, dword [0x116de53c]
push 0
push edi
push ebx
push esi
push edx
push eax
push ecx
mov cl, 3
call fcn.1008a600
mov edx, dword [0x118d9b24]
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + edx + 4]
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x48]
push ecx
mov ecx, dword [0x116de53c]
push 0x10135fd4
push 0
push edi
push ebx
push esi
push edx
push eax
push ecx
mov cl, 3
call fcn.1008a600
mov ecx, dword [0x118d9b28]
sub ecx, dword [0x118d9b24]
mov esi, dword [esp + 0x58]
add dword [esp + 0x54], 0x14
add dword [esp + 0x50], 0xc
mov eax, 0x66666667
imul ecx
sar edx, 3
mov eax, edx
shr eax, 0x1f
inc esi
add eax, edx
add esp, 0x44
mov dword [esp + 0x14], esi
cmp esi, eax
jb 0x100b9b60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret