²é¿´: 733  |  »Ø¸´: 6
µ±Ç°Ö÷ÌâÒѾ­´æµµ¡£

sdlj8051

½ð³æ (ÖøÃûдÊÖ)

[½»Á÷] [zt]¶Ô¶à̬±äÐÎÒýÇæ±³ºó·½·¨µÄ¸ÅÊö

Ô­ÎÄ£º  http://madchat.org/vxdevl/vdat/tumisc10.htm
¹Ø¼ü´Ê£º
¶à̬±äÐÎ SMEG

ÒëÕß×¢£ºSMEG£¨Simulated Metamorphic Encryption Generator£©ÊÇÒ»¸öÓ°ÏìÆÄ´óµÄ¶à̬±äÐÎÒýÇæ£¬ËüʹÓõķ½·¨Êܵ½ÖÚÈ˵ķÂЧ¡£ËäÈ»±¾ÎÄûÓÐÏêϸ½éÉÜSMEGÖÐËùʹÓõĸ÷ÖÖ¼¼Êõ£¬µ«ÎÒÃÇÈÔ¿ÉÒÔ´ÓÖÐÒ»¿ú¶ËÄß¡£

ÎÒдÕâÆªÎÄÕµÄÄ¿µÄÊÇÏò´ó¼Ò½éÉܶà̬±äÐÎÒýÇæµÄ¹¤×÷Ô­Àí¡£ÎÒ¼ÙÉèÄãÒѾ­ÊìϤ8086»ã±àÆ÷ÒÔ¼°XOR£¬AND & ORµÈÂß¼­ÔËËã¡£Òò´Ë£¬±¾ÎIJ»°üÀ¨Âß¼­ÔËËã¼°»ã±àÆ÷µÄÄÚÈÝ£¡Ò²Çë´ó¼Ò×¢Ò⣬ËùÓеĻã±àÁÐ±í½«²»°üÀ¨ÓëSEGMENTÓйصÄÄÚÈÝ£¬¶øÊǼÙÉèÄãÖªµÀÔÚÓÃÄĸö¶Î¡£±¾ÎĽéÉܵķ½·¨ÊÇÎÒÔÚSMEG£¨Simulated Metamorphic Encryption Generator£©¶à̬±äÐÎÒýÇæÖÐʹÓõ쬵«Õâ²¢²»Òâζ×ÅËüÊÇΨһµÄ£¡

ÎÄÖÐÓõ½µÄÊõÓ
¨D¨D¨D¨D¨D¨D¨D
     ENCRYPT     =°ÑÔ­À´µÄÐÎ̬ת»»³ÉÁíÒ»ÖÖÐÎ̬¡£
     DECRYPT     =°Ñת»»ºóµÄÐÎ̬»¹Ô­³ÉÔ­À´µÄÐÎ̬¡£
     KEY         =ÓÃÓÚ¼ÓÃÜ£¯½âÃܵļĴæÆ÷»òÖµ¡£
     SLIDING KEY =Ëæ×ÅÑ­»·µÝÔö»òµÝ¼õµÄKEYÖµ¡£
     COUNT       =±»¼ÓÃÜ´úµÄÂë»òÊý¾ÝµÄ×Ö½ÚÊý¡£
     INDEX       =Ö¸Ïò±»¼ÓÃܵĴúÂë»òÊý¾ÝµÄÖ¸Õë¡£
     SIGNATURE   =ËüÊÇÒ»×éΨһµÄ×Ö½ÚÐòÁУ¬ÓÃÓÚ¼ì²é³ÌÐòµÄÄÚÈÝ£¬Ï£Íû½å´Ë¼ì²âÌØÊâµÄ³ÌÐò¡£
     HEURISTIC   =Ó¦ÓÃÓÚÎÊÌâµÄÒ»×鶨ÒåÁ¼ºÃµÄ¹æÔò£¬Ï£Íû½å´ËµÃµ½ÒÑÖª½á¹û¡£

ÎÊÌ⣺ʲôÊǶà̬±äÐΣ¿
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D£­
»Ø´ð£ºàÅ£¬ÀÊÂüÓ¢Óï´ÊµäÊÇÕâÑù¶¨ÒåµÄ£º

¡°¶àÐÎÒ²Ö¸¶à̬adj fml or tech.
ÒÔ¸÷ÖÖ²»Í¬µÄÐÎ̬´æÔÚ¡£¡±

»»¾ä»°Ëµ£¬Ò²¾ÍÊÇÓÐÄÜÁ¦¸Ä±ä×ÔÉíÐÎ̬µÄ¶«Î÷¡£¶ÔËüµÄÃèÊö»¹ÓУºMutable, Metamorphic, Etc...

ÎÊÌ⣺ʲôÊǶà̬±äÐÎÒýÇæ£¿
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
»Ø´ð£º¿ÉÒÔ¼ÓÃÜ£¨»ò²óºÍ£©ÆäËü³ÌÐò»òÊý¾ÝµÄ³ÌÐò£¬²¢ÎªËüÃÇÌṩΨһµÄÒëÂëÆ÷£¬Ëü±ØÐëÕâÑù×ö£º²»ÔÊÐíͬһ³ÌÐò»òÊý¾ÝµÄ¼ÓÃܺóÊÇÀàËÆµÄ¡£

Àý×Ó£º¿´ÏÂÃæÕâ¸ö·Ç³£¼òµ¥µÄÒëÂëÆ÷£º

              MOV      SI,jumbled_data     ;Point to the jumbled data
              MOV      CX,10               ;Ten bytes to decrypt
main_loop:     XOR      BYTE PTR [SI],55    ;XOR (un_scramble!) a byte
              INC      SI                  ;Next byte
              LOOP     main_loop           ;Loop for the 9 remaining bytes

