パスワードの解読のやり方

このエントリーをはてなブックマークに追加
193 
Address: 00000000 is Not in a Loaded Module.
****** Data is NOT Accessible ******
****** Data is NOT Accessible ******

W32で読み込んでデバッグ→プロセスロードとすると↑みたいにでてブレークポイントすらできません。
200KB弱のプログラムで、使うにはパスが必要なのですが、ダミーパスがあってできません。
シェアじゃなくて、あまり広まると困るから公開制限してるみたいです。
解析できる人いましたら、アプします。
よろしくお願いします
194名無しさん@お腹いっぱい。:02/06/15 00:05 ID:???
>>193
あぷしろ。
プログラム自体が危険な物じゃなければ解析してやる
195 :02/06/15 00:11 ID:???
今アプ板探してます。
もうちょっとまってください
196名無しさん@お腹いっぱい。:02/06/15 00:11 ID:???
その前に何をするプログラムなのか書け
197 :02/06/15 00:21 ID:???
ゲームのアイテムを増やすTOOLです。
まだアプロダが見つからない・・・
198名無しさん@お腹いっぱい。:02/06/15 00:23 ID:???
199 :02/06/15 00:30 ID:???
http://henachoko.homeip.net/uploader/updata/20020615002526.jpg
です。JPGをrarにして解凍してください。
左のカイリとはキャラの種類です。
passは hellscaper iiiiIIIiiIi
の二つがあって、二回入力します。
それでiiiiIIIiiIiの方はダミーらしいです。

>>198
すいません。
手当たり次第試したらアプロダにあげられました
200 :02/06/15 00:45 ID:???
どうでしょうか?
お茶でもどうぞ

