标签:极客 .. esp int v11 virus 2020 v6 ebp
迷宫题
题目逻辑:
1.以4个 - 分割了5段内容。xxx-xxx-xxx-xxx-xxx 第一段为进入迷宫的顺序,之后的段为迷宫的行走路线
2.根据题目的内容,可以判断出进入迷宫的顺序。直接确定顺序和flag
题目详情如下
int __cdecl main(int argc, const char **argv, const char **envp)
{
int v3; // eax
_DWORD v5[10]; // [esp+14h] [ebp-4Ch]
_DWORD v6[4]; // [esp+3Ch] [ebp-24h]
int v7; // [esp+4Ch] [ebp-14h]
size_t v8; // [esp+50h] [ebp-10h]
int v9; // [esp+54h] [ebp-Ch]
int i; // [esp+58h] [ebp-8h]
int v11; // [esp+5Ch] [ebp-4h]
__main();
puts("There is a long way to defeat it.");
scanf("%s", flag);
v9 = strlen(flag);
v6[0] = 0;
v6[1] = 0;
v6[2] = 0;
v6[3] = 0;
v7 = 0;
v11 = 0;
v8 = 0;
for ( i = 0; i < v9; ++i ) // 该循环包括:
// 1.确定 - 的索引
// 2.限制v5(迷宫进入顺序的值)为0-9
{
if ( flag[i] == '-' )
{
v3 = v11++; // v11会+1
v6[v3] = i; // 将每个索引保存到v6
}
if ( !v11 ) // 当v11不为0时,即第1次遇到v11时,获得v5的值
{
v5[i] = flag[i] - 48;
if ( (int)v5[i] > 9 || (int)v5[i] < 0 ) // 限制范围在0-9 这里其实就是字符串的‘0’-‘9’
return 0;
}
}
if ( v11 != 4 ) // 要有4个'-'
return 0;
v7 = v9;
for ( i = 1; i <= v11; ++i )
{
v8 = v6[i] - v6[i - 1] - 1; // 计算4个-之间的距离,就是走迷宫的步数
// 根据这个step里的次序和步数,我们直接确定迷宫的次序,是4312
if ( step[i] != v8 ) // 0x13 0x19 0x1A 0x1C
return 0;
strncpy(&road[200 * i], &flag[v6[i - 1] + 1], v8);
}
for ( i = 0; i <= 3; ++i ) // 确定flag,里边有swad的方向以及d为中点,.为路线的说明
{
if ( check_flag((int)&global_map + 200 * v5[i], v5[i], &road[200 * i + 200]) )
{
puts("How about try again?");
return 0;
}
if ( i == 3 )
printf("Great! We will defeat it!!! your flag is flag{%s}", flag);
}
return 0;
}
搜索字符串得到迷宫图,根据迷宫图:
|||||||||||||||
|||||||||||||||
|||||||||||||||
||s.........|||
|||||||||||.|||
||d||||||||.|||
||.||||||||.|||
||.||||||||.|||
||..........|||
|||||||||||||||
|||||||||||||||||||
||s|||||||||||||d||
||..|||||||||||..||
|||..|||||||||..|||
||||..|||||||..||||
|||||..|||||..|||||
||||||..|||..||||||
|||||||..|..|||||||
||||||||...||||||||
|||||||||||||||||||
|||||||||||||||
||.........s|||
||.||||||||||||
||.||||||||||||
||.||||||||||||
||.||||||||||||
||.||||||||||||
||.||||||||||||
||.........d|||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||..........||
|||.||||||||.||
|||.||||||||.||
|||.||||||||.||
|||.||||||||.||
|||s||||||||d||
|||||||||||||||
得到 flag{4312-wwwwwdddddddddsssss-aaaaaaaaasssssssddddddddd-dddddddddsssssaaaaaaaaawww-sdsdsdsdsdsdsddwdwdwdwdwdwdw}
标签:极客,..,esp,int,v11,virus,2020,v6,ebp 来源: https://blog.csdn.net/lhk124/article/details/112719086
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。