Õâ¸öС³ÌÐò°Ñ55ºÍSIËùÖ¸µÄ10¸ö×Ö½Ú×öXORÔËËã¡£ÌÈÈôÕâ10¸ö×Ö½ÚÔÚÔËÐÐÒëÂëÆ÷ǰÒѺÍ55 XOR¹ýÁË£¬ÄÇôÕâ10×Ö½Ú½«»Ö¸´Ô­Ñù¡£Èç¹ûÄ㲻ȷ¶¨ÎªÊ²Ã´»áÕâÑù£¬ÇëÎÂϰXORÂß¼­ÔËË㣡£¡
OK£¬Äã¿ÉÄÜ»áÕâÑù˵£¬Èç¹ûÿ´ÎÉú³Éʱ¶¼¸Ä±äKEYÖµ£¬¾ÍÊǶà̬±äÐÎÁË£¿àÅ£¬¼ÈÊÇÓÖ²»ÊÇ£¡Èç¹ûÕâÑù×ö£¬±»¼ÓÃܵIJ¿·ÖÊǶà̬±äÐε쬵«ÒëÂëÆ÷»ù±¾Éϱ£³Ö×Ų»±ä£¬Ö»ÓÐKEYÖµ¸Ä±äÁË£¡Òò´Ë£¬Ö§³ÖͨÅä·ûµÄÌØÕ÷ɨÃèÆ÷£¨´ó²¿·ÖµÄɨÃèÆ÷¶¼¿ÉÒÔ£©ÈÔÄÜ·¢ÏÖÄãµÄÒëÂëÆ÷£¡
Äã¿ÉÒÔ»¥»»Ò»Ð©Ö¸ÁîÀ´ÆÛÆ­ÌØÕ÷ɨÃèÆ÷¡£°ÑÕâÑùµÄÏë·¨¸¶ÖîʵÏÖ£¬ÉÏÃæµÄÒëÂëÆ÷¿´ÆðÀ´ÏñÏÂÃæÕâÑù£º

              MOV      CX,10
              MOV      SI,jumbled_data
main_loop:    XOR      BYTE PTR [SI],55
              INC      SI
              LOOP     main_loop

ÏñÄã¿´µ½µÄ£¬ÕâÑùµÄ¸Ä±äÈÔ²»¹»ÀíÏë¡£²»×ãÒÔÆÛÆ­Ä³Ð©½ÏºÃµÄÌØÕ÷ɨÃèÆ÷¡£

¡°Çë¼òÒªÒ»µã£¡Ê²Ã´²ÅÊÇÕæÕýµÄ¶à̬±äÐΣ¿¡±£¬ÎÒÌýµ½Äã¿ìҪץ¿ñÁË£¡
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
àÅ£¬¡°ÕæÕýµÄ¡±¶à̬±äÐξÍÊÇÿ´ÎµÄÒëÂëÆ÷¿´ÆðÀ´ÍêÈ«²»Ò»Ñù£¡¿´ÏÂÃæµÄÒëÂëÆ÷£º

              MOV      CX,10
              NOP
              NOP
              MOV      SI,jumbled_data
              NOP
main_loop:     NOP
              NOP
              XOR      BYTE PTR [SI],55
              NOP
              INC      SI
              NOP
              NOP
              NOP
              NOP
              LOOP     main_loop

Õâ¸öÒëÂëÆ÷ºÍÇ°ÃæÄǸöÔÚ¹¦ÄÜÉÏÊÇÒ»ÑùµÄ£¬Ö»²»¹ýËüÉíÉÏÈöÁËÒ»Ð©Ëæ»úµÄNOPÖ¸Áî¡£ÔÚÿ´ÎÉú³ÉÖ¸Áîºó²åÈ벻ͬÊýÁ¿µÄNOP¡£ÕâÊÇ×î¼òªµÄ¶à̬±äÐÎÐÎʽ¡£Òò´Ë£¬¾ø´ó¶àÊýºÃµÄÌØÕ÷ɨÃèÆ÷ÈÔÄܼì²âµ½ÕâÑù¼òµ¥µÄ¶à̬±äÐΡ£ËüÃÇÖ»ÓÃÌø¹ýNOP£¬¾Í¿ÉÒÔÇåÎúµØ¿´³öÒëÂëÆ÷£¬È»ºó£¬¾Í¿ÉÒÔÓ¦ÓÃÌØÕ÷½øÐмì²âÁË£¡
²»£¬¡°ÕæÕýµÄ¡±¶à̬±äÐαÈÕâÒª¸´ÔÓ¶àÁË£¡ËüÔÚÒëÂëÆ÷ÉÏËæ»úÈö²»Í¬ÊýÁ¿µÄÍêÈ«Ëæ»úµÄ8086Ö¸Á°üÀ¨JUMPºÍCALL£©£¬¶ø²»ÊÇÈöһЩNOPÁË¡£ËüÒ²¿ÉÒÔʹÓò»Í¬µÄÖ÷ÒëÂëÆ÷£¨Ò²¿ÉÄÜ´ÓÔ¤±àÂëºÃµÄÒëÂëÆ÷ÖÐÑ¡ÔñÒ»¸ö£©£¬²¢¸Ä±äÒëÂëÆ÷ÿ´ÎÉú³ÉʱʹÓõļĴæÆ÷£¬È·±£Éú³ÉµÄÎÞÓôúÂë²»»áÆÆ»µÒëÂëÆ÷ËùʹÓõÄÈκμĴæÆ÷£¡ËùÒÔ£¬Ó¦ÓÃÕâЩ¹æÔòºó£¬ÎÒÃǵÄÒëÂëÆ÷¿´ÆðÀ´ÏñÏÂÃæÕâÑù£º

              MOV      DX,10              ;Real part of the decryptor!
              MOV      SI,1234            ;junk
              AND      AX,[SI+1234]       ;junk
              CLD                         ;junk
              MOV      DI,jumbled_data    ;Real part of the decryptor!
              TEST     [SI+1234],BL       ;junk
              OR       AL,CL              ;junk
main_loop:     ADD      SI,SI              ;junk instruction, real loop!
              XOR      AX,1234            ;junk
              XOR      BYTE PTR [DI],55   ;Real part of the decryptor!
              SUB      SI,123             ;junk
              INC      DI                 ;Real part of the decryptor!
              TEST     DX,1234            ;junk
              AND      AL,[BP+1234]       ;junk
              DEC      DX                 ;Real part of the decryptor!
              NOP                         ;junk
              XOR      AX,DX              ;junk
              SBB      AX,[SI+1234]       ;junk
              AND      DX,DX              ;Real part of the decryptor!
              JNZ      main_loop          ;Real part of the decryptor!

