pokemon
打開游戲,大木會直接和你瘋狂暗示

大木告訴你,FLAG在第一個道館,去打敗館主。
到研究室領精靈,助手給你20個奇異糖果,讓你快速升級。
再次提醒打敗第一個館主。

打敗后
館主說我不會告訴你的,想知道的話自己去逆向這個rom。
正文開始。
用PPRE工具。

text_11="HIIIIIINT(You-really-want-to-get-the-flag-by-submi
ting-it-one-by-one?)"
text_12="HIIIIIINT(Try-to-read-the-scrpit-XP)"
text_13="HIIIIIINT(Don’t forget to change Brackets to Curly
Brackets !!!!)"
下面是一堆flag,但只有一個是正確的。
提示你去看腳本。
鎖定腳本
Fanfare 1500
Lockall
Faceplayer
Checkbadge 0 0x800c
If 0x800c 1
CheckLR 1 func_5
Message 0
CloseMsgOnKeyPress
TrainerBattle 20 0 0
CheckTrainerLost 0x800c
If 0x800c 0
CheckLR 1 func_6
Setbdgtrue 0
ActMainEvent 22
SetTrainerId 29
SetTrainerId 50
Setvar 0x4074 1
Setflag 402
Setvar 16648 6
Setflag 244
Setflag 403
Message 1
SetvarHero 0
Message 2
Soundfr 1189
Fadedef
Message 3
Jump func_7
到func_7
Setvar 0x8004 378
Setvar 0x8005 1
CheckItem3 0x8004 0x8005 0x800c
If 0x800c 0
CheckLR 1 func_15
Callstd 241 7
Setflag 115
Clearflag 741
Setvar 0x8004 378
Setvar 0x8005 1
CheckItem3 0x8004 0x8005 0x800c
If 0x800c 0
CheckLR 1 func_16
Message 4
WaitButton
CloseMsgOnKeyPress
Releaseall
End
分析邏輯可知,func_16永遠不會被執行
到func_16
Message 64
WaitButton
CloseMsgOnKeyPress
Releaseall
End
發現是使用64號text彈出對話框
text_64=”HCTF(6A0A81AB5F9917B1EEC3A6183C614380)”
get flag `HCTF{6A0A81AB5F9917B1EEC3A6183C614380}`
2017HCTF-Writeup


