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 diff --git a/examples/ZydisWinKernel.c b/examples/ZydisWinKernel.c new file mode 100644 index 0000000..c50ee01 --- /dev/null +++ b/examples/ZydisWinKernel.c @@ -0,0 +1,188 @@ +/*************************************************************************************************** + + 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 + ); + +#if defined(ZYDIS_CLANG) || defined(ZYDIS_GNUC) +__attribute__((section("INIT"))) +#endif +DRIVER_INITIALIZE +DriverEntry; + +#if defined(ALLOC_PRAGMA) && !(defined(ZYDIS_CLANG) || defined(ZYDIS_GNUC)) +#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; +} + +/* ============================================================================================== */ diff --git a/msvc/README.txt b/msvc/README.txt new file mode 100644 index 0000000..1078bec --- /dev/null +++ b/msvc/README.txt @@ -0,0 +1,13 @@ +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. + +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. 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..99aa372 --- /dev/null +++ b/msvc/examples/FormatterHooks.vcxproj @@ -0,0 +1,420 @@ + + + + + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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..3ef4f92 --- /dev/null +++ b/msvc/examples/ZydisFuzzIn.vcxproj @@ -0,0 +1,419 @@ + + + + + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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..b75b4e7 --- /dev/null +++ b/msvc/examples/ZydisPerfTest.vcxproj @@ -0,0 +1,419 @@ + + + + + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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..30f36ad --- /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 + false + + + /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 + 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 + false + + + /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 + 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..a561dc8 --- /dev/null +++ b/msvc/tools/ZydisDisasm.vcxproj @@ -0,0 +1,419 @@ + + + + + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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..ea85879 --- /dev/null +++ b/msvc/tools/ZydisInfo.vcxproj @@ -0,0 +1,419 @@ + + + + + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + ZYDIS_STATIC_DEFINE;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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 + ProgramDatabase + false + true + true + NotUsing + false + true + Level3 + Zydis_EXPORTS;WIN32;_WINDOWS;NDEBUG;_CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) + true + 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..596c239 --- /dev/null +++ b/msvc/zydis/Zydis.vcxproj @@ -0,0 +1,552 @@ + + + + + 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 + /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 + /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 + /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 + /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 + /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 + /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