ÏñÄã¿´µ½µÄ£¬ÏñÒ»¹ø´óÔӻ⣡£¡µ«ÊÇ£¬ËüÃÇÈÔ¿ÉÖ´ÐС£ÒòΪÓɶà̬±äÐÎÒýÇæÉú³ÉµÄÎÞÓôúÂëÖ±½ÓÈöÔÚÒëÂëÆ÷ÉÏ£¬ËùÒÔËüÃDZØÐëÊÇ¿ÉÖ´Ðе썷ñÔò½«µ¼Ö³ÌÐòÒì³££©¡£×¢Ò⣬ÔÚÕâ¸öÀý×ÓÀÎÒÃÇÔÚÒëÂëÆ÷ÖÐÒ²ÓÃÁËһЩÎÞÓÃÖ¸ÁîËùÓõļĴæÆ÷£¡ÌÈÈôÕâЩ¼Ä´æÆ÷ÖеÄֵû±»ÆÆ»µ£¬¾Í¸üºÃÁË¡£Í¬Ê±»¹Òª×¢Ò⣬ÎÒÃÇÏÖÔÚÿ´ÎÉú³ÉµÄ½á¹û°üÀ¨Ëæ»ú¼Ä´æÆ÷ºÍËæ»úÖ¸ÁÕâÊ¹ÌØÕ÷ɨÃ裨ÉõÖÁ¶ÔÄÇЩ´ÏÃ÷µÄÌØÕ÷ɨÃèÆ÷Ò²ÊÇÈç´Ë£©±äµÃ²»Ì«ÖÐÓã¡Ïà·´£¬±ØÐëʹÓÃHEURISTIC·½·¨²ÅÐУ¬¶øÕâÓÖ¿ÉÄܵ¼ÖÂÎ󱨡£

Òò´Ë£¬¶à̬±äÐÎÒýÇæ¿É·Ö³É3¸öÖ÷Òª²¿·Ö£º
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D£­

1 ..Ëæ»úÊýÉú³ÉÆ÷¡£
2 ..ÎÞÓôúÂëÉú³ÉÆ÷¡£
3 ..ÒëÂëÆ÷Éú³ÉÆ÷¡£

µ±È»£¬»¹ÓÐһЩÆäËü²¿·Ö£¬µ«Õâ3¸öÊÇ×îÖ÷ÒªµÄ£¡
ËüÔõô¹¤×÷ÄØ£¿àÅ£¬SMEGÓÃÏÂÃæµÄ·½·¨Éú³ÉËæ»úÒëÂëÆ÷£º

1 ..Ëæ»úÑ¡ÔñÓÃÓÚÒëÂëÆ÷µÄ¼Ä´æÆ÷¡£°ÑʣϵļĴæÆ÷Áô¸øÎÞÓôúÂëÉú³ÉÆ÷¡£
2 ..Ñ¡ÔñÒ»¸öѹËõµÄÔ¤±àÂëµÄÒëÂëÆ÷¡£
3 ..½øÈëÉú³ÉÕæÕýÒëÂëÆ÷µÄÑ­»·£¬²¢ÈöÉÏÎÞÓôúÂë¡£

ΪÁËÀí½â±»Ñ¡ÔñµÄ¼Ä´æÆ÷ÔõÑùÖÃÈëÒëÂëÆ÷ºÍÎÞÓôúÂ룬Äã±ØÐëÕ¾ÔÚ¶þ½øÖƲãÀ´²é¿´8086Ö¸Á

     XOR   AX,AX    =    00110001 11000000
     XOR   AX,CX    =    00110001 11001000
     XOR   AX,DX    =    00110001 11010000
     XOR   AX,BX    =    00110001 11011000

ÄãÄÜ¿´³öÕâ4Ìõ8086Ö¸ÁîµÄ¶þ½øÖÆ´úÂëµÄģʽÂð£¿àÅ£¬ËùÓеÄ8086Ö¸Áî¶¼×ñÑ­Ò»¶¨µÄÂß¼­Ä£Ê½£¬ÕâЩģʽ¸æËß8086´¦ÀíÆ÷Åöµ½¾ßÌåµÄÖ¸ÁîÓ¦¸ÃʹÓÃÄÄÖּĴæÆ÷£¯Ñ°Ö··½Ê½¡£È«²¿µÄÖ¸Áî¸ñʽºÍÓëģʽÓйصľ«È·Âß¼­ÊµÔÚÌ«¸´ÔÓÁË£¬Ã»°ì·¨ÔÚÕâÀïÒ»Ò»½éÉÜ¡£ÐÒºÃÓÅÐãµÄ8086½Ìѧ£¯²Î¿¼Ö¸µ¼¶¼»áÏêϸ½éÉÜÕâЩÄÚÈÝ¡£
µ±ÕâЩģʽֱ½ÓÉæ¼°µ½¼Ä´æÆ÷ʱ£¬SMEGÀûÓÃÕâÖÖģʽÂß¼­ÓÃËæ»ú¼Ä´æÆ÷Éú³ÉÎÞÓôúÂëºÍÒëÂëÆ÷¡£

SMEGÓÃÏÂÃæµÄ·½·¨Éú³ÉÎÞÓôúÂ룺
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D

¾Í8086Ö¸ÁÀ´Ëµ£¬ÔÚSMEGÄÚ²¿ÓÐÒ»¸ö»ù±¾µÄ¶þ½øÖÆÄ£Ê½±í£¬µ«ÓÐÒ»¸öÖØÒªµÄ²îÒ죬ËùÓеļĴæÆ÷£¯µØÖ··½Ê½Î»ÊÇ0¡£Õâ±»³ÆÎªSKELETON INSTRUCTION TABLE¡£Õâ¸ö±íÒ²°üº¬SMEGΪȷ¶¨Ïà¹ØÎ»Î»ÖÃÀ´¡°²åÈ롱¼Ä´æÆ÷λģʽËùÓÃµÄÆäËü×Ö½Ú¡£Í¨¹ýÂß¼­ÔËËãORºÍAND²åÈëÕâЩģʽ¡£ÓÃÕâ¸ö·½·¨£¬SMEG¿ÉÒÔÉú³ÉÎÞÇî¶àµÄËæ»ú8086Ö¸Á¶ø²»»áÆÆ»µÒëÂëÆ÷ËùÓõļĴæÆ÷¡£SMEGΪÁËÉú³ÉÐé¼ÙµÄ¶Ô¿ÕÀý³ÌµÄCALL£¬ÒÔ¼°µ½ÎÞÓôúÂëÖÜΧµÄÐé¼ÙÌõ¼þ×ªÒÆ£¬Ò²»á°üº¬Ò»Ð©ÀëÉ¢Âß¼­¡£

SMEGÓÃÏÂÃæµÄ·½·¨Éú³ÉÒëÂëÆ÷£º
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D

ÔÚSMEGÄÚ£¬ÓÐÒ»¸ö±í°üº¬ÁËÒëÂëÆ÷ÖÐËùÓõÄͨÓÃ8086Ö¸ÁîÑ¡¼¯£¬ÀýÈçXOR [index],reg£¬µÈµÈ¡£´ËÍ⣬ËüÃǺÍÒëÂëÆ÷Éú³ÉÆ÷ËùʹÓõÄһЩ¿ØÖÆ×Ö½Ú±£´æÔÚSKELETON½á¹¹ÀͬÑù£¬ÔÚSMEGÄÚ£¬ÓÐһЩԤ±àÂëµÄÒëÂëÆ÷±£´æÔÚѹËõµÄ½á¹¹Àƽ¾ùÆðÀ´£¬Ò»¸öÍêÕûµÄÒëÂëÆ÷¿ÉÒÔ±»ÃèÊöΪֻÓÐ11×Ö½ÚµÄÒëÂëÆ÷Éú³ÉÆ÷£¬¼Óµ½Ô¤±àÂëÒëÂëÆ÷Áбí¼È²»Âé·³ÓÖ½ÚÊ¡¿Õ¼ä£¡

