海外コードの移植 [Zitさん過去記事 再現①]

[st-kaiwa-34]

これは、以前にZitさんが公開していた記事の再現もぐ。なので質問は受け付けられないもぐ。

[/st-kaiwa-34]

もともとの記事を書いてくださったZitさんに最大の感謝もぐ。もぐたんは内容わからないけど、もう一度Zitさんの記事が読みたいという方のために。


この世界すべては自己責任です。
本体が壊れようが、データが消えようが、BANされようが。です。それが怖いなら改造しない。ってどこでも言われてるでしょ?
このブログは対象の機材を持っている読んでわかる人向けです。


目次

海外のポインターコードの移植

下記ポインターコードを例にします

[[[[[[[main+42DE990]+340]+78]+18]+98]+110]+30]+00

こちらで注目すべきは [main+42DE990] です

それ以降の +340+78+18+98+110+30+00 は基本的にプログラムの流れなので

国内版でも海外版でも同じです

① main + 42DE990 のアドレスを求めます

この場合、7713204000 + 42DE990 = 77174E2990 になります

② 77174E2990 のメモリを確認します

このようにポインターアドレスだらけです

③ キーとなる数値を探します

キーとなる数値はポインターアドレスでは起動毎に変動するので使えません

下記の様にポインターアドレスではなく且つ数値が大きいものをキーとして使用します

④ キーとなる数値をサーチします

64 Bit でサーチするので数値は逆になり 00005722 00006AAE となります

こちらを main タイプから探します

1件ヒットしました。この様に数件の結果であればこのキーは使えます。

⑤ キー数値のアドレスの差異を計算します

ポインターアドレス:77174E2990

キー数値のアドレス:77174DF7A0

77174E2990 – 77174DF7A0 = 31F0

日本語版で 0000572200006AAE をサーチしてそのアドレスに 31F0 をプラスした数値が答えになります

海外のプログラムコードの移植

下記コードを例にします

04000000 009F59C4 6B1F0108

こちらは main + 009F59C4 が目的のアドレスになります

① main + 009F59C4 のアドレスを求めます

この場合、06A6A04000 + 009F59C4 = 06A73F99C4 になります

② 06A73F99C4 のメモリを確認します

③ キーとなる数値を探します

プログラムコードの場合は周辺の適当な数値で探します

④ main タイプ 64 bit で B900C268 5400004B をサーチします

1件ヒットしました。この様に数件の結果であればこのキーは使えます。

日本語版で B900C2685400004B をサーチしてそのアドレスに マイナス 4 した数値が答えになります

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

ひょっこり地上に出てきて地上世界の居心地の良さに感動し、地上に住み着きましたもぐ。人間社会で生きていくのは大変だけど頑張るもぐ!

目次