首页
社区
课程
招聘
[旧帖] [ 代码求助 ]MOV ESI,DWORD PTR SS:[ESP-158] 0.00雪花
发表于: 2007-12-22 11:57 5377

[旧帖] [ 代码求助 ]MOV ESI,DWORD PTR SS:[ESP-158] 0.00雪花

2007-12-22 11:57
5377
请大侠们帮助一下看看这个代码怎么加;

100A01 ...  MOV ESI,DWORD PTR SS:[EBP-158]   ----->这里是加了密的码串,有时码串的个数是32个,有时是48个,有时是64个,

100A12 ...       当码串个数为32个时就跳到 地址2 上,
100A13 ...       当码串个数为48个时就跳到 地址3上,
100A14 ...       当码串个数为64个时就跳到 地址4上,

也可以判断每16个为1 ,32个为2,48个为3,64个为4 ,根据2,3,4来跳转。   

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
别沉了,这个问题应该不是很难吧?
2007-12-22 14:47
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
3
我写个汇编的,反汇编的自己转
(在.data定义abc 为dword)
mov abc,dword ptr [esp-158]
xor ecx,ecx
.repeat
xor eax,eax
inc ecx                //ecx为个数
mov al,byte ptr [abc+ecx]
.until eax==0

.if ecx==16
  jmp 地址1
.else
     .if ecx==32
         jmp 地址2
        .if ecx==48
          jmp 地址3
         else
          jmp 地址4
         .endif
     .endif
.endif
2007-12-22 19:30
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
非常感谢楼上朋友的回复~!!!
但是我自己写反汇编老是出错,再麻烦一下;帮忙把反汇编的代码写一下。
2007-12-23 15:42
0
雪    币: 740
活跃值: (952)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
5
吐.....血....................
(有的地方自己翻译)
mov abc,dword ptr ss:[esp-158]
xor ecx,ecx
s1:
xor eax,eax
inc ecx                //ecx为个数
mov al,byte ptr [abc+ecx]
cmp eax,0
jnz s1

.if ecx==16   //剩下的用cmp/jn自己翻译

  jmp 地址1
.else
     .if ecx==32
         jmp 地址2
        .if ecx==48
          jmp 地址3
         else
          jmp 地址4
         .endif
     .endif
.endif
2007-12-23 16:53
0
游客
登录 | 注册 方可回帖
返回
//