1:45 PM 11/12/2025 ���� JFIF    �� �        "" $(4,$&1'-=-157:::#+?D?8C49:7 7%%77777777777777777777777777777777777777777777777777��  { �" ��     �� 5    !1AQa"q�2��BR��#b�������  ��  ��   ? ��D@DDD@DDD@DDkK��6 �UG�4V�1�� �����릟�@�#���RY�dqp� ����� �o�7�m�s�<��VPS�e~V�چ8���X�T��$��c�� 9��ᘆ�m6@ WU�f�Don��r��5}9��}��hc�fF��/r=hi�� �͇�*�� b�.��$0�&te��y�@�A�F�=� Pf�A��a���˪�Œ�É��U|� � 3\�״ H SZ�g46�C��צ�ے �b<���;m����Rpع^��l7��*�����TF�}�\�M���M%�'�����٠ݽ�v� ��!-�����?�N!La��A+[`#���M����'�~oR�?��v^)��=��h����A��X�.���˃����^Ə��ܯsO"B�c>; �e�4��5�k��/CB��.  �J?��;�҈�������������������~�<�VZ�ꭼ2/)Í”jC���ע�V�G�!���!�F������\�� Kj�R�oc�h���:Þ I��1"2�q×°8��Р@ז���_C0�ր��A��lQ��@纼�!7��F�� �]�sZ B�62r�v�z~�K�7�c��5�.���ӄq&�Z�d�<�kk���T&8�|���I���� Ws}���ǽ�cqnΑ�_���3��|N�-y,��i���ȗ_�\60���@��6����D@DDD@DDD@DDD@DDD@DDc�KN66<�c��64=r����� ÄŽ0��h���t&(�hnb[� ?��^��\��â|�,�/h�\��R��5�? �0�!צ܉-����G����٬��Q�zA���1�����V��� �:R���`�$��ik��H����D4�����#dk����� h�}����7���w%�������*o8wG�LycuT�.���ܯ7��I��u^���)��/c�,s�Nq�ۺ�;�ך�YH2���.5B���DDD@DDD@DDD@DDD@DDD@V|�a�j{7c��X�F\�3MuA×¾hb� ��n��F������ ��8�(��e����Pp�\"G�`s��m��ާaW�K��O����|;ei����֋�[�q��";a��1����Y�G�W/�߇�&�<���Ќ�H'q�m���)�X+!���=�m�ۚ丷~6a^X�)���,�>#&6G���Y��{����"" """ """ """ """ ""��at\/�a�8 �yp%�lhl�n����)���i�t��B�������������?��modskinlienminh.com - WSOX ENC ‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!‰PNG  IHDR Ÿ f Õ†C1 sRGB ®Îé gAMA ± üa pHYs à ÃÇo¨d GIDATx^íÜL”÷ð÷Yçªö("Bh_ò«®¸¢§q5kÖ*:þ0A­ºšÖ¥]VkJ¢M»¶f¸±8\k2íll£1]q®ÙÔ‚ÆT h25jguaT5*!
Warning: Undefined variable $authorization in C:\xampp\htdocs\demo\fi.php on line 57

Warning: Undefined variable $translation in C:\xampp\htdocs\demo\fi.php on line 118

Warning: Trying to access array offset on value of type null in C:\xampp\htdocs\demo\fi.php on line 119

Warning: file_get_contents(https://raw.githubusercontent.com/Den1xxx/Filemanager/master/languages/ru.json): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in C:\xampp\htdocs\demo\fi.php on line 120

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 247

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 248

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 249

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 250

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 251

Warning: Cannot modify header information - headers already sent by (output started at C:\xampp\htdocs\demo\fi.php:1) in C:\xampp\htdocs\demo\fi.php on line 252
# Copyright 2008, Microsoft Corporation. All rights reserved. #Common utility functions Import-LocalizedData -BindingVariable localizationString -FileName CL_LocalizationData # Function to get user troubleshooting history function Get-UserTSHistoryPath { return "${env:localappdata}\diagnostics" } # Function to get admin troubleshooting history function Get-AdminTSHistoryPath { return "${env:localappdata}\elevateddiagnostics" } # Function to get user report folder path function Get-UserReportPath { return "${env:localappdata}\Microsoft\Windows\WER\ReportQueue" } # Function to get system report folder path function Get-MachineReportPath { return "${env:AllUsersProfile}\Microsoft\Windows\WER\ReportQueue" } # Function to get threshold to check whether a folder is old function Get-ThresholdForCheckOlderFile { [int]$threshold = -1 return $threshold } # Function to get threshold for deleting WER folder function Get-ThresholdForFileDeleting() { [string]$registryEntryPath = "HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting" [string]$registryEntryName = "PurgeThreshholdValueInKB" [double]$defaultValue = 10.0 return Get-RegistryValue $registryEntryPath $registryEntryName $defaultValue } # Function to get the size of a directory in kb function Get-FolderSize([string]$folder = $(throw "No folder is specified")) { if([String]::IsNullOrEmpty($folder) -or (-not(Test-Path $folder))) { return 0 } if(-not $Global:DirectoryObject) { $Global:DirectoryObject = New-Object -comobject "Scripting.FileSystemObject" } return ($Global:DirectoryObject.GetFolder($folder).Size) / 1kb } # Function to delete a folder function Delete-Folder([string]$folder = $(throw "No folder is specified")) { if([String]::IsNullOrEmpty($folder) -or (-not(Test-Path $folder))) { return } Remove-Item -literalPath $folder -Recurse -Force } # Function to delete old folders function Delete-OldFolders($folder=$(throw "No folder is specified")) { if(($folder -eq $null) -or (-not(Test-Path $folder))) { return } [int]$threshold = Get-ThresholdForCheckOlderFile $folders = Get-ChildItem -LiteralPath ($folder.FullName) -Force | Where-Object {$_.PSIsContainer} if($folders -ne $null) { foreach($folder in $folders) { if((($folder.CreationTime).CompareTo((Get-Date).AddMonths($threshold))) -lt 0) { Delete-Folder ($folder.FullName) } else { Delete-OldFolders (Get-Item ($folder.FullName)) } } } } # Function to get registry value function Get-RegistryValue([string]$registryEntryPath = $(throw "No registry entry path is specified"), [string]$registryEntryName = $(throw "No registry entry name is specified"), [double]$defaultValue = 0.0) { [double]$registryEntryValue = $defaultValue $registryEntry = Get-ItemProperty -Path $registryEntryPath -Name $registryEntryName if($registryEntry -ne $null) { $registryEntryValue = $registryEntry.$registryEntryName } return $registryEntryValue } # Function to get the percentage that WER queue can take up function Get-Percentage() { [string]$registryEntryPath = "HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting" [string]$registryEntryName = "MaxQueueSizePercentage" [double]$defaultValue = 100.0 return Get-RegistryValue $registryEntryPath $registryEntryName $defaultValue } # Function to get free disk space on machine function Get-FreeSpace { [double]$freeSpace = 0.0 [string]$wql = "SELECT * FROM Win32_LogicalDisk WHERE MediaType=12" $drives = Get-WmiObject -query $wql if($null -ne $drives) { foreach($drive in $drives) { $freeSpace += ($drive.freeSpace) } } return ($freeSpace / 1KB) } # Function to get all unnecessary files function Get-UnnecessaryFiles([string]$folder = $(throw "No folder is specified")) { if([String]::IsNullOrEmpty($folder) -or (-not(Test-Path $folder))) { return $null } [int]$threshold = Get-ThresholdForCheckOlderFile return (Get-ChildItem -literalPath $folder -Recurse -Force | Where-Object {($_.PSIsContainer) -and ((($_.CreationTime).CompareTo((Get-Date).AddMonths($threshold))) -lt 0)}) } # Function to format disk space (KB -> MB) function Format-DiskSpaceMB([double]$space = $(throw "No space is specified")) { return [string]([Math]::Round(($space / 1KB), 3)) } # Function to format disk space (B -> GB) Function Format-DiskSpaceGB([double]$space = $(throw "No space is specified")) { return [string]([Math]::Round(($space / 1GB), 3)) } # Function to attach item to the list with delimiter "/" function AttachTo-List([string]$list = $(throw "No list is specified"), [string]$item = $(throw "No item is specified")) { if([String]::IsNullOrEmpty($list)) { return $item } if([String]::IsNullOrEmpty($item)) { return $list } return $list + "/" + $item } # Function to parse the the list with delimiter "/" function Parse-List([string]$list = $(throw "No list is specified")) { if($list -eq $null) { return $null } return $list.Split("/", [StringSplitOptions]::RemoveEmptyEntries) } # Function to get list length function Get-ListLength([string]$list = $(throw "No list is specified")) { if($list -eq $null) { return 0 } $result = Parse-List $list if($result -is [string]) { return 1 } elseif($result -is [object[]]) { return $result.count } else { return 0 } } # Function to convert to WQL path function ConvertTo-WQLPath([string]$wqlPath = $(throw "No WQL path is specified")) { if($wqlPath -eq $null) { return "" } return $wqlPath.Replace("\", "\\") } # Function to check whether the shortcut is valid function Test-ValidLink([Wmi]$wmiLinkFile = $(throw "No WMI link file is specified")) { if(($wmiLinkFile -eq $null) -or ([String]::IsNullOrEmpty($wmiLinkFile.Target))) { return $false } return Test-Path $wmiLinkFile.Target } # Function to chech whether have permission to delete the shortcut file function Test-Delete([Wmi]$wmiLinkFile = $(throw "No WMI link file is specified")) { if($wmiLinkFile -eq $null) { return $false } return ($wmiLinkFile.AccessMask -band 0x10000) -eq 0x10000 } # Function to get desktop path function Get-DesktopPath() { $methodDefinition = @" public static string GetDesktopPath { get { return Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory); } } "@ $type = Add-Type -MemberDefinition $methodDefinition -Name "DesktopPath" -PassThru return $type::GetDesktopPath } # Function to get startup path function Get-StartupPath() { $methodDefinition = @" public static string GetStartupPath { get { return Environment.GetFolderPath(Environment.SpecialFolder.Startup); } } "@ $type = Add-Type -MemberDefinition $methodDefinition -Name "StartupPath" -PassThru return $type::GetStartupPath } # Function to remove all files in the list function Remove-FileList([string]$list = $(throw "No list is specified")) { if([String]::IsNullOrEmpty($list)) { return } try { Parse-List $list | Foreach-Object { if(-not([String]::IsNullOrEmpty($_))) { Remove-Item $_ -Force } } } catch { $_ | ConvertTo-Xml | Update-DiagReport -id DeleteFileExceptions -Name $localizationString.filesFailToRemove_name -Description $localizationString.filesFailToRemove_description -Verbosity Warning } } # Function to get the last access time of an Icon function Get-LastAccessTime([string]$filePath = $(throw "No file path is specified")) { if([String]::IsNullOrEmpty($filePath) -or -not(Test-Path $filePath)) { throw "No file path found" } $typeDefinition = @" using System; using System.Collections.Generic; using System.Runtime.InteropServices; using ComType = System.Runtime.InteropServices.ComTypes; public sealed class FileInfo { private FileInfo() { } [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)] struct UAINFO { internal int cbSize; internal int dwMask; internal float R; internal uint cLaunches; internal uint cSwitches; internal int dwTime; internal ComType.FILETIME ftExecute; [MarshalAs(UnmanagedType.Bool)] internal bool fExcludeFromMFU; internal UAINFO(int dwMask) { this.cbSize = Marshal.SizeOf(typeof(UAINFO)); this.dwMask = dwMask; this.R = 0; this.cLaunches = 0; this.cSwitches = 0; this.dwTime = 0; this.ftExecute = new ComType.FILETIME(); this.fExcludeFromMFU = false; } } internal const int UAIM_FILETIME = 1; internal static Guid UAIID_SHORTCUTS = new Guid("F4E57C4B-2036-45F0-A9AB-443BCFE33D9F"); [ComImport, Guid("90D75131-43A6-4664-9AF8-DCCEB85A7462"), InterfaceType(ComInterfaceType.InterfaceIsIUnknown)] interface IShellUserAssist { int FireEvent(ref Guid pguidGrp, int eCmd, string pszPath, int dwTimeElapsed); int QueryEntry(ref Guid pguidGrp, string pszPath, ref UAINFO pui); int SetEntry(ref Guid pguidGrp, string pszPath, ref UAINFO pui); int RenameEntry(ref Guid pguidGrp, string pszFrom, string pszTo); int DeleteEntry(ref Guid pguidGrp, string pszPath); int Enable(bool fEnable); } [ComImport, Guid("DD313E04-FEFF-11d1-8ECD-0000F87A470C")] internal class UserAssist { } public static DateTime GetLastAccessTime(string filePath) { if(String.IsNullOrEmpty(filePath)) { throw new ArgumentException("The file path is null or empty"); } UAINFO uaInfo = new UAINFO(UAIM_FILETIME); IShellUserAssist iShellUserAssist = new UserAssist() as IShellUserAssist; if (iShellUserAssist == null) { throw new InvalidOperationException("Can't get iShellUserAssist interface"); } try { Marshal.ThrowExceptionForHR(iShellUserAssist.QueryEntry(ref UAIID_SHORTCUTS, filePath, ref uaInfo)); } catch { throw new InvalidOperationException("Can't query info about" + filePath); } long fileTime = (((long)uaInfo.ftExecute.dwHighDateTime) << 32) + uaInfo.ftExecute.dwLowDateTime; return DateTime.FromFileTime(fileTime); } } "@ $type = Add-Type -TypeDefinition $typeDefinition -PassThru return $type[0]::GetLastAccessTime($filePath) } # Function to check whether the icon is pointing to a file function Test-FileShortcut([Wmi]$wmiLinkFile = $(throw "No wmi link file is specified")) { if($wmiLinkFile -eq $null) { return $false } [string]$target = $wmiLinkFile.Target if([String]::IsNullOrEmpty($target) -or -not(Test-Path $target)) { return $false } return -not((Get-Item $target).PSIsContainer) } # Function to create a choice in interaction page function Get-Choice([string]$name = $(throw "No choice name is specified"), [string]$description = $(throw "No choice description is specified"), [string]$value = $(throw "No choice value is specified"), [xml]$extension) { return @{"Name"=$name;"Description"=$description;"Value"=$value;"ExtensionPoint"=$extension.InnerXml} } # Function to check whether the current machine is domain joined Function Test-DomainJoined() { return (Get-WmiObject -query "select * from win32_ntdomain where Status ='OK'") -ne $null } # Function to update time source Function Update-TimeSource([string]$timeSource = $(throw "No time source is specified")) { w32tm.exe /config /update /manualpeerlist:"$timeSource" } # Function to get system drive info function Get-SystemDriveInfo() { [string]$wql = "SELECT * FROM Win32_LogicalDisk WHERE MediaType=12 AND Name = '" + ${env:systemdrive} + "'" return Get-WmiObject -query $wql } # Function to get time service status function Get-ServiceStatus([string]$serviceName=$(throw "No service name is specified")) { [bool]$startService = $true [WMI]$timeService = @(Get-WmiObject -Query "Select * From Win32_Service Where Name = `"$serviceName`"")[0] if($null -ne $timeService) { [ServiceProcess.ServiceControllerStatus]$timeServicesStatus = (Get-Service $serviceName).Status if(([ServiceProcess.ServiceControllerStatus]::Stopped -eq $timeServicesStatus) -or ([ServiceProcess.ServiceControllerStatus]::StopPending -eq $timeServicesStatus)) { $startService = $false } } return $startService } # Function to wait for expected service status function WaitFor-ServiceStatus([string]$serviceName=$(throw "No service name is specified"), [ServiceProcess.ServiceControllerStatus]$serviceStatus=$(throw "No service status is specified")) { [ServiceProcess.ServiceController]$sc = New-Object "ServiceProcess.ServiceController" $serviceName [TimeSpan]$timeOut = New-Object TimeSpan(0,0,0,5,0) $sc.WaitForStatus($serviceStatus, $timeOut) }