Пример #1
0
        private void method_7(BinaryReader binaryReader_0, int int_0, long long_0)
        {
            long num = long_0;

            for (int i = 0; i < int_0; i++)
            {
                Class168 @class = null;
                uint     num2   = 0u;
                switch (this.method_0(i))
                {
                case FSBClass1.Enum23.const_0:
                    @class = this.method_8(binaryReader_0, out num2);
                    break;

                case FSBClass1.Enum23.const_1:
                    @class = this.method_9(binaryReader_0, out num2);
                    break;

                case FSBClass1.Enum23.const_2:
                    @class = this.method_12(binaryReader_0, out num2);
                    break;

                case FSBClass1.Enum23.const_3:
                    @class = FSBClass1.smethod_2(binaryReader_0, out num2, this.method_33()[0]);
                    break;
                }
                this.method_33().Add(@class);
                @class.stream_1 = new Stream18(binaryReader_0.BaseStream, num, (long)((ulong)num2));
                num            += (long)((ulong)num2);
            }
        }
Пример #2
0
        private static GenericAudioStream smethod_0(Class168 class168_0)
        {
            bool   flag     = (class168_0.enum22_0 & FSBFlags2.flag_19) != FSBFlags2.flag_0;
            Stream stream_  = class168_0.stream_1;
            long   position = stream_.Position;

            byte[] array = new byte[4];
            stream_.Read(array, 0, 4);
            stream_.Position = position;
            if (array[0] == 255 && array[1] >= 240)
            {
                if ((class168_0.enum22_0 & FSBFlags2.flag_27) != FSBFlags2.flag_0 && class168_0.uint_3 > 2u)
                {
                    return(new MP3Class(class168_0.stream_1, (int)(class168_0.uint_3 / 2u), flag ? Enum4.const_3 : Enum4.const_0));
                }
                return(new MP3Stream(class168_0.stream_1, flag ? Enum4.const_3 : Enum4.const_0));
            }
            else
            {
                string @string;
                if ((@string = Encoding.UTF8.GetString(array, 0, 3)) != null && @string == "Ogg")
                {
                    return(new OGGStream(class168_0.stream_1));
                }
                if ((class168_0.enum22_0 & FSBFlags2.flag_17) != FSBFlags2.flag_0)
                {
                    return(new Stream5(class168_0.stream_1, new WaveFormat(class168_0.int_0, ((class168_0.enum22_0 & FSBFlags2.flag_4) != FSBFlags2.flag_0) ? 8 : 16, (int)class168_0.uint_3)));
                }
                throw new Exception5("FSB SubFile: Data not supported.");
            }
        }
Пример #3
0
        private Class168 method_12(BinaryReader inputBin, out uint dataSize)
        {
            uint     num;
            Class168 @class = this.method_13(inputBin, out dataSize, out num);

            this.method_11(inputBin, @class, num - 80u);
            return(@class);
        }
Пример #4
0
 private void method_29(BinaryWriter binaryWriter_0, Class168 class168_0, int int_0)
 {
     this.method_27(binaryWriter_0, class168_0, int_0);
     binaryWriter_0.Write(class168_0.float_2);
     binaryWriter_0.Write(class168_0.float_3);
     binaryWriter_0.Write(class168_0.int_1);
     binaryWriter_0.Write(class168_0.short_1);
     binaryWriter_0.Write(class168_0.short_2);
 }
Пример #5
0
        private Class168 method_13(BinaryReader inputBin, out uint dataSize, out uint hdrSize)
        {
            Class168 @class = this.method_10(inputBin, out dataSize, out hdrSize);

            @class.float_2 = inputBin.ReadSingle();
            @class.float_3 = inputBin.ReadSingle();
            Console.WriteLine(inputBin.BaseStream.Position);
            @class.int_1 = inputBin.ReadInt32();
            Console.WriteLine(@class.int_1);
            @class.short_1 = inputBin.ReadInt16();
            @class.short_2 = inputBin.ReadInt16();
            return(@class);
        }
