日本特级淫片免费看-日本特级黄色-日本特级黄录像片-日本视频中文字幕-成年偏黄网站站免费-成年人福利

softtest
級別: 正式會員
精華主題: 0
發帖數量: 20 個
工控威望: 94 點
下載積分: 474 分
在線時間: 4(小時)
注冊時間: 2018-04-18
最后登錄: 2018-05-30
查看softtest的 主題 / 回貼
樓主  發表于: 2018-04-18 11:04
近日在學習昆侖通態資料,寫了一個反編譯工具 ,但發現一遍反編譯的話,while 指令還原不了。哪位有什么好建議沒?
'———————————————————————                                                                                                                                                                                                      
'自定義子函數:DoStrCrc16。                                                                                                                                                                                                                          
'函數原型為: FUNCTION DoStrCrc16(strProtocol AS STRING) AS INTEGER                                                                                                                                                                                  
'這部分注釋請勿修改,請在下面編輯內容:                                                                                                                                                                                                              
'———————————————————————                                                                                   DoStrCrc16(strProtocol as string) as integer                                                                      
dim iLen as integer                                                                                            |dim Ta as integer                                                                                                                    
dim iSum as byte                                                                                               |dim Tb as byte                                                                                                                      
dim pData(1) as byte                                                                                           |dim Va(1) as byte                                                                                                                    
dim ulSeed as integer                                                                                          |dim Tc as integer                                                                                                                    
dim i    as integer                                                                                            |dim Td as integer                                                                                                                    
dim sel  as integer                                                                                            |dim Te as integer                                                                                                                    
dim wCRC16a(16) as integer                                                                                     |dim Vb(16) as integer                                                                                                                
dim wCRC16b(16) as integer                                                                                     |dim Vc(16) as integer                                                                                                                
wCRC16a[1]=0                                                                                                   |   Vb[1]= 0                                                                                                                          
wCRC16a[2]=49345                                                                                               |   Vb[2]= 49345                                                                                                                      
wCRC16a[3]=49537                                                                                               |   Vb[3]= 49537                                                                                                                      
wCRC16a[4]=320                                                                                                 |   Vb[4]= 320                                                                                                                        
wCRC16a[5]=49921                                                                                               |   Vb[5]= 49921                                                                                                                      
wCRC16a[6]=960                                                                                                 |   Vb[6]= 960                                                                                                                        
wCRC16a[7]=640                                                                                                 |   Vb[7]= 640                                                                                                                        
wCRC16a[8]=49729                                                                                               |   Vb[8]= 49729                                                                                                                      
wCRC16a[9]=50689                                                                                               |   Vb[9]= 50689                                                                                                                      
wCRC16a[10]=1728                                                                                               |   Vb[10]= 1728                                                                                                                      
wCRC16a[11]=1920                                                                                               |   Vb[11]= 1920                                                                                                                      
wCRC16a[12]=51009                                                                                              |   Vb[12]= 51009                                                                                                                    
wCRC16a[13]=1280                                                                                               |   Vb[13]= 1280                                                                                                                      
wCRC16a[14]=50625                                                                                              |   Vb[14]= 50625                                                                                                                    
wCRC16a[15]=50305                                                                                              |   Vb[15]= 50305                                                                                                                    
wCRC16a[16]=1088                                                                                               |   Vb[16]= 1088                                                                                                                      
wCRC16b[1]=0                                                                                                   |   Vc[1]= 0                                                                                                                          
wCRC16b[2]=52225                                                                                               |   Vc[2]= 52225                                                                                                                      
wCRC16b[3]=55297                                                                                               |   Vc[3]= 55297                                                                                                                      
wCRC16b[4]=5120                                                                                                |   Vc[4]= 5120                                                                                                                      
wCRC16b[5]=61441                                                                                               |   Vc[5]= 61441                                                                                                                      
wCRC16b[6]=15360                                                                                               |   Vc[6]= 15360                                                                                                                      
wCRC16b[7]=10240                                                                                               |   Vc[7]= 10240                                                                                                                      
wCRC16b[8]=58369                                                                                               |   Vc[8]= 58369                                                                                                                      
wCRC16b[9]=40961                                                                                               |   Vc[9]= 40961                                                                                                                      
wCRC16b[10]=27648                                                                                              |   Vc[10]= 27648                                                                                                                    
wCRC16b[11]=30720                                                                                              |   Vc[11]= 30720                                                                                                                    
wCRC16b[12]=46081                                                                                              |   Vc[12]= 46081                                                                                                                    
wCRC16b[13]=20480                                                                                              |   Vc[13]= 20480                                                                                                                    
wCRC16b[14]=39937                                                                                              |   Vc[14]= 39937                                                                                                                    
wCRC16b[15]=34817                                                                                              |   Vc[15]= 34817                                                                                                                    
wCRC16b[16]=17920                                                                                              |   Vc[16]= 17920                                                                                                                    
  iSum = 0                                                                                                     |   Tb= 0                                                                                                                            
  ulSeed=0                                                                                                     |   Tc= 0                                                                                                                            
  i=1                                                                                                          |   Td= 1                                                                                                                            
  iLen=!len(strProtocol)                                                                                       |   Ta= !len( strProtocol)                                                                                                            
  if iLen>0 then                                                                                               |   IF   Ta > 0 THEN                                                                                                                  
     iLen=!arrayResize(pData,iLen)                                                                             |      Ta= !ArrayResize( Va , Ta)                                                                                                    
     if !Str2ByteArr(strProtocol,pData)<>0 then                                                                |      IF   !Str2ByteArr( strProtocol , Va) <> 0 THEN                                                                                
      iSum=-1                                                                                                  |         Tb= -1                                                                                                                      
      exit                                                                                                     |         EXIT                                                                                                                        
   endif                                                                                                       |      ENDIF                                                                                                                          
   while iLen                                                                                                  |      IF   Ta THEN                                                                                                                  
     iSum=!BitXor(pData,uLseed)                                                                             |         Tb= !BitXor( Va[Td] , Tc)                                                                                                  
     ulSeed=!BitXor(!BitXor(!BitRShift(ulSeed,8),wCRC16a[!BitAnd(iSum,&H0F)+1]),wCRC16b[!BitRShift(iSum,4)+1]) |         Tc= !BitXor( !BitXor( !BitRShift( Tc , 8) , Vb[!BitAnd( Tb , 15) + 1]) , Vc[!BitRShift( Tb , 4) + 1])                      
     iLen=iLen-1                                                                                               |         Ta= Ta - 1                                                                                                                  
     i=i+1                                                                                                     |         Td= Td + 1                                                                                                                  
   endwhile                                                                                                    |      EndWhile      ENDIF                                                                                                            
  endif                                                                                                        |   ENDIF                                                                                                                            
  DoStrCrc16=!BitAnd(ulSeed,&Hffff)                                                                            |   DoStrCrc16= !BitAnd( Tc , 65535)                                                                                                  
                                                                                                               |   EXIT                                                                                                                              
