1

AIM 7ベータ2以降、現在はAIM 7ベータ6に移行し、GM-AIMは、ファイルを保持するために新しい.abaファイル形式の使用を開始しました。ファイルは、プログラムファイルでアクセスできるフォルダーに配置されていました。ただし、「パフォーマンスの向上」のため、AOLは代わりにこの.abaファイルにそれらを配置することを決定しました。このファイルは、winRAR、または私が試した他のユニバーサルエクストラクターを使用して抽出することはできません。

それを抽出する方法はありますか?誰かが、.abaファイルがZLIBを使用していることをかなり確信していると私に言いました。しかし、誰もそれを確認することはできません。別のサイトの誰かが、AIM自体を使用してファイルを抽出し、それらを読み取ろうとしましたが、実行しませんでした。

うまくいけば、ここの賢い人々はそれらを抽出する方法を理解することができます。具体的には、bl.dtdファイルを配置したいと思います。メモ帳でファイルを開くと、ほとんどがぎこちないファイルであることがわかりますが、そのファイルを含むファイルも一覧表示されます。

一度抽出されたら、それをabaファイルに圧縮して戻す必要はありませんが、可能であれば、それを実行しても問題はありません。

.abaファイルはここからダウンロードできます:http ://www.filedropper.com/en-us

本当にありがとう!

4

1 に答える 1

2

この「非常に迅速で汚い(1)」 PHPコードは、いくつかのマジックストリングを見つけることにより、そのファイルからJPG、PNG、GIF、およびgz圧縮されたテキストファイルを抽出します...テキストがデコードされ、画像が表示されます...

(1)クイックアンドダーティとは、回避策または「クラッジ」を実装する簡単な方法であるものすべてに関連して使用される用語です。その使用法はプログラマーの間で人気があり、不完全、エレガントでない、またはその他の点で不十分な大まかなソリューションまたはプログラミング実装を説明するために使用しますが、目前の問題を解決またはマスクし、一般に、適切な解決策。(ウィキペディア)

<?php
    $PNG_SIG = "\x89PNG\x0D\x0A\x1A\x0A";
    $PNG_EOF = "IEND\xAE\x42\x60\x82";
    $GIF_SIG = "GIF89a";

    $aba = file_get_contents('en-us.aba');
    $pngs = explode($PNG_SIG, $aba);
    foreach ($pngs as $i=>$png) {
      if ($i>0) {
        $extra = explode($PNG_EOF, $png);
        $img = base64_encode($PNG_SIG.$extra[0].$PNG_EOF);
        echo '<img src="data:image/png;base64,'."\n".$img.'" />';
        echo "\n";
        if ($extra[1]!='') {
          if (substr($extra[1], 0, 6)==$GIF_SIG) {
            $gifs = $extra[1];
            $gifs = explode($GIF_SIG, $gifs);
            foreach ($gifs as $j=>$gif) {
              if ($j>0) {
                $img = base64_encode($GIF_SIG.$gif);
                echo '<img src="data:image/gif;base64,'."\n".$img.'" />';
                echo "\n";
              }  
            }
          }
          else {
            $gz = @gzuncompress($extra[1]);
            if ($gz!==false) {
              echo "<pre>\n";
              echo htmlspecialchars($gz);
              echo "</pre>\n";
            }  
            else {
              $jpg = base64_encode($extra[1]);
              echo '<img src="data:image/jpeg;base64,'."\n".$jpg.'" />';
              echo "\n";
            }
          }  
        }
      }  
    }
?>

結果:

代替テキストhttp://img132.imageshack.us/img132/280/83168934.png

代替テキストhttp://img62.imageshack.us/img62/6541/32497869.png

于 2009-09-20T12:46:40.270 に答える