トップページ⇒tech
139コメント27KB

なんで、逆コンパイラーってないの?

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
とても便利そうなんですけど・・・
0002デフォルトの名無しさんNGNG
ある、削除依頼出して来い
0003デフォルトの名無しさんNGNG
2げっとだよ
00043NGNG
>>2
市ね
0005デフォルトの名無しさんNGNG
じゃあ、シスタープリンセス2を逆コンパイルしてエロゲーに書き直してください
0006デフォルトの名無しさんNGNG
>>4
まだまだじゃのう
ふぉっふぉっふぉっ
0007デフォルトの名無しさんNGNG
>>1
バカじゃねーの
市ね
0008デフォルトの名無しさんNGNG
>>7
バカじゃないですよ
あなたが死んだらどうですか?
0009デフォルトの名無しさんNGNG
>>8
死ねじゃないですよ。
あなたがバカになったらどうですか?
0010デフォルトの名無しさんNGNG
単発質問でスレを立てないでください。

***すれ立てるまでもない質問はここで 第37刷***
http://pc2.2ch.net/test/read.cgi/tech/1053005739/
0011ひなこNGNG
ごめんなさい
0012デフォルトの名無しさんNGNG
ってか、ある。
0013デフォルトの名無しさんNGNG
いや、そうともかぎらない
0014デフォルトの名無しさんNGNG
>>1
なんか朝から胸がムカムカしてきた・・・
削除依頼だしとけよ。
0015デフォルトの名無しさんNGNG
フリーソフトであるよ
0016ひなこNGNG
>>15
シスタープリンセス2を逆コンパイルしてエロゲーに書き直せるの?
0017デフォルトの名無しさんNGNG
http://pc2.2ch.net/test/read.cgi/tech/1052558602/
0018デフォルトの名無しさんNGNG
写像をべんひょうしようね。
0019デフォルトの名無しさんNGNG
>>1
探せばあるだろタコ。
言語によるがな。なんでもかんでも逆コンパイルできてソースがよめるわけでもないが
0020デフォルトの名無しさんNGNG
僕の肛門も逆コンパイルされそうです
0021名無し@沢村NGNG
おまいらよ、逆コンパイラがあるのはjavaだけだよ。
おまいらよ、何故だかわかるか?
おまいらよ、javaは逆コンパイルがしやすいからだよ。
つまりVMをとおして実行されるため、完全なオブジェクトファイルではなく中間ファイルになっているためよ。
0022デフォルトの名無しさんNGNG
>>16
ゲームの素材を使って、自分で自由なゲームを作成するプロジェクトやプログラムは
すでに存在していますが。
0023デフォルトの名無しさんNGNG
>>21
ActiveBasic厨がなんかいってる(笑
0024デフォルトの名無しさんNGNG
>23
シィーーーッ! 見ちゃいけません!!
0025デフォルトの名無しさんNGNG
24<==>25
固定されてしまった。
0026デフォルトの名無しさんNGNG
>>1
好きなのをえらべ

http://www.datarescue.com/idabase/ida.htm
http://www.backerstreet.com/rec/rec.htm
http://www.itee.uq.edu.au/~cristina/dcc.html

そして、逆コンパイル結果を見て失墜しろ
0027デフォルトの名無しさんNGNG
>>21
相変わらず休み無く恥も外聞も無くバカいってますな、時々休まないと疲れるよ。
0028名無し@沢村NGNG
おまいらよ、逆コンパイラはな、オプションで言語が指定できるようになって本物といえるのだぞ。
JavaとかCとかC++とか、自在にソースを作れるようになってこそ、逆コンパイラぞ。
おまいらよ、その心意気が理解できるか?
逆コンパイラを使ったCとjavaのソースが、コンパイルすると同じことをやれるのだぞ。
0029デフォルトの名無しさんNGNG
>>23
なんかのワードにかかってみれないんですけど
>>22はActivBasicぼ逆コンパイラを作ったんですか?
0030デフォルトの名無しさんNGNG
>>29
DHMLのことをいってるんじゃないかな。
0031デフォルトの名無しさんNGNG
>>21
お前知識が古いよ。
Javaだけとは言いすぎ。
Javaを逆コンパイルしにくくさせるツールもあるがな。

>>29
No. 沢村はActiveBasicで何かGUIアプリケーションを作ったらしい。
Hello, Worldくらいしか表示されないプログラム作ったようにしか見えなかったが。
0032デフォルトの名無しさんNGNG
>>1
不可逆変換されたコードを復元するのは、無理なんだよ。
いい例が、変数名や関数名!
無意味な数字の羅列に変換されてしまい、元の意味ある文字列には戻らない。

よって、逆コンパイルできるツールで、完全に自立型のツールは無い!
0033デフォルトの名無しさんNGNG
むしろ逆インタプリタの方が便利そう。
0034デフォルトの名無しさんNGNG
>>31
ん? >>22 は沢村の話題だったのか?
0035デフォルトの名無しさんNGNG
逆コンパイラーってEXEの状態からできるんですか?
逆リンカってのはいらないの?
0036デフォルトの名無しさんNGNG
>>35
安心しろ。
そもそも、元々どれだけのファイルに分割されていたのかさえ、不明なのだから、逆リンカなど存在しない。
0037デフォルトの名無しさんNGNG
そもそも逆コンパイラの必要性がわからん
ソースが不足してる一昔ならわかるが
今ネットでソースなんていくらでもあるだろうに
書籍もわんさかあるんだから・・・
0038デフォルトの名無しさんNGNG
>>37
スポンジが開発されたからと言ってたわしの存在を疑問に思う奴はいなかったが。
0039デフォルトの名無しさんNGNG
>いい例が、変数名や関数名!
>無意味な数字の羅列に変換されてしまい、
変換されません。
004039NGNG
ごめん>>32へのレスね
0041デフォルトの名無しさんNGNG
>>37
自分で気に入らないとこ改造できるじゃん
0042デフォルトの名無しさんNGNG
・逆アセは違法とされている。
・ユーザーモジュールからソースを生成するツールやサービスはあるが、
万能ではない
0043デフォルトの名無しさんNGNG
Smalltalkのバイトコードは可逆って聞いた事ある
0044デフォルトの名無しさんNGNG
オープンソースを一歩進めて
アプリケーションには、標準でReadMe.txtと
ソースを付加するよう布教した方がよっぽど
現実的。
0045デフォルトの名無しさんNGNG
と、非現実的な妄想を晒した故・>>44だった。
0046デフォルトの名無しさんNGNG
逆に聞くが
逆コンパイルしたいプログラムってどんなのある?
0047デフォルトの名無しさんNGNG
逆に聞くが
逆ソープ天国って萌えるよな
0048デフォルトの名無しさんNGNG
>・逆アセは違法とされている。

ライセンス違反は聞いたことがあるが・・・。

むしろゲーム機とかではリバースエンジニアリングが合法となった裁判もある。
0049デフォルトの名無しさんNGNG
あっても使わないし。

1よ、しつこくアセンブリソースを眺めよ。
そのうち何か見えるぞよ。














見えなきゃ向いてないよ、この業界<<給料安いし
0050 NGNG
EXEファイルからVC++のソースに変換するソフトって有ったんだけど、
見事にMSが潰したね。
0051デフォルトの名無しさんNGNG
>>50
だれか持ってないの?それ
0052デフォルトの名無しさんNGNG
ソースの質にもよるわな。
淫乱アセンブラだらけとかなら・・・(゚�听)イラネ
0053デフォルトの名無しさんNGNG
>>50
そのソフトの名前教えて。
0054名無し@沢村NGNG
>>53
ActiveBasic
0055デフォルトの名無しさんNGNG
>>39,>>40
Javaを、そのまんま使ってる奴発見!
0056デフォルトの名無しさんNGNG
>Javaを、そのまんま使ってる奴発見!

何を訳の分からんことを?
0057デフォルトの名無しさんNGNG
JADにはお世話になりました。
0058デフォルトの名無しさんNGNG
>>56
訂正、
 Javacにそのまま生のソースコード流している奴発見!
だな。
0059デフォルトの名無しさんNGNG
昔よくsourcerとか使ってたけどwindowsでは無理だよね。
mochaはよくお世話になったからあると便利なのは確か。
でもよくない用途ばかりだな。実力つけたいなら、
自力で構築しなおすのが吉。
0060デフォルトの名無しさんNGNG
>>50
そのソフトの名前教えて。
0061もりんきー ◆pEJ60eOcEw NGNG
逆汗でガンガレ!
0062デフォルトの名無しさんNGNG
>>61
ヽ( `Д´)ノウワァァァァン。教えてくれよ〜。
0063デフォルトの名無しさんNGNG
逆汗で十分な気がする
006462NGNG
>>63
わたくしめのようなヴァカには十分ではありませにゅ。
0065デフォルトの名無しさんNGNG
馬鹿は市ね
0066山崎渉NGNG
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0067デフォルトの名無しさんNGNG
写像をべんひょうしようね。
0068デフォルトの名無しさんNGNG
なんで、逆コンバトラーってないの?
0069デフォルトの名無しさんNGNG
>>1
お前の脳内で勝手にやれよ。
0070デフォルトの名無しさんNGNG
>>68
逆ボルテスなら前ネットで見かけたぞ。
0071デフォルトの名無しさんNGNG
ってか、ある。
0072デフォルトの名無しさんNGNG
ぶぅめらん?
0073デフォルトの名無しさんNGNG
ライパンコ
0074デフォルトの名無しさんNGNG
コンパイラの逆襲
0075デフォルトの名無しさんNGNG
コンパイラはコンパと略そう!
0076デフォルトの名無しさんNGNG
逆コンパイラがないんじゃなくて、
逆にコンパイラを逆に出来ないんじゃないの?
あっ、逆にコンパイラをコーディングしてコンパイルする際に尻のほうから逆にコーディングしていったら
逆に出来るのかもしれない。
0077デフォルトの名無しさんNGNG
http://www.traffimagic.com/WIP59MMSMCA/comein/PRTPJ
0078デフォルトの名無しさんNGNG
無限にあるソースを選択なんて出来ないから。
0079デフォルトの名無しさんNGNG
10年くらい昔、富士通か?どっかからCOBOLかFortranの逆コンパイラが製品としてでてたような…
0080デフォルトの名無しさんNGNG
.NETになれば逆汗し放題だぞ
もちろんMSILのobfuscatorもあるけど
0081デフォルトの名無しさんNGNG
根本まで実行要素を分解して究極の最適化をして
それを超絶美麗な高級言語のソースに変換するツールがあると良いな
0082デフォルトの名無しさんNGNG
>>80
Dotfuscator
0083デフォルトの名無しさんNGNG
>>1
「デコンパイラ」とか、「decompiler」とか呼ぶようです。
0084山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0085山崎 渉NGNG
(^^)
0086山崎 渉NGNG
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0087デフォルトの名無しさんNGNG
ttp://www.ni.bekkoame.ne.jp/bilyzkid/jp/
ってどうよ?
0088デフォルトの名無しさんNGNG
まぁ、あれだ。
例えば腕を切り落とすことはできる
しかし切り落とした腕を元の状態に戻す事はできない
これといっしょだ。

ただ最近は医療技術の進歩でできるようになってきたらしい。
これも一緒で逆コンパイル(ラ)もそのうちできるようになるかもしれない。
0089デフォルトの名無しさんNGNG
>>88
変な例え
0090twNGNG
test
0091デフォルトの名無しさんNGNG
俺は一応チェックしているんだから変なテストに使うな
0092デフォルトの名無しさんNGNG
君だけじゃないさ
0093デフォルトの名無しさんNGNG
じゃ、早速質問をするか。
逆コンパイラーに関する論文とか有名なの出てるのかな?
0094cse4-34.kokubunji.mbn.or.jpNGNG
regist
0095デフォルトの名無しさんNGNG
>>93
強いて言えばdcc関係かな。
ttp://www.itee.uq.edu.au/~cristina/
ttp://www.program-transformation.org/twiki/bin/view/Transform/DeCompilation
0096デフォルトの名無しさんNGNG
>>95
ありがとう。読んでみるよ
0097デフォルトの名無しさんNGNG
>>96
マイナーだけど、日本人で逆コンパイラ作ってた人もいる。
最近あまり更新が無かったようだけど。
確かその人のページにメモみたいなのも幾つかあった。
dcc関係で検索しまくれば多分見つかる。
0098デフォルトの名無しさんNGNG
ttp://boomerang.sourceforge.net
0099デフォルトの名無しさんNGNG
comを逆コンパイルできるソフトは無いのか?
0100デフォルトの名無しさんNGNG
>>99
nslookup
010199NGNG
スマソ
*.com実行ファイルのことです
0102デフォルトの名無しさんNGNG
何でそこまで逆コンパイルしたいんだ?
俺は自分用に日本語化したりウィンドウサイズを変えたりするときに、
リソースを書き換えたりすることもあるが。
0103デフォルトの名無しさんNGNG
>>101
分かっているって(笑)
0104デフォルトの名無しさんNGNG
>>102
なんとなし
010599NGNG
DOS窓のdebugがまともに使えるものならいいんだけど・・・
0106デフォルトの名無しさんNGNG
>>102
俺は、技術としては興味があるけどなぁ。
Javaの逆コンパイルソフトって有名どころでは何?
0107デフォルトの名無しさんNGNG
>>106
Jad
0108デフォルトの名無しさんNGNG
>>107
thx
0109デフォルトの名無しさんNGNG
Jadはソースが公開されていないんだね。
やっぱり論文を読んでシステムを理解するしかないのか。

>>102
需要はわからないけれども、数学的にはかなりすごいと思う。
需要も、translaterなどの分野ではきっとあるんだろうね。
0110デフォルトの名無しさんNGNG
>>109
>Jadはソースが公開されていないんだね
そこで逆コンパイラの出b(ry
0111デフォルトの名無しさんNGNG
ヴィジュアルスタジオにEXEをD&Dして
ステップ実行とかしているときに
「ステップ実行だからダメだよ」なんてメッセージだす
EXEとかあるんですけど、あれってどーやっているんですかね?
0112デフォルトの名無しさんNGNG
リリース版でも出来るの?<ステップ実行
0113111NGNG
>>112
できるよ。
step-in,step-out,レジスタの状況とかもわかし、
VSは意外と便利ですよ。
0114デフォルトの名無しさんNGNG
>>111
例えば、あるコード辺を実行する間に、
通常ありえない時間経過があったらダイアログ出すとか?
0115デフォルトの名無しさんNGNG
あせんぶーるわからないと話しにならない
0116デフォルトの名無しさんNGNG
Debugなんたらという、WindowsのAPIがある。
デバッグしている時には、そのプロセスにデバッグモードを示す状態がつくので
(確かシングルステップの場合はそれ専用の特殊な状態だったはず)
その状態を見れば、デバッガを防ぐことが出来るよ。

詳しく知りたければ、昔書いたソースを調べてあげるよ
0117デフォルトの名無しさんNGNG
>>116
後学のために教えてください。
0118デフォルトの名無しさんNGNG
IsDebuggerPresent
0119デフォルトの名無しさんNGNG
>>118
ありがとう。
0120デフォルトの名無しさんNGNG
>>99
> comを逆コンパイルできるソフトは無いのか?

自分で、作れ。
0121デフォルトの名無しさんNGNG
 ttp://up.isp.2ch.net/up/54b18bdbee3c.exe

exeを引数に渡すとCソースを自動生成します。
Exec Filename

※WinXP以外での動作は保障しません
0122デフォルトの名無しさんNGNG
printf("このファイルには%.0f個の0xFFが存在します。\n");
printf("このファイルには%.0f個の0x00が存在します。\n");
0123デフォルトの名無しさんNGNG
>>1
リソースハッカー使え。
0124 ◆OkhT76nerU NGNG
 
0125デフォルトの名無しさんNGNG
>>122
ぬるぽ
0126デフォルトの名無しさんNGNG
>>125
ガッ
0127デフォルトの名無しさんNGNG
なんで逆インタプリタってないの




というスレを立ててもいいですか?
0128デフォルトの名無しさんNGNG
>>127
止めろ。
インタプリタって中間言語処理のプログラムと
ソースくっ付けただけの奴だからソース読めるだろ。
0129デフォルトの名無しさんNGNG
>>128
きっと動いてるプログラムからBASICコードとかを生成してくれるんだよ。
多分動的逆コンパイラ。
0130デフォルトの名無しさんNGNG
>>1
ある。
0131デフォルトの名無しさんNGNG
>>116
APIレベルのデバッグ防止なんか通用するわけないじゃん。
APIフックとかKERNEL32.DLLをラッパーDLLに置き換えたりとか。
0132デフォルトの名無しさんNGNG
http://www.b-geeks.com/Winny2_src_noyounamono.zip
これって,逆コンパイラの出力じゃないの?
人間が書き起こしたとは思えないんだけど.
0133デフォルトの名無しさんNGNG
逆コンパイル → 解析してソース書き書き
0134デフォルトの名無しさんNGNG
逆アセンブル→Cで書き直しだろ
0135デフォルトの名無しさんNGNG
CとかC++の場合は、コンパイルすると型情報をほとんど落してしまうので、
逆コンパイルは一般には難しいな。

逆にいうと、
*(int *)(t0 + 4) = 1;
みたいなコードを吐いてもかまわないというのなら、かなり実用的にはなっている。
0136名無しが氏んでもかわりはいるもの05/02/03 17:32:17
コンパイラー使うたびに音五月蝿いんだけどなぜ?
0137デフォルトの名無しさん05/02/09 01:11:27
お前の書き方が悪い。
0138デフォルトの名無しさん05/02/09 01:55:48
なんで逆ノイマン型ってないの?
0139デフォルトの名無しさん05/02/09 19:29:07
C言語の逆コンパイラで一番使いやすいのはどれですか?
■ このスレッドは過去ログ倉庫に格納されています