首页 > 其他分享 >[HDCTF2019]Maze

[HDCTF2019]Maze

时间:2024-10-27 22:43:20浏览次数:8  
标签:end HDCTF2019 width length maze Maze

[HDCTF2019]Maze

去壳

image-20241027223938791

去upx壳

upx -d maze_behind_junk.exe

去花

image-20241027224225796

对main_按U取消定义函数,按P重新分析函数

分析

image-20241027224336140

很简洁的迷宫程序

image-20241027224409331

(5,-4)应该就是终点

image-20241027224448130

点进汇编界面,可以看到疑似地图的字符串

+应该是起点,F是终点

编写脚本求地图长宽

maze = '*******+********* ******    ****   ******* **F******    **************'
end = maze.index('F')
end_x = 5
end_y = 4
width = (end - end_x) // end_y
length = len(maze) // width
for i in range(length):
    print(maze[(width*i):(width*(i+1))])

需要一点想象力才能看懂这个width怎么求的,其实就是找到一排中的第x位减去x就能得到长 * 宽的一个数了

得到地图:

image-20241027225103204

flag{ssaaasaassdddw}

标签:end,HDCTF2019,width,length,maze,Maze
From: https://www.cnblogs.com/murasame520/p/18509188

相关文章

  • P9351 [JOI 2023 Final] Maze 题解
    Description给定一张\(R\timesC\)的地图,其中.可以走,而#不能走。一次操作可以将\(N\timesN\)的正方形范围内所有点变成.,给定起点和终点,求最少需要几次操作使得起点和终点连通(只能上下左右移动)。\(R\timesC\le6\times10^6\),\(N\leR\leC\)。Solution先考虑怎么......
  • 10.16 CW 模拟赛 D. 迷宫(maze)
    题面传统T4找不到原题挂个pdf题面下载算法不容易想到把出发点,有被困同伴的人称作关键点那么只需要求出关键点之间,关键点到任意一个终点的最短距离,然后在搜索即可求解dijkstra算法求单源最短路\(n>10^3\),显然会T飞dijkstra算法求单源最短路\(\mathcal{O......
  • 2024牛客多校第一场 - Mirror Maze
    题目大意:一个由四种镜面(|-/\)组成的矩阵,根据镜面的方向反射光线。问坐标\((x,y)\)处向某方向射入一束光线后(此光线会直接穿过此位置\((x,y)\)的镜面),一共会反射(直接穿过的不算)到多少个不同(一个坐标算一个镜面)的镜面。总体思路为预处理出每一个坐标向每一个位置发射光线的答......
  • [HDCTF2019]MFC
    第一次遇到mfc类的题目,写个blog记录一下首先了解一下什么是mfc,百度百科上是这么写的:MFC(MicrosoftFoundationClasses),是微软公司提供的一个类库(classlibraries),以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大......
  • 【Pwn】(未解决)maze - writeup
    1.运行函数,收集字符串获取关键词字符串:luck2.寻找字符串引用代码3.生成伪代码4.获得main函数的C语言代码5.分析程序逻辑check函数:main函数int__fastcallmain(intargc,constchar**argv,constchar**envp){ unsignedintv3;//edx charv5;//[r......
  • 2024牛客暑期多校训练营1 I.Mirror Maze(题解)
    题意给一个\(n\timesm\)的二维char数组,由4种镜子组成,'\','/','-','|',镜面反射规则就是根据光线的方向和镜面的角度符合直觉的反射,然后有多组询问\(q\leq10^6\),每次给定起始位置和光线方向,求该光会经过多少面不同的镜子的反射。思路首先根据数据范围,发现肯定需要预处......
  • [ABC176D] Wizard in Maze
    题目链接:https://atcoder.jp/contests/abc176/tasks/abc176_d双端队列bfs模版题.众所周知,用队列实现bfs,队列中存的是当前的状态那么在当前这种题目中,下一步怎么走有两种决策,我们要把两种决策可能导致的状态更新全部都记录下来,因此我们可以用双端队列来实现bfs,把正常走的......
  • Q-learning 玩maze游戏
     importpygameimportnumpyasnpimportrandomimportsys#定义迷宫环境classMaze:def__init__(self):self.size=10self.maze=np.zeros((self.size,self.size))self.start=(0,0)self.goal=(9,9)self.m......
  • 八臂迷宫实验(Eight-arm Maze Test,RMT)——KT-0854
    八臂迷宫实验是一种常用的行为学测试方法,用于评估动物的空间学习和记忆能力。该实验装置由八个相同的臂组成,这些臂从中心点平台放射出来,形成一个放射迷宫结构。动物在迷宫内接受训练,通过食物的驱使来探究各臂,进而记住食物在迷宫中的空间位置。这种方法不仅可以评估动物的工作记......
  • 洛谷题单指南-搜索-P1825 [USACO11OPEN] Corn Maze S
    原题链接:https://www.luogu.com.cn/problem/P1825题意解读:计算最短路,依然是BFS。解题思路:相比传统的最短路迷宫,多了个传输装置,要解决几个关键问题:1、传输装置的存储定义一个数组,vector<node>trans[30],数据的每个元素都是一个vector<node>,里面存两个节点,即一对坐标2、传输......