以下のような難読化されたPowerShellコマンドがあったとする。
("{1}{0}" -f 'AN','C') ([chAr]89+[chAr]79+[chAr]85) ('SZZ'.replace('Z', 'E')) ('T','H','I','S' -jOin '')([char]63)
PowerShellを立ち上げて、Write-Hostで上記をコンソール出力させると、手っ取り早く解読できる。
write-host ("{1}{0}" -f 'AN','C') ([chAr]89+[chAr]79+[chAr]85) ('SZZ'.replace('Z', 'E')) ('T','H','I','S' -jOin '')([char]63)
結果をファイルに出力したい場合はWrite-Outputを使う。
write-output ("{1}{0}" -f 'AN','C') ([chAr]89+[chAr]79+[chAr]85) ('SZZ'.replace('Z', 'E')) ('T','H','I','S' -jOin '')([char]63) > out.txt
もしくは
write-output ("{1}{0}" -f 'AN','C') ([chAr]89+[chAr]79+[chAr]85) ('SZZ'.replace('Z', 'E')) ('T','H','I','S' -jOin '')([char]63) | out-file -filepath .\out2.txt
※もし解読しようとしているPowerShellコマンドに悪意のあるコードが含まれている場合、コードが実行されてしまう可能性があるため、必ずVMなどの安全な環境で検証すること。
以上。