SMEGÓÃÏÂÃæµÄ·½·¨Éú³É¶à̬±äÐÎÒëÂëÆ÷£º
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D

Ê×ÏÈ£¬ËüËæÒâÑ¡ÔñÒ»¸öÔ¤±àÂëµÄѹËõµÄÒëÂëÆ÷¡£½ÓÏÂÀ´£¬Ëü½øÈëÒ»¸öÑ­»·£¬½âѹËõÿÌõÒëÂëÆ÷Ö¸Á²åÈëËùÐèµÄ¼Ä´æÆ÷£¬±£´æËüÈ»ºóÉú³É£¨¶ÔÿһÌõÕæÕýµÄÖ¸ÁîÀ´Ëµ£©Ëæ»úÊýÁ¿µÄËæ»úÖ¸Áî¡£Õâ¸öÑ­»·Ò»Ö±Öظ´µ½Õû¸öÒëÂëÆ÷±»¹¹½¨Íê³É¡£×îÖյĽá¹ûÊÇÉú³ÉËæ»ú´óС¡¢Ëæ»ú¼Ä´æÆ÷¡¢Ëæ»ú×é³ÉµÄÒëÂëÆ÷£¡
ͬÑùҪעÒ⣬ֻҪSMEGÉú³ÉË÷ÒýÖ¸ÁËü¾Í»áËæÒâʹÓÃSI£¬DI»òBX£¬ÓÐʱºòÒ²»áÓÃËæ»úÆ«ÒÆÁ¿¡£ÀýÈ磬¼ÙÉè±»¼ÓÃܵĴúÂë´ÓµØÖ·10h¿ªÊ¼£¬¿ÉÒÔÓÃÏÂÃæµÄÖ¸ÁîË÷ÒýÕâ¸öµØÖ·£º

      MOV   SI,10h     ;Start address
      MOV   AL,[SI]    ;Index from initial address

µ«SMEGÓÐЩʱºò½«Éú³ÉÀàËÆÓÚÏÂÃæµÄ¶«Î÷£¬ÔٴλùÓÚ´ÓµØÖ·10h¿ªÊ¼µÄ±»¼ÓÃܵĴúÂ룺

      MOV   DI,0BFAAh      ;Indirect start address
      MOV   AL,[DI+4066h)  ;4066h + 0BFAAh = 10010h (and FFFF = 10h)!!

ÍêÈ«Ëæ»úÌôÑ¡ÕâЩË÷ÒýÖµºÍ³õʼֵ£¬0BFAAhºÍ4066hµÄÀý×ÓÊÇÓÐЧµÄ£¬µ«Ï´ÎËüÃǽ«ÍêÈ«²»Ò»Ñù£¡

[ Last edited by sdlj8051 on 2007-2-10 at 10:36 ]
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

sdlj8051

½ð³æ (ÖøÃûдÊÖ)

ÏÂÃæÁ½¸öÊÇÎÒµÄSMEG¶à̬±äÐÎÒýÇæÉú³ÉµÄÒëÂëÆ÷¡£Ó¦¸Ã×¢Òâµ½ÎÒÉú³ÉµÄ½ü4000¸öÀý×ÓÖÐûÓÐÁ½¸öÊÇÏàËÆµÄ£¡²»ÐÒµÄÊÇ£¬ÎÒûÓÐÈç´Ë¶àµÄÓ²Å̿ռ䣡µ«±£ÊصÄ˵£¬ÒëÂëÆ÷×éºÏµÄ×ÜÊý¿ÉÄÜ»áÉÏÊ®ÒÚ£¡
ÏÂÃæÁбíÖÐËùÓбêÓÐ";junk"µÄÐÐָʾËüÃÇÊDzåÈëÒëÂëÆ÷µÄËæ»úÎÞÓÃÖ¸ÁעÒ⣬SMEG¿ÉÒÔÉú³É¶ÔÐé¼ÙÀý³ÌµÄÎÞÓÃCALL£¬ÒÔ¼°³£¼ûµÄÎÞÓÃÌõ¼þ×ªÒÆ£¡ËùÓбêÓÐ*µÄÐÐָʾËüÃÇÊÇÒëÂëÆ÷µÄÕæÕý²¿·Ö¡£ÎÒÑ¡ÔñչʾÁ½¸öÒëÂëÆ÷£¬Ö÷ÒªÒòΪËüÃǵĴóСÀàËÆ£¬386ºÍ480¸ö×Ö½Ú¡£SMEGÉú³ÉµÄÒëÂëÆ÷µÄ´óС´Ó½ÏСµÄ288µ½½Ï´óµÄ1536×Ö½Ú²»µÈ¡£¼´Ê¹Éú³ÉµÄÁ½¸öÒëÂëÆ÷´óСÏàµÈ£¬µ«ËüÃÇÏàͬµÄ¸ÅÂʼ¸ºõΪʮÒÚ·ÖÖ®Ò»£¡
2Â¥2006-08-23 12:19:58
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

sdlj8051

½ð³æ (ÖøÃûдÊÖ)

;ÒëÂëÆ÷µÄ»ã±àÁÐ±í£¬´óСΪ368¸ö×Ö½Ú¡£
;¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
;±»¼ÓÃÜ´úÂëµÄ´óСÊÇ07DBh (2011 ×Ö½Ú)
;±»¼ÓÃܵĴúÂë´ÓµØÖ·0270h¿ªÊ¼

;ÓÃÏÂÃæµÄ¼Ä´æÆ÷Éú³ÉÒëÂëÆ÷£º
;
;   DX =ÓÃÓÚ¼ÆÊý±»¼ÓÃÜ´úÂëµÄ×Ö½Ú
;   BX =Ö¸Ïò±»¼ÓÃÜ´úÂëµÄË÷Òý
;   AL =¼ÓÃÜKey
;   CL =ͨÓù¤×÷¼Ä´æÆ÷

