|
逆向过程中遇到的一条指令,高级语言代码应该是什么样的?
QEver 你的意思我明白,我的意思是那个地方本来不是死循环,JMP是我随手写的,我表述的意思是他是一个循环而已,我想弄明白的关键点是转换是怎么实现的,呵呵,循环倒不是重点 jasonzhou 怎么会回去呢?。。呵呵 |
|
逆向过程中遇到的一条指令,高级语言代码应该是什么样的?
谢谢,厉害 int *p = (int *)arry; int tmp = *(p++); 这样的确可行,我昨天想了1个小时也没想出来, 不过我记得c++ primer 上面是写指针类型不能进行不同类型之间的赋值,会出错,除了VOID *外。。 然后我直接把arry赋值给p就不行。居然忘了可以强转了。 这个强转的也是结果可以预知的前提下使用吧,比如我要是把double强转成int,虽说编译不会报错,但是运行的结果肯定是不对 的了。。 优化的结果。果然分析起来比较郁闷,上面的结果,实际就是把eax指向了字符串的末尾了 每次指针地址+4。。。一直指向最后的空字符 |
|
逆向过程中遇到的一条指令,高级语言代码应该是什么样的?
QEver 谢谢,我也觉得可能是优化的结果,那个地方不是死循环, 是我省掉了,不好意思 完整的代码如下 004DB1A0 |> /8B10 MOV EDX,DWORD PTR DS:[EAX] 004DB1A2 |. |83C0 04 ADD EAX,4 004DB1A5 |. |8BCA MOV ECX,EDX 004DB1A7 |. |81EA 01010101 SUB EDX,1010101 004DB1AD |. |81E2 80808080 AND EDX,80808080 004DB1B3 |.^ 74 EB JE SHORT 004DB1A0 004DB1B5 |. |F7D1 NOT ECX 004DB1B7 |. |23D1 AND EDX,ECX 004DB1B9 |.^ 74 E5 JE SHORT 004DB1A0 |
|
WIN32汇编为什么不能调用CreateWindow
呵呵,你看罗云斌的书的时候写程序测试的吧?我也前两天也遇到过这个问题 然后我查了下MSDN,现在一般推荐使用扩展的,也就是带EX的API 而CreateWindow不能使用的原因,我查了相应的Use32.inc头文件,发现里面并没有定义这个API,这个就是为什么编译未定义的原因 |
|
软件破解之必备精华资料!(提供网盘地址!速度很快!)(二)(更新啦)
辛苦了。。但是提醒一点。资源再多,也不是你的,明白么?只有读了,学习了,实践了,掌握了,理解了,才是你的。多花点时间去钻研。呵呵,我在逆向方面也是新手,希望可以一起学习进步 |
|
[讨论]研究一下多开技术!
19楼,我想说,假如程序异常退出怎么办?比如断电,死机,强制结束 |
|
[调查]网吧应用软件调查
所在城市 鄂州 网吧规模 100台 计费平台 万象 游戏平台名称(游戏菜单) 讯闪 安全软件 无 其他常用软件 QQ\OFFICE\千千静听 上网用户主要行为(如玩游戏、电影、聊天等) 玩游戏,电影 个人建议和意见 此网吧采用的小哨兵硬件还原卡作为安全措施,对一些能够穿透硬件还原的病毒基本无解,基本都是专杀,格盘,GHOST,因在此网吧当过网管所以比较熟悉 所在城市 武汉 网吧规模 300 计费平台 pubwin 游戏平台名称(游戏菜单) 不记得 安全软件 无 其他常用软件 QQ\OFFICE\网吧浏览本等等 上网用户主要行为(如玩游戏、电影、聊天等) 游戏、电影 个人建议和意见 很少见有安全软件的网吧,一般都依赖收费平台,对注册表、任务管理器、组策略等进行控制来限制用户和病毒,而网吧人来人往,且安全、隐私等相对个人电脑更加需要注意。 PS:建议一些纯支持、帮顶之类的帖子就不要回了,以免妨碍老大进行统计xE |
|
习题:小明的苦恼(仍未解决)
用DOS命令将SYSINFO的信息导出,自己用C写一个控制台程序,输出前面导出的信息,时间就从当前时间随机减去(30分钟内),然后替换系统的SYSINFO |
|
[分享]看看国内的SB专家门出的SB题
如果我选的话选C哈,N-I+2,第二个元素正好等于N。不过确实看不懂,茫然 |
|
|
|
[求助]VB6禁止双开,求指点,求思路
谢谢LS的朋友,在"雨耕山"大大的帮助下已经解决,是OD的问题,现在已经下断点MSGBOX搞定了。不过该程序还有一问题就是,游戏的子窗口,类似是单例模式一样,我双开以后,游戏大厅可以进入,子窗口则不行。 另外想问问,对于这个程序没有壳,为深么不能单步呢?单步就进了系统DLL中,无法返回用户领空 |
|
[求助]VB6禁止双开,求指点,求思路
谢谢LS的,我已经查过相关资料的,你说的那种,有个BUG,就是不能防止程序的多个副本 比如C:\qq.exe, d:\qq.exe,这是不同路径的两个程序了。而经过测试,这个程序不是使用的这种方式。 可能是用了互斥量或者其他,他用什么方式不是重点,重点是怎么入手。。 像我上面说的,直接就跳进去了,如果按ALT+F9返回程序领空,判断重复运行的分支就已经执行完了 |
|
|
|
汇编call指令疑问,期待高手解答
显然ds ss 是同一段,栈顶指针在16也就是10h,压入ip(第一条inc ax的指令的地址,16位偏移地址)后,(sp)-2 = 0eh,而此时要转去以ds:[0eh]单元内容为地址的地方执行,这个地址恰恰是第一条inc ax的指令的地址((ds)=(ss),(sp)=0eh),所以当call word ptr ds:[0eh] 指令执行后cpu 将继续向下执行call word ptr ds:[0eh]的下一条指令 之前(ax) = 0 三个inc ax 后 等于3 参考:http://www.asmedu.net/bbs/pasteinfo.jsp?part=1&level=book&kind=1011&qID=1112 |
|
汇编call指令疑问,期待高手解答
[QUOTE=alllife;871539]非常感谢您的回答,那我想问一下,针对这个程序call指令如何返回呢??因为这个程序中 ds:[0Eh]地址后的程序是不确定的! 我想知道是不是call指令不论执行什么程序,最终都会返回原程序执行后续内容。 感谢~[/QUOTE] CALL指令执行后,会将当前的IP或者CS和IP 指令的地址压入堆栈,然后执行子程序。在否最终回到原程序执行后续内容,这个也要看调用的子程序最终是否返回,不是CALL能决定的。 返回的指令是ret,retf,即当子程序中无死循环,且call和ret配对使用时,才能返回。 一般使用方法如下。 call s ;调用s子程序 mov ax,4c00h int 21h s:inc ax ret call 将ip入栈,ret将ip出栈 0EH这个地址不确定,这个说法是不对的 是可以计算出来的,比如用DEBUG反汇编你的这个程序,可以看到DS:[0EH]指向的位置,WINHEX也应该是可以的,说的不对的地方见谅,我也才学不久,共勉。 |
|
[求助]VB6禁止双开,求指点,求思路
额。。谢谢楼上的关注,本来我是不想提供程序的,因为 我不是求破解,是想请教思路 下载地址在这里 http://www.laizi.net/down/download.php 关于上面的三行我已经说了,载入就停留在第一行,然后第二行就会进入系统DLL(msvbvm60.dll),还没回到第三行就已经提示我禁止重复运行了。(难道要修改系统DLL?。。疑惑,总觉得这样做有问题) |
|
汇编call指令疑问,期待高手解答
首先你的理解就有误,CALL俗称子程序调用,如果学过C语言的话,CALL相当于调用一个函数。函数调用最终是要返回的,也就是执行完 call word ptr ds:[0EH] ds:[0EH]子程序后返回继续执行 inc ax 引用“个人一直认为执行call指令后,直接跳转到ds:[0eh]处执行命令,就不在执行下面的几条指令了~” 这句应该是JMP的功能,但是也要看具体情况,假设你的ds:[0eh]指向的位置就是下一条指令,那也不会跳过下面的几条指令 |
|
[注意]看雪也有木马!!!!
内存修改器,脱壳机,注册机哪样杀毒软件不报的?特别鄙视某些杀软,见不明的壳就报毒。 真要是怕中毒去用虚拟机去。 看雪陪伴我们走过那么多年,提供了那么多优秀的资源给我们学习,无理由支持。 |
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值