Jump to content

How would I override an method with its offset?


ubyt3x

11 posts in this topic

Recommended Posts

Posted

I'm very new into this game, yet I have some knowledge (programming and basic reverse-engineering).

I just dumped some data for a game (American Dad! Apocalypse Soon). It's an Unity game, so I used IL2CPPDump/I'm viewing the classes with dotPeek.

There are many methods including get and set methods. Basiclly every method has its own RVA and offset.

 

How would I change the behaviour of a method?

Say I want get_XYZValue() to return 1337 (or set_XYZValue(int x) to set x to 1337) and the offset is 0x17EC0809. Would I just override 17EC0809 with 0x539 or maybe 20A78052 (MOV W0, #1337) or is it more than that?

I tried the second approach with some functions using iOSGods Live Offset Patcher, yet it sadly didn't affect anything.

 

I appreciate any answer! Thanks.

Posted

Make sure that you have chosen the correct register to move a value into, and make sure it doesn’t get changed afterwards. This can be achieved by putting a RET statement right after it.

Posted
13 hours ago, bR34Kr said:

Make sure that you have chosen the correct register to move a value into, and make sure it doesn’t get changed afterwards. This can be achieved by putting a RET statement right after it.

Thanks for your answer.

I already know about RET, but how would you fit both MOV and RET in one single HEX and how could I get the current register? Do I need to debug it, or would fridump do the job?

And does that mean that the offset of a method is just pointing to the corresponding ARM code that is being executed, just like you'd inspect an method inside IDA?

Posted

If you are using in game Menu patching   your hack is  0x20A78052C0035FD6.

If you are just patching binary for ipa sideloading the hack is 20A78052C0035FD6.

Posted
On 11/4/2019 at 5:01 PM, Aarivex said:

I already know about RET, but how would you fit both MOV and RET in one single HEX and how could I get the current register? Do I need to debug it, or would fridump do the job?

Yeah, you can fit both MOV and RET in a function as long as the function is at least 4 bytes in size.

Posted
13 hours ago, DADi said:

Yeah, you can fit both MOV and RET in a function as long as the function is at least 4 bytes in size.

I got some answers on /r/jailbreakdevelopers that told me that I need the RVA and the ASLR slide, so it makes sense now to me.

Thanks for your answers!

What confused me was that why overriding a method address with ARM HEX instructions would work, but I got some insight there now that I know that you can "replace" the original function with your own and how the offset works using _dyld_get_image_vmaddr_slide(0).

Posted
51 minutes ago, Aarivex said:

I got some answers on /r/jailbreakdevelopers that told me that I need the RVA and the ASLR slide, so it makes sense now to me.

Thanks for your answers!

What confused me was that why overriding a method address with ARM HEX instructions would work, but I got some insight there now that I know that you can "replace" the original function with your own and how the offset works using _dyld_get_image_vmaddr_slide(0).

Ah, perhaps this would be of help to you. http://armconverter.com/mshookgenerator/

Posted
43 minutes ago, DADi said:

Ah, perhaps this would be of help to you. http://armconverter.com/mshookgenerator/

I already know that tool, but I can write that code on my own :D

I wrote this bit of code, which sadly doesn't affect anything:

#include <mach-o/dyld.h>
#include <substrate.h>
  
void *func = (void *)(_dyld_get_image_vmaddr_slide(0) + 0x101AA8924);
int (*original) (); // or int (*original) (void *self);
int replacement() { // or int replacement (void *self);
	return 10; 
}

%ctor {
	MSHookFunction(lvlFunc, (void *)replacement, (void **)&original);
}

whereas this code leads to an crash:

#include <mach-o/dyld.h>
#include <substrate.h>

int (*old_get_Level)(void *self);
int get_Level(void *self) {
	return 10;
}
  
%ctor {
	MSHookFunction((void *)(_dyld_get_image_vmaddr_slide(0) + 0x101AA8924), (void*)get_Level, (void**)&old_get_Level);
}

Not just with get_Level, but also with some methods inside a battle - f.e. MaxHealth or UnitHealth.

Posted

Is your offset an instrtuction inside the function? MSHookFunction only works on functions.

And also the function needs to be bigger than 8 bytes in order to use MSHookFunction on it from what I recall.

Archived

This topic is now archived and is closed to further replies.

  • Our picks

    • Corner Cafe : Merge & Cook v1.9 [ +3 Cheats ] Currency Max
      Modded/Hacked App: Corner Cafe : Merge & Cook By Alchemical Inc
      Bundle ID: com.grilltown.grill
      App Store Link: https://apps.apple.com/ph/app/corner-cafe-merge-cook/id6748403232?uo=4

      🤩 Hack Features

      - Unlimited Cash / Earn Then Get
      - Unlimited Coins / Sell Items Then Get
      - Unlimited Energy
      • 2 replies
    • Corner Cafe : Merge & Cook v1.9 [ +3 Jailed ] Currency Max
      Modded/Hacked App: Corner Cafe : Merge & Cook By Alchemical Inc
      Bundle ID: com.grilltown.grill
      App Store Link: https://apps.apple.com/ph/app/corner-cafe-merge-cook/id6748403232?uo=4

      🤩 Hack Features

      - Unlimited Cash / Earn Then Get
      - Unlimited Coins / Sell Items Then Get
      - Unlimited Energy
      • 1 reply
    • RogueTD: Idle Tower Defense v1.3.5 [ +1 Cheats  ] Gold Max
      Modded/Hacked App: RogueTD: Idle Tower Defense By Fedor Hromak
      Bundle ID: com.extbel.RoqueTD
      App Store Link: https://apps.apple.com/us/app/roguetd-idle-tower-defense/id6752994296?uo=4

      🤩 Hack Features

      - Unlimited Gold
      • 2 replies
    • RogueTD: Idle Tower Defense v1.3.5 [ +1 Jailed ] Gold Max
      Modded/Hacked App: RogueTD: Idle Tower Defense By Fedor Hromak
      Bundle ID: com.extbel.RoqueTD
      App Store Link: https://apps.apple.com/us/app/roguetd-idle-tower-defense/id6752994296?uo=4

      🤩 Hack Features

      - Unlimited Gold
      • 2 replies
    • Darkest Hero! v0.1.10 [ +4 APK MOD ] Currency Max
      Mod APK Game Name: Darkest Hero! By MINIDRAGON LTD
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.minidragon.randomdungeon&hl=en_US

      🤩 Hack Features

      - Unlimited Gems / Earn
      - Unlimited Red Crystal / Earn
      - Unlimited Gold / Earn
      - Unlimited Keys / Earn
      • 36 replies
    • Matching Story - Puzzle Games v1.60.02 [ +6 APK MOD ] Auto Win
      Mod APK Game Name: Matching Story - Puzzle Games
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.joycastle.mergematch&hl=en

      🤩 Hack Features

      - Auto Win
      - Unlimited Coins
      - Unlimited  Diamonds [ Win Match Linked With Moves ]
      - Unlimited  Lives
      - Unlimited  Booster
      - Unlimited  Moves
      • 1 reply
    • Dream Master-Match Buster v5.30 [ +3 APK MOD ] Auto Win
      Mod APK Game Name: Dream Master-Travel Puzzle
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.match.busters.free.gp&hl=en

      🤩 Hack Features

      - Auto Win
      - Unlimited Coins / Disable After Hack
      - Lives 0 Play Unlimited
      • 2 replies
    • Goblin Miner: Idle Merger v3.13.0 [ +5 APK MOD ] Coins Unlimited
      Mod APK Game Name: Goblin Miner: Idle Merger
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.goblins.idle.merge.game&hl=en

       

      🤩 Hack Features

      - Unlimited Coins / Mine Upgrade
      - Unlimited Goblin Drop / No Limite
      - Goblin LvL Higher / Easy To Skip Time Mine / First Drop Goblin Then Chose Higher LvL
      - Unlimited Magic Dust
      - Ruby Pass

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - IK_IK

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
      • 32 replies
    • Candy Pop Story : Match 3 v7.77.0226 [ +3 APK MOD ] Auto Win
      Modded/Hacked App: Candy Pop Story : Match 3 By F.O.G LIMITED
      Bundle ID: com.gamoper.candysweetstory.ios
      App Store Link: https://apps.apple.com/us/app/candy-pop-story-match-3/id6670773988?uo=4

       

      Mod APK Game Name: 
      Rooted Device: Not Required.
      Google Play Store Link: 

       

      🤩 Hack Features

      - Auto Win
      - Unlimited Coins
      - Unlimited Moves

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - IK_IK

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
      • 2 replies
    • Castle Crush v2.43.0 [ +6 APK MOD  ] Auto Win
      Mod APK Game Name: Castle Crush
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.mibo.CastleCrush&hl=en

      🤩 Hack Features

      - Auto Win / Just Hit Target
      - Unlimited Coins / Visual But Works
      - Unlimited Stars / Visual But Works / Earn 1 Then Use For All Task
      - Unlimited Lives / Visual But Works
      - Unlimited Booster / Visual Butt Works / Earn 1 Then Use Inf
      - Moves Freeze
      • 3 replies
    • Adventure Bay - Farm Games v1.59.14 [ +4 APK MOD ] Currency Max
      Mod APK Game Name: Adventure Bay - Farm Games
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.gamegos.adventure.bay.paradise.farm&hl=en_US

       

      🤩 Hack Features

      - Unlimited Gems
      - Unlimited Coins
      - Unlimited Energy
      - Avatar Unlock
      • 7 replies
    • Gear Defenders v1.3.5 |+9 APK MOD | Currency Max
      Mod APK Game Name: Gear Defenders By MOBIBRAIN TECHNOLOGY PTE. LTD.
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.iogame.gearworld&hl=en

      🤩 Hack Features

      - Unlimited Gems
      - Unlimited Coins
      - Unlimited Energy
      - Unlimited ADS Tickets
      - Unlimited Draw
      - Unlimited Battle Coins
      - Base HP
      - Gear Speed / Faster Deploy Trop
      - Unlimited Trop / Easy Win
      - ATK / Linked
      • 28 replies
×
  • Create New...

Important Information

We would like to place cookies on your device to help make this website better. The website cannot give you the best user experience without cookies. You can accept or decline our cookies. You may also adjust your cookie settings. Privacy Policy - Guidelines