0100    JNS     0103            ;junk
0102    CLD                     ;junk
0103    SAR     SI,CL           ;junk
0105    CMP     BP,0708         ;junk
0109    STC                     ;junk
010A    JG      010E            ;junk
010C    OR      SI,CX           ;junk
010E    XOR     DI,3221         ;junk
0112    ADD     BP,0805         ;junk
0116    AND     BP,3512         ;junk
011A    SHR     SI,CL           ;junk
011C    MOV     SI,1B04         ;junk
0120    SAR     DI,CL           ;junk
0122    ADC     SI,2506         ;junk
0126    ADC     DI,1F11         ;junk
012A    SBB     BP,[0F3E]       ;junk
012E    CMP     BP,3F1E         ;junk
0132    DEC     SI              ;junk
0133    NOT     DI              ;junk
0135    AND     SI,083D         ;junk
0139    INC     SI              ;junk
013A    SBB     DI,0103         ;junk

013E    MOV     DX,1791         ;*  Set up the COUNT register
                               ;   3x Actual number of bytes!

0141    CLD                     ;junk
0142    JB      0146            ;junk
0144    TEST    SI,AX           ;junk
0146    SBB     DI,SP           ;junk
0148    TEST    DI,[251B]       ;junk
014C    TEST    CL,[SI]         ;junk
014E    SHL     BP,1            ;junk
0150    MOV     BX,017D         ;junk
0153    CMC                     ;junk
0154    MOV     DI,1218         ;junk
0158    JO      015C            ;junk
015A    RCR     DI,1            ;junk
015C    STC                     ;junk
015D    CMP     BP,DI           ;junk

015F    MOV     AX,CS           ;*  Get CODE SEG in AX

0161    TEST    CH,[BX+17]      ;junk
0164    SBB     BP,3107         ;junk
0168    INC     DI              ;junk
0169    RCR     BP,1            ;junk

016B    MOV     DS,AX           ;*  Make DATA SEG = CODE SEG

016D    ADD     DI,[3B04]       ;junk

0171    MOV     AL,50           ;*  Set up decrypt KEY reg

0173    JNB     0179            ;junk
0175    MOV     SI,1439         ;junk
0179    JB      017D            ;junk
017B    ADC     DI,AX           ;junk
017D    JMP     0185            ;junk
0180    MOV     BP,1B36         ;junk
0184    RET                     ;junk
0185    RCR     SI,1            ;junk

0187    MOV     BX,842D         ;*  Set up the INDEX register

018A    SUB     SI,CX           ;junk * Decryptor MAIN LOOP

018C    OR      DI,0B0F         ;junk
0190    MOV     BP,1E3E         ;junk
0194    RCL     DI,CL           ;junk
0196    SUB     BP,2E12         ;junk
019A    ADD     DI,[2E2A]       ;junk
019E    ROL     SI,CL           ;junk

01A0    MOV     CL,[BX+7E43]    ;*  Get next encrypted byte
                               ;   NOTE:  original index 842Dh plus 7E43h =
                               ;   10270h AND FFFFh = 0270h!  Which is the
                               ;   start of the Encrypted code!

01A4    JZ      01AC            ;junk
01A6    TEST    BH,[DI+2B3B]    ;junk
01AA    CMP     [BP+SI],DL      ;junk
01AC    ROL     DI,1            ;junk
01AE    SBB     DI,263A         ;junk

01B2    DEC     DX              ;*  Dec the COUNT register (x1)

01B3    CALL    0180            ;junk
01B6    MOV     DI,CX           ;junk
01B8    ADC     BP,282E         ;junk

01BC    SUB     CL,AL           ;*  Decrypt byte using KEY reg

01BE    MOV     SI,372A         ;junk
01C2    TEST    BP,3A10         ;junk
01C6    CALL    0180            ;junk
01C9    ADC     SI,1317         ;junk
01CD    CLD                     ;junk

01CE    INC     AX              ;*  Increase the KEY reg

01CF    XOR     SI,203D         ;junk
01D3    JMP     01E1            ;junk
01D6    DEC     DI              ;junk
01D7    CMC                     ;junk
01D8    SUB     BP,[3624]       ;junk
01DC    XOR     SI,0200         ;junk
01E0    RET                     ;junk
01E1    CMP     [SI+13],BH      ;junk

01E4    SUB     DX,0001         ;*  Dec the COUNT register (x2)

01E8    CMP     AX,0517         ;junk
01EC    SUB     BP,2816         ;junk
01F0    AND     SI,0807         ;junk
01F4    SUB     SI,2E03         ;junk
01F8    ROR     BP,1            ;junk
01FA    INC     DI              ;junk
01FB    RCR     SI,CL           ;junk
01FD    TEST    CH,DH           ;junk
01FF    SUB     BP,1026         ;junk

0203    MOV     [BX+7E43],CL    ;*  Store the decrypted byte

0207    JNB     020D            ;junk
0209    XOR     DI,1B30         ;junk
020D    CLD                     ;junk
020E    ADD     SI,3C38         ;junk

0212    INC     BX              ;*  Increase the INDEX reg

0213    XOR     DI,0B2C         ;junk
0217    JMP     022F            ;junk
021A    OR      BP,1C18         ;junk
021E    JLE     0221            ;junk
0220    DEC     BP              ;junk
0221    ADC     SI,0E32         ;junk
0225    AND     DI,1522         ;junk
0229    CMP     [BP+SI+36],BH   ;junk
022C    ROL     SI,1            ;junk
022E    RET                     ;junk
022F    SHL     DI,1            ;junk
0231    SHR     DI,1            ;junk

0233    DEC     DX              ;*  Dec the COUNT register (x3)
                               ;   Hence the 3x original size!

0234    JNZ     023F            ;*  Not zero then jump to 023Fh

0236    TEST    CL,[BP+DI]      ;junk
0238    ADC     BP,012D         ;junk

023C    JMP     025B            ;*  Finished decrypting!

023F    INC     BP              ;junk
0240    JNB     0246            ;junk
0242    CMP     BX,0E2E         ;junk
0246    TEST    DI,SI           ;junk
0248    SBB     SI,3233         ;junk

024C    MOV     CX,018A         ;*  Set address of MAIN LOOP

024F    ROL     DI,1            ;junk
0251    SUB     DI,BX           ;junk
0253    SHR     DI,1            ;junk
0255    TEST    BL,[BX+DI+1C2E] ;junk

0259    PUSH    CX              ;*  Stack LOOP address
025A    RET                     ;*  RETurn to MAIN LOOP

025B    MOV     SI,211F         ;junk
025F    CMP     BL,[BX+DI]      ;junk
0261    SUB     BP,2D33         ;junk
0265    MOV     BP,3735         ;junk
0269    XOR     SI,SI           ;junk
026B    MOV     BP,[0A38]       ;junk
026F    INC     DI              ;junk

