Jump to content

How to call the function? (iOS jailbreak)


Go to solution Solved by Saitama,

10 posts in this topic

Recommended Posts

Posted

Hi I'm trying to call a function in the game Hide N Seek : Mini Games.

Here is my code, (I just need to call any function):

function dump:

//RVA: 0x11FE288 Offset: 0x11FE288 VA: 0x11FE288
   private void Update() { }


#include <unistd.h>
#include <dispatch/dispatch.h>
#include <mach-o/dyld.h>

uintptr_t getExecAddr(uintptr_t addr)
{
 const struct mach_header* header = _dyld_get_image_header(341); // this is the library index, it's so big because I'm              using a debugger so far.
 if (header == NULL){return 0;}

 uintptr_t libLoadAddr = (uintptr_t)header;
 uintptr_t exec_addr = libLoadAddr + addr;

 return exec_addr;
}

void (*Update)();

%ctor { 

 dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

  sleep(15); // wait for all libraries to load

  Update = (void(*)())getExecAddr(0x11FE288);

  Update();

 });
 
}

The game crashes when the moment comes to call the function. What am I doing wrong? :(

Posted

Keep It Simple - using this one


u dont need header index etc
u need library name
 

[menu setFrameworkName:"UnityFramework"];


next is

void (*Update)(void *inst) = (void(*)(void *))getRealOffset(0x11FE288);

and call of this is

Update(inst);


Why inst?
Because its not static function - and this function is called from some class
*inst is a class that has this function and the first arg is for call

  • Informative 1
Posted

Thanks for the answer! but i did not understand where to call the function, if this is done in the same place where the pointer is declared, the compiler will gile the error "use of undeclared identifier 'inst'' for Update(inst);

Posted
20 hours ago, nngot44 said:

Thanks for the answer! but i did not understand where to call the function, if this is done in the same place where the pointer is declared, the compiler will gile the error "use of undeclared identifier 'inst'' for Update(inst);

because u dont declare this variable and dont get the pointer of object created by this class

also dont know why u need to call exact this function 
in Unity games this function basically called automatically each frame (if the class inherits MonoBehaviour class)
 

  • Solution
Posted (edited)

the main logic is
var someClass = new SomeClass(); //or other c# initialisation 
someClass.SomeMethod();

SomeMethod() cant be called from no where

Example #1

public class SomeClass : MonoBehaviour 
{
	// Fields
	...

	// Properties
	...

	// Methods
	...
	// RVA: 0x100400 Offset: 0x100400 VA: 0x100400
	public static SomeClass get_Instance() { }

	// RVA: 0x100500 Offset: 0x100500 VA: 0x100500
	public void SomeMethod() // address 0x100500

	// RVA: 0x100600 Offset: 0x100600 VA: 0x100600
	public static void SomeStaticMethod() // address 0x100600
	...
}

 

void* (*SomeClass$$get_Instance)() = (void(*)())getRealOffset(0x100400);
void (*SomeClass$$SomeMethod)(void *SomeClass) = (void(*)(void *))getRealOffset(0x100500);

void* SomeClassInstance = SomeClass$$get_Instance();
SomeClass$$SomeMethod(SomeClassInstance);

 

void (*SomeClass$$SomeStaticMethod)() = (void(*)())getRealOffset(0x100600);

SomeClass$$SomeStaticMethod();

Example #2

public class SomeOtherClass : MonoBehaviour 
{
	// Fields
	...

	// Properties
	...

	// Methods
	...
	// RVA: 0x100300 Offset: 0x100300 VA: 0x100300
	public void InitWithSomeClass(SomeClass someClassInstance) { }
	...
}

 

void* SomeClassInstance = NULL;
void (*SomeOtherClass$$InitWithSomeClass_original)(void *SomeOtherClassInstance, void* someClassInstance);
void _SomeOtherClass$$InitWithSomeClass_hook(void *SomeOtherClassInstance, void* someClassInstance) 
{
	SomeClassInstance = someClassInstance;
	SomeOtherClass$$InitWithSomeClass_original(SomeOtherClassInstance, someClassInstance);
}

HOOK(0x100300, _SomeOtherClass$$InitWithSomeClass_hook, SomeOtherClass$$InitWithSomeClass_original);

 

Updated by Saitama
  • Winner 1
Posted (edited)

Example #3

public class SomeThirdClass : MonoBehaviour 
{
	// Fields
	...
	public SomeClass SomeClassField // 0x100
	...

	// Properties
	...

	// Methods
	...
	// RVA: 0x100200 Offset: 0x100200 VA: 0x100200
	public void Update() { }
	...
}

 

void* SomeClassInstance = NULL;
void (*SomeThirdClass$$Update_original)(void *SomeThirdClassInstance);
void _SomeThirdClass$$Update_hook(void *SomeThirdClassInstance) 
{
	void* someClassInstance = *(void **)((uint64_t)SomeThirdClassInstance + 0x100);
	if(someClassInstance != NULL)
    {
		SomeClassInstance = someClassInstance;
    }
	SomeThirdClass$$Update_hook(SomeThirdClassInstance);
}

HOOK(0x100200, _SomeThirdClass$$Update_hook, SomeThirdClass$$Update_original);

 

 

Updated by Saitama
  • Winner 1
Posted

Thanks for these examples, I'm new and still learning how to make dylib libraries for games. I tried to call the Update function because I thought it would be the easiest to call :)

Posted (edited)

I used your advice and wrote this code (i hope my method returns the correct address) :

#include <unistd.h>
#include <dispatch/dispatch.h>
#include <mach-o/dyld.h>

uintptr_t getExecAddr(uintptr_t addr)
{
    const struct mach_header* header = _dyld_get_image_header(341);
    if (header == NULL){return 0;}

    uintptr_t libLoadAddr = (uintptr_t)header;
    uintptr_t exec_addr = libLoadAddr + addr;

    return exec_addr;
}

%ctor 
{

	dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{

		sleep(150);

		void* (*VELights$$get_Instance)() = (void* (*)())getExecAddr(0x12FD104);
		void (*VELights$$ResetMainSunLightAngle)(void *VELights) = (void(*)(void *))getExecAddr(0x12FD4B8);

		void* VELightsInstance = VELights$$get_Instance();
		VELights$$ResetMainSunLightAngle(VELightsInstance);
		
	});	

}	

 

