ステータス関連 武勲ポイントの最大値は0001869Fです まずは869Fで検索して怪しい場所を探します すると00139A50でヒットした近くの分岐を潰すと s0に無条件で最大値が格納されるので、とにかく潰します 結果、ステータス画面で武勲が99999になりました やはりここは武勲の最大値チェックみたいですswの書き込み先が00010010になっていますが こんなアドレスが使われる事はありません すぐ上で00010000がv0に代入されているので それで00010010がアドレスと誤認して表示しています 分岐してもしなくても、必ず 00139A54の命令を実行して00138750に飛びます こういう場合はこの00138750でアドレスを求め 戻ってからストアするという流れであると思われます 早速00138750に飛んでみましょう ちょっと複雑な処理をしていますが 幸い、途中でv0の値が見えてるので計算し易いです
a0とv1の値はキャラ毎に変わる アドレスをズラす為の物と予想出来るので 先頭のキャラはこの値が0000だと想定し計算します 00437030に00B8をプラスして004370E8 先ほどの最大値チェックに戻ってから これにプラス10hした所へストア つまり004370F8が怪しいと思われます 実際に204370F8 0001869Fを暗号化して 効果があるか確かめた所、ビンゴでした。 武勲のアドレスは見つかったので 他のステータスも見つけたいと思いますが これはセーブデータ比較で一発で見つかります 基本解析で書いている事なのでここでは省きます。 今回の実際の解析手順、いかがだったでしょうか? 2003年に入ってからこんな感じで少し複雑化して来ているので 一応頭に入れておいた方が良いと思います