ソフトを起動する度に表示されるタイトルロゴや
使用上あまり必要の無い部分を機能させないようにしたいと思い
逆アセンブルをして解析を始めたのですが
必要の無い命令を無効にするにはどうしたらいいのでしょうか?
例えば
:0047D3EA push 000055F2
のようなダイアログ呼び出し(?)の命令があったとして
このダイアログの表示は必要無いので表示させないようにしたい
この場合どの様にして書きかえればよいのでしょうか?
バイナリエディタ等で開き書き換えるのだと思いますが
どのようにしてよいのかわかりません
また、ソフトウェア改造の違法性についても知っている方教えて下さい
アセンブリ言語初心者ですので質問に意味不明なところがあるかもしれませんが
そのへんもフォローしてお願いします

このQ&Aに関連する最新のQ&A

A 回答 (3件)

まず、基本的に、市販のソフトウェアの場合、逆アセンブルをすることは、著作権などの関係で禁止されている場合がほとんどです。

(使用許諾書を見て下さい。音楽などと違って個人での使用時でも禁じていることが多い)
上記がクリアされているとして、いらない命令はNOP(No Operation)命令(CPUによって違う名前かもしれません)で置き換えればいいと思います。ただし、置き換える命令の長さが、代わってしまうと旨く行かないので、NOPを必要な数だけ入れる必要が在るかもしれません。また、スタックの数もきちんと考える必要が有ります。
出来れば、自分で小さなアプリケーションを作成して、テストしてみると一番解りやすいと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます
ご指摘の通り自作アプリケーションでやってみたいと思います
できればもう一つ教えていただきたいのですが
NOP命令にして置き換えるとします
その場合、バイナリを直接
バイナリエディタなどで書き換えて
やる事はできるでしょうか?
可能でしたら方法についても教えて下さい

お礼日時:2001/01/13 11:00

まずソフトウェアの使用許諾所を読んで


ディスアセンブルなどのリバースエンジニアリングを
一切禁止するなどと書かれていないことを確認しましょう。

もし、本当にSplashWindowがうっとおしければ
開発元に文句を言いましょう。
正規ユーザなのだから、、、
    • good
    • 0
この回答へのお礼

その通りですね
文句言ってもなかなか改善されないでしょうけど・・・・

お礼日時:2001/01/14 00:53

先ほどの追加です。

もちろん、バイナリエディタで、該当するコードの場所をNOPのコードに変更すれば問題有りません。たとえば、例に有った、
:0047D3EA push 000055F2
は、4バイトですので、NOPコードが2バイトのAA22だった場合、0047D3EAをAA22AA22にすれば、無効化が出来ます。ただし、該当するコードが3バイトでNOPコードが2バイトの場合など、前後のほかのコードを同じ動きをする別のコードに置き換えて調整をし、他からのジャンプなどにも注意を払う必要が有ります。
他に作業に当たっては、失敗することを考えて、元のプログラムのコピーに作業することと、数字が一つずれても一つ間違えてもおかしな動作を起こす可能性が在るので(OSを壊すとか、ハードディスクに不正にアクセスするなど)完全に安全な(壊れても良い)環境で行うことがベストだと思います。気をつけて取り組んで下さい。
    • good
    • 0
この回答へのお礼

大変わかりやすい回答ありがとうございました
とても参考になりました
また質問することがあるかもしれませんが
その時はよろしくお願いします

お礼日時:2001/01/14 00:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qユーザー登録しようとするとセキュリティ情報ダイアログが開き、不正なリクエストとしてログインできない。

goo英語学習のsmart.fmを利用したいのですが、ユーザー登録をしようすると、
「このページには、セキュリティで保護されている項目と
 保護されていない項目が含まれています。
 保護されていない項目を表示しますか?」
    [はい][いいえ]    と表示されます。

ですが、[はい][いいえ]のどちらのボタンをクリックしても
「不正なリクエストです。」となり、ホームに戻ってやり直すことに
なってしまいます。

どうしたら、登録できるのでしょうか・・・? 

Aベストアンサー

他のブラウザでやってみたらどうですか
http://www.forest.impress.co.jp/lib/inet/browser/webbrowser/firefox.html

Q「ログアウトする」の表記が無いサイトでログアウトする場合、

「ログアウトする」の表記が無いサイトでログアウトする場合、
退会すればログアウトした事になるのでしょうか?
(トレース等の心配は無くなる?)

※A社の懸賞の応募(要会員登録)のハズが、
B社のコミュニティサイトへの会員登録になっていたので(利用規約にも記載無し)、
おかしな事になる前に速やかに退会手続きしようと思うのですが、
上記の点が気になっております。

Aベストアンサー

それは単にA社がB社に会員登録の代行をしてもらっていると考えることもできます。
複数の会社のサービスを組み合わせていることも良くあることです。

