zoukankan      html  css  js  c++  java
  • WinRAR 去广告的姿势

    一直在使用WinRAR解压文件,感觉非常的好用,可是现在WinRAR添加了广告,每次打开压缩包都会弹出广告,有时候甚至在解压的时候弹出来,而每次弹出广告都会卡顿一下,忍了很长时间今天实在是受够了,准备尝试去广告,故把过程记录下来,这里我使用的是最新版 5.71.

    免责声明:该教程仅用于技术交流,并无任何商业目的,您不得将下述内容用于商业或者非法用途,否则后果自负,如果您喜欢该程序,请支持正版软件,购买注册 ,得到更好的正版服务,如有侵权请邮件联系作者!

    通过API函数去广告 (x32位)

    1.首先我的思路如下,程序在运行后因为会弹出窗体,而广告从某种程度上说也是一种窗体,所以猜测是否会调用 CreateWindowEx这个函数来创建窗体呢,经过使用IDA验证,果然调用了这个函数。

    2.接着使用OD载入WinRAR程序,下一个 CreateWindowExW 函数断点。

    3.接着我们直接 【F9】运行程序,然后程序会断下,观察第一次断下的结果,其堆栈如下,我们需要注意 WindowName这一栏,很明显这个不是。

    4.继续按下【F9】运行程序,当按下5-6次F9后,堆栈中显示出了WinRAR相关的字眼,这里需要注意,马上就是主窗体创建代码了。

    5.此时我们在堆栈窗口,右击选择反汇编窗口中跟随,并在【00D516D1】的位置下断点并去除多余断点,然后重新载入程序。

    6.重新载入程序以后运行程序,并单步F8慢慢向下走。

    7.当走到【00D51AB9】的位置的时候,程序会卡顿一下,然后接着就会弹出广告,由此我们可以肯定这个CALL就是广告弹出的关键CALL

    8.此时我们记下这个CALL的地址【call 00D153A0】,搜索所有常量,并分别将这几处CALL调用替换成NOP指令。

    9.保存文件,保存所有修改,然后运行即可完美去广告。


    ### 通过窗口句柄去广告 (x64)

    1.打开x64dbg,直接F9让程序跑起来,并等待程序出现弹窗,然后切换到句柄,在窗口中选择弹窗窗体类,并记下类名称 RarReminder。

    2.接着在反汇编窗口中搜索字符串,并查找 RarReminder 类名。

    3.找到类名后,在所有的类名上设置断点。

    4.重新加载程序,并F9直接运行,此处需要运行两次,会发现是创建窗体的过程,我们这里需要修改一处地址,使创建窗体失效。

    5.此处将原有指令修改为lea rdx, ds:[0x00007FF70A5FFFFF] 这样CreateWindowEx函数就会失效,从而不去创建弹窗。

    6.保存文件,并运行看看效果,发现已经完美屏蔽广告了,嘎嘎!

    去广告后可以压缩一份,以后直接解压就能使用。

  • 相关阅读:
    149. Max Points on a Line(js)
    148. Sort List(js)
    147. Insertion Sort List(js)
    146. LRU Cache(js)
    145. Binary Tree Postorder Traversal(js)
    144. Binary Tree Preorder Traversal(js)
    143. Reorder List(js)
    142. Linked List Cycle II(js)
    141. Linked List Cycle(js)
    140. Word Break II(js)
  • 原文地址:https://www.cnblogs.com/LyShark/p/11518805.html
Copyright © 2011-2022 走看看