{"componentChunkName":"component---src-templates-post-template-js","path":"/ctf-dvctf-2022-en","result":{"data":{"markdownRemark":{"id":"01058cc6-1e84-542c-ac01-431ed3ac2038","html":"<blockquote>\n<p>This page has been machine-translated from the <a href=\"/ctf-dvctf-2022\">original page</a>.</p>\n</blockquote>\n<p>I participated in <a href=\"https://dvc.tf/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">dvCTF</a>, which started on 3/12, so I wrote a brief writeup.</p>\n<h2 id=\"mini-gamerev\" style=\"position:relative;\"><a href=\"#mini-gamerev\" aria-label=\"mini gamerev permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Mini Game(Rev)</h2>\n<p>I tried to run the downloaded file, but it failed with a <code class=\"language-text\">no such file or directory</code> error.</p>\n<p>According to the following article, binaries built on <code class=\"language-text\">alpine</code> may fail to run on <code class=\"language-text\">glibc</code>-based distributions such as Ubuntu because the required libraries are not available.</p>\n<p>Reference: <a href=\"https://qiita.com/hrkt/items/6a2169b021e756eb32e2\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">When a binary says “no such file or directory”—common pitfalls when running binaries built on Alpine on other Linux distros - Qiita</a></p>\n<p>So I installed <code class=\"language-text\">musl libc</code> with the following command.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token function\">sudo</span> <span class=\"token function\">apt</span> <span class=\"token function\">install</span> musl-dev</code></pre></div>\n<p>This allowed me to run the binary.</p>\n<p>Next, I decompiled it with Ghidra.</p>\n<p>For dynamic analysis, I changed Ghidra’s image base to <code class=\"language-text\">0x555555554000</code>.</p>\n<p>Below is an excerpt from the decompiled <code class=\"language-text\">main</code> function.</p>\n<div class=\"gatsby-highlight\" data-language=\"c\"><pre class=\"language-c\"><code class=\"language-c\"><span class=\"token comment\">// main関数</span>\n<span class=\"token function\">check_input</span><span class=\"token punctuation\">(</span>input_text<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token keyword\">for</span> <span class=\"token punctuation\">(</span>i <span class=\"token operator\">=</span> <span class=\"token number\">0</span><span class=\"token punctuation\">;</span> i <span class=\"token operator\">&lt;</span> <span class=\"token number\">0xac</span><span class=\"token punctuation\">;</span> i <span class=\"token operator\">=</span> i <span class=\"token operator\">+</span> <span class=\"token number\">1</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\niVar1 <span class=\"token operator\">=</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token operator\">&amp;</span>DAT_555555558420 <span class=\"token operator\">+</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>i <span class=\"token operator\">*</span> <span class=\"token number\">4</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token function\">change_value</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">/</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span><span class=\"token number\">0xe</span> <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">,</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">%</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span><span class=\"token number\">0xe</span> <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">,</span>\n                <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">%</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span><span class=\"token number\">0xe</span> <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span>\niVar1 <span class=\"token operator\">=</span> is_clear<span class=\"token operator\">?</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<p>The function names were renamed manually.</p>\n<p>When I looked at the <code class=\"language-text\">is_clear</code> function, which ultimately determines whether you get the flag, it looked like this.</p>\n<p><span\n      class=\"gatsby-resp-image-wrapper\"\n      style=\"position: relative; display: block; margin-left: auto; margin-right: auto; max-width: 644px; \"\n    >\n      <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/9d704f9817b6811e57b88a49d2206d71/78274/image-20220314233543897.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n    <span\n    class=\"gatsby-resp-image-background-image\"\n    style=\"padding-bottom: 58.333333333333336%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAMCAYAAABiDJ37AAAACXBIWXMAAAsTAAALEwEAmpwYAAABPklEQVQoz52T63KDIBCFff/H6fP0R2+5KooKIrBweqQxk6bNTJKdOaOu+HGWXSulgd7UGI4v0M0rRgPknLBEzhmPRpVSQkqRWlP5aVgBtnqAMV/w3p1Bqy6f7waKWMTo6VD+vLwEXW50vekvYKdHGLozIWCOUuAxOiqW4m+BbqnSvWBz9NBuhluAYSZsKsB7ozg9ma2sJcRbJJkgEuEDr3QYeN97j8EHTHQfo0EI7uTeIsRAxTNoBVfznHE4KBzqEfumxptu8TlodJPF7jjgfdtylDYYLdcMO9TKYruvMY4fzHfMG6hRYdNu4SaHKqeMphF0vecZUpKKoggdJSqwYR7CpoW0VLDkOGYyl4qE6/zyXfA/DoUvgHUI09Pzd+6yanq0WqHj3zK7oeyUrmbwoS7zbFkeS1zmMP8/g4/EN1alsc1t6g9kAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n  ></span>\n  <picture>\n          <source\n              srcset=\"/static/9d704f9817b6811e57b88a49d2206d71/8ac56/image-20220314233543897.webp 240w,\n/static/9d704f9817b6811e57b88a49d2206d71/d3be9/image-20220314233543897.webp 480w,\n/static/9d704f9817b6811e57b88a49d2206d71/f847d/image-20220314233543897.webp 644w\"\n              sizes=\"(max-width: 644px) 100vw, 644px\"\n              type=\"image/webp\"\n            />\n          <source\n            srcset=\"/static/9d704f9817b6811e57b88a49d2206d71/8ff5a/image-20220314233543897.png 240w,\n/static/9d704f9817b6811e57b88a49d2206d71/e85cb/image-20220314233543897.png 480w,\n/static/9d704f9817b6811e57b88a49d2206d71/78274/image-20220314233543897.png 644w\"\n            sizes=\"(max-width: 644px) 100vw, 644px\"\n            type=\"image/png\"\n          />\n          <img\n            class=\"gatsby-resp-image-image\"\n            src=\"/static/9d704f9817b6811e57b88a49d2206d71/78274/image-20220314233543897.png\"\n            alt=\"image-20220314233543897\"\n            title=\"image-20220314233543897\"\n            loading=\"lazy\"\n            style=\"width:100%;height:100%;margin:0;vertical-align:middle;position:absolute;top:0;left:0;\"\n          />\n        </picture>\n  </a>\n    </span></p>\n<p>Since <code class=\"language-text\">DAT_0010409c</code> stores <code class=\"language-text\">0xe</code>, the code above appears to check the values in <code class=\"language-text\">DAT_555555558100</code> 196 times (<code class=\"language-text\">0xe * 0xe</code>), four bytes at a time from the beginning. You only get the flag if all of those values are either <code class=\"language-text\">0x2d</code> or <code class=\"language-text\">0x2a</code>.</p>\n<p>However, user input cannot manipulate the values in <code class=\"language-text\">DAT_555555558100</code> directly.</p>\n<p>Tracing backward through the <code class=\"language-text\">main</code> function, I found the following code where the user’s input changes the values in <code class=\"language-text\">DAT_555555558420</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"c\"><pre class=\"language-c\"><code class=\"language-c\"><span class=\"token keyword\">for</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">;</span> <span class=\"token punctuation\">(</span>pcVar2 <span class=\"token operator\">=</span> token<span class=\"token punctuation\">,</span> token <span class=\"token operator\">!=</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">char</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token number\">0x0</span> <span class=\"token operator\">&amp;&amp;</span> <span class=\"token punctuation\">(</span>i <span class=\"token operator\">&lt;</span> <span class=\"token number\">0xac</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span> i <span class=\"token operator\">=</span> i <span class=\"token operator\">+</span> <span class=\"token number\">1</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token operator\">*</span><span class=\"token punctuation\">(</span>undefined8 <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span>acStack120 <span class=\"token operator\">+</span> lVar1 <span class=\"token operator\">+</span> <span class=\"token operator\">-</span><span class=\"token number\">8</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=</span> <span class=\"token number\">0x5555555559d2</span><span class=\"token punctuation\">;</span>\n    iVar3 <span class=\"token operator\">=</span> <span class=\"token function\">atoi</span><span class=\"token punctuation\">(</span>pcVar2<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token operator\">*</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token operator\">&amp;</span>DAT_555555558420 <span class=\"token operator\">+</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>i <span class=\"token operator\">*</span> <span class=\"token number\">4</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=</span> iVar3<span class=\"token punctuation\">;</span>\n    <span class=\"token operator\">*</span><span class=\"token punctuation\">(</span>undefined8 <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span>acStack120 <span class=\"token operator\">+</span> lVar1 <span class=\"token operator\">+</span> <span class=\"token operator\">-</span><span class=\"token number\">8</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=</span> <span class=\"token number\">0x5555555559fe</span><span class=\"token punctuation\">;</span>\n    token <span class=\"token operator\">=</span> <span class=\"token function\">strtok</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">char</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token number\">0x0</span><span class=\"token punctuation\">,</span><span class=\"token string\">\";\"</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>In the code above, the input is split on <code class=\"language-text\">;</code>, and up to <code class=\"language-text\">0xac</code> values are checked.</p>\n<p>It then stores those <code class=\"language-text\">;</code>-separated numbers as 4-byte integers, sequentially, in the first <code class=\"language-text\">0xac</code> entries of <code class=\"language-text\">DAT_555555558420</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"c\"><pre class=\"language-c\"><code class=\"language-c\"><span class=\"token keyword\">for</span> <span class=\"token punctuation\">(</span>i <span class=\"token operator\">=</span> <span class=\"token number\">0</span><span class=\"token punctuation\">;</span> i <span class=\"token operator\">&lt;</span> <span class=\"token number\">0xac</span><span class=\"token punctuation\">;</span> i <span class=\"token operator\">=</span> i <span class=\"token operator\">+</span> <span class=\"token number\">1</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    iVar1 <span class=\"token operator\">=</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token operator\">&amp;</span>DAT_555555558420 <span class=\"token operator\">+</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>i <span class=\"token operator\">*</span> <span class=\"token number\">4</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token function\">change_value</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">/</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span><span class=\"token number\">0xe</span> <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">,</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">%</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span><span class=\"token number\">0xe</span> <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">,</span>\n                    <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">%</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span><span class=\"token number\">0xe</span> <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>The values stored in this <code class=\"language-text\">DAT_555555558420</code> region can then indirectly rewrite <code class=\"language-text\">DAT_555555558100</code> through the following code.</p>\n<div class=\"gatsby-highlight\" data-language=\"c\"><pre class=\"language-c\"><code class=\"language-c\"><span class=\"token keyword\">for</span> <span class=\"token punctuation\">(</span>local_c <span class=\"token operator\">=</span> <span class=\"token number\">0</span><span class=\"token punctuation\">;</span> local_c <span class=\"token operator\">&lt;</span> <span class=\"token number\">0xac</span><span class=\"token punctuation\">;</span> local_c <span class=\"token operator\">=</span> local_c <span class=\"token operator\">+</span> <span class=\"token number\">1</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  iVar1 <span class=\"token operator\">=</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token operator\">&amp;</span>DAT_00104420 <span class=\"token operator\">+</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>local_c <span class=\"token operator\">*</span> <span class=\"token number\">4</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n  <span class=\"token function\">FUN_00101a29</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">/</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>DAT_00104098 <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">,</span>\n               <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">%</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>DAT_0010409c <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">,</span>\n               <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>iVar1 <span class=\"token operator\">%</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>DAT_00104098 <span class=\"token operator\">&amp;</span> <span class=\"token number\">0xffffffff</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>In this code, the <code class=\"language-text\">DAT_00104420</code> region is traversed <code class=\"language-text\">0xac</code> times in 4-byte steps, and transformed versions of those values are passed into <code class=\"language-text\">FUN_00101a29</code>.</p>\n<p>Inside <code class=\"language-text\">FUN_00101a29</code>, as shown below, the address in <code class=\"language-text\">DAT_555555558100</code> indicated by the incoming values is rewritten to <code class=\"language-text\">0x2d</code> only if it is not already <code class=\"language-text\">0x2a</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"c\"><pre class=\"language-c\"><code class=\"language-c\"><span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token operator\">-</span><span class=\"token number\">1</span> <span class=\"token operator\">&lt;</span> div<span class=\"token punctuation\">)</span> <span class=\"token operator\">&amp;&amp;</span> <span class=\"token punctuation\">(</span>div <span class=\"token operator\">&lt;</span> <span class=\"token number\">0xe</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">&amp;&amp;</span> <span class=\"token punctuation\">(</span><span class=\"token operator\">-</span><span class=\"token number\">1</span> <span class=\"token operator\">&lt;</span> mod<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">&amp;&amp;</span> <span class=\"token punctuation\">(</span>mod <span class=\"token operator\">&lt;</span> <span class=\"token number\">0xe</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token keyword\">if</span> <span class=\"token punctuation\">(</span><span class=\"token operator\">*</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">int</span> <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token operator\">&amp;</span>DAT_555555558100 <span class=\"token operator\">+</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>div <span class=\"token operator\">*</span> <span class=\"token number\">0xe</span> <span class=\"token operator\">+</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>mod<span class=\"token punctuation\">)</span> <span class=\"token operator\">*</span> <span class=\"token number\">4</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">==</span> <span class=\"token number\">0x2a</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token function\">BOOM</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n    <span class=\"token keyword\">else</span> <span class=\"token punctuation\">{</span>\n        <span class=\"token operator\">*</span><span class=\"token punctuation\">(</span>undefined4 <span class=\"token operator\">*</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">(</span><span class=\"token operator\">&amp;</span>DAT_555555558100 <span class=\"token operator\">+</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>div <span class=\"token operator\">*</span> <span class=\"token number\">0xe</span> <span class=\"token operator\">+</span> <span class=\"token punctuation\">(</span><span class=\"token keyword\">long</span><span class=\"token punctuation\">)</span>mod<span class=\"token punctuation\">)</span> <span class=\"token operator\">*</span> <span class=\"token number\">4</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">=</span> <span class=\"token number\">0x2d</span><span class=\"token punctuation\">;</span>\n    <span class=\"token punctuation\">}</span>\n    <span class=\"token keyword\">return</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>At initialization, the contents of <code class=\"language-text\">0x555555558100</code> looked like this.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ x/197w 0x555555558100\n0x555555558100: 0x0000002d      0x00000001      0x00000001      0x00000000\n0x555555558110: 0x00000001      0x00000001      0x00000001      0x00000001\n0x555555558120: 0x00000001      0x00000001      0x00000001      0x00000001\n0x555555558130: 0x00000001      0x00000000      0x00000001      0x0000002a\n0x555555558140: 0x00000001      0x00000000      0x00000001      0x0000002a\n0x555555558150: 0x00000001      0x00000001      0x0000002a      0x00000001\n0x555555558160: 0x00000001      0x0000002a      0x00000001      0x00000000\n0x555555558170: 0x00000001      0x00000002      0x00000002      0x00000002</code></pre></div>\n<p>From there, if you extract every address other than the ones that originally contain <code class=\"language-text\">0x2a</code> and <code class=\"language-text\">0x2d</code>, then pass their relative offsets joined with <code class=\"language-text\">;</code> as the input, all 196 four-byte entries in <code class=\"language-text\">0x555555558100</code> become either <code class=\"language-text\">0x2a</code> or <code class=\"language-text\">0x2d</code>. That clears the check and gives you the flag.</p>\n<p>The final input that produced the flag was as follows.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token number\">0</span><span class=\"token punctuation\">;</span><span class=\"token number\">1</span><span class=\"token punctuation\">;</span><span class=\"token number\">2</span><span class=\"token punctuation\">;</span><span class=\"token number\">3</span><span class=\"token punctuation\">;</span><span class=\"token number\">4</span><span class=\"token punctuation\">;</span><span class=\"token number\">5</span><span class=\"token punctuation\">;</span><span class=\"token number\">6</span><span class=\"token punctuation\">;</span><span class=\"token number\">7</span><span class=\"token punctuation\">;</span><span class=\"token number\">8</span><span class=\"token punctuation\">;</span><span class=\"token number\">9</span><span class=\"token punctuation\">;</span><span class=\"token number\">10</span><span class=\"token punctuation\">;</span><span class=\"token number\">11</span><span class=\"token punctuation\">;</span><span class=\"token number\">12</span><span class=\"token punctuation\">;</span><span class=\"token number\">13</span><span class=\"token punctuation\">;</span><span class=\"token number\">14</span><span class=\"token punctuation\">;</span><span class=\"token number\">172</span><span class=\"token punctuation\">;</span><span class=\"token number\">16</span><span class=\"token punctuation\">;</span><span class=\"token number\">17</span><span class=\"token punctuation\">;</span><span class=\"token number\">18</span><span class=\"token punctuation\">;</span><span class=\"token number\">173</span><span class=\"token punctuation\">;</span><span class=\"token number\">20</span><span class=\"token punctuation\">;</span><span class=\"token number\">21</span><span class=\"token punctuation\">;</span><span class=\"token number\">174</span><span class=\"token punctuation\">;</span><span class=\"token number\">23</span><span class=\"token punctuation\">;</span><span class=\"token number\">24</span><span class=\"token punctuation\">;</span><span class=\"token number\">175</span><span class=\"token punctuation\">;</span><span class=\"token number\">26</span><span class=\"token punctuation\">;</span><span class=\"token number\">27</span><span class=\"token punctuation\">;</span><span class=\"token number\">28</span><span class=\"token punctuation\">;</span><span class=\"token number\">29</span><span class=\"token punctuation\">;</span><span class=\"token number\">30</span><span class=\"token punctuation\">;</span><span class=\"token number\">31</span><span class=\"token punctuation\">;</span><span class=\"token number\">32</span><span class=\"token punctuation\">;</span><span class=\"token number\">33</span><span class=\"token punctuation\">;</span><span class=\"token number\">34</span><span class=\"token punctuation\">;</span><span class=\"token number\">35</span><span class=\"token punctuation\">;</span><span class=\"token number\">36</span><span class=\"token punctuation\">;</span><span class=\"token number\">37</span><span class=\"token punctuation\">;</span><span class=\"token number\">38</span><span class=\"token punctuation\">;</span><span class=\"token number\">39</span><span class=\"token punctuation\">;</span><span class=\"token number\">40</span><span class=\"token punctuation\">;</span><span class=\"token number\">41</span><span class=\"token punctuation\">;</span><span class=\"token number\">42</span><span class=\"token punctuation\">;</span><span class=\"token number\">43</span><span class=\"token punctuation\">;</span><span class=\"token number\">177</span><span class=\"token punctuation\">;</span><span class=\"token number\">45</span><span class=\"token punctuation\">;</span><span class=\"token number\">178</span><span class=\"token punctuation\">;</span><span class=\"token number\">47</span><span class=\"token punctuation\">;</span><span class=\"token number\">48</span><span class=\"token punctuation\">;</span><span class=\"token number\">49</span><span class=\"token punctuation\">;</span><span class=\"token number\">179</span><span class=\"token punctuation\">;</span><span class=\"token number\">51</span><span class=\"token punctuation\">;</span><span class=\"token number\">52</span><span class=\"token punctuation\">;</span><span class=\"token number\">53</span><span class=\"token punctuation\">;</span><span class=\"token number\">180</span><span class=\"token punctuation\">;</span><span class=\"token number\">55</span><span class=\"token punctuation\">;</span><span class=\"token number\">56</span><span class=\"token punctuation\">;</span><span class=\"token number\">57</span><span class=\"token punctuation\">;</span><span class=\"token number\">58</span><span class=\"token punctuation\">;</span><span class=\"token number\">181</span><span class=\"token punctuation\">;</span><span class=\"token number\">60</span><span class=\"token punctuation\">;</span><span class=\"token number\">61</span><span class=\"token punctuation\">;</span><span class=\"token number\">62</span><span class=\"token punctuation\">;</span><span class=\"token number\">63</span><span class=\"token punctuation\">;</span><span class=\"token number\">64</span><span class=\"token punctuation\">;</span><span class=\"token number\">65</span><span class=\"token punctuation\">;</span><span class=\"token number\">66</span><span class=\"token punctuation\">;</span><span class=\"token number\">67</span><span class=\"token punctuation\">;</span><span class=\"token number\">68</span><span class=\"token punctuation\">;</span><span class=\"token number\">69</span><span class=\"token punctuation\">;</span><span class=\"token number\">183</span><span class=\"token punctuation\">;</span><span class=\"token number\">71</span><span class=\"token punctuation\">;</span><span class=\"token number\">72</span><span class=\"token punctuation\">;</span><span class=\"token number\">73</span><span class=\"token punctuation\">;</span><span class=\"token number\">74</span><span class=\"token punctuation\">;</span><span class=\"token number\">75</span><span class=\"token punctuation\">;</span><span class=\"token number\">76</span><span class=\"token punctuation\">;</span><span class=\"token number\">185</span><span class=\"token punctuation\">;</span><span class=\"token number\">78</span><span class=\"token punctuation\">;</span><span class=\"token number\">79</span><span class=\"token punctuation\">;</span><span class=\"token number\">80</span><span class=\"token punctuation\">;</span><span class=\"token number\">81</span><span class=\"token punctuation\">;</span><span class=\"token number\">82</span><span class=\"token punctuation\">;</span><span class=\"token number\">83</span><span class=\"token punctuation\">;</span><span class=\"token number\">84</span><span class=\"token punctuation\">;</span><span class=\"token number\">85</span><span class=\"token punctuation\">;</span><span class=\"token number\">186</span><span class=\"token punctuation\">;</span><span class=\"token number\">87</span><span class=\"token punctuation\">;</span><span class=\"token number\">88</span><span class=\"token punctuation\">;</span><span class=\"token number\">89</span><span class=\"token punctuation\">;</span><span class=\"token number\">90</span><span class=\"token punctuation\">;</span><span class=\"token number\">91</span><span class=\"token punctuation\">;</span><span class=\"token number\">92</span><span class=\"token punctuation\">;</span><span class=\"token number\">93</span><span class=\"token punctuation\">;</span><span class=\"token number\">188</span><span class=\"token punctuation\">;</span><span class=\"token number\">95</span><span class=\"token punctuation\">;</span><span class=\"token number\">96</span><span class=\"token punctuation\">;</span><span class=\"token number\">97</span><span class=\"token punctuation\">;</span><span class=\"token number\">98</span><span class=\"token punctuation\">;</span><span class=\"token number\">99</span><span class=\"token punctuation\">;</span><span class=\"token number\">100</span><span class=\"token punctuation\">;</span><span class=\"token number\">189</span><span class=\"token punctuation\">;</span><span class=\"token number\">102</span><span class=\"token punctuation\">;</span><span class=\"token number\">103</span><span class=\"token punctuation\">;</span><span class=\"token number\">104</span><span class=\"token punctuation\">;</span><span class=\"token number\">105</span><span class=\"token punctuation\">;</span><span class=\"token number\">106</span><span class=\"token punctuation\">;</span><span class=\"token number\">107</span><span class=\"token punctuation\">;</span><span class=\"token number\">108</span><span class=\"token punctuation\">;</span><span class=\"token number\">109</span><span class=\"token punctuation\">;</span><span class=\"token number\">110</span><span class=\"token punctuation\">;</span><span class=\"token number\">190</span><span class=\"token punctuation\">;</span><span class=\"token number\">112</span><span class=\"token punctuation\">;</span><span class=\"token number\">113</span><span class=\"token punctuation\">;</span><span class=\"token number\">114</span><span class=\"token punctuation\">;</span><span class=\"token number\">191</span><span class=\"token punctuation\">;</span><span class=\"token number\">116</span><span class=\"token punctuation\">;</span><span class=\"token number\">117</span><span class=\"token punctuation\">;</span><span class=\"token number\">118</span><span class=\"token punctuation\">;</span><span class=\"token number\">119</span><span class=\"token punctuation\">;</span><span class=\"token number\">120</span><span class=\"token punctuation\">;</span><span class=\"token number\">121</span><span class=\"token punctuation\">;</span><span class=\"token number\">122</span><span class=\"token punctuation\">;</span><span class=\"token number\">192</span><span class=\"token punctuation\">;</span><span class=\"token number\">124</span><span class=\"token punctuation\">;</span><span class=\"token number\">125</span><span class=\"token punctuation\">;</span><span class=\"token number\">126</span><span class=\"token punctuation\">;</span><span class=\"token number\">127</span><span class=\"token punctuation\">;</span><span class=\"token number\">128</span><span class=\"token punctuation\">;</span><span class=\"token number\">129</span><span class=\"token punctuation\">;</span><span class=\"token number\">130</span><span class=\"token punctuation\">;</span><span class=\"token number\">131</span><span class=\"token punctuation\">;</span><span class=\"token number\">132</span><span class=\"token punctuation\">;</span><span class=\"token number\">133</span><span class=\"token punctuation\">;</span><span class=\"token number\">134</span><span class=\"token punctuation\">;</span><span class=\"token number\">135</span><span class=\"token punctuation\">;</span><span class=\"token number\">136</span><span class=\"token punctuation\">;</span><span class=\"token number\">137</span><span class=\"token punctuation\">;</span><span class=\"token number\">138</span><span class=\"token punctuation\">;</span><span class=\"token number\">139</span><span class=\"token punctuation\">;</span><span class=\"token number\">140</span><span class=\"token punctuation\">;</span><span class=\"token number\">141</span><span class=\"token punctuation\">;</span><span class=\"token number\">193</span><span class=\"token punctuation\">;</span><span class=\"token number\">143</span><span class=\"token punctuation\">;</span><span class=\"token number\">144</span><span class=\"token punctuation\">;</span><span class=\"token number\">145</span><span class=\"token punctuation\">;</span><span class=\"token number\">194</span><span class=\"token punctuation\">;</span><span class=\"token number\">147</span><span class=\"token punctuation\">;</span><span class=\"token number\">148</span><span class=\"token punctuation\">;</span><span class=\"token number\">149</span><span class=\"token punctuation\">;</span><span class=\"token number\">150</span><span class=\"token punctuation\">;</span><span class=\"token number\">151</span><span class=\"token punctuation\">;</span><span class=\"token number\">152</span><span class=\"token punctuation\">;</span><span class=\"token number\">153</span><span class=\"token punctuation\">;</span><span class=\"token number\">154</span><span class=\"token punctuation\">;</span><span class=\"token number\">155</span><span class=\"token punctuation\">;</span><span class=\"token number\">156</span><span class=\"token punctuation\">;</span><span class=\"token number\">157</span><span class=\"token punctuation\">;</span><span class=\"token number\">158</span><span class=\"token punctuation\">;</span><span class=\"token number\">159</span><span class=\"token punctuation\">;</span><span class=\"token number\">160</span><span class=\"token punctuation\">;</span><span class=\"token number\">161</span><span class=\"token punctuation\">;</span><span class=\"token number\">195</span><span class=\"token punctuation\">;</span><span class=\"token number\">0</span><span class=\"token punctuation\">;</span><span class=\"token number\">164</span><span class=\"token punctuation\">;</span><span class=\"token number\">165</span><span class=\"token punctuation\">;</span><span class=\"token number\">166</span><span class=\"token punctuation\">;</span><span class=\"token number\">167</span><span class=\"token punctuation\">;</span><span class=\"token number\">168</span><span class=\"token punctuation\">;</span><span class=\"token number\">169</span><span class=\"token punctuation\">;</span><span class=\"token number\">170</span><span class=\"token punctuation\">;</span><span class=\"token number\">171</span></code></pre></div>\n<p>I generated this input with the following solver.</p>\n<div class=\"gatsby-highlight\" data-language=\"python\"><pre class=\"language-python\"><code class=\"language-python\">init_table <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000003</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000003</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000003</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000000</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span>\n            <span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000002</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">,</span><span class=\"token number\">0x00000001</span><span class=\"token punctuation\">]</span>\n\narr <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span>\nother <span class=\"token operator\">=</span> <span class=\"token punctuation\">[</span><span class=\"token number\">172</span><span class=\"token punctuation\">,</span> <span class=\"token number\">173</span><span class=\"token punctuation\">,</span> <span class=\"token number\">174</span><span class=\"token punctuation\">,</span> <span class=\"token number\">175</span><span class=\"token punctuation\">,</span> <span class=\"token number\">177</span><span class=\"token punctuation\">,</span> <span class=\"token number\">178</span><span class=\"token punctuation\">,</span> <span class=\"token number\">179</span><span class=\"token punctuation\">,</span> <span class=\"token number\">180</span><span class=\"token punctuation\">,</span> <span class=\"token number\">181</span><span class=\"token punctuation\">,</span> <span class=\"token number\">183</span><span class=\"token punctuation\">,</span> \n        <span class=\"token number\">185</span><span class=\"token punctuation\">,</span> <span class=\"token number\">186</span><span class=\"token punctuation\">,</span> <span class=\"token number\">188</span><span class=\"token punctuation\">,</span> <span class=\"token number\">189</span><span class=\"token punctuation\">,</span> <span class=\"token number\">190</span><span class=\"token punctuation\">,</span> <span class=\"token number\">191</span><span class=\"token punctuation\">,</span> <span class=\"token number\">192</span><span class=\"token punctuation\">,</span> <span class=\"token number\">193</span><span class=\"token punctuation\">,</span> <span class=\"token number\">194</span><span class=\"token punctuation\">,</span> <span class=\"token number\">195</span><span class=\"token punctuation\">,</span> <span class=\"token number\">0</span><span class=\"token punctuation\">]</span>\nj <span class=\"token operator\">=</span> <span class=\"token number\">0</span>\n<span class=\"token keyword\">for</span> i<span class=\"token punctuation\">,</span> data <span class=\"token keyword\">in</span> <span class=\"token builtin\">enumerate</span><span class=\"token punctuation\">(</span>init_table<span class=\"token punctuation\">)</span><span class=\"token punctuation\">:</span>\n    <span class=\"token keyword\">if</span> data <span class=\"token operator\">!=</span> <span class=\"token number\">0x0000002a</span><span class=\"token punctuation\">:</span>\n        arr<span class=\"token punctuation\">.</span>append<span class=\"token punctuation\">(</span><span class=\"token builtin\">str</span><span class=\"token punctuation\">(</span>i<span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\n    <span class=\"token keyword\">else</span><span class=\"token punctuation\">:</span>\n        arr<span class=\"token punctuation\">.</span>append<span class=\"token punctuation\">(</span><span class=\"token builtin\">str</span><span class=\"token punctuation\">(</span>other<span class=\"token punctuation\">[</span>j<span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\n        j <span class=\"token operator\">+=</span> <span class=\"token number\">1</span>\n\nresult <span class=\"token operator\">=</span> <span class=\"token string\">\";\"</span><span class=\"token punctuation\">.</span>join<span class=\"token punctuation\">(</span>arr<span class=\"token punctuation\">)</span>\n<span class=\"token keyword\">print</span><span class=\"token punctuation\">(</span>result<span class=\"token punctuation\">)</span></code></pre></div>\n<h2 id=\"summary\" style=\"position:relative;\"><a href=\"#summary\" aria-label=\"summary permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Summary</h2>\n<p>Sorry this was a rough writeup.</p>","fields":{"slug":"/ctf-dvctf-2022-en","tagSlugs":["/tag/ctf-en/","/tag/reversing-en/","/tag/security-en/","/tag/english/"]},"frontmatter":{"date":"2022-03-13","description":"","tags":["CTF (en)","Reversing (en)","Security (en)","English"],"title":"dvCTF2022 Writeup Mini Game(Rev)","socialImage":{"publicURL":"/static/db8182bb3223098f6a09180d83855012/ctf-dvctf-2022.png"}}}},"pageContext":{"slug":"/ctf-dvctf-2022-en"}},"staticQueryHashes":["251939775","401334301","825871152"]}