Пример #6
0
 private void method_25(BinaryWriter binaryWriter_0, Class168 class168_0)
 {
     binaryWriter_0.Write(FSBClass1.smethod_8(class168_0.FileName, 32));
     binaryWriter_0.Write(class168_0.uint_0);
     binaryWriter_0.Write((uint)class168_0.stream_1.Length);
     binaryWriter_0.Write(class168_0.int_0);
     binaryWriter_0.Write(class168_0.ushort_1);
     binaryWriter_0.Write((ushort)class168_0.uint_3);
     binaryWriter_0.Write(class168_0.ushort_0);
     binaryWriter_0.Write(class168_0.short_0);
     binaryWriter_0.Write((uint)class168_0.enum22_0);
     binaryWriter_0.Write(class168_0.uint_1);
     binaryWriter_0.Write(class168_0.uint_2);
 }
Пример #7
0
        private Class168 method_8(BinaryReader inputBin, out uint dataSize)
        {
            Class168 @class = new Class168();

            @class.FileName = this.method_14(inputBin.ReadBytes(32));
            @class.uint_0   = inputBin.ReadUInt32();
            dataSize        = inputBin.ReadUInt32();
            @class.int_0    = inputBin.ReadInt32();
            @class.ushort_1 = inputBin.ReadUInt16();
            @class.uint_3   = (uint)inputBin.ReadUInt16();
            @class.ushort_0 = inputBin.ReadUInt16();
            @class.short_0  = inputBin.ReadInt16();
            @class.enum22_0 = (FSBFlags2)inputBin.ReadUInt32();
            @class.uint_1   = inputBin.ReadUInt32();
            @class.uint_2   = inputBin.ReadUInt32();
            return(@class);
        }
Пример #8
0
 public static long smethod_0(string string_0, Stream[] stream_0)
 {
     long length;
     using (FSBClass1 @class = new FSBClass1())
     {
         @class.byte_0 = FSBClass2.fsbEncryptionKey;
         @class.enum20_0 = FSBEnum1.const_3;
         @class.enum21_0 = FSBFlags1.flag_0;
         for (int i = 0; i < stream_0.Length; i++)
         {
             Stream stream = stream_0[i];
             stream.Position = 0L;
             Class16 class2 = AudioManager.smethod_3(stream);
             Class168 class3 = new Class168();
             class3.FileName = i + ".mp3";
             class3.enum22_0 = (((class2.method_0() == 1) ? FSBFlags2.flag_6 : FSBFlags2.flag_7) | FSBFlags2.flag_10);
             class3.int_0 = class2.method_3();
             class3.ushort_0 = 255;
             class3.short_0 = 0;
             class3.ushort_1 = 255;
             class3.uint_3 = (uint)class2.method_0();
             class3.uint_0 = class2.uint_0;
             class3.uint_1 = 0u;
             class3.uint_2 = class3.uint_0 - 1u;
             class3.float_2 = 1f;
             class3.float_3 = 10000f;
             class3.int_1 = 0;
             class3.short_1 = 0;
             class3.short_2 = -1;
             class3.stream_1 = stream;
             @class.method_33().Add(class3);
         }
         @class.method_16(string_0);
         length = new FileInfo(string_0).Length;
     }
     return length;
 }
Пример #9
0
        private static Class168 smethod_2(BinaryReader inputBin, out uint dataSize, Class168 firstFile)
        {
            Class168 @class = new Class168();

            @class.uint_0 = inputBin.ReadUInt32();
            dataSize      = inputBin.ReadUInt32();
            Console.WriteLine(inputBin.BaseStream.Position);
            @class.FileName = firstFile.FileName;
            @class.uint_1   = firstFile.uint_1;
            @class.uint_2   = firstFile.uint_2;
            @class.enum22_0 = firstFile.enum22_0;
            @class.int_0    = firstFile.int_0;
            @class.ushort_0 = firstFile.ushort_0;
            @class.short_0  = firstFile.short_0;
            @class.ushort_1 = firstFile.ushort_1;
            @class.uint_3   = firstFile.uint_3;
            @class.float_2  = firstFile.float_2;
            @class.float_3  = firstFile.float_3;
            @class.int_1    = firstFile.int_1;
            @class.short_1  = firstFile.short_1;
            @class.short_2  = firstFile.short_2;
            @class.stream_0 = firstFile.stream_0;
            return(@class);
        }
