encoded_flag = "灩捯䍔䙻ㄶ形楴獟楮獴㌴摟潦弸弲㘶㠴挲ぽ"
flag = []
for i in range(len(encoded_flag)):
tmp1 = ord(encoded_flag[i]) & 0xFF
tmp2 = ord(encoded_flag[i]) >> 8
flag += chr(tmp2)
flag += chr(tmp1)
print("".join(flag))
ghidra
aarch64-linux-gnu-as chall.S -o chall
java 読むだけ
G-code が出てくるのでプロットする. いいサンプルサイトがあった
負の数を入れる
return 0xd2a - param_1
for (local_4 = 0; local_4 < param_1; local_4 = local_4 + 1) {
local_8 = local_8 + 3;
}
b *0x401142
c
info register rip
print/d $eax
0x401106 <func1> endbr64 0x40110a <func1+4> push rbp 0x40110b <func1+5> mov rbp, rsp 0x40110e <func1+8> mov dword ptr [rbp - 4], edi 0x401111 <func1+11> mov eax, dword ptr [rbp - 4] ► 0x401114 <func1+14> imul eax, eax, 0x3269 0x40111a <func1+20> pop rbp 0x40111b <func1+21> ret