シブチャヲ ススッテ マターリ マターリ
  ∧ ∧     ▲∧
  (,,`Д´)     (=゚ー゚)
  /つ目)~~~  /つ目~~~
ヽ(_______)   〜(__)
201名無しさん@お腹いっぱい。:02/06/15 00:51 ID:???
ラグハイムか。
それはともかく、VBは専門外なんでサッパリ。
202 :02/06/15 00:54 ID:???
そこをなんとか
203名無しさん@お腹いっぱい。:02/06/15 01:01 ID:???
バイナリに丸ごと
hellscaperとiiiiIIIiiIiが書いてあるな、それしかわからん。
それから、VBのプログラムは逆汗しても意味無いんで、
手の施しようがないと思うが。
204 :02/06/15 01:05 ID:PHCIh0rP
ということは無理って事?
恐るべしVB。
VBやってる人はできるかも?
205 :02/06/15 01:54 ID:PHCIh0rP
|:00408F14(C)
|
:00408F1A C4D1 les edx, ecx
:00408F1C 43 inc ebx
:00408F1D 48 dec eax
:00408F1E E88252956C call 6CD5E1A5
:00408F23 AA stosb
:00408F24 0540775402 add eax, 02547740
:00408F29 AB stosd
:00408F2A 0212 add dl, byte ptr [edx]
:00408F2C C55619 lds edx, dword ptr [esi+19]
:00408F2F A96C6C7ACB test eax, CB7A6C6C
:00408F34 EC in al, dx
:00408F35 53 push ebx
:00408F36 3A21 cmp ah, byte ptr [ecx]
:00408F38 F5 cmc
:00408F39 ED in ax, dx

W32つかうと、↑みたいなのがいっぱい出るんだけど、こういうのは関係ない?
206 :02/06/15 13:39 ID:FkJkz3k0
あげ
207名無しさん@お腹いっぱい。:02/06/16 20:14 ID:???
>199
うぷろだのファイルが404なので試せないのだが
bpx __vbastrcomp からでは攻められないのか?

あるいは、APIに渡したダミーのパスと正規パスを比較しているところを
直接見れるSmartCheckという選択肢もあるはずだが…
208名無しさん@お腹いっぱい。:02/06/17 18:00 ID:???
age
209 :02/06/17 18:28 ID:???
210パスワード無理でしょうか:02/06/18 09:58 ID:e8hwvvLx
会計ソフト 3ヶ月期間制限版となっております。宜しくお願いいたします。
http://www.vector.jp/soft/win95/business/se091871.html
211名無しさん@お腹いっぱい。:02/06/18 11:07 ID:???
場違い
212207:02/06/19 01:01 ID:???
>209
懐石の報告が遅れています。
明日辺りにはまとめて報告したいと思っていますです。
あまり期待なさらずにお待ち下さいませw
213名無しさん@お腹いっぱい。:02/06/19 01:25 ID:???
>>212
hotmailなりで連絡取り合ってくれ。
ネトゲのクラックなんで、あまり人の目に触れさせるのはどうかと。
しかも、俺もプレイしてるやつなんで、結構ゲンナリ
214 :02/06/20 01:11 ID:???
>>212
がむばってください。
いつまでもおまちいたしております
215名無しさん@お腹いっぱい。:02/06/22 10:20 ID:pQ0NQx5f
東日本レインズのパスワードがどうしても知りたいのですが。 誰かわかりませんか?
https://system.reins.jp/tp1web/dcwcgi.exe/DC_USR?DC_CONNECT.acomhm01=dmy
216名無しさん@お腹いっぱい。:02/06/22 10:22 ID:pQ0NQx5f
https://system.reins.jp  こっちでした。すいません。
217名無しさん@お腹いっぱい。:02/06/22 22:28 ID:???
>>215
それ何する所?
218名無しさん@お腹いっぱい。:02/06/23 23:59 ID:???
多忙と遅筆な為に大変遅くなりました。

では早速始めます。
次が、VB6(ランタイム)で文字列を比較している箇所の逆汗です。

【msvbvm60.dll】__vbaStrComp
:66024861 837C240402            cmp dword ptr [esp+04], 00000002
:66024866 0F8456350200          je 66047DC2
:6602486C 6801000300            push 00030001
:66024871 FF742408              push [esp+08]
:66024875 FF742410              push [esp+10]
:66024879 FF742418              push [esp+18]
:6602487D FF1574FE1066         call dword ptr [6610FE74]  ≪★KoKoDaYo★
:66024883 85C0                 test eax, eax
:66024885 0F8C3E350200         jl 66047DC9
:6602488B 48                    dec eax

※ :6602487D では OLEAUT32.VarBstrCmpをCALLしています。
219名無しさん@お腹いっぱい。:02/06/23 23:59 ID:???
【OLEAUT32.DLL】VarBstrCmp
:77A041BE 55                    push ebp
:77A041BF 8BEC                 mov ebp, esp
:77A041C1 51                    push ecx
:77A041C2 53                    push ebx
:77A041C3 56                    push esi
:77A041C4 8B7508                mov esi, dword ptr [ebp+08]
≪中略≫
:77A041FE 894510                mov dword ptr [ebp+10], eax
:77A04201 8B7D0C               mov edi, dword ptr [ebp+0C]
:77A04204 8B7508                mov esi, dword ptr [ebp+08]
:77A04207 8B4D10                mov ecx, dword ptr [ebp+10]
:77A0420A 33C0                 xor eax, eax
:77A0420C F3                   repz
:77A0420D 66A7                 cmpsw  ≪★KoKo★
:77A0420F 7405                  je 77A04216
:77A04211 1BC0                 sbb eax, eax
:77A04213 83D8FF               sbb eax, FFFFFFFF


デバッガから追いかける場合は、「__vbaStrComp」にBPを仕掛けます。
(SoftIceでは 「bpx msvbvm60!__vbaStrComp」
ブレイクしたらsingle step でOLEAUT32.DLL に入って cmpsw命令の直前まで進めます。
その時点でのesiとediレジスタの中身が、入力したダミーと
それと比較された文字列になっています。

VB6限定でしたら、直接 VarBstrCmp にBPを仕掛けて
そこからトレースしても構いません。
220名無しさん@お腹いっぱい。:02/06/24 00:00 ID:???
一応、VB5の場合も説明しておきます。
VB5では文字列比較の際にOLEAUT32.DLLは参照されません。

【msvbvm50】__vbaStrComp
:76273563 55                    push ebp
:76273564 8BEC                 mov ebp, esp
:76273566 53                    push ebx
:76273567 56                    push esi
:76273568 57                    push edi
:76273569 837D1000              cmp dword ptr [ebp+10], 00000000
≪中略≫
:7627359F 50                    push eax
:762735A0 FF750C               push [ebp+0C]
:762735A3 FF7510               push [ebp+10]
:762735A6 E83FA40000           call 7627D9EA  ≪★KoKoDaYo★
:762735AB 85C0                 test eax, eax
:762735AD 740B                 je 762735BA
221名無しさん@お腹いっぱい。:02/06/24 00:00 ID:???
* Referenced by a CALL at Address:
|:762735A6
|
:7627D9EA 56                    push esi
:7627D9EB 57                    push edi
:7627D9EC 8B7C2410             mov edi, dword ptr [esp+10]
:7627D9F0 8B74240C             mov esi, dword ptr [esp+0C]
:7627D9F4 8B4C2414             mov ecx, dword ptr [esp+14]
:7627D9F8 33C0                  xor eax, eax
:7627D9FA F3                    repz
:7627D9FB 66A7                 cmpsw  ≪★KoKo★
:7627D9FD 7405                  je 7627DA04
:7627D9FF 1BC0                 sbb eax, eax
:7627DA01 83D8FF               sbb eax, FFFFFFFF



「bpx msvbvm50!__vbaStrComp」でブレイクしたら
single stepでサブルーチンの中に入ってcmpsw命令の直前まで進めます。
VB6の時と同様に、この時点でのesiとediレジスタの中身が
入力したダミーと、それと比較された文字列になっています。

※ __vbaStrCompは__vbaStrCmpから参照されますが、この関数以外からも
 参照されていることにご注意。
222名無しさん@お腹いっぱい。:02/06/24 00:01 ID:???
VBキラーのSmartCheckを使うと、懐石はさらに楽になります。
アセンブリのニーモニックが分からなくても使えます。
「hoge」等とダミーのパスを入力したら、それを検索するだけです。

> LAGGENESIS102.EXE!0001DB9F
> __vbaStrCmp(String:"hellscap...",String:"hoge") returns DWORD:FFFFFFFF
>  unsigned short * string1 = 00417080
>   ="hellscaper"
>  unsigned short * string1 = 00143994
>   ="hoge"

このように表示されます。

例として、対象がVariant型でパスを比較していると
デバッガで__vbaStrCmpにbpxしてもブレイクしてくれませんが
SmartCheck なら __vbavartsteqに渡されたダミーパスをしっかり検出してくれます。
様々なイベントやAPIを検出できるので、プログラム側が入力されたパスを
取得・型変換・複写・(四則)演算等々をしている、その瞬間が押さえられます。
強力なツールですのでオススメです。
223名無しさん@お腹いっぱい。:02/06/24 00:02 ID:???
次に、W32Dasmを使ってみます。
日本語化してあるW32Dasmなら、文字列を参照すれば
入力したパスが間違っている場合、正しい場合等に表示されるメッセージから
追いかけることが出来たりします。

Referenced by で何処から参照されているかが分かりますので
文字列を比較している箇所から、その結果に応じてメッセージを表示する箇所まで
順を追って流れを把握することが容易に出来ますね。


* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:0041DB81(C)
|
:0041DB95 8B45E8                mov eax, dword ptr [ebp-18]
:0041DB98 50                    push eax

* Possible StringData Ref from Code Obj ->"hellscaper"  ≪★比較対象★
                                |
:0041DB99 6880704100            push 00417080

* Reference To: MSVBVM60.__vbaStrCmp, Ord:0000h  ≪★文字列比較API★
                                |
:0041DB9E FF1540104000         Call dword ptr [00401040]
:0041DBA4 8BF8                 mov edi, eax
:0041DBA6 8D4DE8               lea ecx, dword ptr [ebp-18]
:0041DBA9 F7DF                 neg edi
:0041DBAB 1BFF                 sbb edi, edi
:0041DBAD 47                   inc edi
:0041DBAE F7DF                 neg edi
224名無しさん@お腹いっぱい。:02/06/24 00:03 ID:???
折井さん(OllyDbg)もデバッガの1つですが、
わたし自身が、未だに使い慣れていないもので説明できないです。
ただ、スタックの中身を見るのに、SoftIceのようにいちいちコマンドを打つ必要が無いのは
便利かもしれません。



SoftIce一本だけの説明ではつまらないかと思って
他のツールも使ってみましたが…

わたしが解説できるのは、以上の『取っ掛かり』までです。
>>213にもありますし、わたしはオンラインゲームの懐石やチ―トに関することは
こういうオープンな場所で話題にするのは、あまり好ましく思っておりません。
私利アル系BBSでも、表向き?はタブーとしているところが少なくない様ですしね。
ですので、懐石の結果分かった答は、不特定多数の人の目に入るところでは
明かさないようにおながいします。


自分で書かないで、チュートリアルへのリンクでも早々と貼って済ました方が、かなりマシだったかもですね。
一週間近く待たせた上に、中途半端なままで終わらせて申し訳ないです。

書いていて禿げしく鬱になりますな。
吊って参ります…
225 :02/06/25 03:08 ID:???
わかりやすいっぽい気がすます。
ありがとう
でも
smartchekcerで読み込んでスタートさせて、検索boxに入力しても何も見つからない・・
226 :02/06/25 08:52 ID:???
偽造シリアルの仕組みについて教えて頂けませんか?(;´Д`)
パスワードとは直接関係ないかもしれないけど
よろしくおながいします。
227名無しさん@お腹いっぱい。:02/06/25 20:19 ID:???
偽造ってなに?
キージェネ?
ソフトごとのキーチェックルーチンを利用してそのまま総当たり(トリップ検索と同じ)とか、
逆数検索可能なアルゴリズムだったらそのまま逆数を検索すればいい
228名無しさん@お腹いっぱい。:02/06/26 00:25 ID:???
SmartCheckは、デフォルトの設定ではパフォーマンスを上げる為に
プログラムのエラーやリークを検出するのみで
APIコールは検出しないようになっているはずです。

