VC++ Code:
_asm
{
jb label
jnb label
_emit 0xE8
label:
}
Delphi Code:
asm
begin
jb label
jnb label
db $E8
label:
end;
很显然,这只是一段极其简单的花代码,但是对付 IDA 的 Hex-Rays Decompiler 插件却是很的效的,这段代码可以放在任意位置,如在VC++中:
NTSTATUS DriverEntry()
{
//随便位置写入即可
}
测试后就会出现下面这种情况了。。。 在 IDA 的 function 竟然找不到加入花代码的 Hook 函数了,见图1:
经过查找后,原来在这里,见图2:
然后 F5 试试看看可不可以把这段汇编代码转换成C代码?见图3:
哈哈。。。爽,达到我们的要求了,虽然人家还是可以看你的反汇编代码,但是总比人家直接看C代码好的多了。这招对付一些没有真本事,但又想偷学他人代码的人很有效哈。。。
457



被折叠的 条评论
为什么被折叠?



