导语:接触较多的都是so,但是so改多了,容易让人迷失自己[滑稽]以为很容易改,但是后面发现容易改的都是一些人家懒得加密和混淆的垃圾游戏[滑稽]所以遇到一种情况,改不动了,心情就不好开始怀疑自己[滑稽]后面明白了so的真正逆向在于解密[滑稽]毕竟明文的dll,是个人都会改,但是这样的改只是原地踏步,没有突破[滑稽]
他喵的本期主角是js,不说so了[滑稽]游戏不提供,毕竟只是搞搞思路,何必把一个游戏搞得泛滥呢。。jsc解密不多说,版块大把,所以本次教程适合有一定基础的人看[滑稽],首先免广告,解密出来的js文件相对于unity打包的游戏最大特点于中文关键词较多,这对于咱们来说是一个优势容易分析,所以这次我直接广告作为关键词,关键词的选取只能靠自己,连关键词都不会自己找,等人喂饭吗,不同游戏关键词不同[滑稽]
代码浅析:t.prototype.onADDisplayFail = function() {core.log.info(“ad failed”);this.adFailCB && this.adFailCB();app.gHelper.reportEvent(“ad”, “播放未完成”);app.gHelper.openCommonTips(716, [ app.gHelper.getLangText(83) ]);core.log.info(“fail ad close now bgm2 “);core.audioMgr.stopBGM();core.audioMgr.playBackBGM();广告失败调用,失败后首先调用提示,tips(716):没有完整看完广告,然后停止音乐播放,stopbgm,为啥我要分析一段失败的代码[滑稽]众所周知失败是成功之母,既然失败的调用在这里成功会远吗[滑稽]成功代码调用:u.AppsFlyerReport.reportPlayAd();core.audioMgr.playBackBGM();core.log.info(“ad sucess”);this.adSuccessCB && this.adSuccessCB(!1);app.gHelper.reportEvent(“ad”, “播放完成”);core.log.info(“ad close now bgm2 “);core.audioMgr.stopBGM();core.audioMgr.playBackBGM();广告播放成功,播放完成下面那段不用看,只是常规的动画或者bgm调用,看上面ad sucess,广告成功,下面还有一行关键调用:this.adSuccessCB && this.adSuccessCB(!1);只是广告成功且进行了连接,对这个游戏分析中发现这个游戏是带有服务器在的,本地存在的js只是进行一个计算然后发送和接收这样的进程。成功代码找到,进行对比,失败复制对应代码,然后替换,就可以实现免广告,建议在失败调用与开始调用,两个进行替换。替换简单吧,说那么多干嘛[滑稽]会员赋值0*1简单吧,知道在哪里进行赋值吗?[滑稽]一个道理
导语:接触较多的都是so,但是so改多了,容易让人迷失自己[滑稽]以为很容易改,但是后面发现容易改的都是一些人家懒得加密和混淆的垃圾游戏[滑稽]所以遇到一种情况,改不动了,心情就不好开始怀疑自己[滑稽]后面明白了so的真正逆向在于解密[滑稽]毕竟明文的dll,是个人都会改,但是这样的改只是原地踏步,没有突破[滑稽]
他喵的本期主角是js,不说so了[滑稽]游戏不提供,毕竟只是搞搞思路,何必把一个游戏搞得泛滥呢。。
jsc解密不多说,版块大把,所以本次教程适合有一定基础的人看[滑稽],首先免广告,解密出来的js文件相对于unity打包的游戏最大特点于中文关键词较多,这对于咱们来说是一个优势容易分析,所以这次我直接广告作为关键词,关键词的选取只能靠自己,连关键词都不会自己找,等人喂饭吗,不同游戏关键词不同[滑稽]
代码浅析:
t.prototype.onADDisplayFail = function() {
core.log.info(“ad failed”);
this.adFailCB && this.adFailCB();
app.gHelper.reportEvent(“ad”, “播放未完成”);
app.gHelper.openCommonTips(716, [ app.gHelper.getLangText(83) ]);
core.log.info(“fail ad close now bgm2 “);
core.audioMgr.stopBGM();
core.audioMgr.playBackBGM();
广告失败调用,失败后首先调用提示,tips(716):没有完整看完广告,然后停止音乐播放,stopbgm,为啥我要分析一段失败的代码[滑稽]众所周知失败是成功之母,既然失败的调用在这里成功会远吗[滑稽]
成功代码调用:
u.AppsFlyerReport.reportPlayAd();
core.audioMgr.playBackBGM();
core.log.info(“ad sucess”);
this.adSuccessCB && this.adSuccessCB(!1);
app.gHelper.reportEvent(“ad”, “播放完成”);
core.log.info(“ad close now bgm2 “);
core.audioMgr.stopBGM();
core.audioMgr.playBackBGM();
广告播放成功,播放完成下面那段不用看,只是常规的动画或者bgm调用,看上面ad sucess,广告成功,下面还有一行关键调用:this.adSuccessCB && this.adSuccessCB(!1);只是广告成功且进行了连接,对这个游戏分析中发现这个游戏是带有服务器在的,本地存在的js只是进行一个计算然后发送和接收这样的进程。
成功代码找到,进行对比,失败复制对应代码,然后替换,就可以实现免广告,建议在失败调用与开始调用,两个进行替换。
替换简单吧,说那么多干嘛[滑稽]会员赋值0*1简单吧,知道在哪里进行赋值吗?[滑稽]一个道理
暂无评论内容