ログインからログアウトまでの間というのは、会員登録した人が利用者であることを伝えて通信しているというこですから、ログアウトだけを考えるとブラウザを閉じるか、他のページに言って時間が経つと効力が失われます。
退会をすると会員情報が失われますので、ログインそのものができないということになります。

QVisual Basicのダイアログ

数日前、Internet Explorer 6 Service Pack 1 にバージョンアップしました。
それ以降、Internet Explorer を立ち上げてホームページの画面が表示される途中で
以下のようなダイアログがでてきます。

****
このページを正しく表示するには次のコンポーネントを
ダウンロードしてインストールする必要があります。
Visual Basic スクリプトサービス
****

Visual Basic とは何のことですか?
5回程ダウンロードしましたが、何度もでてくるので不安です。
この現象を解消できる方法をご存知の方がいらっしゃいましたら、アドバイスいただけないでしょうか。
よろしくお願いします。

Aベストアンサー

Visual Basic スクリプト サポートではありませんか?
普通はIEをインストールしたら、標準でついてくるはずなのですが。
カスタムインストールでインストールから外していないのだとしたら、IEのインストールに失敗している可能性もあるので修復もしくは再インストールをしてみてください。
修復・削除は「アプリケーションの追加と削除」でIEを指定すればできます。

それでも駄目なら、カスタムインストールで「Visual Basic スクリプト サポート」にチェックを入れて明示的にインストールするようにしてみてください。
http://fox.zero.ad.jp/~zat25960/soft/jp/hawkweed/download.htm#MSIE55

Qダイアログ?のダウンロードの仕方

呼び方が分からないんですが、多分、ダイアログだと思います。
下記のアドレスのようなものです。
セットアップの手順を説明しながら、リアルプレーヤーなどの
ダイアログボックスなどの画像で説明していますが、
この画像をどうやって、DLしてるのか分かりません。
リアルプレーヤーのファイルごと、DLして、フォトショップなどで
開こうとしましたが、開けませんでした・・。
なにか特殊なやり方があるのでしょうか?
このサイトなどの画像です。
http://www7.cds.ne.jp/~seagull/real/producer/dlinst.html

よろしくお願い致します

Aベストアンサー

多分このダイアログはダウンロードしてるのではなく、
自分で作成してるのではないでしょうか?

そこで簡単な作成方法としては、
インストールの際、各ダイアログが表示されるごとに
1.「Print Screen」キーを押す。
2.ペイントソフト(フォトショップなど)を起動する
3.「張り付け」
4.「名前を付けて保存」で保存
をして作成しているものだと思われますよ。

ちなみに「Alt + Print Screen」だと
アクティブウインドウ(一番上のウインドウ)がコピーされるので編集が楽ですよ~

QActiveXをOFFにした時に出るダイアログ

IE6でホームページを見る時フラッシュなどを再生させないため、
インターネットオプションのセキュリティ設定で
ActiveXをすべて無効にしています。

しかし、ActiveXコントロールを使ったページを開くと必ずダイアログボックスが出ます。
設定で「ダイアログボックスを表示する」にはしていません。

内容は
「現在のセキュリティの設定では、このページの ActiveX コントロールは実行できません。そのため、このページは正確に表示されない可能性があります。」

です。
これを表示させないためにはどうすればいいでしょうか?

Aベストアンサー

No.1です。

このページ↓の中盤にある警告画面のことですか?(少し小さいですが)
http://www.geocities.jp/primarystage/iesecurity.html

というかOSとか聞くのを忘れてましたね(^^; 私が下で書いた方法はWinXP SP2でないとできません。

あなたがお使いのPCのOSは何ですか?
WinXPならSP2にアップデートした上で、No.1に書いた方法で警告画面(SP2の場合は情報バーですが)を表示させないようにできます。
Win9x系なら
http://ncho.hp.infoseek.co.jp/dl_c.htm
のようなソフトがありますが、常駐するみたいですね。
Win2000はよくわかりません(^^;

あとIEコンポーネントのタブブラウザを使うという方法もあります。タブブラウザ上でActiveXを無効にすると警告画面などは出なくなります。
http://ringonoki.net/tool/browser/1-browser.html
http://tabbrowser.info/

No.1です。

このページ↓の中盤にある警告画面のことですか?(少し小さいですが)
http://www.geocities.jp/primarystage/iesecurity.html

というかOSとか聞くのを忘れてましたね(^^; 私が下で書いた方法はWinXP SP2でないとできません。

あなたがお使いのPCのOSは何ですか?
WinXPならSP2にアップデートした上で、No.1に書いた方法で警告画面(SP2の場合は情報バーですが)を表示させないようにできます。
Win9x系なら
http://ncho.hp.infoseek.co.jp/dl_c.htm
のようなソフトがありますが、常駐...続きを読む


このカテゴリの人気Q&Aランキング

おすすめ情報