예제 #1
0
    internal static void smethod_0(MemoryStream A_0, int A_1, MemoryStream A_2, out byte[] A_3)
    {
        Stream12 stream  = new Stream12(A_0);
        Stream12 stream2 = stream.method_11(BookmarkStart.b("礵娷倹夻崽㐿ቁ⭃⥅⑇", 0x10));
        string   str     = BookmarkStart.b("椵", 0x10) + A_1.ToString();
        Stream12 stream3 = stream2.method_11(str);
        Stream12 stream4 = new Stream12(A_2, STGM.STGM_SHARE_EXCLUSIVE | STGM.STGM_READWRITE);
        Stream12 stream5 = stream4.method_12(BookmarkStart.b("礵娷倹夻崽㐿ቁ⭃⥅⑇", 0x10), STGM.STGM_SHARE_EXCLUSIVE | STGM.STGM_READWRITE);

        if (!stream5.method_20(str))
        {
            Stream12.smethod_0(stream3, stream5);
        }
        stream.Dispose();
        stream2.Dispose();
        stream3.Dispose();
        stream  = null;
        stream2 = null;
        stream3 = null;
        A_2     = new MemoryStream();
        stream4.method_17(A_2);
        A_3 = A_2.GetBuffer();
        stream5.Dispose();
        stream4.Dispose();
        stream4 = null;
        stream5 = null;
    }
예제 #2
0
        private Stream method_77(byte[] A_0)
        {
            int num = 10;

            if ((A_0 == null) || (A_0.Length == 0))
            {
                return(null);
            }
            MemoryStream stream  = null;
            Stream12     stream2 = null;
            Stream12     stream3 = null;
            Stream12     stream4 = null;
            Stream12     stream5 = null;
            MemoryStream stream6 = null;

            try
            {
                stream  = new MemoryStream(A_0);
                stream2 = new Stream12(stream);
                stream3 = stream2.method_11(BookmarkStart.b("缯倱帳匵嬷丹氻儽⼿⹁", num));
                stream4 = stream3.method_11(BookmarkStart.b("漯", num) + this.Interface49.get_OleStorageName().ToString());
                stream5 = Stream12.smethod_2();
                Stream12.smethod_0(stream4, stream5);
                stream6 = new MemoryStream();
                stream5.method_17(stream6);
                stream6.Position = 0L;
            }
            catch (Exception)
            {
            }
            finally
            {
                if (stream != null)
                {
                    stream.Close();
                    stream.Dispose();
                }
                if (stream2 != null)
                {
                    stream2.Close();
                    stream3.Dispose();
                }
                if (stream3 != null)
                {
                    stream3.Close();
                    stream3.Dispose();
                }
                if (stream4 != null)
                {
                    stream4.Close();
                    stream4.Dispose();
                }
                if (stream5 != null)
                {
                    stream5.Close();
                    stream5.Dispose();
                }
            }
            return(stream6);
        }
예제 #3
0
 internal void method_37(MemoryStream A_0, string A_1)
 {
     if (!this.bool_0)
     {
         A_0.Position = 0L;
         Stream12 stream  = new Stream12(A_0);
         Stream12 stream2 = stream.method_11(A_1);
         Stream12.smethod_0(stream2, this.stream12_0);
         stream.Dispose();
         stream = null;
         stream2.Dispose();
         stream2 = null;
     }
 }
예제 #4
0
    internal static void smethod_1(Stream A_0, int A_1, Document A_2)
    {
        int num = 2;

        if (((A_0 != null) && (A_0.Length != 0L)) && (A_1 != 0))
        {
            string item = BookmarkStart.b("眧", num) + A_1;
            if (!A_2.ObjPoolContainers.Contains(item))
            {
                A_2.ObjPoolContainers.Add(item);
                A_0.Position = 0L;
                MemoryStream stream  = new MemoryStream();
                Stream12     stream2 = Stream12.smethod_2();
                Stream12     stream3 = stream2.method_13(BookmarkStart.b("朧䠩䘫䬭匯䘱搳夵圷嘹", num));
                byte[]       buffer  = new byte[A_0.Length];
                A_0.Read(buffer, 0, buffer.Length);
                A_0.Position = 0L;
                MemoryStream stream4 = new MemoryStream(buffer);
                Stream12     stream5 = new Stream12(stream4);
                Stream12     stream6 = stream5.method_11(item);
                Stream12.smethod_0(stream6, stream3);
                stream2.Flush();
                stream2.method_17(stream);
                stream.Position = 0L;
                if (A_2.ObjectPool == null)
                {
                    A_2.ObjectPool = stream.GetBuffer();
                }
                else
                {
                    byte[] objectPool = A_2.ObjectPool;
                    smethod_0(stream, A_1, new MemoryStream(A_2.ObjectPool), out objectPool);
                    A_2.ObjectPool = objectPool;
                }
                stream2.Close();
                stream2.Dispose();
                stream3.Close();
                stream3.Dispose();
                stream5.Close();
                stream5.Dispose();
                stream6.Close();
                stream6.Dispose();
                stream.Close();
                stream.Dispose();
            }
        }
    }
