Rating:

# Galatic Federation
File requires `username/password`

Disassemble with ghidra and we find two lines that check the `uesr/pass`:
```cpp
bVar2 = std::operator==(local_78,"hktpu")
bVar2 = std::operator==(local_58,"8fs7}:f~Y;unS:yfqL;uZ")
```
We can guess this is `user/pass` but encoded with caesar cipher `shift = 4`

After decoding we get `admin`/`1_l0v3_wR4ngL3r_jE4nS` as `user/pass`

After entering the username and password, an option screen appears

Checking decompile code in ghidra, we discover that in function `adjust_economy/inflate_currency`, if two conditions `currency = 0` and `galactic_currency = usd` hold, function `collapse_economy` where print the flag, will be triggered

To set `galactic_currency = usd`, select the option `presidential_decree/change_galactic_currency`

To set `currency = 0`, enter `-100%` in the option `adjust_economy/inflate_currency`

And this is the final message:
```
Meanwhile, somewhere on the Level 9 control room...
Morty: So w-what are you doing with Level 9 access anyways?
Rick: Destroying the guu-*belch*-Galactic Government.
Summer: Are you going to set all their nukes to target each other?
Morty: O-Or reprogram their military portals to disintegrate their entire spacefleet?
Rick: Good pitches kids, I'm almost proud. But watch closely as Grandpa topples an empire by changing a one...
*click*
...to a zero.
shctf{w4it_uH_wh0s_P4y1Ng_m3_2_y3L1_@_tH15_gUy?}
[*] Got EOF while reading in interactive
```

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