Пример #10
0
 private static GenericAudioStream smethod_0(Class168 class168_0)
 {
     bool flag = (class168_0.enum22_0 & FSBFlags2.flag_19) != FSBFlags2.flag_0;
     Stream stream_ = class168_0.stream_1;
     long position = stream_.Position;
     byte[] array = new byte[4];
     stream_.Read(array, 0, 4);
     stream_.Position = position;
     if (array[0] == 255 && array[1] >= 240)
     {
         if ((class168_0.enum22_0 & FSBFlags2.flag_27) != FSBFlags2.flag_0 && class168_0.uint_3 > 2u)
         {
             return new MP3Class(class168_0.stream_1, (int)(class168_0.uint_3 / 2u), flag ? Enum4.const_3 : Enum4.const_0);
         }
         return new MP3Stream(class168_0.stream_1, flag ? Enum4.const_3 : Enum4.const_0);
     }
     else
     {
         string @string;
         if ((@string = Encoding.UTF8.GetString(array, 0, 3)) != null && @string == "Ogg")
         {
             return new OGGStream(class168_0.stream_1);
         }
         if ((class168_0.enum22_0 & FSBFlags2.flag_17) != FSBFlags2.flag_0)
         {
             return new Stream5(class168_0.stream_1, new WaveFormat(class168_0.int_0, ((class168_0.enum22_0 & FSBFlags2.flag_4) != FSBFlags2.flag_0) ? 8 : 16, (int)class168_0.uint_3));
         }
         throw new Exception5("FSB SubFile: Data not supported.");
     }
 }
Пример #11
0
 private void method_28(BinaryWriter binaryWriter_0, Class168 class168_0)
 {
     this.method_29(binaryWriter_0, class168_0, FSBClass1.smethod_6(class168_0));
     StreamHelper.CopyStream(binaryWriter_0.BaseStream, class168_0.stream_0);
 }
Пример #12
0
 private static int smethod_6(Class168 class168_0)
 {
     return 80 + (int)class168_0.stream_0.Length;
 }
Пример #13
0
 private static int smethod_7(Class168 class168_0)
 {
     return 8;
 }
Пример #14
0
 private void method_11(BinaryReader binaryReader_0, Class168 class168_0, uint uint_0)
 {
     class168_0.stream_0 = new Stream18(binaryReader_0.BaseStream, binaryReader_0.BaseStream.Position, (long)((ulong)uint_0));
 }
Пример #15
0
 private void method_11(BinaryReader binaryReader_0, Class168 class168_0, uint uint_0)
 {
     class168_0.stream_0 = new Stream18(binaryReader_0.BaseStream, binaryReader_0.BaseStream.Position, (long)((ulong)uint_0));
 }
Пример #16
0
 private static int smethod_4(Class168 class168_0)
 {
     return 64;
 }
Пример #17
0
 private static int smethod_6(Class168 class168_0)
 {
     return(80 + (int)class168_0.stream_0.Length);
 }
Пример #18
0
 private static void smethod_3(BinaryWriter binaryWriter_0, Class168 class168_0)
 {
     binaryWriter_0.Write(class168_0.uint_0);
     binaryWriter_0.Write((uint)class168_0.stream_1.Length);
 }
