Tags: engineering reverse 

Rating:

ARM1 - easy [41 point]

Can you reverse engineer this code and get the flag?

This code is ARM Thumb 2 code which runs on an STM32F103CBT6. You should not need such a controller to solve this challenge.

There are 5 stages in total which share all the same code base, so you are able to compare code from the first stage with all the other stages to see what code is actually relevant.

If you should need a datasheet, you can get it here.

In case you need to refresh your ARM assembly, check out Azeria's cool articles.

Azeria's cool articles : https://azeria-labs.com/writing-arm-assembly-part-1/

---------------------------------------------------------

start with arm_stage1.bin

1. OPEN file with HxD

2. scroll to Offset 0x00000544

3.flag is readable string The flag is: 34C3_I_4dm1t_it_1_f0und_th!s_with_str1ngs

Original writeup (https://github.com/awayuki9/CTFWriteup/blob/master/34C3_Junior_CTF/ARM1_easy/writeup).