首页
社区
课程
招聘
[求助]用HIEW进行解密,就是对一段字符与01h进行异或,请见下面求助!
发表于: 2008-6-5 23:23 5149

[求助]用HIEW进行解密,就是对一段字符与01h进行异或,请见下面求助!

2008-6-5 23:23
5149
按了F3进入编辑,再按F7写解密代码,这样写的:

xor al,01
loop 1

这个是我看加密与解密这本书的,但我不太理解,这个"loop 1"加与不加有什么区别,为什么要加这个呢?

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 208
活跃值: (11)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
大虾帮我解答一下,是不是我说得不是很清楚?在<加密与解密>这本书里提到的
2008-6-6 11:58
0
雪    币: 50161
活跃值: (20625)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
3
你看hiew说明
Crypt can be used for (de-)crypting code or data with some simple
algorithm. Single byte, word or dword of code or data is crypted at a time
(press F2 to change crypt width). Crypt routine must end with "LOOP lineNumber"
operator.

Available commands:

Reg mode : neg,mul,div
Reg-Reg mode: mov,xor,add,sub,rol,ror,xchg,and,or
Reg-Imm mode: mov,xor,add,sub,rol,ror,and,or
Imm mode : loop

All 8/16/32 bit registers are available, except for AL/AX/EAX that is
used for (de-)crypted byte/word/dword input and output.

Differences from usual assembler:
* there are no jumps;
* 'loop' means jump or stop
* 'rol/ror' operands must have the same width, i.e. ROL AX,CL is not
allowed.
* 32-bit registers cannot be used as 'div' and 'mul' operands

Example:
a. XOR byte with 0AAh:
1. XOR al,0aah
2. LOOP 1

b. XOR word with mask increment
1. MOV dx,0
2. XOR ax,dx
3. ADD dx,1
4. LOOP 2
2008-6-6 12:05
0
雪    币: 208
活跃值: (11)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
看说明了,loop表示jump或stop,但两个示例中,怎么一个是loop 1,一个是loop 2.这里的1和2是什么意思?
2008-6-6 12:47
0
雪    币: 50161
活跃值: (20625)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
5
1和2是行号,相当于jmp 第一行 或第二行
2008-6-6 12:59
0
雪    币: 208
活跃值: (11)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
刚刚去厕所拉了屎,在厕所中就想到了,loop 1表示跳到下一个字节,2就是表示过两个字符,回来后看到原来我的想法是对的,谢谢坛主!
2008-6-6 14:05
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
7
那里对?

太短
2008-6-6 14:09
0
游客
登录 | 注册 方可回帖
返回
//