private static void BilinearScale(int start, int end)
{
for (int i = start; i < end; i++)
{
int num = (int)Mathf.Floor((float)i * TextureScale.ratioY);
int num2 = num * TextureScale.w;
int num3 = (num + 1) * TextureScale.w;
int num4 = i * TextureScale.w2;
for (int j = 0; j < TextureScale.w2; j++)
{
int num5 = (int)Mathf.Floor((float)j * TextureScale.ratioX);
float value = (float)j * TextureScale.ratioX - (float)num5;
TextureScale.newColors[num4 + j] = TextureScale.ColorLerpUnclamped(TextureScale.ColorLerpUnclamped(TextureScale.texColors[num2 + num5], TextureScale.texColors[num2 + num5 + 1], value), TextureScale.ColorLerpUnclamped(TextureScale.texColors[num3 + num5], TextureScale.texColors[num3 + num5 + 1], value), (float)i * TextureScale.ratioY - (float)num);
}
}
}