int RandomNumber(int nMin, int nMax, BOOL bSeed = true)
{
        // Declare variables
        static time_t stTime = 0;
        int nRandom;

        // Seed the rand() function
        if (stTime == 0 || bSeed == true)
        {
                stTime = GetTickCount();
                srand((unsigned) stTime);
        }

        // Generate random number
        nRandom = nMin + (int)((double)rand() / RAND_MAX * (nMax - nMin));

        return nRandom;
}