左邊為設備原代碼,后面為反編譯還原后的。
softtest
級別: 正式會員
精華主題: 0
發帖數量: 20 個
工控威望: 94 點
下載積分: 474 分
在線時間: 4(小時)
注冊時間: 2018-04-18
最后登錄: 2018-05-30
查看softtest的 主題 / 回貼
1樓  發表于: 2018-04-18 11:21
CollectData設備采集函數() as Void
dim Ta as integer
dim Tb as integer
dim Tc as string
dim Td as string
dim Te as string
dim Tf as string
dim Va(0) as byte
dim Vb(0) as byte
dim Vc(0) as byte
dim Tg as integer
dim Th as integer
dim Ti as single
dim Tj as integer
   Ta= 0
   Tb= 0
   !ArrayResize( Va , 12)
   Va[1]= 0
   Va[2]= 1
   Va[3]= 2
   Va[4]= 3
   Va[5]= 4
   Va[6]= 5
   Va[7]= 6
   Va[8]= 7
   Va[9]= 8
   Va[10]= 9
   Va[11]= 0
   Va[12]= 0
   !SvrGetIntFromByteArr( Va , 2 , Ta , 1)
   !ArrayResize( Va , 8)
   Va[1]= 設備屬性00
   Va[2]= 3
   Va[3]= 0
   Va[4]= 0
   Va[5]= 0
   Va[6]= 8
   Tg= !SvrByteArrayModbusCRC( Va , 1 , 6)
   Va[7]= !BitAnd( Tg , 255)
   Th= !BitAnd( Tg , 65280)
   Va[8]= !BitRShift( Th , 8)
   !ArrayResize( Vb , 21)
   Tg= !DevWriteAndReadByteArr( Va , 8 , Vb , 21 , 設備屬性01)
   IF   Tg <> 21 THEN
      !SetSingleChannelValueByName( "通訊狀態" , 2)
      EXIT
   ENDIF
   Ta= 0
   !ArrayResize( Vc , 2)
   IF   Ta < 8 THEN
      Vc[1]= Vb[Ta * 2 + 5]
      Vc[2]= Vb[Ta * 2 + 4]
      Tg= !SvrGetShortFromByteArr( Vc , 1 , Tj , 0)
      Ti= Tj
      !SetSingleChannelValueByNum( Ta + Tb + 2 , Ti)
      Ta= Ta + 1
   EndWhile   ENDIF
   Tb= Tb + Ta
   !SetSingleChannelValueByName( "通訊狀態" , 0)
   EXIT

主站蜘蛛池模板: 免费看毛片的网站 | 国产片在线看 | 亚洲国产欧美在线观看 | 黄色美女网站免费 | 真人一级毛片免费完整视 | 国产精品视频分类一区 | 综合玖玖| 99久久综合精品国产 | 精品亚洲视频在线观看 | 四虎在线精品观看免费 | 亚洲视频一区二区 | 欧美性猛交xxxx乱大交蜜桃 | 国产欧美久久一区二区 | 四虎影院视频在线观看 | 老司机午夜影院 | 中文字幕精品一区二区三区在线 | 亚洲九九九 | 91香蕉国产亚洲一区二区三区 | 欧美性猛交xxx猛交 欧美性猛交黑人xxxx | 中文字幕一区二区区免 | 国产aⅴ一区二区三区 | 三叶草天堂 | 黄色激情毛片 | 色综合天天综合高清网国产 | aⅴ一区二区三区无卡无码 aⅴ视频在线免播放观看 | 91精选视频在线观看 | 色噜噜影院| 一区精品麻豆入口 | 欧美日韩精品一区二区 | 免费一级a毛片在线播放 | 簧片免费观看 | 欧美tv | 精品视频在线播放 | 亚洲综合婷婷 | 国产视频久久久久 | 你懂的网站在线播放 | 国产成人麻豆tv在线观看 | 成人精品视频一区二区三区尤物 | 福利写真视频在线观看网站 | 一级鲁丝片 | 亚洲天堂.com|