パス解析する際にAPIコールを調べる場合は
Advanced Settingにある「Suppress system API and OLE calls」の
チェックボックスをクリアしておく必要があります。
Viewで全てのイベントを表示させたら、入力したパス等を検索してみて下さいませ。


偽造しりあるって、聞き慣れない言い方だね。
Keygen作成やってみたいな、といってみるテスト(w
229名無しさん@お腹いっぱい。:02/06/26 21:46 ID:???
漏れが作ったキージェネは日を浴びることがなかった(カナスィ
230名無しさん@お腹いっぱい。:02/06/28 12:08 ID:J8Uu+eJb
Aceファイルのパスワード解析ソフトってあります?

231名無しさん@お腹いっぱい。:02/06/28 13:36 ID:???
ある
232名無しさん@お腹いっぱい。:02/06/28 21:07 ID:???
>>230
Advanced ace password recovery
ってのがある。
これってクラックできるの?
233 :02/06/29 16:27 ID:???
>>228
できたーありがと〜。
でも、入力したのを発見するところまでw
ここからどうすればいいんだろう・・
その周りの命令を解読するってころかな。

p.s.
softiceってstart softiceしたあとCTAL+Dでデバッグに移行するんですかねぇ・・
それすると全部が止まってもう一回押すと動き出すのですが。windoes2000
234 :02/06/29 21:34 ID:???
iiiiの奴は見つかるんだけど、本物が見つからない・・・
ほんとにあるのかな・
235名無しさん@お腹いっぱい。:02/07/02 22:17 ID:???
ace圧縮ファイルのパス解析ってどうやるんですか?
236日高工事:02/07/08 09:06 ID:OiBBoAjD
 ブチ込み日:7月8日(月)09時01分37秒
工程表ソフトですが、30回起動制限と印刷時にお試し版と表示されます。
パスワード入力式となっておりますが、どうぞお願いいたします。
依然解析いただいたものをバイナリエディタで変更いたしましたが、
解決しませんでしたので、もう一度宜しくお願いいたします。
当方コードは317235と出ております。
依然解析していただいたものです。
TERGET FILE ktwin.exe
0006732f:56 00
00067330:01 00
http://homepage2.nifty.com/asys/KtWinPage.htm
237あぼーん:あぼーん
あぼーん
238圭ちゃんステキ!:02/07/12 07:09 ID:???
>>236
そりゃ〜違うと思うぜ。
漏れの懐石によると、
59D97 E8 → EB
59D98 7C → 3D
で8桁の適当な数字をパスワード入力すれば一発OKのはず。
どうよ?
239あぼーん:あぼーん
あぼーん
240名無しさん@お腹いっぱい。:02/07/16 16:47 ID:PkPa/rV2
宜しくお願いいたします
241名無しさん@お腹いっぱい。:02/07/19 03:06 ID:???
あ〜ぁ!ageちゃったね。もうこのスレも終わりだな。
誰か新スレ建てて欲しいモナ〜。

>237
http://jbbs.shitaraba.com/computer/2166/#6
このスレの>3に答えが…。

>239
見る前にあぼーんだった。スマソ!
242名無しさん@お腹いっぱい。:02/07/19 05:36 ID:???
どうせなら解読までの過程をお願いします。
じゃないとただの依頼スレになっちゃうよ。
243圭ちゃん:02/07/24 12:33 ID:???
既にこのスレ過去ログでhtml化されてるんだね。

>239
GKWINとMTWINPROか?
既に懐石終了してるよ。
同じ会社が作ったソフトだからパターンが同じで楽勝物だったよ。

>238と同じ様にバイナリエディタで書き換えるだけなんだけど…
またあぼーんされる危険を伴う諸刃の剣。

どれか選ぶよろし。
1.メアド晒して情報を貰い正式ユーザーとなる。
2.ここで懐石する。(長文は漏れは辛いのだ)
3.諦めて放置する。

どうする〜アイフル〜。
244名無しさん@お腹いっぱい。:02/07/24 14:26 ID:???
たまにはセンチになっちゃう時もある
245圭ちゃん:02/07/25 06:09 ID:???
ローム・ワコーのLED1課のA班班長の大井圭一だけど、
http://motion-plan.co.jp/cgi/paint/sample/OB003881.jpg

さっきから見ていると、もうじれったいなぁ〜。
暇だからここで懐石してやるよ。(ちょっと手抜き有り)

246大井圭一:02/07/25 06:11 ID:???
http://homepage2.nifty.com/asys/MtWinProPage.htm
MTWINPRO.EXEを書き換えます。

バイナリエディタで見ると、
14056B〜パスワードが設定されました。…OKの時のメッセージ。
1405FC〜セットアップパスワードが不一致です。…NGの時のメッセージ。

とあるよね。
247大井圭一:02/07/25 06:12 ID:???
デバッガ起動して、実際にメモリの何処に格納されているか調べてみると、

54136B〜パスワードが設定されました。…OKの時のメッセージ。
5413FC〜セットアップパスワードが不一致です。…NGの時のメッセージ。

となっている。
248大井圭一:02/07/25 06:15 ID:???
今度はここを参照している所を探す。
バイナリエディタで検索すると、

3EC77〜OKの時のメッセージの参照。
3ED7D〜NGの時のメッセージの参照。

デバッガでこの辺一帯を調べて見る。
249大井圭一:02/07/25 06:18 ID:???
0043F64C E9 08 01 00 00 jmp 0043F759

0043F651 8B C2 mov eax,edx  <--このルーチンの先頭
0043F653 C1 E0 02 shl eax,2
0043F656 03 83 5C 03 00 00 add eax,dword ptr [ebx+35Ch]
0043F65C 8B 00 mov eax,dword ptr [eax]
0043F65E 3B 45 D0 cmp eax,dword ptr [ebp-30h]
0043F661 0F 85 F1 00 00 00 jne 0043F758
0043F667 8B D6 mov edx,esi
0043F669 83 EA 01 sub edx,1
0043F66C 72 04 jb 0043F672  <--OKの時
0043F66E 74 30 je 0043F6A0
0043F670 EB 59 jmp 0043F6CB  <--NGの時

250大井圭一:02/07/25 06:20 ID:???
0043F672 68 86 13 54 00 push 541386h
0043F677 68 6B 13 54 00 push 54136Bh  <--OKのメッセージ
0043F67C E8 83 99 FD FF call 00419004
0043F681 83 C4 08 add esp,8
0043F684 8D 8B E4 02 00 00 lea ecx,[ebx+2E4h]
0043F68A C7 83 2C 03 00 00 01 mov dword ptr [ebx+32Ch],1
0043F694 51 push ecx
0043F695 E8 4A 13 00 00 call 004409E4
0043F69A 59 pop ecx
0043F69B E9 A3 00 00 00 jmp 0043F743

0043F6A0 68 BE 13 54 00 push 5413BEh
0043F6A5 68 A3 13 54 00 push 5413A3h
0043F6AA E8 55 99 FD FF call 00419004
0043F6AF 83 C4 08 add esp,8
0043F6B2 8D 83 E4 02 00 00 lea eax,[ebx+2E4h]
0043F6B8 C7 83 2C 03 00 00 02 mov dword ptr [ebx+32Ch],2
0043F6C2 50 push eax
0043F6C3 E8 1C 13 00 00 call 004409E4
0043F6C8 59 pop ecx
0043F6C9 EB 78 jmp 0043F743

251大井圭一:02/07/25 06:24 ID:???
0043F6CB 4E dec esi  <--NGの処理
0043F6CC B9 0C 00 00 00 mov ecx,0Ch
0043F6D1 8B C6 mov eax,esi
0043F6D3 99 cdq
0043F6D4 F7 F9 idiv eax,ecx
0043F6D6 8B C6 mov eax,esi
0043F6D8 8B FA mov edi,edx
0043F6DA 99 cdq
0043F6DB B9 0C 00 00 00 mov ecx,0Ch
0043F6E0 47 inc edi
0043F6E1 F7 F9 idiv eax,ecx
0043F6E3 05 CE 07 00 00 add eax,7CEh
0043F6E8 8B D7 mov edx,edi
0043F6EA 89 45 CC mov dword ptr [ebp-34h],eax
0043F6ED 8D 4D C8 lea ecx,[ebp-38h]
0043F6F0 66 8B 45 CC mov ax,word ptr [ebp-34h]
0043F6F4 66 89 45 CA mov word ptr [ebp-36h],ax
0043F6F8 88 55 C9 mov byte ptr [ebp-37h],dl
0043F6FB C6 45 C8 0A mov byte ptr [ebp-38h],0Ah
0043F6FF 8B 01 mov eax,dword ptr [ecx]
0043F701 89 83 F8 02 00 00 mov dword ptr [ebx+2F8h],eax
0043F707 6A 00 push 0
0043F709 E8 62 E5 FC FF call 0040DC70
0043F70E 59 pop ecx
0043F70F 8B F0 mov esi,eax
0043F711 8D 83 F8 02 00 00 lea eax,[ebx+2F8h]
0043F717 50 push eax
0043F718 E8 9F AF 02 00 call 0046A6BC
0043F71D 59 pop ecx
0043F71E 50 push eax
0043F71F 68 DB 13 54 00 push 5413DBh
0043F724 56 push esi
0043F725 E8 DE EF 03 00 call 0047E708
252大井圭一:02/07/25 06:25 ID:???
0043F72A 83 C4 0C add esp,0Ch
0043F72D 68 EF 13 54 00 push 5413EFh
0043F732 56 push esi
0043F733 E8 CC 98 FD FF call 00419004
0043F738 83 C4 08 add esp,8
0043F73B 33 D2 xor edx,edx
0043F73D 89 93 2C 03 00 00 mov dword ptr [ebx+32Ch],edx
0043F743 8B 4D D4 mov ecx,dword ptr [ebp-2Ch]
0043F746 C6 01 01 mov byte ptr [ecx],1
0043F749 8D 83 E4 02 00 00 lea eax,[ebx+2E4h]
0043F74F 50 push eax
0043F750 E8 8F 12 00 00 call 004409E4
0043F755 59 pop ecx
0043F756 EB 0F jmp 0043F767
0043F758 46 inc esi
0043F759 8B D6 mov edx,esi
0043F75B 3B 93 60 03 00 00 cmp edx,dword ptr [ebx+360h]
0043F761 0F 82 EA FE FF FF jb 0043F651
0043F767 8D B3 E4 02 00 00 lea esi,[ebx+2E4h]
0043F76D 56 push esi
0043F76E E8 99 12 00 00 call 00440A0C
0043F773 59 pop ecx
0043F774 85 C0 test eax,eax
0043F776 75 24 jne 0043F79C
0043F778 68 1F 14 54 00 push 54141Fh
0043F77D 68 FC 13 54 00 push 5413FCh  <--NGの時のメッセージ
0043F782 E8 25 99 FD FF call 004190AC
0043F787 83 C4 08 add esp,8
0043F78A 8B 45 D4 mov eax,dword ptr [ebp-2Ch]
0043F78D C6 00 00 mov byte ptr [eax],0
0043F790 8B 55 D8 mov edx,dword ptr [ebp-28h]
0043F793 64 89 15 00 00 00 00 mov dword ptr fs:[0],edx
0043F79A EB 2D jmp 0043F7C9

253大井圭一:02/07/25 06:27 ID:???
まとめて見ると、
43F651〜このルーチンの先頭
43F672〜OKの処理
43F6A0〜使用期限付きOK?の処理
43F6CB〜NGの処理

254大井圭一:02/07/25 06:28 ID:???
結果としてルーチンの先頭を強制的にOKの処理の所に飛ばせば良い。
具体的には、
0043F651 8B C2 mov eax,edx
の所を
0043F651 EB 1F jmp 0043F672
にする。
255大井圭一:02/07/25 06:29 ID:???
結論として、バイナリエディタで以下の様に書きかえる。
3EC51 8B → EB 
3EC52 C2 → 1F

256自己紹介です。:02/07/25 06:35 ID:???
大井圭一の日常
http://kiaa.net/onani/voice/voice/m16.wma

ちなみに住所は、広島県福山市いせが丘の安アパートだと逝っておこう。
257大井圭一:02/07/25 06:38 ID:???
さあ、次逝ってみよう。
http://homepage2.nifty.com/asys/GkWinPage.htm
GKWIN.EXEを書き換えます。

やり方は前と全く同じ方法。

258名無しさん@お腹いっぱい。:02/07/25 06:39 ID:???
zipのpass解読はPikaなどの総当り戦以外方法はないのだろうか…。
259大井圭一:02/07/25 06:39 ID:???
バイナリエディタで見ると、
1EACA2〜パスワードが設定されました。…OKの時のメッセージ。
1EAD34〜セットアップパスワードが不一致です。…NGの時のメッセージ。

とあるよね。
260大井圭一:02/07/25 06:41 ID:???
デバッガ起動して、実際にメモリの何処に格納されているか調べてみると、

5EC0A2〜パスワードが設定されました。…OKの時のメッセージ。
5EC134〜セットアップパスワードが不一致です。…NGの時のメッセージ。

となっている。
261大井圭一:02/07/25 06:43 ID:???
今度はここを参照している所を探す。
バイナリエディタで検索すると、

CC0F9〜OKの時のメッセージの参照。
CC25A〜NGの時のメッセージの参照。

デバッガでこの辺一帯を調べて見る。

262大井圭一:02/07/25 06:44 ID:???
004CCACC E9 51 01 00 00 jmp 004CCC22

004CCAD1 8B C1 mov eax,ecx <--このルーチンの先頭
004CCAD3 C1 E0 02 shl eax,2
004CCAD6 03 83 64 03 00 00 add eax,dword ptr [ebx+364h]
004CCADC 8B 00 mov eax,dword ptr [eax]
004CCADE 3B 45 C4 cmp eax,dword ptr [ebp-3Ch]
004CCAE1 0F 85 3A 01 00 00 jne 004CCC21
004CCAE7 8B D1 mov edx,ecx
004CCAE9 83 EA 01 sub edx,1
004CCAEC 72 04 jb 004CCAF2 <--OKの処理へ
004CCAEE 74 37 je 004CCB27
004CCAF0 EB 6A jmp 004CCB5C <--NGの処理へ

263大井圭一:02/07/25 06:45 ID:???
004CCAF2 6A 40 push 40h <--OKの処理
004CCAF4 68 BD C0 5E 00 push 5EC0BDh
004CCAF9 68 A2 C0 5E 00 push 5EC0A2h  <--OKのメッセージ
004CCAFE 8B C3 mov eax,ebx
004CCB00 E8 6B 3B 0B 00 call 00580670
004CCB05 50 push eax
004CCB06 E8 37 B8 0F 00 call 005C8342
004CCB0B C7 83 34 03 00 00 01 mov dword ptr [ebx+334h],1
004CCB15 8D 93 E4 02 00 00 lea edx,[ebx+2E4h]
004CCB1B 52 push edx
004CCB1C E8 F3 0F 00 00 call 004CDB14
004CCB21 59 pop ecx
004CCB22 E9 E5 00 00 00 jmp 004CCC0C

004CCB27 6A 40 push 40h
004CCB29 68 F5 C0 5E 00 push 5EC0F5h
004CCB2E 68 DA C0 5E 00 push 5EC0DAh
004CCB33 8B C3 mov eax,ebx
004CCB35 E8 36 3B 0B 00 call 00580670
004CCB3A 50 push eax
004CCB3B E8 02 B8 0F 00 call 005C8342
004CCB40 C7 83 34 03 00 00 02 mov dword ptr [ebx+334h],2
004CCB4A 8D 93 E4 02 00 00 lea edx,[ebx+2E4h]
004CCB50 52 push edx
004CCB51 E8 BE 0F 00 00 call 004CDB14
004CCB56 59 pop ecx
004CCB57 E9 B0 00 00 00 jmp 004CCC0C

264大井圭一:02/07/25 06:46 ID:???
004CCB5C 49 dec ecx  <--NGの処理
004CCB5D BF 0C 00 00 00 mov edi,0Ch
004CCB62 8B C1 mov eax,ecx
004CCB64 6A 0A push 0Ah
004CCB66 99 cdq
004CCB67 F7 FF idiv eax,edi
004CCB69 66 05 CF 07 add ax,7CFh
004CCB6D 8D B3 F8 02 00 00 lea esi,[ebx+2F8h]
004CCB73 50 push eax
004CCB74 8B C1 mov eax,ecx
004CCB76 99 cdq
004CCB77 B9 0C 00 00 00 mov ecx,0Ch
004CCB7C F7 F9 idiv eax,ecx
004CCB7E 42 inc edx
004CCB7F 8D 45 BC lea eax,[ebp-44h]
004CCB82 8B CA mov ecx,edx
004CCB84 5A pop edx
004CCB85 E8 6A AD 0F 00 call 005C78F4
004CCB8A 8B 10 mov edx,dword ptr [eax]
004CCB8C 89 16 mov dword ptr [esi],edx
004CCB8E 8B 50 04 mov edx,dword ptr [eax+4]
004CCB91 89 56 04 mov dword ptr [esi+4],edx
004CCB94 6A 00 push 0
004CCB96 E8 A1 8E F3 FF call 00405A3C
004CCB9B 59 pop ecx
004CCB9C 8B F0 mov esi,eax
004CCB9E 66 C7 45 DC 14 00 mov word ptr [ebp-24h],14h
004CCBA4 FF B3 FC 02 00 00 push dword ptr [ebx+2FCh]
004CCBAA FF B3 F8 02 00 00 push dword ptr [ebx+2F8h]
004CCBB0 33 D2 xor edx,edx
004CCBB2 89 55 F8 mov dword ptr [ebp-8],edx
004CCBB5 8D 45 F8 lea eax,[ebp-8]
004CCBB8 FF 45 E8 inc dword ptr [ebp-18h]
004CCBBB E8 90 2A 0E 00 call 005AF650
004CCBC0 83 7D F8 00 cmp dword ptr [ebp-8],0
004CCBC4 74 05 je 004CCBCB
004CCBC6 8B 55 F8 mov edx,dword ptr [ebp-8]
004CCBC9 EB 05 jmp 004CCBD0
265大井圭一:02/07/25 06:49 ID:???
004CCBCB BA 26 C1 5E 00 mov edx,5EC126h
004CCBD0 52 push edx
004CCBD1 68 12 C1 5E 00 push 5EC112h
004CCBD6 56 push esi
004CCBD7 E8 48 F8 0E 00 call 005BC424
004CCBDC 83 C4 0C add esp,0Ch
004CCBDF FF 4D E8 dec dword ptr [ebp-18h]
004CCBE2 8D 45 F8 lea eax,[ebp-8]
004CCBE5 BA 02 00 00 00 mov edx,2
004CCBEA E8 9D A6 0F 00 call 005C728C
004CCBEF 6A 40 push 40h
004CCBF1 68 27 C1 5E 00 push 5EC127h
004CCBF6 56 push esi
004CCBF7 8B C3 mov eax,ebx
004CCBF9 E8 72 3A 0B 00 call 00580670
004CCBFE 50 push eax
004CCBFF E8 3E B7 0F 00 call 005C8342
004CCC04 33 C9 xor ecx,ecx
004CCC06 89 8B 34 03 00 00 mov dword ptr [ebx+334h],ecx
004CCC0C 8B 45 C8 mov eax,dword ptr [ebp-38h]
004CCC0F C6 00 01 mov byte ptr [eax],1
004CCC12 8D 93 E4 02 00 00 lea edx,[ebx+2E4h]
004CCC18 52 push edx
004CCC19 E8 F6 0E 00 00 call 004CDB14
004CCC1E 59 pop ecx
004CCC1F EB 0D jmp 004CCC2E
266大井圭一:02/07/25 06:50 ID:???
004CCC21 41 inc ecx
004CCC22 3B 8B 68 03 00 00 cmp ecx,dword ptr [ebx+368h]
004CCC28 0F 8C A3 FE FF FF jl 004CCAD1
004CCC2E 8D B3 E4 02 00 00 lea esi,[ebx+2E4h]
004CCC34 56 push esi
004CCC35 E8 0A 0F 00 00 call 004CDB44
004CCC3A 59 pop ecx
004CCC3B 85 C0 test eax,eax
004CCC3D 75 67 jne 004CCCA6
004CCC3F 66 C7 45 DC 20 00 mov word ptr [ebp-24h],20h
004CCC45 BA 57 C1 5E 00 mov edx,5EC157h
004CCC4A 8D 45 F4 lea eax,[ebp-0Ch]
004CCC4D E8 CA A4 0F 00 call 005C711C
004CCC52 FF 45 E8 inc dword ptr [ebp-18h]
004CCC55 8D 4D F4 lea ecx,[ebp-0Ch]
004CCC58 51 push ecx
004CCC59 BA 34 C1 5E 00 mov edx,5EC134h <--NGのメッセージ
004CCC5E 8D 45 F0 lea eax,[ebp-10h]
004CCC61 E8 B6 A4 0F 00 call 005C711C
004CCC66 FF 45 E8 inc dword ptr [ebp-18h]
004CCC69 8D 4D F0 lea ecx,[ebp-10h]
004CCC6C 51 push ecx
004CCC6D E8 16 A6 F3 FF call 00407288
004CCC72 83 C4 08 add esp,8
004CCC75 FF 4D E8 dec dword ptr [ebp-18h]
004CCC78 8D 45 F0 lea eax,[ebp-10h]
004CCC7B BA 02 00 00 00 mov edx,2
004CCC80 E8 07 A6 0F 00 call 005C728C
004CCC85 FF 4D E8 dec dword ptr [ebp-18h]
004CCC88 8D 45 F4 lea eax,[ebp-0Ch]
004CCC8B BA 02 00 00 00 mov edx,2
004CCC90 E8 F7 A5 0F 00 call 005C728C
004CCC95 8B 4D C8 mov ecx,dword ptr [ebp-38h]
004CCC98 C6 01 00 mov byte ptr [ecx],0
004CCC9B 8B 45 CC mov eax,dword ptr [ebp-34h]
004CCC9E 64 A3 00 00 00 00 mov fs:[00000000],eax
004CCCA4 EB 3E jmp 004CCCE4

267大井圭一:02/07/25 06:51 ID:???
まとめて見ると、
4CCAD1〜このルーチンの先頭
4CCAF2〜OKの処理
4CCB27〜使用期限付きOK?の処理
4CCB5C〜NGの処理


268大井圭一:02/07/25 06:52 ID:???
結果としてルーチンの先頭を強制的にOKの処理の所に飛ばせば良い。
具体的には、
004CCAD1 8B C1 mov eax,ecx 
の所を
004CCAD1 EB 1F jmp 004CCAF2
にする。

269大井圭一:02/07/25 06:53 ID:???
結論として、バイナリエディタで以下の様に書きかえる。
CC0D1 8B → EB  
CC0D2 C1 → 1F

270大井圭一:02/07/25 07:09 ID:???
             ∩
        ∧_∧   | |   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
       (; ´Д`)//  < 先生!夏休みの宿題終わりました!
      /       /    |明日から夜勤で出勤します!
     / /|    /      \_____________
  __| | .|    |
  \   ̄ ̄ ̄ ̄ ̄ ̄ ̄\
  ||\             \
  ||\|| ̄ ̄ ̄ ̄ ̄ ̄ ̄|| ̄
  ||  || ̄ ̄ ̄ ̄ ̄ ̄ ̄||
     .||              ||
271大井圭一:02/07/25 07:26 ID:???
忘れ物です。
両ソフト共に8桁の適当な数字をパスワードに入れてやって下さい。
文字数チェックがある様です。
272名無しさん@お腹いっぱい。:02/07/31 17:15 ID:c22ai7Wf
コンピュータコンサルタントを務める女性が、すかした野郎のコンピュータ設定を手伝っていた。

彼女はすかした野郎に、ログインに使用するパスワードは何にするかと訊いた。

この野郎は、彼女を困らせてやろうという魂胆で、「penis」と入力しろと言った。

瞬きもせず無言のまま、彼女はこのパスワードを入力した。彼女は、コンピュータの反応に笑い死にそうになった。

”パスワードは無効です。短すぎます。”
273あぼーん:あぼーん
あぼーん
274あぼーん:あぼーん
あぼーん
275名無しさん@お腹いっぱい。:02/08/07 13:49 ID:???
hahaha
276もも:02/08/08 08:05 ID:yqsCTO3m
大井圭一様そのせつは大変お世話になりありがとうございました。
ご指導いただき、大変便利につかっております。

さて、大変恐縮なのですが、長年待ち続けていました物が
無償配布されはじめました。

http://www.rcals.com/asp/ricoh/index.html

の建設大臣と給与大臣の2本です。

入手方法がやや大変ですが、何とぞ宜しくお願いいたします。
277名無しさん@お腹いっぱい。:02/08/12 02:49 ID:???
そのソフト直接DL出来ないじゃあないか。
申し込んでCD送ってもらう?
ちょっと非常識じゃないの?
解析依頼する時はDLできる物を選ぶべきだよ。
278名無しさん@お腹いっぱい。:02/08/13 14:12 ID:4MOxzn+w
残念ながら、サイズが数百メガになにますので、アップはできそうにもありません
すみません
279名無しさん@お腹いっぱい。:02/08/13 22:46 ID:???
そうか。なら数百メガになりそうなものダウソできるお人よしがいなさそうなことくらいわかれ。
つーか氏ね
280しっつもーん:02/08/14 18:46 ID:/LeuHfoS
マイクロソフト社のワードとかエクセルって、パスワードをかけられるけど、あれは解除法があるの?
281名無しさん@お腹いっぱい。:02/08/14 20:58 ID:???
無節操にageて腐れ質問飛ばす厨ばかりになったね
このスレも終わりか
282しっつもーん:02/08/14 21:34 ID:/LeuHfoS
>>281
それって、漏れのこと?
パスワードかけたワード文書をインターネットメールに添付して送りたいから聞いてるんだが。
一応、会社の書類なんでね。
普段はfaxで送ってるんだけど。
283名無しさん@お腹いっぱい。:02/08/14 21:35 ID:???
やっぱり厨か。
284名無しさん@お腹いっぱい。:02/08/14 21:58 ID:???
だな
285しっつもーん:02/08/15 09:41 ID:CC91MEX7
>>283 >>284
このスレはド素人しかいないのか。
質問の意味もわかってないみたいだ。
パスワードを付けるだけで安全に文書を送れるか確認したかったのだが。
がっかりだな。
286  :02/08/15 10:35 ID:???
厨>

    質問する時もageんなヴォケ

              sage進行厳守しろや厨が

 そんな質問の仕方では誰も絶対に答えないよ

       所詮厨には言ってる内容も理解できないか
287名無しさん@お腹いっぱい。:02/08/15 10:36 ID:???
DQNリーマンは理解力0
288名無しさん@お腹いっぱい。:02/08/15 10:37 ID:???
それぐらいGOOGLEで検索
検索もできない馬鹿は氏ね
289名無しさん@お腹いっぱい。:02/08/15 10:39 ID:???





           >>280に夏厨が現われますた







290名無しさん@お腹いっぱい。:02/08/15 10:49 ID:???
こーゆうアホは夏以外にもいたはずである。
しかし、夏になると「夏厨」と呼ぶ者がでてくる。
夏以外なら普通に放置されていたはずだ。
ということは、夏厨・夏厨叫ぶやつも一種の「夏厨」なのではないだろうか。
291名無しさん@お腹いっぱい。:02/08/15 12:13 ID:???
夏厨と呼んだのは>>289-291だけ。
292名無しさん@お腹いっぱい。:02/08/15 12:16 ID:???
糞厨房を煽っても得られるものは何もないよ
このスレ何気に良スレなんだから少し抑えて
293もも:02/08/16 14:41 ID:4Kj3Fo5n
まだかよ。無能な奴ばっかりだな。
口ばかりで・・
294名無しさん@お腹いっぱい。:02/08/16 16:49 ID:???
>口ばかりで
  ~~~~~~~~~~
295 :02/08/17 12:56 ID:iL3Lixzp
こんなすれもあるんだな
あるんだな
あるんだね
揚げんなボケ
296名無しさん@お腹いっぱい。:02/08/18 14:32 ID:???
ワードやエクセルといった有名アプリのパスワード解除ソフトなら、ここで堂々と売ってる。
http://www.lostpassword.com/

まあ、ファイル暗号化ならマイナーなフリーソフトのほうがはるかに安全ってことだ。
297名無しさん@お腹いっぱい。:02/08/18 14:44 ID:???
>>296
このスレ否定してるの?
298296:02/08/18 17:28 ID:???
>>297
このスレって何なの?
299名無しさん@お腹いっぱい。:02/08/18 20:35 ID:???
(゚д゚)
300名無しさん@お腹いっぱい。:02/08/18 21:02 ID:???
誠意って何かね?
301名無しさん@お腹いっぱい。:02/08/18 21:12 ID:???
>>298
製品のパスを解析してタダで使う事を目的としたスレ
302お題:02/08/30 16:07 ID:v411kVNT
ここのソフト解析できるです?
http://www.see.ne.jp/~yuichi/HP/index2.htm
303名無しさん@お腹いっぱい。:02/08/30 16:34 ID:???
お題とか偉そうにしてるんじゃねーよ
304名無しさん@お腹いっぱい。:02/08/31 20:14 ID:???
ファイル暗号化とパスワード解除の区別もできていない
ヴァカのいるスレはここですか?
305名無しさん@お腹いっぱい。:02/09/11 10:30 ID:???
はい!ここはヴァカスレですよ。
306タナやん:02/09/11 21:46 ID:???
これがヴァカの見本です。

http://bbs2.sekkaku.net/bbs/upfile/korotan--1028930460.jpg

このまま倉庫まで逝ってよし!
307名無しさん@お腹いっぱい。:02/09/12 09:39 ID:???
情けない!日本のプログラム技術も地に堕ちた!
まさかこんな糞厨房のヴァカに簡単に解析されてしまうなんて。
大井圭一よやすらかに逝ってくれ。
308名無しさん@お腹いっぱい。:02/09/13 00:07 ID:???
softiceのマクロ集なんてないっすかね?
309    :02/09/20 21:15 ID:LTeWKFEs
                
310名無しさん@お腹いっぱい。:02/09/21 21:29 ID:???
試用期間1年経過したので、このスレを終了します。
御試用ありがとうございました。
311 :02/09/22 03:15 ID:???
丸一年か、、、ヽ(´Д`;)ノ すごいね
312名無しさん@お腹いっぱい。:02/09/22 12:14 ID:YRQ+4z/8
このソフト解析できません?
レジストしようとしたのに、いつまでたっても返事が来ない・・・
http://www.bekkoame.ne.jp/ro/kuni/
313名無しさん@お腹いっぱい。:02/09/22 12:26 ID:???
>>312
ソフトウェアの解析依頼は削除対象だよ。

http://www.vector.co.jp/swreg/man/faq/index02.html?#04411
314anonymous:02/09/28 21:43 ID:7wkkkk9i
自分のVisualC++で作ったExeファイルがあります。
これを逆アゼンブラソフトで、アゼンブル言語に変換します。
このアゼンブル言語だけをもとに、元のEXEファイル、または
VisualC++のソースを作ることはかのうでしょうか
315CAMPS V4:02/09/28 22:16 ID:VAfLNf5L
CAMPS V4 の体験版の解析が思うように出来ません。
C++でやってます
316名無しさん@お腹いっぱい。:02/09/28 22:24 ID:???
>>314
アプリからVC++のソースを作ることは不可能
そんなことが出来たらMSは商売出来なくなる
317CAMPS V4:02/09/28 22:30 ID:VAfLNf5L
ttp://www.campspro.com/win4j/downrequest.htm

site code と site key って一体なんでしょう?
318 :02/09/28 22:38 ID:???
319名無しさん@お腹いっぱい。:02/09/29 10:54 ID:cOctc1P2
カーネルデバッグとはなに?
320名無しさん@お腹いっぱい。:02/09/29 13:49 ID:???
どうしてVBのプログラムは逆アゼンブラしても意味がないのですか
321名無しさん@お腹いっぱい。:02/09/29 17:05 ID:???
>320
VBの方はP-CODEでコンパイルした場合、中間コードになっている。
もちろんEXEファイルだが、これは実行時にP-CODEコンパイラが、
作動して、中間コードを翻訳しながら実行すると言う仕掛け。
よって中間コードのEXEは機械語では無い。だから逆アセンブラしても
意味が無い訳。
一方ネイティブコンパイラにすれば、完全な機械語になっている。
当然逆アセンブラすれば解析できる。…のだが…
VBのEXEは非常に非効率になっている。
1つの命令を実行するにしても、多くのルーチンを呼び出し、
解析しずらくなっている。VBが遅いと言われる原因でもあるが。
もし、Visual Studioが手元にあるのなら、VBのネイティブコンパイラ
でコンパイルする時、「シンボリック情報を作成」にチェックして
コンパイルしてVCのデバッガで見れば、どれだけ非効率にコンパイル
されているかが良く解かるだろう。
解析者も、出来ない事は無いが、VCと比較すれば、敬遠したいプログラム
である事は確かである。
322名無しさん@お腹いっぱい。:02/09/29 17:15 ID:???
訂正っす。
誤:これは実行時にP-CODEコンパイラが、
正:これは実行時にP-CODEインタープリタが、
323名無しさん@お腹いっぱい。:02/09/29 17:47 ID:???
5.0以降はネイティブ吐くだろ
324名無しさん@お腹いっぱい。:02/09/29 18:03 ID:???
5.0以降でPro以上のVBならネイティブ吐けますが…何か?
325名無しさん@お腹いっぱい。:02/09/30 00:35 ID:???
>VC++にedbin.exeを読み込ませ、次の様に操作する

読み込ませとありますが、
具体的にどうやればいいのでしょうか
326名無しさん@お腹いっぱい。:02/09/30 00:38 ID:LqSIUPWm
>オンメモリのルーチンから解析する

オンメモリにpgが展開されるのなら、メモリに展開される
前のディスクのpgがあるとおもうのですが、どうなのでしょうか

327名無しさん@お腹いっぱい。:02/09/30 06:36 ID:???
何に対するレスですか
328327:02/09/30 11:42 ID:sqljWlzQ
一般的な質問です。
どうしてオンメモリの部分で解析する必要があるのかどうか
329名無しさん@お腹いっぱい。:02/09/30 21:17 ID:???
こんなスレあったのか・・・
前の方で解説してた人もういないのかな?
俺はw32dsmでやってるけど、参考になったよ
最近はFlashMXやってるんだけど、VBoxとやらがよくわからん。
フラッシュ本体も逆汗途中でメモリ足りないとかいわれるし
330名無しさん@お腹いっぱい。:02/09/30 22:27 ID:???
>>329
ちったぁ検索しろよ
VboxCleaner
331名無しさん@お腹いっぱい。:02/09/30 22:31 ID:yVMjFN3P
332AGE:02/10/06 13:57 ID:GD7cujux
age
333名無しさん@お腹いっぱい。:02/10/06 15:40 ID:???
VboxCleanerでも最近のは無理だべ?
334名無しさん@お腹いっぱい。:02/10/06 17:51 ID:???
>>333
FlashMXではできたよ
335名無しさん@お腹いっぱい。
                 \ │ /
                 / ̄\   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
               ─( ゚ ∀ ゚ )< はつけんはつけん!
                 \_/   \_________
                / │ \
                    ∩ ∧ ∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄\∩ ∧ ∧ \( ゚∀゚)< しじゅうしじゅうしじゅう!
S30年代産〜〜! >( ゚∀゚ )/ |    / \__________
________/ |    〈 |   |
              / /\_」 / /\」
               ̄     / /