Board logo

主題: [求助] [問題]84H XOR 8eH 89h 天書的問題^^ [打印本頁]

發表人: lsgd1313    時間: 2005-3-6 04:43 AM     主題: [問題]84H XOR 8eH 89h 天書的問題^^


引用:
回到nsccripter

其劇本檔是nscript.dat

這是一個利用nscript附贈的程式nscmake.exe檔將文字檔加密和結合得到的檔案

文字檔名稱是0~~10.txt

重點是怎麼加密……

其實………還真是單純到爆炸

每個BYTE和84H做XOR運算而已………我沒這麼變態慢慢try、是從日本佬哪邊看來的

也就是例如原來是00H---運算後得到84H 84H--00H

真的不會算的拿小算盤的工程型敲一下就知道了
所以剩下的問題就很單純啦,寫個小程式每讀一個BYTE和84H做一次XOR就反運算回
來,搞定!

或者善用UEDIT的巨集功能也是可以滴……

最後呢……一個小小的問題

他們不知道想啥,在8eH前面都多加了一個89h

拿掉就沒事了

這麼一來,原始文字的檔案就出現了

我是拿月姬來玩的

其他的遊戲,沒試過。

不過原理大概大同小異



有人知道他說的小程式怎麼寫嗎?
還有..他再說什麼
發表人: Acute    時間: 2005-3-6 09:32 AM

你大概不會寫程式 @_@
是挺簡單, 假設檔案載入陣列, 然後:

int decode (unsigned char *src, unsigned char *des, int iSize)
{
   int i, j;

   for ( i=j=0 ; i < iSize ; i++ )
   {
      if ( src == 0x89 && src[i+1] == 0x8e )
         i++ ;
      des[j++] = src[i++]^0x80 ;
   }
   return (j);
}

基本上... 他沒仔細說明, 89H 跟8Eh 是解碼前還是解碼後... 這兒是假設解碼前

Acute.
發表人: lsgd1313    時間: 2005-3-6 12:02 PM


引用:
Acute寫到:
你大概不會寫程式 @_@
是挺簡單, 假設檔案載入陣列, 然後:

int decode (unsigned char *src, unsigned char *des, int iSize)
{
   int i, j;

   for ( i=j=0 ; i < iSize ; i++ )
   {
      if ( src == 0x89 && src[i+1] == 0x8e )
         i++ ;
      des[j++] = src[i++]^0x80 ;
   }
   return (j);
}

基本上... 他沒仔細說明, 89H 跟8Eh 是解碼前還是解碼後... 這兒是假設解碼前

Acute.


嗚哇
天書等級提升了
一大片啊一大片啊

--
陣列是什麼阿 XD
還有到底要怎麼把他弄出來Orz(還有弄回去XD 月姬看不懂日文 想自己把別人翻譯好的丟進去看看)

謝謝啦
毒王就是毒王




歡迎光臨 TWed2k (http://twed2k.org/) Powered by Discuz! 4.1.0