IOS弓箭傳說的插件開發


1.導出ipa進行解壓后,定位到執行程序archero,ida加載后,發現很多都是sub_xxx開頭的。

 

2.搜索資料后,原來Unity編寫的程序,可以使用Il2CppDumper進行符號表還原。

下載Il2CppDumper對Payload\archero.app\Data\Managed\Metadata\global-metadata.dat進行還原。

3.IDA加載對應的腳本,分析script.py和dump.cs。其中dump.cs有點像反編譯后的頭文件,具體的類以及功能可以看出來。
定位EntityData__GetAttackBase_4319721308

4.編寫增加攻擊力的插件代碼。

 

 1 int (*old_get_AttackValue)();
 2 
 3 
 4 // 自創的新版函數
 5 int new_get_AttackValue()
 6 {
 7     return 100000;
 8 }
 9 int (*old_get_ChangeHp)();
10 
11 
12 // 自創的新版函數
13 int new_get_ChangeHp()
14 {
15     return 100;
16 }
17 
18 
19 %ctor
20 {
21     @autoreleasepool
22     {
23         unsigned long attack = _dyld_get_image_vmaddr_slide(0) + 0x10179b75c;
24         unsigned long ChangeHp = _dyld_get_image_vmaddr_slide(0) + 0x1017a0a74;
25         //MSHookFunction((void*)attack,(void*)&new_get_AttackValue,(void**)&old_get_AttackValue);
26         MSHookFunction((void *)attack, (void *)&new_get_AttackValue,(void **)&old_get_AttackValue);
27         MSHookFunction((void *)ChangeHp, (void *)&new_get_ChangeHp,(void **)&old_get_ChangeHp);
28     }
29 }

 

5.最后輕輕松松通關了,美滋滋。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM