• 标 题:炒股理财1.65破解方法 (8千字)
  • 作 者:parrot
  • 时 间:2001-4-13 8:59:18
  • 链 接:http://bbs.pediy.com

            炒股理财1.65破解方法

  炒股理财1.63用的是ASPROTECT,而1.65用的却是ASPACK,只要我们找到了关键点说可以用内存补丁破解了。
 下面是我分析的结果,感兴趣的朋友可以看看。(希望那位-=1212=-不要再跟我过不去了。)

    PART A  30天时间限制。
    PART B  注册时的关键点。
  PART C  启动是的注册码。
  PART D  显示关于时的注册码校验。

==========<  PART  A >=============

0167:0040B117  8BC6                MOV      EAX,ESI                         
0167:0040B119  E86AEEFFFF          CALL      00409F88                         
0167:0040B11E  80BEB005000000      CMP      BYTE PTR [ESI+000005B0],00  ;关键!当[ESI+5B0]=0时可以跳过未注册窗口。     
0167:0040B125  0F85EA010000        JNZ      0040B315                    ;这里改成JMP 0040b315     
0167:0040B12B  837D841E            CMP      DWORD PTR [EBP-7C],1E      ;30天的时间限制     
0167:0040B12F  0F8EE0010000        JLE      0040B315                         
0167:0040B135  8B8694030000        MOV      EAX,[ESI+00000394]               
0167:0040B13B  E8DCE00C00          CALL      004D921C                         
0167:0040B140  E823E61300          CALL      00549768                         
0167:0040B145  DD9D48FFFFFF        FSTP      REAL8 PTR [EBP-00B8]             
0167:0040B14B  DD8548FFFFFF        FLD      REAL8 PTR [EBP-00B8]             
0167:0040B151  D82538B34000        FSUB      REAL4 PTR [0040B338]             
0167:0040B157  DD9D40FFFFFF        FSTP      REAL8 PTR [EBP-00C0]             
0167:0040B15D  8B9540FFFFFF        MOV      EDX,[EBP-00C0]                   
0167:0040B163  8D8D38FFFFFF        LEA      ECX,[EBP-00C8]                   
0167:0040B169  899538FFFFFF        MOV      [EBP-00C8],EDX                   
0167:0040B16F  8D45D4              LEA      EAX,[EBP-2C]                     
0167:0040B172  8B9544FFFFFF        MOV      EDX,[EBP-00BC]                   
0167:0040B178  89953CFFFFFF        MOV      [EBP-00C4],EDX                   
0167:0040B17E  BAA3255600          MOV      EDX,005625A3                     
0167:0040B183  DD01                FLD      REAL8 PTR [ECX]                   
0167:0040B185  DD9D50FFFFFF        FSTP      REAL8 PTR [EBP-00B0]             
0167:0040B18B  66C745A86800        MOV      WORD PTR [EBP-58],0068            
0167:0040B191  E86E411500          CALL      0055F304                        

===========< PART B >============

0167:0041F2BE  015588              ADD      [EBP-78],EDX                     
0167:0041F2C1  E83E021400          CALL      0055F504                         
0167:0041F2C6  294588              SUB      [EBP-78],EAX                     
0167:0041F2C9  8BC6                MOV      EAX,ESI                           
0167:0041F2CB  E8F0F8FFFF          CALL      0041EBC0                  ;注册时的关键,里面的算法。F8进入                   
0167:0041F2D0  294588              SUB      [EBP-78],EAX              ;算出的EAX值与[EBP-78]相减。                   
0167:0041F2D3  837D8800            CMP      DWORD PTR [EBP-78],00 ;比较[EBP-78]是否为00           
0167:0041F2D7  0F85C0010000        JNZ      0041F49D                  ;正确则会跳至41F49D,也就是注册成功窗口。             
0167:0041F2DD  BA02000080          MOV      EDX,80000002                     
0167:0041F2E2  8BC3                MOV      EAX,EBX                           
0167:0041F2E4  E887FF1300          CALL      0055F270                         
0167:0041F2E9  66C745A05000        MOV      WORD PTR [EBP-60],0050           
0167:0041F2EF  BA42D95600          MOV      EDX,0056D942                     
0167:0041F2F4  8D45DC              LEA      EAX,[EBP-24]                     
0167:0041F2F7  E808001400          CALL      0055F304                         
0167:0041F2FC  FF45AC              INC      DWORD PTR [EBP-54]               
0167:0041F2FF  8B10                MOV      EDX,[EAX]                         
0167:0041F301  B101                MOV      CL,01                           
0167:0041F303  8BC3                MOV      EAX,EBX                     
========< PART  C  >==================

