序號產生器制分析: (1千字)

看雪資料發表於2001-11-19

Ad Muncher V4.3d
http://www.admuncher.com/download.shtml
regged by Fpc/CCG&BCG

tools: TRW NYDoll/CCG漢化版


0167:0057C4D9  MOV      EDI,005D487B        <- 這個地址是輸入的註冊碼
0167:0057C4DE  MOV      AL,2D
0167:0057C4E0  MOV      ECX,14
0167:0057C4E5  REPNE SCASB             <- 檢查有沒有'-'
0167:0057C4E7  JNZ      NEAR 0057C5D3    <- 沒有則失敗,跳下去。有則繼續

0167:0057C4ED  MOV      BYTE [EDI-01],00
0167:0057C4F1  PUSH    EDI            <- ***
0167:0057C4F2  MOV      EDI,10
0167:0057C4F7  MOV      ESI,005D487B
0167:0057C4FC  CALL    0057CCB2        <- 將'-'前面的部分string->Hex,到eax

0167:0057C501  MOV      EBX,EAX        <- 儲存到ebx

0167:0057C503  MOV      ESI,005D477B        <- 這裡是指向名字的
0167:0057C508  XOR      ECX,ECX
0167:0057C50A  XOR      EAX,EAX

0167:0057C50C  LODSB 
0167:0057C50D  ADD      ECX,EAX
0167:0057C50F  ROR      ECX,08
0167:0057C512  ADD      ECX,EBX
0167:0057C514  CMP      AL,00
0167:0057C516  JNZ      0057C50C        <- 上面這個小迴圈將名字與註冊碼前一部分混合運算

0167:0057C518  NOT      ECX            <- 取反

0167:0057C51A  POP      ESI            <- ***

0167:0057C51B  PUSH    ECX
0167:0057C51C  MOV      EDI,10
0167:0057C521  CALL    0057CCB2        <- 將'-'後面的部分string->Hex,到eax

0167:0057C526  POP      ECX
0167:0057C527  CMP      ECX,EAX        <- 這裡是關鍵的比較啦
0167:0057C529  JNZ      NEAR 0057C5D3

相關文章