[Main]
; Last updated date
Updated=2017-07-30
; 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

[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.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)
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.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.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.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.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

[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.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.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.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