朋友给我发了几套考研的视频,但是有机器码,需要密码,所以想请教一下高手如何解决这种情况。
破解基础知识
一、机械代码,又称机器码。
当ultraedit打开并编辑exe文件时,您将看到
许多数字由0,1,2,3,4,5,6,7,8,9,A,B,C,D,E和F组成,这些数字
这是机器代码。
修改程序时,必须通过修改机器码来修改exe文件。
二、所有需要熟练掌握的编译知识(只有这么多)
不太好理解,但是可以先强行背下来,熟悉一下,然后慢慢理解。
比较a和b
Mov a,B将B的值发送给a。
Ret返回到主程序
Nop没有效果,英文“no operation”的缩写,意思是“什么都不做”(机器码90)***机器码的意思见上。
(说明:ultraedit打开编辑exe文件时,看到90,相当于汇编语句nop)
调用子程序
如果je或jz相等,则跳转(机器代码74或0F84)
如果jne或jnz不相等,则跳转(机器代码75或0F85)
Jmp无条件跳转(机器代码EB)
jb小于就跳。
如果ja大于,则跳转
如果jg大于,则跳转。
如果jge大于或等于,则跳转。
如果jl小于,则跳转。
如果jle小于或等于,则跳转
从堆栈中弹出
推送堆栈
三。常见修改(机器代码)
74= >75 74= >90 74= >EB
75= >74 75= >90 75= >EB
jnz-& gt;not otherwise provided 除非另有规定
75->;90(相应的机器代码修改)
jnz-& gt;jmp
75->;EB(相应的机器代码修改)
jnz-& gt;塞尔维亚-克罗地亚语缩写
75->;74(正常)0F 85 ->0F 84(特殊情况下,有时会修改相应的机器码)
四、两种不同情况下的不同修改方法
1.修改为jmp
je(jne,jz,jnz)= & gt;Jmp对应的机器码EB(错误消息中发现的第一个跳转)jmp用于绝对无条件跳转,从而跳过下面的错误消息。
Xxxxxxxxxxxx错误信息,如:注册码不正确,对不起,未注册版本不能...、“功能在演示中不可访问”、“命令不可访问”或“不能保存在共享软件/演示中”等。(我们希望跳过它,防止它出现)。
xxxxxxxxxxxx的正确路线在哪里?
2.修改为nop
je(jne,jz,jnz)= & gt;Nop对应的机器码90(正确信息的第一次跳转)用来擦除这个跳转,使其无效,失效,这样程序就可以顺利的得出后面的正确信息。
Xxxxxxxxxxxx正确信息,如:注册成功,感谢您的支持等。(我们希望不要跳过,让它出现,程序一定要顺利来到这里)。
Xxxxxxxxxxxx错误信息(我们希望不要跳到这里,让它出现)
这是一个不可战胜的公式。希望大家想学破解的都背一下。破解不难,关键是背一些基础知识。
一(跳)死,九缸(90)死(对应以上2。修改为nop)
一个(跳)是胡,一个饼(EB)上菜(对应上面1。修改为jmp)。
如果妻子去世(74),将没有妻子(75)
爸爸死(84)爸爸死(85)。仅此而已。