function FilterJITInfo ($file=”",$info=”",$output=”out.txt”,[switch]$help)
{
if(($file -eq “”) -or $help){
“FilterJITInfo`n”+
“功能:从PeBrowseDbg导出的JIT Events事件中过滤所需要的信息`n”+
“参数`n”+
“ -file 输入的文本文件全路径`n”+
“ -info 需过滤(包含)的信息`n”+
“ -output 保存的文件名,默认output.txt`n”+
“ -help 显示帮助信息”
return
}
$resultStrings=,”起始地址 函数ID Token/函数名/程序集”
Get-Content $file|foreach-object{
if($info -ne “”)
{
if($_.IndexOf($info) -ge 0)
{
$resultStrings+=$_
}
}
else
{
$resultStrings+=$_
}
}
$resultStrings > $output
}
实际运行效果如下,某crackme调试信息从运行到主界面显示共2370个JIT事件,如下图
过滤后的事件信息如下:
起始地址 函数ID Token/函数名/程序集
01456300 00A73038 Crackme.Program::.cctor (06000010) E:\crackme.exe
0145B650 00A73040 Crackme.Program::Main (06000011) E:\crackme.exe
0145FC00 03DD1220 Crackme.Form1::.ctor (06000003) E:\crackme.exe
04348960 03DD1218 Crackme.Form1::InitializeComponent (06000002) E:\crackme.exe
04737B90 03DD1238 Crackme.Form1::Form1_Load (06000006) E:\crackme.exe
0473A2C8 00A73030 Crackme.Program::get_Cracked (0600000F) E:\crackme.exe
CSDN声明:CSDN登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述