// Token: 0x060000B3 RID: 179 RVA: 0x00007454 File Offset: 0x00005654 public static string GetMd5Hash(string source) { HashAlgorithm arg_12_0 = new MD5CryptoServiceProvider(); byte[] bytes = Encoding.ASCII.GetBytes(source); return(RecoveryHelper.GetHexString(arg_12_0.ComputeHash(bytes))); }
// Token: 0x060000AE RID: 174 RVA: 0x000072F4 File Offset: 0x000054F4 public static string CreateTempCopy(string filePath) { string text = RecoveryHelper.CreateTempPath(); File.Copy(filePath, text, true); return(text); }
// Token: 0x060000B5 RID: 181 RVA: 0x0000754C File Offset: 0x0000574C public static List <string> FindPaths(string baseDirectory, int maxLevel = 4, int level = 1, params string[] files) { List <string> list = new List <string>(); if (files != null && files.Length != 0 && level <= maxLevel) { try { string[] directories = Directory.GetDirectories(baseDirectory); for (int i = 0; i < directories.Length; i++) { string path = directories[i]; try { DirectoryInfo directoryInfo = new DirectoryInfo(path); FileInfo[] files2 = directoryInfo.GetFiles(); bool flag = false; int num = 0; while (num < files2.Length && !flag) { int num2 = 0; while (num2 < files.Length && !flag) { string arg_69_0 = files[num2]; FileInfo fileInfo = files2[num]; if (arg_69_0 == fileInfo.Name) { flag = true; list.Add(fileInfo.FullName); } num2++; } num++; } foreach (string current in RecoveryHelper.FindPaths(directoryInfo.FullName, maxLevel, level + 1, files)) { if (!list.Contains(current)) { list.Add(current); } } } catch { } } } catch { } return(list); } return(list); }
// Token: 0x060000B0 RID: 176 RVA: 0x0000240C File Offset: 0x0000060C public static string DecryptBlob(string EncryptedData, DataProtectionScope dataProtectionScope, byte[] entropy = null) { return(RecoveryHelper.DecryptBlob(Encoding.Default.GetBytes(EncryptedData), dataProtectionScope, entropy)); }