; ######################################################################### .486 .model flat, stdcall option casemap :none ; case sensitive ; ######################################################################### include \masm32\include\windows.inc include \masm32\include\user32.inc include \masm32\include\kernel32.inc include \masm32\include\advapi32.inc includelib \masm32\lib\user32.lib includelib \masm32\lib\kernel32.lib includelib \masm32\lib\advapi32.lib ; ######################################################################### .data ActiveDesktopKey db "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\ActiveDesktop",0 SystemKey db "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System",0 NetworkKey db "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Network",0 ExplorerKey db "SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer",0 NoAddingComponents db "NoAddingComponents",0 NoChangingWallPaper db "NoChangingWallPaper",0 NoCloseDragDropBands db "NoCloseDragDropBands",0 NoDeletingComponents db "NoDeletingComponents",0 NoEditingComponents db "NoEditingComponents",0 NoHTMLWallPaper db "NoHTMLWallPaper",0 ClearRecentDocsOnExit db "ClearRecentDocsOnExit",0 NoActiveDesktop db "NoActiveDesktop",0 NoActiveDesktopChanges db "NoActiveDesktopChanges",0 NoAddPrinter db "NoAddPrinter",0 NoChangeStartMenu db "NoChangeStartMenu",0 NoDeletePrinter db "NoDeletePrinter",0 NoDesktop db "NoDesktop",0 NoDrives db "NoDrives",0 ;NoDriveTypeAutoRun db "NoDriveTypeAutoRun",0 NoFavoritesMenu db "NoFavoritesMenu",0 NoFind db "NoFind",0 NoFolderOptions db "NoFolderOptions",0 NoInternetIcon db "NoInternetIcon",0 NoNetHood db "NoNetHood",0 NoRecentDocsHistory db "NoRecentDocsHistory",0 NoRecentDocsMenu db "NoRecentDocsMenu",0 NoSaveSettings db "NoSaveSettings",0 NoSetActiveDesktop db "NoSetActiveDesktop",0 NoSetFolders db "NoSetFolders",0 NoSetTaskbar db "NoSetTaskbar",0 NoStartMenuSubFolders db "NoStartMenuSubFolders",0 NoTrayContextMenu db "NoTrayContextMenu",0 ;NoWindowsUpdate db "NoWindowsUpdate",0 ;SpecifyDefaultButtons db "SpecifyDefaultButtons",0 NoEntireNetwork db "NoEntireNetwork",0 NoFileSharingControl db "NoFileSharingControl",0 NoNetSetup db "NoNetSetup",0 NoNetSetupIDPage db "NoNetSetupIDPage",0 NoNetSetupSecurityPage db "NoNetSetupSecurityPage",0 NoPrintSharingControl db "NoPrintSharingControl",0 NoWorkingContents db "NoWorkingContents",0 NoWorkgroupContents db "NoWorkgroupContents",0 DisableRegistryTools db "DisableRegistryTools",0 NoAdminPage db "NoAdminPage",0 NoConfigPage db "NoConfigPage",0 NoDevMgrPage db "NoDevMgrPage",0 NoDispAppearancePage db "NoDispAppearancePage",0 NoDispBackgroundPage db "NoDispBackgroundPage",0 NoDispCPL db "NoDispCPL",0 NoDispScrSavPage db "NoDispScrSavPage",0 NoDispSettingsPage db "NoDispSettingsPage",0 NoFileSysPage db "NoFileSysPage",0 NoProfilePage db "NoProfilePage",0 NoPwdPage db "NoPwdPage",0 NoSecCPL db "NoSecCPL",0 NoVirtMemPage db "NoVirtMemPage",0 hKey dd 0 KeyValue dd 0 KeySize dd 4 .code start: ;ActiveDesktop invoke RegOpenKeyEx,HKEY_CURRENT_USER,ADDR ActiveDesktopKey,0,KEY_ALL_ACCESS,ADDR hKey invoke RegQueryValueEx,hKey,ADDR NoAddingComponents,0,0,ADDR KeyValue,ADDR KeySize cmp KeyValue,1 jne @f mov KeyValue,0 jmp Jump @@: mov KeyValue,1 Jump: invoke RegSetValueEx,hKey,ADDR NoAddingComponents,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoChangingWallPaper,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoCloseDragDropBands,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDeletingComponents,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoEditingComponents,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoHTMLWallPaper,0,REG_DWORD,ADDR KeyValue,4 invoke RegCloseKey,hKey ;Explorer invoke RegOpenKeyEx,HKEY_CURRENT_USER,ADDR ExplorerKey,0,KEY_WRITE,ADDR hKey invoke RegSetValueEx,hKey,ADDR ClearRecentDocsOnExit,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoActiveDesktop,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoActiveDesktopChanges,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoAddPrinter,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoChangeStartMenu,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDeletePrinter,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDesktop,0,REG_DWORD,ADDR KeyValue,4 cmp KeyValue,1 jne @f mov KeyValue,4 @@: invoke RegSetValueEx,hKey,ADDR NoDrives,0,REG_DWORD,ADDR KeyValue,4 cmp KeyValue,4 jne @f mov KeyValue,1 @@: invoke RegSetValueEx,hKey,ADDR NoFavoritesMenu,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoFind,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoFolderOptions,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoInternetIcon,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoNetHood,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoRecentDocsHistory,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoRecentDocsMenu,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoSaveSettings,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoSetActiveDesktop,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoSetFolders,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoSetTaskbar,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoStartMenuSubFolders,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoTrayContextMenu,0,REG_DWORD,ADDR KeyValue,4 invoke RegCloseKey,hKey ;Network invoke RegOpenKeyEx,HKEY_CURRENT_USER,ADDR NetworkKey,0,KEY_WRITE,ADDR hKey invoke RegSetValueEx,hKey,ADDR NoEntireNetwork,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoFileSharingControl,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoNetSetup,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoNetSetupIDPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoNetSetupSecurityPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoPrintSharingControl,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoWorkingContents,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoWorkgroupContents,0,REG_DWORD,ADDR KeyValue,4 invoke RegCloseKey,hKey ;System invoke RegOpenKeyEx,HKEY_CURRENT_USER,ADDR SystemKey,0,KEY_WRITE,ADDR hKey invoke RegSetValueEx,hKey,ADDR DisableRegistryTools,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoAdminPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoConfigPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDevMgrPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDispAppearancePage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDispBackgroundPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDispCPL,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDispScrSavPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoDispSettingsPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoFileSysPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoProfilePage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoPwdPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoSecCPL,0,REG_DWORD,ADDR KeyValue,4 invoke RegSetValueEx,hKey,ADDR NoVirtMemPage,0,REG_DWORD,ADDR KeyValue,4 invoke RegCloseKey,hKey invoke ExitWindowsEx,EWX_LOGOFF,NULL push 0 call ExitProcess end start