手脱upx
练一下手脱upx+用esp定律加scylla的方法

直接在内存中打开栈顶并下硬件断点4字节的访问断点然后运行(原理就是upx解压相当于一个函数开头会压入栈结尾会输出栈)

再用scylla来dump和修复
依次是dump将内存中的代码复制下来
再是iat autosearch 再到iat表中每个地址对应得是那个dll中得函数
然后get imports来建立函数和dll中导出表得关系
最后fixdunmp重新来填入INT让程序可以运行

顺便解密下这个题

这个头就是解密完了但是upx的效验头其中byte_401171就是主函数

这里是一个常见的花指令由于一定会跳到loc_409030+1去执行后面的

loc_409030位置的E8是call命令就形成干扰直接nop加u c p一下重新编译


找到主函数和地图起点终点得答案