0270    The encrypted code starts here.

;****************** ÒëÂëÆ÷1µÄ»ã±àÁÐ±íµ½´Ë½áÊø *******************


;¼ÓÃÜÆ÷2µÄ»ã±àÁÐ±í£¬´óСΪ480¸ö×Ö½Ú¡£
;¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D£­
;±»¼ÓÃÜ´úÂëµÄ´óСÊÇ07DBh (2011 ×Ö½Ú)
;±»¼ÓÃܵĴúÂë´ÓµØÖ·02E0h¿ªÊ¼

;ÓÃÏÂÃæµÄ¼Ä´æÆ÷Éú³ÉÒëÂëÆ÷£º
;
;   AX = Count of bytes in the encrypted code
;   BX = Index pointing to the encrypted code
;   DL = The encryption key
;   CL = General work register

0100    NOT     SI              ;junk
0102    TEST    CH,[BP+DI+0F]   ;junk
0105    INC     DI              ;junk
0106    CLD                     ;junk
0107    ADC     DI,132A         ;junk
010B    JPE     0111            ;junk
010D    OR      DI,332E         ;junk
0111    INC     SI              ;junk
0112    TEST    AL,CH           ;junk
0114    JMP     0120            ;junk
0117    JPE     011D            ;junk
0119    CMP     DX,1909         ;junk
011D    RCR     DI,CL           ;junk
011F    RET                     ;junk
0120    INC     DI              ;junk
0121    TEST    DI,BP           ;junk
0123    JMP     0133            ;junk
0126    TEST    DI,0E24         ;junk
012A    TEST    DI,093A         ;junk
012E    AND     DI,SP           ;junk
0130    CMP     [BP+SI],BH      ;junk
0132    RET                     ;junk
0133    MOV     BP,0C28         ;junk
0137    TEST    DH,CH           ;junk
0139    TEST    BP,1C16         ;junk
013D    ROR     BP,CL           ;junk
013F    JZ      0145            ;junk
0141    TEST    DH,[BX]         ;junk
0143    ADD     DI,SP           ;junk
0145    TEST    CL,[SI+3435]    ;junk
0149    MOV     BP,2E08         ;junk
014D    TEST    CX,DI           ;junk
014F    CLD                     ;junk
0150    MOV     SI,3831         ;junk
0154    AND     BP,363E         ;junk
0158    ROR     DI,CL           ;junk
015A    CLC                     ;junk
015B    JNS     0163            ;junk
015D    SAR     SI,1            ;junk
015F    SBB     DI,3308         ;junk
0163    SBB     DI,362B         ;junk

0167    MOV     AX,07DB         ;*  Set up the COUNT register

016A    AND     DI,0F1E         ;junk
016E    JMP     0182            ;junk
0171    MOV     DI,2F31         ;junk
0175    CMP     CX,2212         ;junk
0179    SBB     SI,2E14         ;junk
017D    TEST    BL,[SI+341D]    ;junk
0181    RET                     ;junk
0182    CMP     BH,19           ;junk

0185    MOV     BX,B977         ;*  Set up the INDEX register

0188    TEST    AL,[DI+072C]    ;junk
018C    TEST    DI,2306         ;junk
0190    SHR     SI,1            ;junk

0192    MOV     DX,CS           ;*  Get CODE SEG in DX

0194    CALL    0171            ;junk
0197    TEST    SI,1410         ;junk
019B    CLC                     ;junk
019C    SHL     DI,CL           ;junk

019E    MOV     DS,DX           ;*  Make DATA SEG = CODE SEG

01A0    NEG     SI              ;junk
01A2    CALL    0171            ;junk
01A5    TEST    CH,[BP+DI+070F] ;junk

01A9    MOV     DL,8D           ;*  Set decrypt KEY register

01AB    MOV     DI,3A30         ;junk
01AF    JMP     01B9            ;junk
01B2    JBE     01B5            ;junk
01B4    INC     DI              ;junk
01B5    NOT     DI              ;junk
01B7    CMC                     ;junk
01B8    RET                     ;junk
01B9    XOR     CX,DX           ;junk

01BB    CALL    01B2            ;junk * Decryptor MAIN LOOP

01BE    TEST    SI,3029         ;junk
01C2    INC     DI              ;junk
01C3    SBB     DI,1E19         ;junk
01C7    MOV     DI,0038         ;junk
01CB    RCR     DI,CL           ;junk
01CD    MOV     BP,1809         ;junk

01D1    NEG     BYTE PTR [BX+4969]      ;*  NEG the byte at [BX + 4969]
                                       ;   NOTE:  original index B977h plus
                                       ;   4969h = 102E0h AND FFFFh = 02E0h!
                                       ;   Which is the start of the
                                       ;   encrypted code!

01D5    TEST    BP,2A37         ;junk
01D9    CMP     CX,2B37         ;junk
01DD    JMP     01E2            ;junk
01E0    DEC     DI              ;junk
01E1    RET                     ;junk

01E2    MOV     CL,[BX+4969]    ;*  Get the NEGed byte into CL

01E6    CMC                     ;junk
01E7    ROR     DI,CL           ;junk
01E9    INC     BP              ;junk
01EA    TEST    DI,281E         ;junk
01EE    JZ      01F3            ;junk
01F0    TEST    BH,[BX+DI+05]   ;junk
01F3    MOV     DI,160C         ;junk
01F7    SUB     BP,BP           ;junk

01F9    XOR     CX,DX           ;*  XOR byte with the KEY

01FB    TEST    BL,[BP+DI+3C]   ;junk
01FE    JNB     0204            ;junk
0200    ADD     BP,0A13         ;junk
0204    CMP     [BX+DI],CL      ;junk
0206    CALL    01E0            ;junk
0209    CALL    01E0            ;junk
020C    DEC     DI              ;junk
020D    AND     DI,073A         ;junk

0211    DEC     AX              ;*  Decrease the COUNT register

0212    XOR     DI,2036         ;junk
0216    NEG     BP              ;junk
0218    ADC     DI,SP           ;junk
021A    CMC                     ;junk
021B    CMP     BL,[BX+SI]      ;junk

021D    DEC     DX              ;*  Decrease the KEY register

021E    ADC     BP,1821         ;junk
0222    SHL     DI,CL           ;junk
0224    CMP     AX,1816         ;junk
0228    SHL     DI,1            ;junk
022A    CMP     AL,[BP+DI+1A]   ;junk
022D    MOV     SI,1819         ;junk
0231    ADD     SI,063B         ;junk

0235    DEC     DX              ;*  Decrease the KEY register

