diff --git a/GGXrdWakeupDPUtil.sln b/GGXrdWakeupDPUtil.sln new file mode 100644 index 0000000..e38b604 --- /dev/null +++ b/GGXrdWakeupDPUtil.sln @@ -0,0 +1,34 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26430.12 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GGXrdWakeupDPUtil", "GGXrdWakeupDPUtil\GGXrdWakeupDPUtil.csproj", "{22A91F28-F083-4E8D-95B4-D084781033C4}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {22A91F28-F083-4E8D-95B4-D084781033C4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {22A91F28-F083-4E8D-95B4-D084781033C4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {22A91F28-F083-4E8D-95B4-D084781033C4}.Debug|x64.ActiveCfg = Debug|x64 + {22A91F28-F083-4E8D-95B4-D084781033C4}.Debug|x64.Build.0 = Debug|x64 + {22A91F28-F083-4E8D-95B4-D084781033C4}.Debug|x86.ActiveCfg = Debug|x86 + {22A91F28-F083-4E8D-95B4-D084781033C4}.Debug|x86.Build.0 = Debug|x86 + {22A91F28-F083-4E8D-95B4-D084781033C4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {22A91F28-F083-4E8D-95B4-D084781033C4}.Release|Any CPU.Build.0 = Release|Any CPU + {22A91F28-F083-4E8D-95B4-D084781033C4}.Release|x64.ActiveCfg = Release|x64 + {22A91F28-F083-4E8D-95B4-D084781033C4}.Release|x64.Build.0 = Release|x64 + {22A91F28-F083-4E8D-95B4-D084781033C4}.Release|x86.ActiveCfg = Release|x86 + {22A91F28-F083-4E8D-95B4-D084781033C4}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/GGXrdWakeupDPUtil/App.config b/GGXrdWakeupDPUtil/App.config new file mode 100644 index 0000000..88fa402 --- /dev/null +++ b/GGXrdWakeupDPUtil/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/GGXrdWakeupDPUtil/App.xaml b/GGXrdWakeupDPUtil/App.xaml new file mode 100644 index 0000000..732b32b --- /dev/null +++ b/GGXrdWakeupDPUtil/App.xaml @@ -0,0 +1,9 @@ + + + + + diff --git a/GGXrdWakeupDPUtil/App.xaml.cs b/GGXrdWakeupDPUtil/App.xaml.cs new file mode 100644 index 0000000..7770abf --- /dev/null +++ b/GGXrdWakeupDPUtil/App.xaml.cs @@ -0,0 +1,18 @@ +using System; +using System.Collections.Generic; +using System.Configuration; +using System.Data; +using System.Linq; +using System.Threading.Tasks; +using System.Windows; + +namespace GGXrdWakeupDPUtil +{ + /// + /// Interaction logic for App.xaml + /// + public partial class App : Application + { + + } +} diff --git a/GGXrdWakeupDPUtil/Fasm.NET.xml b/GGXrdWakeupDPUtil/Fasm.NET.xml new file mode 100644 index 0000000..3a28ccf --- /dev/null +++ b/GGXrdWakeupDPUtil/Fasm.NET.xml @@ -0,0 +1,337 @@ + + + + "Fasm.NET" + + + + +Gets the mnemonics. + + + + +Inserts the text representation of the specified array of objects, followed by the current line terminator at the specified character position. + + The position in this instance where insertion begins. + The composite format string. + The array of objects to write using format. + +Inserts the text representation of the specified array of objects, followed by the current line terminator at the specified character position. + + The position in this instance where insertion begins. + The composite format string. + The array of objects to write using format. + + + +Removes all characters from the current instance. + + +Removes all characters from the current instance. + + + + +Assembles the mnemonics with a given origin address. + + The address used as starting address for the assebmly code. + +Assembles the mnemonics with a given origin address. + + The address used as starting address for the assebmly code. + + + +Assembles the mnemonics. + + +Assembles the mnemonics. + + + + +Adds the text representation of the specified array of objects, followed by the current line terminator. + + The composite format string. + The array of objects to write using format. + +Adds the text representation of the specified array of objects, followed by the current line terminator. + + The composite format string. + The array of objects to write using format. + + + +Initializes a new instance of the class. + + The memory size allocated for the buffer. + The maximum number of pass to perform. + +Initializes a new instance of the class. + + The memory size allocated for the buffer. + The maximum number of pass to perform. + + + +Initializes a new instance of the class. + + The default memory size used is 4096 bytes and the maximum number of pass is 100. + +Initializes a new instance of the class. + + The default memory size used is 4096 bytes and the maximum number of pass is 100. + + + +Assembles the specified files by appending them. + + The path of the files to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + +Assembles the specified files by appending them. + + The path of the files to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + + + +Assembles the specified files by appending them. + + The path of the files to assemble. + The default memory size used is 4096 bytes and the maximum number of pass is 100. + +Assembles the specified files by appending them. + + The path of the files to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + The default memory size used is 4096 bytes and the maximum number of pass is 100. + + + +Assembles the specified file. + + The path of the file to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + +Assembles the specified file. + + The path of the file to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + + + +Assembles the specified file. + + The path of the file to assemble. + The default memory size used is 4096 bytes and the maximum number of pass is 100. + +Assembles the specified file. + + The path of the file to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + The default memory size used is 4096 bytes and the maximum number of pass is 100. + + + +Assembles the given mnemonics. + + The array containing mnemonics to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + +Assembles the given mnemonics. + + The array containing mnemonics to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + + + +Assembles the given mnemonics. + + The array containing mnemonics to assemble. + The default memory size used is 4096 bytes and the maximum number of pass is 100. + +Assembles the given mnemonics. + + The array containing mnemonics to assemble. + The default memory size used is 4096 bytes and the maximum number of pass is 100. + + + +Assembles the given mnemonics. + + The mnemonics to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + +Assembles the given mnemonics. + + The mnemonics to assemble. + The memory size allocated for the buffer. + The maximum number of pass to perform. + + + +Assembles the given mnemonics. + + The mnemonics to assemble. + The default memory size used is 4096 bytes and the maximum number of pass is 100. + +Assembles the given mnemonics. + + The mnemonics to assemble. + The default memory size used is 4096 bytes and the maximum number of pass is 100. + + + +Gets the version of FASM compiler. + + +Gets the version of FASM compiler. + + + + +The maximum number of pass to perform. + + + + +The memory size allocated for the buffer. + + + + +The mnemonics inserted by the user. + + + + +The managed wrapper to interfact with FASM compiler. + + + + +The following structure resides at the beginning of memory block provided +to the fasm_Assemble function. The condition field contains the same value +as the one returned by function. + +When function returns FASM_OK condition, the output_length and +output_data fields are filled - with pointer to generated output +(somewhere within the provided memory block) and the count of bytes stored +there. + +When function returns FASM_ERROR, the error_code is filled with the +code of specific error that happened and error_line is a pointer to the +LINE_HEADER structure, providing information about the line that caused +the error. + + + + +The following structure has two variants - it either defines the line +that was loaded directly from source, or the line that was generated by +macroinstruction. First case has the highest bit of line_number set to 0, +while the second case has this bit set. + +In the first case, the file_path field contains pointer to the path of +source file (empty string if it's the source that was provided directly to +fasm_Assemble function), the line_number is the number of line within +that file (starting from 1) and the file_offset field contains the offset +within the file where the line starts. + +In the second case the macro_calling_line field contains the pointer to +LINE_HEADER structure for the line which called the macroinstruction, and +the macro_line field contains the pointer to LINE_HEADER structure for the +line within the definition of macroinstruction, which generated this one. + + + + +The native function to get the version of FASM compiler embedded in Fasm.obj. + + The return valus is a double word containg major version in lower 16 bits, and minor version in the higher 16 bits. + + + +Initializes a new instance of the class. + + The error code. + The line where is the error. + The offset within the file where the line starts. + The assembled mnemonics when the error occurred. + +Initializes a new instance of the class. + + The error code. + The line where is the error. + The offset within the file where the line starts. + The assembled mnemonics when the error occurred. + + + +The assembled mnemonics when the error occurred. + + + + +The offset within the file where the line starts. + + + + +The line where is the error. + + + + +The error code. + + + + +The private field containing the assembled mnemonics when the error occurred. + + + + +The private field containing the offset within the file where the line starts. + + + + +The private field containing the line where is the error. + + + + +The private field containing the error code. + + + + +The exception that is thrown when a FASM compiler error occurs. + + + + +The enumeration containing all errors of FASM compiler. + + + + +The enumeration containing all results of FASM compiler. + + + + + \ No newline at end of file diff --git a/GGXrdWakeupDPUtil/GGXrdWakeupDPUtil.csproj b/GGXrdWakeupDPUtil/GGXrdWakeupDPUtil.csproj new file mode 100644 index 0000000..a075ae3 --- /dev/null +++ b/GGXrdWakeupDPUtil/GGXrdWakeupDPUtil.csproj @@ -0,0 +1,178 @@ + + + + + Debug + AnyCPU + {22A91F28-F083-4E8D-95B4-D084781033C4} + WinExe + GGXrdWakeupDPUtil + GGXrdWakeupDPUtil + v4.5.2 + 512 + {60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + 4 + true + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 0 + 1.0.0.%2a + false + false + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + true + bin\x86\Debug\ + DEBUG;TRACE + full + x86 + prompt + MinimumRecommendedRules.ruleset + true + + + bin\x86\Release\ + TRACE + true + pdbonly + x86 + prompt + MinimumRecommendedRules.ruleset + true + + + true + bin\x64\Debug\ + DEBUG;TRACE + full + x64 + prompt + MinimumRecommendedRules.ruleset + true + + + bin\x64\Release\ + TRACE + true + pdbonly + x64 + prompt + MinimumRecommendedRules.ruleset + true + + + + ..\packages\Fasm.NET.1.70.03\lib\Fasm.NET.dll + + + False + ..\..\..\..\..\Downloads\Frida.dll + + + ..\packages\MemorySharp.1.2.0\lib\MemorySharp.dll + + + + + + + + + + + 4.0 + + + + + + + + MSBuild:Compile + Designer + + + MSBuild:Compile + Designer + + + App.xaml + Code + + + MainWindow.xaml + Code + + + + + Code + + + True + True + Resources.resx + + + True + Settings.settings + True + + + ResXFileCodeGenerator + Resources.Designer.cs + + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + + + + + + + + + False + Microsoft .NET Framework 4.5.2 %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 + false + + + + \ No newline at end of file diff --git a/GGXrdWakeupDPUtil/MainWindow.xaml b/GGXrdWakeupDPUtil/MainWindow.xaml new file mode 100644 index 0000000..ac17dc8 --- /dev/null +++ b/GGXrdWakeupDPUtil/MainWindow.xaml @@ -0,0 +1,21 @@ + + + +