00401063 /0F85 26000000 jnz C加m.0040108F//是否已输入2个字符,输入了该跳转不跳,则跳到第二行!JMP则KO.
挺新意的。
本帖最后由 b2356967 于 2011-1-17 10:41 编辑
有破解方法:打开记事本儿,随便输入三个字符——复制——粘贴在你的第一行。
哈哈,粘贴也是输入的一种哈~
紧跟楼上:0040105F 837D F8 03 cmp dword ptr ss:,0x2 //此处0x2是第一行字符数量的跳转,若等于二则跳,大于、小于二都不跳,修改此处自定义字符输入的数量为多少再跳转,可以自定义改为3,则在程序中输入3个字符后光标切换到第二行。
修改此处比楼上更具灵活性哈~
我下万能断点找到的此处,请问楼上怎么找到的?
本帖最后由 yjd333 于 2011-1-17 11:45 编辑
无论哪个版本的易语言,OD载入后直接Ctrl+B搜索“FCDBE3”,然后运行至此,就可以搜索字符串了
通杀E语言复制代码
定位是个难点,介绍一个好方法爆搜:
就是查找指令直接定位到控件开头
关键指令:CALL DWORD PTR SS:
大家把滚动条拉到最上面
按下ctrl+f 键入
CALL DWORD PTR SS:
这个指令 然后查找
发现对应哪个十六进制是
ff55fc就在ff55fc上按下断点(F2)
然后小跑(f9) 输入你该输入的 然后点注册
od断下,然后进洞(f7),剩下的我就不多说了,你就自己发挥吧!对付易语言这个要记住。易静态编译直接秒了 本帖最后由 z26650 于 2011-1-17 12:07 编辑
00458675 FF36 push dword ptr
00458677 FF15 A0724600 call dword ptr [<&KERNEL32.lstrlenA>] ; kernel32.lstrlenA
0045867D 8B0E mov ecx, dword ptr
0045867F 8941 F8 mov dword ptr , eax //保存字符串长度
改为
0045867F 8941 F8 mov dword ptr , 0x1//字符串长度始终为一
或者是00458675 FF36 push dword ptr
00458677 FF15 A0724600 call dword ptr [<&KERNEL32.lstrlenA>] ;kernel32.lstrlenA
改
00458675 B8 01000000 mov eax, 1
0045867A 90 nop
0045867B 90 nop
0045867C 90 nop
不过。这两种方法该了之后。。会发生有趣的事- -
页:
[1]