Universe 1.63註冊碼生成分析及序號產生器原碼(上) (2千字)

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

Universe 1.63註冊碼生成分析及序號產生器原碼(上)

作者:Maomao[CCG][BCG][CNCG]

下載:
  http://www.diardsoftware.com/ (最新版本1.63)

說明: 本程式是一個專門用於製作美麗星空圖的軟體,可生成各種各樣的星雲、星空、行星、星系等,可自由調節,效果非常棒,而且沒有加殼。


    用TRW載入後下getwindowtexta,執行並註冊,輸入使用者名稱Maomao[CCG]與註冊碼87654321後OK,被中斷,按F5,又被中斷(第一次取使用者名稱,第二次取註冊碼),下BD *, pmodule後,來到這裡:
0177:00462D65  CALL    `USER32!GetWindowTextA`
0177:00462D6B  MOV      ECX,[EBP+10]  <=====游標在這裡
0177:00462D6E  PUSH    BYTE -01
0177:00462D70  CALL    00456056
0177:00462D75  JMP      SHORT 00462D82

按住F10,一直來到這裡:
0177:0040AC87  MOV      EDX,[EBP-0C]
0177:0040AC8A  ADD      EDX,9C
0177:0040AC90  PUSH    EDX
0177:0040AC91  MOV      ECX,00497950
0177:0040AC96  CALL    00416D8E    <=====可疑的call
0177:0040AC9B  MOV      [EBP-04],EAX
0177:0040AC9E  CMP      DWORD [EBP-04],BYTE +00
0177:0040ACA2  JZ      0040ACDC    <=====跳走就Over了
0177:0040ACA4  MOV      EAX,[EBP-0C]

在0177:0040AC96行上設斷,重新註冊跟進去,這個call裡有這樣一段程式:
0177:00416D8E  PUSH    EBP
0177:00416D8F  MOV      EBP,ESP
0177:00416D91  SUB      ESP,BYTE +08
0177:00416D94  MOV      [EBP-04],ECX
0177:00416D97  CMP      DWORD [EBP+0C],BYTE +00
0177:00416D9B  JNG      00416DA5
0177:00416D9D  MOV      EAX,[EBP+0C]
0177:00416DA0  MOV      [EBP-08],EAX
0177:00416DA3  JMP      SHORT 00416DAE
0177:00416DA5  MOV      ECX,[EBP-04]
0177:00416DA8  MOV      EDX,[ECX+10]
0177:00416DAB  MOV      [EBP-08],EDX
0177:00416DAE  MOV      EAX,[EBP+08]
0177:00416DB1  PUSH    EAX
0177:00416DB2  CALL    00416844      <=====算註冊碼的call
0177:00416DB7  ADD      ESP,BYTE +04
0177:00416DBA  XOR      ECX,ECX
0177:00416DBC  CMP      [EBP-08],EAX  <=====這裡?EAX可以看到真正註冊碼"603700860"
                                      ? EBP-8是輸入的註冊碼"87654321"
0177:00416DBF  SETZ    CL            <=====設定標誌
0177:00416DC2  MOV      EAX,ECX
0177:00416DC4  MOV      ESP,EBP
0177:00416DC6  POP      EBP
0177:00416DC7  RET      08
    程式執行時,時刻檢測所輸註冊碼,直接暴破是沒有用的。修改標誌為1可以使用程式不彈出錯誤框,但無法完成註冊。現在我們得到一個正確的註冊碼:User Name:Maomao[CCG] User Key:603700860
    如果僅滿足於在0177:00416DBC處找出一個註冊碼,對破解水平的提高沒有任何幫助。我們還是要追進算碼的那個call。

(上篇完~~~)

相關文章