首页
社区
课程
招聘
刚学软件调试,大家知道下面这段代码是什么算法吗?
发表于: 2006-6-1 01:19 4627

刚学软件调试,大家知道下面这段代码是什么算法吗?

2006-6-1 01:19
4627
大家知道下面这段代码是什么算法吗?

06805700   /$  53                  push ebx
06805701   |.  55                  push ebp
06805702   |.  8B6C24 0C           mov ebp,dword ptr ss:[esp+C]
06805706   |.  56                  push esi
06805707   |.  8BC5                mov eax,ebp
06805709   |.  8BCD                mov ecx,ebp
0680570B   |.  C1E0 1F             shl eax,1F
0680570E   |.  D1E9                shr ecx,1
06805710   |.  0BC1                or eax,ecx
06805712   |.  8B4C24 14           mov ecx,dword ptr ss:[esp+14]
06805716   |.  8BF0                mov esi,eax
06805718   |.  57                  push edi
06805719   |.  8A11                mov dl,byte ptr ds:[ecx]
0680571B   |.  8B3D 889A8506       mov edi,dword ptr ds:[6859A88]
06805721   |.  83E2 3F             and edx,3F
06805724   |.  8BD8                mov ebx,eax
06805726   |.  C1EE 1A             shr esi,1A
06805729   |.  33D6                xor edx,esi
0680572B   |.  41                  inc ecx
0680572C   |.  C1EB 16             shr ebx,16
0680572F   |.  8B3497              mov esi,dword ptr ds:[edi+edx*4]
06805732   |.  8A11                mov dl,byte ptr ds:[ecx]
06805734   |.  83E2 3F             and edx,3F
06805737   |.  83E3 3F             and ebx,3F
0680573A   |.  33D3                xor edx,ebx
0680573C   |.  8B9C97 00010000     mov ebx,dword ptr ds:[edi+edx*4+100]
06805743   |.  8A51 01             mov dl,byte ptr ds:[ecx+1]
06805746   |.  0BF3                or esi,ebx
06805748   |.  41                  inc ecx
06805749   |.  8BD8                mov ebx,eax
0680574B   |.  83E2 3F             and edx,3F
0680574E   |.  C1EB 12             shr ebx,12
06805751   |.  83E3 3F             and ebx,3F
06805754   |.  33D3                xor edx,ebx
06805756   |.  8B9C97 00020000     mov ebx,dword ptr ds:[edi+edx*4+200]
0680575D   |.  8A51 01             mov dl,byte ptr ds:[ecx+1]
06805760   |.  0BF3                or esi,ebx
06805762   |.  41                  inc ecx
06805763   |.  8BD8                mov ebx,eax
06805765   |.  83E2 3F             and edx,3F
06805768   |.  C1EB 0E             shr ebx,0E
0680576B   |.  83E3 3F             and ebx,3F
0680576E   |.  33D3                xor edx,ebx
06805770   |.  8B9C97 00030000     mov ebx,dword ptr ds:[edi+edx*4+300]
06805777   |.  8A51 01             mov dl,byte ptr ds:[ecx+1]
0680577A   |.  0BF3                or esi,ebx
0680577C   |.  41                  inc ecx
0680577D   |.  8BD8                mov ebx,eax
0680577F   |.  83E2 3F             and edx,3F
06805782   |.  C1EB 0A             shr ebx,0A
06805785   |.  83E3 3F             and ebx,3F
06805788   |.  33D3                xor edx,ebx
0680578A   |.  8B9C97 00040000     mov ebx,dword ptr ds:[edi+edx*4+400]
06805791   |.  8A51 01             mov dl,byte ptr ds:[ecx+1]
06805794   |.  0BF3                or esi,ebx
06805796   |.  41                  inc ecx
06805797   |.  8BD8                mov ebx,eax
06805799   |.  83E2 3F             and edx,3F
0680579C   |.  C1EB 06             shr ebx,6
0680579F   |.  83E3 3F             and ebx,3F
068057A2   |.  33D3                xor edx,ebx
068057A4   |.  C1E8 02             shr eax,2
068057A7   |.  8B9C97 00050000     mov ebx,dword ptr ds:[edi+edx*4+500]
068057AE   |.  8BD5                mov edx,ebp
068057B0   |.  0BF3                or esi,ebx
068057B2   |.  8A59 02             mov bl,byte ptr ds:[ecx+2]
068057B5   |.  41                  inc ecx
068057B6   |.  83E2 1F             and edx,1F
068057B9   |.  D1E2                shl edx,1
068057BB   |.  8A09                mov cl,byte ptr ds:[ecx]
068057BD   |.  83E3 3F             and ebx,3F
068057C0   |.  C1ED 1F             shr ebp,1F
068057C3   |.  0BD5                or edx,ebp
068057C5   |.  83E1 3F             and ecx,3F
068057C8   |.  83E0 3F             and eax,3F
068057CB   |.  33D3                xor edx,ebx
068057CD   |.  33C8                xor ecx,eax
068057CF   |.  8B8497 00070000     mov eax,dword ptr ds:[edi+edx*4+700]
068057D6   |.  0B848F 00060000     or eax,dword ptr ds:[edi+ecx*4+600]
068057DD   |.  0BC6                or eax,esi
068057DF   |.  5F                  pop edi
068057E0   |.  5E                  pop esi
068057E1   |.  5D                  pop ebp
068057E2   |.  5B                  pop ebx
068057E3   \.  C3                  retn

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 517
活跃值: (35)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
应该是在查表嘛!
2006-6-1 09:40
0
雪    币: 205
活跃值: (19)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
象是AES 算法
2006-6-1 19:49
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
push ebx
push ebp
mov ebp,dword ptr ss:[esp+C]
push esi
mov eax,ebp
mov ecx,ebp
shl eax,1F
shr ecx,1
or eax,ecx  eax为关键数据
mov ecx,dword ptr ss:[esp+14] 数据指针送cx
mov esi,eax
push edi
mov dl,byte ptr ds:[ecx]  取第一个数
mov edi,dword ptr ds:[6859A88]
and edx,3F
mov ebx,eax
shr esi,1A
xor edx,esi  第一个数处理后送edx
inc ecx 指向第二个数
shr ebx,16
mov esi,dword ptr ds:[edi+edx*4]  第一个数处理后送esi保存
mov dl,byte ptr ds:[ecx]  取第二个数
and edx,3F
and ebx,3F
xor edx,ebx  
mov ebx,dword ptr ds:[edi+edx*4+100] 第二个数处理送ebx
mov dl,byte ptr ds:[ecx+1] 取第三个数
or esi,ebx (第一次) 第一个处理的数or第二个处理的数 结果送esi
inc ecx 指向第三个数
mov ebx,eax
and edx,3F
shr ebx,12
and ebx,3F
xor edx,ebx
mov ebx,dword ptr ds:[edi+edx*4+200] 第三个数处理送ebx
mov dl,byte ptr ds:[ecx+1] 取第四个数
or esi,ebx (第二次)第一次的结果or第三个数 结果送esi
inc ecx 指向第四个数  以下类推
06805763   |.  8BD8                mov ebx,eax
06805765   |.  83E2 3F             and edx,3F
06805768   |.  C1EB 0E             shr ebx,0E
0680576B   |.  83E3 3F             and ebx,3F
0680576E   |.  33D3                xor edx,ebx
06805770   |.  8B9C97 00030000     mov ebx,dword ptr ds:[edi+edx*4+300]
06805777   |.  8A51 01             mov dl,byte ptr ds:[ecx+1]
0680577A   |.  0BF3                or esi,ebx
0680577C   |.  41                  inc ecx
0680577D   |.  8BD8                mov ebx,eax
0680577F   |.  83E2 3F             and edx,3F
06805782   |.  C1EB 0A             shr ebx,0A
06805785   |.  83E3 3F             and ebx,3F
06805788   |.  33D3                xor edx,ebx
0680578A   |.  8B9C97 00040000     mov ebx,dword ptr ds:[edi+edx*4+400]
06805791   |.  8A51 01             mov dl,byte ptr ds:[ecx+1]
06805794   |.  0BF3                or esi,ebx
06805796   |.  41                  inc ecx
06805797   |.  8BD8                mov ebx,eax
06805799   |.  83E2 3F             and edx,3F
0680579C   |.  C1EB 06             shr ebx,6
0680579F   |.  83E3 3F             and ebx,3F
068057A2   |.  33D3                xor edx,ebx
068057A4   |.  C1E8 02             shr eax,2
068057A7   |.  8B9C97 00050000     mov ebx,dword ptr ds:[edi+edx*4+500]
068057AE   |.  8BD5                mov edx,ebp
068057B0   |.  0BF3                or esi,ebx
068057B2   |.  8A59 02             mov bl,byte ptr ds:[ecx+2]
068057B5   |.  41                  inc ecx
068057B6   |.  83E2 1F             and edx,1F
068057B9   |.  D1E2                shl edx,1
068057BB   |.  8A09                mov cl,byte ptr ds:[ecx]
068057BD   |.  83E3 3F             and ebx,3F
068057C0   |.  C1ED 1F             shr ebp,1F
068057C3   |.  0BD5                or edx,ebp
068057C5   |.  83E1 3F             and ecx,3F
068057C8   |.  83E0 3F             and eax,3F
068057CB   |.  33D3                xor edx,ebx
068057CD   |.  33C8                xor ecx,eax
068057CF   |.  8B8497 00070000     mov eax,dword ptr ds:[edi+edx*4+700]
068057D6   |.  0B848F 00060000     or eax,dword ptr ds:[edi+ecx*4+600]
068057DD   |.  0BC6                or eax,esi
068057DF   |.  5F                  pop edi
068057E0   |.  5E                  pop esi
068057E1   |.  5D                  pop ebp
068057E2   |.  5B                  pop ebx
068057E3   \.  C3                  retn
2006-6-1 22:53
0
雪    币: 50
活跃值: (145)
能力值: ( LV12,RANK:290 )
在线值:
发帖
回帖
粉丝
5
像是把注册名什么的逐个字符运算然后查表
2006-6-2 00:04
0
游客
登录 | 注册 方可回帖
返回
//