Пример #19
0
 private Class168 method_8(BinaryReader inputBin, out uint dataSize)
 {
     Class168 @class = new Class168();
     @class.FileName = this.method_14(inputBin.ReadBytes(32));
     @class.uint_0 = inputBin.ReadUInt32();
     dataSize = inputBin.ReadUInt32();
     @class.int_0 = inputBin.ReadInt32();
     @class.ushort_1 = inputBin.ReadUInt16();
     @class.uint_3 = (uint)inputBin.ReadUInt16();
     @class.ushort_0 = inputBin.ReadUInt16();
     @class.short_0 = inputBin.ReadInt16();
     @class.enum22_0 = (FSBFlags2)inputBin.ReadUInt32();
     @class.uint_1 = inputBin.ReadUInt32();
     @class.uint_2 = inputBin.ReadUInt32();
     return @class;
 }
Пример #20
0
 private void method_29(BinaryWriter binaryWriter_0, Class168 class168_0, int int_0)
 {
     this.method_27(binaryWriter_0, class168_0, int_0);
     binaryWriter_0.Write(class168_0.float_2);
     binaryWriter_0.Write(class168_0.float_3);
     binaryWriter_0.Write(class168_0.int_1);
     binaryWriter_0.Write(class168_0.short_1);
     binaryWriter_0.Write(class168_0.short_2);
 }
Пример #21
0
 private void method_28(BinaryWriter binaryWriter_0, Class168 class168_0)
 {
     this.method_29(binaryWriter_0, class168_0, FSBClass1.smethod_6(class168_0));
     StreamHelper.CopyStream(binaryWriter_0.BaseStream, class168_0.stream_0);
 }
Пример #22
0
 private void method_27(BinaryWriter binaryWriter_0, Class168 class168_0, int int_0)
 {
     binaryWriter_0.Write((ushort)int_0);
     binaryWriter_0.Write(FSBClass1.smethod_8(class168_0.FileName, 30));
     binaryWriter_0.Write(class168_0.uint_0);
     binaryWriter_0.Write((uint)class168_0.stream_1.Length);
     binaryWriter_0.Write(class168_0.uint_1);
     binaryWriter_0.Write(class168_0.uint_2);
     binaryWriter_0.Write((uint)class168_0.enum22_0);
     binaryWriter_0.Write(class168_0.int_0);
     binaryWriter_0.Write(class168_0.ushort_0);
     binaryWriter_0.Write(class168_0.short_0);
     binaryWriter_0.Write(class168_0.ushort_1);
     binaryWriter_0.Write((ushort)class168_0.uint_3);
 }
Пример #23
0
 private static int smethod_4(Class168 class168_0)
 {
     return(64);
 }
Пример #24
0
 private static Class168 smethod_2(BinaryReader inputBin, out uint dataSize, Class168 firstFile)
 {
     Class168 @class = new Class168();
     @class.uint_0 = inputBin.ReadUInt32();
     dataSize = inputBin.ReadUInt32();
     Console.WriteLine(inputBin.BaseStream.Position);
     @class.FileName = firstFile.FileName;
     @class.uint_1 = firstFile.uint_1;
     @class.uint_2 = firstFile.uint_2;
     @class.enum22_0 = firstFile.enum22_0;
     @class.int_0 = firstFile.int_0;
     @class.ushort_0 = firstFile.ushort_0;
     @class.short_0 = firstFile.short_0;
     @class.ushort_1 = firstFile.ushort_1;
     @class.uint_3 = firstFile.uint_3;
     @class.float_2 = firstFile.float_2;
     @class.float_3 = firstFile.float_3;
     @class.int_1 = firstFile.int_1;
     @class.short_1 = firstFile.short_1;
     @class.short_2 = firstFile.short_2;
     @class.stream_0 = firstFile.stream_0;
     return @class;
 }
Пример #25
0
 private static int smethod_7(Class168 class168_0)
 {
     return(8);
 }
Пример #26
0
 private static void smethod_3(BinaryWriter binaryWriter_0, Class168 class168_0)
 {
     binaryWriter_0.Write(class168_0.uint_0);
     binaryWriter_0.Write((uint)class168_0.stream_1.Length);
 }