private static int[] C4ImageSubroutineDecode(byte[] C4ImageData, ushort[] Palette, int Width, int Height, ColorFormat PixelFormat, bool Unswizzle = true) { C4ImageData = Utilities.Utilities.SeparateNibbles(C4ImageData); int[] RGB8Palette = PaletteManager.GetRGBA8Palette(Palette, PixelFormat); byte[] UnscrambledData = Unswizzle ? SwizzleUtil.Unswizzle(C4ImageData, Width, Height, 8, 8) : C4ImageData; int[] ImageData = new int[UnscrambledData.Length]; for (int i = 0; i < ImageData.Length; i++) { ImageData[i] = RGB8Palette[UnscrambledData[i]]; } return(ImageData); }