Rating:

Guardian of the Galaxy

Again, file requires a password and firstly we decompile it with Ghidra

After checking main function, we can see that the password is divided into 3 parts

for (i = 0; i < 9; i = i + 1) {
    first_part[local_c] = input_pass[i];
    local_c = local_c + 1;
}

first_part encoded: od_pbw1gu

for (i2 = 9; i2 < 18; i2 = i2 + 1) {
    second_part[local_28] = input_pass[i2];
    local_28 = local_28 + 1;
}

second_part encoded: 5F31735F6E30745F74

for (i3 = 18; i3 < 27; i3 = i3 + 1) {
    uVar4 = (ulong)input_pass[i3];
    third_part[local_30] = input_pass[i3];
    local_30 = local_30 + 1;
}

third_part encoded: d/[h-i-py

Parts 1 and 3 are encoded using the Caesar cipher with shift 4. Part 2 is encoded in hexadecimal.

Decoding reveals the password, which is also the flag:

shctf{5ky
_1s_n0t_t
h3_l1m1t}

Flag: shctf{5ky_1s_n0t_th3_l1m1t}

Original writeup (https://github.com/annotshy04/MySuckWrite-ups/blob/main/2023/SpaceHeroesCTF/reverse-engineering.md#guardian-of-the-galaxy).