鱼C论坛

 找回密码
 立即注册
查看: 2990|回复: 0

谁能帮我分析下这段汇编代码

[复制链接]
发表于 2013-9-15 08:28:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
这里是注册算法   有两个计算的基本参数    Q19520363
10004BF8   > \8B4424 04     mov     eax, dword ptr [esp+4]
10004BFC   .  83F8 01       cmp     eax, 1                           ;  Switch (cases 1..8)
10004BFF      75 0F         jnz     short 10004C10
10004C01   .  8B4424 0C     mov     eax, dword ptr [esp+C]           ;  Case 1 of switch 10004BFC
10004C05   .  C700 09F9D97D mov     dword ptr [eax], 7DD9F909
10004C0B   .  33C0          xor     eax, eax
10004C0D   .  C2 2400       retn    24
10004C10   >  83F8 02       cmp     eax, 2
10004C13      75 07         jnz     short 10004C1C
10004C15   .  33C0          xor     eax, eax                         ;  Case 2 of switch 10004BFC
10004C17   .  B0 11         mov     al, 11
10004C19   .  C2 2400       retn    24
10004C1C   >  83F8 03       cmp     eax, 3
10004C1F      75 0C         jnz     short 10004C2D
10004C21   .  8B4424 10     mov     eax, dword ptr [esp+10]          ;  Case 3 of switch 10004BFC
10004C25   .  C600 03       mov     byte ptr [eax], 3
10004C28   .  33C0          xor     eax, eax
10004C2A   .  C2 2400       retn    24
10004C2D   >  83F8 04       cmp     eax, 4
10004C30      75 07         jnz     short 10004C39
10004C32   .  33C0          xor     eax, eax                         ;  Case 4 of switch 10004BFC
10004C34   .  B0 00         mov     al, 0
10004C36   .  C2 2400       retn    24
10004C39   >  83F8 05       cmp     eax, 5
10004C3C      75 0F         jnz     short 10004C4D
10004C3E   .  8B4424 24     mov     eax, dword ptr [esp+24]          ;  Case 5 of switch 10004BFC
10004C42   .  C700 31303230 mov     dword ptr [eax], 30323031
10004C48   .  33C0          xor     eax, eax
10004C4A   .  C2 2400       retn    24
10004C4D   >  83F8 08       cmp     eax, 8
10004C50      0F85 9A020000 jnz     10004EF0
10004C56   .  E8 00000000   call    10004C5B                         ;  Case 8 of switch 10004BFC
10004C5B  /$  5A            pop     edx
10004C5C  |.  83C2 4E       add     edx, 4E
10004C5F  |.  8B4424 10     mov     eax, dword ptr [esp+10]
10004C63  |.  8B00          mov     eax, dword ptr [eax]
10004C65  |.  33C9          xor     ecx, ecx
10004C67  |>  3B02          /cmp     eax, dword ptr [edx]
10004C69  |.  74 0B         |je      short 10004C76
10004C6B  |.  41            |inc     ecx
10004C6C  |.  83C2 0C       |add     edx, 0C
10004C6F  |.  83F9 32       |cmp     ecx, 32
10004C72  |.  74 30         |je      short 10004CA4
10004C74  |.^ EB F1         \jmp     short 10004C67
10004C76  |>  83C2 04       add     edx, 4
10004C79  |.  66:8B0A       mov     cx, word ptr [edx]
10004C7C  |.  8B4424 14     mov     eax, dword ptr [esp+14]
10004C80  |.  66:8908       mov     word ptr [eax], cx
10004C83  |.  66:8B4A 02    mov     cx, word ptr [edx+2]
10004C87  |.  8B4424 18     mov     eax, dword ptr [esp+18]
10004C8B  |.  66:8908       mov     word ptr [eax], cx
10004C8E  |.  66:8B4A 04    mov     cx, word ptr [edx+4]
10004C92  |.  8B4424 1C     mov     eax, dword ptr [esp+1C]
10004C96  |.  66:8908       mov     word ptr [eax], cx
10004C99  |.  66:8B4A 06    mov     cx, word ptr [edx+6]
10004C9D  |.  8B4424 20     mov     eax, dword ptr [esp+20]
10004CA1  |.  66:8908       mov     word ptr [eax], cx
10004CA4  |>  33C0          xor     eax, eax
10004CA6  \.  C2 2400       retn    24
10004CA9      9E            db      9E
10004CAA      74            db      74                               ;  CHAR 't'
10004CAB      9F            db      9F
10004CAC      63            db      63                               ;  CHAR 'c'
10004CAD      BF            db      BF
10004CAE      C8            db      C8
10004CAF      8B            db      8B
10004CB0      91            db      91
10004CB1      BF            db      BF
10004CB2      96            db      96
10004CB3      59            db      59                               ;  CHAR 'Y'
10004CB4      C0            db      C0
10004CB5      09            db      09
10004CB6      F9            db      F9
10004CB7      D9            db      D9
10004CB8      7D            db      7D                               ;  CHAR '}'
10004CB9      F0            db      F0
10004CBA      19            db      19
10004CBB      5C            db      5C                               ;  CHAR '\'
10004CBC      05            db      05
10004CBD      1E            db      1E
10004CBE      4F            db      4F                               ;  CHAR 'O'
10004CBF      F3            db      F3
10004CC0      59            db      59                               ;  CHAR 'Y'
10004CC1      6C            db      6C                               ;  CHAR 'l'
10004CC2      0D            db      0D
10004CC3      01            db      01
10004CC4      00            db      00
10004CC5      F1            db      F1
10004CC6      87            db      87
10004CC7      50            db      50                               ;  CHAR 'P'
10004CC8      92            db      92
10004CC9      25            db      25                               ;  CHAR '%'
10004CCA      5A            db      5A                               ;  CHAR 'Z'
10004CCB      D2            db      D2
10004CCC      FD            db      FD
10004CCD      92            db      92
10004CCE      1F            db      1F
10004CCF      01            db      01
10004CD0      00            db      00
10004CD1      43            db      43                               ;  CHAR 'C'
10004CD2      9C            db      9C
10004CD3      94            db      94
10004CD4      7C            db      7C                               ;  CHAR '|'
10004CD5      0C            db      0C
10004CD6      19            db      19
10004CD7      3D            db      3D                               ;  CHAR '='
10004CD8      99            db      99
10004CD9      3A            db      3A                               ;  CHAR ':'
10004CDA      3D            db      3D                               ;  CHAR '='
10004CDB      B9            db      B9
10004CDC      AC            db      AC
10004CDD      42            db      42                               ;  CHAR 'B'
10004CDE      0F            db      0F
10004CDF      FF            db      FF
10004CE0      3B            db      3B                               ;  CHAR ';'
10004CE1      A6            db      A6
10004CE2      BF            db      BF
10004CE3      D0            db      D0
10004CE4      58            db      58                               ;  CHAR 'X'
10004CE5      01            db      01
10004CE6      E2            db      E2
10004CE7      70            db      70                               ;  CHAR 'p'
10004CE8      1A            db      1A
10004CE9      F0            db      F0
10004CEA      F5            db      F5
10004CEB      43            db      43                               ;  CHAR 'C'
10004CEC      79            db      79                               ;  CHAR 'y'
10004CED      0F            db      0F
10004CEE      A6            db      A6
10004CEF      61            db      61                               ;  CHAR 'a'
10004CF0      69            db      69                               ;  CHAR 'i'
10004CF1      FB            db      FB
10004CF2      B9            db      B9
10004CF3      28            db      28                               ;  CHAR '('
10004CF4      88            db      88
10004CF5      4D            db      4D                               ;  CHAR 'M'
10004CF6      AE            db      AE
10004CF7      E2            db      E2
10004CF8      16            db      16
10004CF9      10            db      10
10004CFA   .  05            db      05
10004CFB   .  F4 6D 2C C5 D>ascii   "鬽,胚"
10004D00      F5            db      F5
10004D01      1B            db      1B
10004D02      34            db      34                               ;  CHAR '4'
10004D03      75            db      75                               ;  CHAR 'u'
10004D04      17            db      17
10004D05      86            db      86
10004D06      75            db      75                               ;  CHAR 'u'
10004D07      72            db      72                               ;  CHAR 'r'
10004D08      93            db      93
10004D09      93            db      93
10004D0A      03            db      03
10004D0B      97            db      97
10004D0C      63            db      63                               ;  CHAR 'c'
10004D0D      67            db      67                               ;  CHAR 'g'
10004D0E      8B            db      8B
10004D0F      8F            db      8F
10004D10      21            db      21                               ;  CHAR '!'
10004D11      6D            db      6D                               ;  CHAR 'm'
10004D12      0E            db      0E
10004D13      B8            db      B8
10004D14      9A            db      9A
10004D15      26            db      26                               ;  CHAR '&'
10004D16      36            db      36                               ;  CHAR '6'
10004D17      81            db      81
10004D18      1A            db      1A
10004D19      14            db      14
10004D1A      FD            db      FD
10004D1B      7D            db      7D                               ;  CHAR '}'
10004D1C      C7            db      C7
10004D1D      7B            db      7B                               ;  CHAR '{'
10004D1E      74            db      74                               ;  CHAR 't'
10004D1F      E4            db      E4
10004D20      80            db      80
10004D21      31            db      31                               ;  CHAR '1'
10004D22      75            db      75                               ;  CHAR 'u'
10004D23      4E            db      4E                               ;  CHAR 'N'
10004D24      D1            db      D1
10004D25      9B            db      9B
10004D26      C6            db      C6
10004D27      6C            db      6C                               ;  CHAR 'l'
10004D28      AA            db      AA
10004D29      46            db      46                               ;  CHAR 'F'
10004D2A      DF            db      DF
10004D2B      F7            db      F7
10004D2C      07            db      07
10004D2D      06            db      06
10004D2E      1A            db      1A
10004D2F      06            db      06
10004D30      3F            db      3F                               ;  CHAR '?'
10004D31      2D            db      2D                               ;  CHAR '-'
10004D32      82            db      82
10004D33      8E            db      8E
10004D34      F2            db      F2
10004D35      32            db      32                               ;  CHAR '2'
10004D36      DD            db      DD
10004D37      DA            db      DA
10004D38      48            db      48                               ;  CHAR 'H'
10004D39      12            db      12
10004D3A      F2            db      F2
10004D3B      BD            db      BD
10004D3C      AC            db      AC
10004D3D      0C            db      0C
10004D3E      FD            db      FD
10004D3F      E4            db      E4
10004D40      85            db      85
10004D41      32            db      32                               ;  CHAR '2'
10004D42      9B            db      9B
10004D43      3D            db      3D                               ;  CHAR '='
10004D44      E7            db      E7
10004D45      53            db      53                               ;  CHAR 'S'
10004D46      FD            db      FD
10004D47      74            db      74                               ;  CHAR 't'
10004D48      1A            db      1A
10004D49      6D            db      6D                               ;  CHAR 'm'
10004D4A      8C            db      8C
10004D4B      DA            db      DA
10004D4C      BE            db      BE
10004D4D      AF            db      AF
10004D4E      85            db      85
10004D4F      24            db      24                               ;  CHAR '$'
10004D50      74            db      74                               ;  CHAR 't'
10004D51      D1            db      D1
10004D52      3B            db      3B                               ;  CHAR ';'
10004D53      2C            db      2C                               ;  CHAR ','
10004D54      88            db      88
10004D55      0C            db      0C
10004D56      B5            db      B5
10004D57      FD            db      FD
10004D58      7D            db      7D                               ;  CHAR '}'
10004D59      AD            db      AD
10004D5A      C6            db      C6
10004D5B      2A            db      2A                               ;  CHAR '*'
10004D5C      D6            db      D6
10004D5D      91            db      91
10004D5E      AD            db      AD
10004D5F      E3            db      E3
10004D60      F5            db      F5
10004D61      4B            db      4B                               ;  CHAR 'K'
10004D62   .  08            db      08
10004D63   .  46 70 64 E9 4>ascii   "Fpd镋9廟"
10004D6B   .  9B            wait
10004D6C   .  63EB          arpl    bx, bp
10004D6E   .  B8 641F2D0F   mov     eax, 0F2D1F64
10004D73   .  3E:F2:        prefix repne:
10004D75   .  C3            retn
10004D76      2A            db      2A                               ;  CHAR '*'
10004D77      53            db      53                               ;  CHAR 'S'
10004D78      D1            db      D1
10004D79      5D            db      5D                               ;  CHAR ']'
10004D7A      F2            db      F2
10004D7B      3C            db      3C                               ;  CHAR '<'
10004D7C      72            db      72                               ;  CHAR 'r'
10004D7D      BC            db      BC
10004D7E      1F            db      1F
10004DDF      5C            db      5C                               ;  CHAR '\'
10004E37      01            db      01
10004E38   .  00F1          add     cl, dh
10004E3A   .  8750 92       xchg    dword ptr [eax-6E], edx
10004E3D   .  25 5AD2FD87   and     eax, 87FDD25A
10004EF0   >  83F8 0A       cmp     eax, 0A                          ;  Switch (cases A..10)
10004EF3      75 0F         jnz     short 10004F04
10004EF5   .  8B4424 0C     mov     eax, dword ptr [esp+C]           ;  Case A of switch 10004EF0
10004EF9   .  C700 27090000 mov     dword ptr [eax], 927
10004EFF   .  33C0          xor     eax, eax
10004F01   .  C2 2400       retn    24
10004F04   >  83F8 0E       cmp     eax, 0E
10004F07      75 49         jnz     short 10004F52
10004F09   .  8B4424 1C     mov     eax, dword ptr [esp+1C]          ;  Case E of switch 10004EF0
10004F0D   .  8338 05       cmp     dword ptr [eax], 5
10004F10      75 17         jnz     short 10004F29
10004F12   .  8B4424 1C     mov     eax, dword ptr [esp+1C]
10004F16   .  66:C700 921F  mov     word ptr [eax], 1F92
10004F1B   .  8B4424 20     mov     eax, dword ptr [esp+20]
10004F1F   .  66:C700 E276  mov     word ptr [eax], 76E2
10004F24   .  33C0          xor     eax, eax
10004F26   .  C2 2400       retn    24
10004F29   >  8B4424 14     mov     eax, dword ptr [esp+14]
10004F2D   .  66:C700 C281  mov     word ptr [eax], 81C2
10004F32   .  8B4424 18     mov     eax, dword ptr [esp+18]
10004F36   .  66:C700 925F  mov     word ptr [eax], 5F92
10004F3B   .  8B4424 1C     mov     eax, dword ptr [esp+1C]
10004F3F   .  66:C700 E8AD  mov     word ptr [eax], 0ADE8
10004F44   .  8B4424 20     mov     eax, dword ptr [esp+20]
10004F48   .  66:C700 54E1  mov     word ptr [eax], 0E154
10004F4D   .  33C0          xor     eax, eax
10004F4F   .  C2 2400       retn    24
10004F52   >  83F8 10       cmp     eax, 10
10004F55   .  75 20         jnz     short 10004F77
10004F57   .  8B4424 20     mov     eax, dword ptr [esp+20]          ;  Case 10 of switch 10004EF0
10004F5B   .  8338 05       cmp     dword ptr [eax], 5
10004F5E   .  75 12         jnz     short 10004F72
10004F60   .  8B4424 1C     mov     eax, dword ptr [esp+1C]
10004F64   .  66:C700 925F  mov     word ptr [eax], 5F92
10004F69   .  8B4424 20     mov     eax, dword ptr [esp+20]
10004F6D   .  66:C700 C281  mov     word ptr [eax], 81C2
10004F72   >  33C0          xor     eax, eax
10004F74   .  C2 2400       retn    24
10004F77   >  83F8 0C       cmp     eax, 0C
10004F7A   .  75 12         jnz     short 10004F8E
10004F7C   .  8B4424 18     mov     eax, dword ptr [esp+18]          ;  Case C of switch 10004EF0
10004F80   .  66:C700 0100  mov     word ptr [eax], 1
10004F85   .  8B4424 1C     mov     eax, dword ptr [esp+1C]
10004F89   .  66:C700 0000  mov     word ptr [eax], 0
10004F8E   >  33C0          xor     eax, eax                         ;  Default case of switch 10004EF0
10004F90   .  C2 2400       retn    24
10004F93      00            db      00

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-9-23 02:38

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表