タグ

binaryに関するyzxのブックマーク (14)

  • バイナリファイルを解析する

    Perlといえばテキスト処理や正規表現が得意で、バイナリを扱うような話についてはあまり聞かない印象があります。Perlが持つ関数pack/unpack等でもバイナリ処理は可能ですが、今回はData::ParseBinaryを使ってバイナリファイルを気軽に解析してみましょう。 基 ファイルからストリームを作る 解析したいファイルをData::ParseBinaryで扱えるストリームに変換します。 use Data::ParseBinary; my $stream = CreateStreamReader(File => $file_handle); 解析したい構造を定義する Struct関数で解析したい構造を定義します。Struct以下には基データ型やコンテナ型、ビット/バイトパディング型、制御構文型等を使用できます。各型に指定したラベルが解析結果として得られるハッシュのキーとなります。

  • QuickBeのCソース化1 - たまにっ記

    QuickBeの逆アセンブルコードは非常にシンプルで美しい。 特にWinMainより前のスタートアップコードはVC++やBCCでのコンパイルでは得られないものになっている。 これらコンパイラが提供するオブジェクトファイルを結合すると、それだけで大きなファイルになってしまうようなので、この部分はそのままいただき オブジェクトファイルとしてアセンブルして、メインのコードに結合することにする。 00401000 >/$ sub esp,44 00401003 |. push esi 00401004 |. call [ds:<&KERNEL32.GetCommandLineA>] ; [GetCommandLineA 0040100A |. mov esi,eax 0040100C |. mov al,[ds:eax] 0040100E |. cmp al,22 00401010 |. jnz

    QuickBeのCソース化1 - たまにっ記
    yzx
    yzx 2008/12/10
  • TAKESAKO @ Yet another Cybozu Labs: FizzBuzz x86 for バイナリアン

    昨日の続き。今日は息抜きに FizzBuzz.com (MS-DOS 16bit版) を作ってみました。 0000000 b4 02 bb 31 30 30 ed e8 2c 00 e8 29 00 e8 39 00 0000020 e8 23 00 e8 3e 00 e8 30 00 e8 1a 00 e8 17 00 e8 0000040 27 00 e8 2f 00 e8 0e 00 e8 1e 00 e8 08 00 e8 05 0000060 00 e8 13 00 eb d1 80 ff 30 74 04 88 fa cd 21 88 0000100 da cd 21 e8 28 00 c3 fe c5 b2 46 cd 21 b2 69 cd 0000120 21 e9 08 00 b2 42 cd 21 b2 75 cd 21 b2 7a cd 21 0000140 cd

  • はてなブログ | 無料ブログを作成しよう

    初めて梅干しを作ってみた話 今年の夏、初めて梅干しを作りました。 私梅干し大好きなんですが、自分で作るという発想がなくて…同僚が梅シロップを作っているのに影響されて去年から梅仕事を始めてみたんですが、そのときの説明書に「梅干しの作り方」というのも入っていて、えーー梅干しって自分…

    はてなブログ | 無料ブログを作成しよう
    yzx
    yzx 2007/11/09
  • はてなブログ | 無料ブログを作成しよう

    初めて梅干しを作ってみた話 今年の夏、初めて梅干しを作りました。 私梅干し大好きなんですが、自分で作るという発想がなくて…同僚が梅シロップを作っているのに影響されて去年から梅仕事を始めてみたんですが、そのときの説明書に「梅干しの作り方」というのも入っていて、えーー梅干しって自分…

    はてなブログ | 無料ブログを作成しよう
    yzx
    yzx 2007/11/08
  • S.S'S HOMEPAGE 逆アセのスス乂 目次 MicrosoftのCOFFフォーマット解説 日本語訳

    目次 1. 基概念 2. 概要 3. ファイル ヘッダ 3.1 MS-DOSのスタブ(イメージのみ) 3.2 シグネチャ(イメージのみ) 3.3 COFFファイル ヘッダ(オブジェクトとイメージ) 3.3.1 マシン タイプ 3.3.2 特性 3.4 オプション ヘッダ(通常はイメージのみ) 3.4.1 オプション ヘッダの標準フィールド(イメージのみ) 3.4.2 オプション ヘッダのWindows NT固有フィールド(イメージのみ) 3.4.3 オプション ヘッダのデータ ディクショナリ(イメージのみ) 4. セクション テーブル(セクション ヘッダ) 4.1 セクション フラグ 4.2 Grouped Sections(オブジェクトのみ) 5. 他のファイル内容 5.1 セクション データ 5.2 COFFの再配置(オブジェクトのみ) 5.2.1 タイプ インジケータ 5.3 CO

  • 名無し沢村の大ページ

    名無し@沢村こと、肥し@ほんたまの趣味のページ ↓魅力あるコンテンツの数々 ソフトウェア 『肥桶』 (C言語似の高級言語によるWindowsソフト開発環境) のダウンロード ソフトウェア 『Pancyan』 (ロープレ制作ソフト&ロープレ実行ソフト) のダウンロード アスキーアートギャラリー (おまけ) マイ 思い出のドラマ (おまけ) 掲示板 (新設!)

    yzx
    yzx 2006/12/30
  • Hello, world!といえば… - 趣味的にっき

    http://d.hatena.ne.jp/chmod/20061215/1166183181 世の中、いかに小さいHello, world!を作るかというすばらしいチャレンジをされているかたがいるようです。こんなの年賀状でもらっても… d.y.d. The smallest Linux ELF binary to print ’Hello world!’ - 菊やんの雑記帳 ELF Golf そういえばしばらく前にBinary Hacksは買ったんだけど、目次をパラパラめくってそのまま積ん読です。うーむ。冬休みの課題かなー。(その前に僕のPCにまともに動くUNIXを入れなきゃ。) Binary Hacks ―ハッカー秘伝のテクニック100選 作者: 高林哲,鵜飼文敏,佐藤祐介,浜地慎一郎,首藤一幸出版社/メーカー: オライリー・ジャパン発売日: 2006/11/14メディア: 単行(ソ

    Hello, world!といえば… - 趣味的にっき
  • http://nasm.sourceforge.net/doc/html/nasmdoc0.html

    yzx
    yzx 2006/12/30
  • http://shinh.skr.jp/binary/fsij061115/index.cgi?i=0

    yzx
    yzx 2006/12/30
  • Tiny PE

    Creating the smallest possible PE executable This work was inspired by the Tiny PE challenge by Gil Dabah. The object of the challenge was to write the smallest PE file that downloads a file from the Internet and executes it. In the process of writing increasingly smaller PE files for the challenge I learned a lot of interesting details about the PE file format and the Windows loader. The goal of

    yzx
    yzx 2006/12/30
  • いやなブログ - Binary 2.0カンファレンス 2006 発表資料とレポート

    Binary 2.0カンファレンス 2006 発表資料とレポート Binary 2.0 カンファレンス 2006 は大盛況のうちに無事終了いたしました。開催にご協力いただいた皆様、スピーカーの皆様、参加していただいた皆様、大変ありがとうございました。当日の発表資料とレポートをこのエントリでまとめます。

  • PE Golf(3) - firewood's diary

    この半端なコードを、 http://d.hatena.ne.jp/firewood/20061120/1163957029 プロゴルファーが「ありあり」に改良してくれました。さすがですなあ。 http://d.hatena.ne.jp/shinichiro_h/20061202#1165067227 自分でも同じことをやろうとして、コード領域はread onlyだろうし、通常のアプリでテストしても例外で死ぬので、そこで止まっていたのだが、shinichiro_h氏のは自己書き換えしている。なぜ大丈夫なのかわからなかったのでちょっと試行錯誤した。 IMAGE_SECTION_HEADERのCharacteristicsでIMAGE_SCN_MEM_WRITEがセットされているのでそのせいかと思ってビットを落としてみたが、そこは関係なくて、リンカオプションに/align:16を渡すと、.tex

    PE Golf(3) - firewood's diary
    yzx
    yzx 2006/12/30
    PE Hello World
  • 2006-11-11

    BITS 32 ORG 0 DB 0x7F entry: inc ebp dec esp inc esi mov dl, 14 mov cl, hello xor dword [ecx], 0x6C4D6549 inc ebx push dword 0x00030002 mov al, 4 int 0x80 add [eax], eax add [eax], al sbb [eax], al add [eax], al sbb [eax], al add [eax], al xchg eax, esi dec ebx int 0x80 DD 0x00210000-0x18 hello: DD 0x00210001 DB 'o, world!', 10To compile this program, you need nasm. nasm -f bin -o tiny-hello.bin t

    2006-11-11
    yzx
    yzx 2006/12/30
    58B
  • 1