https://buuoj.cn/challenges#[GKCTF%202021]QQQQT Engima 壳,需要去壳 https://lifeinhex.com/ 32 打开 ida,主函数上面翻就是解密函数 inputp = input; v19 = (int)(input + 1); // 21 hits. Symbolic instruction if ( strlen(input) ) // 21 hits. Symbolic instruction { v4 = &v2[v20]; v17 = v4; while ( 1 ) { v19 = ((char)*v4 << 8) + inputp[v1]; // Symbolic instruction v5 = v19 / 58; *v4 = v19 % 58; if ( v5 ) { do { v6 = (char)*--v4; v7 = (v6 << 8) + v5; v19 = v7 / 58; *v4 = v7 % 58; v5 = v19; } while ( v19 ); v4 = v17; } if ( ++v1 >= strlen(input) ) break; inputp = input; } v2 = v21; } v8 = 0; if ( !*v2 ) { do ++v8; while ( !v2[v8] ); } v9 = v20; if ( v8 <= v20 ) { v10 = v2 - (_BYTE *)v23; do { v11 = (char *)v23 + v8++; *v11 = map[(char)v11[v10]]; } while ( v8 <= v9 ); } if ( !qstrcmp((const char *)v23, "56fkoP8KhwCf3v7CEz") base 58 加密 flag{12t4tww3r5e77}