diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..f9347da --- /dev/null +++ b/.gitattributes @@ -0,0 +1,6 @@ +# Auto detect text files and perform LF normalization +* text=auto + +# Plain text (Windows) +*.txt diff=astextplain eol=crlf +*.ini diff=astextplain eol=crlf diff --git a/.gitignore b/.gitignore index 4081324..56e5ba3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,17 @@ -# Unnecessary files - -*.~pas -*.dproj.local +# Delphi local files (user-specific info) +*.local *.identcache + +# Delphi history and backups +__history/ +*.~* + +# Compiled binaries *.dcu +*.exe +*.dll +*.msi + +# MSI local stuff +*.wixobj +*.wixpdb diff --git a/README.md b/README.md index 691726f..837e679 100644 --- a/README.md +++ b/README.md @@ -1,206 +1,463 @@ -RDP Wrapper Library by Stas'M
-
-The goal of this project is to enable Remote Desktop Host support and concurrent RDP sessions on reduced functionality systems for home usage.
-
-RDP Wrapper works as a layer between Service Control Manager and Terminal Services, so the original termsrv.dll file remains untouched. Also this method is very strong against Windows Update.
-
-Screenshots:
-
-  -  -  -  -  -  -  -  -  -  -  -

-This solution was inspired by Windows Product Policy Editor, big thanks to kost :)
-- binarymaster
-
-Attention:
-It's recommended to have original termsrv.dll file with the RDP Wrapper installation. If you have modified it before with other patchers, it may become unstable and crash in any moment.
-
-Information:
-• Source code is available, so you can build it on your own
-• RDP Wrapper does not patch termsrv.dll, it loads termsrv with different parameters
-• RDPWInst and RDPChecker can be redistributed without development folder and batch files
-• RDPWInst can be used for unattended installation / deployment
-• Windows 2000, XP and Server 2003 will not be supported
-
-Porting to other platforms:
-• ARM for Windows RT (see links below)
-• IA-64 for Itanium-based Windows Server? Well, I have no idea :)
-
-Building the binaries:
-• x86 Delphi version can be built with Embarcadero RAD Studio 2010
-• x86/x64 C++ version can be built with Microsoft Visual Studio 2013
-
-Links:
-• Official GitHub repository:
-https://github.com/binarymaster/rdpwrap/
-• Active discussion in the comments here:
-Enable remote desktop on Windows 8 core / basic - Andrew Block .net
-• MDL Projects and Applications thread here:
-RDP Wrapper Library (works with Windows 8.1 Basic)
-• Some ideas about porting to ARM for Windows RT (post #23):
-[Q] Mod Windows RT to enable Remote Desktop
-• Adding «Remote Desktop Users» group:
-http://superuser.com/questions/680572/
-
-Files description:
-
- - - - - - - - -
RDPWInst.exeRDP Wrapper Library installer/uninstaller
RDPCheck.exeLocal RDP Checker (you can check the RDP is working)
RDPConf.exeRDP Wrapper Configuration
install.batQuick install batch file
uninstall.batQuick uninstall batch file

-Change log:
-
-2014.12.11
-• Version 1.5
-• Added INI config support
-• Configuration is stored in INI file now
-• We can extend version support without building new binaries
-• Added support for Windows 8.1 with KB3000850
-• Added support for Windows 10 Technical Preview Update 2
-• Installer updated
-• RDP Config updated
-• Diagnostics feature added to RDP Config
-
-2014.11.14
-• Version 1.4
-• Added support for Windows 10 Technical Preview Update 1
-• Added support for Windows Vista SP2 with KB3003743
-• Added support for Windows 7 SP1 with KB3003743
-• Added new RDP Configuration Program
-
-2014.10.21
-• Installer updated
-• Added feature to install RDP Wrapper to System32 directory
-• Fixed issue in the installer - NLA setting now remains unchanged
-• Local RDP Checker updated
-• SecurityLayer and UserAuthentification values changed on check start
-• RDP Checker restores values on exit
-
-2014.10.20
-• Version 1.3
-• Added support for Windows 10 Technical Preview
-• Added support for Windows 7 with KB2984972
-• Added support for Windows 8 with KB2973501
-• Added extended support for Windows Vista (SP0, SP1 and SP2)
-• Added extended support for Windows 7 (SP0 and SP1)
-• Some improvements in the source code
-• Installer updated to v2.2
-• Fixed installation bug in Vista x64 (wrong expand path)
-• Local RDP Checker updated
-• Added description to error 0x708
-
-2014.07.26
-• Version 1.2
-• Added support for Windows 8 Developer Preview
-• Added support for Windows 8 Consumer Preview
-• Added support for Windows 8 Release Preview
-• Added support for Windows 8.1 Preview
-• Added support for Windows 8.1
-• More details you will see in the source code
-• Installer updated to v2.1
-
-2013.12.09
-• C++ port of RDP Wrapper was made by Fusix
-• x64 architecture is supported now
-• Added new command line installer v2.0
-• Added local RDP checker
-• Source code (C++ port, installer 2.0, local RDP checker) is also included
-
-2013.10.25
-• Version 1.1 source code is available
-
-2013.10.22
-• Version 1.1
-• Stable release
-• Improved wrapper (now it can wrap internal unexported termsrv.dll SL Policy function)
-• Added support for Windows 8 Single Language (tested on Acer Tablet PC with Intel Atom Z2760)
-
-2013.10.19
-• Version 1.0
-• First [beta] version
-• Basic SL Policy wrapper
-
-Supported Terminal Services versions:
-• 6.0.X.X (Windows Vista / Server 2008)
-• 6.0.6000.16386 (Windows Vista)
-• 6.0.6001.18000 (Windows Vista SP1)
-• 6.0.6002.18005 (Windows Vista SP2)
-• 6.0.6002.19214 (Windows Vista SP2 with KB3003743 GDR)
-• 6.0.6002.23521 (Windows Vista SP2 with KB3003743 LDR)
-• 6.1.X.X (Windows 7 / Server 2008 R2)
-• 6.1.7600.16385 (Windows 7)
-• 6.1.7601.17514 (Windows 7 SP1)
-• 6.1.7601.18540 (Windows 7 SP1 with KB2984972 GDR)
-• 6.1.7601.22750 (Windows 7 SP1 with KB2984972 LDR)
-• 6.1.7601.18637 (Windows 7 SP1 with KB3003743 GDR)
-• 6.1.7601.22843 (Windows 7 SP1 with KB3003743 LDR)
-• 6.2.8102.0 (Windows 8 Developer Preview)
-• 6.2.8250.0 (Windows 8 Consumer Preview)
-• 6.2.8400.0 (Windows 8 Release Preview)
-• 6.2.9200.16384 (Windows 8 / Server 2012)
-• 6.2.9200.17048 (Windows 8 with KB2973501 GDR)
-• 6.2.9200.21166 (Windows 8 with KB2973501 LDR)
-• 6.3.9431.0 (Windows 8.1 Preview)
-• 6.3.9600.16384 (Windows 8.1 / Server 2012 R2)
-• 6.3.9600.17095 (Windows 8.1 with KB2959626)
-• 6.3.9600.17415 (Windows 8.1 with KB3000850)
-• 6.4.9841.0 (Windows 10 Technical Preview)
-• 6.4.9860.0 (Windows 10 Technical Preview Update 1)
-• 6.4.9879.0 (Windows 10 Technical Preview Update 2)
-
-Confirmed working on:
-• Windows Vista Starter (x86 - Service Pack 1 and higher)
-• Windows Vista Home Basic (x86 - Service Pack 1 and higher)
-• Windows Vista Home Premium (x86 - Service Pack 1 and higher)
-• Windows Vista Business (x86 - Service Pack 1 and higher)
-• Windows Vista Enterprise (x86 - Service Pack 1 and higher)
-• Windows Vista Ultimate (x86 - Service Pack 1 and higher)
-• Windows 7 Starter
-• Windows 7 Home Basic
-• Windows 7 Home Premium
-• Windows 7 Professional
-• Windows 7 Enterprise
-• Windows 7 Ultimate
-• Windows 8 Developer Preview
-• Windows 8 Consumer Preview
-• Windows 8 Release Preview
-• Windows 8
-• Windows 8 Single Language
-• Windows 8 Pro
-• Windows 8 Enterprise
-• Windows 8.1 Preview
-• Windows 8.1
-• Windows 8.1 Single Language
-• Windows 8.1 Pro
-• Windows 8.1 Enterprise
-• Windows 10 Technical Preview
-
-Working partially:
-• Windows Vista Starter RTM x86 (termsrv.dll 6.0.6000.16386 : RDP works, but termsrv.dll crashes on logon attempt)
-
-Installation instructions:
-1. Download latest release binaries and unpack files
-2. Run Command Prompt (cmd) as administrator
-3. Change directory to where you extracted the files
-4. Type install.bat and press Enter
-5. See command output for details
-
-To uninstall:
-1. Run Command Prompt as administrator
-2. Change directory to where you extracted the files
-3. Type uninstall.bat and press Enter
-4. See command output for details
+# RDP Wrapper Library by Stas'M + +[![Telegram](https://img.shields.io/badge/chat-Telegram-blue.svg)](https://t.me/rdpwrap) +![Environment](https://img.shields.io/badge/Windows-Vista,%207,%208,%2010-brightgreen.svg) +[![Release](https://img.shields.io/github/release/stascorp/rdpwrap.svg)](https://github.com/stascorp/rdpwrap/releases) +![License](https://img.shields.io/github/license/stascorp/rdpwrap.svg) +![Downloads](https://img.shields.io/github/downloads/stascorp/rdpwrap/latest/total.svg) +![TotalDownloads](https://img.shields.io/github/downloads/stascorp/rdpwrap/total.svg) + +The goal of this project is to enable Remote Desktop Host support and concurrent RDP sessions on reduced functionality systems for home usage. + +RDP Wrapper works as a layer between Service Control Manager and Terminal Services, so the original termsrv.dll file remains untouched. Also this method is very strong against Windows Update. + +[pVistaST]: http://stascorp.com/images/rdpwrap/pVistaST.jpg +[pVistaHB]: http://stascorp.com/images/rdpwrap/pVistaHB.jpg +[pWin7ST]: http://stascorp.com/images/rdpwrap/pWin7ST.jpg +[pWin7HB]: http://stascorp.com/images/rdpwrap/pWin7HB.jpg +[pWin8DP]: http://stascorp.com/images/rdpwrap/pWin8DP.jpg +[pWin8CP]: http://stascorp.com/images/rdpwrap/pWin8CP.jpg +[pWin8RP]: http://stascorp.com/images/rdpwrap/pWin8RP.jpg +[pWin8]: http://stascorp.com/images/rdpwrap/pWin8.jpg +[pWin81P]: http://stascorp.com/images/rdpwrap/pWin81P.jpg +[pWin81]: http://stascorp.com/images/rdpwrap/pWin81.jpg +[pWin10TP]: http://stascorp.com/images/rdpwrap/pWin10TP.jpg +[pWin10PTP]: http://stascorp.com/images/rdpwrap/pWin10PTP.jpg +[pWin10]: http://stascorp.com/images/rdpwrap/pWin10.jpg + +[fVistaST]: http://stascorp.com/images/rdpwrap/VistaST.png +[fVistaHB]: http://stascorp.com/images/rdpwrap/VistaHB.png +[fWin7ST]: http://stascorp.com/images/rdpwrap/Win7ST.png +[fWin7HB]: http://stascorp.com/images/rdpwrap/Win7HB.png +[fWin8DP]: http://stascorp.com/images/rdpwrap/Win8DP.png +[fWin8CP]: http://stascorp.com/images/rdpwrap/Win8CP.png +[fWin8RP]: http://stascorp.com/images/rdpwrap/Win8RP.png +[fWin8]: http://stascorp.com/images/rdpwrap/Win8.png +[fWin81P]: http://stascorp.com/images/rdpwrap/Win81P.png +[fWin81]: http://stascorp.com/images/rdpwrap/Win81.png +[fWin10TP]: http://stascorp.com/images/rdpwrap/Win10TP.png +[fWin10PTP]: http://stascorp.com/images/rdpwrap/Win10PTP.png +[fWin10]: http://stascorp.com/images/rdpwrap/Win10.png + +| NT Version | Screenshots | +| ------------- | ----------- | +| Windows Vista | [![Windows Vista Starter][pVistaST]][fVistaST] [![Windows Vista Home Basic][pVistaHB]][fVistaHB] | +| Windows 7 | [![Windows 7 Starter][pWin7ST]][fWin7ST] [![Windows 7 Home Basic][pWin7HB]][fWin7HB] | +| Windows 8 | [![Windows 8 Developer Preview][pWin8DP]][fWin8DP] [![Windows 8 Consumer Preview][pWin8CP]][fWin8CP] [![Windows 8 Release Preview][pWin8RP]][fWin8RP] [![Windows 8][pWin8]][fWin8] | +| Windows 8.1 | [![Windows 8.1 Preview][pWin81P]][fWin81P] [![Windows 8.1][pWin81]][fWin81] | +| Windows 10 | [![Windows 10 Technical Preview][pWin10TP]][fWin10TP] [![Windows 10 Pro Technical Preview][pWin10PTP]][fWin10PTP] [![Windows 10][pWin10]][fWin10] | +--- +[WinPPE]: http://forums.mydigitallife.info/threads/39411-Windows-Product-Policy-Editor + +This solution was inspired by [Windows Product Policy Editor][WinPPE], big thanks to **kost** :) + +— binarymaster + +### Attention: +It's recommended to have original termsrv.dll file with the RDP Wrapper installation. If you have modified it before with other patchers, it may become unstable and crash in any moment. + +### Information: +- Source code is available, so you can build it on your own +- RDP Wrapper does not patch termsrv.dll, it loads termsrv with different parameters +- RDPWInst and RDPChecker can be redistributed without development folder and batch files +- RDPWInst can be used for unattended installation / deployment +- Windows 2000, XP and Server 2003 will not be supported + +### Key features: +- RDP host server on any Windows edition beginning from Vista +- Console and remote sessions at the same time +- Using the same user simultaneously for local and remote logon (see configuration app) +- Up to [15 concurrent sessions](https://github.com/stascorp/rdpwrap/issues/192) (the actual limitation depends on your hardware and OS version) +- Console and RDP session shadowing (using [Task Manager in Windows 7](http://cdn.freshdesk.com/data/helpdesk/attachments/production/1009641577/original/remote_control.png?1413476051) and lower, and [Remote Desktop Connection in Windows 8](http://woshub.com/rds-shadow-how-to-connect-to-a-user-session-in-windows-server-2012-r2/) and higher) +- Full [multi-monitor support](https://github.com/stascorp/rdpwrap/issues/163) for RDP host +- ...and if you find a new feature not listed here, [tell us](https://github.com/stascorp/rdpwrap/issues/new) ;) + +### Porting to other platforms: +- **ARM** for Windows RT (see links below) +- **IA-64** for Itanium-based Windows Server? *Well, I have no idea* :) + +### Building the binaries: +- **x86 Delphi version** can be built with *Embarcadero RAD Studio 2010* +- **x86/x64 C++ version** can be built with *Microsoft Visual Studio 2013* + +[andrewblock]: http://web.archive.org/web/20150810054558/http://andrewblock.net/enable-remote-desktop-on-windows-8-core/ +[mydigitallife]: http://forums.mydigitallife.info/threads/55935-RDP-Wrapper-Library-(works-with-Windows-8-1-Basic) +[xda-dev]: http://forum.xda-developers.com/showthread.php?t=2093525&page=3 +[yt-updating]: http://www.youtube.com/watch?v=W9BpbEt1yJw +[yt-offsets]: http://www.youtube.com/watch?v=FiD86tmRBtk + +### Links: +- Official GitHub repository: +
https://github.com/stascorp/rdpwrap/ +- Official Telegram chat: +
https://t.me/rdpwrap +- Active discussion in the comments here: +
[Enable remote desktop on Windows 8 core / basic - Andrew Block .net][andrewblock] +- MDL Projects and Applications thread here: +
[RDP Wrapper Library (works with Windows 8.1 Basic)][mydigitallife] +- Some ideas about porting to ARM for Windows RT (post #23): +
[\[Q\] Mod Windows RT to enable Remote Desktop][xda-dev] +- Adding «Remote Desktop Users» group: +
http://superuser.com/questions/680572/ + +#### Tutorial videos: +- [~~Updating RDP Wrapper INI file manually~~][yt-updating] (now use installer to update INI file) +- [How to find offsets for new termsrv.dll versions][yt-offsets] + +### Files in release package: + +| File name | Description | +| --------- | ----------- | +| `RDPWInst.exe` | RDP Wrapper Library installer/uninstaller | +| `RDPCheck.exe` | Local RDP Checker (you can check the RDP is working) | +| `RDPConf.exe` | RDP Wrapper Configuration | +| `install.bat` | Quick install batch file | +| `uninstall.bat` | Quick uninstall batch file | +| `update.bat` | Quick update batch file | + +### Frequently Asked Questions + +> Where can I download the installer or binaries? + +In the [GitHub Releases](https://github.com/stascorp/rdpwrap/releases) section. + +> Is it legal to use this application? + +There is no definitive answer, see [this discussion](https://github.com/stascorp/rdpwrap/issues/26). + +> The installer tries to access the Internet, is it normal behaviour? + +Yes, it works in online mode by default. You may disable it by removing `-o` flag in the `install.bat` file. + +> What is online install mode? + +Online install mode introduced in version 1.6.1. When you installing RDP Wrapper first time using this mode, it will download [latest INI file](https://github.com/stascorp/rdpwrap/blob/master/res/rdpwrap.ini) from GitHub. See [this discussion](https://github.com/stascorp/rdpwrap/issues/132). + +> What is INI file and why we need it? + +INI file was introduced in version 1.5. It stores system configuration for RDP Wrapper — general wrapping settings, binary patch codes, and per build specific data. When new `termsrv.dll` build comes out, developer adds support for it by updating INI file in repository. + +> Config Tool reports version 1.5, but I installed higher version. What's the matter? + +Beginning with version 1.5 the `rdpwrap.dll` is not updated anymore, since all settings are stored in INI file. Deal with it. + +> Config Tool shows `[not supported]` and RDP doesn't work. What can I do? + +Make sure you're connected to the Internet and run `update.bat`. + +> Update doesn't help, it still shows `[not supported]`. + +Visit [issues](https://github.com/stascorp/rdpwrap/issues) section, and check whether your `termsrv.dll` build is listed here. If you can't find such issue, create a new — specify your build version for adding to support. + +> Why `RDPCheck` doesn't allow to change resolution and other settings? + +`RDPCheck` is a very simple application and only for testing purposes. You need to use Microsoft Remote Desktop Client (`mstsc.exe`) if you want to customize the settings. You can use `127.0.0.1` or `127.0.0.2` address for loopback connection. + +### Known issues: +- Beginning with Windows 8 **on tablet PCs** inactive sessions will be logged out by system - [more info](https://github.com/stascorp/rdpwrap/issues/37) +- Beginning with Windows 10 you can accidentally lock yourself from PC - [more info](https://github.com/stascorp/rdpwrap/issues/50) +- Beginning with the Creators Update for Windows 10 Home, RDP Wrapper will no longer work, claiming that the listener is `[not listening]` because of `rfxvmt.dll` is missing - [more info](https://github.com/stascorp/rdpwrap/issues/194#issuecomment-323564111), [download links](https://github.com/stascorp/rdpwrap/issues/194#issuecomment-325627235) +- Terminal Service does not start after installing some updates or "Access Denied" issue - [#215](https://github.com/stascorp/rdpwrap/issues/215), [#101](https://github.com/stascorp/rdpwrap/issues/101) +- RDP Wrapper does not work with RemoteFX enabled hosts - [#127](https://github.com/stascorp/rdpwrap/issues/127), [#208](https://github.com/stascorp/rdpwrap/issues/208), [#216](https://github.com/stascorp/rdpwrap/issues/216) +- RDP works, but termsrv.dll crashes on logon attempt - Windows Vista Starter RTM x86 (termsrv.dll `6.0.6000.16386`) +- If Terminal Services hangs at startup, try to add **`rdpwrap.dll`** to antivirus exclusions. Also try to isolate RDP Wrapper from other shared services by the command: +
`sc config TermService type= own` +- RDP Wrapper can be removed by AVG Free Antivirus and [Norton Antivirus](https://github.com/stascorp/rdpwrap/issues/191) - first make sure you downloaded [official release](https://github.com/stascorp/rdpwrap/releases) from GitHub, then add it to exclusions. + +--- + +### Change log: + +#### 2017.12.27 +- Version 1.6.2 +- Installer updated +- Include updated INI file for latest Windows builds +- Added check for supported Windows versions ([#155](https://github.com/stascorp/rdpwrap/issues/155)) +- Added feature to take INI file from current directory ([#300](https://github.com/stascorp/rdpwrap/issues/300)) +- Added feature to restore rfxvmt.dll (missing in Windows 10 Home [#194](https://github.com/stascorp/rdpwrap/issues/194)) +- RDP Config updated +- Added feature to allow custom start programs ([#13 (comment)](https://github.com/stascorp/rdpwrap/issues/13#issuecomment-77651843)) +- MSI installation package added ([#14](https://github.com/stascorp/rdpwrap/issues/14)) + +#### 2016.08.01 +- Version 1.6.1 +- Include updated INI file for latest Windows builds +- Installer updated +- Added online install mode +- Added feature to keep settings on uninstall +- RDP Config updated +- Fixed update firewall rule on RDP port change +- Added feature to hide users on logon + +#### 2015.08.12 +- Version 1.6 +- Added support for Windows 10 +- INI file has smaller size now - all comments are moved to KB file +- Installer updated +- Added workaround for 1056 error (although it isn't an error) +- Added update support to installer +- Newest RDPClip versions are included with installer +- RDP Checker updated +- Changed connect IP to 127.0.0.2 +- Updated some text messages +- RDP Config updated +- Added all possible shadowing modes +- Also it will write settings to the group policy + +#### 2014.12.11 +- Version 1.5 +- Added INI config support +- Configuration is stored in INI file now +- We can extend version support without building new binaries +- Added support for Windows 8.1 with KB3000850 +- Added support for Windows 10 Technical Preview Update 2 +- Installer updated +- RDP Config updated +- Diagnostics feature added to RDP Config + +#### 2014.11.14 +- Version 1.4 +- Added support for Windows 10 Technical Preview Update 1 +- Added support for Windows Vista SP2 with KB3003743 +- Added support for Windows 7 SP1 with KB3003743 +- Added new RDP Configuration Program + +#### 2014.10.21 +- Installer updated +- Added feature to install RDP Wrapper to System32 directory +- Fixed issue in the installer - NLA setting now remains unchanged +- Local RDP Checker updated +- SecurityLayer and UserAuthentification values changed on check start +- RDP Checker restores values on exit + +#### 2014.10.20 +- Version 1.3 +- Added support for Windows 10 Technical Preview +- Added support for Windows 7 with KB2984972 +- Added support for Windows 8 with KB2973501 +- Added extended support for Windows Vista (SP0, SP1 and SP2) +- Added extended support for Windows 7 (SP0 and SP1) +- Some improvements in the source code +- Installer updated to v2.2 +- Fixed installation bug in Vista x64 (wrong expand path) +- Local RDP Checker updated +- Added description to error 0x708 + +#### 2014.07.26 +- Version 1.2 +- Added support for Windows 8 Developer Preview +- Added support for Windows 8 Consumer Preview +- Added support for Windows 8 Release Preview +- Added support for Windows 8.1 Preview +- Added support for Windows 8.1 +- More details you will see in the source code +- Installer updated to v2.1 + +#### 2013.12.09 +- C++ port of RDP Wrapper was made by Fusix +- x64 architecture is supported now +- Added new command line installer v2.0 +- Added local RDP checker +- Source code (C++ port, installer 2.0, local RDP checker) is also included + +#### 2013.10.25 +- Version 1.1 source code is available + +#### 2013.10.22 +- Version 1.1 +- Stable release +- Improved wrapper (now it can wrap internal unexported termsrv.dll SL Policy function) +- Added support for Windows 8 Single Language (tested on Acer Tablet PC with Intel Atom Z2760) + +#### 2013.10.19 +- Version 1.0 +- First [beta] version +- Basic SL Policy wrapper + +--- + +#### Supported Terminal Services versions: +- 6.0.X.X (Windows Vista / Server 2008) +- 6.0.6000.16386 (Windows Vista) +- 6.0.6001.18000 (Windows Vista SP1) +- 6.0.6002.18005 (Windows Vista SP2) +- 6.0.6002.19214 (Windows Vista SP2 with KB3003743 GDR) +- 6.0.6002.23521 (Windows Vista SP2 with KB3003743 LDR) +- 6.1.X.X (Windows 7 / Server 2008 R2) +- 6.1.7600.16385 (Windows 7) +- 6.1.7600.20890 (Windows 7 with KB2479710) +- 6.1.7600.21316 (Windows 7 with KB2750090) +- 6.1.7601.17514 (Windows 7 SP1) +- 6.1.7601.21650 (Windows 7 SP1 with KB2479710) +- 6.1.7601.21866 (Windows 7 SP1 with KB2647409) +- 6.1.7601.22104 (Windows 7 SP1 with KB2750090) +- 6.1.7601.18540 (Windows 7 SP1 with KB2984972 GDR) +- 6.1.7601.22750 (Windows 7 SP1 with KB2984972 LDR) +- 6.1.7601.18637 (Windows 7 SP1 with KB3003743 GDR) +- 6.1.7601.22843 (Windows 7 SP1 with KB3003743 LDR) +- 6.1.7601.23403 (Windows 7 SP1 with KB3125574) +- 6.1.7601.24234 (Windows 7 SP1 with KB4462923) +- 6.2.8102.0 (Windows 8 Developer Preview) +- 6.2.8250.0 (Windows 8 Consumer Preview) +- 6.2.8400.0 (Windows 8 Release Preview) +- 6.2.9200.16384 (Windows 8 / Server 2012) +- 6.2.9200.17048 (Windows 8 with KB2973501 GDR) +- 6.2.9200.21166 (Windows 8 with KB2973501 LDR) +- 6.3.9431.0 (Windows 8.1 Preview) +- 6.3.9600.16384 (Windows 8.1 / Server 2012 R2) +- 6.3.9600.17095 (Windows 8.1 with KB2959626) +- 6.3.9600.17415 (Windows 8.1 with KB3000850) +- 6.3.9600.18692 (Windows 8.1 with KB4022720) +- 6.3.9600.18708 (Windows 8.1 with KB4025335) +- 6.3.9600.18928 (Windows 8.1 with KB4088876) +- 6.3.9600.19093 (Windows 8.1 with KB4343891) +- 6.4.9841.0 (Windows 10 Technical Preview) +- 6.4.9860.0 (Windows 10 Technical Preview Update 1) +- 6.4.9879.0 (Windows 10 Technical Preview Update 2) +- 10.0.9926.0 (Windows 10 Pro Technical Preview) +- 10.0.10041.0 (Windows 10 Pro Technical Preview Update 1) +- 10.0.10240.16384 (Windows 10 RTM) +- 10.0.10586.0 (Windows 10 TH2 Release 151029-1700) +- 10.0.10586.589 (Windows 10 TH2 Release 160906-1759 with KB3185614) +- 10.0.11082.1000 (Windows 10 RS1 Release 151210-2021) +- 10.0.11102.1000 (Windows 10 RS1 Release 160113-1800) +- 10.0.14251.1000 (Windows 10 RS1 Release 160124-1059) +- 10.0.14271.1000 (Windows 10 RS1 Release 160218-2310) +- 10.0.14279.1000 (Windows 10 RS1 Release 160229-1700) +- 10.0.14295.1000 (Windows 10 RS1 Release 160318-1628) +- 10.0.14300.1000 (Windows Server 2016 Technical Preview 5) +- 10.0.14316.1000 (Windows 10 RS1 Release 160402-2227) +- 10.0.14328.1000 (Windows 10 RS1 Release 160418-1609) +- 10.0.14332.1001 (Windows 10 RS1 Release 160422-1940) +- 10.0.14342.1000 (Windows 10 RS1 Release 160506-1708) +- 10.0.14352.1002 (Windows 10 RS1 Release 160522-1930) +- 10.0.14366.0 (Windows 10 RS1 Release 160610-1700) +- 10.0.14367.0 (Windows 10 RS1 Release 160613-1700) +- 10.0.14372.0 (Windows 10 RS1 Release 160620-2342) +- 10.0.14379.0 (Windows 10 RS1 Release 160627-1607) +- 10.0.14383.0 (Windows 10 RS1 Release 160701-1839) +- 10.0.14385.0 (Windows 10 RS1 Release 160706-1700) +- 10.0.14388.0 (Windows 10 RS1 Release 160709-1635) +- 10.0.14393.0 (Windows 10 RS1 Release 160715-1616) +- 10.0.14393.1198 (Windows 10 RS1 Release Sec 170427-1353 with KB4019472) +- 10.0.14393.1737 (Windows 10 RS1 Release Inmarket 170914-1249 with KB4041691) +- 10.0.14393.2457 (Windows 10 RS1 Release Inmarket 180822-1743 with KB4343884) +- 10.0.14901.1000 (Windows 10 RS Pre-Release 160805-1700) +- 10.0.14905.1000 (Windows 10 RS Pre-Release 160811-1739) +- 10.0.14915.1000 (Windows 10 RS Pre-Release 160826-1902) +- 10.0.14926.1000 (Windows 10 RS Pre-Release 160910-1529) +- 10.0.14931.1000 (Windows 10 RS Pre-Release 160916-1700) +- 10.0.14936.1000 (Windows 10 RS Pre-Release 160923-1700) +- 10.0.14942.1000 (Windows 10 RS Pre-Release 161003-1929) +- 10.0.14946.1000 (Windows 10 RS Pre-Release 161007-1700) +- 10.0.14951.1000 (Windows 10 RS Pre-Release 161014-1700) +- 10.0.14955.1000 (Windows 10 RS Pre-Release 161020-1700) +- 10.0.14959.1000 (Windows 10 RS Pre-Release 161026-1700) +- 10.0.14965.1001 (Windows 10 RS Pre-Release 161104-1700) +- 10.0.14971.1000 (Windows 10 RS Pre-Release 161111-1700) +- 10.0.14986.1000 (Windows 10 Build 160101.0800) +- 10.0.14997.1001 (Windows 10 Build 160101.0800) +- 10.0.15002.1001 (Windows 10 Build 160101.0800) +- 10.0.15007.1000 (Windows 10 Build 160101.0800) +- 10.0.15014.1000 (Windows 10 Build 160101.0800) +- 10.0.15019.1000 (Windows 10 RS Pre-Release 170121-1513) +- 10.0.15025.1000 (Windows 10 RS Pre-Release 170127-1750) +- 10.0.15031.0 (Windows 10 RS2 Release 170204-1546) +- 10.0.15042.0 (Windows 10 RS2 Release 170219-2329) +- 10.0.15046.0 (Windows 10 Build 160101.0800) +- 10.0.15048.0 (Windows 10 Build 160101.0800) +- 10.0.15055.0 (Windows 10 Build 160101.0800) +- 10.0.15058.0 (Windows 10 Build 160101.0800) +- 10.0.15061.0 (Windows 10 Build 160101.0800) +- 10.0.15063.0 (Windows 10 Build 160101.0800) +- 10.0.15063.296 (Windows 10 Build 160101.0800) +- 10.0.15063.994 (Windows 10 Build 160101.0800) +- 10.0.15063.1155 (Windows 10 Build 160101.0800) +- 10.0.16179.1000 (Windows 10 Build 160101.0800) +- 10.0.16184.1001 (Windows 10 Build 160101.0800) +- 10.0.16199.1000 (Windows 10 Build 160101.0800) +- 10.0.16215.1000 (Windows 10 Build 160101.0800) +- 10.0.16232.1000 (Windows 10 Build 160101.0800) +- 10.0.16237.1001 (Windows 10 Build 160101.0800) +- 10.0.16241.1001 (Windows 10 Build 160101.0800) +- 10.0.16251.0 (Windows 10 Build 160101.0800) +- 10.0.16251.1000 (Windows 10 Build 160101.0800) +- 10.0.16257.1 (Windows 10 Build 160101.0800) +- 10.0.16257.1000 (Windows 10 Build 160101.0800) +- 10.0.16273.1000 (Windows 10 Build 160101.0800) +- 10.0.16275.1000 (Windows 10 Build 160101.0800) +- 10.0.16278.1000 (Windows 10 Build 160101.0800) +- 10.0.16281.1000 (Windows 10 Build 160101.0800) +- 10.0.16288.1 (Windows 10 Build 160101.0800) +- 10.0.16291.0 (Windows 10 Build 160101.0800) +- 10.0.16294.1 (Windows 10 Build 160101.0800) +- 10.0.16296.0 (Windows 10 Build 160101.0800) +- 10.0.16299.0 (Windows 10 Build 160101.0800) +- 10.0.16299.15 (Windows 10 Build 160101.0800) +- 10.0.16353.1000 (Windows 10 Build 160101.0800) +- 10.0.16362.1000 (Windows 10 Build 160101.0800) +- 10.0.17004.1000 (Windows 10 Build 160101.0800) +- 10.0.17017.1000 (Windows 10 Build 160101.0800) +- 10.0.17025.1000 (Windows 10 Build 160101.0800) +- 10.0.17035.1000 (Windows 10 Build 160101.0800) +- 10.0.17046.1000 (Windows 10 Build 160101.0800) +- 10.0.17063.1000 (Windows 10 Build 160101.0800) +- 10.0.17115.1 (Windows 10 Build 160101.0800) +- 10.0.17128.1 (Windows 10 Build 160101.0800) +- 10.0.17133.1 (Windows 10 Build 160101.0800) +- 10.0.17134.1 (Windows 10 Build 160101.0800) +- 10.0.17723.1000 (Windows 10 Build 160101.0800) +- 10.0.17763.1 (Windows 10 Build 160101.0800) + +#### Confirmed working on: +- Windows Vista Starter (x86 - Service Pack 1 and higher) +- Windows Vista Home Basic +- Windows Vista Home Premium +- Windows Vista Business +- Windows Vista Enterprise +- Windows Vista Ultimate +- Windows Server 2008 +- Windows 7 Starter +- Windows 7 Home Basic +- Windows 7 Home Premium +- Windows 7 Professional +- Windows 7 Enterprise +- Windows 7 Ultimate +- Windows Server 2008 R2 +- Windows 8 Developer Preview +- Windows 8 Consumer Preview +- Windows 8 Release Preview +- Windows 8 +- Windows 8 Single Language +- Windows 8 Pro +- Windows 8 Enterprise +- Windows Server 2012 +- Windows 8.1 Preview +- Windows 8.1 +- Windows 8.1 Connected (with Bing) +- Windows 8.1 Single Language +- Windows 8.1 Connected Single Language (with Bing) +- Windows 8.1 Pro +- Windows 8.1 Enterprise +- Windows Server 2012 R2 +- Windows 10 Technical Preview +- Windows 10 Pro Technical Preview +- Windows 10 Home +- Windows 10 Home Single Language +- Windows 10 Pro +- Windows 10 Enterprise +- Windows Server 2016 Technical Preview + +Installation instructions: +- Download latest release binaries and unpack files +- Right-click on **`install.bat`** and select Run as Administrator +- See command output for details + +To update INI file: +- Right-click on **`update.bat`** and select Run as Administrator +- See command output for details + +To uninstall: +- Go to the directory where you extracted the files +- Right-click on **`uninstall.bat`** and select Run as Administrator +- See command output for details diff --git a/bin/install.bat b/bin/install.bat new file mode 100644 index 0000000..5e6ed34 --- /dev/null +++ b/bin/install.bat @@ -0,0 +1,14 @@ +@echo off +if not exist "%~dp0RDPWInst.exe" goto :error +"%~dp0RDPWInst" -i -o +echo ______________________________________________________________ +echo. +echo You can check RDP functionality with RDPCheck program. +echo Also you can configure advanced settings with RDPConf program. +echo. +goto :anykey +:error +echo [-] Installer executable not found. +echo Please extract all files from the downloaded package or check your anti-virus. +:anykey +pause diff --git a/bin/uninstall.bat b/bin/uninstall.bat new file mode 100644 index 0000000..1c72289 --- /dev/null +++ b/bin/uninstall.bat @@ -0,0 +1,10 @@ +@echo off +if not exist "%~dp0RDPWInst.exe" goto :error +"%~dp0RDPWInst" -u +echo. +goto :anykey +:error +echo [-] Installer executable not found. +echo Please extract all files from the downloaded package or check your anti-virus. +:anykey +pause diff --git a/bin/update.bat b/bin/update.bat new file mode 100644 index 0000000..f3874aa --- /dev/null +++ b/bin/update.bat @@ -0,0 +1,10 @@ +@echo off +if not exist "%~dp0RDPWInst.exe" goto :error +"%~dp0RDPWInst" -w +echo. +goto :anykey +:error +echo [-] Installer executable not found. +echo Please extract all files from the downloaded package or check your anti-virus. +:anykey +pause diff --git a/res/RDPWInst.wxs b/res/RDPWInst.wxs new file mode 100644 index 0000000..9352ffc --- /dev/null +++ b/res/RDPWInst.wxs @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NOT Installed AND NOT WIX_UPGRADE_DETECTED + REMOVE AND NOT UPGRADINGPRODUCTCODE + UPGRADINGPRODUCTCODE + + + + + diff --git a/res/build_wxs.bat b/res/build_wxs.bat new file mode 100644 index 0000000..9eeef72 --- /dev/null +++ b/res/build_wxs.bat @@ -0,0 +1,3 @@ +@echo off +"%ProgramFiles%\WiX Toolset v3.11\bin\candle" RDPWInst.wxs +"%ProgramFiles%\WiX Toolset v3.11\bin\light" RDPWInst.wixobj diff --git a/res/legacy.install.bat b/res/legacy.install.bat index a7d8de2..303cc32 100644 --- a/res/legacy.install.bat +++ b/res/legacy.install.bat @@ -50,6 +50,7 @@ if not !errorlevel!==0 ( echo [*] Setting firewall configuration... reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f netsh advfirewall firewall add rule name="Remote Desktop" dir=in protocol=tcp localport=3389 profile=any action=allow +netsh advfirewall firewall add rule name="Remote Desktop" dir=in protocol=udp localport=3389 profile=any action=allow echo [*] Looking for TermService PID... tasklist /SVC /FI "SERVICES eq TermService" | find "PID" /V echo. @@ -88,4 +89,4 @@ echo net start Service2 echo etc. goto END -:END \ No newline at end of file +:END diff --git a/res/rdpclip-x64.exe b/res/rdpclip-x64.exe deleted file mode 100644 index bc2fcd4..0000000 Binary files a/res/rdpclip-x64.exe and /dev/null differ diff --git a/res/rdpclip-x86.exe b/res/rdpclip-x86.exe deleted file mode 100644 index 4b9bb5b..0000000 Binary files a/res/rdpclip-x86.exe and /dev/null differ diff --git a/res/rdpwrap-arm-kb.ini b/res/rdpwrap-arm-kb.ini new file mode 100644 index 0000000..7376c9a --- /dev/null +++ b/res/rdpwrap-arm-kb.ini @@ -0,0 +1,172 @@ +; RDP Wrapper Library configuration +; for Windows RT (ARMv7) + +; This is experimental file + +[Main] +Updated=2016-03-07 +LogFile=\rdpwrap.txt + +[SLPolicy] +TerminalServices-RemoteConnectionManager-AllowRemoteConnections=1 +TerminalServices-RemoteConnectionManager-AllowMultipleSessions=1 +TerminalServices-RemoteConnectionManager-AllowAppServerMode=1 +TerminalServices-RemoteConnectionManager-AllowMultimon=1 +TerminalServices-RemoteConnectionManager-MaxUserSessions=0 +TerminalServices-RemoteConnectionManager-ce0ad219-4670-4988-98fb-89b14c2f072b-MaxSessions=0 +TerminalServices-RemoteConnectionManager-45344fe7-00e6-4ac6-9f01-d01fd4ffadfb-MaxSessions=2 +TerminalServices-RDP-7-Advanced-Compression-Allowed=1 +TerminalServices-RemoteConnectionManager-45344fe7-00e6-4ac6-9f01-d01fd4ffadfb-LocalOnly=0 +TerminalServices-RemoteConnectionManager-8dc86f1d-9969-4379-91c1-06fe1dc60575-MaxSessions=1000 +TerminalServices-DeviceRedirection-Licenses-TSEasyPrintAllowed=1 +TerminalServices-DeviceRedirection-Licenses-PnpRedirectionAllowed=1 +TerminalServices-DeviceRedirection-Licenses-TSMFPluginAllowed=1 +TerminalServices-RemoteConnectionManager-UiEffects-DWMRemotingAllowed=1 + +[PatchCodes] +Zero=00 +bjmp5=05E0 +CDefPolicy_Query_r3_r5=40F20013C5F8203305E0 +CDefPolicy_Query_r3_r0=40F20013C0F8203305E0 + +[6.2.9200.16384] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10066DCC MOV.W R3, #0x11C +; .text:10066DD0 STR R3, [SP,#0x16C+var_13C] +; .text:10066DD2 LDR R3, =__imp_GetVersionExW +; .text:10066DD4 MOVS R4, #1 <- 0 +; .text:10066DD6 ADD R0, SP, #0x16C+var_13C +; .text:10066DD8 LDR R3, [R3] +SingleUserPatch.arm=1 +SingleUserOffset.arm=66DD4 +SingleUserCode.arm=Zero +; Patch CDefPolicy::Query +; Original +; .text:10059164 LDR.W R2, [R5,#0x324] ; D5 F8 24 23 ; [R5,#0x324] -> R2 +; .text:10059168 LDR.W R3, [R5,#0x320] ; D5 F8 20 33 ; [R5,#0x320] -> R3 +; .text:1005916C CMP R2, R3 ; 9A 42 ; compare +; .text:1005916E BNE loc_1005917A ; 04 D1 ; jump if (R2 != R3) +; Changed +; .text:10059164 MOVW R3, #0x100 ; 40 F2 00 13 ; 0x100 -> R3 +; .text:10059168 STR.W R3, [R5,#0x320] ; C5 F8 20 33 ; R3 -> [R5,#0x320] +; .text:1005916C B loc_1005917A ; 05 E0 ; jump +; .text:1005916E BNE loc_1005917A ; 04 D1 ; / never executed / +DefPolicyPatch.arm=1 +DefPolicyOffset.arm=59164 +DefPolicyCode.arm=CDefPolicy_Query_r3_r5 +; Hook SLGetWindowsInformationDWORDWrapper +SLPolicyInternal.arm=1 +SLPolicyOffset.arm=5F934 +SLPolicyFunc.arm=New_Win8SL + +[6.3.9600.16384] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:1008E6C2 BL _IsLicenseTypeLocalOnly_CSLQuery__SAJAAU_GUID__PAH_Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:1008E6C6 CMP R0, #0 +; .text:1008E6C8 BLT loc_1008E6DA +; .text:1008E6CA LDR R3, [SP,#0x20+var_14] +; .text:1008E6CC CBZ R3, loc_1008E6DA ; 2B B1 ; jump if (R3 == 0) +; Changed +; .text:1008E6CC B loc_1008E6DA ; 05 E0 ; jump +LocalOnlyPatch.arm=1 +LocalOnlyOffset.arm=8E6CC +LocalOnlyCode.arm=bjmp5 +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10069E74 MOV.W R3, #0x11C +; .text:10069E78 STR R3, [SP,#0x164+var_13C] +; .text:10069E7A LDR R3, =__imp_GetVersionExW +; .text:10069E7C MOVS R4, #1 <- 0 +; .text:10069E7E ADD R0, SP, #0x164+var_13C +; .text:10069E80 LDR R3, [R3] +SingleUserPatch.arm=1 +SingleUserOffset.arm=69E7C +SingleUserCode.arm=Zero +; Patch CDefPolicy::Query +; Original +; .text:10064D54 LDR.W R2, [R0,#0x324] ; D0 F8 24 23 ; [R0,#0x324] -> R2 +; .text:10064D58 LDR.W R3, [R0,#0x320] ; D0 F8 20 33 ; [R0,#0x320] -> R3 +; .text:10064D5C CMP R2, R3 ; 9A 42 ; compare +; .text:10064D5E BNE loc_10064D6A ; 04 D1 ; jump if (R2 != R3) +; Changed +; .text:10064D54 MOVW R3, #0x100 ; 40 F2 00 13 ; 0x100 -> R3 +; .text:10064D58 STR.W R3, [R0,#0x320] ; C0 F8 20 33 ; R3 -> [R0,#0x320] +; .text:10064D5C B loc_10064D6A ; 05 E0 ; jump +; .text:10064D5E BNE loc_10064D6A ; 04 D1 ; / never executed / +DefPolicyPatch.arm=1 +DefPolicyOffset.arm=64D54 +DefPolicyCode.arm=CDefPolicy_Query_r3_r0 +; Hook CSLQuery::Initialize +SLInitHook.arm=1 +SLInitOffset.arm=32188 +SLInitFunc.arm=New_CSLQuery_Initialize + +[6.3.9600.17095] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:1008E35A BL _IsLicenseTypeLocalOnly_CSLQuery__SAJAAU_GUID__PAH_Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:1008E35E CMP R0, #0 +; .text:1008E360 BLT loc_1008E372 +; .text:1008E362 LDR R3, [SP,#0x20+var_14] +; .text:1008E364 CBZ R3, loc_1008E372 ; 2B B1 ; jump if (R3 == 0) +; Changed +; .text:1008E364 B loc_1008E372 ; 05 E0 ; jump +LocalOnlyPatch.arm=1 +LocalOnlyOffset.arm=8E364 +LocalOnlyCode.arm=bjmp5 +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10069C2C MOV.W R3, #0x11C +; .text:10069C30 STR R3, [SP,#0x164+var_13C] +; .text:10069C32 LDR R3, =GetVersionExW +; .text:10069C34 MOVS R4, #1 <- 0 +; .text:10069C36 ADD R0, SP, #0x164+var_13C +; .text:10069C38 LDR R3, [R3] +SingleUserPatch.arm=1 +SingleUserOffset.arm=69C34 +SingleUserCode.arm=Zero +; Patch CDefPolicy::Query +; Original +; .text:100649E0 LDR.W R2, [R0,#0x324] ; D0 F8 24 23 ; [R0,#0x324] -> R2 +; .text:100649E4 LDR.W R3, [R0,#0x320] ; D0 F8 20 33 ; [R0,#0x320] -> R3 +; .text:100649E8 CMP R2, R3 ; 9A 42 ; compare +; .text:100649EA BNE loc_100649F6 ; 04 D1 ; jump if (R2 != R3) +; Changed +; .text:100649E0 MOVW R3, #0x100 ; 40 F2 00 13 ; 0x100 -> R3 +; .text:100649E4 STR.W R3, [R0,#0x320] ; C0 F8 20 33 ; R3 -> [R0,#0x320] +; .text:100649E8 B loc_10064D6A ; 05 E0 ; jump +; .text:100649EA BNE loc_10064D6A ; 04 D1 ; / never executed / +DefPolicyPatch.arm=1 +DefPolicyOffset.arm=649E0 +DefPolicyCode.arm=CDefPolicy_Query_r3_r0 +; Hook CSLQuery::Initialize +SLInitHook.arm=1 +SLInitOffset.arm=32E3C +SLInitFunc.arm=New_CSLQuery_Initialize + +[SLInit] +bServerSku=1 +bRemoteConnAllowed=1 +bFUSEnabled=1 +bAppServerAllowed=1 +bMultimonAllowed=1 +lMaxUserSessions=0 +ulMaxDebugSessions=0 +bInitialized=1 + +[6.3.9600.16384-SLInit] +bFUSEnabled.arm =A57E0 +lMaxUserSessions.arm =A57E4 +bAppServerAllowed.arm =A57E8 +bInitialized.arm =A57EC +bMultimonAllowed.arm =A57F0 +bServerSku.arm =A57F4 +ulMaxDebugSessions.arm=A57F8 +bRemoteConnAllowed.arm=A57FC + +[6.3.9600.17095-SLInit] +bFUSEnabled.arm =A67E0 +lMaxUserSessions.arm =A67E4 +bAppServerAllowed.arm =A67E8 +bInitialized.arm =A67EC +bMultimonAllowed.arm =A67F0 +bServerSku.arm =A67F4 +ulMaxDebugSessions.arm=A67F8 +bRemoteConnAllowed.arm=A67FC diff --git a/res/rdpwrap-ini-kb.txt b/res/rdpwrap-ini-kb.txt new file mode 100644 index 0000000..a258ab4 --- /dev/null +++ b/res/rdpwrap-ini-kb.txt @@ -0,0 +1,6289 @@ +[Main] +; Last updated date +Updated=2018-10-10 +; Address to log file (RDP Wrapper will write it, if exists) +LogFile=\rdpwrap.txt +; Hook SLPolicy API on Windows NT 6.0 +SLPolicyHookNT60=1 +; Hook SLPolicy API on Windows NT 6.1 +SLPolicyHookNT61=1 + +[SLPolicy] +; Allow Remote Connections +TerminalServices-RemoteConnectionManager-AllowRemoteConnections=1 +; Allow Multiple Sessions +TerminalServices-RemoteConnectionManager-AllowMultipleSessions=1 +; Allow Multiple Sessions (Application Server Mode) +TerminalServices-RemoteConnectionManager-AllowAppServerMode=1 +; Allow Multiple Monitors +TerminalServices-RemoteConnectionManager-AllowMultimon=1 +; Max User Sessions (0 = unlimited) +TerminalServices-RemoteConnectionManager-MaxUserSessions=0 +; Max Debug Sessions (Windows 8, 0 = unlimited) +TerminalServices-RemoteConnectionManager-ce0ad219-4670-4988-98fb-89b14c2f072b-MaxSessions=0 +; Max Sessions +; 0 - logon not possible even from console +; 1 - only one active user (console or remote) +; 2 - allow concurrent sessions +TerminalServices-RemoteConnectionManager-45344fe7-00e6-4ac6-9f01-d01fd4ffadfb-MaxSessions=2 +; Allow Advanced Compression with RDP 7 Protocol +TerminalServices-RDP-7-Advanced-Compression-Allowed=1 +; IsTerminalTypeLocalOnly = 0 +TerminalServices-RemoteConnectionManager-45344fe7-00e6-4ac6-9f01-d01fd4ffadfb-LocalOnly=0 +; Max Sessions (hard limit) +TerminalServices-RemoteConnectionManager-8dc86f1d-9969-4379-91c1-06fe1dc60575-MaxSessions=1000 +; Allow EasyPrint +TerminalServices-DeviceRedirection-Licenses-TSEasyPrintAllowed=1 +; Allow PnP Redirection +TerminalServices-DeviceRedirection-Licenses-PnpRedirectionAllowed=1 +; Allow Media Foundation plugins +TerminalServices-DeviceRedirection-Licenses-TSMFPluginAllowed=1 +; Allow DWM Remoting +TerminalServices-RemoteConnectionManager-UiEffects-DWMRemotingAllowed=1 + +[PatchCodes] +nop=90 +Zero=00 +jmpshort=EB +nopjmp=90E9 +CDefPolicy_Query_edx_ecx=BA000100008991200300005E90 +CDefPolicy_Query_eax_rcx_jmp=B80001000089813806000090EB +CDefPolicy_Query_eax_esi=B80001000089862003000090 +CDefPolicy_Query_eax_rdi=B80001000089873806000090 +CDefPolicy_Query_eax_ecx=B80001000089812003000090 +CDefPolicy_Query_eax_ecx_jmp=B800010000898120030000EB0E +CDefPolicy_Query_eax_rcx=B80001000089813806000090 +CDefPolicy_Query_edi_rcx=BF0001000089B938060000909090 + +[6.0.6000.16386] +; HOW TO search CSessionArbitrationHelper::IsSingleSessionPerUserEnabled function in IDA Pro: +; 1. Search text: CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; 2. All xrefs will point to this function (in x64 version xref points to subroutine, so you need to go one level up) +; 3. Go to first graph block and find memset, VersionInformation, call GetVersionExW, and so on + +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F320000 +; .text:6F3360B9 lea eax, [ebp+VersionInformation] +; .text:6F3360BF inc ebx <- nop +; .text:6F3360C0 push eax ; lpVersionInformation +; .text:6F3360C1 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F3360CB mov [esi], ebx +; .text:6F3360CD call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=160BF +SingleUserCode.x86=nop +; Imagebase: 7FF756E0000 +; .text:000007FF75745E38 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75745E3D mov ebx, 1 <- 0 +; .text:000007FF75745E42 mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75745E4A mov [rdi], ebx +; .text:000007FF75745E4C call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=65E3E +SingleUserCode.x64=Zero +; HOW TO search CDefPolicy::Query function in IDA Pro: +; 1. Search text: CDefPolicy::Query +; 2. All xrefs will point to this function (in x64 version xref sometimes points to subroutine, so you need to go one level up) +; 3. Go to first graph block and find cmp/jz instructions on the bottom of block + +; Patch CDefPolicy::Query +; Original +; .text:6F335CD8 cmp edx, [ecx+320h] +; .text:6F335CDE pop esi +; .text:6F335CDF jz loc_6F3426F1 +; Changed +; .text:6F335CD8 mov edx, 100h +; .text:6F335CDD mov [ecx+320h], edx +; .text:6F335CE3 pop esi +; .text:6F335CE4 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=15CD8 +DefPolicyCode.x86=CDefPolicy_Query_edx_ecx +; Original +; .text:000007FF7573C88F mov eax, [rcx+638h] +; .text:000007FF7573C895 cmp [rcx+63Ch], eax +; .text:000007FF7573C89B jnz short loc_7FF7573C8B3 +; Changed +; .text:000007FF7573C88F mov eax, 100h +; .text:000007FF7573C894 mov [rcx+638h], eax +; .text:000007FF7573C89A nop +; .text:000007FF7573C89B jmp short loc_7FF7573C8B3 +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=5C88F +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp + +[6.0.6001.18000] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6E800000 +; .text:6E8185DE lea eax, [ebp+VersionInformation] +; .text:6E8185E4 inc ebx <- nop +; .text:6E8185E5 push eax ; lpVersionInformation +; .text:6E8185E6 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6E8185F0 mov [esi], ebx +; .text:6E8185F2 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=185E4 +SingleUserCode.x86=nop +; Imagebase: 7FF76220000 +; .text:000007FF76290DB4 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF76290DB9 mov ebx, 1 <- 0 +; .text:000007FF76290DBE mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF76290DC6 mov [rdi], ebx +; .text:000007FF76290DC8 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=70DBA +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6E817FD8 cmp edx, [ecx+320h] +; .text:6E817FDE pop esi +; .text:6E817FDF jz loc_6E826F16 +; Changed +; .text:6E817FD8 mov edx, 100h +; .text:6E817FDD mov [ecx+320h], edx +; .text:6E817FE3 pop esi +; .text:6E817FE4 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=17FD8 +DefPolicyCode.x86=CDefPolicy_Query_edx_ecx +; Original +; .text:000007FF76285BD7 mov eax, [rcx+638h] +; .text:000007FF76285BDD cmp [rcx+63Ch], eax +; .text:000007FF76285BE3 jnz short loc_7FF76285BFB +; Changed +; .text:000007FF76285BD7 mov eax, 100h +; .text:000007FF76285BDC mov [rcx+638h], eax +; .text:000007FF76285BE2 nop +; .text:000007FF76285BE3 jmp short loc_7FF76285BFB +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=65BD7 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp + +[6.0.6002.18005] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F580000 +; .text:6F597FA2 lea eax, [ebp+VersionInformation] +; .text:6F597FA8 inc ebx <- nop +; .text:6F597FA9 push eax ; lpVersionInformation +; .text:6F597FAA mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F597FB4 mov [esi], ebx +; .text:6F597FB6 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=17FA8 +SingleUserCode.x86=nop +; Imagebase: 7FF766C0000 +; .text:000007FF76730FF0 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF76730FF5 mov ebx, 1 <- 0 +; .text:000007FF76730FFA mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF76731002 mov [rdi], ebx +; .text:000007FF76731004 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=70FF6 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F5979C0 cmp edx, [ecx+320h] +; .text:6F5979C6 pop esi +; .text:6F5979C7 jz loc_6F5A6F26 +; Changed +; .text:6F5979C0 mov edx, 100h +; .text:6F5979C5 mov [ecx+320h], edx +; .text:6F5979CB pop esi +; .text:6F5979CC nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=179C0 +DefPolicyCode.x86=CDefPolicy_Query_edx_ecx +; Original +; .text:000007FF76725E83 mov eax, [rcx+638h] +; .text:000007FF76725E89 cmp [rcx+63Ch], eax +; .text:000007FF76725E8F jz short loc_7FF76725EA7 +; Changed +; .text:000007FF76725E83 mov eax, 100h +; .text:000007FF76725E88 mov [rcx+638h], eax +; .text:000007FF76725E8E nop +; .text:000007FF76725E8F jmp short loc_7FF76725EA7 +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=65E83 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp + +[6.0.6002.19214] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F580000 +; .text:6F597FBE lea eax, [ebp+VersionInformation] +; .text:6F597FC4 inc ebx <- nop +; .text:6F597FC5 push eax ; lpVersionInformation +; .text:6F597FC6 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F597FD0 mov [esi], ebx +; .text:6F597FD2 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=17FC4 +SingleUserCode.x86=nop +; Imagebase: 7FF75AC0000 +; .text:000007FF75B312A4 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75B312A9 mov ebx, 1 <- 0 +; .text:000007FF75B312AE mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75B312B6 mov [rdi], ebx +; .text:000007FF75B312B8 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=712AA +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F5979B8 cmp edx, [ecx+320h] +; .text:6F5979BE pop esi +; .text:6F5979BF jz loc_6F5A6F3E +; Changed +; .text:6F5979B8 mov edx, 100h +; .text:6F5979BD mov [ecx+320h], edx +; .text:6F5979C3 pop esi +; .text:6F5979C4 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=179B8 +DefPolicyCode.x86=CDefPolicy_Query_edx_ecx +; Original +; .text:000007FF75B25FF7 mov eax, [rcx+638h] +; .text:000007FF75B25FFD cmp [rcx+63Ch], eax +; .text:000007FF75B26003 jnz short loc_7FF75B2601B +; Changed +; .text:000007FF75B25FF7 mov eax, 100h +; .text:000007FF75B25FFC mov [rcx+638h], eax +; .text:000007FF75B26002 nop +; .text:000007FF75B26003 jmp short loc_7FF75B2601B +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=65FF7 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp + +[6.0.6002.23521] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F580000 +; .text:6F597FAE lea eax, [ebp+VersionInformation] +; .text:6F597FB4 inc ebx <- nop +; .text:6F597FB5 push eax ; lpVersionInformation +; .text:6F597FB6 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F597FC0 mov [esi], ebx +; .text:6F597FC2 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=17FB4 +SingleUserCode.x86=nop +; Imagebase: 7FF75AC0000 +; .text:000007FF75B31EA4 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75B31EA9 mov ebx, 1 <- 0 +; .text:000007FF75B31EAE mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75B31EB6 mov [rdi], ebx +; .text:000007FF75B31EB8 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=71EAA +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F5979CC cmp edx, [ecx+320h] +; .text:6F5979D2 pop esi +; .text:6F5979D3 jz loc_6F5A6F2E +; Changed +; .text:6F5979CC mov edx, 100h +; .text:6F5979D1 mov [ecx+320h], edx +; .text:6F5979D7 pop esi +; .text:6F5979D8 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=179CC +DefPolicyCode.x86=CDefPolicy_Query_edx_ecx +; Original +; .text:000007FF75B269CB mov eax, [rcx+638h] +; .text:000007FF75B269D1 cmp [rcx+63Ch], eax +; .text:000007FF75B269D7 jnz short loc_7FF75B269EF +; Changed +; .text:000007FF75B269CB mov eax, 100h +; .text:000007FF75B269D0 mov [rcx+638h], eax +; .text:000007FF75B269D6 nop +; .text:000007FF75B269D7 jmp short loc_7FF75B269EF +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=669CB +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp + +[6.1.7600.16385] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F2E0000 +; .text:6F2F9E1F lea eax, [ebp+VersionInformation] +; .text:6F2F9E25 inc ebx <- nop +; .text:6F2F9E26 push eax ; lpVersionInformation +; .text:6F2F9E27 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F2F9E31 mov [esi], ebx +; .text:6F2F9E33 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=19E25 +SingleUserCode.x86=nop +; Imagebase: 7FF75A80000 +; .text:000007FF75A97D90 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75A97D95 mov ebx, 1 <- 0 +; .text:000007FF75A97D9A mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75A97DA2 mov [rdi], ebx +; .text:000007FF75A97DA4 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=17D96 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F2F96F3 cmp eax, [esi+320h] +; .text:6F2F96F9 jz loc_6F30E256 +; Changed +; .text:6F2F96F3 mov eax, 100h +; .text:6F2F96F8 mov [esi+320h], eax +; .text:6F2F96FE nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=196F3 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000007FF75A97AD2 cmp [rdi+63Ch], eax +; .text:000007FF75A97AD8 jz loc_7FF75AA4978 +; Changed +; .text:000007FF75A97AD2 mov eax, 100h +; .text:000007FF75A97AD7 mov [rdi+638h], eax +; .text:000007FF75A97ADD nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17AD2 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7600.20890] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=19E2D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17DF2 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=196FB +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17B0E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7600.21316] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=19E2D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17E3E +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=196FB +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17B5E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.17514] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F2E0000 +; .text:6F2FA497 lea eax, [ebp+VersionInformation] +; .text:6F2FA49D inc ebx <- nop +; .text:6F2FA49E push eax ; lpVersionInformation +; .text:6F2FA49F mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F2FA4A9 mov [esi], ebx +; .text:6F2FA4AB call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A49D +SingleUserCode.x86=nop +; Imagebase: 7FF75A80000 +; .text:000007FF75A980DC lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75A980E1 mov ebx, 1 <- 0 +; .text:000007FF75A980E6 mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75A980EE mov [rdi], ebx +; .text:000007FF75A980F0 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=180E2 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F2F9D53 cmp eax, [esi+320h] +; .text:6F2F9D59 jz loc_6F30B25E +; Changed +; .text:6F2F9D53 mov eax, 100h +; .text:6F2F9D58 mov [esi+320h], eax +; .text:6F2F9D5E nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19D53 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000007FF75A97D8A cmp [rdi+63Ch], eax +; .text:000007FF75A97D90 jz loc_7FF75AA40F4 +; Changed +; .text:000007FF75A97D8A mov eax, 100h +; .text:000007FF75A97D8F mov [rdi+638h], eax +; .text:000007FF75A97D95 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D8A +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.18540] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F2E0000 +; .text:6F2FA4DF lea eax, [ebp+VersionInformation] +; .text:6F2FA4E5 inc ebx <- nop +; .text:6F2FA4E6 push eax ; lpVersionInformation +; .text:6F2FA4E7 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F2FA4F1 mov [esi], ebx +; .text:6F2FA4F3 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A4E5 +SingleUserCode.x86=nop +; Imagebase: 7FF75A80000 +; .text:000007FF75A98000 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75A98005 mov ebx, 1 <- 0 +; .text:000007FF75A9800A mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75A98012 mov [rdi], ebx +; .text:000007FF75A98014 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=18006 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F2F9D9F cmp eax, [esi+320h] +; .text:6F2F9DA5 jz loc_6F30B2AE +; Changed +; .text:6F2F9D9F mov eax, 100h +; .text:6F2F9DA4 mov [esi+320h], eax +; .text:6F2F9DAA nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19D9F +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000007FF75A97C82 cmp [rdi+63Ch], eax +; .text:000007FF75A97C88 jz loc_7FF75AA3FBD +; Changed +; .text:000007FF75A97C82 mov eax, 100h +; .text:000007FF75A97C87 mov [rdi+638h], eax +; .text:000007FF75A97C8D nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17C82 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.22750] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F2E0000 +; .text:6F2FA64F lea eax, [ebp+VersionInformation] +; .text:6F2FA655 inc ebx <- nop +; .text:6F2FA656 push eax ; lpVersionInformation +; .text:6F2FA657 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F2FA661 mov [esi], ebx +; .text:6F2FA663 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A655 +SingleUserCode.x86=nop +; Imagebase: 7FF75A80000 +; .text:000007FF75A97E88 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75A97E8D mov ebx, 1 <- 0 +; .text:000007FF75A97E92 mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75A97E9A mov [rdi], ebx +; .text:000007FF75A97E9C call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=17E8E +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F2F9E21 cmp eax, [esi+320h] +; .text:6F2F9E27 jz loc_6F30B6CE +; Changed +; .text:6F2F9E21 mov eax, 100h +; .text:6F2F9E26 mov [esi+320h], eax +; .text:6F2F9E2C nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19E21 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000007FF75A97C92 cmp [rdi+63Ch], eax +; .text:000007FF75A97C98 jz loc_7FF75AA40A2 +; Changed +; .text:000007FF75A97C92 mov eax, 100h +; .text:000007FF75A97C97 mov [rdi+638h], eax +; .text:000007FF75A97C9D nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17C92 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.18637] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F2E0000 +; .text:6F2FA4D7 lea eax, [ebp+VersionInformation] +; .text:6F2FA4DD inc ebx <- nop +; .text:6F2FA4DE push eax ; lpVersionInformation +; .text:6F2FA4DF mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F2FA4E9 mov [esi], ebx +; .text:6F2FA4EB call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A4DD +SingleUserCode.x86=nop +; Imagebase: 7FF75A80000 +; .text:000007FF75A980F4 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75A980F9 mov ebx, 1 <- 0 +; .text:000007FF75A980FE mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75A98106 mov [rdi], ebx +; .text:000007FF75A98108 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=180FA +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F2F9DBB cmp eax, [esi+320h] +; .text:6F2F9DC1 jz loc_6F30B2A6 +; Changed +; .text:6F2F9DBB mov eax, 100h +; .text:6F2F9DC0 mov [esi+320h], eax +; .text:6F2F9DC6 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19DBB +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000007FF75A97DC6 cmp [rdi+63Ch], eax +; .text:000007FF75A97DCC jz loc_7FF75AA40BD +; Changed +; .text:000007FF75A97DC6 mov eax, 100h +; .text:000007FF75A97DCB mov [rdi+638h], eax +; .text:000007FF75A97DD1 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17DC6 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.21650] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A49D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=180BE +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19D53 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D5A +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.21866] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A49D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=180BE +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19D53 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D5A +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.22104] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A49D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=180C6 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19D53 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D5E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.22843] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; Imagebase: 6F2E0000 +; .text:6F2FA64F lea eax, [ebp+VersionInformation] +; .text:6F2FA655 inc ebx <- nop +; .text:6F2FA656 push eax ; lpVersionInformation +; .text:6F2FA657 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:6F2FA661 mov [esi], ebx +; .text:6F2FA663 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A655 +SingleUserCode.x86=nop +; Imagebase: 7FF75A80000 +; .text:000007FF75A97F90 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation +; .text:000007FF75A97F95 mov ebx, 1 <- 0 +; .text:000007FF75A97F9A mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000007FF75A97FA2 mov [rdi], ebx +; .text:000007FF75A97FA4 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=17F96 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:6F2F9E25 cmp eax, [esi+320h] +; .text:6F2F9E2B jz loc_6F30B6D6 +; Changed +; .text:6F2F9E25 mov eax, 100h +; .text:6F2F9E2A mov [esi+320h], eax +; .text:6F2F9E30 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19E25 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000007FF75A97D6E cmp [rdi+63Ch], eax +; .text:000007FF75A97D74 jz loc_7FF75AA4182 +; Changed +; .text:000007FF75A97D6E mov eax, 100h +; .text:000007FF75A97D73 mov [rdi+638h], eax +; .text:000007FF75A97D79 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D6E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.23403] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A65D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17F62 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19E29 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17CE2 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.24234] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A675 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17F56 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19E41 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D2E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.2.8102.0] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:1000F7E5 lea eax, [esp+150h+VersionInformation] +; .text:1000F7E9 inc esi <- nop +; .text:1000F7EA push eax ; lpVersionInformation +; .text:1000F7EB mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:1000F7F3 mov [edi], esi +; .text:1000F7F5 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=F7E9 +SingleUserCode.x86=nop +; .text:000000018000D83A lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation +; .text:000000018000D83F mov ebx, 1 <- 0 +; .text:000000018000D844 mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000000018000D84C mov [rdi], ebx +; .text:000000018000D84E call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=D840 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:1000E47C cmp eax, [esi+320h] +; .text:1000E482 jz loc_1002D775 +; Changed +; .text:1000E47C mov eax, 100h +; .text:1000E481 mov [esi+320h], eax +; .text:1000E487 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=E47C +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000000018000D3E6 cmp [rdi+63Ch], eax +; .text:000000018000D3EC jz loc_180027792 +; Changed +; .text:000000018000D3E6 mov eax, 100h +; .text:000000018000D3EB mov [rdi+638h], eax +; .text:000000018000D3F1 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=D3E6 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi +; Hook SLGetWindowsInformationDWORDWrapper +SLPolicyInternal.x86=1 +SLPolicyOffset.x86=1B909 +SLPolicyFunc.x86=New_Win8SL +SLPolicyInternal.x64=1 +SLPolicyOffset.x64=1A484 +SLPolicyFunc.x64=New_Win8SL + +[6.2.8250.0] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:100159C5 lea eax, [esp+150h+VersionInformation] +; .text:100159C9 inc esi <- nop +; .text:100159CA push eax ; lpVersionInformation +; .text:100159CB mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:100159D3 mov [edi], esi +; .text:100159D5 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=159C9 +SingleUserCode.x86=nop +; .text:0000000180011E6E lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation +; .text:0000000180011E73 mov ebx, 1 <- 0 +; .text:0000000180011E78 mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180011E80 mov [rdi], ebx +; .text:0000000180011E82 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=11E74 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:10013520 cmp eax, [esi+320h] +; .text:10013526 jz loc_1002DB85 +; Changed +; .text:10013520 mov eax, 100h +; .text:10013525 mov [esi+320h], eax +; .text:1001352B nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=13520 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000000018001187A cmp [rdi+63Ch], eax +; .text:0000000180011880 jz loc_1800273A2 +; Changed +; .text:000000018001187A mov eax, 100h +; .text:000000018001187F mov [rdi+638h], eax +; .text:0000000180011885 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1187A +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi +; Hook SLGetWindowsInformationDWORDWrapper +SLPolicyInternal.x86=1 +SLPolicyOffset.x86=1A0A9 +SLPolicyFunc.x86=New_Win8SL_CP +SLPolicyInternal.x64=1 +SLPolicyOffset.x64=18FAC +SLPolicyFunc.x64=New_Win8SL + +[6.2.8400.0] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:1001547E lea eax, [esp+150h+VersionInformation] +; .text:10015482 inc esi <- nop +; .text:10015483 push eax ; lpVersionInformation +; .text:10015484 mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:1001548C mov [edi], esi +; .text:1001548E call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=15482 +SingleUserCode.x86=nop +; .text:000000018002081E lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation +; .text:0000000180020823 mov ebx, 1 <- 0 +; .text:0000000180020828 mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180020830 mov [rdi], ebx +; .text:0000000180020832 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=20824 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:10013E48 cmp eax, [esi+320h] +; .text:10013E4E jz loc_1002E079 +; Changed +; .text:10013E48 mov eax, 100h +; .text:10013E4D mov [esi+320h], eax +; .text:10013E53 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=13E48 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000000018001F102 cmp [rdi+63Ch], eax +; .text:000000018001F108 jz loc_18003A02E +; Changed +; .text:000000018001F102 mov eax, 100h +; .text:000000018001F107 mov [rdi+638h], eax +; .text:000000018001F10D nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1F102 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi +; Hook SLGetWindowsInformationDWORDWrapper +SLPolicyInternal.x86=1 +SLPolicyOffset.x86=19629 +SLPolicyFunc.x86=New_Win8SL +SLPolicyInternal.x64=1 +SLPolicyOffset.x64=2492C +SLPolicyFunc.x64=New_Win8SL + +[6.2.9200.16384] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:1001554E lea eax, [esp+150h+VersionInformation] +; .text:10015552 inc esi <- nop +; .text:10015553 push eax ; lpVersionInformation +; .text:10015554 mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:1001555C mov [edi], esi +; .text:1001555E call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=15552 +SingleUserCode.x86=nop +; .text:000000018002BAA2 lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation +; .text:000000018002BAA7 mov ebx, 1 <- 0 +; .text:000000018002BAAC mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000000018002BAB4 mov [rdi], ebx +; .text:000000018002BAB6 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=2BAA8 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:10013F08 cmp eax, [esi+320h] +; .text:10013F0E jz loc_1002E161 +; Changed +; .text:10013F08 mov eax, 100h +; .text:10013F0D mov [esi+320h], eax +; .text:10013F13 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=13F08 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000000018002A31A cmp [rdi+63Ch], eax +; .text:000000018002A320 jz loc_18003A0F9 +; Changed +; .text:000000018002A31A mov eax, 100h +; .text:000000018002A31F mov [rdi+638h], eax +; .text:000000018002A325 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2A31A +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi +; Hook SLGetWindowsInformationDWORDWrapper +SLPolicyInternal.x86=1 +SLPolicyOffset.x86=19559 +SLPolicyFunc.x86=New_Win8SL +SLPolicyInternal.x64=1 +SLPolicyOffset.x64=21FA8 +SLPolicyFunc.x64=New_Win8SL + +[6.2.9200.17048] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:1002058E lea eax, [esp+150h+VersionInformation] +; .text:10020592 inc esi <- nop +; .text:10020593 push eax ; lpVersionInformation +; .text:10020594 mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:1002059C mov [edi], esi +; .text:1002059E call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=20592 +SingleUserCode.x86=nop +; .text:0000000180020942 lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation +; .text:0000000180020947 mov ebx, 1 <- 0 +; .text:000000018002094C mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180020954 mov [rdi], ebx +; .text:0000000180020956 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=20948 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:1001F408 cmp eax, [esi+320h] +; .text:1001F40E jz loc_1002E201 +; Changed +; .text:1001F408 mov eax, 100h +; .text:1001F40D mov [esi+320h], eax +; .text:1001F413 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=1F408 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000000018001F206 cmp [rdi+63Ch], eax +; .text:000000018001F20C jz loc_18003A1B4 +; Changed +; .text:000000018001F206 mov eax, 100h +; .text:000000018001F20B mov [rdi+638h], eax +; .text:000000018001F211 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1F206 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi +; Hook SLGetWindowsInformationDWORDWrapper +SLPolicyInternal.x86=1 +SLPolicyOffset.x86=17059 +SLPolicyFunc.x86=New_Win8SL +SLPolicyInternal.x64=1 +SLPolicyOffset.x64=24570 +SLPolicyFunc.x64=New_Win8SL + +[6.2.9200.21166] +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10015576 lea eax, [esp+150h+VersionInformation] +; .text:1001557A inc esi <- nop +; .text:1001557B push eax ; lpVersionInformation +; .text:1001557C mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:10015584 mov [edi], esi +; .text:10015586 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=1557A +SingleUserCode.x86=nop +; .text:000000018002BAF2 lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation +; .text:000000018002BAF7 mov ebx, 1 <- 0 +; .text:000000018002BAFC mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000000018002BB04 mov [rdi], ebx +; .text:000000018002BB06 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=2BAF8 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:10013F30 cmp eax, [esi+320h] +; .text:10013F36 jz loc_1002E189 +; Changed +; .text:10013F30 mov eax, 100h +; .text:10013F35 mov [esi+320h], eax +; .text:10013F3B nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=13F30 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +; Original +; .text:000000018002A3B6 cmp [rdi+63Ch], eax +; .text:000000018002A3BC jz loc_18003A174 +; Changed +; .text:000000018002A3B6 mov eax, 100h +; .text:000000018002A3BB mov [rdi+638h], eax +; .text:000000018002A3C1 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2A3B6 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi +; Hook SLGetWindowsInformationDWORDWrapper +SLPolicyInternal.x86=1 +SLPolicyOffset.x86=19581 +SLPolicyFunc.x86=New_Win8SL +SLPolicyInternal.x64=1 +SLPolicyOffset.x64=21FD0 +SLPolicyFunc.x64=New_Win8SL + +[6.3.9431.0] +; HOW TO search CEnforcementCore::GetInstanceOfTSLicense function in IDA Pro: +; 1. Search text: CSLQuery::IsLicenseTypeLocalOnly +; 2. All xrefs will point to this function +; 3. Go to function beginning and check ; CODE XREF string, it will point to GetInstanceOfTSLicense function +; 4. Follow CODE XREF, switch to graph view, the next block below is to patch +; Another way: +; 1. Search text: CEnforcementCore::GetInstanceOfTSLicense FAILED - License type me +; 2. All xrefs will point to GetInstanceOfTSLicense +; 3. Follow xref, the previous block above is to patch + +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:1008A604 call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:1008A609 test eax, eax +; .text:1008A60B js short loc_1008A628 +; .text:1008A60D cmp [ebp+var_8], 0 +; .text:1008A611 jz short loc_1008A628 <- jmp +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=8A611 +LocalOnlyCode.x86=jmpshort +; .text:000000018009F713 call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:000000018009F718 test eax, eax +; .text:000000018009F71A js short loc_18009F73B +; .text:000000018009F71C cmp [rsp+48h+arg_18], 0 +; .text:000000018009F721 jz short loc_18009F73B <- jmp +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=9F721 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:100306A4 lea eax, [esp+150h+VersionInformation] +; .text:100306A8 inc ebx <- nop +; .text:100306A9 mov [edi], ebx +; .text:100306AB push eax ; lpVersionInformation +; .text:100306AC call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=306A8 +SingleUserCode.x86=nop +; .text:00000001800367F3 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation +; .text:00000001800367F8 mov ebx, 1 <- 0 +; .text:00000001800367FD mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180036805 mov [rdi], ebx +; .text:0000000180036807 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=367F9 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:1002EA25 cmp eax, [ecx+320h] +; .text:1002EA2B jz loc_100348C1 +; Changed +; .text:1002EA25 mov eax, 100h +; .text:1002EA2A mov [ecx+320h], eax +; .text:1002EA30 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2EA25 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Original +; .text:00000001800350FD cmp [rcx+63Ch], eax +; .text:0000000180035103 jz loc_18004F6AE +; Changed +; .text:00000001800350FD mov eax, 100h +; .text:0000000180035102 mov [rcx+638h], eax +; .text:0000000180035108 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=350FD +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; HOW TO search CSLQuery::Initialize function in IDA Pro: +; 1. Search text: CSLQuery::Initialize - SLGetWindowsInformationDWORD failed +; 2. All xrefs will point to this function + +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=196B0 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2F9C0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.16384] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:100A271C call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:100A2721 test eax, eax +; .text:100A2723 js short loc_100A2740 +; .text:100A2725 cmp [ebp+var_8], 0 +; .text:100A2729 jz short loc_100A2740 <- jmp +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A2729 +LocalOnlyCode.x86=jmpshort +; .text:000000018008181F cmp [rsp+48h+arg_18], 0 +; .text:0000000180081824 jz loc_180031DEF <- nop + jmp +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=81824 +LocalOnlyCode.x64=nopjmp +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10018024 lea eax, [esp+150h+VersionInformation] +; .text:10018028 inc ebx <- nop +; .text:10018029 mov [edi], ebx +; .text:1001802B push eax ; lpVersionInformation +; .text:1001802C call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=18028 +SingleUserCode.x86=nop +; .text:000000018002023B lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation +; .text:0000000180020240 mov ebx, 1 <- 0 +; .text:0000000180020245 mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:000000018002024D mov [rdi], ebx +; .text:000000018002024F call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=20241 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:10016115 cmp eax, [ecx+320h] +; .text:1001611B jz loc_10034DE1 +; Changed +; .text:10016115 mov eax, 100h +; .text:1001611A mov [ecx+320h], eax +; .text:10016120 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=16115 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Original +; .text:0000000180057829 cmp [rcx+63Ch], eax +; .text:000000018005782F jz loc_18005E850 +; Changed +; .text:0000000180057829 mov eax, 100h +; .text:000000018005782E mov [rcx+638h], eax +; .text:0000000180057834 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=57829 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=1CEB0 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=554C0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.17095] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:100A36C4 call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:100A36C9 test eax, eax +; .text:100A36CB js short loc_100A36E8 +; .text:100A36CD cmp [ebp+var_8], 0 +; .text:100A36D1 jz short loc_100A36E8 <- jmp +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A36D1 +LocalOnlyCode.x86=jmpshort +; .text:00000001800B914B call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:00000001800B9150 test eax, eax +; .text:00000001800B9152 js short loc_1800B9173 +; .text:00000001800B9154 cmp [rsp+48h+arg_18], 0 +; .text:00000001800B9159 jz short loc_1800B9173 <- jmp +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=B9159 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10036BA5 lea eax, [esp+150h+VersionInformation] +; .text:10036BA9 inc ebx <- nop +; .text:10036BAA mov [edi], ebx +; .text:10036BAC push eax ; lpVersionInformation +; .text:10036BAD call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=36BA9 +SingleUserCode.x86=nop +; .text:0000000180021823 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation +; .text:0000000180021828 mov ebx, 1 <- 0 +; .text:000000018002182D mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180021835 mov [rdi], ebx +; .text:0000000180021837 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=21829 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:10037529 cmp eax, [ecx+320h] +; .text:1003752F jz loc_10043662 +; Changed +; .text:10037529 mov eax, 100h +; .text:1003752E mov [ecx+320h], eax +; .text:10037534 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=37529 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Original +; .text:000000018001F6A1 cmp [rcx+63Ch], eax +; .text:000000018001F6A7 jz loc_18007284B +; Changed +; .text:000000018001F6A1 mov eax, 100h +; .text:000000018001F6A6 mov [rcx+638h], eax +; .text:000000018001F6AC nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1F6A1 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=117F1 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=3B110 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.17415] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:100B33EB call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:100B33F0 test eax, eax +; .text:100B33F2 js short loc_100B340F +; .text:100B33F4 cmp [ebp+var_C], 0 +; .text:100B33F8 jz short loc_100B340F <- jmp +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B33F8 +LocalOnlyCode.x86=jmpshort +; .text:000000018008B2D4 cmp [rsp+58h+arg_18], 0 +; .text:000000018008B2D9 jz loc_180025C39 <- nop + jmp +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B2D9 +LocalOnlyCode.x64=nopjmp +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10037111 lea eax, [esp+150h+VersionInformation] +; .text:10037115 inc ebx <- nop +; .text:10037116 mov [edi], ebx +; .text:10037118 push eax ; lpVersionInformation +; .text:10037119 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=37115 +SingleUserCode.x86=nop +; .text:0000000180033CE3 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation +; .text:0000000180033CE8 mov ebx, 1 <- 0 +; .text:0000000180033CED mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180033CF5 mov [rdi], ebx +; .text:0000000180033CF7 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=33CE9 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:1003CFF9 cmp eax, [ecx+320h] +; .text:1003CFFF jz loc_1004A52F +; Changed +; .text:1003CFF9 mov eax, 100h +; .text:1003CFFE mov [ecx+320h], eax +; .text:1003D004 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3CFF9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Original +; .text:0000000180045825 cmp [rcx+63Ch], eax +; .text:000000018004582B jz loc_180067704 +; Changed +; .text:0000000180045825 mov eax, 100h +; .text:000000018004582A mov [rcx+638h], eax +; .text:0000000180045830 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=45825 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=18478 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5DBC0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.18692] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B3458 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B2E9 +LocalOnlyCode.x64=nopjmp +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=37105 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=37039 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3CFE9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=45835 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=18488 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5DBD0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.18708] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B35D8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B376 +LocalOnlyCode.x64=nopjmp +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=370F5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=36FE9 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3CFD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=457D5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=18308 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5DB70 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.18928] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B39D8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B25D +LocalOnlyCode.x64=nopjmp +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=37D25 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=36C09 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D6F9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=45495 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=18328 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5D830 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.19093] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B3958 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8AE4E +LocalOnlyCode.x64=nopjmp +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=3F045 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=36BC9 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D899 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=45305 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=18288 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5D660 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.4.9841.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:1009569B call sub_100B7EE5 +; .text:100956A0 test eax, eax +; .text:100956A2 js short loc_100956BF +; .text:100956A4 cmp [ebp+var_C], 0 +; .text:100956A8 jz short loc_100956BF <- jmp +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=956A8 +LocalOnlyCode.x86=jmpshort +; .text:0000000180081133 call sub_1800A9048 +; .text:0000000180081138 test eax, eax +; .text:000000018008113A js short loc_18008115B +; .text:000000018008113C cmp [rsp+58h+arg_18], 0 +; .text:0000000180081141 jz short loc_18008115B <- jmp +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=81141 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10030121 lea eax, [esp+150h+VersionInformation] +; .text:10030125 inc ebx <- nop +; .text:10030126 mov [edi], ebx +; .text:10030128 push eax ; lpVersionInformation +; .text:10030129 call ds:GetVersionExW +SingleUserPatch.x86=1 +SingleUserOffset.x86=30125 +SingleUserCode.x86=nop +; .text:0000000180012153 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation +; .text:0000000180012158 mov ebx, 1 <- 0 +; .text:000000018001215D mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180012165 mov [rdi], ebx +; .text:0000000180012167 call cs:GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=12159 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:1003B989 cmp eax, [ecx+320h] +; .text:1003B98F jz loc_1005E809 +; Changed +; .text:1003B989 mov eax, 100h +; .text:1003B98E mov [ecx+320h], eax +; .text:1003B994 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3B989 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Original +; .text:000000018000C125 cmp [rcx+63Ch], eax +; .text:000000018000C12B jz sub_18003BABC +; Changed +; .text:000000018000C125 mov eax, 100h +; .text:000000018000C12A mov [rcx+638h], eax +; .text:000000018000C130 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=C125 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46A68 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=1EA50 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.4.9860.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:100962BB call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:100962C0 test eax, eax +; .text:100962C2 js short loc_100962DF +; .text:100962C4 cmp [ebp+var_C], 0 +; .text:100962C8 jz short loc_100962DF <- jmp +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=962C8 +LocalOnlyCode.x86=jmpshort +; .text:0000000180081083 call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:0000000180081088 test eax, eax +; .text:000000018008108A js short loc_1800810AB +; .text:000000018008108C cmp [rsp+58h+arg_18], 0 +; .text:0000000180081091 jz short loc_1800810AB <- jmp +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=81091 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10030841 lea eax, [esp+150h+VersionInformation] +; .text:10030845 inc ebx <- nop +; .text:10030846 mov [edi], ebx +; .text:10030848 push eax ; lpVersionInformation +; .text:10030849 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=30845 +SingleUserCode.x86=nop +; .text:0000000180011AA3 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation +; .text:0000000180011AA8 mov ebx, 1 <- 0 +; .text:0000000180011AAD mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180011AB5 mov [rdi], ebx +; .text:0000000180011AB7 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=11AA9 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:1003BEC9 cmp eax, [ecx+320h] +; .text:1003BECF jz loc_1005EE1A +; Changed +; .text:1003BEC9 mov eax, 100h +; .text:1003BECE mov [ecx+320h], eax +; .text:1003BED4 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3BEC9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Original +; .text:000000018000B9F5 cmp [rcx+63Ch], eax +; .text:000000018000B9FB jz sub_18003B9C8 +; Changed +; .text:000000018000B9F5 mov eax, 100h +; .text:000000018000B9FA mov [rcx+638h], eax +; .text:000000018000BA00 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=B9F5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46F18 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=1EB00 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.4.9879.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:100A9CBB call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:100A9CC0 test eax, eax +; .text:100A9CC2 js short loc_100A9CDF +; .text:100A9CC4 cmp [ebp+var_C], 0 +; .text:100A9CC8 jz short loc_100A9CDF <- jmp +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9CC8 +LocalOnlyCode.x86=jmpshort +; .text:0000000180095603 call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:0000000180095608 test eax, eax +; .text:000000018009560A js short loc_18009562B +; .text:000000018009560C cmp [rsp+58h+arg_18], 0 +; .text:0000000180095611 jz short loc_18009562B <- jmp +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=95611 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10030C51 lea eax, [esp+150h+VersionInformation] +; .text:10030C55 inc ebx <- nop +; .text:10030C56 mov [edi], ebx +; .text:10030C58 push eax ; lpVersionInformation +; .text:10030C59 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=30C55 +SingleUserCode.x86=nop +; .text:0000000180016A2E call memset_0 +; .text:0000000180016A33 mov ebx, 1 <- 0 +; .text:0000000180016A38 mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180016A40 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation +; .text:0000000180016A45 mov [rdi], ebx +; .text:0000000180016A47 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=16A34 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:1002DAB9 cmp eax, [ecx+320h] +; .text:1002DABF jz loc_1006C38A +; Changed +; .text:1002DAB9 mov eax, 100h +; .text:1002DABE mov [ecx+320h], eax +; .text:1002DAC4 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2DAB9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Original +; .text:000000018001BDC5 cmp [rcx+63Ch], eax +; .text:000000018001BDCB jz sub_180045540 +; Changed +; .text:000000018001BDC5 mov eax, 100h +; .text:000000018001BDCA mov [rcx+638h], eax +; .text:000000018001BDD0 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1BDC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=41132 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=24750 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.9926.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8C28 +LocalOnlyCode.x86=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=31725 +SingleUserCode.x86=nop +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3CF99 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=3F140 +SLInitFunc.x86=New_CSLQuery_Initialize +; x64 contributed by v-yadli +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x64=1 +;;;OFFSET = 0x61 +;;;BASE = 0x95F90 +LocalOnlyOffset.x64=95FF1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x64=1 +;;;OFFSET = 0x43 +;;;BASE = 0x12F90 +;;;;instruction = 0xBB 0x01 0x00 0x00 0x00 +;;; ^^^ +1 offset +SingleUserOffset.x64=12A34 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x64=1 +;;; +;;;BASE = 0xBDF0 +;;;OFFSET = 0x15 +DefPolicyOffset.x64=BE05 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x64=1 +SLInitOffset.x64=24EC0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.10041.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +; .text:100A9D7B call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:100A9D80 test eax, eax +; .text:100A9D82 js short loc_100A9D9F +; .text:100A9D84 cmp [ebp+var_C], 0 +; .text:100A9D88 jz short loc_100A9D9F <- jmp +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9D88 +LocalOnlyCode.x86=jmpshort +; .text:0000000180097133 call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) +; .text:0000000180097138 test eax, eax +; .text:000000018009713A js short loc_18009715B +; .text:000000018009713C cmp [rsp+58h+arg_18], 0 +; .text:0000000180097141 jz short loc_18009715B <- jmp +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=97141 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +; .text:10032211 lea eax, [esp+150h+VersionInformation] +; .text:10032215 inc ebx <- nop +; .text:10032216 mov [edi], ebx +; .text:10032218 push eax ; lpVersionInformation +; .text:10032219 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +SingleUserPatch.x86=1 +SingleUserOffset.x86=32215 +SingleUserCode.x86=nop +; .text:0000000180015C5E call memset_0 +; .text:0000000180015C63 mov ebx, 1 <- 0 +; .text:0000000180015C68 mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch +; .text:0000000180015C70 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation +; .text:0000000180015C75 mov [rdi], ebx +; .text:0000000180015C77 call cs:__imp_GetVersionExW +SingleUserPatch.x64=1 +SingleUserOffset.x64=15C64 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +; Original +; .text:1002DFC9 cmp eax, [ecx+320h] +; .text:1002DFCF jz loc_10056550 +; Changed +; .text:1002DFC9 mov eax, 100h +; .text:1002DFCE mov [ecx+320h], eax +; .text:1002DFD4 nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2DFC9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Original +; .text:000000018000B795 cmp [rcx+63Ch], eax +; .text:000000018000B79B jz sub_18003A79A +; Changed +; .text:000000018000B795 mov eax, 100h +; .text:000000018000B79A mov [rcx+638h], eax +; .text:000000018000B7A0 nop +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=B795 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46960 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E40 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.10240.16384] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7D38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=96901 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=32A95 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=18F74 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2F5B9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=22865 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46581 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=250F0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.10586.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7C18 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=96AA1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=353B5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=190D4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30B69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=229A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=469DE +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=25220 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.10586.589] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7BE8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=96A51 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=353B5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=190D4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30B69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=229A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=469DE +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=25220 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.11082.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7C98 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=96AB1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35405 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=190D4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30BB9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=229A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46A3E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=25220 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.11102.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D58 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=95CD1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35A85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A9C4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30159 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B5D5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=44FD2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D160 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14251.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D58 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=95CD1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35A85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A9C4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30159 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B5D5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=44FD2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D160 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14271.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4CE8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=941E1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35915 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=263F4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF79 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C185 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=47725 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CE50 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14279.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4D28 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=94191 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35915 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=263F4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF79 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C185 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=47725 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CE50 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14295.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4D28 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D691 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35925 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=25514 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1BA35 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=47748 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C860 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14300.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F5F1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x64=1 +SingleUserOffset.x64=26B04 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D125 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC60 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14316.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F5F1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=32B55 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=26B04 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C1C9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46ABD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC60 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14328.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F5F1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=32B55 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=26B04 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C1C9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D365 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46ABD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC60 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14332.1001] +; contributed by maxpiva +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E98 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F601 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=357E5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2AE44 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316A9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C025 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4755F +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CAD0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14342.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E98 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8EF31 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=357E5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=26774 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316A9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1CEF5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4755F +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CA20 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14352.1002] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4478 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D911 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35465 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24474 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30099 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AC05 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=44792 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CDB0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14366.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9088 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34F65 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=21DE4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1A855 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4793E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CCE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14367.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9088 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34F65 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=21DE4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1A855 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4793E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CCE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14372.0] +; x64 contributed by kbmorris +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F931 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34635 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=295A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=460D2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC10 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14379.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F941 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34635 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=295A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=460D2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC10 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14383.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F941 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34635 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=295A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=460D2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC10 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14385.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F941 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34635 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=295A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=460D2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC10 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14388.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6038 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D781 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14393.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6038 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D781 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14393.1198] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6088 +LocalOnlyCode.x86=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize + +[10.0.14393.1737] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6198 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D861 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35AD5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30039 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45724 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14393.2457] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6248 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D811 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=36CE5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=29CF4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31209 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B545 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45824 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C920 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14901.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6038 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D781 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14905.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6038 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D781 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14915.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6D98 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E241 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35E35 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=29EB4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30399 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B4A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46092 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CE40 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14926.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6D18 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E071 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35E55 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=29EB4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=303B9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B4A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=460A2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CE40 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14931.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4908 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B411 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35705 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=29264 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AD05 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=452FD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C7FC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14936.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A3F38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B9A1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35355 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=25174 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1BB55 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=44CFE +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C62C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14942.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A3F38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=9115B +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35355 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=199BD +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1064E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=44CFE +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=258EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14946.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4018 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=911AB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35355 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=199AD +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1064E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=44CFD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=258DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14951.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A78D8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=94A6B +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=3BA85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1CEDD +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=32629 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=11E9E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=3F680 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22EE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14955.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A78D8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=94A6B +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=3BA85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1CEDD +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=32629 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=11E9E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=3F680 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22EE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14959.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A79B8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=934AB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=2EF05 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=16A0D +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2A4E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10A8E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=448A0 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=26960 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14965.1001] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7868 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=9345B +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=3BA85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17DFD +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=32A59 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1212E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=3F680 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=26610 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14971.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7968 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925FB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=36FE5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1803D +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D9A9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=11FBE +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46500 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=26180 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14986.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7878 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=926BB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=36FA5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17FFD +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D979 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=11F7E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=464A0 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=26140 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14997.1001] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=931EB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x64=1 +SingleUserOffset.x64=274ED +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D95E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x64=1 +SLInitOffset.x64=E000 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15002.1001] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=931EB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=346B5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=274ED +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D779 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D95E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=47D90 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=E000 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15007.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9648 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=931EB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34665 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=274ED +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D719 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D95E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=47D30 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=E000 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15014.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9648 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=931EB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34685 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=274ED +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D739 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D95E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=47D50 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=E000 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15019.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A39F8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=928FB +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=BADF5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=FBDD +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=A8479 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx_jmp +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=20AAE +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=3C240 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=24480 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15025.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=9259B +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x64=1 +SingleUserOffset.x64=2C08D +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1DD0E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x64=1 +SLInitOffset.x64=E5B8 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15031.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5BA8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E221 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=30A75 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A114 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2B1D9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C7B5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4532D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D80C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15042.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5BA8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E221 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=30A75 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A114 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2B1D9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C7B5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4532D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D80C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15046.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=80BB8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E361 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=31E95 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=15E14 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=38A19 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=E745 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=9422D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=21FFC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15048.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=80BB8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E361 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=31E95 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=15E14 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=38A19 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=E745 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=9422D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=21FFC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15055.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5348 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D2E1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=374C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=181E4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3BAD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10B65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=44EFF +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22AEC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15058.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CAA1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35075 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24E74 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2DD65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4549D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D1EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15061.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CAA1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35075 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24E74 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2DD65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4549D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D1EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15063.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CAA1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35075 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24E74 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2DD65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4549D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D1EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15063.296] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CAA1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35075 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24E74 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2DD65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4549D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D1EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15063.994] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CB01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x64=1 +SingleUserOffset.x64=15EA4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=FAE5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x64=1 +SLInitOffset.x64=234DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15063.1155] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CB01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x64=1 +SingleUserOffset.x64=15EA4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=FAE5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x64=1 +SLInitOffset.x64=234DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16179.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AA568 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8C141 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34425 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=16F84 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31219 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1E7F5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45F30 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=21700 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16184.1001] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AA568 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8C141 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34425 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=16F84 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31219 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1E7F5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45F30 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=21700 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16199.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=ABA68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CED1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=348C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=28C14 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=319B9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=CB25 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=469B0 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=FA30 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16215.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7CE8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8DE21 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39F05 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=28724 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3E019 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=CC15 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=46462 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=FB00 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16232.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7D38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8DD41 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39F35 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=287B4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3E0C9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=CC15 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4650F +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=FB00 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16237.1001] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7F38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E911 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39F85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1BC84 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3E119 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=DA55 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4655D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2180C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16241.1001] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7F38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E911 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39F85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1BC84 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3E119 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=DA55 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4655D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2180C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16251.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=ABC88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8EC21 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=3A525 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1BCB4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31779 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=DAF5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=447FD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2183C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16251.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=ABC88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8EC21 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=3A525 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1BCB4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31779 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=DAF5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=447FD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2183C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16257.1] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB718 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E841 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=33925 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=11364 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C409 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1EFD5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4504D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2495C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16257.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB718 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E841 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=33925 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=11364 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C409 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1EFD5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4504D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2495C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16273.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB798 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E871 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=33925 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=11364 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C409 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1EFD5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4504D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2495C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16275.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9388 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=90001 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39435 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C724 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DE89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D75 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=463D4 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D0C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16278.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9388 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=90001 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39435 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C724 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DE89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D75 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=463D4 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D0C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16281.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16288.1] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16291.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16294.1] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16296.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16299.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16299.15] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16353.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9388 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=90001 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=39435 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C724 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DE89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D75 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=463D4 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D0C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16362.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FBA1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=2F61C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=19D1C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DE99 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=463D4 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D9C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17004.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8EB8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB41 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=2F65C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=19D1C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DF09 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4643F +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D9C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17017.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB388 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F291 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=3477C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1977C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31049 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=125A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45CDD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=227DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17025.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB498 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F291 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=3477C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1977C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31049 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=125A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45CDD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=227DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17035.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB3F8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F271 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=354AC +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=14E7C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31F19 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10CB5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45C4D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22AEC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17046.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB3F8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F281 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=354AC +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=14E8C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31F19 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10CC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=45C4D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22AFC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17063.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD7F8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=92671 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=153CC +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=111CE +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2318C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17115.1] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD738 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925D1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1511C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10E78 +DefPolicyCode.x64=CDefPolicy_Query_edi_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E6C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17128.1] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD738 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925D1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1511C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10E78 +DefPolicyCode.x64=CDefPolicy_Query_edi_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E6C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17133.1] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD738 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925D1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1511C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10E78 +DefPolicyCode.x64=CDefPolicy_Query_edi_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E6C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17134.1] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD738 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925D1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1511C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10E78 +DefPolicyCode.x64=CDefPolicy_Query_edi_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E6C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17723.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=75D91 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelperMgr::IsSingleSessionPerUserEnabled +SingleUserPatch.x64=1 +SingleUserOffset.x64=1296C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17A45 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x64=1 +SLInitOffset.x64=1B10C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17763.1] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AF8E4 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=77941 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelperMgr::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=4D505 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1322C +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=4BD09 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17F45 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=5B02A +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=1ABFC +SLInitFunc.x64=New_CSLQuery_Initialize + +[SLInit] +; Is server +bServerSku=1 +; Enable listener - allow remote connections +bRemoteConnAllowed=1 +; Allow fast user switching +bFUSEnabled=1 +; Allow RemoteApp server +bAppServerAllowed=1 +; Allow multi monitor +bMultimonAllowed=1 +; Maximum user sessions (0 - unlimited) +lMaxUserSessions=0 +; Maximum debug/glass sessions (0 - unlimited) +ulMaxDebugSessions=0 +; SLInit function is succeeded +bInitialized=1 + +[6.3.9431.0-SLInit] +; HOW TO search SLInit global variables in IDA Pro: +; 1. Search text: The SL policy for ',27h,'Allow Multiple Sessions',27h,' is not defined +; 2. Xref will point to CSLQuery::Initialize function +; 3. Follow xref, look for cmp instruction nearby +; 4. It will be comparsion with CSLQuery::bServerSku constant +; 5. Now it's easy to find other constants + +; Strings to find other values: +; CSLQuery::GetMaxUserSessions +; CSLQuery::IsAppServerInstalled failed: +; CSLQuery::AreRemoteConnectionsAllowed f +; CSLQuery::IsMultimonAllowed +; CSLQuery::GetMaxDebugSessions +; CSLQuery::IsFUSEnabled + +bFUSEnabled.x86 =A22A8 +lMaxUserSessions.x86 =A22AC +bAppServerAllowed.x86 =A22B0 +bInitialized.x86 =A22B4 +bMultimonAllowed.x86 =A22B8 +bServerSku.x86 =A22BC +ulMaxDebugSessions.x86=A22C0 +bRemoteConnAllowed.x86=A22C4 + +bFUSEnabled.x64 =C4490 +lMaxUserSessions.x64 =C4494 +bAppServerAllowed.x64 =C4498 +bInitialized.x64 =C449C +bMultimonAllowed.x64 =C44A0 +bServerSku.x64 =C44A4 +ulMaxDebugSessions.x64=C44A8 +bRemoteConnAllowed.x64=C44AC + +[6.3.9600.16384-SLInit] +bFUSEnabled.x86 =C02A8 +lMaxUserSessions.x86 =C02AC +bAppServerAllowed.x86 =C02B0 +bInitialized.x86 =C02B4 +bMultimonAllowed.x86 =C02B8 +bServerSku.x86 =C02BC +ulMaxDebugSessions.x86=C02C0 +bRemoteConnAllowed.x86=C02C4 + +bServerSku.x64 =E6494 +ulMaxDebugSessions.x64=E6498 +bRemoteConnAllowed.x64=E649C +bFUSEnabled.x64 =E64A0 +lMaxUserSessions.x64 =E64A4 +bAppServerAllowed.x64 =E64A8 +bInitialized.x64 =E64AC +bMultimonAllowed.x64 =E64B0 + +[6.3.9600.17095-SLInit] +bFUSEnabled.x86 =C12A8 +lMaxUserSessions.x86 =C12AC +bAppServerAllowed.x86 =C12B0 +bInitialized.x86 =C12B4 +bMultimonAllowed.x86 =C12B8 +bServerSku.x86 =C12BC +ulMaxDebugSessions.x86=C12C0 +bRemoteConnAllowed.x86=C12C4 + +bServerSku.x64 =E4494 +ulMaxDebugSessions.x64=E4498 +bRemoteConnAllowed.x64=E449C +bFUSEnabled.x64 =E44A0 +lMaxUserSessions.x64 =E44A4 +bAppServerAllowed.x64 =E44A8 +bInitialized.x64 =E44AC +bMultimonAllowed.x64 =E44B0 + +[6.3.9600.17415-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =F9054 +lMaxUserSessions.x64 =F9058 +bAppServerAllowed.x64 =F905C +bInitialized.x64 =F9060 +bMultimonAllowed.x64 =F9064 +bServerSku.x64 =F9068 +ulMaxDebugSessions.x64=F906C +bRemoteConnAllowed.x64=F9070 + +[6.3.9600.18692-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =F9054 +lMaxUserSessions.x64 =F9058 +bAppServerAllowed.x64 =F905C +bInitialized.x64 =F9060 +bMultimonAllowed.x64 =F9064 +bServerSku.x64 =F9068 +ulMaxDebugSessions.x64=F906C +bRemoteConnAllowed.x64=F9070 + +[6.3.9600.18708-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =FA054 +lMaxUserSessions.x64 =FA058 +bAppServerAllowed.x64 =FA05C +bInitialized.x64 =FA060 +bMultimonAllowed.x64 =FA064 +bServerSku.x64 =FA068 +ulMaxDebugSessions.x64=FA06C +bRemoteConnAllowed.x64=FA070 + +[6.3.9600.18928-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =FA054 +lMaxUserSessions.x64 =FA058 +bAppServerAllowed.x64 =FA05C +bInitialized.x64 =FA060 +bMultimonAllowed.x64 =FA064 +bServerSku.x64 =FA068 +ulMaxDebugSessions.x64=FA06C +bRemoteConnAllowed.x64=FA070 + +[6.3.9600.19093-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =FA054 +lMaxUserSessions.x64 =FA058 +bAppServerAllowed.x64 =FA05C +bInitialized.x64 =FA060 +bMultimonAllowed.x64 =FA064 +bServerSku.x64 =FA068 +ulMaxDebugSessions.x64=FA06C +bRemoteConnAllowed.x64=FA070 + +[6.4.9841.0-SLInit] +bFUSEnabled.x86 =BF9F0 +lMaxUserSessions.x86 =BF9F4 +bAppServerAllowed.x86 =BF9F8 +bInitialized.x86 =BF9FC +bMultimonAllowed.x86 =BFA00 +bServerSku.x86 =BFA04 +ulMaxDebugSessions.x86=BFA08 +bRemoteConnAllowed.x86=BFA0C + +bFUSEnabled.x64 =ECFF8 +lMaxUserSessions.x64 =ECFFC +bAppServerAllowed.x64 =ED000 +bInitialized.x64 =ED004 +bMultimonAllowed.x64 =ED008 +bServerSku.x64 =ED00C +ulMaxDebugSessions.x64=ED010 +bRemoteConnAllowed.x64=ED014 + +[6.4.9860.0-SLInit] +bFUSEnabled.x86 =BF7E0 +lMaxUserSessions.x86 =BF7E4 +bAppServerAllowed.x86 =BF7E8 +bInitialized.x86 =BF7EC +bMultimonAllowed.x86 =BF7F0 +bServerSku.x86 =BF7F4 +ulMaxDebugSessions.x86=BF7F8 +bRemoteConnAllowed.x86=BF7FC + +bFUSEnabled.x64 =ECBD8 +lMaxUserSessions.x64 =ECBDC +bAppServerAllowed.x64 =ECBE0 +bInitialized.x64 =ECBE4 +bMultimonAllowed.x64 =ECBE8 +bServerSku.x64 =ECBEC +ulMaxDebugSessions.x64=ECBF0 +bRemoteConnAllowed.x64=ECBF4 + +[6.4.9879.0-SLInit] +bFUSEnabled.x86 =C27D8 +lMaxUserSessions.x86 =C27DC +bAppServerAllowed.x86 =C27E0 +bInitialized.x86 =C27E4 +bMultimonAllowed.x86 =C27E8 +bServerSku.x86 =C27EC +ulMaxDebugSessions.x86=C27F0 +bRemoteConnAllowed.x86=C27F4 + +bFUSEnabled.x64 =EDBF0 +lMaxUserSessions.x64 =EDBF4 +bAppServerAllowed.x64 =EDBF8 +bInitialized.x64 =EDBFC +bMultimonAllowed.x64 =EDC00 +bServerSku.x64 =EDC04 +ulMaxDebugSessions.x64=EDC08 +bRemoteConnAllowed.x64=EDC0C + +[10.0.9926.0-SLInit] +bFUSEnabled.x86 =C17D8 +lMaxUserSessions.x86 =C17DC +bAppServerAllowed.x86 =C17E0 +bInitialized.x86 =C17E4 +bMultimonAllowed.x86 =C17E8 +bServerSku.x86 =C17EC +ulMaxDebugSessions.x86=C17F0 +bRemoteConnAllowed.x86=C17F4 +; x64 contributed by v-yadli +bFUSEnabled.x64 =EEBF0 +lMaxUserSessions.x64 =EEBF4 +bAppServerAllowed.x64 =EEBF8 +bInitialized.x64 =EEBFC +bMultimonAllowed.x64 =EEC00 +bServerSku.x64 =EEC04 +ulMaxDebugSessions.x64=EEC08 +bRemoteConnAllowed.x64=EEC0C + +[10.0.10041.0-SLInit] +bFUSEnabled.x86 =C5F60 +lMaxUserSessions.x86 =C5F64 +bAppServerAllowed.x86 =C5F68 +bInitialized.x86 =C5F6C +bMultimonAllowed.x86 =C5F70 +bServerSku.x86 =C5F74 +ulMaxDebugSessions.x86=C5F78 +bRemoteConnAllowed.x86=C5F7C + +bFUSEnabled.x64 =F3448 +lMaxUserSessions.x64 =F344C +bAppServerAllowed.x64 =F3450 +bInitialized.x64 =F3454 +bMultimonAllowed.x64 =F3458 +bServerSku.x64 =F345C +ulMaxDebugSessions.x64=F3460 +bRemoteConnAllowed.x64=F3464 + +[10.0.10240.16384-SLInit] +bFUSEnabled.x86 =C3F60 +lMaxUserSessions.x86 =C3F64 +bAppServerAllowed.x86 =C3F68 +bInitialized.x86 =C3F6C +bMultimonAllowed.x86 =C3F70 +bServerSku.x86 =C3F74 +ulMaxDebugSessions.x86=C3F78 +bRemoteConnAllowed.x86=C3F7C + +lMaxUserSessions.x64 =F23B0 +bAppServerAllowed.x64 =F23B4 +bServerSku.x64 =F23B8 +bFUSEnabled.x64 =F3460 +bInitialized.x64 =F3464 +bMultimonAllowed.x64 =F3468 +ulMaxDebugSessions.x64=F346C +bRemoteConnAllowed.x64=F3470 + +[10.0.10586.0-SLInit] +bFUSEnabled.x86 =C3F60 +lMaxUserSessions.x86 =C3F64 +bAppServerAllowed.x86 =C3F68 +bInitialized.x86 =C3F6C +bMultimonAllowed.x86 =C3F70 +bServerSku.x86 =C3F74 +ulMaxDebugSessions.x86=C3F78 +bRemoteConnAllowed.x86=C3F7C + +lMaxUserSessions.x64 =F23B0 +bAppServerAllowed.x64 =F23B4 +bServerSku.x64 =F23B8 +bFUSEnabled.x64 =F3460 +bInitialized.x64 =F3464 +bMultimonAllowed.x64 =F3468 +ulMaxDebugSessions.x64=F346C +bRemoteConnAllowed.x64=F3470 + +[10.0.10586.589-SLInit] +bFUSEnabled.x86 =C3F60 +lMaxUserSessions.x86 =C3F64 +bAppServerAllowed.x86 =C3F68 +bInitialized.x86 =C3F6C +bMultimonAllowed.x86 =C3F70 +bServerSku.x86 =C3F74 +ulMaxDebugSessions.x86=C3F78 +bRemoteConnAllowed.x86=C3F7C + +lMaxUserSessions.x64 =F23B0 +bAppServerAllowed.x64 =F23B4 +bServerSku.x64 =F23B8 +bFUSEnabled.x64 =F3460 +bInitialized.x64 =F3464 +bMultimonAllowed.x64 =F3468 +ulMaxDebugSessions.x64=F346C +bRemoteConnAllowed.x64=F3470 + +[10.0.11082.1000-SLInit] +bFUSEnabled.x86 =C3F60 +lMaxUserSessions.x86 =C3F64 +bAppServerAllowed.x86 =C3F68 +bInitialized.x86 =C3F6C +bMultimonAllowed.x86 =C3F70 +bServerSku.x86 =C3F74 +ulMaxDebugSessions.x86=C3F78 +bRemoteConnAllowed.x86=C3F7C + +lMaxUserSessions.x64 =F23B0 +bAppServerAllowed.x64 =F23B4 +bServerSku.x64 =F23B8 +bFUSEnabled.x64 =F3460 +bInitialized.x64 =F3464 +bMultimonAllowed.x64 =F3468 +ulMaxDebugSessions.x64=F346C +bRemoteConnAllowed.x64=F3470 + +[10.0.11102.1000-SLInit] +bInitialized.x86 =C1F5C +bServerSku.x86 =C1F60 +lMaxUserSessions.x86 =C1F64 +bAppServerAllowed.x86 =C1F68 +bRemoteConnAllowed.x86=C1F6C +bMultimonAllowed.x86 =C1F70 +ulMaxDebugSessions.x86=C1F74 +bFUSEnabled.x86 =C1F78 + +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 +bServerSku.x64 =F244C +lMaxUserSessions.x64 =F2450 +bAppServerAllowed.x64 =F2454 + +[10.0.14251.1000-SLInit] +bInitialized.x86 =C1F5C +bServerSku.x86 =C1F60 +lMaxUserSessions.x86 =C1F64 +bAppServerAllowed.x86 =C1F68 +bRemoteConnAllowed.x86=C1F6C +bMultimonAllowed.x86 =C1F70 +ulMaxDebugSessions.x86=C1F74 +bFUSEnabled.x86 =C1F78 + +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 +bServerSku.x64 =F244C +lMaxUserSessions.x64 =F2450 +bAppServerAllowed.x64 =F2454 + +[10.0.14271.1000-SLInit] +bInitialized.x86 =C0F5C +bServerSku.x86 =C0F60 +lMaxUserSessions.x86 =C0F64 +bAppServerAllowed.x86 =C0F68 +bRemoteConnAllowed.x86=C0F6C +bMultimonAllowed.x86 =C0F70 +ulMaxDebugSessions.x86=C0F74 +bFUSEnabled.x86 =C0F78 + +bServerSku.x64 =EF3C0 +lMaxUserSessions.x64 =EF3C4 +bAppServerAllowed.x64 =EF3C8 +bInitialized.x64 =F0460 +bRemoteConnAllowed.x64=F0464 +bMultimonAllowed.x64 =F0468 +ulMaxDebugSessions.x64=F046C +bFUSEnabled.x64 =F0470 + +[10.0.14279.1000-SLInit] +bInitialized.x86 =C0F5C +bServerSku.x86 =C0F60 +lMaxUserSessions.x86 =C0F64 +bAppServerAllowed.x86 =C0F68 +bRemoteConnAllowed.x86=C0F6C +bMultimonAllowed.x86 =C0F70 +ulMaxDebugSessions.x86=C0F74 +bFUSEnabled.x86 =C0F78 + +bServerSku.x64 =EF3C0 +lMaxUserSessions.x64 =EF3C4 +bAppServerAllowed.x64 =EF3C8 +bInitialized.x64 =F0460 +bRemoteConnAllowed.x64=F0464 +bMultimonAllowed.x64 =F0468 +ulMaxDebugSessions.x64=F046C +bFUSEnabled.x64 =F0470 + +[10.0.14295.1000-SLInit] +bInitialized.x86 =C0F5C +bServerSku.x86 =C0F60 +lMaxUserSessions.x86 =C0F64 +bAppServerAllowed.x86 =C0F68 +bRemoteConnAllowed.x86=C0F6C +bMultimonAllowed.x86 =C0F70 +ulMaxDebugSessions.x86=C0F74 +bFUSEnabled.x86 =C0F78 + +bServerSku.x64 =E73C0 +lMaxUserSessions.x64 =E73C4 +bAppServerAllowed.x64 =E73C8 +bInitialized.x64 =E8460 +bRemoteConnAllowed.x64=E8464 +bMultimonAllowed.x64 =E8468 +ulMaxDebugSessions.x64=E846C +bFUSEnabled.x64 =E8470 + +[10.0.14300.1000-SLInit] +bServerSku.x64 =E93C0 +lMaxUserSessions.x64 =E93C4 +bAppServerAllowed.x64 =E93C8 +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 + +[10.0.14316.1000-SLInit] +bInitialized.x86 =C4F58 +bServerSku.x86 =C4F5C +lMaxUserSessions.x86 =C4F60 +bAppServerAllowed.x86 =C4F64 +bRemoteConnAllowed.x86=C4F68 +bMultimonAllowed.x86 =C4F6C +ulMaxDebugSessions.x86=C4F70 +bFUSEnabled.x86 =C4F74 + +bServerSku.x64 =E93C0 +lMaxUserSessions.x64 =E93C4 +bAppServerAllowed.x64 =E93C8 +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 + +[10.0.14328.1000-SLInit] +bInitialized.x86 =C4F58 +bServerSku.x86 =C4F5C +lMaxUserSessions.x86 =C4F60 +bAppServerAllowed.x86 =C4F64 +bRemoteConnAllowed.x86=C4F68 +bMultimonAllowed.x86 =C4F6C +ulMaxDebugSessions.x86=C4F70 +bFUSEnabled.x86 =C4F74 + +bServerSku.x64 =E93C0 +lMaxUserSessions.x64 =E93C4 +bAppServerAllowed.x64 =E93C8 +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 + +[10.0.14332.1001-SLInit] +; contributed by maxpiva +bInitialized.x86 =C4F58 +bServerSku.x86 =C4F5C +lMaxUserSessions.x86 =C4F60 +bAppServerAllowed.x86 =C4F64 +bRemoteConnAllowed.x86=C4F68 +bMultimonAllowed.x86 =C4F6C +ulMaxDebugSessions.x86=C4F70 +bFUSEnabled.x86 =C4F74 + +bServerSku.x64 =E93C0 +lMaxUserSessions.x64 =E93C4 +bAppServerAllowed.x64 =E93C8 +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 + +[10.0.14342.1000-SLInit] +bInitialized.x86 =C4F58 +bServerSku.x86 =C4F5C +lMaxUserSessions.x86 =C4F60 +bAppServerAllowed.x86 =C4F64 +bRemoteConnAllowed.x86=C4F68 +bMultimonAllowed.x86 =C4F6C +ulMaxDebugSessions.x86=C4F70 +bFUSEnabled.x86 =C4F74 + +bInitialized.x64 =E9430 +bRemoteConnAllowed.x64=E9434 +bMultimonAllowed.x64 =E9438 +ulMaxDebugSessions.x64=E943C +bFUSEnabled.x64 =E9440 +bServerSku.x64 =E944C +lMaxUserSessions.x64 =E9450 +bAppServerAllowed.x64 =E9454 + +[10.0.14352.1002-SLInit] +bInitialized.x86 =C0F5C +bServerSku.x86 =C0F60 +lMaxUserSessions.x86 =C0F64 +bAppServerAllowed.x86 =C0F68 +bRemoteConnAllowed.x86=C0F6C +bMultimonAllowed.x86 =C0F70 +ulMaxDebugSessions.x86=C0F74 +bFUSEnabled.x86 =C0F78 + +bServerSku.x64 =E73C0 +lMaxUserSessions.x64 =E73C4 +bAppServerAllowed.x64 =E73C8 +bInitialized.x64 =E8460 +bRemoteConnAllowed.x64=E8464 +bMultimonAllowed.x64 =E8468 +ulMaxDebugSessions.x64=E846C +bFUSEnabled.x64 =E8470 + +[10.0.14366.0-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA480 +bRemoteConnAllowed.x64=EA484 +bMultimonAllowed.x64 =EA488 +ulMaxDebugSessions.x64=EA48C +bFUSEnabled.x64 =EA490 + +[10.0.14367.0-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA480 +bRemoteConnAllowed.x64=EA484 +bMultimonAllowed.x64 =EA488 +ulMaxDebugSessions.x64=EA48C +bFUSEnabled.x64 =EA490 + +[10.0.14372.0-SLInit] +bInitialized.x86 =C3F68 +bServerSku.x86 =C3F6C +lMaxUserSessions.x86 =C3F70 +bAppServerAllowed.x86 =C3F74 +bRemoteConnAllowed.x86=C3F78 +bMultimonAllowed.x86 =C3F7C +ulMaxDebugSessions.x86=C3F80 +bFUSEnabled.x86 =C3F84 +; x64 contributed by kbmorris +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 +bServerSku.x64 =EA47C +lMaxUserSessions.x64 =EA480 +bAppServerAllowed.x64 =EA484 + +[10.0.14379.0-SLInit] +bInitialized.x86 =C3F68 +bServerSku.x86 =C3F6C +lMaxUserSessions.x86 =C3F70 +bAppServerAllowed.x86 =C3F74 +bRemoteConnAllowed.x86=C3F78 +bMultimonAllowed.x86 =C3F7C +ulMaxDebugSessions.x86=C3F80 +bFUSEnabled.x86 =C3F84 + +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 +bServerSku.x64 =EA47C +lMaxUserSessions.x64 =EA480 +bAppServerAllowed.x64 =EA484 + +[10.0.14383.0-SLInit] +bInitialized.x86 =C3F68 +bServerSku.x86 =C3F6C +lMaxUserSessions.x86 =C3F70 +bAppServerAllowed.x86 =C3F74 +bRemoteConnAllowed.x86=C3F78 +bMultimonAllowed.x86 =C3F7C +ulMaxDebugSessions.x86=C3F80 +bFUSEnabled.x86 =C3F84 + +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 +bServerSku.x64 =EA47C +lMaxUserSessions.x64 =EA480 +bAppServerAllowed.x64 =EA484 + +[10.0.14385.0-SLInit] +bInitialized.x86 =C3F68 +bServerSku.x86 =C3F6C +lMaxUserSessions.x86 =C3F70 +bAppServerAllowed.x86 =C3F74 +bRemoteConnAllowed.x86=C3F78 +bMultimonAllowed.x86 =C3F7C +ulMaxDebugSessions.x86=C3F80 +bFUSEnabled.x86 =C3F84 + +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 +bServerSku.x64 =EA47C +lMaxUserSessions.x64 =EA480 +bAppServerAllowed.x64 =EA484 + +[10.0.14388.0-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14393.0-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14393.1198-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +[10.0.14393.1737-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14393.2457-SLInit] +bInitialized.x86 =C1F94 +bServerSku.x86 =C1F98 +lMaxUserSessions.x86 =C1F9C +bAppServerAllowed.x86 =C1FA0 +bRemoteConnAllowed.x86=C1FA4 +bMultimonAllowed.x86 =C1FA8 +ulMaxDebugSessions.x86=C1FAC +bFUSEnabled.x86 =C1FB0 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14901.1000-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14905.1000-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14915.1000-SLInit] +bInitialized.x86 =C4F6C +bServerSku.x86 =C4F70 +lMaxUserSessions.x86 =C4F74 +bAppServerAllowed.x86 =C4F78 +bRemoteConnAllowed.x86=C4F7C +bMultimonAllowed.x86 =C4F80 +ulMaxDebugSessions.x86=C4F84 +bFUSEnabled.x86 =C4F88 + +bServerSku.x64 =E93D0 +lMaxUserSessions.x64 =E93D4 +bAppServerAllowed.x64 =E93D8 +bInitialized.x64 =EA470 +bRemoteConnAllowed.x64=EA474 +bMultimonAllowed.x64 =EA478 +ulMaxDebugSessions.x64=EA47C +bFUSEnabled.x64 =EA480 + +[10.0.14926.1000-SLInit] +bInitialized.x86 =C4F6C +bServerSku.x86 =C4F70 +lMaxUserSessions.x86 =C4F74 +bAppServerAllowed.x86 =C4F78 +bRemoteConnAllowed.x86=C4F7C +bMultimonAllowed.x86 =C4F80 +ulMaxDebugSessions.x86=C4F84 +bFUSEnabled.x86 =C4F88 + +bServerSku.x64 =E93D0 +lMaxUserSessions.x64 =E93D4 +bAppServerAllowed.x64 =E93D8 +bInitialized.x64 =EA470 +bRemoteConnAllowed.x64=EA474 +bMultimonAllowed.x64 =EA478 +ulMaxDebugSessions.x64=EA47C +bFUSEnabled.x64 =EA480 + +[10.0.14931.1000-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E63D0 +lMaxUserSessions.x64 =E63D4 +bAppServerAllowed.x64 =E63D8 +bInitialized.x64 =E7470 +bRemoteConnAllowed.x64=E7474 +bMultimonAllowed.x64 =E7478 +ulMaxDebugSessions.x64=E747C +bFUSEnabled.x64 =E7480 + +[10.0.14936.1000-SLInit] +bInitialized.x86 =C0F6C +bServerSku.x86 =C0F70 +lMaxUserSessions.x86 =C0F74 +bAppServerAllowed.x86 =C0F78 +bRemoteConnAllowed.x86=C0F7C +bMultimonAllowed.x86 =C0F80 +ulMaxDebugSessions.x86=C0F84 +bFUSEnabled.x86 =C0F88 + +bInitialized.x64 =E8460 +bRemoteConnAllowed.x64=E8464 +bMultimonAllowed.x64 =E8468 +ulMaxDebugSessions.x64=E846C +bFUSEnabled.x64 =E8470 +bServerSku.x64 =E847C +lMaxUserSessions.x64 =E8480 +bAppServerAllowed.x64 =E8484 + +[10.0.14942.1000-SLInit] +bInitialized.x86 =C0F6C +bServerSku.x86 =C0F70 +lMaxUserSessions.x86 =C0F74 +bAppServerAllowed.x86 =C0F78 +bRemoteConnAllowed.x86=C0F7C +bMultimonAllowed.x86 =C0F80 +ulMaxDebugSessions.x86=C0F84 +bFUSEnabled.x86 =C0F88 + +bInitialized.x64 =EC460 +bRemoteConnAllowed.x64=EC464 +bMultimonAllowed.x64 =EC468 +ulMaxDebugSessions.x64=EC46C +bFUSEnabled.x64 =EC470 +bServerSku.x64 =EC47C +lMaxUserSessions.x64 =EC480 +bAppServerAllowed.x64 =EC484 + +[10.0.14946.1000-SLInit] +bInitialized.x86 =C0F6C +bServerSku.x86 =C0F70 +lMaxUserSessions.x86 =C0F74 +bAppServerAllowed.x86 =C0F78 +bRemoteConnAllowed.x86=C0F7C +bMultimonAllowed.x86 =C0F80 +ulMaxDebugSessions.x86=C0F84 +bFUSEnabled.x86 =C0F88 + +bInitialized.x64 =EC460 +bRemoteConnAllowed.x64=EC464 +bMultimonAllowed.x64 =EC468 +ulMaxDebugSessions.x64=EC46C +bFUSEnabled.x64 =EC470 +bServerSku.x64 =EC47C +lMaxUserSessions.x64 =EC480 +bAppServerAllowed.x64 =EC484 + +[10.0.14951.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =EF3D0 +lMaxUserSessions.x64 =EF3D4 +bAppServerAllowed.x64 =EF3D8 +bInitialized.x64 =F0470 +bRemoteConnAllowed.x64=F0474 +bMultimonAllowed.x64 =F0478 +ulMaxDebugSessions.x64=F047C +bFUSEnabled.x64 =F0480 + +[10.0.14955.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =EF3D0 +lMaxUserSessions.x64 =EF3D4 +bAppServerAllowed.x64 =EF3D8 +bInitialized.x64 =F0470 +bRemoteConnAllowed.x64=F0474 +bMultimonAllowed.x64 =F0478 +ulMaxDebugSessions.x64=F047C +bFUSEnabled.x64 =F0480 + +[10.0.14959.1000-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =EE3D0 +lMaxUserSessions.x64 =EE3D4 +bAppServerAllowed.x64 =EE3D8 +bInitialized.x64 =EF470 +bRemoteConnAllowed.x64=EF474 +bMultimonAllowed.x64 =EF478 +ulMaxDebugSessions.x64=EF47C +bFUSEnabled.x64 =EF480 + +[10.0.14965.1001-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bInitialized.x64 =EF460 +bRemoteConnAllowed.x64=EF464 +bMultimonAllowed.x64 =EF468 +ulMaxDebugSessions.x64=EF46C +bFUSEnabled.x64 =EF470 +bServerSku.x64 =EF47C +lMaxUserSessions.x64 =EF480 +bAppServerAllowed.x64 =EF484 + +[10.0.14971.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =EE3C0 +lMaxUserSessions.x64 =EE3C4 +bAppServerAllowed.x64 =EE3C8 +bInitialized.x64 =EE470 +bRemoteConnAllowed.x64=EE474 +bMultimonAllowed.x64 =EE478 +ulMaxDebugSessions.x64=EE47C +bFUSEnabled.x64 =EE480 + +[10.0.14986.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =EE3C0 +lMaxUserSessions.x64 =EE3C4 +bAppServerAllowed.x64 =EE3C8 +bInitialized.x64 =EE470 +bRemoteConnAllowed.x64=EE474 +bMultimonAllowed.x64 =EE478 +ulMaxDebugSessions.x64=EE47C +bFUSEnabled.x64 =EE480 + +[10.0.14997.1001-SLInit] +bServerSku.x64 =F0408 +lMaxUserSessions.x64 =F040C +bAppServerAllowed.x64 =F0410 +bInitialized.x64 =F0480 +bRemoteConnAllowed.x64=F0484 +bMultimonAllowed.x64 =F0488 +ulMaxDebugSessions.x64=F048C +bFUSEnabled.x64 =F0490 + +[10.0.15002.1001-SLInit] +bInitialized.x86 =C6F74 +bServerSku.x86 =C6F78 +lMaxUserSessions.x86 =C6F7C +bAppServerAllowed.x86 =C6F80 +bRemoteConnAllowed.x86=C6F84 +bMultimonAllowed.x86 =C6F88 +ulMaxDebugSessions.x86=C6F8C +bFUSEnabled.x86 =C6F90 + +bServerSku.x64 =F0408 +lMaxUserSessions.x64 =F040C +bAppServerAllowed.x64 =F0410 +bInitialized.x64 =F0480 +bRemoteConnAllowed.x64=F0484 +bMultimonAllowed.x64 =F0488 +ulMaxDebugSessions.x64=F048C +bFUSEnabled.x64 =F0490 + +[10.0.15007.1000-SLInit] +bInitialized.x86 =C6F74 +bServerSku.x86 =C6F78 +lMaxUserSessions.x86 =C6F7C +bAppServerAllowed.x86 =C6F80 +bRemoteConnAllowed.x86=C6F84 +bMultimonAllowed.x86 =C6F88 +ulMaxDebugSessions.x86=C6F8C +bFUSEnabled.x86 =C6F90 + +bServerSku.x64 =F0408 +lMaxUserSessions.x64 =F040C +bAppServerAllowed.x64 =F0410 +bInitialized.x64 =F0480 +bRemoteConnAllowed.x64=F0484 +bMultimonAllowed.x64 =F0488 +ulMaxDebugSessions.x64=F048C +bFUSEnabled.x64 =F0490 + +[10.0.15014.1000-SLInit] +bInitialized.x86 =C6F74 +bServerSku.x86 =C6F78 +lMaxUserSessions.x86 =C6F7C +bAppServerAllowed.x86 =C6F80 +bRemoteConnAllowed.x86=C6F84 +bMultimonAllowed.x86 =C6F88 +ulMaxDebugSessions.x86=C6F8C +bFUSEnabled.x86 =C6F90 + +bServerSku.x64 =F0408 +lMaxUserSessions.x64 =F040C +bAppServerAllowed.x64 =F0410 +bInitialized.x64 =F0480 +bRemoteConnAllowed.x64=F0484 +bMultimonAllowed.x64 =F0488 +ulMaxDebugSessions.x64=F048C +bFUSEnabled.x64 =F0490 + +[10.0.15019.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =ECBDC +lMaxUserSessions.x64 =ECBE0 +bAppServerAllowed.x64 =ECBE4 +bInitialized.x64 =F0490 +bRemoteConnAllowed.x64=F0494 +bMultimonAllowed.x64 =F0498 +ulMaxDebugSessions.x64=F049C +bFUSEnabled.x64 =F04A0 + +[10.0.15025.1000-SLInit] +bServerSku.x64 =EE3E0 +lMaxUserSessions.x64 =EE3E4 +bAppServerAllowed.x64 =EE3E8 +bInitialized.x64 =EF488 +bRemoteConnAllowed.x64=EF48C +bMultimonAllowed.x64 =EF490 +ulMaxDebugSessions.x64=EF494 +bFUSEnabled.x64 =EF498 + +[10.0.15031.0-SLInit] +bInitialized.x86 =C2F6C +bServerSku.x86 =C2F70 +lMaxUserSessions.x86 =C2F74 +bAppServerAllowed.x86 =C2F78 +bRemoteConnAllowed.x86=C2F7C +bMultimonAllowed.x86 =C2F80 +ulMaxDebugSessions.x86=C2F84 +bFUSEnabled.x86 =C2F88 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA488 +bRemoteConnAllowed.x64=EA48C +bMultimonAllowed.x64 =EA490 +ulMaxDebugSessions.x64=EA494 +bFUSEnabled.x64 =EA498 + +[10.0.15042.0-SLInit] +bInitialized.x86 =C2F6C +bServerSku.x86 =C2F70 +lMaxUserSessions.x86 =C2F74 +bAppServerAllowed.x86 =C2F78 +bRemoteConnAllowed.x86=C2F7C +bMultimonAllowed.x86 =C2F80 +ulMaxDebugSessions.x86=C2F84 +bFUSEnabled.x86 =C2F88 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA488 +bRemoteConnAllowed.x64=EA48C +bMultimonAllowed.x64 =EA490 +ulMaxDebugSessions.x64=EA494 +bFUSEnabled.x64 =EA498 + +[10.0.15046.0-SLInit] +bInitialized.x86 =C4F18 +bServerSku.x86 =C4F1C +lMaxUserSessions.x86 =C4F20 +bAppServerAllowed.x86 =C4F24 +bRemoteConnAllowed.x86=C4F28 +ulMaxDebugSessions.x86=C4F2C +bMultimonAllowed.x86 =C5010 +bFUSEnabled.x86 =C5014 + +bInitialized.x64 =EB468 +bRemoteConnAllowed.x64=EB46C +bMultimonAllowed.x64 =EB470 +ulMaxDebugSessions.x64=EB474 +bFUSEnabled.x64 =EB478 +bServerSku.x64 =EB484 +lMaxUserSessions.x64 =EB488 +bAppServerAllowed.x64 =EB48C + +[10.0.15048.0-SLInit] +bInitialized.x86 =C4F18 +bServerSku.x86 =C4F1C +lMaxUserSessions.x86 =C4F20 +bAppServerAllowed.x86 =C4F24 +bRemoteConnAllowed.x86=C4F28 +ulMaxDebugSessions.x86=C4F2C +bMultimonAllowed.x86 =C5010 +bFUSEnabled.x86 =C5014 + +bInitialized.x64 =EB468 +bRemoteConnAllowed.x64=EB46C +bMultimonAllowed.x64 =EB470 +ulMaxDebugSessions.x64=EB474 +bFUSEnabled.x64 =EB478 +bServerSku.x64 =EB484 +lMaxUserSessions.x64 =EB488 +bAppServerAllowed.x64 =EB48C + +[10.0.15055.0-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bServerSku.x64 =E83D8 +lMaxUserSessions.x64 =E83DC +bAppServerAllowed.x64 =E83E0 +bInitialized.x64 =E9490 +bRemoteConnAllowed.x64=E9494 +bMultimonAllowed.x64 =E9498 +ulMaxDebugSessions.x64=E949C +bFUSEnabled.x64 =E94A0 + +[10.0.15058.0-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15061.0-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15063.0-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15063.296-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15063.994-SLInit] +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15063.1155-SLInit] +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.16179.1000-SLInit] +bInitialized.x86 =C7F6C +bServerSku.x86 =C7F70 +lMaxUserSessions.x86 =C7F74 +bAppServerAllowed.x86 =C7F78 +bRemoteConnAllowed.x86=C7F7C +bMultimonAllowed.x86 =C7F80 +ulMaxDebugSessions.x86=C7F84 +bFUSEnabled.x86 =C7F88 + +bServerSku.x64 =E83D8 +lMaxUserSessions.x64 =E83DC +bAppServerAllowed.x64 =E83E0 +bInitialized.x64 =E9490 +bRemoteConnAllowed.x64=E9494 +bMultimonAllowed.x64 =E9498 +ulMaxDebugSessions.x64=E949C +bFUSEnabled.x64 =E94A0 + +[10.0.16184.1001-SLInit] +bInitialized.x86 =C7F6C +bServerSku.x86 =C7F70 +lMaxUserSessions.x86 =C7F74 +bAppServerAllowed.x86 =C7F78 +bRemoteConnAllowed.x86=C7F7C +bMultimonAllowed.x86 =C7F80 +ulMaxDebugSessions.x86=C7F84 +bFUSEnabled.x86 =C7F88 + +bServerSku.x64 =E83D8 +lMaxUserSessions.x64 =E83DC +bAppServerAllowed.x64 =E83E0 +bInitialized.x64 =E9490 +bRemoteConnAllowed.x64=E9494 +bMultimonAllowed.x64 =E9498 +ulMaxDebugSessions.x64=E949C +bFUSEnabled.x64 =E94A0 + +[10.0.16199.1000-SLInit] +bInitialized.x86 =C8F74 +bServerSku.x86 =C8F78 +lMaxUserSessions.x86 =C8F7C +bAppServerAllowed.x86 =C8F80 +bRemoteConnAllowed.x86=C8F84 +bMultimonAllowed.x86 =C8F88 +ulMaxDebugSessions.x86=C8F8C +bFUSEnabled.x86 =C8F90 + +bServerSku.x64 =E83E8 +lMaxUserSessions.x64 =E83EC +bAppServerAllowed.x64 =E83F0 +bInitialized.x64 =E94A0 +bRemoteConnAllowed.x64=E94A4 +bMultimonAllowed.x64 =E94A8 +ulMaxDebugSessions.x64=E94AC +bFUSEnabled.x64 =E94B0 + +[10.0.16215.1000-SLInit] +bInitialized.x86 =C5F78 +bServerSku.x86 =C5F7C +lMaxUserSessions.x86 =C5F80 +bAppServerAllowed.x86 =C5F84 +bRemoteConnAllowed.x86=C5F88 +bMultimonAllowed.x86 =C5F8C +ulMaxDebugSessions.x86=C5F90 +bFUSEnabled.x86 =C5F94 + +bServerSku.x64 =EA3E8 +lMaxUserSessions.x64 =EA3EC +bAppServerAllowed.x64 =EA3F0 +bInitialized.x64 =EB4A0 +bRemoteConnAllowed.x64=EB4A4 +bMultimonAllowed.x64 =EB4A8 +ulMaxDebugSessions.x64=EB4AC +bFUSEnabled.x64 =EB4B0 + +[10.0.16232.1000-SLInit] +bInitialized.x86 =C5F78 +bServerSku.x86 =C5F7C +lMaxUserSessions.x86 =C5F80 +bAppServerAllowed.x86 =C5F84 +bRemoteConnAllowed.x86=C5F88 +bMultimonAllowed.x86 =C5F8C +ulMaxDebugSessions.x86=C5F90 +bFUSEnabled.x86 =C5F94 + +bServerSku.x64 =EA3E8 +lMaxUserSessions.x64 =EA3EC +bAppServerAllowed.x64 =EA3F0 +bInitialized.x64 =EB4A0 +bRemoteConnAllowed.x64=EB4A4 +bMultimonAllowed.x64 =EB4A8 +ulMaxDebugSessions.x64=EB4AC +bFUSEnabled.x64 =EB4B0 + +[10.0.16237.1001-SLInit] +bInitialized.x86 =C5F78 +bServerSku.x86 =C5F7C +lMaxUserSessions.x86 =C5F80 +bAppServerAllowed.x86 =C5F84 +bRemoteConnAllowed.x86=C5F88 +bMultimonAllowed.x86 =C5F8C +ulMaxDebugSessions.x86=C5F90 +bFUSEnabled.x86 =C5F94 + +bServerSku.x64 =EB3EC +lMaxUserSessions.x64 =EB3F0 +bAppServerAllowed.x64 =EB3F4 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16241.1001-SLInit] +bInitialized.x86 =C5F78 +bServerSku.x86 =C5F7C +lMaxUserSessions.x86 =C5F80 +bAppServerAllowed.x86 =C5F84 +bRemoteConnAllowed.x86=C5F88 +bMultimonAllowed.x86 =C5F8C +ulMaxDebugSessions.x86=C5F90 +bFUSEnabled.x86 =C5F94 + +bServerSku.x64 =EB3EC +lMaxUserSessions.x64 =EB3F0 +bAppServerAllowed.x64 =EB3F4 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16251.0-SLInit] +bInitialized.x86 =C9F78 +bServerSku.x86 =C9F7C +lMaxUserSessions.x86 =C9F80 +bAppServerAllowed.x86 =C9F84 +bRemoteConnAllowed.x86=C9F88 +bMultimonAllowed.x86 =C9F8C +ulMaxDebugSessions.x86=C9F90 +bFUSEnabled.x86 =C9F94 + +bServerSku.x64 =EB3EC +lMaxUserSessions.x64 =EB3F0 +bAppServerAllowed.x64 =EB3F4 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16251.1000-SLInit] +bInitialized.x86 =C9F78 +bServerSku.x86 =C9F7C +lMaxUserSessions.x86 =C9F80 +bAppServerAllowed.x86 =C9F84 +bRemoteConnAllowed.x86=C9F88 +bMultimonAllowed.x86 =C9F8C +ulMaxDebugSessions.x86=C9F90 +bFUSEnabled.x86 =C9F94 + +bServerSku.x64 =EB3EC +lMaxUserSessions.x64 =EB3F0 +bAppServerAllowed.x64 =EB3F4 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16257.1-SLInit] +bInitialized.x86 =C9F7C +bServerSku.x86 =C9F80 +lMaxUserSessions.x86 =C9F84 +bAppServerAllowed.x86 =C9F88 +bRemoteConnAllowed.x86=C9F8C +bMultimonAllowed.x86 =C9F90 +ulMaxDebugSessions.x86=C9F94 +bFUSEnabled.x86 =C9F98 + +bServerSku.x64 =EB3F0 +lMaxUserSessions.x64 =EB3F4 +bAppServerAllowed.x64 =EB3F8 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16257.1000-SLInit] +bInitialized.x86 =C9F7C +bServerSku.x86 =C9F80 +lMaxUserSessions.x86 =C9F84 +bAppServerAllowed.x86 =C9F88 +bRemoteConnAllowed.x86=C9F8C +bMultimonAllowed.x86 =C9F90 +ulMaxDebugSessions.x86=C9F94 +bFUSEnabled.x86 =C9F98 + +bServerSku.x64 =EB3F0 +lMaxUserSessions.x64 =EB3F4 +bAppServerAllowed.x64 =EB3F8 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16273.1000-SLInit] +bInitialized.x86 =C9F7C +bServerSku.x86 =C9F80 +lMaxUserSessions.x86 =C9F84 +bAppServerAllowed.x86 =C9F88 +bRemoteConnAllowed.x86=C9F8C +bMultimonAllowed.x86 =C9F90 +ulMaxDebugSessions.x86=C9F94 +bFUSEnabled.x86 =C9F98 + +bServerSku.x64 =EB3F0 +lMaxUserSessions.x64 =EB3F4 +bAppServerAllowed.x64 =EB3F8 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16275.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16278.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16281.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16288.1-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16291.0-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16294.1-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16296.0-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16299.0-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16299.15-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16353.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16362.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.17004.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.17017.1000-SLInit] +bInitialized.x86 =C9EB8 +bServerSku.x86 =C9EBC +lMaxUserSessions.x86 =C9EC0 +bAppServerAllowed.x86 =C9EC4 +bRemoteConnAllowed.x86=C9EC8 +bMultimonAllowed.x86 =C9ECC +ulMaxDebugSessions.x86=C9ED0 +bFUSEnabled.x86 =C9ED4 + +bServerSku.x64 =EC2E8 +lMaxUserSessions.x64 =EC2EC +bAppServerAllowed.x64 =EC2F0 +bInitialized.x64 =ED3A0 +bRemoteConnAllowed.x64=ED3A4 +bMultimonAllowed.x64 =ED3A8 +ulMaxDebugSessions.x64=ED3AC +bFUSEnabled.x64 =ED3B0 + +[10.0.17025.1000-SLInit] +bInitialized.x86 =C9EB8 +bServerSku.x86 =C9EBC +lMaxUserSessions.x86 =C9EC0 +bAppServerAllowed.x86 =C9EC4 +bRemoteConnAllowed.x86=C9EC8 +bMultimonAllowed.x86 =C9ECC +ulMaxDebugSessions.x86=C9ED0 +bFUSEnabled.x86 =C9ED4 + +bServerSku.x64 =EC2E8 +lMaxUserSessions.x64 =EC2EC +bAppServerAllowed.x64 =EC2F0 +bInitialized.x64 =ED3A0 +bRemoteConnAllowed.x64=ED3A4 +bMultimonAllowed.x64 =ED3A8 +ulMaxDebugSessions.x64=ED3AC +bFUSEnabled.x64 =ED3B0 + +[10.0.17035.1000-SLInit] +bInitialized.x86 =C9ED8 +bServerSku.x86 =C9EDC +lMaxUserSessions.x86 =C9EE0 +bAppServerAllowed.x86 =C9EE4 +bRemoteConnAllowed.x86=C9EE8 +bMultimonAllowed.x86 =C9EEC +ulMaxDebugSessions.x86=C9EF0 +bFUSEnabled.x86 =C9EF4 + +bServerSku.x64 =EC2E8 +lMaxUserSessions.x64 =EC2EC +bAppServerAllowed.x64 =EC2F0 +bInitialized.x64 =ED3A0 +bRemoteConnAllowed.x64=ED3A4 +bMultimonAllowed.x64 =ED3A8 +ulMaxDebugSessions.x64=ED3AC +bFUSEnabled.x64 =ED3B0 + +[10.0.17046.1000-SLInit] +bInitialized.x86 =C9ED8 +bServerSku.x86 =C9EDC +lMaxUserSessions.x86 =C9EE0 +bAppServerAllowed.x86 =C9EE4 +bRemoteConnAllowed.x86=C9EE8 +bMultimonAllowed.x86 =C9EEC +ulMaxDebugSessions.x86=C9EF0 +bFUSEnabled.x86 =C9EF4 + +bServerSku.x64 =EC2E8 +lMaxUserSessions.x64 =EC2EC +bAppServerAllowed.x64 =EC2F0 +bInitialized.x64 =ED3A0 +bRemoteConnAllowed.x64=ED3A4 +bMultimonAllowed.x64 =ED3A8 +ulMaxDebugSessions.x64=ED3AC +bFUSEnabled.x64 =ED3B0 + +[10.0.17063.1000-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17115.1-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17128.1-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17133.1-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17134.1-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17723.1000-SLInit] +bInitialized.x64 =E9AB0 +bServerSku.x64 =E9AB4 +lMaxUserSessions.x64 =E9AB8 +bAppServerAllowed.x64 =E9AC0 +bRemoteConnAllowed.x64=E9AC4 +bMultimonAllowed.x64 =E9AC8 +ulMaxDebugSessions.x64=E9ACC +bFUSEnabled.x64 =E9AD0 + +[10.0.17763.1-SLInit] +bInitialized.x86 =CD798 +bServerSku.x86 =CD79C +lMaxUserSessions.x86 =CD7A0 +bAppServerAllowed.x86 =CD7A8 +bRemoteConnAllowed.x86=CD7AC +bMultimonAllowed.x86 =CD7B0 +ulMaxDebugSessions.x86=CD7B4 +bFUSEnabled.x86 =CD7B8 + +bInitialized.x64 =ECAB0 +bServerSku.x64 =ECAB4 +lMaxUserSessions.x64 =ECAB8 +bAppServerAllowed.x64 =ECAC0 +bRemoteConnAllowed.x64=ECAC4 +bMultimonAllowed.x64 =ECAC8 +ulMaxDebugSessions.x64=ECACC +bFUSEnabled.x64 =ECAD0 diff --git a/res/rdpwrap.ini b/res/rdpwrap.ini index 90f7315..40e1b54 100644 --- a/res/rdpwrap.ini +++ b/res/rdpwrap.ini @@ -2,37 +2,26 @@ ; Do not modify without special knowledge [Main] -Updated=2014-12-10 +Updated=2018-10-10 LogFile=\rdpwrap.txt SLPolicyHookNT60=1 SLPolicyHookNT61=1 [SLPolicy] -; Allow Remote Connections TerminalServices-RemoteConnectionManager-AllowRemoteConnections=1 -; Allow Multiple Sessions TerminalServices-RemoteConnectionManager-AllowMultipleSessions=1 -; Allow Multiple Sessions (Application Server Mode) TerminalServices-RemoteConnectionManager-AllowAppServerMode=1 -; Allow Multiple Monitors TerminalServices-RemoteConnectionManager-AllowMultimon=1 -; Max User Sessions (0 = unlimited) TerminalServices-RemoteConnectionManager-MaxUserSessions=0 -; Max Debug Sessions (Windows 8, 0 = unlimited) TerminalServices-RemoteConnectionManager-ce0ad219-4670-4988-98fb-89b14c2f072b-MaxSessions=0 -; Max Sessions -; 0 - logon not possible even from console -; 1 - only one active user (console or remote) -; 2 - allow concurrent sessions TerminalServices-RemoteConnectionManager-45344fe7-00e6-4ac6-9f01-d01fd4ffadfb-MaxSessions=2 -; Allow Advanced Compression with RDP 7 Protocol TerminalServices-RDP-7-Advanced-Compression-Allowed=1 -; IsTerminalTypeLocalOnly = 0 TerminalServices-RemoteConnectionManager-45344fe7-00e6-4ac6-9f01-d01fd4ffadfb-LocalOnly=0 -; Max Sessions (hard limit) TerminalServices-RemoteConnectionManager-8dc86f1d-9969-4379-91c1-06fe1dc60575-MaxSessions=1000 -; EasyPrint TerminalServices-DeviceRedirection-Licenses-TSEasyPrintAllowed=1 +TerminalServices-DeviceRedirection-Licenses-PnpRedirectionAllowed=1 +TerminalServices-DeviceRedirection-Licenses-TSMFPluginAllowed=1 +TerminalServices-RemoteConnectionManager-UiEffects-DWMRemotingAllowed=1 [PatchCodes] nop=90 @@ -44,542 +33,275 @@ CDefPolicy_Query_eax_rcx_jmp=B80001000089813806000090EB CDefPolicy_Query_eax_esi=B80001000089862003000090 CDefPolicy_Query_eax_rdi=B80001000089873806000090 CDefPolicy_Query_eax_ecx=B80001000089812003000090 +CDefPolicy_Query_eax_ecx_jmp=B800010000898120030000EB0E CDefPolicy_Query_eax_rcx=B80001000089813806000090 +CDefPolicy_Query_edi_rcx=BF0001000089B938060000909090 [6.0.6000.16386] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F320000 -; .text:6F3360B9 lea eax, [ebp+VersionInformation] -; .text:6F3360BF inc ebx <- nop -; .text:6F3360C0 push eax ; lpVersionInformation -; .text:6F3360C1 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F3360CB mov [esi], ebx -; .text:6F3360CD call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=160BF SingleUserCode.x86=nop -; Imagebase: 7FF756E0000 -; .text:000007FF75745E38 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75745E3D mov ebx, 1 <- 0 -; .text:000007FF75745E42 mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75745E4A mov [rdi], ebx -; .text:000007FF75745E4C call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=65E3E SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F335CD8 cmp edx, [ecx+320h] -; .text:6F335CDE pop esi -; .text:6F335CDF jz loc_6F3426F1 -; Changed -; .text:6F335CD8 mov edx, 100h -; .text:6F335CDD mov [ecx+320h], edx -; .text:6F335CE3 pop esi -; .text:6F335CE4 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=15CD8 DefPolicyCode.x86=CDefPolicy_Query_edx_ecx -; Original -; .text:000007FF7573C88F mov eax, [rcx+638h] -; .text:000007FF7573C895 cmp [rcx+63Ch], eax -; .text:000007FF7573C89B jnz short loc_7FF7573C8B3 -; Changed -; .text:000007FF7573C88F mov eax, 100h -; .text:000007FF7573C894 mov [rcx+638h], eax -; .text:000007FF7573C89A nop -; .text:000007FF7573C89B jmp short loc_7FF7573C8B3 DefPolicyPatch.x64=1 DefPolicyOffset.x64=5C88F DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp [6.0.6001.18000] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6E800000 -; .text:6E8185DE lea eax, [ebp+VersionInformation] -; .text:6E8185E4 inc ebx <- nop -; .text:6E8185E5 push eax ; lpVersionInformation -; .text:6E8185E6 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6E8185F0 mov [esi], ebx -; .text:6E8185F2 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=185E4 SingleUserCode.x86=nop -; Imagebase: 7FF76220000 -; .text:000007FF76290DB4 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF76290DB9 mov ebx, 1 <- 0 -; .text:000007FF76290DBE mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF76290DC6 mov [rdi], ebx -; .text:000007FF76290DC8 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=70DBA SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6E817FD8 cmp edx, [ecx+320h] -; .text:6E817FDE pop esi -; .text:6E817FDF jz loc_6E826F16 -; Changed -; .text:6E817FD8 mov edx, 100h -; .text:6E817FDD mov [ecx+320h], edx -; .text:6E817FE3 pop esi -; .text:6E817FE4 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=17FD8 DefPolicyCode.x86=CDefPolicy_Query_edx_ecx -; Original -; .text:000007FF76285BD7 mov eax, [rcx+638h] -; .text:000007FF76285BDD cmp [rcx+63Ch], eax -; .text:000007FF76285BE3 jnz short loc_7FF76285BFB -; Changed -; .text:000007FF76285BD7 mov eax, 100h -; .text:000007FF76285BDC mov [rcx+638h], eax -; .text:000007FF76285BE2 nop -; .text:000007FF76285BE3 jmp short loc_7FF76285BFB DefPolicyPatch.x64=1 DefPolicyOffset.x64=65BD7 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp [6.0.6002.18005] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F580000 -; .text:6F597FA2 lea eax, [ebp+VersionInformation] -; .text:6F597FA8 inc ebx <- nop -; .text:6F597FA9 push eax ; lpVersionInformation -; .text:6F597FAA mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F597FB4 mov [esi], ebx -; .text:6F597FB6 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=17FA8 SingleUserCode.x86=nop -; Imagebase: 7FF766C0000 -; .text:000007FF76730FF0 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF76730FF5 mov ebx, 1 <- 0 -; .text:000007FF76730FFA mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF76731002 mov [rdi], ebx -; .text:000007FF76731004 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=70FF6 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F5979C0 cmp edx, [ecx+320h] -; .text:6F5979C6 pop esi -; .text:6F5979C7 jz loc_6F5A6F26 -; Changed -; .text:6F5979C0 mov edx, 100h -; .text:6F5979C5 mov [ecx+320h], edx -; .text:6F5979CB pop esi -; .text:6F5979CC nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=179C0 DefPolicyCode.x86=CDefPolicy_Query_edx_ecx -; Original -; .text:000007FF76725E83 mov eax, [rcx+638h] -; .text:000007FF76725E89 cmp [rcx+63Ch], eax -; .text:000007FF76725E8F jz short loc_7FF76725EA7 -; Changed -; .text:000007FF76725E83 mov eax, 100h -; .text:000007FF76725E88 mov [rcx+638h], eax -; .text:000007FF76725E8E nop -; .text:000007FF76725E8F jmp short loc_7FF76725EA7 DefPolicyPatch.x64=1 DefPolicyOffset.x64=65E83 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp [6.0.6002.19214] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F580000 -; .text:6F597FBE lea eax, [ebp+VersionInformation] -; .text:6F597FC4 inc ebx <- nop -; .text:6F597FC5 push eax ; lpVersionInformation -; .text:6F597FC6 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F597FD0 mov [esi], ebx -; .text:6F597FD2 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=17FC4 SingleUserCode.x86=nop -; Imagebase: 7FF75AC0000 -; .text:000007FF75B312A4 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75B312A9 mov ebx, 1 <- 0 -; .text:000007FF75B312AE mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75B312B6 mov [rdi], ebx -; .text:000007FF75B312B8 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=712AA SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F5979B8 cmp edx, [ecx+320h] -; .text:6F5979BE pop esi -; .text:6F5979BF jz loc_6F5A6F3E -; Changed -; .text:6F5979B8 mov edx, 100h -; .text:6F5979BD mov [ecx+320h], edx -; .text:6F5979C3 pop esi -; .text:6F5979C4 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=179B8 DefPolicyCode.x86=CDefPolicy_Query_edx_ecx -; Original -; .text:000007FF75B25FF7 mov eax, [rcx+638h] -; .text:000007FF75B25FFD cmp [rcx+63Ch], eax -; .text:000007FF75B26003 jnz short loc_7FF75B2601B -; Changed -; .text:000007FF75B25FF7 mov eax, 100h -; .text:000007FF75B25FFC mov [rcx+638h], eax -; .text:000007FF75B26002 nop -; .text:000007FF75B26003 jmp short loc_7FF75B2601B DefPolicyPatch.x64=1 DefPolicyOffset.x64=65FF7 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp [6.0.6002.23521] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F580000 -; .text:6F597FAE lea eax, [ebp+VersionInformation] -; .text:6F597FB4 inc ebx <- nop -; .text:6F597FB5 push eax ; lpVersionInformation -; .text:6F597FB6 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F597FC0 mov [esi], ebx -; .text:6F597FC2 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=17FB4 SingleUserCode.x86=nop -; Imagebase: 7FF75AC0000 -; .text:000007FF75B31EA4 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75B31EA9 mov ebx, 1 <- 0 -; .text:000007FF75B31EAE mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75B31EB6 mov [rdi], ebx -; .text:000007FF75B31EB8 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=71EAA SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F5979CC cmp edx, [ecx+320h] -; .text:6F5979D2 pop esi -; .text:6F5979D3 jz loc_6F5A6F2E -; Changed -; .text:6F5979CC mov edx, 100h -; .text:6F5979D1 mov [ecx+320h], edx -; .text:6F5979D7 pop esi -; .text:6F5979D8 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=179CC DefPolicyCode.x86=CDefPolicy_Query_edx_ecx -; Original -; .text:000007FF75B269CB mov eax, [rcx+638h] -; .text:000007FF75B269D1 cmp [rcx+63Ch], eax -; .text:000007FF75B269D7 jnz short loc_7FF75B269EF -; Changed -; .text:000007FF75B269CB mov eax, 100h -; .text:000007FF75B269D0 mov [rcx+638h], eax -; .text:000007FF75B269D6 nop -; .text:000007FF75B269D7 jmp short loc_7FF75B269EF DefPolicyPatch.x64=1 DefPolicyOffset.x64=669CB DefPolicyCode.x64=CDefPolicy_Query_eax_rcx_jmp [6.1.7600.16385] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F2E0000 -; .text:6F2F9E1F lea eax, [ebp+VersionInformation] -; .text:6F2F9E25 inc ebx <- nop -; .text:6F2F9E26 push eax ; lpVersionInformation -; .text:6F2F9E27 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F2F9E31 mov [esi], ebx -; .text:6F2F9E33 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=19E25 SingleUserCode.x86=nop -; Imagebase: 7FF75A80000 -; .text:000007FF75A97D90 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75A97D95 mov ebx, 1 <- 0 -; .text:000007FF75A97D9A mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75A97DA2 mov [rdi], ebx -; .text:000007FF75A97DA4 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=17D96 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F2F96F3 cmp eax, [esi+320h] -; .text:6F2F96F9 jz loc_6F30E256 -; Changed -; .text:6F2F96F3 mov eax, 100h -; .text:6F2F96F8 mov [esi+320h], eax -; .text:6F2F96FE nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=196F3 DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000007FF75A97AD2 cmp [rdi+63Ch], eax -; .text:000007FF75A97AD8 jz loc_7FF75AA4978 -; Changed -; .text:000007FF75A97AD2 mov eax, 100h -; .text:000007FF75A97AD7 mov [rdi+638h], eax -; .text:000007FF75A97ADD nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=17AD2 DefPolicyCode.x64=CDefPolicy_Query_eax_rdi +[6.1.7600.20890] +SingleUserPatch.x86=1 +SingleUserOffset.x86=19E2D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17DF2 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=196FB +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17B0E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7600.21316] +SingleUserPatch.x86=1 +SingleUserOffset.x86=19E2D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17E3E +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=196FB +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17B5E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + [6.1.7601.17514] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F2E0000 -; .text:6F2FA497 lea eax, [ebp+VersionInformation] -; .text:6F2FA49D inc ebx <- nop -; .text:6F2FA49E push eax ; lpVersionInformation -; .text:6F2FA49F mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F2FA4A9 mov [esi], ebx -; .text:6F2FA4AB call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=1A49D SingleUserCode.x86=nop -; Imagebase: 7FF75A80000 -; .text:000007FF75A980DC lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75A980E1 mov ebx, 1 <- 0 -; .text:000007FF75A980E6 mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75A980EE mov [rdi], ebx -; .text:000007FF75A980F0 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=180E2 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F2F9D53 cmp eax, [esi+320h] -; .text:6F2F9D59 jz loc_6F30B25E -; Changed -; .text:6F2F9D53 mov eax, 100h -; .text:6F2F9D58 mov [esi+320h], eax -; .text:6F2F9D5E nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=19D53 DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000007FF75A97D8A cmp [rdi+63Ch], eax -; .text:000007FF75A97D90 jz loc_7FF75AA40F4 -; Changed -; .text:000007FF75A97D8A mov eax, 100h -; .text:000007FF75A97D8F mov [rdi+638h], eax -; .text:000007FF75A97D95 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=17D8A DefPolicyCode.x64=CDefPolicy_Query_eax_rdi [6.1.7601.18540] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F2E0000 -; .text:6F2FA4DF lea eax, [ebp+VersionInformation] -; .text:6F2FA4E5 inc ebx <- nop -; .text:6F2FA4E6 push eax ; lpVersionInformation -; .text:6F2FA4E7 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F2FA4F1 mov [esi], ebx -; .text:6F2FA4F3 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=1A4E5 SingleUserCode.x86=nop -; Imagebase: 7FF75A80000 -; .text:000007FF75A98000 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75A98005 mov ebx, 1 <- 0 -; .text:000007FF75A9800A mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75A98012 mov [rdi], ebx -; .text:000007FF75A98014 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=18006 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F2F9D9F cmp eax, [esi+320h] -; .text:6F2F9DA5 jz loc_6F30B2AE -; Changed -; .text:6F2F9D9F mov eax, 100h -; .text:6F2F9DA4 mov [esi+320h], eax -; .text:6F2F9DAA nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=19D9F DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000007FF75A97C82 cmp [rdi+63Ch], eax -; .text:000007FF75A97C88 jz loc_7FF75AA3FBD -; Changed -; .text:000007FF75A97C82 mov eax, 100h -; .text:000007FF75A97C87 mov [rdi+638h], eax -; .text:000007FF75A97C8D nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=17C82 DefPolicyCode.x64=CDefPolicy_Query_eax_rdi -[6.1.7601.22750] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F2E0000 -; .text:6F2FA64F lea eax, [ebp+VersionInformation] -; .text:6F2FA655 inc ebx <- nop -; .text:6F2FA656 push eax ; lpVersionInformation -; .text:6F2FA657 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F2FA661 mov [esi], ebx -; .text:6F2FA663 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) -SingleUserPatch.x86=1 -SingleUserOffset.x86=1A655 -SingleUserCode.x86=nop -; Imagebase: 7FF75A80000 -; .text:000007FF75A97E88 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75A97E8D mov ebx, 1 <- 0 -; .text:000007FF75A97E92 mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75A97E9A mov [rdi], ebx -; .text:000007FF75A97E9C call cs:__imp_GetVersionExW -SingleUserPatch.x64=1 -SingleUserOffset.x64=17E8E -SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F2F9E21 cmp eax, [esi+320h] -; .text:6F2F9E27 jz loc_6F30B6CE -; Changed -; .text:6F2F9E21 mov eax, 100h -; .text:6F2F9E26 mov [esi+320h], eax -; .text:6F2F9E2C nop -DefPolicyPatch.x86=1 -DefPolicyOffset.x86=19E21 -DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000007FF75A97C92 cmp [rdi+63Ch], eax -; .text:000007FF75A97C98 jz loc_7FF75AA40A2 -; Changed -; .text:000007FF75A97C92 mov eax, 100h -; .text:000007FF75A97C97 mov [rdi+638h], eax -; .text:000007FF75A97C9D nop -DefPolicyPatch.x64=1 -DefPolicyOffset.x64=17C92 -DefPolicyCode.x64=CDefPolicy_Query_eax_rdi - [6.1.7601.18637] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F2E0000 -; .text:6F2FA4D7 lea eax, [ebp+VersionInformation] -; .text:6F2FA4DD inc ebx <- nop -; .text:6F2FA4DE push eax ; lpVersionInformation -; .text:6F2FA4DF mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F2FA4E9 mov [esi], ebx -; .text:6F2FA4EB call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=1A4DD SingleUserCode.x86=nop -; Imagebase: 7FF75A80000 -; .text:000007FF75A980F4 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75A980F9 mov ebx, 1 <- 0 -; .text:000007FF75A980FE mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75A98106 mov [rdi], ebx -; .text:000007FF75A98108 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=180FA SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F2F9DBB cmp eax, [esi+320h] -; .text:6F2F9DC1 jz loc_6F30B2A6 -; Changed -; .text:6F2F9DBB mov eax, 100h -; .text:6F2F9DC0 mov [esi+320h], eax -; .text:6F2F9DC6 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=19DBB DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000007FF75A97DC6 cmp [rdi+63Ch], eax -; .text:000007FF75A97DCC jz loc_7FF75AA40BD -; Changed -; .text:000007FF75A97DC6 mov eax, 100h -; .text:000007FF75A97DCB mov [rdi+638h], eax -; .text:000007FF75A97DD1 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=17DC6 DefPolicyCode.x64=CDefPolicy_Query_eax_rdi -[6.1.7601.22843] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; Imagebase: 6F2E0000 -; .text:6F2FA64F lea eax, [ebp+VersionInformation] -; .text:6F2FA655 inc ebx <- nop -; .text:6F2FA656 push eax ; lpVersionInformation -; .text:6F2FA657 mov [ebp+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:6F2FA661 mov [esi], ebx -; .text:6F2FA663 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) +[6.1.7601.21650] +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A49D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=180BE +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19D53 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D5A +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.21866] +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A49D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=180BE +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19D53 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D5A +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.22104] +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A49D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=180C6 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19D53 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D5E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.22750] +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A655 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17E8E +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19E21 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17C92 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.22843] SingleUserPatch.x86=1 SingleUserOffset.x86=1A655 SingleUserCode.x86=nop -; Imagebase: 7FF75A80000 -; .text:000007FF75A97F90 lea rcx, [rsp+198h+VersionInformation] ; lpVersionInformation -; .text:000007FF75A97F95 mov ebx, 1 <- 0 -; .text:000007FF75A97F9A mov [rsp+198h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000007FF75A97FA2 mov [rdi], ebx -; .text:000007FF75A97FA4 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=17F96 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:6F2F9E25 cmp eax, [esi+320h] -; .text:6F2F9E2B jz loc_6F30B6D6 -; Changed -; .text:6F2F9E25 mov eax, 100h -; .text:6F2F9E2A mov [esi+320h], eax -; .text:6F2F9E30 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=19E25 DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000007FF75A97D6E cmp [rdi+63Ch], eax -; .text:000007FF75A97D74 jz loc_7FF75AA4182 -; Changed -; .text:000007FF75A97D6E mov eax, 100h -; .text:000007FF75A97D73 mov [rdi+638h], eax -; .text:000007FF75A97D79 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=17D6E DefPolicyCode.x64=CDefPolicy_Query_eax_rdi +[6.1.7601.23403] +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A65D +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17F62 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19E29 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17CE2 +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + +[6.1.7601.24234] +SingleUserPatch.x86=1 +SingleUserOffset.x86=1A675 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17F56 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=19E41 +DefPolicyCode.x86=CDefPolicy_Query_eax_esi +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17D2E +DefPolicyCode.x64=CDefPolicy_Query_eax_rdi + [6.2.8102.0] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:1000F7E5 lea eax, [esp+150h+VersionInformation] -; .text:1000F7E9 inc esi <- nop -; .text:1000F7EA push eax ; lpVersionInformation -; .text:1000F7EB mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:1000F7F3 mov [edi], esi -; .text:1000F7F5 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=F7E9 SingleUserCode.x86=nop -; .text:000000018000D83A lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation -; .text:000000018000D83F mov ebx, 1 <- 0 -; .text:000000018000D844 mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000000018000D84C mov [rdi], ebx -; .text:000000018000D84E call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=D840 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:1000E47C cmp eax, [esi+320h] -; .text:1000E482 jz loc_1002D775 -; Changed -; .text:1000E47C mov eax, 100h -; .text:1000E481 mov [esi+320h], eax -; .text:1000E487 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=E47C DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000000018000D3E6 cmp [rdi+63Ch], eax -; .text:000000018000D3EC jz loc_180027792 -; Changed -; .text:000000018000D3E6 mov eax, 100h -; .text:000000018000D3EB mov [rdi+638h], eax -; .text:000000018000D3F1 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=D3E6 DefPolicyCode.x64=CDefPolicy_Query_eax_rdi -; Hook SLGetWindowsInformationDWORDWrapper SLPolicyInternal.x86=1 SLPolicyOffset.x86=1B909 SLPolicyFunc.x86=New_Win8SL @@ -588,46 +310,18 @@ SLPolicyOffset.x64=1A484 SLPolicyFunc.x64=New_Win8SL [6.2.8250.0] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:100159C5 lea eax, [esp+150h+VersionInformation] -; .text:100159C9 inc esi <- nop -; .text:100159CA push eax ; lpVersionInformation -; .text:100159CB mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:100159D3 mov [edi], esi -; .text:100159D5 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=159C9 SingleUserCode.x86=nop -; .text:0000000180011E6E lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation -; .text:0000000180011E73 mov ebx, 1 <- 0 -; .text:0000000180011E78 mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180011E80 mov [rdi], ebx -; .text:0000000180011E82 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=11E74 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:10013520 cmp eax, [esi+320h] -; .text:10013526 jz loc_1002DB85 -; Changed -; .text:10013520 mov eax, 100h -; .text:10013525 mov [esi+320h], eax -; .text:1001352B nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=13520 DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000000018001187A cmp [rdi+63Ch], eax -; .text:0000000180011880 jz loc_1800273A2 -; Changed -; .text:000000018001187A mov eax, 100h -; .text:000000018001187F mov [rdi+638h], eax -; .text:0000000180011885 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=1187A DefPolicyCode.x64=CDefPolicy_Query_eax_rdi -; Hook SLGetWindowsInformationDWORDWrapper SLPolicyInternal.x86=1 SLPolicyOffset.x86=1A0A9 SLPolicyFunc.x86=New_Win8SL_CP @@ -636,46 +330,18 @@ SLPolicyOffset.x64=18FAC SLPolicyFunc.x64=New_Win8SL [6.2.8400.0] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:1001547E lea eax, [esp+150h+VersionInformation] -; .text:10015482 inc esi <- nop -; .text:10015483 push eax ; lpVersionInformation -; .text:10015484 mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:1001548C mov [edi], esi -; .text:1001548E call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=15482 SingleUserCode.x86=nop -; .text:000000018002081E lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation -; .text:0000000180020823 mov ebx, 1 <- 0 -; .text:0000000180020828 mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180020830 mov [rdi], ebx -; .text:0000000180020832 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=20824 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:10013E48 cmp eax, [esi+320h] -; .text:10013E4E jz loc_1002E079 -; Changed -; .text:10013E48 mov eax, 100h -; .text:10013E4D mov [esi+320h], eax -; .text:10013E53 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=13E48 DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000000018001F102 cmp [rdi+63Ch], eax -; .text:000000018001F108 jz loc_18003A02E -; Changed -; .text:000000018001F102 mov eax, 100h -; .text:000000018001F107 mov [rdi+638h], eax -; .text:000000018001F10D nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=1F102 DefPolicyCode.x64=CDefPolicy_Query_eax_rdi -; Hook SLGetWindowsInformationDWORDWrapper SLPolicyInternal.x86=1 SLPolicyOffset.x86=19629 SLPolicyFunc.x86=New_Win8SL @@ -684,46 +350,18 @@ SLPolicyOffset.x64=2492C SLPolicyFunc.x64=New_Win8SL [6.2.9200.16384] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:1001554E lea eax, [esp+150h+VersionInformation] -; .text:10015552 inc esi <- nop -; .text:10015553 push eax ; lpVersionInformation -; .text:10015554 mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:1001555C mov [edi], esi -; .text:1001555E call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=15552 SingleUserCode.x86=nop -; .text:000000018002BAA2 lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation -; .text:000000018002BAA7 mov ebx, 1 <- 0 -; .text:000000018002BAAC mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000000018002BAB4 mov [rdi], ebx -; .text:000000018002BAB6 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=2BAA8 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:10013F08 cmp eax, [esi+320h] -; .text:10013F0E jz loc_1002E161 -; Changed -; .text:10013F08 mov eax, 100h -; .text:10013F0D mov [esi+320h], eax -; .text:10013F13 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=13F08 DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000000018002A31A cmp [rdi+63Ch], eax -; .text:000000018002A320 jz loc_18003A0F9 -; Changed -; .text:000000018002A31A mov eax, 100h -; .text:000000018002A31F mov [rdi+638h], eax -; .text:000000018002A325 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=2A31A DefPolicyCode.x64=CDefPolicy_Query_eax_rdi -; Hook SLGetWindowsInformationDWORDWrapper SLPolicyInternal.x86=1 SLPolicyOffset.x86=19559 SLPolicyFunc.x86=New_Win8SL @@ -732,46 +370,18 @@ SLPolicyOffset.x64=21FA8 SLPolicyFunc.x64=New_Win8SL [6.2.9200.17048] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:1002058E lea eax, [esp+150h+VersionInformation] -; .text:10020592 inc esi <- nop -; .text:10020593 push eax ; lpVersionInformation -; .text:10020594 mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:1002059C mov [edi], esi -; .text:1002059E call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=20592 SingleUserCode.x86=nop -; .text:0000000180020942 lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation -; .text:0000000180020947 mov ebx, 1 <- 0 -; .text:000000018002094C mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180020954 mov [rdi], ebx -; .text:0000000180020956 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=20948 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:1001F408 cmp eax, [esi+320h] -; .text:1001F40E jz loc_1002E201 -; Changed -; .text:1001F408 mov eax, 100h -; .text:1001F40D mov [esi+320h], eax -; .text:1001F413 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=1F408 DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000000018001F206 cmp [rdi+63Ch], eax -; .text:000000018001F20C jz loc_18003A1B4 -; Changed -; .text:000000018001F206 mov eax, 100h -; .text:000000018001F20B mov [rdi+638h], eax -; .text:000000018001F211 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=1F206 DefPolicyCode.x64=CDefPolicy_Query_eax_rdi -; Hook SLGetWindowsInformationDWORDWrapper SLPolicyInternal.x86=1 SLPolicyOffset.x86=17059 SLPolicyFunc.x86=New_Win8SL @@ -780,46 +390,18 @@ SLPolicyOffset.x64=24570 SLPolicyFunc.x64=New_Win8SL [6.2.9200.21166] -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:10015576 lea eax, [esp+150h+VersionInformation] -; .text:1001557A inc esi <- nop -; .text:1001557B push eax ; lpVersionInformation -; .text:1001557C mov [esp+154h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:10015584 mov [edi], esi -; .text:10015586 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=1557A SingleUserCode.x86=nop -; .text:000000018002BAF2 lea rcx, [rsp+180h+VersionInformation] ; lpVersionInformation -; .text:000000018002BAF7 mov ebx, 1 <- 0 -; .text:000000018002BAFC mov [rsp+180h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000000018002BB04 mov [rdi], ebx -; .text:000000018002BB06 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=2BAF8 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:10013F30 cmp eax, [esi+320h] -; .text:10013F36 jz loc_1002E189 -; Changed -; .text:10013F30 mov eax, 100h -; .text:10013F35 mov [esi+320h], eax -; .text:10013F3B nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=13F30 DefPolicyCode.x86=CDefPolicy_Query_eax_esi -; Original -; .text:000000018002A3B6 cmp [rdi+63Ch], eax -; .text:000000018002A3BC jz loc_18003A174 -; Changed -; .text:000000018002A3B6 mov eax, 100h -; .text:000000018002A3BB mov [rdi+638h], eax -; .text:000000018002A3C1 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=2A3B6 DefPolicyCode.x64=CDefPolicy_Query_eax_rdi -; Hook SLGetWindowsInformationDWORDWrapper SLPolicyInternal.x86=1 SLPolicyOffset.x86=19581 SLPolicyFunc.x86=New_Win8SL @@ -828,62 +410,24 @@ SLPolicyOffset.x64=21FD0 SLPolicyFunc.x64=New_Win8SL [6.3.9431.0] -; Patch CEnforcementCore::GetInstanceOfTSLicense -; .text:1008A604 call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:1008A609 test eax, eax -; .text:1008A60B js short loc_1008A628 -; .text:1008A60D cmp [ebp+var_8], 0 -; .text:1008A611 jz short loc_1008A628 <- jmp LocalOnlyPatch.x86=1 LocalOnlyOffset.x86=8A611 LocalOnlyCode.x86=jmpshort -; .text:000000018009F713 call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:000000018009F718 test eax, eax -; .text:000000018009F71A js short loc_18009F73B -; .text:000000018009F71C cmp [rsp+48h+arg_18], 0 -; .text:000000018009F721 jz short loc_18009F73B <- jmp LocalOnlyPatch.x64=1 LocalOnlyOffset.x64=9F721 LocalOnlyCode.x64=jmpshort -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:100306A4 lea eax, [esp+150h+VersionInformation] -; .text:100306A8 inc ebx <- nop -; .text:100306A9 mov [edi], ebx -; .text:100306AB push eax ; lpVersionInformation -; .text:100306AC call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=306A8 SingleUserCode.x86=nop -; .text:00000001800367F3 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation -; .text:00000001800367F8 mov ebx, 1 <- 0 -; .text:00000001800367FD mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180036805 mov [rdi], ebx -; .text:0000000180036807 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=367F9 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:1002EA25 cmp eax, [ecx+320h] -; .text:1002EA2B jz loc_100348C1 -; Changed -; .text:1002EA25 mov eax, 100h -; .text:1002EA2A mov [ecx+320h], eax -; .text:1002EA30 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=2EA25 DefPolicyCode.x86=CDefPolicy_Query_eax_ecx -; Original -; .text:00000001800350FD cmp [rcx+63Ch], eax -; .text:0000000180035103 jz loc_18004F6AE -; Changed -; .text:00000001800350FD mov eax, 100h -; .text:0000000180035102 mov [rcx+638h], eax -; .text:0000000180035108 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=350FD DefPolicyCode.x64=CDefPolicy_Query_eax_rcx -; Hook CSLQuery::Initialize SLInitHook.x86=1 SLInitOffset.x86=196B0 SLInitFunc.x86=New_CSLQuery_Initialize @@ -892,59 +436,24 @@ SLInitOffset.x64=2F9C0 SLInitFunc.x64=New_CSLQuery_Initialize [6.3.9600.16384] -; Patch CEnforcementCore::GetInstanceOfTSLicense -; .text:100A271C call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:100A2721 test eax, eax -; .text:100A2723 js short loc_100A2740 -; .text:100A2725 cmp [ebp+var_8], 0 -; .text:100A2729 jz short loc_100A2740 <- jmp LocalOnlyPatch.x86=1 LocalOnlyOffset.x86=A2729 LocalOnlyCode.x86=jmpshort -; .text:000000018008181F cmp [rsp+48h+arg_18], 0 -; .text:0000000180081824 jz loc_180031DEF <- nop + jmp LocalOnlyPatch.x64=1 LocalOnlyOffset.x64=81824 LocalOnlyCode.x64=nopjmp -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:10018024 lea eax, [esp+150h+VersionInformation] -; .text:10018028 inc ebx <- nop -; .text:10018029 mov [edi], ebx -; .text:1001802B push eax ; lpVersionInformation -; .text:1001802C call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=18028 SingleUserCode.x86=nop -; .text:000000018002023B lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation -; .text:0000000180020240 mov ebx, 1 <- 0 -; .text:0000000180020245 mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:000000018002024D mov [rdi], ebx -; .text:000000018002024F call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=20241 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:10016115 cmp eax, [ecx+320h] -; .text:1001611B jz loc_10034DE1 -; Changed -; .text:10016115 mov eax, 100h -; .text:1001611A mov [ecx+320h], eax -; .text:10016120 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=16115 DefPolicyCode.x86=CDefPolicy_Query_eax_ecx -; Original -; .text:0000000180057829 cmp [rcx+63Ch], eax -; .text:000000018005782F jz loc_18005E850 -; Changed -; .text:0000000180057829 mov eax, 100h -; .text:000000018005782E mov [rcx+638h], eax -; .text:0000000180057834 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=57829 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx -; Hook CSLQuery::Initialize SLInitHook.x86=1 SLInitOffset.x86=1CEB0 SLInitFunc.x86=New_CSLQuery_Initialize @@ -953,62 +462,24 @@ SLInitOffset.x64=554C0 SLInitFunc.x64=New_CSLQuery_Initialize [6.3.9600.17095] -; Patch CEnforcementCore::GetInstanceOfTSLicense -; .text:100A36C4 call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:100A36C9 test eax, eax -; .text:100A36CB js short loc_100A36E8 -; .text:100A36CD cmp [ebp+var_8], 0 -; .text:100A36D1 jz short loc_100A36E8 <- jmp LocalOnlyPatch.x86=1 LocalOnlyOffset.x86=A36D1 LocalOnlyCode.x86=jmpshort -; .text:00000001800B914B call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:00000001800B9150 test eax, eax -; .text:00000001800B9152 js short loc_1800B9173 -; .text:00000001800B9154 cmp [rsp+48h+arg_18], 0 -; .text:00000001800B9159 jz short loc_1800B9173 <- jmp LocalOnlyPatch.x64=1 LocalOnlyOffset.x64=B9159 LocalOnlyCode.x64=jmpshort -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:10036BA5 lea eax, [esp+150h+VersionInformation] -; .text:10036BA9 inc ebx <- nop -; .text:10036BAA mov [edi], ebx -; .text:10036BAC push eax ; lpVersionInformation -; .text:10036BAD call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=36BA9 SingleUserCode.x86=nop -; .text:0000000180021823 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation -; .text:0000000180021828 mov ebx, 1 <- 0 -; .text:000000018002182D mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180021835 mov [rdi], ebx -; .text:0000000180021837 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=21829 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:10037529 cmp eax, [ecx+320h] -; .text:1003752F jz loc_10043662 -; Changed -; .text:10037529 mov eax, 100h -; .text:1003752E mov [ecx+320h], eax -; .text:10037534 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=37529 DefPolicyCode.x86=CDefPolicy_Query_eax_ecx -; Original -; .text:000000018001F6A1 cmp [rcx+63Ch], eax -; .text:000000018001F6A7 jz loc_18007284B -; Changed -; .text:000000018001F6A1 mov eax, 100h -; .text:000000018001F6A6 mov [rcx+638h], eax -; .text:000000018001F6AC nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=1F6A1 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx -; Hook CSLQuery::Initialize SLInitHook.x86=1 SLInitOffset.x86=117F1 SLInitFunc.x86=New_CSLQuery_Initialize @@ -1017,59 +488,24 @@ SLInitOffset.x64=3B110 SLInitFunc.x64=New_CSLQuery_Initialize [6.3.9600.17415] -; Patch CEnforcementCore::GetInstanceOfTSLicense -; .text:100B33EB call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:100B33F0 test eax, eax -; .text:100B33F2 js short loc_100B340F -; .text:100B33F4 cmp [ebp+var_C], 0 -; .text:100B33F8 jz short loc_100B340F <- jmp LocalOnlyPatch.x86=1 LocalOnlyOffset.x86=B33F8 LocalOnlyCode.x86=jmpshort -; .text:000000018008B2D4 cmp [rsp+58h+arg_18], 0 -; .text:000000018008B2D9 jz loc_180025C39 <- nop + jmp LocalOnlyPatch.x64=1 LocalOnlyOffset.x64=8B2D9 LocalOnlyCode.x64=nopjmp -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:10037111 lea eax, [esp+150h+VersionInformation] -; .text:10037115 inc ebx <- nop -; .text:10037116 mov [edi], ebx -; .text:10037118 push eax ; lpVersionInformation -; .text:10037119 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=37115 SingleUserCode.x86=nop -; .text:0000000180033CE3 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation -; .text:0000000180033CE8 mov ebx, 1 <- 0 -; .text:0000000180033CED mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180033CF5 mov [rdi], ebx -; .text:0000000180033CF7 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=33CE9 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:1003CFF9 cmp eax, [ecx+320h] -; .text:1003CFFF jz loc_1004A52F -; Changed -; .text:1003CFF9 mov eax, 100h -; .text:1003CFFE mov [ecx+320h], eax -; .text:1003D004 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=3CFF9 DefPolicyCode.x86=CDefPolicy_Query_eax_ecx -; Original -; .text:0000000180045825 cmp [rcx+63Ch], eax -; .text:000000018004582B jz loc_180067704 -; Changed -; .text:0000000180045825 mov eax, 100h -; .text:000000018004582A mov [rcx+638h], eax -; .text:0000000180045830 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=45825 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx -; Hook CSLQuery::Initialize SLInitHook.x86=1 SLInitOffset.x86=18478 SLInitFunc.x86=New_CSLQuery_Initialize @@ -1077,63 +513,129 @@ SLInitHook.x64=1 SLInitOffset.x64=5DBC0 SLInitFunc.x64=New_CSLQuery_Initialize +[6.3.9600.18692] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B3458 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B2E9 +LocalOnlyCode.x64=nopjmp +SingleUserPatch.x86=1 +SingleUserOffset.x86=37105 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=37039 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3CFE9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=45835 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=18488 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5DBD0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.18708] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B35D8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B376 +LocalOnlyCode.x64=nopjmp +SingleUserPatch.x86=1 +SingleUserOffset.x86=370F5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=36FE9 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3CFD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=457D5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=18308 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5DB70 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.18928] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B39D8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B25D +LocalOnlyCode.x64=nopjmp +SingleUserPatch.x86=1 +SingleUserOffset.x86=37D25 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=36C09 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D6F9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=45495 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=18328 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5D830 +SLInitFunc.x64=New_CSLQuery_Initialize + +[6.3.9600.19093] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=B3958 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8AE4E +LocalOnlyCode.x64=nopjmp +SingleUserPatch.x86=1 +SingleUserOffset.x86=3F045 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=36BC9 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D899 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=45305 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=18288 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=5D660 +SLInitFunc.x64=New_CSLQuery_Initialize + [6.4.9841.0] -; Patch CEnforcementCore::GetInstanceOfTSLicense -; .text:1009569B call sub_100B7EE5 -; .text:100956A0 test eax, eax -; .text:100956A2 js short loc_100956BF -; .text:100956A4 cmp [ebp+var_C], 0 -; .text:100956A8 jz short loc_100956BF <- jmp LocalOnlyPatch.x86=1 LocalOnlyOffset.x86=956A8 LocalOnlyCode.x86=jmpshort -; .text:0000000180081133 call sub_1800A9048 -; .text:0000000180081138 test eax, eax -; .text:000000018008113A js short loc_18008115B -; .text:000000018008113C cmp [rsp+58h+arg_18], 0 -; .text:0000000180081141 jz short loc_18008115B <- jmp LocalOnlyPatch.x64=1 LocalOnlyOffset.x64=81141 LocalOnlyCode.x64=jmpshort -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:10030121 lea eax, [esp+150h+VersionInformation] -; .text:10030125 inc ebx <- nop -; .text:10030126 mov [edi], ebx -; .text:10030128 push eax ; lpVersionInformation -; .text:10030129 call ds:GetVersionExW SingleUserPatch.x86=1 SingleUserOffset.x86=30125 SingleUserCode.x86=nop -; .text:0000000180012153 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation -; .text:0000000180012158 mov ebx, 1 <- 0 -; .text:000000018001215D mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180012165 mov [rdi], ebx -; .text:0000000180012167 call cs:GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=12159 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:1003B989 cmp eax, [ecx+320h] -; .text:1003B98F jz loc_1005E809 -; Changed -; .text:1003B989 mov eax, 100h -; .text:1003B98E mov [ecx+320h], eax -; .text:1003B994 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=3B989 DefPolicyCode.x86=CDefPolicy_Query_eax_ecx -; Original -; .text:000000018000C125 cmp [rcx+63Ch], eax -; .text:000000018000C12B jz sub_18003BABC -; Changed -; .text:000000018000C125 mov eax, 100h -; .text:000000018000C12A mov [rcx+638h], eax -; .text:000000018000C130 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=C125 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx -; Hook CSLQuery::Initialize SLInitHook.x86=1 SLInitOffset.x86=46A68 SLInitFunc.x86=New_CSLQuery_Initialize @@ -1142,62 +644,24 @@ SLInitOffset.x64=1EA50 SLInitFunc.x64=New_CSLQuery_Initialize [6.4.9860.0] -; Patch CEnforcementCore::GetInstanceOfTSLicense -; .text:100962BB call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:100962C0 test eax, eax -; .text:100962C2 js short loc_100962DF -; .text:100962C4 cmp [ebp+var_C], 0 -; .text:100962C8 jz short loc_100962DF <- jmp LocalOnlyPatch.x86=1 LocalOnlyOffset.x86=962C8 LocalOnlyCode.x86=jmpshort -; .text:0000000180081083 call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:0000000180081088 test eax, eax -; .text:000000018008108A js short loc_1800810AB -; .text:000000018008108C cmp [rsp+58h+arg_18], 0 -; .text:0000000180081091 jz short loc_1800810AB <- jmp LocalOnlyPatch.x64=1 LocalOnlyOffset.x64=81091 LocalOnlyCode.x64=jmpshort -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:10030841 lea eax, [esp+150h+VersionInformation] -; .text:10030845 inc ebx <- nop -; .text:10030846 mov [edi], ebx -; .text:10030848 push eax ; lpVersionInformation -; .text:10030849 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=30845 SingleUserCode.x86=nop -; .text:0000000180011AA3 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation -; .text:0000000180011AA8 mov ebx, 1 <- 0 -; .text:0000000180011AAD mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180011AB5 mov [rdi], ebx -; .text:0000000180011AB7 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=11AA9 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:1003BEC9 cmp eax, [ecx+320h] -; .text:1003BECF jz loc_1005EE1A -; Changed -; .text:1003BEC9 mov eax, 100h -; .text:1003BECE mov [ecx+320h], eax -; .text:1003BED4 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=3BEC9 DefPolicyCode.x86=CDefPolicy_Query_eax_ecx -; Original -; .text:000000018000B9F5 cmp [rcx+63Ch], eax -; .text:000000018000B9FB jz sub_18003B9C8 -; Changed -; .text:000000018000B9F5 mov eax, 100h -; .text:000000018000B9FA mov [rcx+638h], eax -; .text:000000018000BA00 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=B9F5 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx -; Hook CSLQuery::Initialize SLInitHook.x86=1 SLInitOffset.x86=46F18 SLInitFunc.x86=New_CSLQuery_Initialize @@ -1206,63 +670,24 @@ SLInitOffset.x64=1EB00 SLInitFunc.x64=New_CSLQuery_Initialize [6.4.9879.0] -; Patch CEnforcementCore::GetInstanceOfTSLicense -; .text:100A9CBB call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:100A9CC0 test eax, eax -; .text:100A9CC2 js short loc_100A9CDF -; .text:100A9CC4 cmp [ebp+var_C], 0 -; .text:100A9CC8 jz short loc_100A9CDF <- jmp LocalOnlyPatch.x86=1 LocalOnlyOffset.x86=A9CC8 LocalOnlyCode.x86=jmpshort -; .text:0000000180095603 call ?IsLicenseTypeLocalOnly@CSLQuery@@SAJAEAU_GUID@@PEAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) -; .text:0000000180095608 test eax, eax -; .text:000000018009560A js short loc_18009562B -; .text:000000018009560C cmp [rsp+58h+arg_18], 0 -; .text:0000000180095611 jz short loc_18009562B <- jmp LocalOnlyPatch.x64=1 LocalOnlyOffset.x64=95611 LocalOnlyCode.x64=jmpshort -; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled -; .text:10030C51 lea eax, [esp+150h+VersionInformation] -; .text:10030C55 inc ebx <- nop -; .text:10030C56 mov [edi], ebx -; .text:10030C58 push eax ; lpVersionInformation -; .text:10030C59 call ds:__imp__GetVersionExW@4 ; GetVersionExW(x) SingleUserPatch.x86=1 SingleUserOffset.x86=30C55 SingleUserCode.x86=nop -; .text:0000000180016A2E call memset_0 -; .text:0000000180016A33 mov ebx, 1 <- 0 -; .text:0000000180016A38 mov [rsp+190h+VersionInformation.dwOSVersionInfoSize], 11Ch -; .text:0000000180016A40 lea rcx, [rsp+190h+VersionInformation] ; lpVersionInformation -; .text:0000000180016A45 mov [rdi], ebx -; .text:0000000180016A47 call cs:__imp_GetVersionExW SingleUserPatch.x64=1 SingleUserOffset.x64=16A34 SingleUserCode.x64=Zero -; Patch CDefPolicy::Query -; Original -; .text:1002DAB9 cmp eax, [ecx+320h] -; .text:1002DABF jz loc_1006C38A -; Changed -; .text:1002DAB9 mov eax, 100h -; .text:1002DABE mov [ecx+320h], eax -; .text:1002DAC4 nop DefPolicyPatch.x86=1 DefPolicyOffset.x86=2DAB9 DefPolicyCode.x86=CDefPolicy_Query_eax_ecx -; Original -; .text:000000018001BDC5 cmp [rcx+63Ch], eax -; .text:000000018001BDCB jz sub_180045540 -; Changed -; .text:000000018001BDC5 mov eax, 100h -; .text:000000018001BDCA mov [rcx+638h], eax -; .text:000000018001BDD0 nop DefPolicyPatch.x64=1 DefPolicyOffset.x64=1BDC5 DefPolicyCode.x64=CDefPolicy_Query_eax_rcx -; Hook CSLQuery::Initialize SLInitHook.x86=1 SLInitOffset.x86=41132 SLInitFunc.x86=New_CSLQuery_Initialize @@ -1270,6 +695,2366 @@ SLInitHook.x64=1 SLInitOffset.x64=24750 SLInitFunc.x64=New_CSLQuery_Initialize +[10.0.9926.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8C28 +LocalOnlyCode.x86=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=31725 +SingleUserCode.x86=nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3CF99 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +SLInitHook.x86=1 +SLInitOffset.x86=3F140 +SLInitFunc.x86=New_CSLQuery_Initialize +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=95FF1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x64=1 +SingleUserOffset.x64=12A34 +SingleUserCode.x64=Zero +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=BE05 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x64=1 +SLInitOffset.x64=24EC0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.10041.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9D88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=97141 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=32215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=15C64 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2DFC9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=B795 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=46960 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E40 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.10240.16384] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7D38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=96901 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=32A95 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=18F74 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2F5B9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=22865 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=46581 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=250F0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.10586.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7C18 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=96AA1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=353B5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=190D4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30B69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=229A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=469DE +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=25220 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.10586.589] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7BE8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=96A51 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=353B5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=190D4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30B69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=229A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=469DE +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=25220 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.11082.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7C98 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=96AB1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35405 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=190D4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30BB9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=229A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=46A3E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=25220 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.11102.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D58 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=95CD1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35A85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A9C4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30159 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B5D5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=44FD2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D160 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14251.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D58 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=95CD1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35A85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A9C4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30159 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B5D5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=44FD2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D160 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14271.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4CE8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=941E1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35915 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=263F4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF79 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C185 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=47725 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CE50 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14279.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4D28 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=94191 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35915 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=263F4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF79 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C185 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=47725 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CE50 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14295.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4D28 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D691 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35925 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=25514 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1BA35 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=47748 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C860 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14300.1000] +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F5F1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x64=1 +SingleUserOffset.x64=26B04 +SingleUserCode.x64=Zero +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D125 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x64=1 +SLInitOffset.x64=CC60 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14316.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F5F1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=32B55 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=26B04 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C1C9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=46ABD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC60 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14328.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F5F1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=32B55 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=26B04 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C1C9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D365 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=46ABD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC60 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14332.1001] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E98 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F601 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=357E5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2AE44 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316A9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C025 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4755F +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CAD0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14342.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E98 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8EF31 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=357E5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=26774 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316A9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1CEF5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4755F +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CA20 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14352.1002] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4478 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D911 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35465 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24474 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30099 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AC05 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=44792 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CDB0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14366.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9088 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34F65 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=21DE4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1A855 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4793E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CCE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14367.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9088 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34F65 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=21DE4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1A855 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4793E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CCE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14372.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F931 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34635 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=295A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=460D2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC10 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14379.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F941 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34635 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=295A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=460D2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC10 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14383.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F941 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34635 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=295A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=460D2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC10 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14385.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F941 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34635 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=295A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B295 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=460D2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CC10 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14388.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6038 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D781 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14393.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6038 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D781 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14393.1198] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6088 +LocalOnlyCode.x86=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize + +[10.0.14393.1737] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6198 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D861 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35AD5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30039 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45724 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14393.2457] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6248 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D811 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=36CE5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=29CF4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31209 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B545 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45824 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C920 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14901.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6038 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D781 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14905.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6038 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D781 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=359C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=299A4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF29 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AFC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45636 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C930 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14915.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6D98 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E241 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35E35 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=29EB4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30399 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B4A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=46092 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CE40 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14926.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A6D18 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E071 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35E55 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=29EB4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=303B9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B4A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=460A2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CE40 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14931.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4908 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B411 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35705 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=29264 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FF69 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1AD05 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=452FD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C7FC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14936.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A3F38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8B9A1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35355 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=25174 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1BB55 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=44CFE +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=C62C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14942.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A3F38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=9115B +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35355 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=199BD +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1064E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=44CFE +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=258EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14946.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A4018 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=911AB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35355 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=199AD +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1064E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=44CFD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=258DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14951.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A78D8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=94A6B +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=3BA85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1CEDD +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=32629 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=11E9E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=3F680 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22EE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14955.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A78D8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=94A6B +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=3BA85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1CEDD +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=32629 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=11E9E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=3F680 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22EE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14959.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A79B8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=934AB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=2EF05 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=16A0D +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2A4E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10A8E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=448A0 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=26960 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14965.1001] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7868 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=9345B +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=3BA85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17DFD +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=32A59 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1212E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=3F680 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=26610 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14971.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7968 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925FB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=36FE5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1803D +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D9A9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=11FBE +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=46500 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=26180 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14986.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7878 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=926BB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=36FA5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=17FFD +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D979 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=11F7E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=464A0 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=26140 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14997.1001] +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=931EB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x64=1 +SingleUserOffset.x64=274ED +SingleUserCode.x64=Zero +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D95E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x64=1 +SLInitOffset.x64=E000 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15002.1001] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9698 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=931EB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=346B5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=274ED +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D779 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D95E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=47D90 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=E000 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15007.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9648 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=931EB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34665 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=274ED +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D719 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D95E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=47D30 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=E000 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15014.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9648 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=931EB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34685 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=274ED +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3D739 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1D95E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=47D50 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=E000 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15019.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A39F8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=928FB +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=BADF5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=FBDD +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=A8479 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx_jmp +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=20AAE +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=3C240 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=24480 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15025.1000] +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=9259B +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x64=1 +SingleUserOffset.x64=2C08D +SingleUserCode.x64=Zero +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1DD0E +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x64=1 +SLInitOffset.x64=E5B8 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15031.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5BA8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E221 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=30A75 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A114 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2B1D9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C7B5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4532D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D80C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15042.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5BA8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E221 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=30A75 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A114 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2B1D9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1C7B5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4532D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D80C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15046.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=80BB8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E361 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=31E95 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=15E14 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=38A19 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=E745 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=9422D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=21FFC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15048.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=80BB8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E361 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=31E95 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=15E14 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=38A19 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=E745 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=9422D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=21FFC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15055.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5348 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8D2E1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=374C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=181E4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3BAD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10B65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=44EFF +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22AEC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15058.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CAA1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35075 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24E74 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2DD65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4549D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D1EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15061.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CAA1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35075 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24E74 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2DD65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4549D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D1EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15063.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CAA1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35075 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24E74 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2DD65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4549D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D1EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15063.296] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CAA1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35075 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=24E74 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=2FCD9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=2DD65 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4549D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D1EC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15063.994] +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CB01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x64=1 +SingleUserOffset.x64=15EA4 +SingleUserCode.x64=Zero +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=FAE5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x64=1 +SLInitOffset.x64=234DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.15063.1155] +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CB01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x64=1 +SingleUserOffset.x64=15EA4 +SingleUserCode.x64=Zero +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=FAE5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x64=1 +SLInitOffset.x64=234DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16179.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AA568 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8C141 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34425 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=16F84 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31219 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1E7F5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45F30 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=21700 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16184.1001] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AA568 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8C141 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34425 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=16F84 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31219 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1E7F5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45F30 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=21700 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16199.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=ABA68 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8CED1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=348C5 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=28C14 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=319B9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=CB25 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=469B0 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=FA30 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16215.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7CE8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8DE21 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39F05 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=28724 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3E019 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=CC15 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=46462 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=FB00 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16232.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7D38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8DD41 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39F35 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=287B4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3E0C9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=CC15 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4650F +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=FB00 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16237.1001] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7F38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E911 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39F85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1BC84 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3E119 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=DA55 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4655D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2180C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16241.1001] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A7F38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E911 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39F85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1BC84 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3E119 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=DA55 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4655D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2180C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16251.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=ABC88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8EC21 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=3A525 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1BCB4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31779 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=DAF5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=447FD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2183C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16251.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=ABC88 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8EC21 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=3A525 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1BCB4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31779 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=DAF5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=447FD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2183C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16257.1] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB718 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E841 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=33925 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=11364 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C409 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1EFD5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4504D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2495C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16257.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB718 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E841 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=33925 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=11364 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C409 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1EFD5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4504D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2495C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16273.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB798 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8E871 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=33925 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=11364 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3C409 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1EFD5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4504D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2495C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16275.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9388 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=90001 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39435 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C724 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DE89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D75 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=463D4 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D0C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16278.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9388 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=90001 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39435 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C724 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DE89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D75 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=463D4 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D0C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16281.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16288.1] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16291.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16294.1] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16296.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16299.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16299.15] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E08 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FD01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39215 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C774 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DC89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=461BD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D5C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16353.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9388 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=90001 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=39435 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1C724 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DE89 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D75 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=463D4 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D0C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.16362.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8E38 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FBA1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=2F61C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=19D1C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DE99 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=463D4 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D9C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17004.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A8EB8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB41 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=2F65C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=19D1C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=3DF09 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=12D85 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4643F +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22D9C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17017.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB388 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F291 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=3477C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1977C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31049 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=125A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45CDD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=227DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17025.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB498 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F291 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=3477C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1977C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31049 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=125A5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45CDD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=227DC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17035.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB3F8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F271 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=354AC +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=14E7C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31F19 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10CB5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45C4D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22AEC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17046.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AB3F8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8F281 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=354AC +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=14E8C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=31F19 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10CC5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=45C4D +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22AFC +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17063.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD7F8 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=92671 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=153CC +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=111CE +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=2318C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17115.1] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD738 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925D1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1511C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10E78 +DefPolicyCode.x64=CDefPolicy_Query_edi_rcx +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E6C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17128.1] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD738 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925D1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1511C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10E78 +DefPolicyCode.x64=CDefPolicy_Query_edi_rcx +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E6C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17133.1] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD738 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925D1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1511C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10E78 +DefPolicyCode.x64=CDefPolicy_Query_edi_rcx +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E6C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17134.1] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AD738 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=925D1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=36B0C +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1511C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=33569 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=10E78 +DefPolicyCode.x64=CDefPolicy_Query_edi_rcx +SLInitHook.x86=1 +SLInitOffset.x86=474AD +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=22E6C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17723.1000] +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=75D91 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x64=1 +SingleUserOffset.x64=1296C +SingleUserCode.x64=Zero +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17A45 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x64=1 +SLInitOffset.x64=1B10C +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.17763.1] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=AF8E4 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=77941 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=4D505 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=1322C +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=4BD09 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=17F45 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=5B02A +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=1ABFC +SLInitFunc.x64=New_CSLQuery_Initialize + [SLInit] bServerSku=1 bRemoteConnAllowed=1 @@ -1356,6 +3141,82 @@ bServerSku.x64 =F9068 ulMaxDebugSessions.x64=F906C bRemoteConnAllowed.x64=F9070 +[6.3.9600.18692-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =F9054 +lMaxUserSessions.x64 =F9058 +bAppServerAllowed.x64 =F905C +bInitialized.x64 =F9060 +bMultimonAllowed.x64 =F9064 +bServerSku.x64 =F9068 +ulMaxDebugSessions.x64=F906C +bRemoteConnAllowed.x64=F9070 + +[6.3.9600.18708-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =FA054 +lMaxUserSessions.x64 =FA058 +bAppServerAllowed.x64 =FA05C +bInitialized.x64 =FA060 +bMultimonAllowed.x64 =FA064 +bServerSku.x64 =FA068 +ulMaxDebugSessions.x64=FA06C +bRemoteConnAllowed.x64=FA070 + +[6.3.9600.18928-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =FA054 +lMaxUserSessions.x64 =FA058 +bAppServerAllowed.x64 =FA05C +bInitialized.x64 =FA060 +bMultimonAllowed.x64 =FA064 +bServerSku.x64 =FA068 +ulMaxDebugSessions.x64=FA06C +bRemoteConnAllowed.x64=FA070 + +[6.3.9600.19093-SLInit] +bFUSEnabled.x86 =D3068 +lMaxUserSessions.x86 =D306C +bAppServerAllowed.x86 =D3070 +bInitialized.x86 =D3074 +bMultimonAllowed.x86 =D3078 +bServerSku.x86 =D307C +ulMaxDebugSessions.x86=D3080 +bRemoteConnAllowed.x86=D3084 + +bFUSEnabled.x64 =FA054 +lMaxUserSessions.x64 =FA058 +bAppServerAllowed.x64 =FA05C +bInitialized.x64 =FA060 +bMultimonAllowed.x64 =FA064 +bServerSku.x64 =FA068 +ulMaxDebugSessions.x64=FA06C +bRemoteConnAllowed.x64=FA070 + [6.4.9841.0-SLInit] bFUSEnabled.x86 =BF9F0 lMaxUserSessions.x86 =BF9F4 @@ -1412,3 +3273,1726 @@ bMultimonAllowed.x64 =EDC00 bServerSku.x64 =EDC04 ulMaxDebugSessions.x64=EDC08 bRemoteConnAllowed.x64=EDC0C + +[10.0.9926.0-SLInit] +bFUSEnabled.x86 =C17D8 +lMaxUserSessions.x86 =C17DC +bAppServerAllowed.x86 =C17E0 +bInitialized.x86 =C17E4 +bMultimonAllowed.x86 =C17E8 +bServerSku.x86 =C17EC +ulMaxDebugSessions.x86=C17F0 +bRemoteConnAllowed.x86=C17F4 + +bFUSEnabled.x64 =EEBF0 +lMaxUserSessions.x64 =EEBF4 +bAppServerAllowed.x64 =EEBF8 +bInitialized.x64 =EEBFC +bMultimonAllowed.x64 =EEC00 +bServerSku.x64 =EEC04 +ulMaxDebugSessions.x64=EEC08 +bRemoteConnAllowed.x64=EEC0C + +[10.0.10041.0-SLInit] +bFUSEnabled.x86 =C5F60 +lMaxUserSessions.x86 =C5F64 +bAppServerAllowed.x86 =C5F68 +bInitialized.x86 =C5F6C +bMultimonAllowed.x86 =C5F70 +bServerSku.x86 =C5F74 +ulMaxDebugSessions.x86=C5F78 +bRemoteConnAllowed.x86=C5F7C + +bFUSEnabled.x64 =F3448 +lMaxUserSessions.x64 =F344C +bAppServerAllowed.x64 =F3450 +bInitialized.x64 =F3454 +bMultimonAllowed.x64 =F3458 +bServerSku.x64 =F345C +ulMaxDebugSessions.x64=F3460 +bRemoteConnAllowed.x64=F3464 + +[10.0.10240.16384-SLInit] +bFUSEnabled.x86 =C3F60 +lMaxUserSessions.x86 =C3F64 +bAppServerAllowed.x86 =C3F68 +bInitialized.x86 =C3F6C +bMultimonAllowed.x86 =C3F70 +bServerSku.x86 =C3F74 +ulMaxDebugSessions.x86=C3F78 +bRemoteConnAllowed.x86=C3F7C + +lMaxUserSessions.x64 =F23B0 +bAppServerAllowed.x64 =F23B4 +bServerSku.x64 =F23B8 +bFUSEnabled.x64 =F3460 +bInitialized.x64 =F3464 +bMultimonAllowed.x64 =F3468 +ulMaxDebugSessions.x64=F346C +bRemoteConnAllowed.x64=F3470 + +[10.0.10586.0-SLInit] +bFUSEnabled.x86 =C3F60 +lMaxUserSessions.x86 =C3F64 +bAppServerAllowed.x86 =C3F68 +bInitialized.x86 =C3F6C +bMultimonAllowed.x86 =C3F70 +bServerSku.x86 =C3F74 +ulMaxDebugSessions.x86=C3F78 +bRemoteConnAllowed.x86=C3F7C + +lMaxUserSessions.x64 =F23B0 +bAppServerAllowed.x64 =F23B4 +bServerSku.x64 =F23B8 +bFUSEnabled.x64 =F3460 +bInitialized.x64 =F3464 +bMultimonAllowed.x64 =F3468 +ulMaxDebugSessions.x64=F346C +bRemoteConnAllowed.x64=F3470 + +[10.0.10586.589-SLInit] +bFUSEnabled.x86 =C3F60 +lMaxUserSessions.x86 =C3F64 +bAppServerAllowed.x86 =C3F68 +bInitialized.x86 =C3F6C +bMultimonAllowed.x86 =C3F70 +bServerSku.x86 =C3F74 +ulMaxDebugSessions.x86=C3F78 +bRemoteConnAllowed.x86=C3F7C + +lMaxUserSessions.x64 =F23B0 +bAppServerAllowed.x64 =F23B4 +bServerSku.x64 =F23B8 +bFUSEnabled.x64 =F3460 +bInitialized.x64 =F3464 +bMultimonAllowed.x64 =F3468 +ulMaxDebugSessions.x64=F346C +bRemoteConnAllowed.x64=F3470 + +[10.0.11082.1000-SLInit] +bFUSEnabled.x86 =C3F60 +lMaxUserSessions.x86 =C3F64 +bAppServerAllowed.x86 =C3F68 +bInitialized.x86 =C3F6C +bMultimonAllowed.x86 =C3F70 +bServerSku.x86 =C3F74 +ulMaxDebugSessions.x86=C3F78 +bRemoteConnAllowed.x86=C3F7C + +lMaxUserSessions.x64 =F23B0 +bAppServerAllowed.x64 =F23B4 +bServerSku.x64 =F23B8 +bFUSEnabled.x64 =F3460 +bInitialized.x64 =F3464 +bMultimonAllowed.x64 =F3468 +ulMaxDebugSessions.x64=F346C +bRemoteConnAllowed.x64=F3470 + +[10.0.11102.1000-SLInit] +bInitialized.x86 =C1F5C +bServerSku.x86 =C1F60 +lMaxUserSessions.x86 =C1F64 +bAppServerAllowed.x86 =C1F68 +bRemoteConnAllowed.x86=C1F6C +bMultimonAllowed.x86 =C1F70 +ulMaxDebugSessions.x86=C1F74 +bFUSEnabled.x86 =C1F78 + +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 +bServerSku.x64 =F244C +lMaxUserSessions.x64 =F2450 +bAppServerAllowed.x64 =F2454 + +[10.0.14251.1000-SLInit] +bInitialized.x86 =C1F5C +bServerSku.x86 =C1F60 +lMaxUserSessions.x86 =C1F64 +bAppServerAllowed.x86 =C1F68 +bRemoteConnAllowed.x86=C1F6C +bMultimonAllowed.x86 =C1F70 +ulMaxDebugSessions.x86=C1F74 +bFUSEnabled.x86 =C1F78 + +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 +bServerSku.x64 =F244C +lMaxUserSessions.x64 =F2450 +bAppServerAllowed.x64 =F2454 + +[10.0.14271.1000-SLInit] +bInitialized.x86 =C0F5C +bServerSku.x86 =C0F60 +lMaxUserSessions.x86 =C0F64 +bAppServerAllowed.x86 =C0F68 +bRemoteConnAllowed.x86=C0F6C +bMultimonAllowed.x86 =C0F70 +ulMaxDebugSessions.x86=C0F74 +bFUSEnabled.x86 =C0F78 + +bServerSku.x64 =EF3C0 +lMaxUserSessions.x64 =EF3C4 +bAppServerAllowed.x64 =EF3C8 +bInitialized.x64 =F0460 +bRemoteConnAllowed.x64=F0464 +bMultimonAllowed.x64 =F0468 +ulMaxDebugSessions.x64=F046C +bFUSEnabled.x64 =F0470 + +[10.0.14279.1000-SLInit] +bInitialized.x86 =C0F5C +bServerSku.x86 =C0F60 +lMaxUserSessions.x86 =C0F64 +bAppServerAllowed.x86 =C0F68 +bRemoteConnAllowed.x86=C0F6C +bMultimonAllowed.x86 =C0F70 +ulMaxDebugSessions.x86=C0F74 +bFUSEnabled.x86 =C0F78 + +bServerSku.x64 =EF3C0 +lMaxUserSessions.x64 =EF3C4 +bAppServerAllowed.x64 =EF3C8 +bInitialized.x64 =F0460 +bRemoteConnAllowed.x64=F0464 +bMultimonAllowed.x64 =F0468 +ulMaxDebugSessions.x64=F046C +bFUSEnabled.x64 =F0470 + +[10.0.14295.1000-SLInit] +bInitialized.x86 =C0F5C +bServerSku.x86 =C0F60 +lMaxUserSessions.x86 =C0F64 +bAppServerAllowed.x86 =C0F68 +bRemoteConnAllowed.x86=C0F6C +bMultimonAllowed.x86 =C0F70 +ulMaxDebugSessions.x86=C0F74 +bFUSEnabled.x86 =C0F78 + +bServerSku.x64 =E73C0 +lMaxUserSessions.x64 =E73C4 +bAppServerAllowed.x64 =E73C8 +bInitialized.x64 =E8460 +bRemoteConnAllowed.x64=E8464 +bMultimonAllowed.x64 =E8468 +ulMaxDebugSessions.x64=E846C +bFUSEnabled.x64 =E8470 + +[10.0.14300.1000-SLInit] +bServerSku.x64 =E93C0 +lMaxUserSessions.x64 =E93C4 +bAppServerAllowed.x64 =E93C8 +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 + +[10.0.14316.1000-SLInit] +bInitialized.x86 =C4F58 +bServerSku.x86 =C4F5C +lMaxUserSessions.x86 =C4F60 +bAppServerAllowed.x86 =C4F64 +bRemoteConnAllowed.x86=C4F68 +bMultimonAllowed.x86 =C4F6C +ulMaxDebugSessions.x86=C4F70 +bFUSEnabled.x86 =C4F74 + +bServerSku.x64 =E93C0 +lMaxUserSessions.x64 =E93C4 +bAppServerAllowed.x64 =E93C8 +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 + +[10.0.14328.1000-SLInit] +bInitialized.x86 =C4F58 +bServerSku.x86 =C4F5C +lMaxUserSessions.x86 =C4F60 +bAppServerAllowed.x86 =C4F64 +bRemoteConnAllowed.x86=C4F68 +bMultimonAllowed.x86 =C4F6C +ulMaxDebugSessions.x86=C4F70 +bFUSEnabled.x86 =C4F74 + +bServerSku.x64 =E93C0 +lMaxUserSessions.x64 =E93C4 +bAppServerAllowed.x64 =E93C8 +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 + +[10.0.14332.1001-SLInit] +bInitialized.x86 =C4F58 +bServerSku.x86 =C4F5C +lMaxUserSessions.x86 =C4F60 +bAppServerAllowed.x86 =C4F64 +bRemoteConnAllowed.x86=C4F68 +bMultimonAllowed.x86 =C4F6C +ulMaxDebugSessions.x86=C4F70 +bFUSEnabled.x86 =C4F74 + +bServerSku.x64 =E93C0 +lMaxUserSessions.x64 =E93C4 +bAppServerAllowed.x64 =E93C8 +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 + +[10.0.14342.1000-SLInit] +bInitialized.x86 =C4F58 +bServerSku.x86 =C4F5C +lMaxUserSessions.x86 =C4F60 +bAppServerAllowed.x86 =C4F64 +bRemoteConnAllowed.x86=C4F68 +bMultimonAllowed.x86 =C4F6C +ulMaxDebugSessions.x86=C4F70 +bFUSEnabled.x86 =C4F74 + +bInitialized.x64 =E9430 +bRemoteConnAllowed.x64=E9434 +bMultimonAllowed.x64 =E9438 +ulMaxDebugSessions.x64=E943C +bFUSEnabled.x64 =E9440 +bServerSku.x64 =E944C +lMaxUserSessions.x64 =E9450 +bAppServerAllowed.x64 =E9454 + +[10.0.14352.1002-SLInit] +bInitialized.x86 =C0F5C +bServerSku.x86 =C0F60 +lMaxUserSessions.x86 =C0F64 +bAppServerAllowed.x86 =C0F68 +bRemoteConnAllowed.x86=C0F6C +bMultimonAllowed.x86 =C0F70 +ulMaxDebugSessions.x86=C0F74 +bFUSEnabled.x86 =C0F78 + +bServerSku.x64 =E73C0 +lMaxUserSessions.x64 =E73C4 +bAppServerAllowed.x64 =E73C8 +bInitialized.x64 =E8460 +bRemoteConnAllowed.x64=E8464 +bMultimonAllowed.x64 =E8468 +ulMaxDebugSessions.x64=E846C +bFUSEnabled.x64 =E8470 + +[10.0.14366.0-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA480 +bRemoteConnAllowed.x64=EA484 +bMultimonAllowed.x64 =EA488 +ulMaxDebugSessions.x64=EA48C +bFUSEnabled.x64 =EA490 + +[10.0.14367.0-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA480 +bRemoteConnAllowed.x64=EA484 +bMultimonAllowed.x64 =EA488 +ulMaxDebugSessions.x64=EA48C +bFUSEnabled.x64 =EA490 + +[10.0.14372.0-SLInit] +bInitialized.x86 =C3F68 +bServerSku.x86 =C3F6C +lMaxUserSessions.x86 =C3F70 +bAppServerAllowed.x86 =C3F74 +bRemoteConnAllowed.x86=C3F78 +bMultimonAllowed.x86 =C3F7C +ulMaxDebugSessions.x86=C3F80 +bFUSEnabled.x86 =C3F84 + +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 +bServerSku.x64 =EA47C +lMaxUserSessions.x64 =EA480 +bAppServerAllowed.x64 =EA484 + +[10.0.14379.0-SLInit] +bInitialized.x86 =C3F68 +bServerSku.x86 =C3F6C +lMaxUserSessions.x86 =C3F70 +bAppServerAllowed.x86 =C3F74 +bRemoteConnAllowed.x86=C3F78 +bMultimonAllowed.x86 =C3F7C +ulMaxDebugSessions.x86=C3F80 +bFUSEnabled.x86 =C3F84 + +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 +bServerSku.x64 =EA47C +lMaxUserSessions.x64 =EA480 +bAppServerAllowed.x64 =EA484 + +[10.0.14383.0-SLInit] +bInitialized.x86 =C3F68 +bServerSku.x86 =C3F6C +lMaxUserSessions.x86 =C3F70 +bAppServerAllowed.x86 =C3F74 +bRemoteConnAllowed.x86=C3F78 +bMultimonAllowed.x86 =C3F7C +ulMaxDebugSessions.x86=C3F80 +bFUSEnabled.x86 =C3F84 + +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 +bServerSku.x64 =EA47C +lMaxUserSessions.x64 =EA480 +bAppServerAllowed.x64 =EA484 + +[10.0.14385.0-SLInit] +bInitialized.x86 =C3F68 +bServerSku.x86 =C3F6C +lMaxUserSessions.x86 =C3F70 +bAppServerAllowed.x86 =C3F74 +bRemoteConnAllowed.x86=C3F78 +bMultimonAllowed.x86 =C3F7C +ulMaxDebugSessions.x86=C3F80 +bFUSEnabled.x86 =C3F84 + +bInitialized.x64 =EA460 +bRemoteConnAllowed.x64=EA464 +bMultimonAllowed.x64 =EA468 +ulMaxDebugSessions.x64=EA46C +bFUSEnabled.x64 =EA470 +bServerSku.x64 =EA47C +lMaxUserSessions.x64 =EA480 +bAppServerAllowed.x64 =EA484 + +[10.0.14388.0-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14393.0-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14393.1198-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +[10.0.14393.1737-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14393.2457-SLInit] +bInitialized.x86 =C1F94 +bServerSku.x86 =C1F98 +lMaxUserSessions.x86 =C1F9C +bAppServerAllowed.x86 =C1FA0 +bRemoteConnAllowed.x86=C1FA4 +bMultimonAllowed.x86 =C1FA8 +ulMaxDebugSessions.x86=C1FAC +bFUSEnabled.x86 =C1FB0 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14901.1000-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14905.1000-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E73D0 +lMaxUserSessions.x64 =E73D4 +bAppServerAllowed.x64 =E73D8 +bInitialized.x64 =E8470 +bRemoteConnAllowed.x64=E8474 +bMultimonAllowed.x64 =E8478 +ulMaxDebugSessions.x64=E847C +bFUSEnabled.x64 =E8480 + +[10.0.14915.1000-SLInit] +bInitialized.x86 =C4F6C +bServerSku.x86 =C4F70 +lMaxUserSessions.x86 =C4F74 +bAppServerAllowed.x86 =C4F78 +bRemoteConnAllowed.x86=C4F7C +bMultimonAllowed.x86 =C4F80 +ulMaxDebugSessions.x86=C4F84 +bFUSEnabled.x86 =C4F88 + +bServerSku.x64 =E93D0 +lMaxUserSessions.x64 =E93D4 +bAppServerAllowed.x64 =E93D8 +bInitialized.x64 =EA470 +bRemoteConnAllowed.x64=EA474 +bMultimonAllowed.x64 =EA478 +ulMaxDebugSessions.x64=EA47C +bFUSEnabled.x64 =EA480 + +[10.0.14926.1000-SLInit] +bInitialized.x86 =C4F6C +bServerSku.x86 =C4F70 +lMaxUserSessions.x86 =C4F74 +bAppServerAllowed.x86 =C4F78 +bRemoteConnAllowed.x86=C4F7C +bMultimonAllowed.x86 =C4F80 +ulMaxDebugSessions.x86=C4F84 +bFUSEnabled.x86 =C4F88 + +bServerSku.x64 =E93D0 +lMaxUserSessions.x64 =E93D4 +bAppServerAllowed.x64 =E93D8 +bInitialized.x64 =EA470 +bRemoteConnAllowed.x64=EA474 +bMultimonAllowed.x64 =EA478 +ulMaxDebugSessions.x64=EA47C +bFUSEnabled.x64 =EA480 + +[10.0.14931.1000-SLInit] +bInitialized.x86 =C1F6C +bServerSku.x86 =C1F70 +lMaxUserSessions.x86 =C1F74 +bAppServerAllowed.x86 =C1F78 +bRemoteConnAllowed.x86=C1F7C +bMultimonAllowed.x86 =C1F80 +ulMaxDebugSessions.x86=C1F84 +bFUSEnabled.x86 =C1F88 + +bServerSku.x64 =E63D0 +lMaxUserSessions.x64 =E63D4 +bAppServerAllowed.x64 =E63D8 +bInitialized.x64 =E7470 +bRemoteConnAllowed.x64=E7474 +bMultimonAllowed.x64 =E7478 +ulMaxDebugSessions.x64=E747C +bFUSEnabled.x64 =E7480 + +[10.0.14936.1000-SLInit] +bInitialized.x86 =C0F6C +bServerSku.x86 =C0F70 +lMaxUserSessions.x86 =C0F74 +bAppServerAllowed.x86 =C0F78 +bRemoteConnAllowed.x86=C0F7C +bMultimonAllowed.x86 =C0F80 +ulMaxDebugSessions.x86=C0F84 +bFUSEnabled.x86 =C0F88 + +bInitialized.x64 =E8460 +bRemoteConnAllowed.x64=E8464 +bMultimonAllowed.x64 =E8468 +ulMaxDebugSessions.x64=E846C +bFUSEnabled.x64 =E8470 +bServerSku.x64 =E847C +lMaxUserSessions.x64 =E8480 +bAppServerAllowed.x64 =E8484 + +[10.0.14942.1000-SLInit] +bInitialized.x86 =C0F6C +bServerSku.x86 =C0F70 +lMaxUserSessions.x86 =C0F74 +bAppServerAllowed.x86 =C0F78 +bRemoteConnAllowed.x86=C0F7C +bMultimonAllowed.x86 =C0F80 +ulMaxDebugSessions.x86=C0F84 +bFUSEnabled.x86 =C0F88 + +bInitialized.x64 =EC460 +bRemoteConnAllowed.x64=EC464 +bMultimonAllowed.x64 =EC468 +ulMaxDebugSessions.x64=EC46C +bFUSEnabled.x64 =EC470 +bServerSku.x64 =EC47C +lMaxUserSessions.x64 =EC480 +bAppServerAllowed.x64 =EC484 + +[10.0.14946.1000-SLInit] +bInitialized.x86 =C0F6C +bServerSku.x86 =C0F70 +lMaxUserSessions.x86 =C0F74 +bAppServerAllowed.x86 =C0F78 +bRemoteConnAllowed.x86=C0F7C +bMultimonAllowed.x86 =C0F80 +ulMaxDebugSessions.x86=C0F84 +bFUSEnabled.x86 =C0F88 + +bInitialized.x64 =EC460 +bRemoteConnAllowed.x64=EC464 +bMultimonAllowed.x64 =EC468 +ulMaxDebugSessions.x64=EC46C +bFUSEnabled.x64 =EC470 +bServerSku.x64 =EC47C +lMaxUserSessions.x64 =EC480 +bAppServerAllowed.x64 =EC484 + +[10.0.14951.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =EF3D0 +lMaxUserSessions.x64 =EF3D4 +bAppServerAllowed.x64 =EF3D8 +bInitialized.x64 =F0470 +bRemoteConnAllowed.x64=F0474 +bMultimonAllowed.x64 =F0478 +ulMaxDebugSessions.x64=F047C +bFUSEnabled.x64 =F0480 + +[10.0.14955.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =EF3D0 +lMaxUserSessions.x64 =EF3D4 +bAppServerAllowed.x64 =EF3D8 +bInitialized.x64 =F0470 +bRemoteConnAllowed.x64=F0474 +bMultimonAllowed.x64 =F0478 +ulMaxDebugSessions.x64=F047C +bFUSEnabled.x64 =F0480 + +[10.0.14959.1000-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =EE3D0 +lMaxUserSessions.x64 =EE3D4 +bAppServerAllowed.x64 =EE3D8 +bInitialized.x64 =EF470 +bRemoteConnAllowed.x64=EF474 +bMultimonAllowed.x64 =EF478 +ulMaxDebugSessions.x64=EF47C +bFUSEnabled.x64 =EF480 + +[10.0.14965.1001-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bInitialized.x64 =EF460 +bRemoteConnAllowed.x64=EF464 +bMultimonAllowed.x64 =EF468 +ulMaxDebugSessions.x64=EF46C +bFUSEnabled.x64 =EF470 +bServerSku.x64 =EF47C +lMaxUserSessions.x64 =EF480 +bAppServerAllowed.x64 =EF484 + +[10.0.14971.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =EE3C0 +lMaxUserSessions.x64 =EE3C4 +bAppServerAllowed.x64 =EE3C8 +bInitialized.x64 =EE470 +bRemoteConnAllowed.x64=EE474 +bMultimonAllowed.x64 =EE478 +ulMaxDebugSessions.x64=EE47C +bFUSEnabled.x64 =EE480 + +[10.0.14986.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =EE3C0 +lMaxUserSessions.x64 =EE3C4 +bAppServerAllowed.x64 =EE3C8 +bInitialized.x64 =EE470 +bRemoteConnAllowed.x64=EE474 +bMultimonAllowed.x64 =EE478 +ulMaxDebugSessions.x64=EE47C +bFUSEnabled.x64 =EE480 + +[10.0.14997.1001-SLInit] +bServerSku.x64 =F0408 +lMaxUserSessions.x64 =F040C +bAppServerAllowed.x64 =F0410 +bInitialized.x64 =F0480 +bRemoteConnAllowed.x64=F0484 +bMultimonAllowed.x64 =F0488 +ulMaxDebugSessions.x64=F048C +bFUSEnabled.x64 =F0490 + +[10.0.15002.1001-SLInit] +bInitialized.x86 =C6F74 +bServerSku.x86 =C6F78 +lMaxUserSessions.x86 =C6F7C +bAppServerAllowed.x86 =C6F80 +bRemoteConnAllowed.x86=C6F84 +bMultimonAllowed.x86 =C6F88 +ulMaxDebugSessions.x86=C6F8C +bFUSEnabled.x86 =C6F90 + +bServerSku.x64 =F0408 +lMaxUserSessions.x64 =F040C +bAppServerAllowed.x64 =F0410 +bInitialized.x64 =F0480 +bRemoteConnAllowed.x64=F0484 +bMultimonAllowed.x64 =F0488 +ulMaxDebugSessions.x64=F048C +bFUSEnabled.x64 =F0490 + +[10.0.15007.1000-SLInit] +bInitialized.x86 =C6F74 +bServerSku.x86 =C6F78 +lMaxUserSessions.x86 =C6F7C +bAppServerAllowed.x86 =C6F80 +bRemoteConnAllowed.x86=C6F84 +bMultimonAllowed.x86 =C6F88 +ulMaxDebugSessions.x86=C6F8C +bFUSEnabled.x86 =C6F90 + +bServerSku.x64 =F0408 +lMaxUserSessions.x64 =F040C +bAppServerAllowed.x64 =F0410 +bInitialized.x64 =F0480 +bRemoteConnAllowed.x64=F0484 +bMultimonAllowed.x64 =F0488 +ulMaxDebugSessions.x64=F048C +bFUSEnabled.x64 =F0490 + +[10.0.15014.1000-SLInit] +bInitialized.x86 =C6F74 +bServerSku.x86 =C6F78 +lMaxUserSessions.x86 =C6F7C +bAppServerAllowed.x86 =C6F80 +bRemoteConnAllowed.x86=C6F84 +bMultimonAllowed.x86 =C6F88 +ulMaxDebugSessions.x86=C6F8C +bFUSEnabled.x86 =C6F90 + +bServerSku.x64 =F0408 +lMaxUserSessions.x64 =F040C +bAppServerAllowed.x64 =F0410 +bInitialized.x64 =F0480 +bRemoteConnAllowed.x64=F0484 +bMultimonAllowed.x64 =F0488 +ulMaxDebugSessions.x64=F048C +bFUSEnabled.x64 =F0490 + +[10.0.15019.1000-SLInit] +bInitialized.x86 =C5F68 +bServerSku.x86 =C5F6C +lMaxUserSessions.x86 =C5F70 +bAppServerAllowed.x86 =C5F74 +bRemoteConnAllowed.x86=C5F78 +bMultimonAllowed.x86 =C5F7C +ulMaxDebugSessions.x86=C5F80 +bFUSEnabled.x86 =C5F84 + +bServerSku.x64 =ECBDC +lMaxUserSessions.x64 =ECBE0 +bAppServerAllowed.x64 =ECBE4 +bInitialized.x64 =F0490 +bRemoteConnAllowed.x64=F0494 +bMultimonAllowed.x64 =F0498 +ulMaxDebugSessions.x64=F049C +bFUSEnabled.x64 =F04A0 + +[10.0.15025.1000-SLInit] +bServerSku.x64 =EE3E0 +lMaxUserSessions.x64 =EE3E4 +bAppServerAllowed.x64 =EE3E8 +bInitialized.x64 =EF488 +bRemoteConnAllowed.x64=EF48C +bMultimonAllowed.x64 =EF490 +ulMaxDebugSessions.x64=EF494 +bFUSEnabled.x64 =EF498 + +[10.0.15031.0-SLInit] +bInitialized.x86 =C2F6C +bServerSku.x86 =C2F70 +lMaxUserSessions.x86 =C2F74 +bAppServerAllowed.x86 =C2F78 +bRemoteConnAllowed.x86=C2F7C +bMultimonAllowed.x86 =C2F80 +ulMaxDebugSessions.x86=C2F84 +bFUSEnabled.x86 =C2F88 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA488 +bRemoteConnAllowed.x64=EA48C +bMultimonAllowed.x64 =EA490 +ulMaxDebugSessions.x64=EA494 +bFUSEnabled.x64 =EA498 + +[10.0.15042.0-SLInit] +bInitialized.x86 =C2F6C +bServerSku.x86 =C2F70 +lMaxUserSessions.x86 =C2F74 +bAppServerAllowed.x86 =C2F78 +bRemoteConnAllowed.x86=C2F7C +bMultimonAllowed.x86 =C2F80 +ulMaxDebugSessions.x86=C2F84 +bFUSEnabled.x86 =C2F88 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA488 +bRemoteConnAllowed.x64=EA48C +bMultimonAllowed.x64 =EA490 +ulMaxDebugSessions.x64=EA494 +bFUSEnabled.x64 =EA498 + +[10.0.15046.0-SLInit] +bInitialized.x86 =C4F18 +bServerSku.x86 =C4F1C +lMaxUserSessions.x86 =C4F20 +bAppServerAllowed.x86 =C4F24 +bRemoteConnAllowed.x86=C4F28 +ulMaxDebugSessions.x86=C4F2C +bMultimonAllowed.x86 =C5010 +bFUSEnabled.x86 =C5014 + +bInitialized.x64 =EB468 +bRemoteConnAllowed.x64=EB46C +bMultimonAllowed.x64 =EB470 +ulMaxDebugSessions.x64=EB474 +bFUSEnabled.x64 =EB478 +bServerSku.x64 =EB484 +lMaxUserSessions.x64 =EB488 +bAppServerAllowed.x64 =EB48C + +[10.0.15048.0-SLInit] +bInitialized.x86 =C4F18 +bServerSku.x86 =C4F1C +lMaxUserSessions.x86 =C4F20 +bAppServerAllowed.x86 =C4F24 +bRemoteConnAllowed.x86=C4F28 +ulMaxDebugSessions.x86=C4F2C +bMultimonAllowed.x86 =C5010 +bFUSEnabled.x86 =C5014 + +bInitialized.x64 =EB468 +bRemoteConnAllowed.x64=EB46C +bMultimonAllowed.x64 =EB470 +ulMaxDebugSessions.x64=EB474 +bFUSEnabled.x64 =EB478 +bServerSku.x64 =EB484 +lMaxUserSessions.x64 =EB488 +bAppServerAllowed.x64 =EB48C + +[10.0.15055.0-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bServerSku.x64 =E83D8 +lMaxUserSessions.x64 =E83DC +bAppServerAllowed.x64 =E83E0 +bInitialized.x64 =E9490 +bRemoteConnAllowed.x64=E9494 +bMultimonAllowed.x64 =E9498 +ulMaxDebugSessions.x64=E949C +bFUSEnabled.x64 =E94A0 + +[10.0.15058.0-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15061.0-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15063.0-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15063.296-SLInit] +bInitialized.x86 =C2F70 +bServerSku.x86 =C2F74 +lMaxUserSessions.x86 =C2F78 +bAppServerAllowed.x86 =C2F7C +bRemoteConnAllowed.x86=C2F80 +bMultimonAllowed.x86 =C2F84 +ulMaxDebugSessions.x86=C2F88 +bFUSEnabled.x86 =C2F8C + +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15063.994-SLInit] +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.15063.1155-SLInit] +bInitialized.x64 =E9468 +bRemoteConnAllowed.x64=E946C +bMultimonAllowed.x64 =E9470 +ulMaxDebugSessions.x64=E9474 +bFUSEnabled.x64 =E9478 +bServerSku.x64 =E9484 +lMaxUserSessions.x64 =E9488 +bAppServerAllowed.x64 =E948C + +[10.0.16179.1000-SLInit] +bInitialized.x86 =C7F6C +bServerSku.x86 =C7F70 +lMaxUserSessions.x86 =C7F74 +bAppServerAllowed.x86 =C7F78 +bRemoteConnAllowed.x86=C7F7C +bMultimonAllowed.x86 =C7F80 +ulMaxDebugSessions.x86=C7F84 +bFUSEnabled.x86 =C7F88 + +bServerSku.x64 =E83D8 +lMaxUserSessions.x64 =E83DC +bAppServerAllowed.x64 =E83E0 +bInitialized.x64 =E9490 +bRemoteConnAllowed.x64=E9494 +bMultimonAllowed.x64 =E9498 +ulMaxDebugSessions.x64=E949C +bFUSEnabled.x64 =E94A0 + +[10.0.16184.1001-SLInit] +bInitialized.x86 =C7F6C +bServerSku.x86 =C7F70 +lMaxUserSessions.x86 =C7F74 +bAppServerAllowed.x86 =C7F78 +bRemoteConnAllowed.x86=C7F7C +bMultimonAllowed.x86 =C7F80 +ulMaxDebugSessions.x86=C7F84 +bFUSEnabled.x86 =C7F88 + +bServerSku.x64 =E83D8 +lMaxUserSessions.x64 =E83DC +bAppServerAllowed.x64 =E83E0 +bInitialized.x64 =E9490 +bRemoteConnAllowed.x64=E9494 +bMultimonAllowed.x64 =E9498 +ulMaxDebugSessions.x64=E949C +bFUSEnabled.x64 =E94A0 + +[10.0.16199.1000-SLInit] +bInitialized.x86 =C8F74 +bServerSku.x86 =C8F78 +lMaxUserSessions.x86 =C8F7C +bAppServerAllowed.x86 =C8F80 +bRemoteConnAllowed.x86=C8F84 +bMultimonAllowed.x86 =C8F88 +ulMaxDebugSessions.x86=C8F8C +bFUSEnabled.x86 =C8F90 + +bServerSku.x64 =E83E8 +lMaxUserSessions.x64 =E83EC +bAppServerAllowed.x64 =E83F0 +bInitialized.x64 =E94A0 +bRemoteConnAllowed.x64=E94A4 +bMultimonAllowed.x64 =E94A8 +ulMaxDebugSessions.x64=E94AC +bFUSEnabled.x64 =E94B0 + +[10.0.16215.1000-SLInit] +bInitialized.x86 =C5F78 +bServerSku.x86 =C5F7C +lMaxUserSessions.x86 =C5F80 +bAppServerAllowed.x86 =C5F84 +bRemoteConnAllowed.x86=C5F88 +bMultimonAllowed.x86 =C5F8C +ulMaxDebugSessions.x86=C5F90 +bFUSEnabled.x86 =C5F94 + +bServerSku.x64 =EA3E8 +lMaxUserSessions.x64 =EA3EC +bAppServerAllowed.x64 =EA3F0 +bInitialized.x64 =EB4A0 +bRemoteConnAllowed.x64=EB4A4 +bMultimonAllowed.x64 =EB4A8 +ulMaxDebugSessions.x64=EB4AC +bFUSEnabled.x64 =EB4B0 + +[10.0.16232.1000-SLInit] +bInitialized.x86 =C5F78 +bServerSku.x86 =C5F7C +lMaxUserSessions.x86 =C5F80 +bAppServerAllowed.x86 =C5F84 +bRemoteConnAllowed.x86=C5F88 +bMultimonAllowed.x86 =C5F8C +ulMaxDebugSessions.x86=C5F90 +bFUSEnabled.x86 =C5F94 + +bServerSku.x64 =EA3E8 +lMaxUserSessions.x64 =EA3EC +bAppServerAllowed.x64 =EA3F0 +bInitialized.x64 =EB4A0 +bRemoteConnAllowed.x64=EB4A4 +bMultimonAllowed.x64 =EB4A8 +ulMaxDebugSessions.x64=EB4AC +bFUSEnabled.x64 =EB4B0 + +[10.0.16237.1001-SLInit] +bInitialized.x86 =C5F78 +bServerSku.x86 =C5F7C +lMaxUserSessions.x86 =C5F80 +bAppServerAllowed.x86 =C5F84 +bRemoteConnAllowed.x86=C5F88 +bMultimonAllowed.x86 =C5F8C +ulMaxDebugSessions.x86=C5F90 +bFUSEnabled.x86 =C5F94 + +bServerSku.x64 =EB3EC +lMaxUserSessions.x64 =EB3F0 +bAppServerAllowed.x64 =EB3F4 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16241.1001-SLInit] +bInitialized.x86 =C5F78 +bServerSku.x86 =C5F7C +lMaxUserSessions.x86 =C5F80 +bAppServerAllowed.x86 =C5F84 +bRemoteConnAllowed.x86=C5F88 +bMultimonAllowed.x86 =C5F8C +ulMaxDebugSessions.x86=C5F90 +bFUSEnabled.x86 =C5F94 + +bServerSku.x64 =EB3EC +lMaxUserSessions.x64 =EB3F0 +bAppServerAllowed.x64 =EB3F4 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16251.0-SLInit] +bInitialized.x86 =C9F78 +bServerSku.x86 =C9F7C +lMaxUserSessions.x86 =C9F80 +bAppServerAllowed.x86 =C9F84 +bRemoteConnAllowed.x86=C9F88 +bMultimonAllowed.x86 =C9F8C +ulMaxDebugSessions.x86=C9F90 +bFUSEnabled.x86 =C9F94 + +bServerSku.x64 =EB3EC +lMaxUserSessions.x64 =EB3F0 +bAppServerAllowed.x64 =EB3F4 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16251.1000-SLInit] +bInitialized.x86 =C9F78 +bServerSku.x86 =C9F7C +lMaxUserSessions.x86 =C9F80 +bAppServerAllowed.x86 =C9F84 +bRemoteConnAllowed.x86=C9F88 +bMultimonAllowed.x86 =C9F8C +ulMaxDebugSessions.x86=C9F90 +bFUSEnabled.x86 =C9F94 + +bServerSku.x64 =EB3EC +lMaxUserSessions.x64 =EB3F0 +bAppServerAllowed.x64 =EB3F4 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16257.1-SLInit] +bInitialized.x86 =C9F7C +bServerSku.x86 =C9F80 +lMaxUserSessions.x86 =C9F84 +bAppServerAllowed.x86 =C9F88 +bRemoteConnAllowed.x86=C9F8C +bMultimonAllowed.x86 =C9F90 +ulMaxDebugSessions.x86=C9F94 +bFUSEnabled.x86 =C9F98 + +bServerSku.x64 =EB3F0 +lMaxUserSessions.x64 =EB3F4 +bAppServerAllowed.x64 =EB3F8 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16257.1000-SLInit] +bInitialized.x86 =C9F7C +bServerSku.x86 =C9F80 +lMaxUserSessions.x86 =C9F84 +bAppServerAllowed.x86 =C9F88 +bRemoteConnAllowed.x86=C9F8C +bMultimonAllowed.x86 =C9F90 +ulMaxDebugSessions.x86=C9F94 +bFUSEnabled.x86 =C9F98 + +bServerSku.x64 =EB3F0 +lMaxUserSessions.x64 =EB3F4 +bAppServerAllowed.x64 =EB3F8 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16273.1000-SLInit] +bInitialized.x86 =C9F7C +bServerSku.x86 =C9F80 +lMaxUserSessions.x86 =C9F84 +bAppServerAllowed.x86 =C9F88 +bRemoteConnAllowed.x86=C9F8C +bMultimonAllowed.x86 =C9F90 +ulMaxDebugSessions.x86=C9F94 +bFUSEnabled.x86 =C9F98 + +bServerSku.x64 =EB3F0 +lMaxUserSessions.x64 =EB3F4 +bAppServerAllowed.x64 =EB3F8 +bInitialized.x64 =EC4A0 +bRemoteConnAllowed.x64=EC4A4 +bMultimonAllowed.x64 =EC4A8 +ulMaxDebugSessions.x64=EC4AC +bFUSEnabled.x64 =EC4B0 + +[10.0.16275.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16278.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16281.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16288.1-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16291.0-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16294.1-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16296.0-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16299.0-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16299.15-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16353.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.16362.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.17004.1000-SLInit] +bInitialized.x86 =C6F7C +bServerSku.x86 =C6F80 +lMaxUserSessions.x86 =C6F84 +bAppServerAllowed.x86 =C6F88 +bRemoteConnAllowed.x86=C6F8C +bMultimonAllowed.x86 =C6F90 +ulMaxDebugSessions.x86=C6F94 +bFUSEnabled.x86 =C6F98 + +bServerSku.x64 =ED3E8 +lMaxUserSessions.x64 =ED3EC +bAppServerAllowed.x64 =ED3F0 +bInitialized.x64 =EE4A0 +bRemoteConnAllowed.x64=EE4A4 +bMultimonAllowed.x64 =EE4A8 +ulMaxDebugSessions.x64=EE4AC +bFUSEnabled.x64 =EE4B0 + +[10.0.17017.1000-SLInit] +bInitialized.x86 =C9EB8 +bServerSku.x86 =C9EBC +lMaxUserSessions.x86 =C9EC0 +bAppServerAllowed.x86 =C9EC4 +bRemoteConnAllowed.x86=C9EC8 +bMultimonAllowed.x86 =C9ECC +ulMaxDebugSessions.x86=C9ED0 +bFUSEnabled.x86 =C9ED4 + +bServerSku.x64 =EC2E8 +lMaxUserSessions.x64 =EC2EC +bAppServerAllowed.x64 =EC2F0 +bInitialized.x64 =ED3A0 +bRemoteConnAllowed.x64=ED3A4 +bMultimonAllowed.x64 =ED3A8 +ulMaxDebugSessions.x64=ED3AC +bFUSEnabled.x64 =ED3B0 + +[10.0.17025.1000-SLInit] +bInitialized.x86 =C9EB8 +bServerSku.x86 =C9EBC +lMaxUserSessions.x86 =C9EC0 +bAppServerAllowed.x86 =C9EC4 +bRemoteConnAllowed.x86=C9EC8 +bMultimonAllowed.x86 =C9ECC +ulMaxDebugSessions.x86=C9ED0 +bFUSEnabled.x86 =C9ED4 + +bServerSku.x64 =EC2E8 +lMaxUserSessions.x64 =EC2EC +bAppServerAllowed.x64 =EC2F0 +bInitialized.x64 =ED3A0 +bRemoteConnAllowed.x64=ED3A4 +bMultimonAllowed.x64 =ED3A8 +ulMaxDebugSessions.x64=ED3AC +bFUSEnabled.x64 =ED3B0 + +[10.0.17035.1000-SLInit] +bInitialized.x86 =C9ED8 +bServerSku.x86 =C9EDC +lMaxUserSessions.x86 =C9EE0 +bAppServerAllowed.x86 =C9EE4 +bRemoteConnAllowed.x86=C9EE8 +bMultimonAllowed.x86 =C9EEC +ulMaxDebugSessions.x86=C9EF0 +bFUSEnabled.x86 =C9EF4 + +bServerSku.x64 =EC2E8 +lMaxUserSessions.x64 =EC2EC +bAppServerAllowed.x64 =EC2F0 +bInitialized.x64 =ED3A0 +bRemoteConnAllowed.x64=ED3A4 +bMultimonAllowed.x64 =ED3A8 +ulMaxDebugSessions.x64=ED3AC +bFUSEnabled.x64 =ED3B0 + +[10.0.17046.1000-SLInit] +bInitialized.x86 =C9ED8 +bServerSku.x86 =C9EDC +lMaxUserSessions.x86 =C9EE0 +bAppServerAllowed.x86 =C9EE4 +bRemoteConnAllowed.x86=C9EE8 +bMultimonAllowed.x86 =C9EEC +ulMaxDebugSessions.x86=C9EF0 +bFUSEnabled.x86 =C9EF4 + +bServerSku.x64 =EC2E8 +lMaxUserSessions.x64 =EC2EC +bAppServerAllowed.x64 =EC2F0 +bInitialized.x64 =ED3A0 +bRemoteConnAllowed.x64=ED3A4 +bMultimonAllowed.x64 =ED3A8 +ulMaxDebugSessions.x64=ED3AC +bFUSEnabled.x64 =ED3B0 + +[10.0.17063.1000-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17115.1-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17128.1-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17133.1-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17134.1-SLInit] +bInitialized.x86 =CBF38 +bServerSku.x86 =CBF3C +lMaxUserSessions.x86 =CBF40 +bAppServerAllowed.x86 =CBF44 +bRemoteConnAllowed.x86=CBF48 +bMultimonAllowed.x86 =CBF4C +ulMaxDebugSessions.x86=CBF50 +bFUSEnabled.x86 =CBF54 + +bServerSku.x64 =F1378 +lMaxUserSessions.x64 =F137C +bAppServerAllowed.x64 =F1380 +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 + +[10.0.17723.1000-SLInit] +bInitialized.x64 =E9AB0 +bServerSku.x64 =E9AB4 +lMaxUserSessions.x64 =E9AB8 +bAppServerAllowed.x64 =E9AC0 +bRemoteConnAllowed.x64=E9AC4 +bMultimonAllowed.x64 =E9AC8 +ulMaxDebugSessions.x64=E9ACC +bFUSEnabled.x64 =E9AD0 + +[10.0.17763.1-SLInit] +bInitialized.x86 =CD798 +bServerSku.x86 =CD79C +lMaxUserSessions.x86 =CD7A0 +bAppServerAllowed.x86 =CD7A8 +bRemoteConnAllowed.x86=CD7AC +bMultimonAllowed.x86 =CD7B0 +ulMaxDebugSessions.x86=CD7B4 +bFUSEnabled.x86 =CD7B8 + +bInitialized.x64 =ECAB0 +bServerSku.x64 =ECAB4 +lMaxUserSessions.x64 =ECAB8 +bAppServerAllowed.x64 =ECAC0 +bRemoteConnAllowed.x64=ECAC4 +bMultimonAllowed.x64 =ECAC8 +ulMaxDebugSessions.x64=ECACC +bFUSEnabled.x64 =ECAD0 diff --git a/src-installer/RDPWInst.dpr b/src-installer/RDPWInst.dpr index 6f934f5..6c95f3f 100644 --- a/src-installer/RDPWInst.dpr +++ b/src-installer/RDPWInst.dpr @@ -1,5 +1,5 @@ { - Copyright 2014 Stas'M Corp. + Copyright 2018 Stas'M Corp. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -25,7 +25,10 @@ uses Windows, Classes, WinSvc, - Registry; + Registry, + WinInet, + AccCtrl, + AclAPI; function EnumServicesStatusEx( hSCManager: SC_HANDLE; @@ -40,6 +43,11 @@ function EnumServicesStatusEx( pszGroupName: PWideChar): BOOL; stdcall; external advapi32 name 'EnumServicesStatusExW'; +function ConvertStringSidToSid( + StringSid: PWideChar; + var Sid: PSID): BOOL; stdcall; + external advapi32 name 'ConvertStringSidToSidW'; + type FILE_VERSION = record Version: record case Boolean of @@ -75,6 +83,7 @@ const TermService = 'TermService'; var Installed: Boolean; + Online: Boolean; WrapPath: String; Arch: Byte; OldWow64RedirectionValue: LongBool; @@ -159,7 +168,8 @@ begin end; TermServiceHost := Reg.ReadString('ImagePath'); Reg.CloseKey; - if Pos('svchost.exe', LowerCase(TermServiceHost)) = 0 then + if (Pos('svchost.exe', LowerCase(TermServiceHost)) = 0) + and (Pos('svchost -k', LowerCase(TermServiceHost)) = 0) then begin Reg.Free; Writeln('[-] TermService is hosted in a custom application (BeTwin, etc.) - unsupported.'); @@ -282,32 +292,45 @@ var hSvc: THandle; Code: DWORD; pch: PWideChar; + procedure ExitError(Func: String; ErrorCode: DWORD); + begin + if hSC > 0 then + CloseServiceHandle(hSC); + if hSvc > 0 then + CloseServiceHandle(hSvc); + Writeln('[-] ', Func, ' error (code ', ErrorCode, ').'); + end; begin + hSC := 0; + hSvc := 0; Writeln('[*] Starting ', SvcName, '...'); hSC := OpenSCManager(nil, SERVICES_ACTIVE_DATABASE, SC_MANAGER_CONNECT); if hSC = 0 then begin - Code := GetLastError; - Writeln('[-] OpenSCManager error (code ', Code, ').'); + ExitError('OpenSCManager', GetLastError); Exit; end; hSvc := OpenService(hSC, PWideChar(SvcName), SERVICE_START); if hSvc = 0 then begin - CloseServiceHandle(hSC); - Code := GetLastError; - Writeln('[-] OpenService error (code ', Code, ').'); + ExitError('OpenService', GetLastError); Exit; end; pch := nil; if not StartService(hSvc, 0, pch) then begin - CloseServiceHandle(hSvc); - CloseServiceHandle(hSC); Code := GetLastError; - Writeln('[-] StartService error (code ', Code, ').'); - Exit; + if Code = 1056 then begin // Service already started + Sleep(2000); // or SCM hasn't registered killed process + if not StartService(hSvc, 0, pch) then begin + ExitError('StartService', Code); + Exit; + end; + end else begin + ExitError('StartService', Code); + Exit; + end; end; CloseServiceHandle(hSvc); CloseServiceHandle(hSC); @@ -334,6 +357,8 @@ begin Halt(Code); end; + dwResumeHandle := 0; + SetLength(Svc, 1489); FillChar(Svc[0], sizeof(Svc[0])*Length(Svc), 0); if not EnumServicesStatusEx(hSC, SC_ENUM_PROCESS_INFO, SERVICE_WIN32, SERVICE_STATE_ALL, @@ -590,29 +615,153 @@ begin Str.Free; end; +function GitINIFile(var Content: String): Boolean; +const + URL = 'https://raw.githubusercontent.com/stascorp/rdpwrap/master/res/rdpwrap.ini'; +var + NetHandle: HINTERNET; + UrlHandle: HINTERNET; + Str: String; + Buf: Array[0..1023] of Byte; + BytesRead: DWORD; +begin + Result := False; + Content := ''; + NetHandle := InternetOpen('RDP Wrapper Update', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0); + if not Assigned(NetHandle) then + Exit; + UrlHandle := InternetOpenUrl(NetHandle, PChar(URL), nil, 0, INTERNET_FLAG_RELOAD, 0); + if not Assigned(UrlHandle) then + begin + InternetCloseHandle(NetHandle); + Exit; + end; + repeat + InternetReadFile(UrlHandle, @Buf[0], SizeOf(Buf), BytesRead); + SetString(Str, PAnsiChar(@Buf[0]), BytesRead); + Content := Content + Str; + until BytesRead = 0; + InternetCloseHandle(UrlHandle); + InternetCloseHandle(NetHandle); + Result := True; +end; + +procedure GrantSidFullAccess(Path, SID: String); +var + p_SID: PSID; + pDACL: PACL; + EA: EXPLICIT_ACCESS; + Code, Result: DWORD; +begin + p_SID := nil; + if not ConvertStringSidToSid(PChar(SID), p_SID) then + begin + Code := GetLastError; + Writeln('[-] ConvertStringSidToSid error (code ', Code, ').'); + Exit; + end; + EA.grfAccessPermissions := GENERIC_ALL; + EA.grfAccessMode := GRANT_ACCESS; + EA.grfInheritance := SUB_CONTAINERS_AND_OBJECTS_INHERIT; + EA.Trustee.pMultipleTrustee := nil; + EA.Trustee.MultipleTrusteeOperation := NO_MULTIPLE_TRUSTEE; + EA.Trustee.TrusteeForm := TRUSTEE_IS_SID; + EA.Trustee.TrusteeType := TRUSTEE_IS_WELL_KNOWN_GROUP; + EA.Trustee.ptstrName := p_SID; + + Result := SetEntriesInAcl(1, @EA, nil, pDACL); + if Result = ERROR_SUCCESS then + begin + if SetNamedSecurityInfo(pchar(Path), SE_FILE_OBJECT, DACL_SECURITY_INFORMATION, nil, nil, pDACL, nil) <> ERROR_SUCCESS then + begin + Code := GetLastError; + Writeln('[-] SetNamedSecurityInfo error (code ', Code, ').'); + end; + LocalFree(Cardinal(pDACL)); + end + else begin + Code := GetLastError; + Writeln('[-] SetEntriesInAcl error (code ', Code, ').'); + end; +end; + procedure ExtractFiles; +var + RDPClipRes, RfxvmtRes, S: String; + OnlineINI: TStringList; begin if not DirectoryExists(ExtractFilePath(ExpandPath(WrapPath))) then - if ForceDirectories(ExtractFilePath(ExpandPath(WrapPath))) then - Writeln('[+] Folder created: ', ExtractFilePath(ExpandPath(WrapPath))) + if ForceDirectories(ExtractFilePath(ExpandPath(WrapPath))) then begin + S := ExtractFilePath(ExpandPath(WrapPath)); + Writeln('[+] Folder created: ', S); + GrantSidFullAccess(S, 'S-1-5-18'); // Local System account + GrantSidFullAccess(S, 'S-1-5-6'); // Service group + end else begin Writeln('[-] ForceDirectories error.'); Writeln('[*] Path: ', ExtractFilePath(ExpandPath(WrapPath))); Halt(0); end; - ExtractRes('config', ExtractFilePath(ExpandPath(WrapPath)) + 'rdpwrap.ini'); + if Online then + begin + Writeln('[*] Downloading latest INI file...'); + OnlineINI := TStringList.Create; + if GitINIFile(S) then begin + OnlineINI.Text := S; + S := ExtractFilePath(ExpandPath(WrapPath)) + 'rdpwrap.ini'; + OnlineINI.SaveToFile(S); + Writeln('[+] Latest INI file -> ', S); + end + else + begin + Writeln('[-] Failed to get online INI file, using built-in.'); + Online := False; + end; + OnlineINI.Free; + end; + if not Online then + begin + S := ExtractFilePath(ParamStr(0)) + 'rdpwrap.ini'; + if FileExists(S) then + begin + OnlineINI := TStringList.Create; + OnlineINI.LoadFromFile(S); + S := ExtractFilePath(ExpandPath(WrapPath)) + 'rdpwrap.ini'; + OnlineINI.SaveToFile(S); + Writeln('[+] Current INI file -> ', S); + OnlineINI.Free; + end else + ExtractRes('config', ExtractFilePath(ExpandPath(WrapPath)) + 'rdpwrap.ini'); + end; + + RDPClipRes := ''; + RfxvmtRes := ''; case Arch of 32: begin ExtractRes('rdpw32', ExpandPath(WrapPath)); - if not FileExists(ExpandPath('%SystemRoot%\System32\rdpclip.exe')) then - ExtractRes('rdpclip32', ExpandPath('%SystemRoot%\System32\rdpclip.exe')); + if (FV.Version.w.Major = 6) and (FV.Version.w.Minor = 0) then + RDPClipRes := 'rdpclip6032'; + if (FV.Version.w.Major = 6) and (FV.Version.w.Minor = 1) then + RDPClipRes := 'rdpclip6132'; + if (FV.Version.w.Major = 10) and (FV.Version.w.Minor = 0) then + RfxvmtRes := 'rfxvmt32'; end; 64: begin ExtractRes('rdpw64', ExpandPath(WrapPath)); - if not FileExists(ExpandPath('%SystemRoot%\System32\rdpclip.exe')) then - ExtractRes('rdpclip64', ExpandPath('%SystemRoot%\System32\rdpclip.exe')); + if (FV.Version.w.Major = 6) and (FV.Version.w.Minor = 0) then + RDPClipRes := 'rdpclip6064'; + if (FV.Version.w.Major = 6) and (FV.Version.w.Minor = 1) then + RDPClipRes := 'rdpclip6164'; + if (FV.Version.w.Major = 10) and (FV.Version.w.Minor = 0) then + RfxvmtRes := 'rfxvmt64'; end; end; + if RDPClipRes <> '' then + if not FileExists(ExpandPath('%SystemRoot%\System32\rdpclip.exe')) then + ExtractRes(RDPClipRes, ExpandPath('%SystemRoot%\System32\rdpclip.exe')); + if RfxvmtRes <> '' then + if not FileExists(ExpandPath('%SystemRoot%\System32\rfxvmt.dll')) then + ExtractRes(RfxvmtRes, ExpandPath('%SystemRoot%\System32\rfxvmt.dll')); end; procedure DeleteFiles; @@ -698,6 +847,12 @@ procedure CheckTermsrvVersion; var SuppLvl: Byte; VerTxt: String; + + procedure UpdateMsg; + begin + Writeln('Try running "update.bat" or "RDPWInst -w" to download latest INI file.'); + Writeln('If it doesn''t help, send your termsrv.dll to project developer for support.'); + end; begin GetFileVersion(ExpandPath(TermServicePath), FV); VerTxt := Format('%d.%d.%d.%d', @@ -739,12 +894,12 @@ begin case SuppLvl of 0: begin Writeln('[-] This version of Terminal Services is not supported.'); - Writeln('Send your termsrv.dll to project developer for support.'); + UpdateMsg; end; 1: begin Writeln('[!] This version of Terminal Services is supported partially.'); Writeln('It means you may have some limitations such as only 2 concurrent sessions.'); - Writeln('Send your termsrv.dll to project developer for adding full support.'); + UpdateMsg; end; 2: begin Writeln('[+] This version of Terminal Services is fully supported.'); @@ -873,34 +1028,131 @@ end; procedure TSConfigFirewall(Enable: Boolean); begin if Enable then - ExecWait('netsh advfirewall firewall add rule name="Remote Desktop" dir=in protocol=tcp localport=3389 profile=any action=allow') - else + begin + ExecWait('netsh advfirewall firewall add rule name="Remote Desktop" dir=in protocol=tcp localport=3389 profile=any action=allow'); + ExecWait('netsh advfirewall firewall add rule name="Remote Desktop" dir=in protocol=udp localport=3389 profile=any action=allow'); + end else ExecWait('netsh advfirewall firewall delete rule name="Remote Desktop"'); end; +function CheckINIDate(Filename, Content: String; var Date: Integer): Boolean; +var + Str: TStringList; + I: Integer; +begin + Result := False; + Str := TStringList.Create; + if Filename <> '' then begin + try + Str.LoadFromFile(Filename); + except + Writeln('[-] Failed to read INI file.'); + Exit; + end; + end else + Str.Text := Content; + for I := 0 to Str.Count - 1 do + if Pos('Updated=', Str[I]) = 1 then + Break; + if I >= Str.Count then begin + Writeln('[-] Failed to check INI date.'); + Exit; + end; + Content := StringReplace(Str[I], 'Updated=', '', []); + Content := StringReplace(Content, '-', '', [rfReplaceAll]); + Str.Free; + try + Date := StrToInt(Content); + except + Writeln('[-] Wrong INI date format.'); + Exit; + end; + Result := True; +end; + +procedure CheckUpdate; +var + INIPath, S: String; + Str: TStringList; + I, OldDate, NewDate: Integer; +begin + INIPath := ExtractFilePath(ExpandPath(TermServicePath)) + 'rdpwrap.ini'; + if not CheckINIDate(INIPath, '', OldDate) then + Halt(ERROR_ACCESS_DENIED); + Writeln('[*] Current update date: ', + Format('%d.%.2d.%.2d', [OldDate div 10000, OldDate div 100 mod 100, OldDate mod 100])); + + if not GitINIFile(S) then begin + Writeln('[-] Failed to download latest INI from GitHub.'); + Halt(ERROR_ACCESS_DENIED); + end; + if not CheckINIDate('', S, NewDate) then + Halt(ERROR_ACCESS_DENIED); + Writeln('[*] Latest update date: ', + Format('%d.%.2d.%.2d', [NewDate div 10000, NewDate div 100 mod 100, NewDate mod 100])); + + if NewDate = OldDate then + Writeln('[*] Everything is up to date.') + else + if NewDate > OldDate then begin + Writeln('[+] New update is available, updating...'); + + CheckTermsrvProcess; + + Writeln('[*] Terminating service...'); + AddPrivilege('SeDebugPrivilege'); + KillProcess(TermServicePID); + Sleep(1000); + + if Length(ShareSvc) > 0 then + for I := 0 to Length(ShareSvc) - 1 do + SvcStart(ShareSvc[I]); + Sleep(500); + + Str := TStringList.Create; + Str.Text := S; + try + Str.SaveToFile(INIPath); + except + Writeln('[-] Failed to write INI file.'); + Halt(ERROR_ACCESS_DENIED); + end; + Str.Free; + + SvcStart(TermService); + + Writeln('[+] Update completed.'); + end else + Writeln('[*] Your INI file is newer than public file. Are you a developer? :)'); +end; + var I: Integer; begin - Writeln('RDP Wrapper Library v1.5'); - Writeln('Installer v2.2'); - Writeln('Copyright (C) Stas''M Corp. 2014'); + Writeln('RDP Wrapper Library v1.6.2'); + Writeln('Installer v2.6'); + Writeln('Copyright (C) Stas''M Corp. 2018'); Writeln(''); if (ParamCount < 1) or ( (ParamStr(1) <> '-l') and (ParamStr(1) <> '-i') + and (ParamStr(1) <> '-w') and (ParamStr(1) <> '-u') and (ParamStr(1) <> '-r') ) then begin Writeln('USAGE:'); - Writeln('RDPWInst.exe [-l|-i[-s]|-u|-r]'); + Writeln('RDPWInst.exe [-l|-i[-s][-o]|-w|-u[-k]|-r]'); Writeln(''); Writeln('-l display the license agreement'); Writeln('-i install wrapper to Program Files folder (default)'); Writeln('-i -s install wrapper to System32 folder'); + Writeln('-i -o online install mode (loads latest INI file)'); + Writeln('-w get latest update for INI file'); Writeln('-u uninstall wrapper'); + Writeln('-u -k uninstall wrapper and keep settings'); Writeln('-r force restart Terminal Services'); Exit; end; @@ -911,6 +1163,13 @@ begin Exit; end; + if not CheckWin32Version(6,0) then + begin + Writeln('[-] Unsupported Windows version:'); + Writeln(' only >= 6.0 (Vista, Server 2008 and newer) are supported.'); + Exit; + end; + if not SupportedArchitecture then begin Writeln('[-] Unsupported processor architecture.'); @@ -946,6 +1205,7 @@ begin CheckTermsrvProcess; Writeln('[*] Extracting files...'); + Online := (ParamStr(2) = '-o') or (ParamStr(3) = '-o'); ExtractFiles; Writeln('[*] Configuring service library...'); @@ -1008,16 +1268,31 @@ begin SvcStart(TermService); Sleep(500); - Writeln('[*] Configuring registry...'); - TSConfigRegistry(False); - Writeln('[*] Configuring firewall...'); - TSConfigFirewall(False); + if ParamStr(2) <> '-k' then + begin + Writeln('[*] Configuring registry...'); + TSConfigRegistry(False); + Writeln('[*] Configuring firewall...'); + TSConfigFirewall(False); + end; if Arch = 64 then RevertWowRedirection; Writeln('[+] Successfully uninstalled.'); end; + + if ParamStr(1) = '-w' then + begin + if not Installed then + begin + Writeln('[*] RDP Wrapper Library is not installed.'); + Halt(ERROR_INVALID_FUNCTION); + end; + Writeln('[*] Checking for updates...'); + CheckUpdate; + end; + if ParamStr(1) = '-r' then begin Writeln('[*] Restarting...'); diff --git a/src-installer/RDPWInst.dproj b/src-installer/RDPWInst.dproj index 78b7b03..6afda06 100644 --- a/src-installer/RDPWInst.dproj +++ b/src-installer/RDPWInst.dproj @@ -20,8 +20,9 @@ true + ..\bin\ WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;$(DCC_UnitAlias) - RDPWInst.exe + ..\bin\RDPWInst.exe 00400000 x86 @@ -41,14 +42,14 @@ Base - - Cfg_2 - Base - Cfg_1 Base + + Cfg_2 + Base + @@ -60,7 +61,7 @@ False True False - -i + -w False diff --git a/src-installer/resource.res b/src-installer/resource.res index 8bcc9dd..0e896e1 100644 Binary files a/src-installer/resource.res and b/src-installer/resource.res differ diff --git a/src-rdpcheck/MainUnit.pas b/src-rdpcheck/MainUnit.pas index 1f0e201..3c4655f 100644 --- a/src-rdpcheck/MainUnit.pas +++ b/src-rdpcheck/MainUnit.pas @@ -1,5 +1,5 @@ { - Copyright 2014 Stas'M Corp. + Copyright 2015 Stas'M Corp. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -44,13 +44,12 @@ implementation procedure TFrm.FormCreate(Sender: TObject); var Reg: TRegistry; - Port: Integer; begin RDP.DisconnectedText := 'Disconnected.'; RDP.ConnectingText := 'Connecting...'; RDP.ConnectedStatusText := 'Connected.'; RDP.UserName := ''; - RDP.Server := '127.0.0.1'; + RDP.Server := '127.0.0.2'; Reg := TRegistry.Create; Reg.RootKey := HKEY_LOCAL_MACHINE; @@ -132,8 +131,8 @@ begin $1707: ErrStr := 'Delegation of credentials to the target server is not allowed unless mutual authentication has been achieved.'; $2207: ErrStr := 'The smart card is blocked.'; $1C07: ErrStr := 'An incorrect PIN was presented to the smart card.'; - $B09: ErrStr := 'Network Level Authentication is required.'; - $708: ErrStr := 'The RDP seems to work, but your client doesn''t support loopback connections. Try to connect to your PC from another device in the network.'; + $B09: ErrStr := 'Network Level Authentication is required, run RDPCheck as administrator.'; + $708: ErrStr := 'RDP is working, but the client doesn''t allow loopback connections. Try to connect to your PC from another device in the network.'; else ErrStr := 'Unknown code 0x'+IntToHex(discReason, 1); end; if (discReason > 2) then diff --git a/src-rdpcheck/RDPCheck.dproj b/src-rdpcheck/RDPCheck.dproj index d88a8c6..c5027ce 100644 --- a/src-rdpcheck/RDPCheck.dproj +++ b/src-rdpcheck/RDPCheck.dproj @@ -20,8 +20,9 @@ true + ..\bin\ WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;$(DCC_UnitAlias) - RDPCheck.exe + ..\bin\RDPCheck.exe 00400000 x86 @@ -44,14 +45,14 @@ Base - - Cfg_2 - Base - Cfg_1 Base + + Cfg_2 + Base + @@ -68,7 +69,7 @@ True False 2 - 1 + 2 0 0 False @@ -82,13 +83,13 @@ Stas'M Corp. Local RDP Checker - 2.1.0.0 + 2.2.0.0 RDPCheck - Copyright © Stas'M Corp. 2014 + Copyright © Stas'M Corp. 2015 Stas'M Corp. RDPCheck.exe RDP Host Support - 1.3.0.0 + 1.6.0.0 http://stascorp.com diff --git a/src-rdpcheck/RDPCheck.res b/src-rdpcheck/RDPCheck.res index 9ff016e..724bf2e 100644 Binary files a/src-rdpcheck/RDPCheck.res and b/src-rdpcheck/RDPCheck.res differ diff --git a/src-rdpconfig/MainUnit.dfm b/src-rdpconfig/MainUnit.dfm index 49a9004..c077af1 100644 --- a/src-rdpconfig/MainUnit.dfm +++ b/src-rdpconfig/MainUnit.dfm @@ -3,8 +3,8 @@ object MainForm: TMainForm Top = 0 BorderStyle = bsDialog Caption = 'RDP Wrapper Configuration' - ClientHeight = 326 - ClientWidth = 351 + ClientHeight = 314 + ClientWidth = 404 Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText @@ -18,114 +18,80 @@ object MainForm: TMainForm OnDestroy = FormDestroy PixelsPerInch = 96 TextHeight = 13 - object lRDPPort: TLabel - Left = 225 - Top = 103 - Width = 47 - Height = 13 - Caption = 'RDP Port:' - end object bOK: TButton - Left = 10 - Top = 293 + Left = 40 + Top = 281 Width = 75 Height = 25 Caption = 'OK' ModalResult = 1 - TabOrder = 0 + TabOrder = 4 OnClick = bOKClick end object bCancel: TButton - Left = 91 - Top = 293 + Left = 121 + Top = 281 Width = 75 Height = 25 Caption = 'Cancel' ModalResult = 2 - TabOrder = 1 + TabOrder = 5 OnClick = bCancelClick end object bApply: TButton - Left = 172 - Top = 293 + Left = 202 + Top = 281 Width = 75 Height = 25 Caption = 'Apply' Enabled = False - TabOrder = 2 + TabOrder = 6 OnClick = bApplyClick end - object cbSingleSessionPerUser: TCheckBox - Left = 8 - Top = 112 - Width = 130 - Height = 17 - Caption = 'Single Session Per User' - TabOrder = 3 - OnClick = cbAllowTSConnectionsClick - end object rgNLA: TRadioGroup - Left = 8 - Top = 135 - Width = 335 - Height = 73 - Caption = 'Security Mode' - Items.Strings = ( - 'Disable Security (not recommended)' - 'Default Authentication (compatibility with older clients)' - 'Network Level Authentication (best)') - TabOrder = 4 - OnClick = cbAllowTSConnectionsClick - end - object cbAllowTSConnections: TCheckBox - Left = 8 + Left = 202 Top = 89 - Width = 174 - Height = 17 - Caption = 'Enable Remote Desktop Protocol' - TabOrder = 5 + Width = 194 + Height = 73 + Caption = 'Authentication Mode' + Items.Strings = ( + 'GUI Authentication Only' + 'Default RDP Authentication' + 'Network Level Authentication') + TabOrder = 2 OnClick = cbAllowTSConnectionsClick end object rgShadow: TRadioGroup - Left = 8 - Top = 214 - Width = 335 - Height = 73 + Left = 202 + Top = 168 + Width = 194 + Height = 105 Caption = 'Session Shadowing Mode' Items.Strings = ( 'Disable Shadowing' - 'Shadowing will request user'#39's permission' - 'Shadow sessions immediately') - TabOrder = 6 + 'Full access with user'#39's permission' + 'Full access without permission' + 'View only with user'#39's permission' + 'View only without permission') + TabOrder = 3 OnClick = cbAllowTSConnectionsClick end - object seRDPPort: TSpinEdit - Left = 278 - Top = 100 - Width = 62 - Height = 22 - MaxValue = 65535 - MinValue = 0 - TabOrder = 7 - Value = 0 - OnChange = seRDPPortChange - end object bLicense: TButton - Left = 253 - Top = 293 + Left = 283 + Top = 281 Width = 87 Height = 25 Caption = 'View license...' - TabOrder = 8 + TabOrder = 7 OnClick = bLicenseClick end object gbDiag: TGroupBox Left = 8 Top = 6 - Width = 335 + Width = 388 Height = 77 Caption = 'Diagnostics' - TabOrder = 9 + TabOrder = 0 object lListener: TLabel Left = 11 Top = 55 @@ -155,7 +121,7 @@ object MainForm: TMainForm Caption = 'Unknown' end object lsTSVer: TLabel - Left = 206 + Left = 226 Top = 36 Width = 44 Height = 13 @@ -169,14 +135,14 @@ object MainForm: TMainForm Caption = 'Unknown' end object lsWrapVer: TLabel - Left = 206 + Left = 226 Top = 17 Width = 44 Height = 13 Caption = 'Unknown' end object lTSVer: TLabel - Left = 182 + Left = 202 Top = 36 Width = 20 Height = 13 @@ -190,24 +156,86 @@ object MainForm: TMainForm Caption = 'Wrapper state:' end object lWrapVer: TLabel - Left = 182 + Left = 202 Top = 17 Width = 20 Height = 13 Caption = 'ver.' end object lsSuppVer: TLabel - Left = 182 + Left = 202 Top = 55 Width = 70 Height = 13 Caption = '[support level]' end end + object gbGeneral: TGroupBox + Left = 8 + Top = 89 + Width = 188 + Height = 184 + Caption = 'General Settings' + TabOrder = 1 + object lRDPPort: TLabel + Left = 8 + Top = 44 + Width = 47 + Height = 13 + Caption = 'RDP port:' + end + object cbAllowTSConnections: TCheckBox + Left = 8 + Top = 18 + Width = 132 + Height = 17 + Caption = 'Enable Remote Desktop' + TabOrder = 0 + OnClick = cbAllowTSConnectionsClick + end + object cbSingleSessionPerUser: TCheckBox + Left = 8 + Top = 69 + Width = 129 + Height = 17 + Caption = 'Single session per user' + TabOrder = 2 + OnClick = cbAllowTSConnectionsClick + end + object cbHideUsers: TCheckBox + Left = 8 + Top = 92 + Width = 149 + Height = 17 + Caption = 'Hide users on logon screen' + TabOrder = 3 + OnClick = cbAllowTSConnectionsClick + end + object seRDPPort: TSpinEdit + Left = 61 + Top = 41 + Width = 62 + Height = 22 + MaxValue = 65535 + MinValue = 0 + TabOrder = 1 + Value = 0 + OnChange = seRDPPortChange + end + object cbCustomPrg: TCheckBox + Left = 8 + Top = 115 + Width = 169 + Height = 17 + Caption = 'Allow to start custom programs' + TabOrder = 4 + OnClick = cbAllowTSConnectionsClick + end + end object Timer: TTimer Interval = 250 OnTimer = TimerTimer - Left = 280 - Top = 19 + Left = 352 + Top = 27 end end diff --git a/src-rdpconfig/MainUnit.pas b/src-rdpconfig/MainUnit.pas index 8feeccf..48aa051 100644 --- a/src-rdpconfig/MainUnit.pas +++ b/src-rdpconfig/MainUnit.pas @@ -1,5 +1,5 @@ { - Copyright 2014 Stas'M Corp. + Copyright 2017 Stas'M Corp. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -47,6 +47,9 @@ type bLicense: TButton; gbDiag: TGroupBox; lsSuppVer: TLabel; + cbHideUsers: TCheckBox; + gbGeneral: TGroupBox; + cbCustomPrg: TCheckBox; procedure FormCreate(Sender: TObject); procedure cbAllowTSConnectionsClick(Sender: TObject); procedure seRDPPortChange(Sender: TObject); @@ -61,6 +64,7 @@ type { Private declarations } public { Public declarations } + function ExecWait(Cmdline: String): Boolean; procedure ReadSettings; procedure WriteSettings; end; @@ -89,6 +93,7 @@ var Ready: Boolean = False; Arch: Byte; OldWow64RedirectionValue: LongBool; + OldPort: Word; INI: String; function WinStationEnumerateW(hServer: THandle; @@ -329,6 +334,29 @@ begin Str.Free; end; +function TMainForm.ExecWait(Cmdline: String): Boolean; +var + si: STARTUPINFO; + pi: PROCESS_INFORMATION; +begin + Result := False; + ZeroMemory(@si, sizeof(si)); + si.cb := sizeof(si); + si.dwFlags := STARTF_USESHOWWINDOW; + si.wShowWindow := SW_HIDE; + UniqueString(Cmdline); + if not CreateProcess(nil, PWideChar(Cmdline), nil, nil, True, 0, nil, nil, si, pi) then begin + MessageBox(Handle, + PWideChar('CreateProcess error (code: ' + IntToStr(GetLastError) + ').'), + 'Error', MB_ICONERROR or MB_OK); + Exit; + end; + CloseHandle(pi.hThread); + WaitForSingleObject(pi.hProcess, INFINITE); + CloseHandle(pi.hProcess); + Result := True; +end; + procedure TMainForm.ReadSettings; var Reg: TRegistry; @@ -346,6 +374,11 @@ begin cbSingleSessionPerUser.Checked := Reg.ReadBool('fSingleSessionPerUser'); except + end; + try + cbCustomPrg.Checked := Reg.ReadBool('HonorLegacySettings'); + except + end; Reg.CloseKey; @@ -356,6 +389,7 @@ begin except end; + OldPort := seRDPPort.Value; SecurityLayer := 0; UserAuthentication := 0; try @@ -374,6 +408,13 @@ begin rgShadow.ItemIndex := Reg.ReadInteger('Shadow'); except + end; + Reg.CloseKey; + Reg.OpenKeyReadOnly('\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System'); + try + cbHideUsers.Checked := Reg.ReadBool('dontdisplaylastusername'); + except + end; Reg.CloseKey; Reg.Free; @@ -396,6 +437,11 @@ begin Reg.WriteBool('fSingleSessionPerUser', cbSingleSessionPerUser.Checked); except + end; + try + Reg.WriteBool('HonorLegacySettings', cbCustomPrg.Checked); + except + end; Reg.CloseKey; @@ -404,6 +450,11 @@ begin Reg.WriteInteger('PortNumber', seRDPPort.Value); except + end; + if OldPort <> seRDPPort.Value then + begin + OldPort := seRDPPort.Value; + ExecWait('netsh advfirewall firewall set rule name="Remote Desktop" new localport=' + IntToStr(OldPort)); end; case rgNLA.ItemIndex of 0: begin @@ -437,6 +488,22 @@ begin except end; + end; + Reg.CloseKey; + Reg.OpenKey('\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services', True); + if rgShadow.ItemIndex >= 0 then begin + try + Reg.WriteInteger('Shadow', rgShadow.ItemIndex); + except + + end; + end; + Reg.CloseKey; + Reg.OpenKey('\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System', True); + try + Reg.WriteBool('dontdisplaylastusername', cbHideUsers.Checked); + except + end; Reg.CloseKey; Reg.Free; diff --git a/src-rdpconfig/RDPConf.dproj b/src-rdpconfig/RDPConf.dproj index ffc33d8..aa9ab96 100644 --- a/src-rdpconfig/RDPConf.dproj +++ b/src-rdpconfig/RDPConf.dproj @@ -20,8 +20,9 @@ true + ..\bin\ WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE;$(DCC_UnitAlias) - RDPConf.exe + ..\bin\RDPConf.exe 00400000 x86 @@ -47,14 +48,14 @@ Base - - Cfg_2 - Base - Cfg_1 Base + + Cfg_2 + Base + diff --git a/src-rdpconfig/RDPConf.res b/src-rdpconfig/RDPConf.res index db065ef..f987dd9 100644 Binary files a/src-rdpconfig/RDPConf.res and b/src-rdpconfig/RDPConf.res differ diff --git a/src-rdpconfig/resource.res b/src-rdpconfig/resource.res index f750511..68f82f2 100644 Binary files a/src-rdpconfig/resource.res and b/src-rdpconfig/resource.res differ diff --git a/src-x86-binarymaster/rdpwrap.dpr b/src-x86-binarymaster/rdpwrap.dpr index f7024b2..38b85f6 100644 --- a/src-x86-binarymaster/rdpwrap.dpr +++ b/src-x86-binarymaster/rdpwrap.dpr @@ -73,7 +73,7 @@ const var INI: INIFile; LogFile: String = '\rdpwrap.txt'; - bw: DWORD; + bw: {$if CompilerVersion>=16} NativeUInt {$else} DWORD {$endif}; IsHooked: Boolean = False; // Unhooked import diff --git a/src-x86-binarymaster/rdpwrap.dproj b/src-x86-binarymaster/rdpwrap.dproj index 36208c0..2b81a43 100644 --- a/src-x86-binarymaster/rdpwrap.dproj +++ b/src-x86-binarymaster/rdpwrap.dproj @@ -42,14 +42,14 @@ Base - - Cfg_2 - Base - Cfg_1 Base + + Cfg_2 + Base + diff --git a/src-x86-x64-Fusix/IniFile.cpp b/src-x86-x64-Fusix/IniFile.cpp index 8b48c07..5c610d3 100644 --- a/src-x86-x64-Fusix/IniFile.cpp +++ b/src-x86-x64-Fusix/IniFile.cpp @@ -127,7 +127,12 @@ DWORD INI_FILE::GetFileStringFromNum(DWORD StringNumber, char *RetString, DWORD for (DWORD i = FileStringsMap[StringNumber]; i < FileSize; i++) { - if ((FileRaw[i] == '\r' && FileRaw[i + 1] == '\n') || i == (FileSize - 1)) + if (i == (FileSize - 1)) + { + EndStringPos = FileSize; + break; + } + if (FileRaw[i] == '\r' && FileRaw[i + 1] == '\n') { EndStringPos = i; break; diff --git a/technical.txt b/technical.txt index 12286bc..eec609f 100644 --- a/technical.txt +++ b/technical.txt @@ -1,50 +1,458 @@ RDP Wrapper Library project by Stas'M Terminal Services supported versions -6.0.X.X (Windows Vista, any) [policy hook only] -6.0.6000.16386 (Windows Vista) [policy hook + extended patch] -6.0.6001.18000 (Windows Vista SP1) [policy hook + extended patch] -6.0.6001.22565 (Windows Vista SP1 with KB977541) [todo] -6.0.6001.22635 (Windows Vista SP1 with KB970911) [todo] -6.0.6001.22801 (Windows Vista SP1 with KB2381675) [todo] -6.0.6002.18005 (Windows Vista SP2) [policy hook + extended patch] -6.0.6002.22269 (Windows Vista SP2 with KB977541) [todo] -6.0.6002.22340 (Windows Vista SP2 with KB970911) [todo] -6.0.6002.22515 (Windows Vista SP2 with KB2381675) [todo] -6.0.6002.22641 (Windows Vista SP2 with KB2523307) [todo] -6.0.6002.19214 (Windows Vista SP2 with KB3003743 GDR) [policy hook + extended patch] -6.0.6002.23521 (Windows Vista SP2 with KB3003743 LDR) [policy hook + extended patch] -6.1.X.X (Windows 7, any) [policy hook only] -6.1.7600.16385 (Windows 7) [policy hook + extended patch] -6.1.7600.20890 (Windows 7 with KB2479710) [todo] -6.1.7600.21316 (Windows 7 with KB2750090) [todo] -6.1.7601.17514 (Windows 7 SP1) [policy hook + extended patch] -6.1.7601.21650 (Windows 7 SP1 with KB2479710) [todo] -6.1.7601.21866 (Windows 7 SP1 with KB2647409) [todo] -6.1.7601.22104 (Windows 7 SP1 with KB2750090) [todo] -6.1.7601.18540 (Windows 7 SP1 with KB2984972 GDR) [policy hook + extended patch] -6.1.7601.22750 (Windows 7 SP1 with KB2984972 LDR) [policy hook + extended patch] -6.1.7601.18637 (Windows 7 SP1 with KB3003743 GDR) [policy hook + extended patch] -6.1.7601.22843 (Windows 7 SP1 with KB3003743 LDR) [policy hook + extended patch] -6.2.8102.0 (Windows 8 Developer Preview) [policy hook + extended patch] -6.2.8250.0 (Windows 8 Consumer Preview) [policy hook + extended patch] -6.2.8400.0 (Windows 8 Release Preview) [policy hook + extended patch] -6.2.9200.16384 (Windows 8) [policy hook + extended patch] -6.2.9200.17048 (Windows 8 with KB2973501 GDR) [policy hook + extended patch] -6.2.9200.21166 (Windows 8 with KB2973501 LDR) [policy hook + extended patch] -6.3.9431.0 (Windows 8.1 Preview) [init hook + extended patch] -6.3.9600.16384 (Windows 8.1) [init hook + extended patch] -6.3.9600.17095 (Windows 8.1 with KB2959626) [init hook + extended patch] -6.3.9600.17415 (Windows 8.1 with KB3000850) [init hook + extended patch] -6.4.9841.0 (Windows 10 Technical Preview) [init hook + extended patch] -6.4.9860.0 (Windows 10 Technical Preview Update 1) [init hook + extended patch] -6.4.9879.0 (Windows 10 Technical Preview Update 2) [init hook + extended patch] - -Known failures -6.0.6000.16386 (Windows Vista RTM x86, crashes on logon attempt) +6.0.X.X (Windows Vista, any) [policy hook only] +6.0.6000.16386 (Windows Vista) [policy hook + extended patch] +6.0.6000.20723 (Windows Vista with KB944917) [todo] +6.0.6001.18000 (Windows Vista SP1) [policy hook + extended patch] +6.0.6001.22286 (Windows Vista SP1 with KB958612) [todo] +6.0.6001.22357 (Windows Vista SP1 with KB958612 v2) [todo] +6.0.6001.22323 (Windows Vista SP1 with KB960742) [todo] +6.0.6001.22392 (Windows Vista SP1 with KB968680) [todo] +6.0.6001.22565 (Windows Vista SP1 with KB977541) [todo] +6.0.6001.22635 (Windows Vista SP1 with KB970911) [todo] +6.0.6001.22801 (Windows Vista SP1 with KB2381675) [todo] +6.0.6002.18005 (Windows Vista SP2) [policy hook + extended patch] +6.0.6002.22269 (Windows Vista SP2 with KB977541) [todo] +6.0.6002.22340 (Windows Vista SP2 with KB970911) [todo] +6.0.6002.22515 (Windows Vista SP2 with KB2381675) [todo] +6.0.6002.22641 (Windows Vista SP2 with KB2523307) [todo] +6.0.6002.22790 (Windows Vista SP2 with KB2672601) [todo] +6.0.6002.19214 (Windows Vista SP2 with KB3003743 GDR) [policy hook + extended patch] +6.0.6002.23521 (Windows Vista SP2 with KB3003743 LDR) [policy hook + extended patch] +6.1.X.X (Windows 7, any) [policy hook only] +6.1.7100.0 (Windows 7 Release Candidate) [todo] +6.1.7600.16385 (Windows 7) [policy hook + extended patch] +6.1.7600.20661 (Windows 7 with KB951422) [todo] +6.1.7600.21085 (Windows 7 with KB951422 v2) [todo] +6.1.7600.20621 (Windows 7 with KB979470) [todo] +6.1.7600.20890 (Windows 7 with KB2479710) [policy hook + extended patch] +6.1.7600.21316 (Windows 7 with KB2750090) [policy hook + extended patch] +6.1.7600.21420 (Windows 7 with KB2800789) [todo] +6.1.7601.17514 (Windows 7 SP1) [policy hook + extended patch] +6.1.7601.21855 (Windows 7 SP1 with KB951422 v2) [todo] +6.1.7601.21650 (Windows 7 SP1 with KB2479710) [policy hook + extended patch] +6.1.7601.21866 (Windows 7 SP1 with KB2647409) [policy hook + extended patch] +6.1.7601.22104 (Windows 7 SP1 with KB2750090) [policy hook + extended patch] +6.1.7601.22213 (Windows 7 SP1 with KB2800789) [todo] +6.1.7601.22476 (Windows 7 SP1 with KB2870165) [todo] +6.1.7601.22435 (Windows 7 SP1 with KB2878424) [todo] +6.1.7601.22477 (Windows 7 SP1 with KB2896256) [todo] +6.1.7601.18540 (Windows 7 SP1 with KB2984972 GDR) [policy hook + extended patch] +6.1.7601.22750 (Windows 7 SP1 with KB2984972 LDR) [policy hook + extended patch] +6.1.7601.18637 (Windows 7 SP1 with KB3003743 GDR) [policy hook + extended patch] +6.1.7601.22843 (Windows 7 SP1 with KB3003743 LDR) [policy hook + extended patch] +6.1.7601.23403 (Windows 7 SP1 with KB3125574) [policy hook + extended patch] +6.1.7601.24234 (Windows 7 SP1 with KB4462923) [policy hook + extended patch] +6.2.8102.0 (Windows 8 Developer Preview) [policy hook + extended patch] +6.2.8250.0 (Windows 8 Consumer Preview) [policy hook + extended patch] +6.2.8400.0 (Windows 8 Release Preview) [policy hook + extended patch] +6.2.9200.16384 (Windows 8) [policy hook + extended patch] +6.2.9200.17048 (Windows 8 with KB2973501 GDR) [policy hook + extended patch] +6.2.9200.21166 (Windows 8 with KB2973501 LDR) [policy hook + extended patch] +6.3.9431.0 (Windows 8.1 Preview) [init hook + extended patch] +6.3.9600.16384 (Windows 8.1) [init hook + extended patch] +6.3.9600.17095 (Windows 8.1 with KB2959626) [init hook + extended patch] +6.3.9600.17415 (Windows 8.1 with KB3000850) [init hook + extended patch] +6.3.9600.18692 (Windows 8.1 with KB4022720) [init hook + extended patch] +6.3.9600.18708 (Windows 8.1 with KB4025335) [init hook + extended patch] +6.3.9600.18928 (Windows 8.1 with KB4088876) [init hook + extended patch] +6.3.9600.19093 (Windows 8.1 with KB4343891) [init hook + extended patch] +6.4.9841.0 (Windows 10 Technical Preview) [init hook + extended patch] +6.4.9860.0 (Windows 10 Technical Preview UP1) [init hook + extended patch] +6.4.9879.0 (Windows 10 Technical Preview UP2) [init hook + extended patch] +10.0.9926.0 (Windows 10 Pro Technical Preview) [init hook + extended patch] +10.0.10041.0 (Windows 10 Pro Technical Preview UP1) [init hook + extended patch] +10.0.10049.0 (Windows 10 Pro Technical Preview UP2) [todo] +10.0.10061.0 (Windows 10 Pro Technical Preview UP3) [todo] +10.0.10240.16384 (Windows 10 RTM) [init hook + extended patch] +10.0.10525.0 (Windows 10 th2_release.150812-1658) [todo] +10.0.10532.0 (Windows 10 th2_release.150822-1406) [todo] +10.0.10547.0 (Windows 10 th2_release.150913-1511) [todo] +10.0.10586.0 (Windows 10 th2_release.151029-1700) [init hook + extended patch] +10.0.10586.589 (Windows 10 th2_release.160906-1759) [init hook + extended patch] +10.0.11082.1000 (Windows 10 rs1_release.151210-2021) [init hook + extended patch] +10.0.11102.1000 (Windows 10 rs1_release.160113-1800) [init hook + extended patch] +10.0.14251.1000 (Windows 10 rs1_release.160124-1059) [init hook + extended patch] +10.0.14271.1000 (Windows 10 rs1_release.160218-2310) [init hook + extended patch] +10.0.14279.1000 (Windows 10 rs1_release.160229-1700) [init hook + extended patch] +10.0.14295.1000 (Windows 10 rs1_release.160318-1628) [init hook + extended patch] +10.0.14300.1000 (Windows Server 2016 Technical Preview 5) [init hook + extended patch] +10.0.14316.1000 (Windows 10 rs1_release.160402-2227) [init hook + extended patch] +10.0.14328.1000 (Windows 10 rs1_release.160418-1609) [init hook + extended patch] +10.0.14332.1001 (Windows 10 rs1_release.160422-1940) [init hook + extended patch] +10.0.14342.1000 (Windows 10 rs1_release.160506-1708) [init hook + extended patch] +10.0.14352.1002 (Windows 10 rs1_release.160522-1930) [init hook + extended patch] +10.0.14366.0 (Windows 10 rs1_release.160610-1700) [init hook + extended patch] +10.0.14367.0 (Windows 10 rs1_release.160613-1700) [init hook + extended patch] +10.0.14372.0 (Windows 10 rs1_release.160620-2342) [init hook + extended patch] +10.0.14379.0 (Windows 10 rs1_release.160627-1607) [init hook + extended patch] +10.0.14383.0 (Windows 10 rs1_release.160701-1839) [init hook + extended patch] +10.0.14385.0 (Windows 10 rs1_release.160706-1700) [init hook + extended patch] +10.0.14388.0 (Windows 10 rs1_release.160709-1635) [init hook + extended patch] +10.0.14393.0 (Windows 10 rs1_release.160715-1616) [init hook + extended patch] +10.0.14393.1198 (Windows 10 rs1_release_sec.170427-1353) [init hook + extended patch] +10.0.14393.1737 (Windows 10 rs1_release_inmarket.170914-1249) [init hook + extended patch] +10.0.14393.2457 (Windows 10 rs1_release_inmarket.180822-1743) [init hook + extended patch] +10.0.14901.1000 (Windows 10 rs_prerelease.160805-1700) [init hook + extended patch] +10.0.14905.1000 (Windows 10 rs_prerelease.160811-1739) [init hook + extended patch] +10.0.14915.1000 (Windows 10 rs_prerelease.160826-1902) [init hook + extended patch] +10.0.14926.1000 (Windows 10 rs_prerelease.160910-1529) [init hook + extended patch] +10.0.14931.1000 (Windows 10 rs_prerelease.160916-1700) [init hook + extended patch] +10.0.14936.1000 (Windows 10 rs_prerelease.160923-1700) [init hook + extended patch] +10.0.14942.1000 (Windows 10 rs_prerelease.161003-1929) [init hook + extended patch] +10.0.14946.1000 (Windows 10 rs_prerelease.161007-1700) [init hook + extended patch] +10.0.14951.1000 (Windows 10 rs_prerelease.161014-1700) [init hook + extended patch] +10.0.14955.1000 (Windows 10 rs_prerelease.161020-1700) [init hook + extended patch] +10.0.14959.1000 (Windows 10 rs_prerelease.161026-1700) [init hook + extended patch] +10.0.14965.1001 (Windows 10 rs_prerelease.161104-1700) [init hook + extended patch] +10.0.14971.1000 (Windows 10 rs_prerelease.161111-1700) [init hook + extended patch] +10.0.14986.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.14997.1001 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15002.1001 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15007.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15014.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15019.1000 (Windows 10 rs_prerelease.170121-1513) [init hook + extended patch] +10.0.15025.1000 (Windows 10 rs_prerelease.170127-1750) [init hook + extended patch] +10.0.15031.0 (Windows 10 rs2_release.170204-1546) [init hook + extended patch] +10.0.15042.0 (Windows 10 rs2_release.170219-2329) [init hook + extended patch] +10.0.15046.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15048.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15055.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15058.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15061.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15063.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15063.296 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15063.994 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.15063.1155 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16179.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16184.1001 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16199.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16215.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16232.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16237.1001 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16241.1001 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16251.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16251.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16257.1 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16257.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16273.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16275.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16278.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16281.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16288.1 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16291.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16294.1 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16296.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16299.0 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16299.15 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16353.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.16362.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17004.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17017.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17025.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17035.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17040.1000 (Windows 10 WinBuild.160101.0800) [todo] +10.0.17046.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17063.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17074.1002 (Windows 10 WinBuild.160101.0800) [todo] +10.0.17083.1000 (Windows 10 WinBuild.160101.0800) [todo] +10.0.17115.1 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17128.1 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17133.1 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17134.1 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17723.1000 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] +10.0.17763.1 (Windows 10 WinBuild.160101.0800) [init hook + extended patch] Source code changelog (rdpwrap library): +2018.10.10 : +- added support for termsrv.dll 6.1.7601.24234 x86 + +2018.10.04 : +- added support for termsrv.dll 10.0.14393.2457 x86 + +2018.10.03 : +- added support for termsrv.dll 6.1.7601.24234 x64 +- added support for termsrv.dll 10.0.15063.994 x64 +- added support for termsrv.dll 10.0.17723.1000 x64 +- added support for termsrv.dll 10.0.17763.1 + +2018.09.10 : +- added support for termsrv.dll 6.1.7600.20890 +- added support for termsrv.dll 6.1.7600.21316 +- added support for termsrv.dll 6.1.7601.21650 +- added support for termsrv.dll 6.1.7601.21866 +- added support for termsrv.dll 6.1.7601.22104 +- added support for termsrv.dll 6.3.9600.19093 +- added support for termsrv.dll 10.0.14393.2457 x64 +- added support for termsrv.dll 10.0.15063.1155 x64 + +2018.05.16 : +- added support for termsrv.dll 10.0.17115.1 +- added support for termsrv.dll 10.0.17128.1 +- added support for termsrv.dll 10.0.17133.1 +- added support for termsrv.dll 10.0.17134.1 + +2018.03.26 : +- added support for termsrv.dll 6.3.9600.18928 by 1nd1g0 + +2017.12.27 : +- added support for termsrv.dll 10.0.17017.1000 +- added support for termsrv.dll 10.0.17025.1000 +- added support for termsrv.dll 10.0.17035.1000 +- added support for termsrv.dll 10.0.17046.1000 +- added support for termsrv.dll 10.0.17063.1000 + +2017.10.13 : +- added support for termsrv.dll 10.0.14393.1737 +- added support for termsrv.dll 10.0.16299.0 +- added support for termsrv.dll 10.0.16299.15 +- added support for termsrv.dll 10.0.17004.1000 + +2017.09.24 : +- added support for termsrv.dll 10.0.16291.0 +- added support for termsrv.dll 10.0.16294.1 +- added support for termsrv.dll 10.0.16296.0 +- added support for termsrv.dll 10.0.16362.1000 + +2017.09.15 : +- added support for termsrv.dll 10.0.16288.1 + +2017.09.06 : +- added support for termsrv.dll 10.0.16273.1000 +- added support for termsrv.dll 10.0.16275.1000 +- added support for termsrv.dll 10.0.16278.1000 +- added support for termsrv.dll 10.0.16281.1000 +- added support for termsrv.dll 10.0.16353.1000 + +2017.08.04 : +- added support for termsrv.dll 10.0.16257.1 +- added support for termsrv.dll 10.0.16257.1000 + +2017.07.30 : +- added support for termsrv.dll 6.3.9600.18708 +- added support for termsrv.dll 10.0.16232.1000 +- added support for termsrv.dll 10.0.16237.1001 +- added support for termsrv.dll 10.0.16241.1001 +- added support for termsrv.dll 10.0.16251.0 +- added support for termsrv.dll 10.0.16251.1000 + +2017.06.29 : +- added support for termsrv.dll 6.3.9600.18692 + +2017.06.10 : +- added support for termsrv.dll 10.0.15063.296 +- added support for termsrv.dll 10.0.16215.1000 + +2017.05.29 : +- added support for termsrv.dll 10.0.16199.1000 + +2017.05.17 : +- added support for termsrv.dll 10.0.14997.1001 x64 + +2017.05.12 : +- added support for termsrv.dll 10.0.14393.1198 x86 + +2017.05.03 : +- added support for termsrv.dll 10.0.16179.1000 +- added support for termsrv.dll 10.0.16184.1001 + +2017.03.22 : +- added support for termsrv.dll 10.0.15063.0 + +2017.03.21 : +- added support for termsrv.dll 10.0.15061.0 + +2017.03.16 : +- added support for termsrv.dll 10.0.15058.0 + +2017.03.14 : +- added support for termsrv.dll 10.0.15055.0 + +2017.03.05 : +- added support for termsrv.dll 10.0.15048.0 + +2017.03.02 : +- added support for termsrv.dll 10.0.15046.0 + +2017.03.01 : +- added support for termsrv.dll 10.0.15031.0 +- added support for termsrv.dll 10.0.15042.0 + +2017.02.03 : +- added support for termsrv.dll 10.0.15025.1000 x64 + +2017.01.28 : +- added support for termsrv.dll 10.0.15019.1000 + +2017.01.21 : +- added support for termsrv.dll 10.0.15014.1000 + +2017.01.15 : +- added support for termsrv.dll 10.0.15007.1000 + +2017.01.12 : +- added support for termsrv.dll 10.0.15002.1001 + +2016.12.23 : +- added support for termsrv.dll 10.0.14986.1000 + +2016.11.19 : +- added support for termsrv.dll 10.0.14959.1000 +- added support for termsrv.dll 10.0.14965.1001 +- added support for termsrv.dll 10.0.14971.1000 + +2016.10.28 : +- added support for termsrv.dll 10.0.14955.1000 + +2016.10.21 : +- added support for termsrv.dll 10.0.14951.1000 + +2016.10.19 : +- added support for termsrv.dll 10.0.14946.1000 + +2016.10.08 : +- added support for termsrv.dll 10.0.14942.1000 + +2016.09.30 : +- added support for termsrv.dll 10.0.14936.1000 + +2016.09.27 : +- added support for termsrv.dll 10.0.14931.1000 + +2016.09.15 : +- added support for termsrv.dll 10.0.14926.1000 + +2016.09.14 : +- added support for termsrv.dll 10.0.10586.589 + +2016.09.03 : +- added support for termsrv.dll 10.0.14915.1000 + +2016.08.28 : +- added support for termsrv.dll 6.1.7601.23403 +- added support for termsrv.dll 10.0.14901.1000 +- added support for termsrv.dll 10.0.14905.1000 + +2016.08.12 : +- added support for termsrv.dll 10.0.14385.0 + +2016.08.01 : +- preparing the release + +2016.07.23 : +- added online install mode to installer +- added feature to keep settings on uninstall +- fixed update firewall rule on port change in config tool +- added feature to hide users on logon + +2016.07.22 : +- added support for termsrv.dll 10.0.14393.0 + +2016.07.15 : +- added support for termsrv.dll 10.0.14383.0 +- added support for termsrv.dll 10.0.14388.0 + +2016.07.06 : +- added support for termsrv.dll 10.0.14379.0 + +2016.06.27 : +- added support for termsrv.dll 10.0.14372.0 x86 + +2016.06.26 : +- added support for termsrv.dll 10.0.14372.0 x64 by kbmorris + +2016.06.17 : +- fixed issue with termsrv.dll 10.0.14352.1002 +- added support for termsrv.dll 10.0.14366.0 +- added support for termsrv.dll 10.0.14367.0 + +2016.05.30 : +- added support for termsrv.dll 10.0.14352.1002 + +2016.05.14 : +- added support for termsrv.dll 10.0.14342.1000 + +2016.05.08 : +- added support for termsrv.dll 10.0.14300.1000 x64 +- added support for termsrv.dll 10.0.14328.1000 + +2016.04.29 : +- added support for termsrv.dll 10.0.14332.1001 by maxpiva + +2016.04.14 : +- added support for termsrv.dll 10.0.14316.1000 + +2016.04.06 : +- added support for termsrv.dll 10.0.14295.1000 + +2016.03.07 : +- added experimental codes for ARMv7 architecture (see rdpwrap-arm-kb.ini) +- Windows RT / termsrv.dll 6.2.9200.16384 +- Windows RT 8.1 / termsrv.dll 6.3.9600.16384 +- Windows RT 8.1 / termsrv.dll 6.3.9600.17095 + +2016.03.06 : +- added support for termsrv.dll 10.0.14279.1000 + +2016.02.29 : +- added support for termsrv.dll 10.0.14271.1000 + +2016.01.28 : +- added support for termsrv.dll 10.0.14251.1000 + +2016.01.26 : +- added support for termsrv.dll 10.0.11102.1000 + +2016.01.15 : +- updated messages in the installer +- added support for termsrv.dll 10.0.11082.1000 + +2015.11.14 : +- added support for termsrv.dll 10.0.10586.0 + +2015.08.11 : +- embed new rdpclip versions in the installer (for NT 6.0 and 6.1) +- preparing the release + +2015.08.07 : +- added INI update feature to installer + +2015.07.30 : +- fixed issue with Windows 10 Home x86 (wrong LocalOnly offset was specified in INI file) + +2015.07.17 : +- added support for termsrv.dll 10.0.10240.16384 +- added HOW TO hints to KB (so other reverse engineers can do this hard work more easier) + +2015.07.16 : +- moved all comments from INI file to Knowledge Base text file +- now INI file have smaller size +- updated RDP checker: changed IP Address to 127.0.0.2 (sometimes client doesn't want to connect .1), updated text message +- updated RDP config: list all possible shadowing modes, also write group policy +- updated installer: added workaround for 1056 error +- updated copyright years in source code +- obtained files from build 10.0.10240.16384 +- researching Windows 10 RTM + +2015.03.23 : +- researching Windows 10 Pro Technical Preview UP1 +- added support for termsrv.dll 10.0.10041.0 + +2015.03.20 : +- new build 10.0.10041.0 was released, obtaining files... + +2015.01.26 : +- researching Windows 10 Pro Technical Preview (10.0.9926.0 x86) +- added support for termsrv.dll 10.0.9926.0 (x86) + +2015.01.22 : +- v-yadli contributed offsets for version 10.0.9926.0 (x64) + +2014.12.13 : +- added more policy values to INI file + 2014.12.10 : - C++ version seems to work well now! - added support for termsrv.dll 6.4.9879.0