无趣的浅 2022-06-22 11:03 采纳率: 50%
浏览 45
已结题

CTF的逆向IDA反汇编之后代码

IDA反汇编之后的代码,求解释
求解跳过v12内行的if验证

img

 v17[0] = 20;
  v18 = 0i64;
  v17[1] = 20;
  v17[2] = 37;
  v17[3] = 4;
  sub_EB1010(&Format, v3);
  v5 = std::istream::operator>>(std::cin, &v18);
  std::istream::operator>>(v5, v14);
  v6 = HIDWORD(v18);
  v7 = 0;
  v8 = HIDWORD(v18);
  v9 = v18;
  v16 = 32;
  do
  {
    v10 = ((v7 - 1640531527) >> 2) & 3;
    v9 += (((v7 - 1640531527) ^ v6) + (v6 ^ v17[v10])) ^ (((16 * v6) ^ (v6 >> 3)) + ((v8 >> 5) ^ (4 * v6)));
    v7 -= 1640531527;
    v6 += ((v7 ^ v9) + (v9 ^ v17[v10 ^ 1])) ^ (((16 * v9) ^ (v9 >> 3)) + ((v9 >> 5) ^ (4 * v9)));
    v11 = v16-- == 1;
    v8 = v6;
  }
  while ( !v11 );
  v18 = __PAIR64__(v6, v9);
  // 9
  if ( v9 != -1416191457 || (v12 = "Sucess,This is ture token!!!\n", v6 != 1570219490) )
    // /
    v12 = "Error,This is false token!!!\n";     // /
  sub_EB1010(v12, v15);
  getchar();
  return 0;
}

  • 写回答

1条回答 默认 最新

  • 赵4老师 2022-06-22 11:23
    关注

    if ( v9 != -1416191457 || (v12 = "Sucess,This is ture token!!!\n", v6 != 1570219490) )
    改为
    if ( v9 = -1416191457 || (v12 = "Sucess,This is ture token!!!\n", v6 != 1570219490) )

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 7月3日
  • 已采纳回答 6月25日
  • 创建了问题 6月22日

悬赏问题

  • ¥20 求数据集和代码#有偿答复
  • ¥15 关于下拉菜单选项关联的问题
  • ¥20 java-OJ-健康体检
  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R