0236    SUB     BP,0028         ;junk
023A    AND     BP,1930         ;junk
023E    CLD                     ;junk
023F    ADC     BP,2D1D         ;junk
0243    SAR     DI,CL           ;junk
3Â¥2006-08-23 12:20:27
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

sdlj8051

½ð³æ (ÖøÃûдÊÖ)

¡ï ¡ï
sinapdb(½ð±Ò+2):ллÌṩ£¬»¶Ó­³£À´£¡£¡£¡
0245    XCHG    CX,DX           ;*  Swap CX & DX

0247    TEST    CX,DX           ;junk
0249    MOV     SI,CX           ;junk
024B    XOR     SI,030D         ;junk
024F    SUB     DI,311C         ;junk

0253    XCHG    DL,[BX+4969]    ;*  Swap [index] & DL
                               ;   NOTE:  This restores the decrypted byte!

0257    ADD     DI,0E13         ;junk
025B    CMP     BL,[BP+DI+33]   ;junk
025E    CLD                     ;junk
025F    NOT     SI              ;junk
0261    MOV     SI,3F1C         ;junk

0265    XCHG    CX,DX           ;*  Swap CX & DX, restoring the KEY in DL

0267    MOV     SI,221A         ;junk
026B    OR      BP,0D2C         ;junk
026F    MOV     DI,231B         ;junk

0273    ADD     BX,0001         ;*  Increase the INDEX register

0277    JMP     0288            ;junk
027A    ADC     BP,AX           ;junk
027C    TEST    BL,[DI+19]      ;junk
027F    TEST    DI,0321         ;junk
0283    NEG     DI              ;junk
0285    ROL     SI,CL           ;junk
0287    RET                     ;junk
0288    SBB     BP,1B0D         ;junk
028C    XOR     BP,2A23         ;junk
0290    CMP     DL,3A           ;junk
0293    TEST    BH,[DI]         ;junk

0295    AND     AX,AX           ;*  Test if COUNT is zero
0297    JNZ     02AD            ;*  Jump to 02ADh if not

0299    CALL    027A            ;junk
029C    AND     DI,291F         ;junk
02A0    JA      02A6            ;junk
02A2    MOV     DI,0514         ;junk
02A6    ADC     SI,1F2A         ;junk

02AA    JMP     02BC            ;*  Finished decrypting

02AD    JMP     02B2            ;junk
02B0    CLC                     ;junk
02B1    RET                     ;junk
02B2    SHL     DI,CL           ;junk
02B4    CLD                     ;junk
02B5    ADD     SI,2C1A         ;junk

02B9    JMP     01BB            ;*  Jump to MAIN LOOP

02BC    TEST    BH,BL           ;junk
02BE    MOV     DI,210C         ;junk
02C2    SUB     SI,1600         ;junk
02C6    CALL    02B0            ;junk
02C9    XOR     SI,2F1D         ;junk
02CD    MOV     BP,0430         ;junk
02D1    TEST    BH,[DI+362A]    ;junk
02D5    OR      DI,1C21         ;junk
02D9    STC                     ;junk
02DA    CMP     DI,2828         ;junk
02DE    CLC                     ;junk
02DF    DEC     BP              ;junk

02E0    The encrypted code starts here.

;****************** ÒëÂëÆ÷2»ã±àÁÐ±íµ½´Ë½áÊø *******************


ÏÂÃæÊÇÉÏÊöÁ½¸öÒëÂëÆ÷µÄHEXת´¢£¬ÒëÂëÆ÷1ÔÚ×ó±ß£¬ÒëÂëÆ÷2ÔÚÓұߡ£ÕâЩת´¢ÏÔʾºÜÄÑ´ÓËüÃǵ±ÖÐÕÒ³öÏàͬµÄÌØÕ÷£¬Õâ¾ÍÊǶà̬±äÐÎÒýÇæ×îÖ÷ÒªµÄÄ¿µÄ!Òò´Ë£¬ÎªÁ˼ì²â£¬Äã±ØÐëдһ¸ö³ÌÐò£¬³¢ÊÔʹÓÃÖÇÄܵķ½·¨ÕÒ³ö¿´ÆðÀ´Ïñ¶à̬±äÐÎÒýÇæÒëÂëÆ÷µÄ¶«Î÷¡£ÕâºÜÈÝÒײúÉúÎ󱨣¬»òÕßÔÚijЩÇé¿öÏ£¬ÍêÈ«ÒÅ©ÁËÒëÂëÆ÷£¡


HEX DUMP OF ENCRYPTOR 1, 368 bytes        HEX DUMP OF ENCRYPTOR 2, 480 bytes
¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D        ¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D¨D
7901FCD3FE81FD0807F97F020BF181F7          F7D6846B0F47FC81D72A137A0481CF2E
213281C5050881E51235D3EEC7C6041B          334684C5E909007A0481FA0919D3DFC3
D3FF81D6062581D7111F1B2E3E0F81FD          4785FDE90D00F7C7240EF7C73A0923FC
1E3F4EF7D781E63D084681DF0301BA91          383AC3C7C5280C84F5F7C5161CD3CD74
17FC720285F01BFC853E1B25840CD1E5          04843703FC848C3534C7C5082E85CFFC
BB7D01F5C7C718127002D1DFF939FD8C          C7C6313881E53E36D3CFF87906D1FE81
C8846F1781DD073147D1DD8ED8033E04          DF083381DF2B36B8DB0781E71E0FE911
3BB0507304C7C63914720213F8E90500          00C7C7312F81F9122281DE142E849C1D
C7C5361BC3D1DEBB2D842BF181CF0F0B          34C380FF19BB77B984852C07F7C70623
C7C53E1ED3D781ED122E033E2A2ED3C6          D1EE8CCAE8DAFFF7C61014F8D3E78EDA
8A8F437E740684BD3B2B3812D1C781DF          F7DEE8CCFF84AB0F07B28DC7C7303AE9
3A264AE8CAFF8BF981D52E282AC8C7C6          0700760147F7D7F5C333CAE8F4FFF7C6
2A37F7C5103AE8B7FF81D61713FC4081          29304781DF191EC7C73800D3DFC7C509
F63D20E90B004FF52B2E243681F60002          18F69F6949F7C5372A81F9372BE90200
C3387C1381EA010081F8170581ED1628          4FC38A8F6949F5D3CF45F7C71E287403
81E6070881EE032ED1CD47D3DE84EE81          847905C7C70C162BED33CA845B3C7304
ED2610888F437E730481F7301BFC81C6          81C5130A3809E8D7FFE8D4FF4F81E73A
383C4381F72C0BE9150081CD181C7E01          074881F73620F7DD13FCF53A184A81D5
4D81D6320E81E72215387A36D1C6C3D1          2118D3E781F81618D1E73A431AC7C619
E7D1EF4A7509840B81D52D01E91C0045          1881C63B064A81ED280081E53019FC81
730481FB2E0E85FE81DE3332B98A01D1          D51D2DD3FF87CA85CA8BF181F60D0381
C72BFBD1EF84992E1C51C3C7C61F213A          EF1C318697694981C7130E3A5B33FCF7
1981ED332DC7C5353733F68B2E380A47          D6C7C61C3F87CAC7C61A2281CD2C0DC7
                                          C71B2381C30100E90E0013E8845D19F7
                                          C72103F7DFD3C6C381DD0D1B81F5232A
                                          80FA3A843D23C07514E8DEFF81E71F29
                                          7704C7C7140581D62A1FE90F00E90200
                                          F8C3D3E7FC81C61A2CE9FFFE84FBC7C7
                                          0C2181EE0016E8E7FF81F61D2FC7C530
                                          0484BD2A3681CF211CF981FF2828F84D

