Projects STRLCPY SignHackTool Commits 766e821c
🤬
Revision indexing in progress... (symbol navigation in revisions will be accurate after indexed)
  • ■ ■ ■ ■ ■ ■
    App.config
     1 +<?xml version="1.0" encoding="utf-8" ?>
     2 +<configuration>
     3 + <startup>
     4 + <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.7.2" />
     5 + </startup>
     6 +</configuration>
  • ■ ■ ■ ■ ■ ■
    App.xaml
     1 +<Application x:Class="SignHackTool.App"
     2 + xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
     3 + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
     4 + xmlns:local="clr-namespace:SignHackTool"
     5 + StartupUri="MainWindow.xaml">
     6 + <Application.Resources>
     7 +
     8 + </Application.Resources>
     9 +</Application>
     10 + 
  • ■ ■ ■ ■ ■ ■
    App.xaml.cs
     1 +using System;
     2 +using System.Collections.Generic;
     3 +using System.Configuration;
     4 +using System.Data;
     5 +using System.Linq;
     6 +using System.Threading.Tasks;
     7 +using System.Windows;
     8 + 
     9 +namespace SignHackTool
     10 +{
     11 + /// <summary>
     12 + /// Логика взаимодействия для App.xaml
     13 + /// </summary>
     14 + public partial class App : Application
     15 + {
     16 + }
     17 +}
     18 + 
  • ■ ■ ■ ■ ■ ■
    AssemblyInfo.cs
     1 +using System.Reflection;
     2 +using System.Resources;
     3 +using System.Runtime.CompilerServices;
     4 +using System.Runtime.InteropServices;
     5 +using System.Windows;
     6 + 
     7 +// Общие сведения об этой сборке предоставляются следующим набором
     8 +// набор атрибутов. Измените значения этих атрибутов, чтобы изменить сведения,
     9 +// связанные со сборкой.
     10 +[assembly: AssemblyTitle("SignHackTool")]
     11 +[assembly: AssemblyDescription("")]
     12 +[assembly: AssemblyConfiguration("")]
     13 +[assembly: AssemblyCompany("")]
     14 +[assembly: AssemblyProduct("SignHackTool")]
     15 +[assembly: AssemblyCopyright("Copyright © 2020")]
     16 +[assembly: AssemblyTrademark("")]
     17 +[assembly: AssemblyCulture("")]
     18 + 
     19 +// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми
     20 +// для компонентов COM. Если необходимо обратиться к типу в этой сборке через
     21 +// из модели COM, установите атрибут ComVisible для этого типа в значение true.
     22 +[assembly: ComVisible(false)]
     23 + 
     24 +//Чтобы начать создание локализуемых приложений, задайте
     25 +//<UICulture>CultureYouAreCodingWith</UICulture> в файле .csproj
     26 +//в <PropertyGroup>. Например, при использовании английского (США)
     27 +//в своих исходных файлах установите <UICulture> в en-US. Затем отмените преобразование в комментарий
     28 +//атрибута NeutralResourceLanguage ниже. Обновите "en-US" в
     29 +//строка внизу для обеспечения соответствия настройки UICulture в файле проекта.
     30 + 
     31 +//[assembly: NeutralResourcesLanguage("en-US", UltimateResourceFallbackLocation.Satellite)]
     32 + 
     33 + 
     34 +[assembly: ThemeInfo(
     35 + ResourceDictionaryLocation.None, //где расположены словари ресурсов по конкретным тематикам
     36 + //(используется, если ресурс не найден на странице,
     37 + // или в словарях ресурсов приложения)
     38 + ResourceDictionaryLocation.SourceAssembly //где расположен словарь универсальных ресурсов
     39 + //(используется, если ресурс не найден на странице,
     40 + // в приложении или в каких-либо словарях ресурсов для конкретной темы)
     41 +)]
     42 + 
     43 + 
     44 +// Сведения о версии для сборки включают четыре следующих значения:
     45 +//
     46 +// Основной номер версии
     47 +// Дополнительный номер версии
     48 +// Номер сборки
     49 +// Номер редакции
     50 +//
     51 +// Можно задать все значения или принять номера сборки и редакции по умолчанию
     52 +// используя "*", как показано ниже:
     53 +// [assembly: AssemblyVersion("1.0.*")]
     54 +[assembly: AssemblyVersion("1.0.0.0")]
     55 +[assembly: AssemblyFileVersion("1.0.0.0")]
     56 + 
  • ■ ■ ■ ■ ■ ■
    LICENSE
     1 +MIT License
     2 + 
     3 +Copyright (c) 2020 hlop
     4 + 
     5 +Permission is hereby granted, free of charge, to any person obtaining a copy
     6 +of this software and associated documentation files (the "Software"), to deal
     7 +in the Software without restriction, including without limitation the rights
     8 +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
     9 +copies of the Software, and to permit persons to whom the Software is
     10 +furnished to do so, subject to the following conditions:
     11 + 
     12 +The above copyright notice and this permission notice shall be included in all
     13 +copies or substantial portions of the Software.
     14 + 
     15 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     16 +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     17 +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     18 +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     19 +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     20 +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
     21 +SOFTWARE.
     22 + 
  • ■ ■ ■ ■ ■ ■
    MainWindow.xaml
     1 +<Window x:Class="SignHackTool.MainWindow"
     2 + xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
     3 + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
     4 + xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
     5 + xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
     6 + xmlns:local="clr-namespace:SignHackTool"
     7 + mc:Ignorable="d"
     8 + Title="MainWindow" Height="512" Width="365" WindowStyle="None" ResizeMode="NoResize" WindowStartupLocation="CenterScreen">
     9 + <Window.Background>
     10 + <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
     11 + <GradientStop Color="#FF232D3E" />
     12 + <GradientStop Color="#FF1D222C" Offset="1" />
     13 + <GradientStop Color="#FF1D222C" Offset="0.5" />
     14 + </LinearGradientBrush>
     15 + </Window.Background>
     16 + <Window.Resources>
     17 + <Style x:Key="ComboboxButton" TargetType="Button">
     18 + <Setter Property="OverridesDefaultStyle" Value="True" />
     19 + <Setter Property="Background" Value="#FF1B1f29" />
     20 + <Setter Property="Template">
     21 + <Setter.Value>
     22 + <ControlTemplate TargetType="Button">
     23 + <Border x:Name="border" BorderThickness="0" BorderBrush="Black" Background="{TemplateBinding Background}">
     24 + <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
     25 + </Border>
     26 + <ControlTemplate.Triggers>
     27 + <EventTrigger RoutedEvent="PreviewMouseDown">
     28 + <BeginStoryboard>
     29 + <Storyboard>
     30 + <ThicknessAnimation Storyboard.TargetProperty="Margin" Duration="0:0:0.100" To="2,2,0,0"></ThicknessAnimation>
     31 + </Storyboard>
     32 + </BeginStoryboard>
     33 + </EventTrigger>
     34 + <EventTrigger RoutedEvent="PreviewMouseUp">
     35 + <BeginStoryboard>
     36 + <Storyboard>
     37 + <ThicknessAnimation Storyboard.TargetProperty="Margin" Duration="0:0:0.100" To="0,0,0,0"></ThicknessAnimation>
     38 + </Storyboard>
     39 + </BeginStoryboard>
     40 + </EventTrigger>
     41 + </ControlTemplate.Triggers>
     42 + </ControlTemplate>
     43 + </Setter.Value>
     44 + </Setter>
     45 + </Style>
     46 + <Style x:Key="cmbBtn" TargetType="Button">
     47 + <Setter Property="OverridesDefaultStyle" Value="True" />
     48 + <Setter Property="Background" Value="#FF272E3B" />
     49 + <Setter Property="Height" Value="25" />
     50 + <Setter Property="Foreground" Value="#FF929496" />
     51 + <Setter Property="FontSize" Value="13" />
     52 + <Setter Property="Template">
     53 + 
     54 + <Setter.Value>
     55 + <ControlTemplate TargetType="Button">
     56 + <Border Name="border" BorderThickness="0" BorderBrush="Black"
     57 + Background="{TemplateBinding Background}">
     58 + <ContentPresenter HorizontalAlignment="Left" VerticalAlignment="Center" Margin="30,0,0,0" />
     59 + </Border>
     60 + <ControlTemplate.Triggers>
     61 + <Trigger Property="IsMouseOver" Value="True">
     62 + <Setter Property="Background" Value="#FF323945" />
     63 + <Setter Property="Foreground" Value="#FFC3C4C8" />
     64 + </Trigger>
     65 + </ControlTemplate.Triggers>
     66 + </ControlTemplate>
     67 + </Setter.Value>
     68 + </Setter>
     69 + </Style>
     70 + </Window.Resources>
     71 + <Grid>
     72 + <Grid.RowDefinitions>
     73 + <RowDefinition Height="25" />
     74 + <RowDefinition Height="300" />
     75 + </Grid.RowDefinitions>
     76 + <Grid Background="Transparent" x:Name="toolbar" Grid.Row="0" MouseDown="toolbar_MouseDown">
     77 + <Polygon Fill="White" Opacity="0.2" Points="107,0,115,7,249,7,257,0" />
     78 + <StackPanel Orientation="Horizontal" HorizontalAlignment="Right">
     79 + <Image Height="25" Width="25"></Image>
     80 + <Image Height="25" Width="25"></Image>
     81 + </StackPanel>
     82 + </Grid>
     83 + <Border Grid.Row="2" Height="25" Width="330" HorizontalAlignment="Center" VerticalAlignment="Top" BorderThickness="1" Background="Black">
     84 + <Border.Style>
     85 + <Style TargetType="{x:Type Border}">
     86 + <Setter Property="BorderBrush" Value="#FF333842" />
     87 + <Style.Triggers>
     88 + <Trigger Property="IsMouseOver" Value="True">
     89 + <Setter Property="BorderBrush" Value="#FF51555c" />
     90 + </Trigger>
     91 + <EventTrigger RoutedEvent="PreviewMouseDown">
     92 + <BeginStoryboard>
     93 + <Storyboard>
     94 + <ColorAnimation Storyboard.TargetProperty="BorderBrush.Color" Duration="0:0:0.100" To="#FF333842"></ColorAnimation>
     95 + </Storyboard>
     96 + </BeginStoryboard>
     97 + </EventTrigger>
     98 + <EventTrigger RoutedEvent="PreviewMouseUp">
     99 + <BeginStoryboard>
     100 + <Storyboard>
     101 + <ColorAnimation Storyboard.TargetProperty="BorderBrush.Color" Duration="0:0:0.100" To="#FF51555c"></ColorAnimation>
     102 + </Storyboard>
     103 + </BeginStoryboard>
     104 + </EventTrigger>
     105 + </Style.Triggers>
     106 + </Style>
     107 + </Border.Style>
     108 + <Button Style="{StaticResource ComboboxButton}" Click="Button_Click">
     109 + <StackPanel Orientation="Horizontal" VerticalAlignment="Center" Width="328">
     110 + <TextBlock x:Name="select" Height="16" Width="272" Margin="5,0,0,0" HorizontalAlignment="Left" VerticalAlignment="Center" Text="Jeromin Cody Eric" Foreground="#FF929496" FontSize="14" />
     111 + <Polygon Fill="White" Opacity="0.2" Points="15,5,20,15,25,5" HorizontalAlignment="Right" VerticalAlignment="Center" Width="51" />
     112 + </StackPanel>
     113 + </Button>
     114 + </Border>
     115 + <Grid x:Name="cmb" Grid.Row="2" Height="140" Width="340" VerticalAlignment="Top" Margin="9,30,0,0" Visibility="Hidden" Panel.ZIndex="1">
     116 + <Polygon Fill="Black" StrokeThickness="1" Stroke="#FF0C0101" Margin="0,2,0,0"
     117 + Points="
     118 + 0,8,
     119 + 0,133,
     120 + 330,133,
     121 + 330,8,
     122 + 308,8,
     123 + 298,0,
     124 + 288,8" />
     125 + <Polygon Fill="#FF272E3B" StrokeThickness="1" Margin="0,2,0,0"
     126 + Points="
     127 + 0,8,
     128 + 0,133,
     129 + 330,133,
     130 + 330,8,
     131 + 308,8,
     132 + 298,0,
     133 + 288,8" />
     134 + <Grid Height="133" Width="330" HorizontalAlignment="Left" VerticalAlignment="Top" Margin="0,10,0,0">
     135 + <StackPanel Orientation="Vertical">
     136 + <Button x:Name="Jeromin" Style="{StaticResource cmbBtn}" Click="Jeromin_Click">
     137 + <TextBlock Text="Jeromin Cody Eric" />
     138 + </Button>
     139 + <Button x:Name="Handan" Style="{StaticResource cmbBtn}" Click="Handan_Click">
     140 + <TextBlock Text="Handan" />
     141 + </Button>
     142 + <Button x:Name="TrustAsia" Style="{StaticResource cmbBtn}" Click="TrustAsia_Click">
     143 + <TextBlock Text="TrustAsia" />
     144 + </Button>
     145 + <Button x:Name="GeoTrust0" Style="{StaticResource cmbBtn}" Click="GeoTrust0_Click">
     146 + <TextBlock Text="GeoTrust 2010" />
     147 + </Button>
     148 + <Button x:Name="GeoTrust1" Style="{StaticResource cmbBtn}" Click="GeoTrust1_Click">
     149 + <TextBlock Text="GeoTrust 2011" />
     150 + </Button>
     151 + </StackPanel>
     152 + </Grid>
     153 + </Grid>
     154 + <Grid Background="#FF11141A" Margin="18,30,0,-107" Grid.Row="1" Width="330" Height="378" VerticalAlignment="Top" HorizontalAlignment="Left" Panel.ZIndex="-1" Drop="Grid_Drop" AllowDrop="True">
     155 + <Image Name="sysicon" Panel.ZIndex="1" Source="img/sys.png" Stretch="Uniform" Margin="83,30,82,122" Opacity="0.50"/>
     156 + <TextBlock Name="Droped" Text="" FontSize="16" Foreground="White" Margin="83,261,82,86" HorizontalAlignment="Center" VerticalAlignment="Center"/>
     157 + </Grid>
     158 + <Button Name="signb" Content="Sign" Margin="18,0,17,-148" HorizontalAlignment="Center" VerticalAlignment="Bottom" Grid.Row="1" Width="330" Height="35" FontSize="16" Foreground="White" Cursor="Hand" Click="sign_Click">
     159 + <Button.Style>
     160 + <Style TargetType="Button">
     161 + <Setter Property="OverridesDefaultStyle" Value="True" />
     162 + <Setter Property="Background" Value="#FF0e86CA" />
     163 + <Setter Property="Template">
     164 + <Setter.Value>
     165 + <ControlTemplate TargetType="Button">
     166 + <Border x:Name="border" BorderBrush="Black" BorderThickness="0" Background="{TemplateBinding Background}">
     167 + <ContentPresenter HorizontalAlignment="Center" VerticalAlignment="Center" />
     168 + </Border>
     169 + <ControlTemplate.Triggers>
     170 + <Trigger Property="IsMouseOver" Value="True">
     171 + <Setter Property="Background" Value="#FF008AEF" />
     172 + </Trigger>
     173 + <EventTrigger RoutedEvent="PreviewMouseDown">
     174 + <BeginStoryboard>
     175 + <Storyboard>
     176 + <ColorAnimation Storyboard.TargetProperty="Background.Color" Duration="0:0:0.0002" To="#FF095386"></ColorAnimation>
     177 + </Storyboard>
     178 + </BeginStoryboard>
     179 + </EventTrigger>
     180 + <EventTrigger RoutedEvent="PreviewMouseUp">
     181 + <BeginStoryboard>
     182 + <Storyboard>
     183 + <ColorAnimation Storyboard.TargetProperty="Background.Color" Duration="0:0:0.0002" To="#FF0e86CA"></ColorAnimation>
     184 + </Storyboard>
     185 + </BeginStoryboard>
     186 + </EventTrigger>
     187 + </ControlTemplate.Triggers>
     188 + </ControlTemplate>
     189 + </Setter.Value>
     190 + </Setter>
     191 + </Style>
     192 + </Button.Style>
     193 + </Button>
     194 + </Grid>
     195 +</Window>
  • ■ ■ ■ ■ ■ ■
    MainWindow.xaml.cs
     1 +using System.Diagnostics;
     2 +using System.IO;
     3 +using System.Windows;
     4 +using System.Windows.Input;
     5 + 
     6 +namespace SignHackTool
     7 +{
     8 + /// <summary>
     9 + /// Логика взаимодействия для MainWindow.xaml
     10 + /// </summary>
     11 + public partial class MainWindow : Window
     12 + {
     13 + public MainWindow()
     14 + {
     15 + InitializeComponent();
     16 + }
     17 + 
     18 + private string[] files;
     19 + string signtool_path;
     20 + 
     21 + private string unpack(byte[] file,string extension, string name = "") {
     22 + if (name == "")
     23 + {
     24 + name = Path.GetRandomFileName();
     25 + }
     26 + string temp_path = Path.GetTempPath();
     27 + string path = temp_path + name + extension;
     28 + File.WriteAllBytes(path, file);
     29 + return path;
     30 + }
     31 + private void p_sign(string crt_path, string pfx_path, string password, string name, string file) {
     32 + //SHA1 sign
     33 + Process sha1 = new Process();
     34 + sha1.StartInfo = new ProcessStartInfo(signtool_path);
     35 + if (crt_path != ""){
     36 + sha1.StartInfo.Arguments = string.Format(@"sign /fd SHA1 /tr http://timestamp.digicert.com /v /ac ""{0}"" /f ""{1}"" /p ""{2}"" /n ""{3}"" ""{4}""", crt_path, pfx_path, password, name, file);
     37 + }
     38 + else{
     39 + sha1.StartInfo.Arguments = string.Format(@"sign /fd SHA1 /tr http://timestamp.digicert.com /v /f ""{0}"" /p ""{1}"" ""{2}""", pfx_path, password, file);
     40 + }
     41 + sha1.StartInfo.UseShellExecute = false;
     42 + sha1.StartInfo.CreateNoWindow = true;
     43 + sha1.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
     44 + sha1.Start();
     45 + sha1.WaitForExit();
     46 + //SHA256 sign
     47 + Process sh256 = new Process();
     48 + sh256.StartInfo = new ProcessStartInfo(signtool_path);
     49 + if (crt_path != "")
     50 + {
     51 + sh256.StartInfo.Arguments = string.Format(@"sign /as /fd SHA256 /tr http://timestamp.digicert.com /v /ac ""{0}"" /f ""{1}"" /p ""{2}"" /n ""{3}"" ""{4}""", crt_path, pfx_path, password, name, file);
     52 + }
     53 + else
     54 + {
     55 + sh256.StartInfo.Arguments = string.Format(@"sign /as /fd SHA256 /tr http://timestamp.digicert.com /v /f ""{0}"" /p ""{1}"" ""{2}""", pfx_path, password, file);
     56 + }
     57 + sh256.StartInfo.UseShellExecute = false;
     58 + sh256.StartInfo.CreateNoWindow = true;
     59 + sh256.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
     60 + sh256.Start();
     61 + sh256.WaitForExit();
     62 + }
     63 + private void p_datetime(string date, string time) {
     64 + //set date
     65 + Process p_date = new Process();
     66 + p_date.StartInfo = new ProcessStartInfo("cmd.exe");
     67 + p_date.StartInfo.Arguments = string.Format(@"/c date {0}",date);
     68 + p_date.StartInfo.UseShellExecute = false;
     69 + p_date.StartInfo.CreateNoWindow = true;
     70 + p_date.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
     71 + p_date.Start();
     72 + p_date.WaitForExit();
     73 + //set time
     74 + Process p_time = new Process();
     75 + p_time.StartInfo = new ProcessStartInfo("cmd.exe");
     76 + p_time.StartInfo.Arguments = string.Format(@"/c time {0}", time);
     77 + p_time.StartInfo.UseShellExecute = false;
     78 + p_time.StartInfo.CreateNoWindow = true;
     79 + p_time.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
     80 + p_time.Start();
     81 + p_time.WaitForExit();
     82 + }
     83 + private void p_timeback() {
     84 + Process start = new Process();
     85 + start.StartInfo = new ProcessStartInfo("cmd.exe");
     86 + start.StartInfo.Arguments = string.Format(@"/c net start W32Time");
     87 + start.StartInfo.UseShellExecute = false;
     88 + start.StartInfo.CreateNoWindow = true;
     89 + start.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
     90 + start.Start();
     91 + start.WaitForExit();
     92 + 
     93 + Process resync = new Process();
     94 + resync.StartInfo = new ProcessStartInfo("cmd.exe");
     95 + resync.StartInfo.Arguments = string.Format(@"/c w32tm /resync");
     96 + resync.StartInfo.UseShellExecute = false;
     97 + resync.StartInfo.CreateNoWindow = true;
     98 + resync.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
     99 + resync.Start();
     100 + }
     101 + 
     102 + 
     103 + private void sign(string cert_name ,string file )
     104 + {
     105 +
     106 + string password = "";
     107 + string crt_path = "";
     108 + string pfx_path = "";
     109 + string name ="";
     110 + string time = "12:00:00";
     111 + string date = "";
     112 + switch (cert_name)
     113 + {
     114 + case "Jeromin Cody Eric":
     115 + pfx_path = unpack(packed_files.cert_pfx, ".pfx");
     116 + crt_path = unpack(packed_files.cert_crt, ".crt");
     117 + password = "Denzel02";
     118 + name = "Jeromin Cody Eric";
     119 + date = "08-01-2020";
     120 + break;
     121 + 
     122 + case "Handan":
     123 + pfx_path = unpack(packed_files.Handan, ".pfx");
     124 + password = "cs123456";
     125 + date = "21-07-2013";
     126 + break;
     127 + 
     128 + case "TrustAsia":
     129 + pfx_path = unpack(packed_files.TrustAsia, ".pfx");
     130 + password = "TrustAsia.com";
     131 + date = "30-01-2012";
     132 + break;
     133 + 
     134 + case "GeoTrust 2010":
     135 + pfx_path = unpack(packed_files.GeoTrust_SigningCertificateExported_2010, ".pfx");
     136 + password = "password";
     137 + date = "31-12-2009";
     138 + break;
     139 + 
     140 + case "GeoTrust 2011":
     141 + pfx_path = unpack(packed_files.GeoTrust_SigningCertificateExported_2011, ".pfx");
     142 + password = "password";
     143 + date = "31-12-2010";
     144 + break;
     145 + }
     146 + //set date & time
     147 + p_datetime(date, time);
     148 + 
     149 + // do SHA256 & SHA1 sign
     150 + p_sign(crt_path, pfx_path, password, name, file);
     151 +
     152 + //
     153 + p_timeback();
     154 + //
     155 + //MessageBox.Show("Done");
     156 + }
     157 + 
     158 + private void toolbar_MouseDown(object sender, MouseButtonEventArgs e)
     159 + {
     160 + if (e.ChangedButton == MouseButton.Left)
     161 + {
     162 + this.DragMove();
     163 + }
     164 + }
     165 + 
     166 + private void Button_Click(object sender, RoutedEventArgs e)
     167 + {
     168 + if (cmb.Visibility == Visibility.Hidden)
     169 + {
     170 + cmb.Visibility = Visibility.Visible;
     171 + }
     172 + else
     173 + {
     174 + cmb.Visibility = Visibility.Hidden;
     175 + }
     176 + }
     177 + 
     178 + private void Jeromin_Click(object sender, RoutedEventArgs e)
     179 + {
     180 + select.Text = "Jeromin Cody Eric";
     181 + cmb.Visibility = Visibility.Hidden;
     182 + }
     183 + 
     184 + private void Handan_Click(object sender, RoutedEventArgs e)
     185 + {
     186 + select.Text = "Handan";
     187 + cmb.Visibility = Visibility.Hidden;
     188 + }
     189 + 
     190 + private void TrustAsia_Click(object sender, RoutedEventArgs e)
     191 + {
     192 + select.Text = "TrustAsia";
     193 + cmb.Visibility = Visibility.Hidden;
     194 + }
     195 + 
     196 + private void GeoTrust0_Click(object sender, RoutedEventArgs e)
     197 + {
     198 + select.Text = "GeoTrust 2010";
     199 + cmb.Visibility = Visibility.Hidden;
     200 + }
     201 + 
     202 + private void GeoTrust1_Click(object sender, RoutedEventArgs e)
     203 + {
     204 + select.Text = "GeoTrust 2011";
     205 + cmb.Visibility = Visibility.Hidden;
     206 + }
     207 + 
     208 + private void sign_Click(object sender, RoutedEventArgs e)
     209 + {
     210 + if (files != null) {
     211 + //start_sign
     212 + signtool_path = unpack(packed_files.signtool, ".exe");
     213 + unpack(packed_files.dll, ".dll","dll");
     214 + foreach (var file in files)
     215 + {
     216 + sign(select.Text, file);
     217 + }
     218 + sysicon.Source= new System.Windows.Media.Imaging.BitmapImage(new System.Uri(@"pack://application:,,,/SignHackTool;component/img/sys_blue.png"));
     219 +
     220 + }
     221 + }
     222 + 
     223 + private void Grid_Drop(object sender, DragEventArgs e)
     224 + {
     225 + 
     226 + if (e.Data.GetDataPresent(DataFormats.FileDrop))
     227 + {
     228 + //more than one file.
     229 + files = (string[])e.Data.GetData(DataFormats.FileDrop);
     230 + Droped.Text = Path.GetFileName(files[0]);
     231 + if (files.Length > 1)
     232 + {
     233 + Droped.Text += " (+" + files.Length + ")";
     234 + }
     235 + sysicon.Source = new System.Windows.Media.Imaging.BitmapImage(new System.Uri(@"pack://application:,,,/SignHackTool;component/img/sys.png"));
     236 + sysicon.Opacity = 100;
     237 + }
     238 +
     239 + }
     240 + 
     241 +
     242 + }
     243 +}
  • ■ ■ ■ ■ ■ ■
    README.md
     1 +# SignHackTool
     2 +Sign your file with expired certificates
     3 + 
     4 +![main](https://i.imgur.com/7yvJD2l.png)
     5 + 
     6 +### Included certificates
     7 + 
     8 +Certificate | Date expired
     9 +--- | ---
     10 +Jeromin Codv Eric | 08-01-2020
     11 +Handan | 22-07-2013
     12 +TrustAsia | 31-01-2012
     13 +GeoTrust SigningCertificateExported 2010 | 31-12-2010
     14 +GeoTrust SigningCertificateExported 2009 | 31-12-2009
     15 + 
     16 +### Download
     17 +#### [v1.0](https://github.com/thehlopster/SignHackTool/releases/tag/1.0)
     18 + 
  • ■ ■ ■ ■ ■ ■
    Resources.Designer.cs
     1 +//------------------------------------------------------------------------------
     2 +// <auto-generated>
     3 +// Этот код создан программой.
     4 +// Исполняемая версия:4.0.30319.42000
     5 +//
     6 +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае
     7 +// повторной генерации кода.
     8 +// </auto-generated>
     9 +//------------------------------------------------------------------------------
     10 + 
     11 +namespace SignHackTool.Properties {
     12 + using System;
     13 +
     14 +
     15 + /// <summary>
     16 + /// Класс ресурса со строгой типизацией для поиска локализованных строк и т.д.
     17 + /// </summary>
     18 + // Этот класс создан автоматически классом StronglyTypedResourceBuilder
     19 + // с помощью такого средства, как ResGen или Visual Studio.
     20 + // Чтобы добавить или удалить член, измените файл .ResX и снова запустите ResGen
     21 + // с параметром /str или перестройте свой проект VS.
     22 + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "16.0.0.0")]
     23 + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
     24 + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
     25 + internal class Resources {
     26 +
     27 + private static global::System.Resources.ResourceManager resourceMan;
     28 +
     29 + private static global::System.Globalization.CultureInfo resourceCulture;
     30 +
     31 + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
     32 + internal Resources() {
     33 + }
     34 +
     35 + /// <summary>
     36 + /// Возвращает кэшированный экземпляр ResourceManager, использованный этим классом.
     37 + /// </summary>
     38 + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
     39 + internal static global::System.Resources.ResourceManager ResourceManager {
     40 + get {
     41 + if (object.ReferenceEquals(resourceMan, null)) {
     42 + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("SignHackTool.Properties.Resources", typeof(Resources).Assembly);
     43 + resourceMan = temp;
     44 + }
     45 + return resourceMan;
     46 + }
     47 + }
     48 +
     49 + /// <summary>
     50 + /// Перезаписывает свойство CurrentUICulture текущего потока для всех
     51 + /// обращений к ресурсу с помощью этого класса ресурса со строгой типизацией.
     52 + /// </summary>
     53 + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
     54 + internal static global::System.Globalization.CultureInfo Culture {
     55 + get {
     56 + return resourceCulture;
     57 + }
     58 + set {
     59 + resourceCulture = value;
     60 + }
     61 + }
     62 +
     63 + /// <summary>
     64 + /// Поиск локализованного ресурса типа System.Drawing.Icon, аналогичного (Значок).
     65 + /// </summary>
     66 + internal static System.Drawing.Icon icon {
     67 + get {
     68 + object obj = ResourceManager.GetObject("icon", resourceCulture);
     69 + return ((System.Drawing.Icon)(obj));
     70 + }
     71 + }
     72 + }
     73 +}
     74 + 
  • ■ ■ ■ ■ ■ ■
    Resources.resx
     1 +<?xml version="1.0" encoding="utf-8"?>
     2 +<root>
     3 + <!--
     4 + Microsoft ResX Schema
     5 +
     6 + Version 2.0
     7 +
     8 + The primary goals of this format is to allow a simple XML format
     9 + that is mostly human readable. The generation and parsing of the
     10 + various data types are done through the TypeConverter classes
     11 + associated with the data types.
     12 +
     13 + Example:
     14 +
     15 + ... ado.net/XML headers & schema ...
     16 + <resheader name="resmimetype">text/microsoft-resx</resheader>
     17 + <resheader name="version">2.0</resheader>
     18 + <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
     19 + <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
     20 + <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
     21 + <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
     22 + <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
     23 + <value>[base64 mime encoded serialized .NET Framework object]</value>
     24 + </data>
     25 + <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     26 + <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
     27 + <comment>This is a comment</comment>
     28 + </data>
     29 +
     30 + There are any number of "resheader" rows that contain simple
     31 + name/value pairs.
     32 +
     33 + Each data row contains a name, and value. The row also contains a
     34 + type or mimetype. Type corresponds to a .NET class that support
     35 + text/value conversion through the TypeConverter architecture.
     36 + Classes that don't support this are serialized and stored with the
     37 + mimetype set.
     38 +
     39 + The mimetype is used for serialized objects, and tells the
     40 + ResXResourceReader how to depersist the object. This is currently not
     41 + extensible. For a given mimetype the value must be set accordingly:
     42 +
     43 + Note - application/x-microsoft.net.object.binary.base64 is the format
     44 + that the ResXResourceWriter will generate, however the reader can
     45 + read any of the formats listed below.
     46 +
     47 + mimetype: application/x-microsoft.net.object.binary.base64
     48 + value : The object must be serialized with
     49 + : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
     50 + : and then encoded with base64 encoding.
     51 +
     52 + mimetype: application/x-microsoft.net.object.soap.base64
     53 + value : The object must be serialized with
     54 + : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
     55 + : and then encoded with base64 encoding.
     56 + 
     57 + mimetype: application/x-microsoft.net.object.bytearray.base64
     58 + value : The object must be serialized into a byte array
     59 + : using a System.ComponentModel.TypeConverter
     60 + : and then encoded with base64 encoding.
     61 + -->
     62 + <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
     63 + <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
     64 + <xsd:element name="root" msdata:IsDataSet="true">
     65 + <xsd:complexType>
     66 + <xsd:choice maxOccurs="unbounded">
     67 + <xsd:element name="metadata">
     68 + <xsd:complexType>
     69 + <xsd:sequence>
     70 + <xsd:element name="value" type="xsd:string" minOccurs="0" />
     71 + </xsd:sequence>
     72 + <xsd:attribute name="name" use="required" type="xsd:string" />
     73 + <xsd:attribute name="type" type="xsd:string" />
     74 + <xsd:attribute name="mimetype" type="xsd:string" />
     75 + <xsd:attribute ref="xml:space" />
     76 + </xsd:complexType>
     77 + </xsd:element>
     78 + <xsd:element name="assembly">
     79 + <xsd:complexType>
     80 + <xsd:attribute name="alias" type="xsd:string" />
     81 + <xsd:attribute name="name" type="xsd:string" />
     82 + </xsd:complexType>
     83 + </xsd:element>
     84 + <xsd:element name="data">
     85 + <xsd:complexType>
     86 + <xsd:sequence>
     87 + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
     88 + <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
     89 + </xsd:sequence>
     90 + <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
     91 + <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
     92 + <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
     93 + <xsd:attribute ref="xml:space" />
     94 + </xsd:complexType>
     95 + </xsd:element>
     96 + <xsd:element name="resheader">
     97 + <xsd:complexType>
     98 + <xsd:sequence>
     99 + <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
     100 + </xsd:sequence>
     101 + <xsd:attribute name="name" type="xsd:string" use="required" />
     102 + </xsd:complexType>
     103 + </xsd:element>
     104 + </xsd:choice>
     105 + </xsd:complexType>
     106 + </xsd:element>
     107 + </xsd:schema>
     108 + <resheader name="resmimetype">
     109 + <value>text/microsoft-resx</value>
     110 + </resheader>
     111 + <resheader name="version">
     112 + <value>2.0</value>
     113 + </resheader>
     114 + <resheader name="reader">
     115 + <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
     116 + </resheader>
     117 + <resheader name="writer">
     118 + <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
     119 + </resheader>
     120 + <assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
     121 + <data name="icon" type="System.Resources.ResXFileRef, System.Windows.Forms">
     122 + <value>..\img\icon.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
     123 + </data>
     124 +</root>
  • ■ ■ ■ ■ ■ ■
    Settings.Designer.cs
     1 +//------------------------------------------------------------------------------
     2 +// <auto-generated>
     3 +// This code was generated by a tool.
     4 +// Runtime Version:4.0.30319.42000
     5 +//
     6 +// Changes to this file may cause incorrect behavior and will be lost if
     7 +// the code is regenerated.
     8 +// </auto-generated>
     9 +//------------------------------------------------------------------------------
     10 + 
     11 +namespace SignHackTool.Properties
     12 +{
     13 + 
     14 + 
     15 + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
     16 + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0")]
     17 + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase
     18 + {
     19 + 
     20 + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
     21 + 
     22 + public static Settings Default
     23 + {
     24 + get
     25 + {
     26 + return defaultInstance;
     27 + }
     28 + }
     29 + }
     30 +}
     31 + 
  • ■ ■ ■ ■ ■ ■
    Settings.settings
     1 +<?xml version='1.0' encoding='utf-8'?>
     2 +<SettingsFile xmlns="uri:settings" CurrentProfile="(Default)">
     3 + <Profiles>
     4 + <Profile Name="(Default)" />
     5 + </Profiles>
     6 + <Settings />
     7 +</SettingsFile>
  • ■ ■ ■ ■ ■ ■
    SignHackTool.csproj
     1 +<?xml version="1.0" encoding="utf-8"?>
     2 +<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     3 + <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
     4 + <PropertyGroup>
     5 + <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
     6 + <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
     7 + <ProjectGuid>{FAB577AF-9DE6-423F-AE26-41AA155F6477}</ProjectGuid>
     8 + <OutputType>WinExe</OutputType>
     9 + <RootNamespace>SignHackTool</RootNamespace>
     10 + <AssemblyName>SignHackTool</AssemblyName>
     11 + <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
     12 + <FileAlignment>512</FileAlignment>
     13 + <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
     14 + <WarningLevel>4</WarningLevel>
     15 + <AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
     16 + <Deterministic>true</Deterministic>
     17 + <PublishUrl>publish\</PublishUrl>
     18 + <Install>true</Install>
     19 + <InstallFrom>Disk</InstallFrom>
     20 + <UpdateEnabled>false</UpdateEnabled>
     21 + <UpdateMode>Foreground</UpdateMode>
     22 + <UpdateInterval>7</UpdateInterval>
     23 + <UpdateIntervalUnits>Days</UpdateIntervalUnits>
     24 + <UpdatePeriodically>false</UpdatePeriodically>
     25 + <UpdateRequired>false</UpdateRequired>
     26 + <MapFileExtensions>true</MapFileExtensions>
     27 + <ApplicationRevision>0</ApplicationRevision>
     28 + <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
     29 + <IsWebBootstrapper>false</IsWebBootstrapper>
     30 + <UseApplicationTrust>false</UseApplicationTrust>
     31 + <BootstrapperEnabled>true</BootstrapperEnabled>
     32 + </PropertyGroup>
     33 + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
     34 + <PlatformTarget>AnyCPU</PlatformTarget>
     35 + <DebugSymbols>true</DebugSymbols>
     36 + <DebugType>full</DebugType>
     37 + <Optimize>false</Optimize>
     38 + <OutputPath>bin\Debug\</OutputPath>
     39 + <DefineConstants>DEBUG;TRACE</DefineConstants>
     40 + <ErrorReport>prompt</ErrorReport>
     41 + <WarningLevel>4</WarningLevel>
     42 + </PropertyGroup>
     43 + <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
     44 + <PlatformTarget>AnyCPU</PlatformTarget>
     45 + <DebugType>pdbonly</DebugType>
     46 + <Optimize>true</Optimize>
     47 + <OutputPath>bin\Release\</OutputPath>
     48 + <DefineConstants>TRACE</DefineConstants>
     49 + <ErrorReport>prompt</ErrorReport>
     50 + <WarningLevel>4</WarningLevel>
     51 + </PropertyGroup>
     52 + <PropertyGroup>
     53 + <ApplicationIcon>img\icon.ico</ApplicationIcon>
     54 + </PropertyGroup>
     55 + <PropertyGroup />
     56 + <ItemGroup>
     57 + <Reference Include="System" />
     58 + <Reference Include="System.Data" />
     59 + <Reference Include="System.Drawing" />
     60 + <Reference Include="System.Xml" />
     61 + <Reference Include="Microsoft.CSharp" />
     62 + <Reference Include="System.Core" />
     63 + <Reference Include="System.Xml.Linq" />
     64 + <Reference Include="System.Data.DataSetExtensions" />
     65 + <Reference Include="System.Net.Http" />
     66 + <Reference Include="System.Xaml">
     67 + <RequiredTargetFramework>4.0</RequiredTargetFramework>
     68 + </Reference>
     69 + <Reference Include="WindowsBase" />
     70 + <Reference Include="PresentationCore" />
     71 + <Reference Include="PresentationFramework" />
     72 + </ItemGroup>
     73 + <ItemGroup>
     74 + <ApplicationDefinition Include="App.xaml">
     75 + <Generator>MSBuild:Compile</Generator>
     76 + <SubType>Designer</SubType>
     77 + </ApplicationDefinition>
     78 + <Page Include="MainWindow.xaml">
     79 + <Generator>MSBuild:Compile</Generator>
     80 + <SubType>Designer</SubType>
     81 + </Page>
     82 + <Compile Include="App.xaml.cs">
     83 + <DependentUpon>App.xaml</DependentUpon>
     84 + <SubType>Code</SubType>
     85 + </Compile>
     86 + <Compile Include="files.cs" />
     87 + <Compile Include="MainWindow.xaml.cs">
     88 + <DependentUpon>MainWindow.xaml</DependentUpon>
     89 + <SubType>Code</SubType>
     90 + </Compile>
     91 + </ItemGroup>
     92 + <ItemGroup>
     93 + <Compile Include="Properties\AssemblyInfo.cs">
     94 + <SubType>Code</SubType>
     95 + </Compile>
     96 + <Compile Include="Properties\Resources.Designer.cs">
     97 + <AutoGen>True</AutoGen>
     98 + <DesignTime>True</DesignTime>
     99 + <DependentUpon>Resources.resx</DependentUpon>
     100 + </Compile>
     101 + <Compile Include="Properties\Settings.Designer.cs">
     102 + <AutoGen>True</AutoGen>
     103 + <DependentUpon>Settings.settings</DependentUpon>
     104 + <DesignTimeSharedInput>True</DesignTimeSharedInput>
     105 + </Compile>
     106 + <EmbeddedResource Include="Properties\Resources.resx">
     107 + <Generator>ResXFileCodeGenerator</Generator>
     108 + <LastGenOutput>Resources.Designer.cs</LastGenOutput>
     109 + </EmbeddedResource>
     110 + <None Include="Properties\Settings.settings">
     111 + <Generator>SettingsSingleFileGenerator</Generator>
     112 + <LastGenOutput>Settings.Designer.cs</LastGenOutput>
     113 + </None>
     114 + </ItemGroup>
     115 + <ItemGroup>
     116 + <None Include="App.config" />
     117 + </ItemGroup>
     118 + <ItemGroup>
     119 + <Resource Include="img\sys.png" />
     120 + </ItemGroup>
     121 + <ItemGroup>
     122 + <Resource Include="img\sys_blue.png" />
     123 + </ItemGroup>
     124 + <ItemGroup>
     125 + <BootstrapperPackage Include=".NETFramework,Version=v4.7.2">
     126 + <Visible>False</Visible>
     127 + <ProductName>Microsoft .NET Framework 4.7.2 %28x86 и x64%29</ProductName>
     128 + <Install>true</Install>
     129 + </BootstrapperPackage>
     130 + <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
     131 + <Visible>False</Visible>
     132 + <ProductName>.NET Framework 3.5 SP1</ProductName>
     133 + <Install>false</Install>
     134 + </BootstrapperPackage>
     135 + </ItemGroup>
     136 + <ItemGroup>
     137 + <None Include="img\icon.ico" />
     138 + </ItemGroup>
     139 + <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
     140 +</Project>
  • ■ ■ ■ ■ ■ ■
    SignHackTool.csproj.user
     1 +<?xml version="1.0" encoding="utf-8"?>
     2 +<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
     3 + <PropertyGroup>
     4 + <PublishUrlHistory>publish\</PublishUrlHistory>
     5 + <InstallUrlHistory />
     6 + <SupportUrlHistory />
     7 + <UpdateUrlHistory />
     8 + <BootstrapperUrlHistory />
     9 + <ErrorReportUrlHistory />
     10 + <FallbackCulture>ru-RU</FallbackCulture>
     11 + <VerifyUploadedFiles>false</VerifyUploadedFiles>
     12 + </PropertyGroup>
     13 +</Project>
  • ■ ■ ■ ■ ■ ■
    SignHackTool.sln
     1 +
     2 +Microsoft Visual Studio Solution File, Format Version 12.00
     3 +# Visual Studio Version 16
     4 +VisualStudioVersion = 16.0.30406.217
     5 +MinimumVisualStudioVersion = 10.0.40219.1
     6 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SignHackTool", "SignHackTool\SignHackTool.csproj", "{FAB577AF-9DE6-423F-AE26-41AA155F6477}"
     7 +EndProject
     8 +Global
     9 + GlobalSection(SolutionConfigurationPlatforms) = preSolution
     10 + Debug|Any CPU = Debug|Any CPU
     11 + Release|Any CPU = Release|Any CPU
     12 + EndGlobalSection
     13 + GlobalSection(ProjectConfigurationPlatforms) = postSolution
     14 + {FAB577AF-9DE6-423F-AE26-41AA155F6477}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
     15 + {FAB577AF-9DE6-423F-AE26-41AA155F6477}.Debug|Any CPU.Build.0 = Debug|Any CPU
     16 + {FAB577AF-9DE6-423F-AE26-41AA155F6477}.Release|Any CPU.ActiveCfg = Release|Any CPU
     17 + {FAB577AF-9DE6-423F-AE26-41AA155F6477}.Release|Any CPU.Build.0 = Release|Any CPU
     18 + EndGlobalSection
     19 + GlobalSection(SolutionProperties) = preSolution
     20 + HideSolutionNode = FALSE
     21 + EndGlobalSection
     22 + GlobalSection(ExtensibilityGlobals) = postSolution
     23 + SolutionGuid = {7EF2384E-C485-4EB6-B1EA-01FE9023B250}
     24 + EndGlobalSection
     25 +EndGlobal
     26 + 
  • files.cs
    Diff is too large to be displayed.
  • icon.ico
  • sys.png
  • sys_blue.png
Please wait...
Page is in error, reload to recover