In the debugger, I always get rather strange errors, for example, from the libobjc.A.dylib'objc_retain library. 

I thought it would be easier for me if it was possible to disable ASLR for this game. Is it possible to do this on iOS 13?

 

Updated by nngot44
Posted

basically start from doing some easier things
for example change values from 
public int get_someGold();
and setter
public void set_someGold(int goldVal);

its will be easier to understand that call some function

Posted

Thank you for not passing by my question, the information that you provided is very useful!

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Our picks

    • Tactile Wars: All Stars v0.6.8 [ +2 Cheats ] Never Die
      Modded/Hacked App: Tactile Wars: All Stars By Ankama
      Bundle ID: com.ankama.tw2
      App Store Link: https://apps.apple.com/ph/app/tactile-wars-all-stars/id6754283128?uo=4

      🤩 Hack Features

      - Never Die
      - Damage Max
      • 0 replies
    • Tactile Wars: All Stars v0.6.8 [ +2 Jailed ] Never Die
      Modded/Hacked App: Tactile Wars: All Stars By Ankama
      Bundle ID: com.ankama.tw2
      App Store Link: https://apps.apple.com/ph/app/tactile-wars-all-stars/id6754283128?uo=4

      🤩 Hack Features

      - Never Die
      - Damage Max
      • 0 replies
    • Hold the Crown! v1.0.0 [ +8 Cheats ] Auto Win
      Modded/Hacked App: Hold the Crown! By AURA APPS BILISIM VE YAZILIM HIZMETLERI TICARET LIMITED SIRKETI
      Bundle ID: com.aura.holdthecrown
      App Store Link: https://apps.apple.com/us/app/hold-the-crown/id6822575767?uo=4

      🤩 Hack Features

      - ADS NO
      - Auto Win
      - Add Coins
      - Add Relic
      - Battle Coins
      - Never Die
      - Unbreakable Keep
      - Max Damage
      • 0 replies
    • Hold the Crown! v1.0.0 [ +8 Jailed ] Auto Win
      Modded/Hacked App: Hold the Crown! By AURA APPS BILISIM VE YAZILIM HIZMETLERI TICARET LIMITED SIRKETI
      Bundle ID: com.aura.holdthecrown
      App Store Link: https://apps.apple.com/us/app/hold-the-crown/id6822575767?uo=4

      🤩 Hack Features

      - ADS NO
      - Auto Win
      - Add Coins
      - Add Relic
      - Battle Coins
      - Never Die
      - Unbreakable Keep
      - Max Damage
      • 1 reply
    • Sword! Bow! Staff! : LELE +3 Jailed Cheats
      Modded/Hacked App: 레츠고 레전드! By GEAR2
      Bundle ID: com.gear2.letsgolegends
      App Store Link: https://apps.apple.com/kr/app/%EB%A0%88%EC%B8%A0%EA%B3%A0-%EB%A0%88%EC%A0%84%EB%93%9C/id6754214886?uo=4

       

       

      📌 Mod Requirements

      - Non-Jailbroken/Jailed or Jailbroken iPhone or iPad.
      - Sideloadly or alternatives.
      - Computer running Windows/macOS/Linux with iTunes installed.

       

      🤩 Hack Features

      - Damage Multiplier
      - Defense Multiplier
      - No ADS

       

      ⬇️ iOS Hack Download IPA Link


      Hidden Content

      Download via the iOSGods App







       

      📖 PC Installation Instructions

      STEP 1: Download the pre-hacked .IPA file from the link above to your computer. To download from the iOSGods App, see our iOSGods App IPA Download Tutorial which includes a video example.
      STEP 2: Download Sideloadly and install it on your Windows or Mac.
      STEP 3: Open Sideloadly on your computer, connect your iOS device, and wait until your device name appears in Sideloadly.
      STEP 4: Once your iDevice is recognized, drag the modded .IPA file you downloaded and drop it into the Sideloadly application.
      STEP 5: Enter your Apple Account email, then press “Start.” You’ll then be asked to enter your password. Go ahead and provide the required information.
      STEP 6: Wait for Sideloadly to finish sideloading/installing the hacked IPA. If there are issues during installation, please read the note below.
      STEP 7: Once the installation is complete and you see the app on your Home Screen, you will need to go to Settings -> General -> Profiles / VPN & Device Management. Once there, tap on the email you entered from step 6, and then tap on 'Trust [email protected]'.
      STEP 8: Now go to your Home Screen and open the newly installed app and everything should work fine. You may need to follow further per app instructions inside the hack's popup in-game.

      NOTE: iOS/iPadOS 16 and later, you must enable Developer Mode. For free Apple Developer accounts, you will need to repeat this process every 7 days. If you have any questions or problems, read our Sideloadly FAQ section of the topic and if you don't find a solution, please post your issue below and we'll do our best to help! If the hack does work for you, post your feedback below and help out other fellow members that are encountering issues.

       

      🙌 Credits

      - AlyssaX64

       

      📷 Cheat Video/Screenshots

      N/A
      • 13 replies
    • World Beast War v9.1.0 [ +4 Cheats ] Instant Beasts Box & More
      Modded/Hacked App: World Beast War By Clegames, Inc.
      Bundle ID: com.cle.m215.worldbeastwar
      iTunes Store Link: https://apps.apple.com/us/app/world-beast-war/id1419904843?uo=4


      Hack Features:
      - Instant Beasts Box
      - Unlimited Lobby Space
      - Free Beasts Level Up
      - Free Beasts Union  
      • 7 replies
    • Paradise Paws: Merge Animals v1.19.0  [ +12 Cheats ] Currency Max
      Modded/Hacked App: Animal Sanctuary By Wildlife Studios, Inc
      Bundle ID: com.wildlifestudios.merge.animal.sanctuary
      App Store Link: https://apps.apple.com/us/app/animal-sanctuary/id6741805691?uo=4
       

      🤩 Hack Features

      - Gems

      - Coins

      - Heart

      - Spin

      - LvL

      - Exp

      - Fog Auto Remove [ Linked With LvL ]

      - Premum Lands Unlocked [ Just Tap ]

      - Store Free [ IAP Not ]

      Note:- Game Close After Currency Hack Don't Worry
      • 54 replies
    • RaccoonKingdom RPG 구리구리왕국 : 방치형 RPG RE v1.0.12 [ +3 Cheats ] Currency Max
      Modded/Hacked App: RaccoonKingdom RPG By gibaek kim
      Bundle ID: com.neogullab.gurigurikingdom
      App Store Link: https://apps.apple.com/us/app/raccoonkingdom-rpg/id6789849891?uo=4

      🤩 Hack Features

      - Currency Max
      - Never Die
      - Damage Max
      • 1 reply
    • Meow Tower - Nonogram Puzzle v3.7.201 [ +3 Cheats ] Currency Max
      Modded/Hacked App: Meow Tower - Nonogram Puzzle By HyperBeard Inc.
      Bundle ID: com.grapetree.meowtower
      iTunes Store Link: https://apps.apple.com/us/app/meow-tower-nonogram-puzzle/id1579122980?uo=4


      🚀 Hack Features

      - ADS NO
      - Gold CANS
      - Pencil Max 
      - Hints Max
      • 25 replies
    • Hunter Hunter Heroes - RPG v1.3.0 [ +10 Cheats ] Enough Currency
      Modded/Hacked App: Hunter Hunter Heroes - RPG By HNRQ FAITTA LTDA
      Bundle ID: com.babystone.hhidlegrind
      App Store Link: https://apps.apple.com/us/app/hunter-hunter-heroes-rpg/id6763558832?uo=4

      🤩 Hack Features

      - Enough Currency
      - Currency Freeze
      - Hunter License Active / Not Tested
      - Scroll Perk Active
      - EXP Multiplier
      - Faster Level Up
      - Good Mod
      - Hero ATK
      - Hero ATK Speed
      - Hero Move Speed
      Note:- Don't Abuse The Hack Incase Banned/Data lost
      • 8 replies
    • Bullet Heroes TD RPG Shooter v123.3 [ +20 Cheats ] Dev Tool
      Modded/Hacked App: Bullet Heroes: TD RPG Shooter By HOMA GAMES
      Bundle ID: com.goosebump.bulletheroestest
      App Store Link: https://apps.apple.com/us/app/bullet-heroes-td-rpg-shooter/id6752606721?uo=4

      🤩 Hack Features

      - Dev Tool
      • 2 replies
    • Gossip Street: Merge & Story v4.11.1 [ +10 Cheats ] Currency Max
      Modded/Hacked App: Gossip Street: Merge & Story By Shanghai Zhenglang Technology Co., Ltd.
      Bundle ID: linkdesks.merge.gossipstreet
      iTunes Store Link: https://apps.apple.com/us/app/gossip-street-merge-story/id6670166491?uo=4
       

      🤩 Hack Features

      - Gems max

      - Coins Max

      - Energy Max

      - Booster Max

      - Gems Freeze

      - Coins Freeze

      - Energy Freeze

      - LvL Gold Pass Active

      - LvL Gold Pass Claim Unlimited

      - LvL Free Pass Claim Unlimited
      • 16 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