Repository: ewwink/MD5-Hash-Changer Branch: master Commit: 09c4b2d3511d Files: 14 Total size: 144.2 KB Directory structure: gitextract_ft8kid8o/ ├── MD5HashChanger/ │ ├── FolderPicker.cs │ ├── MD5HashChanger.csproj │ ├── MainForm.Designer.cs │ ├── MainForm.cs │ ├── MainForm.resx │ ├── Program.cs │ ├── Properties/ │ │ ├── AssemblyInfo.cs │ │ ├── Resources.Designer.cs │ │ ├── Resources.resx │ │ ├── Settings.Designer.cs │ │ └── Settings.settings │ └── app.config ├── MD5HashChanger.sln └── README.md ================================================ FILE CONTENTS ================================================ ================================================ FILE: MD5HashChanger/FolderPicker.cs ================================================ using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Runtime.InteropServices; using System.Runtime.InteropServices.ComTypes; namespace MD5_Hash_Changer { public class FolderPicker { private readonly List _resultPaths = new List(); private readonly List _resultNames = new List(); public IReadOnlyList ResultPaths => _resultPaths; public IReadOnlyList ResultNames => _resultNames; public string ResultPath => ResultPaths.FirstOrDefault(); public string ResultName => ResultNames.FirstOrDefault(); public virtual string InputPath { get; set; } public virtual bool ForceFileSystem { get; set; } public virtual bool Multiselect { get; set; } public virtual string Title { get; set; } public virtual string OkButtonLabel { get; set; } public virtual string FileNameLabel { get; set; } protected virtual int SetOptions(int options) { if (ForceFileSystem) { options |= (int)FOS.FOS_FORCEFILESYSTEM; } if (Multiselect) { options |= (int)FOS.FOS_ALLOWMULTISELECT; } return options; } // for all .NET public virtual bool? ShowDialog(IntPtr owner, bool throwOnError = false) { var dialog = (IFileOpenDialog)new FileOpenDialog(); if (!string.IsNullOrEmpty(InputPath)) { if (CheckHr(SHCreateItemFromParsingName(InputPath, null, typeof(IShellItem).GUID, out var item), throwOnError) != 0) return null; dialog.SetFolder(item); } var options = FOS.FOS_PICKFOLDERS; options = (FOS)SetOptions((int)options); dialog.SetOptions(options); if (Title != null) { dialog.SetTitle(Title); } if (OkButtonLabel != null) { dialog.SetOkButtonLabel(OkButtonLabel); } if (FileNameLabel != null) { dialog.SetFileName(FileNameLabel); } if (owner == IntPtr.Zero) { owner = Process.GetCurrentProcess().MainWindowHandle; if (owner == IntPtr.Zero) { owner = GetDesktopWindow(); } } var hr = dialog.Show(owner); if (hr == ERROR_CANCELLED) return null; if (CheckHr(hr, throwOnError) != 0) return null; if (CheckHr(dialog.GetResults(out var items), throwOnError) != 0) return null; items.GetCount(out var count); for (var i = 0; i < count; i++) { items.GetItemAt(i, out var item); CheckHr(item.GetDisplayName(SIGDN.SIGDN_DESKTOPABSOLUTEPARSING, out var path), throwOnError); CheckHr(item.GetDisplayName(SIGDN.SIGDN_DESKTOPABSOLUTEEDITING, out var name), throwOnError); if (path != null || name != null) { _resultPaths.Add(path); _resultNames.Add(name); } } return true; } private static int CheckHr(int hr, bool throwOnError) { if (hr != 0 && throwOnError) Marshal.ThrowExceptionForHR(hr); return hr; } [DllImport("shell32")] private static extern int SHCreateItemFromParsingName([MarshalAs(UnmanagedType.LPWStr)] string pszPath, IBindCtx pbc, [MarshalAs(UnmanagedType.LPStruct)] Guid riid, out IShellItem ppv); [DllImport("user32")] private static extern IntPtr GetDesktopWindow(); #pragma warning disable IDE1006 // Naming Styles private const int ERROR_CANCELLED = unchecked((int)0x800704C7); #pragma warning restore IDE1006 // Naming Styles [ComImport, Guid("DC1C5A9C-E88A-4dde-A5A1-60F82A20AEF7")] // CLSID_FileOpenDialog private class FileOpenDialog { } [ComImport, Guid("d57c7288-d4ad-4768-be02-9d969532d960"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] private interface IFileOpenDialog { [PreserveSig] int Show(IntPtr parent); // IModalWindow [PreserveSig] int SetFileTypes(); // not fully defined [PreserveSig] int SetFileTypeIndex(int iFileType); [PreserveSig] int GetFileTypeIndex(out int piFileType); [PreserveSig] int Advise(); // not fully defined [PreserveSig] int Unadvise(); [PreserveSig] int SetOptions(FOS fos); [PreserveSig] int GetOptions(out FOS pfos); [PreserveSig] int SetDefaultFolder(IShellItem psi); [PreserveSig] int SetFolder(IShellItem psi); [PreserveSig] int GetFolder(out IShellItem ppsi); [PreserveSig] int GetCurrentSelection(out IShellItem ppsi); [PreserveSig] int SetFileName([MarshalAs(UnmanagedType.LPWStr)] string pszName); [PreserveSig] int GetFileName([MarshalAs(UnmanagedType.LPWStr)] out string pszName); [PreserveSig] int SetTitle([MarshalAs(UnmanagedType.LPWStr)] string pszTitle); [PreserveSig] int SetOkButtonLabel([MarshalAs(UnmanagedType.LPWStr)] string pszText); [PreserveSig] int SetFileNameLabel([MarshalAs(UnmanagedType.LPWStr)] string pszLabel); [PreserveSig] int GetResult(out IShellItem ppsi); [PreserveSig] int AddPlace(IShellItem psi, int alignment); [PreserveSig] int SetDefaultExtension([MarshalAs(UnmanagedType.LPWStr)] string pszDefaultExtension); [PreserveSig] int Close(int hr); [PreserveSig] int SetClientGuid(); // not fully defined [PreserveSig] int ClearClientData(); [PreserveSig] int SetFilter([MarshalAs(UnmanagedType.IUnknown)] object pFilter); [PreserveSig] int GetResults(out IShellItemArray ppenum); [PreserveSig] int GetSelectedItems([MarshalAs(UnmanagedType.IUnknown)] out object ppsai); } [ComImport, Guid("43826D1E-E718-42EE-BC55-A1E261C37BFE"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] private interface IShellItem { [PreserveSig] int BindToHandler(); // not fully defined [PreserveSig] int GetParent(); // not fully defined [PreserveSig] int GetDisplayName(SIGDN sigdnName, [MarshalAs(UnmanagedType.LPWStr)] out string ppszName); [PreserveSig] int GetAttributes(); // not fully defined [PreserveSig] int Compare(); // not fully defined } [ComImport, Guid("b63ea76d-1f85-456f-a19c-48159efa858b"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] private interface IShellItemArray { [PreserveSig] int BindToHandler(); // not fully defined [PreserveSig] int GetPropertyStore(); // not fully defined [PreserveSig] int GetPropertyDescriptionList(); // not fully defined [PreserveSig] int GetAttributes(); // not fully defined [PreserveSig] int GetCount(out int pdwNumItems); [PreserveSig] int GetItemAt(int dwIndex, out IShellItem ppsi); [PreserveSig] int EnumItems(); // not fully defined } #pragma warning disable CA1712 // Do not prefix enum values with type name private enum SIGDN : uint { SIGDN_DESKTOPABSOLUTEEDITING = 0x8004c000, SIGDN_DESKTOPABSOLUTEPARSING = 0x80028000, SIGDN_FILESYSPATH = 0x80058000, SIGDN_NORMALDISPLAY = 0, SIGDN_PARENTRELATIVE = 0x80080001, SIGDN_PARENTRELATIVEEDITING = 0x80031001, SIGDN_PARENTRELATIVEFORADDRESSBAR = 0x8007c001, SIGDN_PARENTRELATIVEPARSING = 0x80018001, SIGDN_URL = 0x80068000 } [Flags] private enum FOS { FOS_OVERWRITEPROMPT = 0x2, FOS_STRICTFILETYPES = 0x4, FOS_NOCHANGEDIR = 0x8, FOS_PICKFOLDERS = 0x20, FOS_FORCEFILESYSTEM = 0x40, FOS_ALLNONSTORAGEITEMS = 0x80, FOS_NOVALIDATE = 0x100, FOS_ALLOWMULTISELECT = 0x200, FOS_PATHMUSTEXIST = 0x800, FOS_FILEMUSTEXIST = 0x1000, FOS_CREATEPROMPT = 0x2000, FOS_SHAREAWARE = 0x4000, FOS_NOREADONLYRETURN = 0x8000, FOS_NOTESTFILECREATE = 0x10000, FOS_HIDEMRUPLACES = 0x20000, FOS_HIDEPINNEDPLACES = 0x40000, FOS_NODEREFERENCELINKS = 0x100000, FOS_OKBUTTONNEEDSINTERACTION = 0x200000, FOS_DONTADDTORECENT = 0x2000000, FOS_FORCESHOWHIDDEN = 0x10000000, FOS_DEFAULTNOMINIMODE = 0x20000000, FOS_FORCEPREVIEWPANEON = 0x40000000, FOS_SUPPORTSTREAMABLEITEMS = unchecked((int)0x80000000) } #pragma warning restore CA1712 // Do not prefix enum values with type name } } ================================================ FILE: MD5HashChanger/MD5HashChanger.csproj ================================================  Debug AnyCPU {9094A9CA-15C7-45D4-BF88-E91E2C75A5D7} WinExe Properties MD5_Hash_Changer MD5_Hash_Changer v4.6.2 512 AnyCPU true full false bin\Debug\ DEBUG;TRACE prompt 4 false AnyCPU pdbonly true bin\Release\ TRACE prompt 4 false icon.ico Form MainForm.cs MainForm.cs ResXFileCodeGenerator Resources.Designer.cs Designer True Resources.resx True SettingsSingleFileGenerator Settings.Designer.cs True Settings.settings True ================================================ FILE: MD5HashChanger/MainForm.Designer.cs ================================================ namespace MD5_Hash_Changer { partial class MainForm { /// /// Required designer variable. /// private System.ComponentModel.IContainer components = null; /// /// Clean up any resources being used. /// /// true if managed resources should be disposed; otherwise, false. protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Windows Form Designer generated code /// /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// private void InitializeComponent() { this.components = new System.ComponentModel.Container(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle(); System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle(); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm)); this.btnAddFiles = new System.Windows.Forms.Button(); this.btnStartMD5 = new System.Windows.Forms.Button(); this.btnRemoveAll = new System.Windows.Forms.Button(); this.btnRemoveSelected = new System.Windows.Forms.Button(); this.dataGridFileMD5 = new System.Windows.Forms.DataGridView(); this.FileName = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.oldMD5 = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.newMD5 = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.status = new System.Windows.Forms.DataGridViewTextBoxColumn(); this.contextMenudgvMD5 = new System.Windows.Forms.ContextMenuStrip(this.components); this.contextMenuCopyRows = new System.Windows.Forms.ToolStripMenuItem(); this.contextMenuDeleteRows = new System.Windows.Forms.ToolStripMenuItem(); this.contextMenuExportToCSV = new System.Windows.Forms.ToolStripMenuItem(); this.contextMenuOpenFile = new System.Windows.Forms.ToolStripMenuItem(); this.progressBarStatus = new System.Windows.Forms.ProgressBar(); this.labelItem = new System.Windows.Forms.Label(); this.labelTotalItem = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label(); this.panelAction = new System.Windows.Forms.Panel(); this.btnAddFolder = new System.Windows.Forms.Button(); ((System.ComponentModel.ISupportInitialize)(this.dataGridFileMD5)).BeginInit(); this.contextMenudgvMD5.SuspendLayout(); this.panelAction.SuspendLayout(); this.SuspendLayout(); // // btnAddFiles // this.btnAddFiles.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.btnAddFiles.Location = new System.Drawing.Point(136, 13); this.btnAddFiles.Name = "btnAddFiles"; this.btnAddFiles.Size = new System.Drawing.Size(68, 35); this.btnAddFiles.TabIndex = 1; this.btnAddFiles.Text = "Add Files"; this.btnAddFiles.UseVisualStyleBackColor = true; this.btnAddFiles.Click += new System.EventHandler(this.btnAddFiles_Click); // // btnStartMD5 // this.btnStartMD5.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.btnStartMD5.Location = new System.Drawing.Point(7, 13); this.btnStartMD5.Name = "btnStartMD5"; this.btnStartMD5.Size = new System.Drawing.Size(123, 35); this.btnStartMD5.TabIndex = 2; this.btnStartMD5.Text = "Start Change MD5"; this.btnStartMD5.UseVisualStyleBackColor = true; this.btnStartMD5.Click += new System.EventHandler(this.btnStartMD5_Click); // // btnRemoveAll // this.btnRemoveAll.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.btnRemoveAll.Location = new System.Drawing.Point(414, 13); this.btnRemoveAll.Name = "btnRemoveAll"; this.btnRemoveAll.Size = new System.Drawing.Size(112, 35); this.btnRemoveAll.TabIndex = 3; this.btnRemoveAll.Text = "Remove All Files"; this.btnRemoveAll.UseVisualStyleBackColor = true; this.btnRemoveAll.Click += new System.EventHandler(this.btnRemoveAll_Click); // // btnRemoveSelected // this.btnRemoveSelected.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.btnRemoveSelected.Location = new System.Drawing.Point(292, 13); this.btnRemoveSelected.Name = "btnRemoveSelected"; this.btnRemoveSelected.Size = new System.Drawing.Size(116, 35); this.btnRemoveSelected.TabIndex = 4; this.btnRemoveSelected.Text = "Remove Selected"; this.btnRemoveSelected.UseVisualStyleBackColor = true; this.btnRemoveSelected.Click += new System.EventHandler(this.btnRemoveSelected_Click); // // dataGridFileMD5 // this.dataGridFileMD5.AllowUserToAddRows = false; this.dataGridFileMD5.AllowUserToDeleteRows = false; this.dataGridFileMD5.AllowUserToResizeRows = false; this.dataGridFileMD5.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Control; dataGridViewCellStyle1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.WindowText; dataGridViewCellStyle1.SelectionBackColor = System.Drawing.SystemColors.Highlight; dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText; dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.True; this.dataGridFileMD5.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle1; this.dataGridFileMD5.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; this.dataGridFileMD5.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] { this.FileName, this.oldMD5, this.newMD5, this.status}); this.dataGridFileMD5.Location = new System.Drawing.Point(12, 12); this.dataGridFileMD5.Name = "dataGridFileMD5"; this.dataGridFileMD5.RowHeadersVisible = false; this.dataGridFileMD5.ScrollBars = System.Windows.Forms.ScrollBars.Vertical; this.dataGridFileMD5.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect; this.dataGridFileMD5.Size = new System.Drawing.Size(814, 329); this.dataGridFileMD5.TabIndex = 0; this.dataGridFileMD5.KeyUp += new System.Windows.Forms.KeyEventHandler(this.dataGridFileMD5_KeyUp); this.dataGridFileMD5.MouseClick += new System.Windows.Forms.MouseEventHandler(this.dgvMD5_MouseClick); // // FileName // this.FileName.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.Fill; this.FileName.FillWeight = 148.4587F; this.FileName.HeaderText = "File Name"; this.FileName.MinimumWidth = 270; this.FileName.Name = "FileName"; this.FileName.ReadOnly = true; // // oldMD5 // this.oldMD5.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; this.oldMD5.DefaultCellStyle = dataGridViewCellStyle2; this.oldMD5.FillWeight = 103.6357F; this.oldMD5.HeaderText = "Old MD5"; this.oldMD5.MinimumWidth = 220; this.oldMD5.Name = "oldMD5"; this.oldMD5.ReadOnly = true; this.oldMD5.Resizable = System.Windows.Forms.DataGridViewTriState.False; this.oldMD5.Width = 220; // // newMD5 // this.newMD5.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None; dataGridViewCellStyle3.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; this.newMD5.DefaultCellStyle = dataGridViewCellStyle3; this.newMD5.FillWeight = 110.9225F; this.newMD5.HeaderText = "New MD5"; this.newMD5.MinimumWidth = 220; this.newMD5.Name = "newMD5"; this.newMD5.ReadOnly = true; this.newMD5.Resizable = System.Windows.Forms.DataGridViewTriState.False; this.newMD5.Width = 220; // // status // dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleCenter; this.status.DefaultCellStyle = dataGridViewCellStyle4; this.status.FillWeight = 36.9831F; this.status.HeaderText = "Status"; this.status.Name = "status"; this.status.ReadOnly = true; this.status.Resizable = System.Windows.Forms.DataGridViewTriState.False; this.status.Width = 75; // // contextMenudgvMD5 // this.contextMenudgvMD5.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { this.contextMenuCopyRows, this.contextMenuDeleteRows, this.contextMenuExportToCSV, this.contextMenuOpenFile}); this.contextMenudgvMD5.Name = "contextMenuDGVMD5"; this.contextMenudgvMD5.Size = new System.Drawing.Size(186, 92); // // contextMenuCopyRows // this.contextMenuCopyRows.Name = "contextMenuCopyRows"; this.contextMenuCopyRows.Size = new System.Drawing.Size(185, 22); this.contextMenuCopyRows.Text = "Copy Selected Rows"; this.contextMenuCopyRows.Click += new System.EventHandler(this.contextMenuCopyRow_Click); // // contextMenuDeleteRows // this.contextMenuDeleteRows.Name = "contextMenuDeleteRows"; this.contextMenuDeleteRows.Size = new System.Drawing.Size(185, 22); this.contextMenuDeleteRows.Text = "Delete Selected Rows"; this.contextMenuDeleteRows.Click += new System.EventHandler(this.deleteSelectedRowsToolStripMenuItem_Click); // // contextMenuExportToCSV // this.contextMenuExportToCSV.Name = "contextMenuExportToCSV"; this.contextMenuExportToCSV.Size = new System.Drawing.Size(185, 22); this.contextMenuExportToCSV.Text = "Export All to .CSV"; this.contextMenuExportToCSV.Click += new System.EventHandler(this.contextMenuExportToCSV_Click); // // contextMenuOpenFile // this.contextMenuOpenFile.Name = "contextMenuOpenFile"; this.contextMenuOpenFile.Size = new System.Drawing.Size(185, 22); this.contextMenuOpenFile.Text = "Open File"; this.contextMenuOpenFile.Click += new System.EventHandler(this.contextMenuOpenFile_Click); // // progressBarStatus // this.progressBarStatus.Location = new System.Drawing.Point(532, 13); this.progressBarStatus.Name = "progressBarStatus"; this.progressBarStatus.Size = new System.Drawing.Size(216, 35); this.progressBarStatus.TabIndex = 5; // // labelItem // this.labelItem.AutoSize = true; this.labelItem.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.labelItem.Location = new System.Drawing.Point(781, 13); this.labelItem.Name = "labelItem"; this.labelItem.Size = new System.Drawing.Size(17, 17); this.labelItem.TabIndex = 6; this.labelItem.Text = "0"; // // labelTotalItem // this.labelTotalItem.AutoSize = true; this.labelTotalItem.Font = new System.Drawing.Font("Microsoft Sans Serif", 10F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.labelTotalItem.Location = new System.Drawing.Point(782, 32); this.labelTotalItem.Name = "labelTotalItem"; this.labelTotalItem.Size = new System.Drawing.Size(17, 17); this.labelTotalItem.TabIndex = 8; this.labelTotalItem.Text = "0"; // // label1 // this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(754, 15); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(29, 13); this.label1.TabIndex = 9; this.label1.Text = "item:"; // // label2 // this.label2.AutoSize = true; this.label2.Location = new System.Drawing.Point(754, 34); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(30, 13); this.label2.TabIndex = 10; this.label2.Text = "total:"; // // panelAction // this.panelAction.Controls.Add(this.btnAddFolder); this.panelAction.Controls.Add(this.btnRemoveSelected); this.panelAction.Controls.Add(this.label2); this.panelAction.Controls.Add(this.btnAddFiles); this.panelAction.Controls.Add(this.label1); this.panelAction.Controls.Add(this.btnStartMD5); this.panelAction.Controls.Add(this.labelTotalItem); this.panelAction.Controls.Add(this.btnRemoveAll); this.panelAction.Controls.Add(this.labelItem); this.panelAction.Controls.Add(this.progressBarStatus); this.panelAction.Dock = System.Windows.Forms.DockStyle.Bottom; this.panelAction.Location = new System.Drawing.Point(0, 342); this.panelAction.Name = "panelAction"; this.panelAction.Size = new System.Drawing.Size(835, 64); this.panelAction.TabIndex = 11; // // btnAddFolder // this.btnAddFolder.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.btnAddFolder.Location = new System.Drawing.Point(210, 13); this.btnAddFolder.Name = "btnAddFolder"; this.btnAddFolder.Size = new System.Drawing.Size(76, 35); this.btnAddFolder.TabIndex = 11; this.btnAddFolder.Text = "Add Folder"; this.btnAddFolder.UseVisualStyleBackColor = true; this.btnAddFolder.Click += new System.EventHandler(this.btnAddFolder_Click); // // MainForm // this.AllowDrop = true; this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(835, 406); this.Controls.Add(this.panelAction); this.Controls.Add(this.dataGridFileMD5); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.Name = "MainForm"; this.Text = "MD5 Hash Changer V1.2"; this.DragDrop += new System.Windows.Forms.DragEventHandler(this.MainForm_DragDrop); this.DragEnter += new System.Windows.Forms.DragEventHandler(this.MainForm_DragEnter); ((System.ComponentModel.ISupportInitialize)(this.dataGridFileMD5)).EndInit(); this.contextMenudgvMD5.ResumeLayout(false); this.panelAction.ResumeLayout(false); this.panelAction.PerformLayout(); this.ResumeLayout(false); } #endregion private System.Windows.Forms.DataGridView dataGridFileMD5; private System.Windows.Forms.ProgressBar progressBarStatus; private System.Windows.Forms.Label labelItem; private System.Windows.Forms.Label labelTotalItem; private System.Windows.Forms.Label label1; private System.Windows.Forms.Label label2; private System.Windows.Forms.Panel panelAction; private System.Windows.Forms.ContextMenuStrip contextMenudgvMD5; private System.Windows.Forms.ToolStripMenuItem contextMenuCopyRows; private System.Windows.Forms.ToolStripMenuItem contextMenuOpenFile; private System.Windows.Forms.DataGridViewTextBoxColumn FileName; private System.Windows.Forms.DataGridViewTextBoxColumn oldMD5; private System.Windows.Forms.DataGridViewTextBoxColumn newMD5; private System.Windows.Forms.DataGridViewTextBoxColumn status; private System.Windows.Forms.ToolStripMenuItem contextMenuExportToCSV; private System.Windows.Forms.Button btnRemoveAll; private System.Windows.Forms.Button btnRemoveSelected; private System.Windows.Forms.Button btnStartMD5; private System.Windows.Forms.Button btnAddFiles; private System.Windows.Forms.Button btnAddFolder; private System.Windows.Forms.ToolStripMenuItem contextMenuDeleteRows; } } ================================================ FILE: MD5HashChanger/MainForm.cs ================================================ /* * * Source code: https://github.com/ewwink/MD5-Hash-Changer * */ using System; using System.Collections.Generic; using System.Diagnostics; using System.Drawing; using System.IO; using System.Security.Cryptography; using System.Threading; using System.Threading.Tasks; using System.Windows.Forms; namespace MD5_Hash_Changer { public partial class MainForm : Form { public int currentRowIndex = 0; public int totalFiles = 0; public bool running = false; public int[] randomByteLength = { 1, 7 }; public MainForm() { InitializeComponent(); } private void btnRemoveAll_Click(object sender, EventArgs e) { dataGridFileMD5.Rows.Clear(); totalFiles = 0; labelItem.Text = "0"; labelTotalItem.Text = "0"; } private void btnRemoveSelected_Click(object sender, EventArgs e) { totalFiles -= dataGridFileMD5.SelectedRows.Count; foreach (DataGridViewRow row in dataGridFileMD5.SelectedRows) { dataGridFileMD5.Rows.RemoveAt(row.Index); } dataGridFileMD5.ClearSelection(); labelItem.Text = "0"; labelTotalItem.Text = dataGridFileMD5.RowCount.ToString(); } private void Additem(Dictionary filesToCheck) { Thread threading = new Thread(() => { int index = 0; int maxThread = filesToCheck.Count > Environment.ProcessorCount ? Environment.ProcessorCount : filesToCheck.Count; Parallel.ForEach(filesToCheck, new ParallelOptions { MaxDegreeOfParallelism = maxThread }, item => { string md5hash = GetMD5Hash(item.Key); this.Invoke((MethodInvoker)delegate () { this.labelItem.Text = index.ToString(); this.progressBarStatus.Value = index; this.dataGridFileMD5.Rows[item.Value].SetValues(new object[] { item.Key, md5hash, "", "idle" }); this.dataGridFileMD5.Rows[0].Selected = false; }); }); //threading.Abort(); }) { IsBackground = true }; threading.Start(); } private void btnAddFiles_Click(object sender, EventArgs e) { using (OpenFileDialog selectFile = new OpenFileDialog()) { selectFile.Multiselect = true; bool flag = selectFile.ShowDialog() == DialogResult.OK; if (flag) { totalFiles += selectFile.FileNames.Length; labelItem.Text = "0"; labelTotalItem.Text = totalFiles.ToString(); progressBarStatus.Value = 0; progressBarStatus.Maximum = totalFiles; var filesToCheck = new Dictionary(); foreach (string filename in selectFile.FileNames) { int rowIndex = this.dataGridFileMD5.Rows.Add(new object[] { filename, "Processing...", "", "idle" }); filesToCheck[filename] = rowIndex; } Additem(filesToCheck); } } } private void btnAddFolder_Click(object sender, EventArgs e) { var fbd = new FolderPicker(); if (fbd.ShowDialog(this.Handle) == true) { var filesToCheck = new Dictionary(); foreach (string filename in Directory.GetFiles(fbd.ResultPath)) { int rowIndex = this.dataGridFileMD5.Rows.Add(new object[] { filename, "Processing...", "", "idle" }); filesToCheck[filename] = rowIndex; } Additem(filesToCheck); } } private void btnStartMD5_Click(object sender, EventArgs e) { if (btnStartMD5.Text == "Stop Change MD5") { btnStartMD5.Text = "Start Change MD5"; running = false; return; } running = true; totalFiles = dataGridFileMD5.RowCount; string[] fileNames = new string[totalFiles]; for (int i = 0; i < totalFiles; i++) { fileNames[i] = dataGridFileMD5.Rows[i].Cells[0].Value.ToString(); } labelItem.Text = "0"; labelTotalItem.Text = totalFiles.ToString(); progressBarStatus.Value = 0; progressBarStatus.Maximum = totalFiles; btnStartMD5.Enabled = false; btnStartMD5.Text = "Stop Change MD5"; Thread t = new Thread(() => ChangeMD5(fileNames)) { IsBackground = true }; t.Start(); } private void ChangeMD5(string[] fileNames) { Random random = new Random(); this.Invoke((MethodInvoker)delegate () { this.btnStartMD5.Enabled = true; }); int currentProgress = 0; Parallel.For(0, fileNames.Length, new ParallelOptions { MaxDegreeOfParallelism = Environment.ProcessorCount }, (index, state) => { if (!running) { this.Invoke((MethodInvoker)delegate () { this.btnStartMD5.Text = "Start Change MD5"; running = false; }); state.Break(); } int byteLength = random.Next(randomByteLength[0], randomByteLength[1]); byte[] extraByte = new byte[byteLength]; for (int j = 0; j < byteLength; j++) { extraByte[j] = (byte)0; } long fileSize = new FileInfo(fileNames[index]).Length; if (fileSize == 0L) { this.Invoke((MethodInvoker)delegate () { this.dataGridFileMD5.Rows[index].Cells[3].Value = "Empty"; }); } else { using (FileStream fileStream = new FileStream(fileNames[index], FileMode.Append)) { fileStream.Write(extraByte, 0, extraByte.Length); } string md5hash = GetMD5Hash(fileNames[index]); this.Invoke((MethodInvoker)delegate () { bool flag2 = this.dataGridFileMD5.Rows[index].Cells[2].Value.ToString() != ""; if (flag2) { this.dataGridFileMD5.Rows[index].Cells[1].Value = this.dataGridFileMD5.Rows[index].Cells[2].Value; } currentProgress++; this.labelItem.Text = (currentProgress).ToString(); this.progressBarStatus.Value = currentProgress; this.dataGridFileMD5.Rows[index].Cells[2].Value = md5hash; this.dataGridFileMD5.Rows[index].Cells[3].Value = "OK"; }); } }); this.Invoke((MethodInvoker)delegate () { this.btnStartMD5.Text = "Start Change MD5"; running = false; }); } private string GetMD5Hash(string fileName) { string md5hash = ""; long fileSize = new FileInfo(fileName).Length; int bufferSize = fileSize > 1048576L ? 1048576 : 4096; byte[] buffer; byte[] oldBuffer; int bytesRead; int oldBytesRead; long size; long totalBytesRead = 0; using (HashAlgorithm hashAlgorithm = MD5.Create()) { using (FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.Read, bufferSize)) { //md5hash = BitConverter.ToString(md.ComputeHash(fileStream)).Replace("-", ""); size = fileStream.Length; buffer = new byte[bufferSize]; bytesRead = fileStream.Read(buffer, 0, buffer.Length); totalBytesRead += bytesRead; do { oldBytesRead = bytesRead; oldBuffer = buffer; buffer = new byte[bufferSize]; bytesRead = fileStream.Read(buffer, 0, buffer.Length); totalBytesRead += bytesRead; if (bytesRead == 0) { hashAlgorithm.TransformFinalBlock(oldBuffer, 0, oldBytesRead); } else { hashAlgorithm.TransformBlock(oldBuffer, 0, oldBytesRead, oldBuffer, 0); } } while (bytesRead != 0); md5hash = BitConverter.ToString(hashAlgorithm.Hash).Replace("-", ""); } } return md5hash; } private void contextMenuCopyRow_Click(object sender, EventArgs e) { string rowData = ""; for (int i = 0; i < dataGridFileMD5.RowCount; i++) { var rows = dataGridFileMD5.Rows[i]; if (rows.Selected) { rowData += string.Format("{0}\t{1}\t{2}\r\n", rows.Cells[0].Value, rows.Cells[1].Value, rows.Cells[2].Value); } } Clipboard.SetText(rowData); } private void contextMenuExportToCSV_Click(object sender, EventArgs e) { SaveFileDialog savefile = new SaveFileDialog(); savefile.Filter = "CSV files (*.csv)|*.csv|All files (*.*)|*.*"; if (savefile.ShowDialog() == DialogResult.OK) { string rowData = ""; for (int i = 0; i < dataGridFileMD5.RowCount; i++) { var rows = dataGridFileMD5.Rows[i]; rowData += string.Format("{0},{1},{2}\r\n", rows.Cells[0].Value, rows.Cells[1].Value, rows.Cells[2].Value); } File.WriteAllText(savefile.FileName, rowData); } } private void contextMenuOpenFile_Click(object sender, EventArgs e) { try { Process.Start(dataGridFileMD5.Rows[currentRowIndex].Cells[0].Value.ToString()); } catch { } } private void dgvMD5_MouseClick(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { currentRowIndex = dataGridFileMD5.HitTest(e.X, e.Y).RowIndex; if (currentRowIndex > -1 && dataGridFileMD5.Rows[currentRowIndex].Selected) { contextMenuCopyRows.Enabled = true; contextMenuDeleteRows.Enabled = true; contextMenuOpenFile.Enabled = true; contextMenudgvMD5.Show(dataGridFileMD5, new Point(e.X, e.Y)); } else if (dataGridFileMD5.RowCount > 0) { contextMenuCopyRows.Enabled = false; contextMenuDeleteRows.Enabled = false; contextMenuOpenFile.Enabled = false; contextMenudgvMD5.Show(dataGridFileMD5, new Point(e.X, e.Y)); } } } private void MainForm_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent(DataFormats.FileDrop)) e.Effect = DragDropEffects.Copy; } private void MainForm_DragDrop(object sender, DragEventArgs e) { string[] files = (string[])e.Data.GetData(DataFormats.FileDrop); totalFiles += files.Length; var filesToCheck = new Dictionary(); foreach (string filename in files) { int rowIndex = dataGridFileMD5.Rows.Add(new object[] { filename, "checking", "", "idle" }); filesToCheck[filename] = rowIndex; //System.Diagnostics.Debug.WriteLine(filename + ":" + rowIndex.ToString()); } Additem(filesToCheck); } private void dataGridFileMD5_KeyUp(object sender, KeyEventArgs e) { if (e.KeyValue == (char)Keys.Delete) { foreach (DataGridViewRow row in dataGridFileMD5.SelectedRows) { dataGridFileMD5.Rows.RemoveAt(row.Index); } } } private void deleteSelectedRowsToolStripMenuItem_Click(object sender, EventArgs e) { foreach (DataGridViewRow row in dataGridFileMD5.SelectedRows) { dataGridFileMD5.Rows.RemoveAt(row.Index); } } } } ================================================ FILE: MD5HashChanger/MainForm.resx ================================================  text/microsoft-resx 2.0 System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 True True True True 17, 17 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 epVzMQcXJsJ+vqJgKhNwwjhK6acvakqqkYx6OAIxJY1WRjH5N85wAPG0F2qKOlyUWupKIynDfi6yIerl XKypc38wGUVeMt4ZvzYmwklWXerPM0EXi51SMmk5Q+zc7Gcy771w0zK9gBCEYhpZkQtZT2vQD+i4mgCk RkLyRxAz8LJwIIHcOh8Y11tS0nBHrkk5FVTQ+LmRV7GX6bDyGbl796SvcqY8+NgFm7p/lbpRxTEoVvmk UlUKyGPHkZhhTqSIOO0kia5S8lEuwDMSzMZ68TlgnmagWq3vr/Tu51Y5ZHgxT5g4mQUV7tYdhhZhS3c4 EPl0b7gHMjTPEVodB5zp1KOQLGcN5LfKIYDVk4Z6KTz104zDe+hWGORzEEUM3itBtL+z3fdUMGG59lzY OpZ5SJ8Fu4RWL3bHJbspiQur16gXrSSt3lQvahpLuDkBqLKzSi5PGbUDY6a7TgoKBWUj+ZpcvtFBNtM7 nyBZY55cVvkg3SppeI7jjTH67McJdBjAGiLtOrm4O7VlQUIdnHI+5D49mVp6QOEep9FvJ6sUWGlkUBmj HHCS8WNXitIZqWzOOKresk13Fogo0xmE93Hyu572mXUnmKCmz7m+c0ba4bLyapkb74Px9wAet1YBuETA meRFnvkilPB0eoTilQ29i8yqgXpeh7AKnXJo571NsrIBGdl56NueUCihyS2lSGM+ISRRaf8i0tLDnItk zKGkIk2sbBlAQJ545Uy7uLUMJ0j3mSPEc/fW6PZr4PcCrxHv5eb/BzDTeevvqEi6AAAAAElFTkSuQmCC KAAAADAAAABgAAAAAQAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANCzkfjQs5H80LOS/NCzkvzQs5L8 0bST/NG0k/zQtJL80LKQ/NCykPzQspD80LOQ/NCzkfzQs5H80LSS/NC0kvzQtJL80bWS/NG1k/zRtZP8 0baT/NG2lPzRtpT80raU/NO4lvzTt5X807iW/NK4lvzTuZb807mW/NO4lvzTuZf81LuZ/NW8mvzVvJr8 1bya/NW7m/zVvJv81byb/Na9nPzXv5/82MCg/Ne/n/zYwKD82MCg/NjAoPzYwKD82MCg+NCykfzQspH/ 0LKR/9Czkf/Qs5L/0LOS/9Czkv/JoXn/wYZR/8KDSv/BgUf/wYBF/8B/Q//Af0P/wH9E/8B/RP/Af0T/ wYBE/8GARP/BgET/wYBE/8GARP/BgET/wYBF/8KBRf/CgUX/woFF/8GBRf/Cgkb/woJG/8KBRv/CgUb/ woJH/8ODR//Dg0j/w4NI/8ODSP/Dg0j/w4NI/8GJU//RsYz/18Cf/9e/n//YwKD/2MCg/9jAoP/YwKD/ 2MCg/NCxkPzQspH/0LKR/9Cykf/Qs5H/0LOS/9Czkv/Kl2f/1Hsr/+B+J//geiH/33YZ/91vDf/dawb/ 3WkD/91pA//daQP/3WkD/91pA//daQP/3WkD/91pA//daQP/3WkD/91pA//daQP/3WkD/91pA//daQP/ 3WkD/91pA//daQP/3WkD/91pA//daQP/3WkD/91pA//daQP/3GkD/85tGP/Pp3z/17+f/9e/n//Xv5// 17+f/9jAoP/YwKD/2MCg/NCxkPzQsZD/0LKR/9Gykf/RspH/0bKR/9Czkv/MmWj/4Ic1//CQNv/wjjP/ 8Iwx//CKK//whSP/738X/+14Cv/tdQb/7XUF/+11Bf/tdQX/7XUF/+11Bf/tdQX/7XUF/+11Bf/tdQX/ 7XUF/+11Bf/tdQX/7XUF/+11Bf/tdQX/7XUF/+11Bf/tdQX/7XUF/+11Bf/tdQX/7XQF/9l1Gf/QqHz/ 17+f/9e/n//Xv5//17+f/9e/n//Xv5//2MCg/M+wkPzPsJD/0LGQ/9Cxkf/QsZH/0LKR/9Cykf/Mmmj/ 4Yo4//GUOv/xkzj/8ZE1//GQM//xjzD/8Y0s//CGIP/vfxP/7noK/+55B//ueQf/7nkH/+55B//ueQf/ 7nkH/+55B//ueQf/7nkH/+55B//ueQf/7nkH/+55B//ueQf/7nkH/+55B//ueQf/7nkH/+55B//ueQf/ 7ngH/9l4Gv/QqHz/17+f/9e/n//Xv5//17+f/9e/n//Xv5//17+f/NCwkPzQsJD/0bGQ/9CxkP/QsZD/ 0LKR/9Cykf/Mmmj/4Y47//KYPf/ylzv/8pY5//KUNv/ykzT/8pIy//KQL//xjCj/8IYb/+99C//vfAn/ 8H4L//F/Df/xfw3/8X8N//F/Df/xfw3/8X8N//B9Cv/vfAn/73wJ/+98Cf/vfAn/73wJ/+98Cf/vfAn/ 73wJ/+98Cf/vfAn/7nwJ/9p6G//QqHz/1r6e/9e/nv/Xv5//17+f/9e/n//Xv5//17+f/NCwkPzQsI// 0bGQ/9GxkP/QsZD/0LGR/9CxkP/NnGn/45E+//OdQf/zm0D/85o9//OZO//zmDj/85c2//KWNP/ylDH/ 8pIu//GLIP/xgxD/tWQS/4xME/+iVhP/olYU/6JWE/+hVRP/g0cU/81vD//wgQv/8IEL//CBC//wgQv/ 8IEL//CBC//wgQv/8IEL//CBC//wgQv/738L/9p9HP/QqXv/17+e/9e/nv/Xv57/17+f/9e/n//Xv5// 17+f/NCwj/zQsJD/0LCP/9CwkP/QsJD/0LCQ/9CxkP/NnGr/45RB//SgRf/0oEP/9J5B//SdP//0nDz/ 9Js6//OZOP/zmTb/85cz//OVLv/yjiL/3nwR/3g4Af+hSgD/pkwA/6ZMAP+dSAD/fDwC/+yBDf/xhA3/ 8YQN//GEDf/xhA3/8YQN//GEDf/xhA3/8YQN//GEDf/xhA3/8IQN/9uAHv/QqXz/17+e/9e/nv/Xv57/ 17+e/9e/nv/Xv57/17+e/M+vjvzQsI//0LCP/9Cwjv/QsJD/0LCQ/9Gxj//NnWr/45hE//WkSf/1pEf/ 9aNF//WhQv/1oED/9Z8+//SeO//0nTn/9Jw3//SaNP/0mDD/85Ai/49KBv+URAD/pkwA/6VMAP+KPwD/ pVgH//KID//yiA//8ogP//KID//yiA//8ogP//KID//yiA//8ogP//KID//yiA//8YcP/9uCH//PqHv/ 1r6d/9e/nv/Xv57/1r6d/9e/nv/Xv57/17+e/M+vj/zQr4//0LCP/9Cwj//QsI//0LCP/9Cwj//Nnmv/ 5ZtH//WpTf/1qEv/9adJ//WmRv/1pET/9aRC//WjQP/0oT7/9KA7//SgOf/0njf/9Jwz/8h2Gf+DPQL/ o0sA/6BJAP+FQQL/1HkO//KMEf/yjBH/8owR//KMEf/yjBH/8owR//KMEf/yjBH/8owR//KMEf/yjBH/ 8osR/9yFIf/Op3n/1r2c/9a+nf/Wvp3/1r6d/9e/nv/Xv57/1r6d/NCvjvzQr47/0K+P/9Cwjf/QsI7/ 0LCO/9Cwj//Onmv/5Z5J//atUf/3rE//96tM//eqSv/2qUj/9qhG//anQ//2pkH/9qU///ajPf/2ozv/ 9qE4/+KQLP+UUA3/nUgA/5dGAP+dVgn/6YoS//SQE//0kBP/9JAT//SQE//0kBP/9JAT//SQE//0kBP/ 9JAT//SQE//0kBP/848T/92HIv/Op3n/1bua/9a9nP/Wvp3/1r6d/9a+nf/Wvp3/1r6d/M+ujfzQro3/ 0K+O/9Cvjf/Qr43/0LCN/9Cwjv/On2r/5qJM//ewVP/3sFL/969Q//etTv/3rEv/9qxK//aqR//2qUX/ 9qlD//anQP/2pj7/9qY8/9KKNv+aUA3/oUoA/55JAP+dVA7/3Icd//SUFf/0lBX/9JQV//SUFf/0lBX/ 9JQV//SUFf/0lBX/9JQV//SUFf/0lBX/9JMV/96KI//Op3n/1bua/9W7mv/WvZz/1r6d/9a+nf/Wvp3/ 1r6d/M+ujPzProz/z66M/9Cvjf/Qr43/0K+N/9Cvjf/OoGv/56VP//i1WP/4tFf/+LNU//iyUv/3sU// 97BO//evS//3rkn/961H//esRf/3q0P/25U8/5JHBv+lTAD/pkwA/6ZMAP+jSwD/k0sL/+iQGv/1mBf/ 9ZgY//WYGP/1mBj/9ZgY//WYGP/1mBj/9ZgY//WYGP/1mBj/9ZcX/96NJf/OqHr/1LqZ/9W7mv/Uupr/ 1byb/9a+nf/Wvp3/1r6d/M+ujPzProz/z66M/8+ujP/Qr43/0K+N/9Cvjf/OoGv/56hS//m5XP/5uFr/ +LdY//i2Vv/4tVP/+LRR//izT//4sk3/+LFL//iwSP/3r0b/o2Uh/6FKAP+mTAD/pkwA/6ZMAP+mTAD/ m0cA/7ZuFf/3nBn/9pwa//acGv/2nBr/9pwa//acGv/2nBr/9pwa//acGv/2nBr/9psZ/9+PJv/OqHn/ 1bqZ/9W7mf/Vupn/1Lqa/9W8m//VvZz/1b2d/M+tjPzProz/z62L/8+tjP/Proz/z66M/9Cujf/PoWz/ 6KtV//m7X//5u13/+bpb//m5Wf/5uFf/+bdV//m2Uv/5tVD/+bVO//mzTP/2sUn/j1IT/6RLAP+mTAD/ pkwA/6ZMAP+mTAD/oEoA/51bDP/4oBv/958b//efG//3nxv/958b//efG//3nxv/958b//efG//3nxv/ 9p8b/9+SJ//OqHn/1LqZ/9W6mf/Uupn/1buZ/9S6mv/Vu5v/1byc/M+ti/zPrYv/z62L/8+tjP/PrYz/ z66M/8+ujP/OoWz/6a5Y//rAY//6v2H/+r9f//q+Xf/6vVv/+rxY//q7Vv/6ulX/+rlS//q5UP/5t07/ klsc/5hGAP+mTAD/pkwA/6ZMAP+lTAD/jUEA/6loD//4pB7/+KQe//ikHv/4pB7/+KQe//ikHv/4pB7/ +KQe//ikHv/4pB7/96Md/+CVKf/OqXn/1LmZ/9S6mP/Uupn/1LqZ/9W7mf/Uupn/1Lub/M6si/zOrIv/ zqyM/8+ti//PrYv/z62M/8+ujP/Oom3/6bFb//vDZ//7w2X/+8Jj//vBYP/7wF7/+8Bc//u+Wv/7vlj/ +r1W//q8VP/6u1L/zJI7/3U4A/+WRQD/o0oA/6JKAP+QQgD/dTsF/+CVHf/5qCD/+agg//moIP/5qCD/ +agg//moIP/5qCD/+agg//moIP/5qCD/+Kcf/+CYKv/OqXn/07mX/9O5mP/Uupj/1LqZ/9S6mP/Uupn/ 1LmZ/M2si/zOrIz/zqyL/86si//PrYv/z6yL/86sjP/Oom3/6rNd//vGav/8xmj//MVm//zEZP/7w2H/ +8Ng//vCXv/7wVv/+8BZ//u/V//7v1X/+LtR/695LP9tOAf/bzMA/24yAP90Pwr/wIQs//mxMf/6rCT/ +qsi//qrIv/6qyL/+qsi//qrIv/6qyL/+qsi//qrIv/6qyL/+Koh/+GaK//Oqnn/07mX/9O5l//TuZf/ 1LqY/9S6mP/Uupj/1LqY/M2ri/zOq4v/zauL/82siv/OrIv/z62L/8+sjP/Pom7/67dg//zKbv/8ymz/ /Mlq//zIZ//8yGX/+8dk//vGYf/7xV//+8Vd//vEW//7w1n/+8JX//vCVP/wtkz/05w+/9efPv/0t0n/ +75K//u8Rf/7uDr/+rIr//qwJP/6sCT/+rAk//qwJP/6sCT/+rAk//qwJP/6sCT/+q4j/+GdLf/NqXn/ 0riW/9O4l//TuZf/07mX/9O5l//TuZf/07mX/M6rivzOq4v/zquL/82siv/Nq4v/zauL/86si//Oo27/ 67lj//zNcv/9zW///c1t//3Ma//9y2n//cpn//3JZf/9yWP//chh//3HX//9x1z//cZb//3FWP/9xVb/ /cRU//3DUv/9wlD//cJO//3AS//9v0j//LxA//y3Mf/8tCn//LQm//y0Jv/8tCb//LQm//y0Jv/8tCb/ +rIl/+KgLf/NqXj/0reW/9K3lv/St5b/0riW/9O4l//TuJf/0riW/M6rivzNq4r/zaqK/86riv/Oq4v/ zquK/82rjP/OpG//67xl//3QdP/90HL//dBw//3Pbv/9zmz//c5q//3MaP/9zGb//ctk//3KYv/9yl// /cle//3IW//9yFr//cdY//3GVf/9xlP//cVS//3ET//9xE3//cNL//zBRP/8vTr//Lou//y3KP/8tyj/ /Lco//y3KP/8tyj/+7Yn/+KiL//NqXj/0baW/9G2lv/Stpb/0raW/9K3lv/St5b/0reX/M2qivzNqor/ zauJ/86riv/Oq4r/zquK/86riv/OpG//7L5o//7UeP/+03b//tN0//7Scv/+0nD//tFu//7Qa//+0Gr/ /s9o//7OZf/+zWT//s1i//7MX//9zF7//ctc//3KWf/9ylj//clV//3IU//9yFH//cdP//3GTf/9xkv/ /cRG//3AO//9vjL//bwt//27Kv/9uyr//Lop/+OlMP/NqXj/0baV/9G1lf/RtpX/0raW/9K2lv/Rtpb/ 0beX/M2pifzNqYn/zamJ/82pif/Nqor/zaqK/82qiv/OpXD/68Fw//zXgv/814P//NeD//zXg//914P/ /deD//3YhP/92IT//diE//3Zhf/92YX//dmF//3Zhv/92of//dqI//3Zhf/92IL//dd+//3Vev/91Hb/ /dNz//3Rbv/80Gr//M5m//zMYP/8yln//MhR//zERv/7wkD/+r86/+KnOP/MqXj/0LWU/9C1lP/RtZX/ 0bWV/9G1lf/RtZX/0bWV/M2piPzNqYn/zamJ/82pif/NqYn/zamJ/82qiv/KoG3/1qZW/+CyXf/fsl7/ 3LBd/9uxX//ftGL/4LZk/92yYf/Yrl3/1ata/9asW//csV//37Nh/9+zYf/fs2H/37Ni/9+zYf/fsl// 3rFd/96wWv/er1j/3q5W/96uU//erVD/3atO/92qS//dqUn/3alG/9ynQf/cpT3/26I3/8+XOf/LqHn/ 0LSU/9C0lP/QtJT/0bWV/9C0lP/QtJT/0bWV/MypiPzMqYn/zKmJ/82pif/MqYn/zamJ/82pif/NqYr/ zqqL/86ri//Oq4z/nY6C/52en//Ky8z/3+Dh/7O0tf9wcXP/RUZH/1JPTf+okXr/z66O/8+ujv/Pro7/ z66P/86uj//Pr4//z6+P/86wkP/PsJD/z7CR/8+xkf/OsZL/z7GS/8+xkv/PsZP/z7KT/8+yk//Ps5T/ 0LOU/9C0lf/Ps5P/0LSU/8+zk//Ps5P/0LSU/9C0lP/QtJT/0LWU/M2piPzNqYj/zamI/82piP/MqYj/ zKmI/8ypif/MqYn/zKmJ/82pif/Oqor/no6B/6Ghof/Ozs7/4+Pj/7m5uf91dXX/SUlJ/1RQTf+okHn/ zqyM/86tjP/OrYz/zq2M/86tjf/OrY3/zq6N/86ujv/Pro//zq+P/86wkP/OsJD/zrCQ/82wkP/Nr5D/ za+Q/86wkf/OsZH/z7KS/8+yk//PspL/z7KT/8+yk//Ps5P/z7OT/8+zk//Ps5P/0LSU/Myoh/zMqIf/ zKiH/82piP/NqYj/zKiI/8yoiP/MqYn/zKmJ/8ypif/NqYn/no6B/6Ghof/Pz8//5OTk/7m5uf91dXX/ SUlJ/1RRTf+okHj/zayM/82sjP/NrIz/zq2M/86tjP/OrY3/zayN/82tjf/NrY7/za6O/82vj//Or4// za+P/86vkP/Nr5D/za+Q/82vkP/OsJH/zrCR/8+ykv/PspL/z7KS/8+ykv/PspL/z7KT/8+zk//Ps5P/ 0LOU/Myoh/zMqIf/zKiI/8yoh//NqYj/zKiH/82piP/MqYj/y6iI/8yoiP/NqYj/nY6B/6Ghof/Pz8// 5OTk/7m5uf91dXX/SUlJ/1RRTf+oj3j/zKuL/82si//Nq4z/zayM/82sjP/NrIz/zqyN/8ioiv+gj37/ jYV9/6CYkP+jnJT/kYqB/3RtZf9nX1f/amNb/8mrjf/Nr5D/zrCR/86wkf/NsJH/zrGR/86xkf/OsZH/ z7GS/8+xk//PsZP/z7GT/Myoh/zMqIf/zKiH/8yoh//MqIf/zKiH/8yoiP/MqIf/zKiH/8yoiP/MqYj/ nY6B/6Ghof/Pz8//5OTk/7m5uf91dXX/SUlJ/1RQTf+nj3f/zaqK/82ri//Nq4v/zauL/82rjP/Nq4z/ zayM/8amiP+cj4P/lJSU/7+/v//Gxsb/pKSk/2VlZf9HR0f/SElJ/8epjP/Nro//za+Q/82vkP/Nr5H/ zbCR/82wkf/Nr5H/zrCS/82wkf/OsJL/zrCS/Myoh/zMqIf/zKiH/8yoh//MqIf/zKiH/8yoiP/MqIf/ y6eH/8yoh//MqIj/nY6B/6Ghof/Pz8//5OTk/7m5uf91dXX/SUlJ/1RQTf+njnf/zauL/8yqi//Mqor/ zKqK/8yqi//Nq4v/zKuL/8WmiP+fkob/n5+f/9PT0//c3Nz/t7e3/21tbf9HR0f/RkZG/8epi//Nro// zK6Q/8yukP/MrpD/za6R/82vkf/Nr5H/za+R/82vkf/NsJH/za+R/M2piPzNqYj/zKeH/8yoh//Mp4f/ y6eG/8unh//Lp4f/y6eH/8yoh//MqIj/nY6B/6Ghof/Pz8//5OTk/7m5uf91dXX/SUlJ/1RQTf+mjnf/ zKmK/8ypiv/LqYn/zKmK/8ypiv/Mqor/zKqK/8Slh/+fk4f/o6Oj/9nZ2f/i4uL/vb29/3Fxcf9JSUn/ R0dH/8aoiv/MrY//za6Q/82ukP/MrpD/zK6Q/8yukP/MrpD/zK6Q/8yukP/MrpD/za+R/M2piPzOqYj/ zaiI/8yoh//Lp4f/y6eG/8unh//Lp4f/y6eG/8unhv/Mp4f/nY6B/6Ghof/Pz8//5OTk/7m5uf91dXX/ SUlJ/1RQTf+njnf/y6mJ/8qoif/LqYn/y6mJ/8ypiv/MqYr/zKmK/8Skh/+fkob/pKSk/9nZ2f/i4uL/ vr6+/3Fxcf9JSUn/R0dH/8Woiv/MrY//zK2P/8ytj//MrY//zK2P/8ytj//LrY//y62P/8utj//MrpD/ y62P/MyoiPzOqYj/zamI/82oh//Lp4f/y6eH/8unh//Kpob/y6eH/8qmhv/Lp4f/nY6A/6Ghof/Pz8// 5OTk/7q6uv91dXX/SEhI/1RQTf+mjXb/yqiJ/8qoiP/KqIj/yqiJ/8qoif/LqIn/y6iK/8Skh/+fkob/ pKSk/9nZ2f/i4uL/vr6+/3BwcP9JSUn/RkdH/8Wnif/MrI3/zK2P/8usjv/MrY//zK2P/8ytj//LrY// zK2P/8utj//LrY//y62P/MObgPzIoYT/zKeI/86piP/OqIj/zKeH/8qmhv/Kp4b/yqaG/8qmhv/Lp4b/ nY1//6CgoP/Ozs7/5OTk/7q6uv92dnb/SUlJ/1JOS/+li3X/y6eI/8qniP/Kp4j/yqaI/8qnif/Kp4n/ yqiJ/8Oihf+dkYX/pKSk/9ra2v/h4eH/vb29/29vb/9HR0f/RkZG/8Wmif/Lq43/zKyN/8qrjf/Kq43/ y6yO/8usjv/LrI7/y6yP/8usjv/LrI7/yquO/MKZf/zCmX//xZ2B/8mjhf/Mp4f/zaiI/8ynh//Lp4f/ yqaG/8qmhv/Lp4f/nYx+/56env/MzMz/4+Pj/7+/v/98fHz/S0tL/0xJR/+chHD/y6eI/8qmh//Kp4f/ yqaH/8qmiP/Jpoj/yqeJ/8Cghf+ZjoX/qKio/9zc3P/g4OD/ubm5/2pqav9GRkb/R0dH/8Wnif/Kqoz/ y6qM/8qrjf/Kq43/yqqN/8qrjv/Kq47/yquO/8qqjf/Kqo3/yqqN/MGYf/zCmX//wpl//8OagP/FnoL/ yqWG/82piP/Np4j/y6eH/8qmhv/Kpob/oo59/5qamv/Hx8f/4+Pj/8nJyf+Kior/VFRU/0NDQv+FdGT/ xqOF/8mlhv/Kpof/yqaI/8qmh//Jpof/yaaI/7qdhP+RjIj/s7Oz/+Dg4P/d3d3/sLCw/2NjY/9DQ0P/ T0xK/8mpi//KqYv/yqqM/8qqjP/Kqo3/yqqM/8qqjf/Kqo7/yaqN/8mqjf/Jqo3/yaqN/MGYf/zCmX// wpl//8GYf//CmX//wpmA/8eghP/LpYf/zaiI/8yniP/Lpob/r5R9/5OTk/+8vLz/4ODg/9jY2P+qqqr/ cnJy/0pKSv9ZVE//qI12/8mlhv/JpYb/yaWH/8mlh//Jpoj/xqOG/5yNgf+dnZ3/yMjI/+Li4v/T09P/ n5+f/1dXV/9CQkL/Zl1W/8upi//KqIv/yqqL/8mpi//JqYz/yqmM/8qpjP/KqYz/yamM/8mpjP/JqYz/ yamN/MGYf/zAl37/wZh//8GYfv/BmH//wZh//8GYf//Dm4H/yKGD/8ymh//Mp4f/w6GD/4qJh/+vr6// 2dnZ/+Hh4f/IyMj/nJyc/2lpaf9VVVX/bmZe/66Sev/GooX/yaWH/8mlh/++noT/pJGB/5eWlf+4uLj/ 1tbW/93d3f/Gxsb/ioqK/01NTf9DQ0P/h3Zn/8qoiv/KqIr/yqiL/8moiv/JqIv/yaiL/8moi//JqYz/ yamM/8mojP/JqYz/yaiM/MCXfvzAl37/wJd+/8CXf//BmH7/wZh//8CXfv/BmH//wpl//8Wdgv/KpIb/ zKeH/5SJfv+goKD/y8vL/+Tk5P/d3d3/xMTE/5ycnP9+fn7/b29v/355dP+Og3n/mop8/5eJff+RioT/ lpST/7Kysv/MzMz/2tra/9XV1f+ysrL/cnJy/0VFRf9NSkj/qI55/8mnif/Jp4r/yaeK/8mniv/JqIv/ yKeL/8mni//Jp4v/yaiM/8mojP/Jp4z/yKeM/MCXffzAl33/wJd+/8CXfv/Al37/wJd+/8CXfv/Al37/ wZh//8KZf//BmX//xp2C/7OXgf+OjIr/sbGx/9vb2//k5OT/39/f/87Ozv+7u7v/qamp/5ubm/+Wlpb/ lpaW/5iYmP+fn5//sLCw/8fHx//U1NT/2dnZ/8fHx/+NjY3/VlZW/0JCQv93al7/vp6E/8imif/Ipon/ yKaJ/8mniv/Jpor/yaaL/8imiv/Jp4v/yKeM/8injP/Ipov/yKeM/L+Wffy/ln3/wJd9/8CWff/Aln7/ wJd9/8CWfv/Al37/wJd+/8CXfv/Al37/wJd+/7yWfv+YiH7/mZiY/8fHx//d3d3/5OTk/+Hh4f/X19f/ zc3N/8LCwv+7u7v/uLi4/7m5uf+/v7//ycnJ/9XV1f/b29v/19fX/6Wlpf9paWn/R0dH/1RPTP+kinX/ x6SI/8ekiP/HpYn/x6WJ/8eliv/Ipor/yKaK/8imiv/IpYr/yKWK/8imiv/Hpor/x6aK/L+Wffy/ln3/ vpZ9/8CWfv/Aln7/v5Z+/7+Wff/Aln3/wJZ+/7+Wff/Al33/wJd+/8CWfv+vjnr/joeD/6mpqf/Ly8v/ 3Nzc/+Pj4//l5eX/4eHh/9jY2P/U1NT/09PT/9PT0//W1tb/3Nzc/+Li4v/c3Nz/ubm5/3Z2dv9OTk7/ RUVF/4d1Zf/DoYX/x6SI/8ekiP/HpIn/x6SJ/8ekif/HpIn/x6SJ/8eliv/HpYr/x6WK/8eliv/HpYr/ x6WK/L6Wffy+lX3/vpZ+/76Wff++ln3/v5Z9/7+Wff+/ln3/v5Z9/8CXff+/ln3/wJZ+/8CWfv/Al37/ rYx4/5CLiP+mpqb/xcXF/9XV1f/b29v/4+Pj/+np6f/q6ur/6urq/+rq6v/p6en/5OTk/9DQ0P+pqan/ eXl5/05OTv9LSUj/d2he/8aihv/Go4f/x6SI/8ajiP/HpIn/x6SJ/8ekif/HpIn/x6SJ/8ekif/HpIn/ x6WK/8ekiv/Go4n/x6SK/L2Vfvy9lX7/vpV+/72Vfv+9lX3/vpV9/76Wfv++ln7/vpZ+/76Wfv++ln7/ v5Z9/7+Wfv+/ln7/wJZ9/6iLev+Ui4f/oqGh/729vf/IyMj/zMzM/9HR0f/V1dX/19fX/9TU1P/Ly8v/ ubm5/5SUlP9xcXH/VVVV/09NS/9/b2L/upmA/8ahh//Goof/xqKH/8ajh//Go4j/xqOI/8ajiP/Go4j/ xqOI/8ajif/Go4n/xqOJ/8ajif/Go4n/xqOJ/L2Vfvy9lX7/vZV+/72Vfv++lX7/vZV+/76Wfv+9lX7/ vpZ+/76Vfv+9lX7/vpZ+/76Vfv++ln7/v5Z+/76Vff+xj3v/lod//5qamv+tra3/t7e3/7q6uv+4uLj/ s7Oz/6enp/+Xl5f/gYGB/2RkZP9TU1P/VVJP/5iAbv+9m4H/xqGG/8ahhv/GoYb/xaKH/8Wih//Foof/ xaKH/8ajh//Gooj/xaKH/8aiiP/Gooj/xqOJ/8aiiP/Fooj/xaKI/L2Vfvy9lX7/vZR9/72Vfv+9lX7/ vZV+/72Vfv+9lX3/vZV+/72Vfv+9lX7/vZV+/76Vfv++lX//vpZ//7+Wf/+/ln7/v5Z+/6mMef+ZioH/ nJWR/6Ccmv+cmpn/k5KS/4KBgP90cW//a2dj/29mXv+PeWr/vJmA/8ahhv/GoYb/xaCG/8Wghv/GoYb/ xqGH/8ahhv/FoYb/xaGH/8Whh//FoYf/xaGH/8aiiP/FoYf/xqKI/8Whh//FoYf/xaKI/L2Vfvy9lH7/ vZR+/7yUfv+9lH7/vZR+/72Ufv+9lH3/vZR9/72Vfv+9lX7/vZR+/72Vfv+9lX7/vpZ+/76Wf/++ln// vpZ//76Wf/+8lX7/so96/6qOf/+mj4D/o41//6GKe/+iiXf/qY13/76bgf/HoYb/xqCF/8aghv/GoIb/ xaCF/8Wghf/FoIX/xaCG/8Wghv/FoIb/xaCG/8Wghv/EoYf/xKCH/8Sghv/EoIb/xKCG/8Sgh//EoIf/ xKCH/LuTffi9lH78vpV//LyUf/y9lH78vZR+/LyTffy9lH78vZR+/L2Vfvy9lH78vZR+/L2Uffy9lH38 vZV+/L2Vfvy9lX78vZV+/L6Vf/y+ln/8vpZ//L6Wf/y+ln/8v5d//MGZgPzEnYL8x6CE/MeghfzHoIb8 xqCF/MWfhPzFn4X8xZ+F/MWfhvzFoIb8xJ+F/MWghvzFoIb8xaCG/MWghvzEoIb8xKCG/MOghvzEoIb8 w6CG/MOghvzDn4b8w5+G+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACgAAAAgAAAAQAAAAAEAIAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAADQspH60LOR/dCzkv3Qs5L90bST/c6vjf3Nr4z9za+M/c2wjf3OsI39 zrGO/c6xjv3Oso/9zrKP/c+yj/3Ps5D90LSR/dC0kf3QtJH90LWS/dG1kv3RtpT90riV/dK4lv3SuJb9 0riX/dS6mf3YwJ/92MCg/djAoP3YwKD92MCg+tCxkf3QspH/0LKR/9Czkf/Qs5L/xnQs/9NyHv/SbBT/ 0WUI/9BiAv/QYgL/0GIC/9BiAv/QYgL/0GIC/9BiAv/QYgL/0GIC/9BiAv/QYgL/0GIC/9BiAv/QYgL/ 0GIC/9BiAv/QYQL/xXQt/9e/n//Xv5//17+f/9jAoP/YwKD90LGQ/dCxkP/QsZH/0bKR/9Czkv/YhTj/ 8JA1//COMv/wiyz/74Me/+55DP/tdQX/7XUF/+11Bf/tdQX/7XUF/+11Bf/tdQX/7XUF/+11Bf/tdQX/ 7XUF/+11Bf/tdQX/7XUF/+x1Bf/Tfi//17+f/9e/n//Xv5//17+f/9e/n/3QsI/90LGQ/9CxkP/QsZD/ 0LKR/9mJPP/ylzz/8ZU4//GTNf/xkTH/8Y4r//CEGf/uewn/73wJ//B9Cv/wfQr/8H0K//B9Cv/vewj/ 7nsI/+57CP/uewj/7nsI/+57CP/uewj/7nsI/9SCMP/Xv57/17+e/9e/n//Xv5//17+f/dCwj/3QsI// 0LGQ/9CxkP/QsZD/2o4///OdQv/zmz7/85k7//OYN//yljP/8pQw//GMIP/NcA//kEkN/6NSDf+jUg3/ iEYN/914Df/wgQv/8IEL//CBC//wgQv/8IEL//CBC//vgAv/1IQx/9a+nv/Xv57/17+e/9e/nv/Xv579 z7CP/dCwj//QsI//0LCQ/9Cxj//bkkP/9KNI//SiRP/0oEH/9J49//ScOv/zmzb/85ky//KQIf+HQgP/ pkwA/6VMAP+PSAT/8YcO//GHDv/xhw7/8YcO//GHDv/xhw7/8YcO//GGDv/ViDL/1r6d/9a+nv/Xv57/ 17+e/9e+nv3Qr4790K+O/9Cwjv/QsI//0LCP/9uWRv/1qU3/9ahK//WmRv/1pEP/9aNA//ShPP/0oDn/ 9J00/69mFf+dSAD/lkUA/75rDP/yjBH/8owR//KMEf/yjBH/8owR//KMEf/yjBH/8owR/9WKM//VvJv/ 1r6d/9a+nf/Wvp3/1r6d/c+ujf3Qr47/0K+N/9Cvjv/QsI7/3JpK//avU//3rk//96xM//arSf/2qUX/ 9qhC//amP//2pTv/y4It/5hFAP+SQwH/2IIa//SSFP/0khT/9JIU//SSFP/0khT/9JIU//SSFP/zkhT/ 1o01/9S6mv/Vu5v/1r6d/9a+nf/Wvp39z66M/c+ujP/Qr43/0K+N/9Cvjf/enk3/+LVY//i0Vf/4slL/ 97FO//evS//3rkj/96xE/9uVOv+bSAP/pkwA/6ZMAP+YSQX/5Y4Z//WYF//1mBf/9ZgX//WYF//1mBf/ 9ZgX//WYF//XkDb/1LqZ/9W6mv/Vu5r/1r6d/9a+nf3PrYz9z62M/8+ujP/Proz/0K+N/9+iUf/5u17/ +blb//i4V//4t1T/+LVR//i0Tv/4skr/snIl/6VLAP+mTAD/pkwA/6JKAP+9cxL/9p4a//aeGv/2nhr/ 9p4a//aeGv/2nhr/9p4a/9eTOP/Uupn/1bqZ/9S6mf/Uu5r/1b2c/c6ti/3PrYv/z62M/8+tjP/Proz/ 36ZU//rAY//6v2D/+r5d//q8Wv/6u1b/+rpT//q4UP+5fzD/l0UA/6ZMAP+mTAD/j0EA/8qCFv/4pB3/ +KQd//ikHf/4pB3/+KQd//ikHf/3pB3/15Y5/9S5mP/Uupj/1LmY/9S6mf/Uupr9zqyL/c6si//OrIv/ z62L/8+tjP/gqVf/+8Vp//vEZf/7w2L/+8Jf//vAXP/7v1n/+r5V//a5UP+LVRj/fTkA/3o4AP+YYBr/ +a0q//mqIP/5qiD/+aog//mqIP/5qiD/+aog//ipIP/Ymjv/07mX/9O5l//TuZj/1LqY/9S6mP3Oq4v9 zauL/82riv/OrIv/zqyL/+GtW//8y27//Mlr//zIZ//8x2X//MZh//zFXv/8xFv//MNY//vBVf/krEf/ 6K5F//y+S//7vEb/+7Uy//uwJP/7sCP/+7Aj//uwI//7sCP/+q8j/9mdPP/SuJb/0riW/9K4lv/TuZf/ 07mX/c6riv3Oq4r/zquK/82ri//Nq4v/4bBe//zPc//9znD//c1t//3Mav/9y2f//cpj//3JYP/9yF3/ /cda//3GV//9xVT//cRR//3DTv/8wkr//L0+//y4Lf/8tif//LYn//y2J//7tSb/2Z89/9G2lv/Rt5b/ 0reW/9K3lv/St5b9zaqJ/c2qif/Nqor/zquK/86riv/itGH//tR4//7Tdf/+0nL//tFv//7QbP/+z2n/ /s5m//7NYv/+zF///ctc//3KWf/9yVb//clT//3IUP/9x03//cVJ//3BPf/9vjD//bwr//y7Kf/aoj// 0baV/9G1lf/Stpb/0baV/9G2lv3NqYn9zKmJ/82pif/NqYn/zaqK/9aoW//ov23/575u/+a/cP/pwnT/ 5sBz/+K8cf/jvnP/6cN4/+nDev/pxHz/6cN6/+jBdv/owHD/575r/+e8Zf/numD/5rha/+a1U//mskr/ 5K4+/9CdRv/QtJT/0LSU/9C0lP/QtJT/0LWV/cypiP3MqIj/zKmI/8ypiP/MqYn/zamK/82qiv+tmIX/ p6ip/9/f4P+mp6j/TExN/2NcVf/OrY3/zq2N/8+ujv/Oro7/zq6O/86vj//OsJD/z7CR/86wkf/OsZH/ zrGS/8+yk//PspP/z7OU/8+zk//Ps5P/z7OT/8+zk//QtJT9zKiH/cyoh//NqYj/zKiI/8ypif/MqYn/ zKmJ/62XhP+qqqr/4uLi/6urq/9PT0//ZFxV/82si//NrIz/zayM/86tjP/OrY3/za2N/86ujv/Nr4// za+P/82vkP/Nr5D/za+Q/86xkf/PsZL/z7KS/8+ykv/PspL/z7KS/8+zk/3MqIf9zKiH/8yoh//MqIf/ zKiH/8yoiP/LqIj/rZeD/6qqqv/i4uL/q6ur/09PT/9kXFX/zKuK/82ri//Nq4v/zayL/82sjP/Ao4b/ jIaB/6mkn/+alY//aWRf/15ZVP/JrI7/za+Q/82wkP/NsJH/zbCR/86xkv/OsZL/z7GS/cyoh/3MqIf/ zKiH/8yoh//MqIf/y6eH/8unh/+tl4P/qqqq/+Li4v+rq6v/T09P/2NcVP/Mqor/zKqK/8yqiv/Mqov/ zauL/72ghP+YmJj/1dXV/76+vv9gYGD/RERE/8mqjP/Mro//zK6Q/82vkf/Nr5H/za+R/82vkf/NsJH9 zamH/cyoh//Mp4f/y6eG/8unh//Lp4f/y6eH/62Wgv+qqqr/4uLi/6urq/9PT0//Y1tU/8upif/LqYn/ y6mJ/8ypiv/LqYr/vZ+D/52dnf/d3d3/x8fH/2VlZf9ERUX/yKmM/8ytj//MrY//zK6Q/8yukP/MrpD/ zK6Q/8yukP3MqIf9zamI/8ynh//Lp4b/yqaG/8qmhv/Lpob/rJaC/6qqqv/i4uL/q6ur/05OTv9jW1T/ y6iJ/8qoiP/KqIn/y6iJ/8uoif+8noP/nZ2d/93d3f/IyMj/ZWVl/0RERf/HqIv/y6yO/8usjv/MrY// y62P/8utj//LrY//y62P/cSbgP3Jo4X/zamI/8ynh//Kpob/yqaG/8qmhv+slYH/qamp/+Li4v+srKz/ T09P/2BYUv/Kp4j/yqeH/8qmiP/Kp4n/yqeJ/7qcgf+dnZ3/3t7e/8fHx/9jY2P/RERE/8eniv/Lq43/ yquN/8qrjf/LrI7/y6yO/8urjv/Kq479wpl//cKZf//EnIH/yqWG/8yoh//Lp4f/yqaG/66VgP+kpKT/ 4ODg/7q6uv9aWlr/SkdF/8ajhf/JpYf/yqaI/8mmh//Jpoj/rZWA/6enp//h4eH/vr6+/1tbW/9IR0b/ yamL/8qpjP/Kqoz/yqqM/8qqjf/Kqo3/yaqN/8mqjf3BmH/9wZh//8GYf//CmX//xp+C/8ymh//Mp4f/ u5uA/5eXl//Z2dn/1NTU/4SEhP9MTEz/iHVm/8mlhv/JpYf/yaWH/8Sihf+Vjoj/w8PD/+Dg4P+pqan/ Tk5O/19YUv/KqIr/yamK/8mpi//JqYz/yamM/8mpjP/JqYz/yamM/cCXfv3Al37/wJd+/8GYf//BmH7/ wpl//8ehhP/Mpof/kYuG/8XFxf/j4+P/w8PD/4qKiv9paWn/i391/6iSf/+mkYD/lI6J/7Ozs//X19f/ 09PT/4SEhP9DQ0P/iHZo/8mniv/Jp4r/yaeK/8mni//Jp4v/yaiL/8mnjP/Ip4z9wJd9/cCWff/Al37/ wJd+/8CXfv/Al37/wZh+/8OagP+nj37/pKSk/9vb2//i4uL/z8/P/7W1tf+ioqL/nJyc/5+fn/+ysrL/ zc3N/9nZ2f+2trb/W1tb/0hHRv+7m4H/x6WJ/8imif/Ipor/yKaK/8imiv/Ipov/x6aL/8emi/2/ln39 vpZ9/7+Wff+/ln3/v5Z9/8CWff/Aln3/wJd+/7+Wfv+Rh4H/t7e3/9zc3P/k5OT/3t7e/9TU1P/Ozs7/ z8/P/9fX1//f39//ycnJ/3R0dP9FRUX/jnpq/8ekh//HpIj/x6SJ/8ekif/HpYn/x6WK/8eliv/HpYr/ x6WK/b2Vff2+lX7/vpV9/76Vff+/lX3/v5V9/7+Wff+/ln3/wJZ+/7eSe/+SjIj/uLi4/9LS0v/c3Nz/ 5eXl/+np6f/o6Oj/39/f/729vf94eHj/SkpK/3pqX//Goob/xqOH/8ajiP/HpIn/x6SI/8akif/GpIn/ xqSJ/8ajif/Go4n9vZV+/b2Vfv+9lX7/vZV9/72Vff++lX7/vZV9/76Vfv++lX7/v5Z9/7mSe/+YioL/ pqam/7q6uv+9vb3/urq6/62trf+QkJD/Z2dn/1FQT/+NeWn/xqGG/8ahhv/GoYf/xaKH/8Wih//Go4f/ xqKH/8aiiP/Gooj/xaKI/8WiiP29lX79vZR9/72Uff+9lH7/vZR9/72Vff+9lX7/vZV+/72Vfv+9lX7/ vpZ+/76Wfv+tjnv/oJCG/5uVkf+Qjo3/fXp4/3VsZv+LeGr/uZd+/8aghv/FoIb/xaCG/8Wghv/FoYb/ xaGH/8Whh//FoYf/xaGH/8Whh//FoYf/xaGH/buTffq9lH79vJR+/b2Ufv28k339vJR9/b2Ufv29lH79 vZR9/b2Ufv29lX79vZV+/b6Wf/2+ln79vpZ//cCXf/3Em4L9x6CE/caghf3GoIX9xZ+F/cWfhf3FoIX9 xaCF/cWghv3FoIb9xKCG/cOghv3EoIb9w6CG/cOfhv3Dn4b6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAoAAAAEAAAACAAAAABACAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA0LKR/dCzkv7No3f+0I9S/s+KSf7PiUj+z4pI/tCKSP7Qi0n+ 0ItK/tGMSv7RjUv+0Y1M/tKrgf7YwKD+2MCg/dCxkP7QspH/1J1m//GSN//xjCz/74AV/+54B//veQj/ 73kI/+54B//ueAb/7ngG/+54Bv/VoGf/17+f/9e/n/7QsI/+0LCQ/9Whaf/0n0P/9Jw8//OYNf/piSH/ mEsH/5hLCP/sgg3/8YQM//GEDP/whAz/1qJo/9e/nv/Xv57+0K+O/tCwjv/WpGz/9qxO//apSP/1pUH/ 9aI6/6xeEf+wXgr/85AT//OQE//zkBP/848T/9WjZ//WvZz/1r6d/s+ujP7Proz/16hu//i3Wv/4tVP/ +LJM/9+ZO/+jSwH/oksB/+OOF//2mxn/9psZ//abGf/Wpmj/1bqa/9W9nP7OrIv+z62M/9eqcf/6wmT/ +sBe//q9WP/prEn/kUgG/5JJB//tnx//+acf//mnH//4px//1qlp/9S5mP/Uupn+zquK/s6si//YrXT/ /M1v//zLaf/8yGP//MZc//a/U//3vU7//L5E//u2Lf/7syX/+7Ml/9Wraf/St5b/0riX/s2pif7Nqor/ 1ax0//PJcv/zyXH/8cdu//LHbf/zyG3/88Zo//PEYP/ywFf/8rtH//G2N//Tqmz/0bWV/9G1lf7MqYj+ zKmI/8ypif+9oYf/xcXF/3t7fP+ZhHH/zq2N/86tjf/Or4//zrCQ/86wkf/OsZL/z7KT/8+zk//Ps5P+ zKiH/syoh//MqIf/vJ+F/8bGxv99fX3/mINv/82ri//Nq4z/qJiJ/7azsP9bWFb/y62O/82vkf/NsJH/ zrCS/s2piP7Lp4f/y6eH/7yfhf/Gxsb/fX19/5eCb//LqYn/y6mK/62ekP/T09P/VVVV/8qrjf/MrY// zK2P/8yukP7EnIH+yqSG/8unh/+8noP/xMTE/4SEhP+Pemn/yqaH/8qniP+rnZL/0dHR/1JSUv/JqYv/ yquN/8qrjv/Kq47+wZh//sGYf//FnYL/x6KF/7Kwr//AwMD/cm1p/7GXgP+ymob/ube1/7i4uP9eWFP/ yaiK/8moi//JqIz/yaiM/r+Wff7Al33/wJd+/8GYfv+nlIj/1NTU/9LS0v+4uLj/vr6+/9TU1P9ycnL/ loBu/8elif/IpYr/yKaK/8emi/69lX7+vpV9/76Wff++ln3/vZV9/6eYj//ExMT/0dHR/8HBwf97e3v/ hnRm/8aih//Go4j/xqOI/8ajif/Go4n+vZR+/b2Ufv69lH3+vZV+/r2Vfv6+lX7+spKA/qqUh/6fiHn+ tJR9/sWghf7FoIb+xaCG/sSghv7EoYf+xKCH/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA= ================================================ FILE: MD5HashChanger/Program.cs ================================================ using System; using System.Windows.Forms; namespace MD5_Hash_Changer { static class Program { /// /// The main entry point for the application. /// [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new MainForm()); } } } ================================================ FILE: MD5HashChanger/Properties/AssemblyInfo.cs ================================================ using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. [assembly: AssemblyTitle("MD5 Hash Changer")] [assembly: AssemblyDescription("MD5 Hash Changer")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Microsoft")] [assembly: AssemblyProduct("MD5 Hash Changer")] [assembly: AssemblyCopyright("Copyright © ewwink 2017")] [assembly: AssemblyTrademark("ewwink")] [assembly: AssemblyCulture("")] // Setting ComVisible to false makes the types in this assembly not visible // to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] // The following GUID is for the ID of the typelib if this project is exposed to COM [assembly: Guid("9816fa18-0885-42fe-b7b9-347fc8aee07f")] // Version information for an assembly consists of the following four values: // // Major Version // Minor Version // Build Number // Revision // // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("1.1.0.0")] [assembly: AssemblyFileVersion("1.1.0.0")] ================================================ FILE: MD5HashChanger/Properties/Resources.Designer.cs ================================================ //------------------------------------------------------------------------------ // // This code was generated by a tool. // Runtime Version:4.0.30319.42000 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //------------------------------------------------------------------------------ namespace MD5_Hash_Changer.Properties { using System; /// /// A strongly-typed resource class, for looking up localized strings, etc. /// // This class was auto-generated by the StronglyTypedResourceBuilder // class via a tool like ResGen or Visual Studio. // To add or remove a member, edit your .ResX file then rerun ResGen // with the /str option, or rebuild your VS project. [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] internal class Resources { private static global::System.Resources.ResourceManager resourceMan; private static global::System.Globalization.CultureInfo resourceCulture; [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] internal Resources() { } /// /// Returns the cached ResourceManager instance used by this class. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] internal static global::System.Resources.ResourceManager ResourceManager { get { if (object.ReferenceEquals(resourceMan, null)) { global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("MD5_Hash_Changer.Properties.Resources", typeof(Resources).Assembly); resourceMan = temp; } return resourceMan; } } /// /// Overrides the current thread's CurrentUICulture property for all /// resource lookups using this strongly typed resource class. /// [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] internal static global::System.Globalization.CultureInfo Culture { get { return resourceCulture; } set { resourceCulture = value; } } } } ================================================ FILE: MD5HashChanger/Properties/Resources.resx ================================================  text/microsoft-resx 2.0 System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 ================================================ FILE: MD5HashChanger/Properties/Settings.Designer.cs ================================================ //------------------------------------------------------------------------------ // // This code was generated by a tool. // Runtime Version:4.0.30319.42000 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //------------------------------------------------------------------------------ namespace MD5_Hash_Changer.Properties { [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.8.0.0")] internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); public static Settings Default { get { return defaultInstance; } } } } ================================================ FILE: MD5HashChanger/Properties/Settings.settings ================================================  ================================================ FILE: MD5HashChanger/app.config ================================================ ================================================ FILE: MD5HashChanger.sln ================================================  Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 2012 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MD5HashChanger", "MD5HashChanger\MD5HashChanger.csproj", "{9094A9CA-15C7-45D4-BF88-E91E2C75A5D7}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU Release|Any CPU = Release|Any CPU EndGlobalSection GlobalSection(ProjectConfigurationPlatforms) = postSolution {9094A9CA-15C7-45D4-BF88-E91E2C75A5D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {9094A9CA-15C7-45D4-BF88-E91E2C75A5D7}.Debug|Any CPU.Build.0 = Debug|Any CPU {9094A9CA-15C7-45D4-BF88-E91E2C75A5D7}.Release|Any CPU.ActiveCfg = Release|Any CPU {9094A9CA-15C7-45D4-BF88-E91E2C75A5D7}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE EndGlobalSection EndGlobal ================================================ FILE: README.md ================================================ # MD5-Hash-Changer C# Application to Change MD5 Hash of any file. It work by appending "null" characters to the end of file ## Whats New in V1.2: - Low Memory usage for checking large file - Parallel Processing - Add Drag n Drop File - Select Folder ## Requirement & Download - .Net Framework 4.6 (Windows 10 built-in) - Download from [Release page](https://github.com/ewwink/MD5-Hash-Changer/releases) ![md5-hash-changer](https://github.com/ewwink/MD5-Hash-Changer/blob/master/screenshoot.jpg?raw=true)