[HZNUCTF 2023 final]虽然他送了我玫瑰花

打开界面看到爆红的代码

 浏览整个代码没有发现明显的call指令爆红,那就只能慢慢看了

发现一个地方出现永真跳转代码

 

 

这里的话直接给他nop掉就好了

然后在上面选中mian函数p键就好了

 

另外想讲一下的点是这几个函数都是可以分析的

 键入函数

 F5变为伪代码

 这里重点讲一下第五个函数

int __cdecl sub_4010C0(int a1)
{
  return a1 ^ ((unsigned __int8)a1 ^ (unsigned __int8)~(_BYTE)a1) & 0x80;
}

他的意思是

先查看运算符的优先级:~大于&大于^
举个例子:

~00000000=11111111
11111111^00000000=11111111
11111111&任意数=任意数

所以第五个函数最终的意思是:

a1^0x80

 

posted @ 2023-11-27 18:01  努力的大魔王  阅读(221)  评论(0)    收藏  举报