0167:00402498  8B9538FFFFFF        MOV      EDX,[EBP-00C8]                    
0167:0040249E  8D45FC              LEA      EAX,[EBP-04]                      
0167:004024A1  019530FFFFFF        ADD      [EBP-00D0],EDX                   
0167:004024A7  E858D01500          CALL      0055F504                         
0167:004024AC  298530FFFFFF        SUB      [EBP-00D0],EAX                   
0167:004024B2  8B15F4A35700        MOV      EDX,[0057A3F4]                   
0167:004024B8  8B02                MOV      EAX,[EDX]                         
0167:004024BA  E801C70100          CALL      0041EBC0        ;F8进入,里面有软件启动时的注册码算法。                 
0167:004024BF  298530FFFFFF        SUB      [EBP-00D0],EAX  ;EAX与[EBP-00D0]相减。                 
0167:004024C5  0FB797AC050000      MOVZX    EDX,WORD PTR [EDI+000005AC]       
0167:004024CC  299530FFFFFF        SUB      [EBP-00D0],EDX  ;EDX与[EBP-00D0]相减。                 
0167:004024D2  83BD30FFFFFF00      CMP      DWORD PTR [EBP-00D0],00 ;关键,比较[EBP-00D0]是否为0         
0167:004024D9  0F95C2              SETNZ    DL                      ;设标志,正确时DL=0         
0167:004024DC  83E201              AND      EDX,01                           
0167:004024DF  8B8744030000        MOV      EAX,[EDI+00000344]               
0167:004024E5  E852B20E00          CALL      004ED73C                         
0167:004024EA  8BC3                MOV      EAX,EBX                           
0167:004024EC  E85B6B0E00          CALL      004E904C                         
0167:004024F1  83BD30FFFFFF00      CMP      DWORD PTR [EBP-00D0],00           
0167:004024F8  7507                JNZ      00402501                         
0167:004024FA  C687B005000001      MOV      BYTE PTR [EDI+000005B0],01       
0167:00402501  66C746108C00        MOV      WORD PTR [ESI+10],008C            
0167:00402507  BA87195600          MOV      EDX,00561987                    

=========< PART  D >============

0167:004203E0  E81FF11300          CALL      0055F504                          
0167:004203E5  294580              SUB      [EBP-80],EAX                      
0167:004203E8  8B15F4A35700        MOV      EDX,[0057A3F4]                   
0167:004203EE  8B02                MOV      EAX,[EDX]                         
0167:004203F0  E8CBE7FFFF          CALL      0041EBC0  ;显示关于时的注册码校验算法与注册的是一样的。                       
0167:004203F5  294580              SUB      [EBP-80],EAX                     
0167:004203F8  8BC7                MOV      EAX,EDI                           
0167:004203FA  E84D8C0C00          CALL      004E904C                         
0167:004203FF  837D8000            CMP      DWORD PTR [EBP-80],00             
0167:00420403  0F85B3000000        JNZ      004204BC  ;不跳时显示注册成功,并显示注册人和名字。                       
0167:00420409  66C746105000        MOV      WORD PTR [ESI+10],0050           
0167:0042040F  BA3DE65600          MOV      EDX,0056E63D                     
0167:00420414  8D45E0              LEA      EAX,[EBP-20]                     
0167:00420417  E8E8EE1300          CALL      0055F304                         
0167:0042041C  FF461C              INC      DWORD PTR [ESI+1C]               
0167:0042041F  8B10                MOV      EDX,[EAX]                         
0167:00420421  8BC7                MOV      EAX,EDI                           
0167:00420423  E8D48E0C00          CALL      004E92FC                         
0167:00420428  FF4E1C              DEC      DWORD PTR [ESI+1C]               
0167:0042042B  8D45E0              LEA      EAX,[EBP-20]                     
0167:0042042E  BA02000000          MOV      EDX,00000002                     
0167:00420433  E840EF1300          CALL      0055F378                          
0167:00420438  66C746105C00        MOV      WORD PTR [ESI+10],005C          



==============================================

    欢迎光临我的网站: g f h . 6 to 23 .c o m          

   
                                                                                                                              gfh
                                        2001.4.13