From f32aab6e03256d50906b4f6480b4e50bb622e964 Mon Sep 17 00:00:00 2001 From: Mattiwatti Date: Wed, 29 Nov 2017 00:51:59 +0100 Subject: [PATCH 1/7] Add ZydisWinKernel as an example of a Windows kernel mode driver utilizing Zydis --- examples/ZydisWinKernel.c | 185 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 185 insertions(+) create mode 100644 examples/ZydisWinKernel.c diff --git a/examples/ZydisWinKernel.c b/examples/ZydisWinKernel.c new file mode 100644 index 0000000..6c0e2b2 --- /dev/null +++ b/examples/ZydisWinKernel.c @@ -0,0 +1,185 @@ +/*************************************************************************************************** + + Zyan Disassembler Engine (Zydis) + + Original Author : Matthijs Lavrijsen + + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in all + * copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + +***************************************************************************************************/ + +/** + * @file + * @brief Windows kernel mode driver sample. + * + * This is a Windows kernel mode driver. It links against the kernel mode-compatible version of Zydis. + * The driver finds its own entry point and decodes and prints the disassembly of this function. + * To view the log, either attach a kernel debugger or use a tool like Sysinternals DebugView. + */ + +#include +#include +#include +#include +#include "Zydis/Zydis.h" + +/* ============================================================================================== */ +/* Forward declarations */ +/* ============================================================================================== */ + +NTKERNELAPI +PVOID +NTAPI +RtlPcToFileHeader( + _In_ PVOID PcValue, + _Out_ PVOID *BaseOfImage + ); + +NTKERNELAPI +PIMAGE_NT_HEADERS +NTAPI +RtlImageNtHeader( + _In_ PVOID ImageBase + ); + +DRIVER_INITIALIZE +DriverEntry; + +#ifdef ALLOC_PRAGMA +#pragma alloc_text(INIT, DriverEntry) +#endif + +/* ============================================================================================== */ +/* Helper functions */ +/* ============================================================================================== */ + +VOID +Print( + _In_ PCCH Format, + _In_ ... + ) +{ + CHAR message[512]; + va_list argList; + va_start(argList, Format); + const int n = _vsnprintf_s(message, sizeof(message), sizeof(message) - 1, Format, argList); + message[n] = '\0'; + vDbgPrintExWithPrefix("[ZYDIS] ", DPFLTR_IHVDRIVER_ID, DPFLTR_ERROR_LEVEL, message, argList); + va_end(argList); +} + +/* ============================================================================================== */ +/* Entry point */ +/* ============================================================================================== */ + +_Use_decl_annotations_ +NTSTATUS +DriverEntry( + _In_ PDRIVER_OBJECT DriverObject, + _In_ PUNICODE_STRING RegistryPath + ) +{ + PAGED_CODE(); + + UNREFERENCED_PARAMETER(RegistryPath); + + if (ZydisGetVersion() != ZYDIS_VERSION) + { + Print("Invalid zydis version\n"); + return STATUS_UNKNOWN_REVISION; + } + + // Get the driver's image base and PE headers + ULONG_PTR imageBase; + RtlPcToFileHeader((PVOID)DriverObject->DriverInit, (PVOID*)&imageBase); + if (imageBase == 0) + return STATUS_DRIVER_ENTRYPOINT_NOT_FOUND; + PIMAGE_NT_HEADERS ntHeaders = RtlImageNtHeader((PVOID)imageBase); + if (imageBase == 0) + return STATUS_INVALID_IMAGE_FORMAT; + + // Get the section headers of the INIT section + PIMAGE_SECTION_HEADER section = IMAGE_FIRST_SECTION(ntHeaders); + PIMAGE_SECTION_HEADER initSection = NULL; + for (ULONG i = 0; i < ntHeaders->FileHeader.NumberOfSections; ++i) + { + if (memcmp(section->Name, "INIT", sizeof("INIT") - 1) == 0) + { + initSection = section; + break; + } + section++; + } + if (initSection == NULL) + return STATUS_NOT_FOUND; + + // Get the RVAs of the entry point and import directory. If the import directory lies within the INIT section, + // stop disassembling when its address is reached. Otherwise, disassemble until the end of the INIT section. + const ULONG entryPointRva = (ULONG)((ULONG_PTR)DriverObject->DriverInit - imageBase); + const ULONG importDirRva = ntHeaders->OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_IMPORT].VirtualAddress; + SIZE_T length = initSection->VirtualAddress + initSection->SizeOfRawData - entryPointRva; + if (importDirRva > entryPointRva && importDirRva > initSection->VirtualAddress && + importDirRva < initSection->VirtualAddress + initSection->SizeOfRawData) + length = importDirRva - entryPointRva; + + Print("Driver image base: 0x%p, size: 0x%X\n", imageBase, ntHeaders->OptionalHeader.SizeOfImage); + Print("Entry point RVA: 0x%X (0x%p)\n", entryPointRva, DriverObject->DriverInit); + + // Initialize Zydis decoder and formatter + ZydisDecoder decoder; +#ifdef _M_AMD64 + if (!ZYDIS_SUCCESS(ZydisDecoderInit(&decoder, ZYDIS_MACHINE_MODE_LONG_64, ZYDIS_ADDRESS_WIDTH_64))) +#else + if (!ZYDIS_SUCCESS(ZydisDecoderInit(&decoder, ZYDIS_MACHINE_MODE_LONG_COMPAT_32, ZYDIS_ADDRESS_WIDTH_32))) +#endif + return STATUS_DRIVER_INTERNAL_ERROR; + + ZydisFormatter formatter; + if (!ZYDIS_SUCCESS(ZydisFormatterInit(&formatter, ZYDIS_FORMATTER_STYLE_INTEL))) + return STATUS_DRIVER_INTERNAL_ERROR; + + SIZE_T readOffset = 0; + ZydisDecodedInstruction instruction; + ZydisStatus status; + CHAR printBuffer[128]; + + // Start the decode loop + while ((status = ZydisDecoderDecodeBuffer(&decoder, (PVOID)(imageBase + entryPointRva + readOffset), + length - readOffset, (ULONG_PTR)(imageBase + entryPointRva + readOffset), &instruction)) != ZYDIS_STATUS_NO_MORE_DATA) + { + NT_ASSERT(ZYDIS_SUCCESS(status)); + if (!ZYDIS_SUCCESS(status)) + { + readOffset++; + continue; + } + + // Format and print the instruction + ZydisFormatterFormatInstruction( + &formatter, &instruction, printBuffer, sizeof(printBuffer)); + Print("+%-4X 0x%-16llX\t\t%s\n", readOffset, instruction.instrAddress, printBuffer); + + readOffset += instruction.length; + } + + // Return an error status so that the driver does not have to be unloaded after running. + return STATUS_UNSUCCESSFUL; +} + +/* ============================================================================================== */ From d6764c89e9d76b40bc963ccbad334183641217fe Mon Sep 17 00:00:00 2001 From: Mattiwatti Date: Wed, 29 Nov 2017 00:54:10 +0100 Subject: [PATCH 2/7] Add /msvc directory under the root directory with MSVC 2017 project files for Zydis and the various tools and examples --- msvc/Zydis.sln | 212 +++++++ msvc/ZydisExportConfig.h | 42 ++ msvc/examples/FormatterHooks.vcxproj | 428 ++++++++++++++ msvc/examples/FormatterHooks.vcxproj.filters | 59 ++ msvc/examples/ZydisFuzzIn.vcxproj | 427 ++++++++++++++ msvc/examples/ZydisFuzzIn.vcxproj.filters | 56 ++ msvc/examples/ZydisPerfTest.vcxproj | 427 ++++++++++++++ msvc/examples/ZydisPerfTest.vcxproj.filters | 56 ++ msvc/examples/ZydisWinKernel.vcxproj | 226 ++++++++ msvc/examples/ZydisWinKernel.vcxproj.filters | 56 ++ msvc/tools/ZydisDisasm.vcxproj | 427 ++++++++++++++ msvc/tools/ZydisDisasm.vcxproj.filters | 56 ++ msvc/tools/ZydisInfo.vcxproj | 427 ++++++++++++++ msvc/tools/ZydisInfo.vcxproj.filters | 56 ++ msvc/zydis/Zydis.vcxproj | 564 +++++++++++++++++++ msvc/zydis/Zydis.vcxproj.filters | 107 ++++ 16 files changed, 3626 insertions(+) create mode 100644 msvc/Zydis.sln create mode 100644 msvc/ZydisExportConfig.h create mode 100644 msvc/examples/FormatterHooks.vcxproj create mode 100644 msvc/examples/FormatterHooks.vcxproj.filters create mode 100644 msvc/examples/ZydisFuzzIn.vcxproj create mode 100644 msvc/examples/ZydisFuzzIn.vcxproj.filters create mode 100644 msvc/examples/ZydisPerfTest.vcxproj create mode 100644 msvc/examples/ZydisPerfTest.vcxproj.filters create mode 100644 msvc/examples/ZydisWinKernel.vcxproj create mode 100644 msvc/examples/ZydisWinKernel.vcxproj.filters create mode 100644 msvc/tools/ZydisDisasm.vcxproj create mode 100644 msvc/tools/ZydisDisasm.vcxproj.filters create mode 100644 msvc/tools/ZydisInfo.vcxproj create mode 100644 msvc/tools/ZydisInfo.vcxproj.filters create mode 100644 msvc/zydis/Zydis.vcxproj create mode 100644 msvc/zydis/Zydis.vcxproj.filters diff --git a/msvc/Zydis.sln b/msvc/Zydis.sln new file mode 100644 index 0000000..4f0e674 --- /dev/null +++ b/msvc/Zydis.sln @@ -0,0 +1,212 @@ +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.27004.2009 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Examples", "Examples", "{4F5048C7-CB90-437E-AB21-32258F9650B6}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tools", "Tools", "{292A9E1E-C557-4570-ABE1-8EEC0E1B79C4}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FormatterHooks", "examples\FormatterHooks.vcxproj", "{8085CF70-11D1-3E7B-B648-C910396BB4A7}" + ProjectSection(ProjectDependencies) = postProject + {88A23124-5640-35A0-B890-311D7A67A7D2} = {88A23124-5640-35A0-B890-311D7A67A7D2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZydisFuzzIn", "examples\ZydisFuzzIn.vcxproj", "{A0C9A331-13CC-3762-9D26-9F82C6518CAA}" + ProjectSection(ProjectDependencies) = postProject + {88A23124-5640-35A0-B890-311D7A67A7D2} = {88A23124-5640-35A0-B890-311D7A67A7D2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZydisPerfTest", "examples\ZydisPerfTest.vcxproj", "{91EF3E98-CD57-3870-A399-A0D98D193F80}" + ProjectSection(ProjectDependencies) = postProject + {88A23124-5640-35A0-B890-311D7A67A7D2} = {88A23124-5640-35A0-B890-311D7A67A7D2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZydisDisasm", "tools\ZydisDisasm.vcxproj", "{805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}" + ProjectSection(ProjectDependencies) = postProject + {88A23124-5640-35A0-B890-311D7A67A7D2} = {88A23124-5640-35A0-B890-311D7A67A7D2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZydisInfo", "tools\ZydisInfo.vcxproj", "{BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}" + ProjectSection(ProjectDependencies) = postProject + {88A23124-5640-35A0-B890-311D7A67A7D2} = {88A23124-5640-35A0-B890-311D7A67A7D2} + EndProjectSection +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Zydis", "zydis\Zydis.vcxproj", "{88A23124-5640-35A0-B890-311D7A67A7D2}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ZydisWinKernel", "examples\ZydisWinKernel.vcxproj", "{45BD58A5-1711-417F-99E7-B640C56F8009}" + ProjectSection(ProjectDependencies) = postProject + {88A23124-5640-35A0-B890-311D7A67A7D2} = {88A23124-5640-35A0-B890-311D7A67A7D2} + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug DLL|Win32 = Debug DLL|Win32 + Debug DLL|x64 = Debug DLL|x64 + Debug Kernel|Win32 = Debug Kernel|Win32 + Debug Kernel|x64 = Debug Kernel|x64 + Debug|Win32 = Debug|Win32 + Debug|x64 = Debug|x64 + Release DLL|Win32 = Release DLL|Win32 + Release DLL|x64 = Release DLL|x64 + Release Kernel|Win32 = Release Kernel|Win32 + Release Kernel|x64 = Release Kernel|x64 + Release|Win32 = Release|Win32 + Release|x64 = Release|x64 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug DLL|x64.ActiveCfg = Debug DLL|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug DLL|x64.Build.0 = Debug DLL|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug Kernel|Win32.ActiveCfg = Debug|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug Kernel|x64.ActiveCfg = Debug|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug|Win32.ActiveCfg = Debug|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug|Win32.Build.0 = Debug|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug|x64.ActiveCfg = Debug|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Debug|x64.Build.0 = Debug|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release DLL|Win32.Build.0 = Release DLL|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release DLL|x64.ActiveCfg = Release DLL|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release DLL|x64.Build.0 = Release DLL|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release Kernel|Win32.ActiveCfg = Release|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release Kernel|x64.ActiveCfg = Release|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release|Win32.ActiveCfg = Release|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release|Win32.Build.0 = Release|Win32 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release|x64.ActiveCfg = Release|x64 + {8085CF70-11D1-3E7B-B648-C910396BB4A7}.Release|x64.Build.0 = Release|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug DLL|x64.ActiveCfg = Debug DLL|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug DLL|x64.Build.0 = Debug DLL|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug Kernel|Win32.ActiveCfg = Debug|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug Kernel|x64.ActiveCfg = Debug|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug|Win32.ActiveCfg = Debug|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug|Win32.Build.0 = Debug|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug|x64.ActiveCfg = Debug|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Debug|x64.Build.0 = Debug|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release DLL|Win32.Build.0 = Release DLL|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release DLL|x64.ActiveCfg = Release DLL|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release DLL|x64.Build.0 = Release DLL|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release Kernel|Win32.ActiveCfg = Release|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release Kernel|x64.ActiveCfg = Release|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release|Win32.ActiveCfg = Release|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release|Win32.Build.0 = Release|Win32 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release|x64.ActiveCfg = Release|x64 + {A0C9A331-13CC-3762-9D26-9F82C6518CAA}.Release|x64.Build.0 = Release|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug DLL|x64.ActiveCfg = Debug DLL|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug DLL|x64.Build.0 = Debug DLL|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug Kernel|Win32.ActiveCfg = Debug|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug Kernel|x64.ActiveCfg = Debug|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug|Win32.ActiveCfg = Debug|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug|Win32.Build.0 = Debug|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug|x64.ActiveCfg = Debug|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Debug|x64.Build.0 = Debug|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release DLL|Win32.Build.0 = Release DLL|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release DLL|x64.ActiveCfg = Release DLL|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release DLL|x64.Build.0 = Release DLL|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release Kernel|Win32.ActiveCfg = Release|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release Kernel|x64.ActiveCfg = Release|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release|Win32.ActiveCfg = Release|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release|Win32.Build.0 = Release|Win32 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release|x64.ActiveCfg = Release|x64 + {91EF3E98-CD57-3870-A399-A0D98D193F80}.Release|x64.Build.0 = Release|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug DLL|x64.ActiveCfg = Debug DLL|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug DLL|x64.Build.0 = Debug DLL|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug Kernel|Win32.ActiveCfg = Debug|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug Kernel|x64.ActiveCfg = Debug|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug|Win32.ActiveCfg = Debug|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug|Win32.Build.0 = Debug|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug|x64.ActiveCfg = Debug|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Debug|x64.Build.0 = Debug|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release DLL|Win32.Build.0 = Release DLL|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release DLL|x64.ActiveCfg = Release DLL|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release DLL|x64.Build.0 = Release DLL|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release Kernel|Win32.ActiveCfg = Release|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release Kernel|x64.ActiveCfg = Release|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release|Win32.ActiveCfg = Release|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release|Win32.Build.0 = Release|Win32 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release|x64.ActiveCfg = Release|x64 + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2}.Release|x64.Build.0 = Release|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug DLL|x64.ActiveCfg = Debug DLL|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug DLL|x64.Build.0 = Debug DLL|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug Kernel|Win32.ActiveCfg = Debug|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug Kernel|x64.ActiveCfg = Debug|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug|Win32.ActiveCfg = Debug|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug|Win32.Build.0 = Debug|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug|x64.ActiveCfg = Debug|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Debug|x64.Build.0 = Debug|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release DLL|Win32.Build.0 = Release DLL|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release DLL|x64.ActiveCfg = Release DLL|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release DLL|x64.Build.0 = Release DLL|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release Kernel|Win32.ActiveCfg = Release|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release Kernel|x64.ActiveCfg = Release|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release|Win32.ActiveCfg = Release|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release|Win32.Build.0 = Release|Win32 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release|x64.ActiveCfg = Release|x64 + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E}.Release|x64.Build.0 = Release|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug DLL|Win32.ActiveCfg = Debug DLL|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug DLL|Win32.Build.0 = Debug DLL|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug DLL|x64.ActiveCfg = Debug DLL|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug DLL|x64.Build.0 = Debug DLL|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug Kernel|Win32.ActiveCfg = Debug Kernel|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug Kernel|Win32.Build.0 = Debug Kernel|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug Kernel|x64.ActiveCfg = Debug Kernel|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug Kernel|x64.Build.0 = Debug Kernel|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug|Win32.ActiveCfg = Debug|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug|Win32.Build.0 = Debug|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug|x64.ActiveCfg = Debug|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Debug|x64.Build.0 = Debug|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release DLL|Win32.ActiveCfg = Release DLL|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release DLL|Win32.Build.0 = Release DLL|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release DLL|x64.ActiveCfg = Release DLL|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release DLL|x64.Build.0 = Release DLL|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release Kernel|Win32.ActiveCfg = Release Kernel|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release Kernel|Win32.Build.0 = Release Kernel|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release Kernel|x64.ActiveCfg = Release Kernel|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release Kernel|x64.Build.0 = Release Kernel|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release|Win32.ActiveCfg = Release|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release|Win32.Build.0 = Release|Win32 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release|x64.ActiveCfg = Release|x64 + {88A23124-5640-35A0-B890-311D7A67A7D2}.Release|x64.Build.0 = Release|x64 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Debug DLL|Win32.ActiveCfg = Debug|Win32 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Debug DLL|x64.ActiveCfg = Debug|x64 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Debug Kernel|Win32.ActiveCfg = Debug|Win32 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Debug Kernel|Win32.Build.0 = Debug|Win32 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Debug Kernel|x64.ActiveCfg = Debug|x64 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Debug Kernel|x64.Build.0 = Debug|x64 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Debug|Win32.ActiveCfg = Debug|Win32 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Debug|x64.ActiveCfg = Debug|x64 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Release DLL|Win32.ActiveCfg = Release|Win32 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Release DLL|x64.ActiveCfg = Release|x64 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Release Kernel|Win32.ActiveCfg = Release|Win32 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Release Kernel|Win32.Build.0 = Release|Win32 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Release Kernel|x64.ActiveCfg = Release|x64 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Release Kernel|x64.Build.0 = Release|x64 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Release|Win32.ActiveCfg = Release|Win32 + {45BD58A5-1711-417F-99E7-B640C56F8009}.Release|x64.ActiveCfg = Release|x64 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {8085CF70-11D1-3E7B-B648-C910396BB4A7} = {4F5048C7-CB90-437E-AB21-32258F9650B6} + {A0C9A331-13CC-3762-9D26-9F82C6518CAA} = {4F5048C7-CB90-437E-AB21-32258F9650B6} + {91EF3E98-CD57-3870-A399-A0D98D193F80} = {4F5048C7-CB90-437E-AB21-32258F9650B6} + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2} = {292A9E1E-C557-4570-ABE1-8EEC0E1B79C4} + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E} = {292A9E1E-C557-4570-ABE1-8EEC0E1B79C4} + {45BD58A5-1711-417F-99E7-B640C56F8009} = {4F5048C7-CB90-437E-AB21-32258F9650B6} + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {F578E55A-EB10-4D4A-9F4E-C74DCB58DE73} + EndGlobalSection +EndGlobal diff --git a/msvc/ZydisExportConfig.h b/msvc/ZydisExportConfig.h new file mode 100644 index 0000000..5921a7e --- /dev/null +++ b/msvc/ZydisExportConfig.h @@ -0,0 +1,42 @@ + +#ifndef ZYDIS_EXPORT_H +#define ZYDIS_EXPORT_H + +#ifdef ZYDIS_STATIC_DEFINE +# define ZYDIS_EXPORT +# define ZYDIS_NO_EXPORT +#else +# ifndef ZYDIS_EXPORT +# ifdef Zydis_EXPORTS + /* We are building this library */ +# define ZYDIS_EXPORT __declspec(dllexport) +# else + /* We are using this library */ +# define ZYDIS_EXPORT __declspec(dllimport) +# endif +# endif + +# ifndef ZYDIS_NO_EXPORT +# define ZYDIS_NO_EXPORT +# endif +#endif + +#ifndef ZYDIS_DEPRECATED +# define ZYDIS_DEPRECATED __declspec(deprecated) +#endif + +#ifndef ZYDIS_DEPRECATED_EXPORT +# define ZYDIS_DEPRECATED_EXPORT ZYDIS_EXPORT ZYDIS_DEPRECATED +#endif + +#ifndef ZYDIS_DEPRECATED_NO_EXPORT +# define ZYDIS_DEPRECATED_NO_EXPORT ZYDIS_NO_EXPORT ZYDIS_DEPRECATED +#endif + +#if 0 /* DEFINE_NO_DEPRECATED */ +# ifndef ZYDIS_NO_DEPRECATED +# define ZYDIS_NO_DEPRECATED +# endif +#endif + +#endif diff --git a/msvc/examples/FormatterHooks.vcxproj b/msvc/examples/FormatterHooks.vcxproj new file mode 100644 index 0000000..3e0cc50 --- /dev/null +++ b/msvc/examples/FormatterHooks.vcxproj @@ -0,0 +1,428 @@ + + + + + Debug DLL + Win32 + + + Debug DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release DLL + Win32 + + + Release DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {8085CF70-11D1-3E7B-B648-C910396BB4A7} + $(LatestTargetPlatformVersion) + Win32Proj + FormatterHooks + + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + + + + + + + + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/msvc/examples/FormatterHooks.vcxproj.filters b/msvc/examples/FormatterHooks.vcxproj.filters new file mode 100644 index 0000000..e438a5f --- /dev/null +++ b/msvc/examples/FormatterHooks.vcxproj.filters @@ -0,0 +1,59 @@ + + + + + {664BBE0B-918F-3B41-8D06-1875B10A7BE5} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {54CFF9CE-5525-3FCE-8ECE-9A26FB686F56} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff --git a/msvc/examples/ZydisFuzzIn.vcxproj b/msvc/examples/ZydisFuzzIn.vcxproj new file mode 100644 index 0000000..38f96d9 --- /dev/null +++ b/msvc/examples/ZydisFuzzIn.vcxproj @@ -0,0 +1,427 @@ + + + + + Debug DLL + Win32 + + + Debug DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release DLL + Win32 + + + Release DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {A0C9A331-13CC-3762-9D26-9F82C6518CAA} + $(LatestTargetPlatformVersion) + Win32Proj + ZydisFuzzIn + + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + + + + + + + + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/msvc/examples/ZydisFuzzIn.vcxproj.filters b/msvc/examples/ZydisFuzzIn.vcxproj.filters new file mode 100644 index 0000000..20802c1 --- /dev/null +++ b/msvc/examples/ZydisFuzzIn.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {664BBE0B-918F-3B41-8D06-1875B10A7BE5} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {54CFF9CE-5525-3FCE-8ECE-9A26FB686F56} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff --git a/msvc/examples/ZydisPerfTest.vcxproj b/msvc/examples/ZydisPerfTest.vcxproj new file mode 100644 index 0000000..ccb06ca --- /dev/null +++ b/msvc/examples/ZydisPerfTest.vcxproj @@ -0,0 +1,427 @@ + + + + + Debug DLL + Win32 + + + Debug DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release DLL + Win32 + + + Release DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {91EF3E98-CD57-3870-A399-A0D98D193F80} + $(LatestTargetPlatformVersion) + Win32Proj + ZydisPerfTest + + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + + + + + + + + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/msvc/examples/ZydisPerfTest.vcxproj.filters b/msvc/examples/ZydisPerfTest.vcxproj.filters new file mode 100644 index 0000000..3a3e45b --- /dev/null +++ b/msvc/examples/ZydisPerfTest.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {664BBE0B-918F-3B41-8D06-1875B10A7BE5} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {54CFF9CE-5525-3FCE-8ECE-9A26FB686F56} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff --git a/msvc/examples/ZydisWinKernel.vcxproj b/msvc/examples/ZydisWinKernel.vcxproj new file mode 100644 index 0000000..aeda8e3 --- /dev/null +++ b/msvc/examples/ZydisWinKernel.vcxproj @@ -0,0 +1,226 @@ + + + + + Debug + Win32 + + + Debug + x64 + + + Release + Win32 + + + Release + x64 + + + + {45BD58A5-1711-417f-99E7-B640C56F8009} + {1bc93793-694f-48fe-9372-81e2b05556fd} + 14.0 + Release + x64 + $(MSBuildProjectName) + $(LatestTargetPlatformVersion) + + + + Windows7 + true + WindowsKernelModeDriver10.0 + Driver + WDM + false + Desktop + + + Windows7 + false + WindowsKernelModeDriver10.0 + Driver + WDM + false + true + Desktop + + + Windows7 + true + WindowsKernelModeDriver10.0 + Driver + WDM + false + Desktop + + + Windows7 + false + WindowsKernelModeDriver10.0 + Driver + WDM + false + true + Desktop + + + + + + + + + + true + + + + DbgengKernelDebugger + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + AllRules.ruleset + + + DbgengKernelDebugger + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + AllRules.ruleset + + + DbgengKernelDebugger + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + AllRules.ruleset + + + DbgengKernelDebugger + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + AllRules.ruleset + + + + ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;POOL_NX_OPTIN;_X86_=1;i386=1;STD_CALL;DBG;_DEBUG;%(PreprocessorDefinitions) + /Gw /kernel + Caret + $(SolutionDir)../include;$(SolutionDir);$(IntDir);%(AdditionalIncludeDirectories) + true + + + /NOCOFFGRPINFO %(AdditionalOptions) + false + true + true + $(TargetDir);%(AdditionalLibraryDirectories) + true + 6.1 + Zydis.lib;%(AdditionalDependencies);$(KernelBufferOverflowLib);$(DDK_LIB_PATH)ntoskrnl.lib;$(DDK_LIB_PATH)hal.lib;$(DDK_LIB_PATH)wmilib.lib + DriverEntry@8 + + + + + ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;POOL_NX_OPTIN;_X86_=1;i386=1;STD_CALL;NDEBUG;%(PreprocessorDefinitions) + /Gw /kernel + Caret + $(SolutionDir)../include;$(SolutionDir);$(IntDir);%(AdditionalIncludeDirectories) + true + true + false + false + true + + + UseLinkTimeCodeGeneration + DriverEntry@8 + /NOCOFFGRPINFO %(AdditionalOptions) + false + true + true + $(TargetDir);%(AdditionalLibraryDirectories) + Zydis.lib;%(AdditionalDependencies);$(DDK_LIB_PATH)ntoskrnl.lib;$(DDK_LIB_PATH)hal.lib;$(DDK_LIB_PATH)wmilib.lib + true + 6.1 + + + + + ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;POOL_NX_OPTIN;_WIN64;_AMD64_;AMD64;DBG;_DEBUG;%(PreprocessorDefinitions) + /Gw /kernel + Caret + $(SolutionDir)../include;$(SolutionDir);$(IntDir);%(AdditionalIncludeDirectories) + true + + + /NOCOFFGRPINFO %(AdditionalOptions) + false + true + true + $(TargetDir);%(AdditionalLibraryDirectories) + true + 6.1 + Zydis.lib;%(AdditionalDependencies);$(KernelBufferOverflowLib);$(DDK_LIB_PATH)ntoskrnl.lib;$(DDK_LIB_PATH)hal.lib;$(DDK_LIB_PATH)wmilib.lib + DriverEntry + + + + + ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;POOL_NX_OPTIN;_WIN64;_AMD64_;AMD64;NDEBUG;%(PreprocessorDefinitions) + /Gw /kernel + Caret + $(SolutionDir)../include;$(SolutionDir);$(IntDir);%(AdditionalIncludeDirectories) + true + true + false + false + true + + + UseLinkTimeCodeGeneration + DriverEntry + /NOCOFFGRPINFO %(AdditionalOptions) + false + true + true + $(TargetDir);%(AdditionalLibraryDirectories) + Zydis.lib;%(AdditionalDependencies);$(DDK_LIB_PATH)ntoskrnl.lib;$(DDK_LIB_PATH)hal.lib;$(DDK_LIB_PATH)wmilib.lib + true + 6.1 + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/msvc/examples/ZydisWinKernel.vcxproj.filters b/msvc/examples/ZydisWinKernel.vcxproj.filters new file mode 100644 index 0000000..10bc83c --- /dev/null +++ b/msvc/examples/ZydisWinKernel.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {664BBE0B-918F-3B41-8D06-1875B10A7BE5} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {54CFF9CE-5525-3FCE-8ECE-9A26FB686F56} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + \ No newline at end of file diff --git a/msvc/tools/ZydisDisasm.vcxproj b/msvc/tools/ZydisDisasm.vcxproj new file mode 100644 index 0000000..13cffc9 --- /dev/null +++ b/msvc/tools/ZydisDisasm.vcxproj @@ -0,0 +1,427 @@ + + + + + Debug DLL + Win32 + + + Debug DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release DLL + Win32 + + + Release DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {805CBF3F-3DDC-3141-AD7C-3B452FBEBCD2} + $(LatestTargetPlatformVersion) + Win32Proj + ZydisDisasm + + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + + + + + + + + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/msvc/tools/ZydisDisasm.vcxproj.filters b/msvc/tools/ZydisDisasm.vcxproj.filters new file mode 100644 index 0000000..243a5ff --- /dev/null +++ b/msvc/tools/ZydisDisasm.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {664BBE0B-918F-3B41-8D06-1875B10A7BE5} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {54CFF9CE-5525-3FCE-8ECE-9A26FB686F56} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff --git a/msvc/tools/ZydisInfo.vcxproj b/msvc/tools/ZydisInfo.vcxproj new file mode 100644 index 0000000..593ac8c --- /dev/null +++ b/msvc/tools/ZydisInfo.vcxproj @@ -0,0 +1,427 @@ + + + + + Debug DLL + Win32 + + + Debug DLL + x64 + + + Debug + Win32 + + + Debug + x64 + + + Release DLL + Win32 + + + Release DLL + x64 + + + Release + Win32 + + + Release + x64 + + + + {BC04B6A7-D80C-3FED-97AC-BCC8370D6A7E} + $(LatestTargetPlatformVersion) + Win32Proj + ZydisInfo + + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + Application + MultiByte + v141 + true + + + + + + + + + + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + $(SolutionDir)bin\ + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + false + false + false + false + false + false + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + AllRules.ruleset + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + ProgramDatabase + false + Disabled + true + Disabled + NotUsing + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;_DEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + false + Caret + MultiThreadedDebugDLL + EnableFastChecks + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.2 + true + UseLinkTimeCodeGeneration + 5.02 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) + /Gw + false + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + false + Caret + + + $(TargetDir);%(AdditionalLibraryDirectories) + /NOCOFFGRPINFO + true + true + true + true + Console + 5.1 + true + UseLinkTimeCodeGeneration + 5.01 + Zydis.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/msvc/tools/ZydisInfo.vcxproj.filters b/msvc/tools/ZydisInfo.vcxproj.filters new file mode 100644 index 0000000..ee41747 --- /dev/null +++ b/msvc/tools/ZydisInfo.vcxproj.filters @@ -0,0 +1,56 @@ + + + + + {664BBE0B-918F-3B41-8D06-1875B10A7BE5} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {54CFF9CE-5525-3FCE-8ECE-9A26FB686F56} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + \ No newline at end of file diff --git a/msvc/zydis/Zydis.vcxproj b/msvc/zydis/Zydis.vcxproj new file mode 100644 index 0000000..69f01e5 --- /dev/null +++ b/msvc/zydis/Zydis.vcxproj @@ -0,0 +1,564 @@ + + + + + Debug DLL + Win32 + + + Debug DLL + x64 + + + Debug Kernel + Win32 + + + Debug Kernel + x64 + + + Debug + Win32 + + + Release DLL + Win32 + + + Release DLL + x64 + + + Release Kernel + Win32 + + + Release Kernel + x64 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + {88A23124-5640-35A0-B890-311D7A67A7D2} + {0a049372-4c4d-4ea0-a64e-dc6ad88ceca1} + 14.0 + Release + x64 + $(MSBuildProjectName) + Win32Proj + $(LatestTargetPlatformVersion) + + + + true + v141 + StaticLibrary + MultiByte + + + Windows7 + true + WindowsKernelModeDriver10.0 + StaticLibrary + Desktop + WDM + false + + + true + v141 + DynamicLibrary + MultiByte + + + false + v141 + StaticLibrary + MultiByte + + + Windows7 + false + WindowsKernelModeDriver10.0 + StaticLibrary + Desktop + WDM + false + + + false + v141 + DynamicLibrary + MultiByte + true + + + true + v141 + StaticLibrary + MultiByte + + + Windows7 + true + WindowsKernelModeDriver10.0 + StaticLibrary + Desktop + WDM + false + + + true + v141 + DynamicLibrary + MultiByte + + + false + v141 + StaticLibrary + MultiByte + + + Windows7 + false + WindowsKernelModeDriver10.0 + StaticLibrary + Desktop + WDM + false + + + false + v141 + DynamicLibrary + MultiByte + true + + + + + + + + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + AllRules.ruleset + + + $(SolutionDir)bin\ + obj\$(ProjectName)-$(Platform)-$(Configuration)\ + false + false + AllRules.ruleset + + + + ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + /Gw + ProgramDatabase + Caret + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + Disabled + true + true + Level3 + false + false + false + + + Console + 5.01 + true + + + + + ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP;WINAPI_PARTITION_DESKTOP=1;WINAPI_PARTITION_SYSTEM=1;WINAPI_PARTITION_APP=1;WINAPI_PARTITION_PC_APP=1;_X86_=1;i386=1;STD_CALL;DBG;%(PreprocessorDefinitions) + /Gw /kernel + Caret + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + Disabled + true + true + + + Native + $(SUBSYSTEM_NATVER) + true + true + + + + + Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + /Gw + ProgramDatabase + Caret + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + Disabled + true + Level3 + false + false + false + + + Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + + + 5.1 + true + true + Console + 5.01 + true + true + true + /NOCOFFGRPINFO %(AdditionalOptions) + + + + + true + true + ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + Caret + false + false + /Gw + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + true + true + Level3 + true + false + false + + + Console + 5.01 + true + + + + + true + true + ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP;WINAPI_PARTITION_DESKTOP=1;WINAPI_PARTITION_SYSTEM=1;WINAPI_PARTITION_APP=1;WINAPI_PARTITION_PC_APP=1;_X86_=1;i386=1;STD_CALL;%(PreprocessorDefinitions) + Caret + false + false + /Gw /kernel + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + true + true + + + Native + $(SUBSYSTEM_NATVER) + true + true + + + + + true + true + Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + Caret + false + false + /Gw + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + true + Level3 + true + false + false + MultiThreadedDLL + + + Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + + + 5.1 + true + true + Console + 5.01 + true + true + UseLinkTimeCodeGeneration + true + /NOCOFFGRPINFO %(AdditionalOptions) + + + + + ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;_WIN64;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + /Gw + ProgramDatabase + Caret + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + Disabled + true + true + Level3 + false + false + false + + + Console + 5.02 + true + + + + + ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;_WIN64;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP;WINAPI_PARTITION_DESKTOP=1;WINAPI_PARTITION_SYSTEM=1;WINAPI_PARTITION_APP=1;WINAPI_PARTITION_PC_APP=1;_AMD64_;AMD64;DBG;%(PreprocessorDefinitions) + /Gw /kernel + Caret + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + Disabled + true + true + + + Native + $(SUBSYSTEM_NATVER) + true + true + + + + + Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;_WIN64;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + /Gw + ProgramDatabase + Caret + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + Disabled + true + Level3 + false + false + false + + + Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;_WIN64;_DEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + + + 5.2 + true + true + Console + 5.02 + true + true + true + /NOCOFFGRPINFO %(AdditionalOptions) + + + + + true + true + ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + Caret + false + false + /Gw + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + true + true + Level3 + true + false + false + + + Console + 5.02 + true + + + + + true + true + ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP;WINAPI_PARTITION_DESKTOP=1;WINAPI_PARTITION_SYSTEM=1;WINAPI_PARTITION_APP=1;WINAPI_PARTITION_PC_APP=1;_AMD64_;AMD64;%(PreprocessorDefinitions) + Caret + false + false + /Gw /kernel + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + true + true + + + Native + $(SUBSYSTEM_NATVER) + true + true + + + + + true + true + Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + Caret + false + false + /Gw + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + true + Level3 + true + false + false + MultiThreadedDLL + + + Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) + + + 5.2 + true + true + Console + 5.02 + true + true + UseLinkTimeCodeGeneration + true + /NOCOFFGRPINFO %(AdditionalOptions) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + true + true + true + true + true + true + true + + + + + + \ No newline at end of file diff --git a/msvc/zydis/Zydis.vcxproj.filters b/msvc/zydis/Zydis.vcxproj.filters new file mode 100644 index 0000000..96baa70 --- /dev/null +++ b/msvc/zydis/Zydis.vcxproj.filters @@ -0,0 +1,107 @@ + + + + + {664BBE0B-918F-3B41-8D06-1875B10A7BE5} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {54CFF9CE-5525-3FCE-8ECE-9A26FB686F56} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {97DEB7A2-7CAF-45B9-B945-FA454AAAC4FB} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + {FCE9C51F-A1C2-4A67-897E-FD341CF564C2} + + + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + Source Files + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + Header Files\Zydis + + + + + Resource Files + + + \ No newline at end of file From fd437bc8f2db3fa29b8c57cfc5d338fa185d58a2 Mon Sep 17 00:00:00 2001 From: Mattiwatti Date: Wed, 29 Nov 2017 00:54:28 +0100 Subject: [PATCH 3/7] Add a brief README to /msvc describing its contents --- msvc/README.txt | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 msvc/README.txt diff --git a/msvc/README.txt b/msvc/README.txt new file mode 100644 index 0000000..aa523c3 --- /dev/null +++ b/msvc/README.txt @@ -0,0 +1,11 @@ +This directory contains MSVC project files to build Zydis and the included tools and examples. + +There are three build configurations, each with 32/64 bit and debug/release versions: +- Static (default) +- Dynamic +- Kernel mode + +In order to build the kernel mode configuration you must have the Microsoft WDK installed, available at https://developer.microsoft.com/en-us/windows/hardware/windows-driver-kit. +The kernel mode configuration only builds Zydis and the ZydisWinKernel driver sample. The other configurations build all projects except for ZydisWinKernel. + +All Zydis features are enabled by default. In order to disable specific features you can define preprocessor directives such as ZYDIS_DISABLE_FORMATTER. Refer to CMakeLists.txt for the full list of feature switches. From 9217d92619a08595a7c434cabfc540d34bb492d8 Mon Sep 17 00:00:00 2001 From: Mattiwatti Date: Wed, 29 Nov 2017 00:55:11 +0100 Subject: [PATCH 4/7] Update .gitignore with MSVC file types --- .gitignore | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.gitignore b/.gitignore index 0d71d24..fda2364 100644 --- a/.gitignore +++ b/.gitignore @@ -81,6 +81,16 @@ CTestTestfile.cmake .DS_Store build* + +# MSVC .vs +*.vcxproj.user +*.suo +*.sdf +*.opensdf +*.VC.db +*.VC.opendb +msvc/**/obj/ +msvc/**/bin/ doc/html From 3c631a5d3d0a7260b678bbd3503ff8635c14d225 Mon Sep 17 00:00:00 2001 From: Mattiwatti Date: Wed, 29 Nov 2017 16:59:36 +0100 Subject: [PATCH 5/7] Add note to README re: bug in older WDK versions ('numeric comparison attempted on ""') --- msvc/README.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/msvc/README.txt b/msvc/README.txt index aa523c3..1078bec 100644 --- a/msvc/README.txt +++ b/msvc/README.txt @@ -8,4 +8,6 @@ There are three build configurations, each with 32/64 bit and debug/release vers In order to build the kernel mode configuration you must have the Microsoft WDK installed, available at https://developer.microsoft.com/en-us/windows/hardware/windows-driver-kit. The kernel mode configuration only builds Zydis and the ZydisWinKernel driver sample. The other configurations build all projects except for ZydisWinKernel. +NOTE: If you already have the WDK installed, make sure it is updated to at least the Windows 10 1709 version (10.0.16299.0) in order to prevent issues opening the solution file. This is due to a bug in older WDK toolsets. + All Zydis features are enabled by default. In order to disable specific features you can define preprocessor directives such as ZYDIS_DISABLE_FORMATTER. Refer to CMakeLists.txt for the full list of feature switches. From 039a0b93d7646e5883d7adbc89eb00063368b0d1 Mon Sep 17 00:00:00 2001 From: Mattiwatti Date: Wed, 29 Nov 2017 17:01:15 +0100 Subject: [PATCH 6/7] Make ZydisWinKernel compatible with Clang --- examples/ZydisWinKernel.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/examples/ZydisWinKernel.c b/examples/ZydisWinKernel.c index 6c0e2b2..c50ee01 100644 --- a/examples/ZydisWinKernel.c +++ b/examples/ZydisWinKernel.c @@ -58,10 +58,13 @@ RtlImageNtHeader( _In_ PVOID ImageBase ); +#if defined(ZYDIS_CLANG) || defined(ZYDIS_GNUC) +__attribute__((section("INIT"))) +#endif DRIVER_INITIALIZE DriverEntry; -#ifdef ALLOC_PRAGMA +#if defined(ALLOC_PRAGMA) && !(defined(ZYDIS_CLANG) || defined(ZYDIS_GNUC)) #pragma alloc_text(INIT, DriverEntry) #endif From f5340ef7f29b9381202f972b577178e10886e1d0 Mon Sep 17 00:00:00 2001 From: Mattiwatti Date: Thu, 30 Nov 2017 14:53:38 +0100 Subject: [PATCH 7/7] Do not disable /GS cookies and CFG by default in release mode --- msvc/examples/FormatterHooks.vcxproj | 8 -------- msvc/examples/ZydisFuzzIn.vcxproj | 8 -------- msvc/examples/ZydisPerfTest.vcxproj | 8 -------- msvc/examples/ZydisWinKernel.vcxproj | 4 ++-- msvc/tools/ZydisDisasm.vcxproj | 8 -------- msvc/tools/ZydisInfo.vcxproj | 8 -------- msvc/zydis/Zydis.vcxproj | 12 ------------ 7 files changed, 2 insertions(+), 54 deletions(-) diff --git a/msvc/examples/FormatterHooks.vcxproj b/msvc/examples/FormatterHooks.vcxproj index 3e0cc50..99aa372 100644 --- a/msvc/examples/FormatterHooks.vcxproj +++ b/msvc/examples/FormatterHooks.vcxproj @@ -278,7 +278,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -289,7 +288,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -311,7 +309,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -322,7 +319,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -344,7 +340,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -355,7 +350,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -377,7 +371,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -388,7 +381,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret diff --git a/msvc/examples/ZydisFuzzIn.vcxproj b/msvc/examples/ZydisFuzzIn.vcxproj index 38f96d9..3ef4f92 100644 --- a/msvc/examples/ZydisFuzzIn.vcxproj +++ b/msvc/examples/ZydisFuzzIn.vcxproj @@ -278,7 +278,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -289,7 +288,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -311,7 +309,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -322,7 +319,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -344,7 +340,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -355,7 +350,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -377,7 +371,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -388,7 +381,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret diff --git a/msvc/examples/ZydisPerfTest.vcxproj b/msvc/examples/ZydisPerfTest.vcxproj index ccb06ca..b75b4e7 100644 --- a/msvc/examples/ZydisPerfTest.vcxproj +++ b/msvc/examples/ZydisPerfTest.vcxproj @@ -278,7 +278,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -289,7 +288,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -311,7 +309,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -322,7 +319,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -344,7 +340,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -355,7 +350,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -377,7 +371,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -388,7 +381,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret diff --git a/msvc/examples/ZydisWinKernel.vcxproj b/msvc/examples/ZydisWinKernel.vcxproj index aeda8e3..30f36ad 100644 --- a/msvc/examples/ZydisWinKernel.vcxproj +++ b/msvc/examples/ZydisWinKernel.vcxproj @@ -116,6 +116,7 @@ Caret $(SolutionDir)../include;$(SolutionDir);$(IntDir);%(AdditionalIncludeDirectories) true + false /NOCOFFGRPINFO %(AdditionalOptions) @@ -137,7 +138,6 @@ $(SolutionDir)../include;$(SolutionDir);$(IntDir);%(AdditionalIncludeDirectories) true true - false false true @@ -161,6 +161,7 @@ Caret $(SolutionDir)../include;$(SolutionDir);$(IntDir);%(AdditionalIncludeDirectories) true + false /NOCOFFGRPINFO %(AdditionalOptions) @@ -182,7 +183,6 @@ $(SolutionDir)../include;$(SolutionDir);$(IntDir);%(AdditionalIncludeDirectories) true true - false false true diff --git a/msvc/tools/ZydisDisasm.vcxproj b/msvc/tools/ZydisDisasm.vcxproj index 13cffc9..a561dc8 100644 --- a/msvc/tools/ZydisDisasm.vcxproj +++ b/msvc/tools/ZydisDisasm.vcxproj @@ -278,7 +278,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -289,7 +288,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -311,7 +309,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -322,7 +319,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -344,7 +340,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -355,7 +350,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -377,7 +371,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -388,7 +381,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret diff --git a/msvc/tools/ZydisInfo.vcxproj b/msvc/tools/ZydisInfo.vcxproj index 593ac8c..ea85879 100644 --- a/msvc/tools/ZydisInfo.vcxproj +++ b/msvc/tools/ZydisInfo.vcxproj @@ -278,7 +278,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -289,7 +288,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -311,7 +309,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -322,7 +319,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -344,7 +340,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -355,7 +350,6 @@ Level3 ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret @@ -377,7 +371,6 @@ $(SolutionDir)../include;$(SolutionDir);%(AdditionalIncludeDirectories) /Gw - false ProgramDatabase false true @@ -388,7 +381,6 @@ Level3 Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) true - false Caret diff --git a/msvc/zydis/Zydis.vcxproj b/msvc/zydis/Zydis.vcxproj index 69f01e5..596c239 100644 --- a/msvc/zydis/Zydis.vcxproj +++ b/msvc/zydis/Zydis.vcxproj @@ -300,8 +300,6 @@ true ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) Caret - false - false /Gw $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) true @@ -323,8 +321,6 @@ true ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP;WINAPI_PARTITION_DESKTOP=1;WINAPI_PARTITION_SYSTEM=1;WINAPI_PARTITION_APP=1;WINAPI_PARTITION_PC_APP=1;_X86_=1;i386=1;STD_CALL;%(PreprocessorDefinitions) Caret - false - false /Gw /kernel $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) true @@ -343,8 +339,6 @@ true Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) Caret - false - false /Gw $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) true @@ -445,8 +439,6 @@ true ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) Caret - false - false /Gw $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) true @@ -468,8 +460,6 @@ true ZYDIS_NO_LIBC;ZYDIS_STATIC_DEFINE;ZYDIS_EXPORTS;_LIB;WIN32;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP;WINAPI_PARTITION_DESKTOP=1;WINAPI_PARTITION_SYSTEM=1;WINAPI_PARTITION_APP=1;WINAPI_PARTITION_PC_APP=1;_AMD64_;AMD64;%(PreprocessorDefinitions) Caret - false - false /Gw /kernel $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) true @@ -488,8 +478,6 @@ true Zydis_EXPORTS;ZYDIS_EXPORTS;_DLL;WIN32;_WIN64;NDEBUG;_WINDOWS;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) Caret - false - false /Gw $(SolutionDir)../include;$(SolutionDir)../src;$(SolutionDir);%(AdditionalIncludeDirectories) true