예제 #5
0
        internal static byte[] smethod_3(List <DocOleObject> A_0)
        {
            int num = 3;

            byte[] buffer = new byte[0];
            if ((A_0 != null) && (A_0.Count > 0))
            {
                List <string> list = new List <string>();
                using (MemoryStream stream5 = new MemoryStream())
                {
                    using (Stream12 stream = Stream12.smethod_2())
                    {
                        using (Stream12 stream2 = stream.method_13(BookmarkStart.b("昨䤪䜬䨮到䜲攴堶嘸场", num)))
                        {
                            foreach (DocOleObject obj2 in A_0)
                            {
                                string item = BookmarkStart.b("瘨", num) + obj2.Interface49.get_OleStorageName();
                                if (!list.Contains(item))
                                {
                                    list.Add(item);
                                    if (obj2.Interface49.get_Container() != null)
                                    {
                                        obj2.Interface49.get_Container().Position = 0L;
                                        using (Stream12 stream3 = new Stream12(obj2.Interface49.get_Container()))
                                        {
                                            using (Stream12 stream4 = stream3.method_11(item))
                                            {
                                                Stream12.smethod_0(stream4, stream2);
                                            }
                                        }
                                    }
                                }
                            }
                            stream.Flush();
                            stream.method_17(stream5);
                            stream5.Position = 0L;
                            buffer           = stream5.ToArray();
                        }
                    }
                }
                list = null;
            }
            return(buffer);
        }
예제 #6
0
    public static void smethod_0(Stream12 A_0, Stream12 A_1)
    {
        int num = 7;

        if (A_0 == null)
        {
            throw new ArgumentNullException(BookmarkStart.b("帬䀮䐰䄲嘴制", num));
        }
        if (A_1 == null)
        {
            throw new ArgumentNullException(BookmarkStart.b("䤬䨮䈰䜲尴夶堸伺吼倾⽀", num));
        }
        string str = A_0.method_6();

        if (str == null)
        {
            throw new ArgumentException(BookmarkStart.b("縬䀮䐰䄲嘴制ᤸ强刼娾㉀捂⭄⡆㵈歊⹌⁎㽐❒㑔㹖㝘筚㉜⽞Ѡൢdͦ䥨ᡪᡬ൮屰rŴᡶ୸᩺᩼᩾", num));
        }
        using (Stream12 stream = !A_1.method_20(str) ? A_1.method_13(str) : A_1.method_11(str))
        {
            A_0.method_3().imethod_4(0, IntPtr.Zero, IntPtr.Zero, stream.method_3());
            A_1.method_3().imethod_6(0);
        }
    }
예제 #7
0
        private byte[] method_90(string A_0, byte[] A_1)
        {
            int num = 0x11;

            if ((this.stream_1 != null) && (this.OleObjectType == Spire.Doc.Documents.OleObjectType.Undefined))
            {
                A_1 = this.method_92(A_0, A_1);
                return(A_1);
            }
            MemoryStream stream  = null;
            Class1004    class2  = null;
            Stream12     stream2 = null;
            Stream12     stream3 = null;

            if ((A_1 != null) && (A_1.Length != 0))
            {
                stream  = new MemoryStream(A_1);
                stream2 = new Stream12(stream, STGM.STGM_SHARE_EXCLUSIVE | STGM.STGM_READWRITE);
                stream3 = stream2.method_12(BookmarkStart.b("砶嬸儺堼尾㕀ፂ⩄⡆╈", num), STGM.STGM_SHARE_EXCLUSIVE | STGM.STGM_READWRITE);
            }
            else
            {
                stream2 = Stream12.smethod_2();
                stream3 = stream2.method_13(BookmarkStart.b("砶嬸儺堼尾㕀ፂ⩄⡆╈", num));
            }
            class2 = new Class1004(BookmarkStart.b("搶䴸吺似帾♀♂", num), true);
            class2.Interface51.imethod_0().imethod_4(A_0);
            class2.Interface51.imethod_1().method_0()[1].method_13(Class1117.smethod_2(this.OleObjectType));
            MemoryStream stream4 = new MemoryStream();

            class2.Interface51.imethod_2();
            class2.Interface51.imethod_3(stream4);
            class2.System.IDisposable.Dispose();
            stream4.Flush();
            byte[] buffer = stream4.ToArray();
            stream4.Close();
            stream4 = new MemoryStream(buffer);
            MemoryStream stream5 = new MemoryStream();
            Stream12     stream6 = new Stream12(stream4);
            Stream12     stream7 = stream6.method_11(A_0);

            Stream12.smethod_0(stream7, stream3);
            stream2.Flush();
            stream2.method_17(stream5);
            stream5.Position = 0L;
            A_1 = stream5.ToArray();
            stream6.Close();
            stream6.Dispose();
            stream7.Close();
            stream7.Dispose();
            stream2.Close();
            stream2.Dispose();
            stream3.Close();
            stream3.Dispose();
            stream5.Close();
            stream5.Dispose();
            stream4.Close();
            stream4.Dispose();
            if (stream != null)
            {
                stream.Close();
                stream.Dispose();
            }
            return(A_1);
        }