àÅ£¬ÎÒÏ£ÍûÕâÆª¶ÌÎÄÄÜʹÄãÀí½â¶à̬±äÐÎÒýÇæµÄ¹¤×÷Ô­Àí£¬´ÓÖÐÊܵ½ÆôµÏ£¬»ñµÃÁé¸Ð£¬´Ó¶øÐ´³ö×Ô¼ºµÄ¶«Î÷£¬ÎÒµÄÏ£ÍûÂä¿ÕÁËÂð£¿
4Â¥2006-08-23 12:20:38
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

sdlj8051

½ð³æ (ÖøÃûдÊÖ)

×Ô¼º¶¥
5Â¥2006-12-26 00:02:26
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

1

6Â¥2006-12-26 09:48:37
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

gph-rabbit

½ð³æ (СÓÐÃûÆø)

1

ÕýÐè񻀯£¬Í¬µÀÖ®ÈËÌ«ÉÙÁË¡£
7Â¥2006-12-29 00:53:03
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ sdlj8051 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 335·Ö | ²ÄÁÏÓ뻯¹¤×¨Ë¶ | GPA 4.07 | ÓпÆÑо­Àú +4 cccchenso 2026-03-23 4/200 2026-03-23 23:00 by Ðìckkk
[¿¼ÑÐ] 265Çóµ÷¼Á +10 ÁºÁºÐ£Ð£ 2026-03-17 10/500 2026-03-23 21:17 by Ò»ÇÐOK
[¿¼ÑÐ] 336»¯¹¤µ÷¼Á +4 Íõ´ó̹1 2026-03-23 5/250 2026-03-23 18:32 by allen-yin
[¿¼ÑÐ] 306Çóµ÷¼Á +9 chuanzhu´¨Öò 2026-03-18 9/450 2026-03-23 13:17 by luoyongfeng
[¿¼ÑÐ] 298Çóµ÷¼Á +8 Éϰ¶6666@ 2026-03-20 8/400 2026-03-23 11:02 by laoshidan
[¿¼ÑÐ] Ò»Ö¾Ô¸070300Õã´ó»¯Ñ§358·Ö£¬Çóµ÷¼Á£¡ +4 ËÖËÖÓã.. 2026-03-21 4/200 2026-03-23 08:12 by Iveryant
[¿¼ÑÐ] 311Çóµ÷¼Á +6 ¶¬Ê®Èý 2026-03-18 6/300 2026-03-22 20:18 by edmund7
[¿¼ÑÐ] 289²ÄÁÏÓ뻯¹¤£¨085600£©BÇøÇóµ÷¼Á +3 ÕâôÃû×ÖÕ¦Ñù 2026-03-22 4/200 2026-03-22 17:56 by ÔÆÃñ´óÀîÀÏʦ
[¿¼ÑÐ] 287Çóµ÷¼Á +8 ³¿»èÏßÓëÐǺ£ 2026-03-19 9/450 2026-03-22 17:01 by i_cooler
[¿¼ÑÐ] ÉúÎïѧ071000 329·ÖÇóµ÷¼Á +5 ÎÒ°®ÉúÎïÉúÎﰮΠ2026-03-17 5/250 2026-03-22 16:42 by tcx007
[¿¼ÑÐ] 289Çóµ÷¼Á +7 »³èªÎÕè¤l 2026-03-20 7/350 2026-03-22 15:57 by ColorlessPI
[¿¼ÑÐ] 269ר˶Çóµ÷¼Á +6 ½ð¶÷±´ 2026-03-21 6/300 2026-03-22 14:31 by ColorlessPI
[»ù½ðÉêÇë] ɽ¶«Ê¡ÃæÉÏÏîÄ¿ÏÞ¶îÆÀÉó +4 ʯÈð0426 2026-03-19 4/200 2026-03-22 08:50 by Wei_ren
[¿¼ÑÐ] 286Çóµ÷¼Á +10 Faune 2026-03-21 10/500 2026-03-21 23:34 by 314126402
[¿¼ÑÐ] 297Çóµ÷¼Á +3 ϲ»¶»¹ÊDz»¸ÊÐÄ 2026-03-20 3/150 2026-03-21 18:33 by ѧԱ8dgXkO
[¿¼ÑÐ] Çóµ÷¼Á +3 °×QF 2026-03-21 3/150 2026-03-21 13:12 by zhukairuo
[¿¼ÑÐ] Ò»Ö¾Ô¸»ªÖпƼ¼´óѧ£¬080502£¬354·ÖÇóµ÷¼Á +5 ÊØºòϦÑôCF 2026-03-18 5/250 2026-03-21 01:06 by JourneyLucky
[¿¼ÑÐ] Ò»Ö¾Ô¸Öк£Ñó²ÄÁϹ¤³Ìר˶330·ÖÇóµ÷¼Á +8 С²Ä»¯±¾¿Æ 2026-03-18 8/400 2026-03-20 23:16 by JourneyLucky
[¿¼ÑÐ] 304Çóµ÷¼Á +7 ˾¿Õ. 2026-03-18 7/350 2026-03-20 23:08 by JourneyLucky
[¿¼ÑÐ] Çóµ÷¼Á£¬Ò»Ö¾Ô¸:ÄϾ©º½¿Õº½Ìì´óѧ´óѧ £¬080500²ÄÁÏ¿ÆÑ§Ó빤³Ìѧ˶£¬×Ü·Ö289·Ö +4 @taotao 2026-03-19 4/200 2026-03-20 22:14 by JourneyLucky
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û