首页
社区
课程
招聘
KCTF2021 第二题 南冥神功 wp
发表于: 2021-5-12 10:08 5183

KCTF2021 第二题 南冥神功 wp

2021-5-12 10:08
5183

迷宫 、 深度优先搜索

其中v10是求解关键,即走图path

根据深度优先搜索对每一个可能的分支路径深入到不能再深入为止,而且每个节点只能访问一次即获得路径
path坐标

path[]

根据path可以逆推出falg

图片描述

图片描述

sub_4AF840((int)&dword_4B8860, "Input your code: ");
sub_4B0AB0((int)&dword_4B8680, v25);
if ( strlen(v25) <= 48 )
sub_4AF840((int)&dword_4B8860, "Input your code: ");
sub_4B0AB0((int)&dword_4B8680, v25);
if ( strlen(v25) <= 48 )
v13 = &aS_1[10 * v21 + v9];
 
aS_1
 
S010010011
1100100100
0010111110
0110100100
0010010011
1101110101
0011110101
0110010101
0001001100
v13 = &aS_1[10 * v21 + v9];
 
aS_1
 
S010010011
1100100100
0010111110
0110100100
0010010011
1101110101
0011110101
0110010101
0001001100
v7 = (v4 + v5 / 6) % 6;
v8 = v5 + v4;
v9 = v22;
v20 = v7;
v10 = 5 - v8 % 6;
for ( i = 0; ; i = 1 )
{
  switch ( v10 )
  {
    case 1:
      ++v9;
      break;
    case 2:
      v17 = (v21++ & 1) == 0;
      v9 += v17;
      break;
    case 3:
      v12 = (v21++ & 1) != 0;
      v9 -= v12;
      break;
    case 4:
      --v9;
      break;
    case 5:
      v19 = (v21-- & 1) != 0;
      v9 -= v19;
      break;
    default:
      v18 = (v21-- & 1) == 0;
      v9 += v18;
      break;
  }
  if ( v9 > 9 )
    break;
  if ( v21 > 8 )
    break;
v7 = (v4 + v5 / 6) % 6;
v8 = v5 + v4;
v9 = v22;
v20 = v7;
v10 = 5 - v8 % 6;
for ( i = 0; ; i = 1 )
{
  switch ( v10 )
  {
    case 1:
      ++v9;
      break;
    case 2:
      v17 = (v21++ & 1) == 0;
      v9 += v17;
      break;
    case 3:
      v12 = (v21++ & 1) != 0;
      v9 -= v12;
      break;
    case 4:
      --v9;
      break;
    case 5:
      v19 = (v21-- & 1) != 0;
      v9 -= v19;
      break;
    default:
      v18 = (v21-- & 1) == 0;
      v9 += v18;
      break;
  }

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 2
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//