Jump to content
  • Sky
  • Mint
  • Azure
  • Indigo
  • Blueberry
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Pomegranate
  • Ruby Red
  • Orange
  • Banana
  • Apple
  • Emerald
  • Teal
  • Chocolate
  • Slate
  • Midnight
  • Maastricht
  • Charcoal
  • Matte Black

Search the Community

Showing results for tags 'Tutorial'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Forum Related
  • No Jailbreak Section
  • VIP Section
  • Game Cheats & Hack Requests
  • Android Section
  • Tutorials, Tools, Support & Coding!
  • Everything Else
  • Dank Memes's Memes
  • Dank Memes's Funny
  • Football Club's News
  • Football Club's Goals
  • Football Club's Live Score
  • Steam Club's Steam Profiles
  • Steam Club's Steam News
  • Steam Club's General
  • Console & PC Gaming's Our specs and setups
  • Console & PC Gaming's Cheap parts and advice
  • Console & PC Gaming's Favourite game songs/themes
  • Console & PC Gaming's Console and PC Gaming
  • Anime's Anime Discussions
  • Anime's Manga Discussions
  • Anime's Recommendations
  • DomiNations Club's DomiNations Discussions
  • DomiNations Club's Friends & Alliances
  • BLEACH Brave Souls Club's Discussions
  • BLEACH Brave Souls Club's BBS Help & Support
  • DRAGON BALL Z DOKKAN BATTLE Club's Updated Links!
  • DRAGON BALL Z DOKKAN BATTLE Club's Global Discussions
  • DRAGON BALL Z DOKKAN BATTLE Club's Japan Discussions
  • DRAGON BALL Z DOKKAN BATTLE Club's News
  • One Piece Treasure Cruise (Global & Japan)'s OPTC Discussion
  • One Piece Treasure Cruise (Global & Japan)'s One Piece Treasure Cruise (Global)
  • One Piece Treasure Cruise (Global & Japan)'s One Piece Treasure Cruise (Japan)
  • One Piece Treasure Cruise (Global & Japan)'s Japan/Global Help & Support
  • One Piece Treasure Cruise (Global & Japan)'s Status Hack For One Piece Treasure Cruise (Global & Japan)
  • Clash of Clans Club's Topics
  • Summoners War Club's Summoners War Discussions
  • Summoners War Club's Help & Support
  • MARVEL Contest of Champions Club's Help & Support
  • MARVEL Contest of Champions Club's Discussions
  • Mobile Legends: Bang bang Club's Discussions
  • Mobile Legends: Bang bang Club's Help & Support
  • Photography's Topics
  • Brawl Stars club's Topics
  • Brawl Stars club's Upcoming updates
  • Brawl Stars club's Guild info
  • Overwatch Club's Overwatch Discussions
  • Overwatch Club's Play(s) of The Game & Highlights
  • Overwatch Club's Tips, Tricks & Tutorials
  • Overwatch Club's Funny Videos & Others
  • Monster Super League Club's Discussions
  • Injustice 2 Club's Discussions
  • Dungeon Hunter Club's DH5 Topics & Discussions
  • Dungeon Hunter Club's DH5 Help & Support
  • Dungeon Hunter Club's Topics
  • Dungeon Hunter Club's Profile Sharing
  • Last Day on Earth: Survival Club's LDOE Discussions
  • Last Day on Earth: Survival Club's LDOE Help & Support
  • Last Day on Earth: Survival Club's LDOE News
  • Last Day on Earth: Survival Club's LDOE Guides & Tutorials
  • Futurama: Worlds of Tomorrow Club's Discussions
  • MARVEL Avengers Academy Club's Discussions
  • Modern Combat 5 Club's Discussions
  • DC Legends Club's Discussions
  • Golf Clash Club's Golf Clash Discussions
  • Golf Clash Club's Golf Clash Help & Support
  • Yu-Gi-Oh! Duel Links Club's Duel Link News
  • Yu-Gi-Oh! Duel Links Club's Duel Link Farming Guides
  • Grand Theft Auto 5's General Talk
  • Grand Theft Auto 5's Glitches
  • Grand Theft Auto 5's Mods
  • Grand Theft Auto 5's Questions
  • King's Raid Club's Discussions
  • MARVEL Future Fight Club's Discussions
  • iOS Jailbreak Setups's Announcements
  • iOS Jailbreak Setups's Device Setups
  • iOS Jailbreak Setups's Tweak, Theming & General Questions
  • iOS Jailbreak Setups's Tweak & Theme Recommendations
  • iOS Jailbreak Setups's General
  • Movies & Series Club's Topics
  • Movies & Series Club's Movies trailers
  • Movies & Series Club's Movies release date
  • Movies & Series Club's Series trailers
  • Taichi Panda Club's Discussions
  • Destiny 2's General
  • Destiny 2's Help/Support
  • Destiny 2's Looking For Group
  • Destiny 2's News
  • Destiny 2's Glitches, Tricks, Tips & Strategies
  • Club Français iOSGods's Groupe de discussion en Français
  • Club Français iOSGods's Support en Français
  • Club Français iOSGods's Support iOS en Français
  • Club Français iOSGods's Support Android en Français
  • Music Club's Favourite music
  • Music Club's Worst Music
  • iOSGods Svenska Klubb's Diskussioner
  • iOSGods Svenska Klubb's iOS Hjälp
  • iOSGods Svenska Klubb's Android Hjälp
  • iOSGods Svenska Klubb's Generell Hjälp
  • Everything Mac's Discussions
  • Everything Mac's Other Stuff
  • Everything Mac's Questions
  • Everything Mac's Announcements
  • Everything Mac's Apps & Games
  • The Respawnables Club's Respawnables Tips and Tricks
  • The Respawnables Club's Ask your questions here
  • The Respawnables Club's General Discussion
  • Italiano iOSGods Club's Discussioni generali
  • Italiano iOSGods Club's Guide e traduzioni
  • PLAYERUNKNOWN'S BATTLEGROUNDS's Squads
  • PLAYERUNKNOWN'S BATTLEGROUNDS's Discussions
  • España iOSGods Club's Topics
  • Cuphead Club's Boss Levels
  • Cuphead Club's Run and Guns
  • Ultimate Ninja Club's Events
  • Ultimate Ninja Club's Team
  • Ultimate Ninja Club's Tips
  • Ultimate Ninja Club's Clans
  • Brave Frontier Club's Brave Frontier Discussions
  • Brave Frontier Club's Brave Frontier Help & Support
  • iOSGods Turkish Club's Genel Bilgilendirme
  • Naruto x Boruto Ninja Voltage Club's Help & Support
  • Naruto x Boruto Ninja Voltage Club's Announcement
  • Naruto x Boruto Ninja Voltage Club's Clans
  • Naruto x Boruto Ninja Voltage Club's Layout
  • Modern Combat Versus's Discussion
  • Call of duty WWII's Glitches
  • Call of duty WWII's Mods
  • Call of duty WWII's Boosting
  • Call of duty WWII's General Talk
  • South Park: Phone Destroyer Club's Topics
  • Toram online MMORPG's Topics
  • Rules Of Survival Club's News & Announcements
  • Rules Of Survival Club's Play together!
  • Rules Of Survival Club's Discussions
  • Rules Of Survival Club's Q&A
  • Rules Of Survival Club's YouTube
  • Forward Assault's Topics
  • Forward Assault's FA Help & Support
  • Star Wars: Galaxy of Heroes Club's Working Combos for Non-Jailbreak Mod
  • Star Wars: Galaxy of Heroes Club's Question Section
  • Star Wars: Galaxy of Heroes Club's Ban Warning ⚠️
  • Bullet Force's Glitches, Tricks, Mods & Hacks
  • Bullet Force's Announcements
  • Bullet Force's General
  • Bullet Force's Help & Support
  • Tekken Club's Topics
  • Tekken Club's Q&A
  • Tekken Club's Arcade Sticks & Pad
  • Tekken Club's Character Quick Notes
  • Tekken Club's Frame Data
  • Tekken Club's Tekken Tournaments
  • Tekken Club's Events
  • Marvel&DC Heroes's Topics
  • Marvel&DC Heroes's Movies
  • Marvel&DC Heroes's Series
  • Marvel&DC Heroes's Comics
  • Modern Combat Versus's Glitches, Tricks, Mods & Hacks
  • Modern Combat Versus's Help & Support
  • Modern Combat Versus's Announcements
  • Modern Combat Versus's General
  • GFX Club's GFX Tutorials
  • GFX Club's GFX - Graphic Studio
  • GFX Club's GFX Resources
  • GFX Club's Portfolios
  • GFX Club's GFX Requests
  • Fantasy War Tactics's Topics
  • Club Archives's H A R M O N Y
  • Club Archives's AdventureQuest Worlds Club
  • Club Archives's Call of Duty
  • Club Archives's Game Exploits
  • Club Archives's Counter Strike: Global Offensive
  • Brawl Stars's Topics
  • FC Barcelona Fans Club's LaLiga
  • FC Barcelona Fans Club's Copa del Rey
  • FC Barcelona Fans Club's UEFA Champions League
  • FC Barcelona Fans Club's News & Discussions
  • PC Game Hacking Club's Modded DLL Hacks
  • PC Game Hacking Club's Other PC Hacks
  • Fortnite's Gameplays
  • Fortnite's Glitches
  • Fortnite's Other stuff
  • Marvel Avenger’s Academy's Topics
  • Norsk iOSGods Club's Topics
  • PUBG MOBILE's PUBG Discussions
  • PUBG MOBILE's Find Friends
  • PUBG MOBILE's Help & Support
  • PUBG MOBILE's Japan / Korea
  • PUBG MOBILE's PUBG MOBILE China
  • DragonProject's Topics
  • IDA/Hacking Club For Tips's Tips
  • ConsoleGods's Topics
  • ConsoleGods's Wii
  • ConsoleGods's PS3 Moddig
  • ConsoleGods's Xbox Modding
  • ConsoleGods's Nintendo Switch
  • ConsoleGods's PS4 Modding
  • iOS Development Club's Tutorials
  • iOS Development Club's Shares
  • iOS Development Club's Help
  • iOS Development Club's Requests
  • One Piece Thousand Storm OPTS Club's Topics
  • Marvel Strike Force's Topics
  • Marvel Strike Force's MSF Help & Support
  • Java & Android Development's Java & Android development Tutorials
  • Java & Android Development's Java development questions
  • Java & Android Development's Android development questions
  • Java & Android Development's Challenges!
  • HTML CSS & JAVASCRIPT's Topics
  • Jurassic Survival Club's News
  • Jurassic Survival Club's Discussions
  • Jurassic Survival Club's Guides & Tuts
  • Jurassic Survival Club's Help & Support
  • Russian community iOSGODS's Приветствие
  • The Simpsons™: Tapped Out's Topics
  • DRAGON BALL LEGENDS Club's DBL Discussions
  • DRAGON BALL LEGENDS Club's DBL Help & Support
  • Grim Soul: Survival Club's General Topics
  • Grim Soul: Survival Club's Help & Support
  • Dungeon Hunter Champions's Discussions
  • Dungeon Hunter Champions's Help & Support
  • Dungeon Hunter Champions's News
  • Arena of Valor's Topics
  • Darkness Rises Club's Topics
  • Pokémon Quest's Topics
  • Durango: Wild Lands's Topics
  • Durango: Wild Lands's Durango Discussion
  • Dawn of Titans Club's General Forum
  • Dawn of Titans Club's Dawn of Titans News
  • Dawn of Titans Club's Alliances
  • The Walking Dead: Our World's Topics
  • 8 Ball Pool Tips and Tricks Club's Topics
  • 8 Ball Pool Tips and Tricks Club's New version of 8 ball pool 4.0
  • iOSGods Vietnam's Khu vực bàn chuyện chung
  • iOSGods Vietnam's Hỗ trợ kĩ thuật
  • Shadowgun Legends's Topics
  • النادي العربي's (قسم ببجي)
  • النادي العربي's قسم هاكات اخرى
  • النادي العربي's قسم ادوات السيديا
  • النادي العربي's قسم المواضيع
  • النادي العربي's قسم المساعده
  • SPANISH IOSGODS's Topics
  • AutoTouch Script Club's VIP AutoTouch Scripts
  • AutoTouch Script Club's FREE AutoTouch Scripts
  • AutoTouch Script Club's AutoTouch Script Requests
  • AutoTouch Script Club's AutoTouch Tutorials
  • AutoTouch Script Club's Off Topic
  • Arabic iOSGods Club's الأعضاء الجدد
  • Arabic iOSGods Club's هاك ببجي
  • Arabic iOSGods Club's الهاكات الاخرى
  • Arabic iOSGods Club's أدوات السيديا
  • Arabic iOSGods Club's المواضيع
  • Arabic iOSGods Club's المساعدة
  • Asphalt 9 In-game Club's Topics
  • Asphalt 9 In-game Club's Joint the club
  • Crossfire: Legends Club's Topics
  • Critical Ops Club's Topics & Discussions
  • iOSGods: Indian Club!'s Topics
  • Call of Duty®: Black Ops 4's Topics
  • IOSGODS Romania's Topics
  • IOSGODS Romania's Ce joc te joci?/ What game do you play?
  • Red Dead Redemption II's Topics
  • iOSGods Georgia's Topics
  • Minecraft's Topics
  • Flex Club's Topics
  • Flex Club's Blockheads
  • Flex Club's FlexSupport
  • Star Ocean: Anamnesis's Topics
  • IOSGOD’S IRAN's Topics
  • Enthusiastic Programmers | C#, .NET, Xamarin & more's C# & .NET, .NET Core
  • Enthusiastic Programmers | C#, .NET, Xamarin & more's Xamarin
  • Enthusiastic Programmers | C#, .NET, Xamarin & more's Mono
  • Enthusiastic Programmers | C#, .NET, Xamarin & more's Help
  • Enthusiastic Programmers | C#, .NET, Xamarin & more's Talk
  • Enthusiastic Programmers | PHP & Laravel's Talk
  • Enthusiastic Programmers | PHP & Laravel's Help Desk
  • Enthusiastic Programmers | PHP & Laravel's Laravel
  • Enthusiastic Programmers | PHP & Laravel's Artisan
  • Enthusiastic Programmers | JavaScript, React & more's Talk
  • Enthusiastic Programmers | JavaScript, React & more's Help
  • Enthusiastic Programmers | JavaScript, React & more's JavaScript
  • Enthusiastic Programmers | JavaScript, React & more's jQuery
  • Enthusiastic Programmers | JavaScript, React & more's React, React Native & JSX
  • Enthusiastic Programmers | JavaScript, React & more's Angular
  • Enthusiastic Programmers | JavaScript, React & more's Vue, Vue Native
  • Enthusiastic Programmers | JavaScript, React & more's NodeJs
  • iOSGods Philippines's Topics
  • Russian community PUBG MOBILE's Topics
  • Romanian iOSGods Club's Topics
  • Sword Art Online Integral Factor's Topics
  • Disney Tsum Tsum's Global
  • Disney Tsum Tsum's Japan
  • Disney Tsum Tsum's Events
  • Kurdistan Club's Topics
  • iOS Gods BRASIL's Topics
  • iOSGods Mexico's Topics
  • iOSGods Mexico's MEXICAN Survival Guides
  • iOSGods Mexico's MEXICAN Youtubers
  • iOSGods Mexico's Spanish Music
  • AFK ARENA's Topics
  • Another Eden's Topics
  • Call of duty Mobile's News
  • Save Wizard's Quick Codes
  • Save Wizard's Quick Codes
  • War robots's Topics
  • Modern Ops Hack's Topics
  • Area F2's Team Up!
  • Area F2's Help & Support
  • Area F2's News & Events
  • Area F2's Suggestions
  • Kings Of Pool's Upcoming Mods
  • Kings Of Pool's Clubs
  • The Club's General Discussion
  • The Club's Memes
  • The Club's Serious Responses Only

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Found 737 results

  1. Hello I-G member's Here we go to fix some cydia error's 1- failed in buffer_write(fd) (8, ret=-1) [Hidden Content] 2- Hash Sum Mismatch Fixing .. [Hidden Content] 3- Hash Unreachable Fixing ... [Hidden Content] i hope you have fixed your problems !
  2. Activating & Using REVOKED iOSGods Apps! (Also may prevent apps from crashing in certain cases) ~~~~~~~~~~~~~~~~ READ CAREFULLY & READ SUPPORT TICKET TIPS AT THE BOTTOM ~~~~~~~~~~~~~~~~ Be sure to follow the guide on installing Revoked Apps here in case they are not already downloaded to your device: ~~~~~~~~~~~ Requirements: A revoked App The Magic Touch The Power To “Think You Can” [Hidden Content] Enjoy!
  3. THIS IS THE ONLY ACTUAL WORKING METHOD TUTORIAL/GUIDE TO UNBAN YOUR DEVICE FROM CALL OF DUTY MOBILE WITHOUT LOSING ANY DATA/SAVED PASSWORDS NOTE: This method does not unban your account. It only unbans your device, allowing you to create a new guest account and link that new account to your desired facebook account (one that isn’t banned already). Requirements: - Jailbroken device; - iFile/Filza File Manager (or another similar tweak); Tutorial/Guide: [Hidden Content] Side Note: You can use this method every time your device gets banned for using cheats in Call of Duty: Mobile. In case you need help or messed up a step, leave a comment and I’ll try to reply as quick as I can.
  4. Hi, I looked at the tutorials section here and saw that the only tutorial about debugging was a tutorial by Ted22 without support for watchpoints. This does support wp and is you don't need to download stuff from unofficial sources. But I do recommend reading his tutorial as it covers other stuff. For this you need Xcode & Homebrew. (on macOS). Probably works on GNU/Linux if you get debugserver and the right iOS SDK some other way, or you could run macOS in a VM. Run this to get ldid: brew install ldid Then you need to get the right debugserver. Run cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/ (iPadOS if you're using an iPad, I guess) Then do an ls to list all available versions. In my case "13.3" since I run iOS 13.3.1 on an iPhone X. Run this to mount the DeveloperDiskImage of your version. 13.3 in my case. open ./13.3/DeveloperDiskImage.dmg Then open your mounted disk image and go to DeveloperDiskImage/usr/bin. There you'll find debugserver. Copy that to your computer somewhere. I used ~/Documents/debugserver To thin your binary, run lipo -thin arm64 ./debugserver -output ./debugserverthin (if using arm64) lipo -thin arm64e ./debugserver -output ./debugserverthin (if using arm64e, iPhone XS and above, haven't tried though, maybe arm64 will work fine aswell) Next, sign debugserver with this xml file (save as ent.xml): <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>com.apple.springboard.debugapplications</key> <true/> <key>get-task-allow</key> <true/> <key>task_for_pid-allow</key> <true/> <key>run-unsigned-code</key> <true/> </dict> </plist> Using ldid as such: ldid -Sent.xml ./debugserverthin Copy it to your phone using sftp. sftp [email protected] then put debugserverthin now SSH into your phone and run mv ./debugserverthin /usr/bin/debugserver (/usr/local/bin is more standard but /usr/bin just worked for me so I'll go with that, doesn't really matter). Run this to find all running processes. I'll use Hill Climb Racing as an example: ps -A Example output: 51523 ?? 0:34.60 /var/containers/Bundle/Application/72FDFED4-16FB-47FE-999D-1CD53CF16B8C/Hill Climb Racing.app/Hill Climb Racing Run debugserver to start the debugging server. To specify which process to attach on, do it like this: debugserver 0.0.0.0:1234 -a "Hill Climb Racing" To attach LLDB from your Mac, run this (ON MAC, not phone). lldb (lldb) platform select remote-ios (lldb) process connect connect://yourphoneip:1234 To set watchpoints (got addr from iGG, gold value): (lldb) process interrupt Process 51523 stopped * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP frame #0: 0x00000001b7044634 libsystem_kernel.dylib`mach_msg_trap + 8 libsystem_kernel.dylib`mach_msg_trap: -> 0x1b7044634 <+8>: ret libsystem_kernel.dylib`mach_msg_overwrite_trap: 0x1b7044638 <+0>: mov x16, #-0x20 0x1b704463c <+4>: svc #0x80 0x1b7044640 <+8>: ret Target 0: (Hill Climb Racing) stopped. (lldb) w s e -s 4 -- 0x106128024 Watchpoint created: Watchpoint 1: addr = 0x106128024 size = 4 state = enabled type = w new value: 148742069 (lldb) c Process 51523 resuming When your watchpoints gets you'll see disassembled code that ran some instruction on your data. Example (when buying from store): Watchpoint 1 hit: old value: 148742069 new value: 148642069 Process 51523 stopped * thread #1, queue = 'com.apple.main-thread', stop reason = watchpoint 1 frame #0: 0x0000000104a38a74 Hill Climb Racing`___lldb_unnamed_symbol5830$$Hill Climb Racing + 276 Hill Climb Racing`___lldb_unnamed_symbol5830$$Hill Climb Racing: -> 0x104a38a74 <+276>: mov x0, x19 0x104a38a78 <+280>: mov x1, x20 0x104a38a7c <+284>: bl 0x104a38d94 ; ___lldb_unnamed_symbol5832$$Hill Climb Racing 0x104a38a80 <+288>: add x8, sp, #0x30 ; =0x30 Target 0: (Hill Climb Racing) stopped. I have literally no idea how to write ARM assembly but I'd guess that you could replace the instructions at 0x104a38a74 with NOP's to get free-buy, or write a jmp to your own function for mid-function hooks. I suggest watching other tutorials for that, I'm only good at Windows hacking but I may learn some iOS soon :D. For moderators who review: can I wrap everything in hide-tags without messing up everything? I don't really care but a few more likes is cool 😛 I'll make a follow-up some day when I actually create a fully featured cheat with this, iGG, Theos and a disassembler like Ghidra or Binary Ninja. Secret: [hide][/hide]
  5. How To Get Unbanned From Almost Every Game! Requirements: -Jailbroken iPhone/IPad/IPod Features: -Get Unbanned from almost every game [Hidden Content] Feel free to hit the heart button
  6. Requirements: 1. Jailbroken phone 2. Filza from cydia 3. MEGA app from app store Notice: things have changed since yesterday and now it only works once I will try to figure out a way to make it work every time. This is the final update this will probably not work in the future and if it does work you are lucky and it will only happen once. PUBG did something with the severs so this might not work for some people [Hidden Content]
  7. Hello everyone, With Apple’s latest certification revokes it came with bugs and new ways to prevent third-party apps on your iDevice. With the latest certificate came a bug or preventative measure by Apple to stop opening third party apps by crashing them on launch. The steps below will hopefully help everyone that is having this issue. Please backup your iDevice before proceeding. Go to Settings > Apple ID > iCloud > iCloud Backup > Back up your iPhone over WiFi Once done; go back to Settings > General > Reset > Erase All Content and Settings > Enter passcode and it should ask you to sign out of your Apple ID Once your iDevice has finished resetting and restoring the backup you made in step 1— the iOSGods App should be installed already and you’re ready to download and play games. I really hope this helped everyone that is having crashing apps and unsure why it’s happening. I have to give credit to @HectorBhz for this helpful info. I’ve thought I needed to get a forum out letting people know how to solve this annoying issue. My Phone that I tested it on: iPhone 7 Plus 32GB on iOS 13.3 - Happy Gaming 🙃 Update: This has been confirmed to work on iOS 13.x.x YOU DO NOT NEED A JAILBROKEN IPHONE TO COMPLETE THIS PROCESS!
  8. Hello everyone, in this tutorial i will share you a SnapChat tweak and my method to NOT get banned ! I have been using this SnapChat tweak for about 2 weeks (May 6 2020) and have never received a SnapChat warning or ban ! I will also update this topic every time something happens on my snapchat account and if not, every two weeks I think FEATURES : See DELETED messages from others + custom the color for deleted messages Save Pictures / Videos from everywhere (Chat, Snap, Group, Story (+private), Discover) Save to gallery or specific folder (vault) Save options for tagged users Upload video from the gallery Upload picture from the gallery EDIT picture + video when upload video/picture View snaps for an unlimited times View snaps for an infinite time View stories anonymously Disable Screenshots / Records detection (in Chat, Snap and profile) Hide your presence in chat (no 'is typing' or bitmoji) Fake your location (and get regional geofilter) Fake some stickers data (speed, wheather, date) Fake views and screenshots of snaps of your story Account manager (Switch from account in one-click) Darkmode for Snapchat Automatically save all messages Fake pseudo (change ANY username to what you want + yours (visual only) Spoof the number of requests from friends Show all requests friends (not +99 but +154[example]) Create SnapBreak group (put all your 🔥 in one group) it DOES NOT send in a group, sends to each person at time Can write infinitely lines Infinite upload from galery to chat I don't have ANY other SnapChat tweak (keyborad, font, or any tweak that "modify" SnapChat) I am iOS 12.4, iPhone 6 Week 1 AND 2 : No SnapChat warning or ban ! Week 3 AND 4 : No SnapChat warning or ban ! Here are some picture : Presentations : Dark Mode : Settings : Here are the tweaks needed (repo + .deb file) : [Hidden Content] Here is the method (VERY detailed) : [Hidden Content] I know that there many step "not really useful" but I still advise you to do it (better to waste one minute than 48 hours ban 😁) I also recommend to test this tweak + method on a tester account and then put it in your main account ! if unfortunately you receive this SnapChat message (image): check this topic :
  9. There's a lot of tutorials on here but some are more difficult to understand than others so I'm gonna make this as beginner friendly as possible. I won't be teaching you how to install theos, how to create a project in theos, compiling, cracking the game, etc. There's plenty of tutorials here to teach you that but if you click on the name's in "what's needed" you'll be linked to the tutorials. What's needed: Theos OpenSSH iOSGods Live Offset Patcher IDA Pro il2cpp CrackerXI 1.1.16 Ted2's mod menu template Filza CyberDuck (or any other openSSH) Game we'll be hacking: Sugar Blast! Hexes: High float and public int values: 0090261EC0035FD6 and 00F0271EC0035FD6 Bool true: 20008052C0035FD6 Bool false: 00008052C0035FD6 Low values: 20008052C0035FD6 and 00D0251EC0035FD6 All other values can be found by using the Arm to Hex converter and entering the following: fmov s0, #5fmul s0, s0, s0fmul s0, s0, s0ret The ARM64 HEX box at the bottom right will have the offsets needed. Change "#5" to a higher or lower value depending on what you're looking for. What is bool true and bool false used for?: Bool true and bool false is used for things like GetAds, HasNoAds, HasInfiniteAmmo, and similar names. For GetAds you would ideally use bool false and HasNoAds you would ideally use bool true. Dumping with il2cpp: This part is fairly easy and straight forward. Put the cracked binary (that you got by using CrackerXI) in "Executable file" and put the metadata in "global-metadata.dat". Metadata can be found in /var/containers/bundle/application/gamename/gamename.app/data/managed/metadata/. The output directory will change to the folder where you have the binary and metadata, I suggest changing it to the il2cpp folder so nothing gets moved around. MetadataRegistration can be found in /var/containers/bundle/application/gamename/gamename.app/data/globalgamemanagers (or) unity default resources. Open it with the text editor. The numbers you see circled below is what you'll be entering in the MetadataRegistration (2018.4.10f1). These numbers are different for every game. Once all that is done, click "Start Dumping". Once it's done, you're set. Using IDA to find your functions and offsets: I personally prefer to look at everything in IDA, others prefer looking at the C-Sharp in DnSpy. Whatever is easier for you or what you feel more comfortable with. Upload the binary into IDA, this may take a while to decompile depending on your laptop/pc. You'll know it's done when you see "idle" at the bottom left of IDA. Once the it's done decompiling then you're ready to upload the script. This will also take a while depending on your laptop/pc. When uploading the script file you're gonna want to upload the file "ida" (not ghidra or ida_with_struct) and then "script.json" (not config.json or stringliteral.json) that'll be located in your il2cpp folder. Once it's done you'll see "idle" at the bottom left of IDA again. Searching functions: Now it's time to do work, searching functions. Press Ctrl+F to use the quick filter. Search the function names you want. Different games are gonna have different names of course. And some games will have multiple functions with the similar names, it's all trail and error when that happens. What I'm gonna be searching for is coins. GardenMeta.Inventory$$GetCoins looks like it's going to be it because we of course want to get coins and none of the other function names look like they will help us. Double click on the function name and then scroll up until you see the function name next to the offset. Our offset will be 10190EF94, ignore all the 0's infront of it. Using the Live Offset Patcher: Thanks to @DADiand others that helped create the Live Offset Patcher, it makes the job 10x easier. Your offset will go on the left side and the hex will go on the right side. Now it's time to test if it's going to work. Once again, I'll be putting 10190EF94 in the left box and since we want a high number of coins we're going to put 00F0271EC0035FD6 in the right side box. Now that that's done, you'll simply click on it to activate it. You can look for other functions such as moves, power ups, lives, etc. Whatever you can think of and test them out. This is where you get to work. Good luck on your journey ladies and gents.
  10. So you wanna get Bully for free, huh? Follow this simple tut: [Hidden Content]
  11. An iPhone or Android device. (That is rooted or jailbroken) Some effort and time. Have to be in USA or Canada If you do this correct you will be making $10 itunes gift cards every 20-40 minutes. How it works: I found a glitch in a referral system on an app which can easily be abused. [Hidden Content]
  12. Some Netflix subscribers from several countries (except US.), especially the Middle East subscribers like "me", have a very limited content, so here is the solution to show all Netflix content and get more choices of movies : Tools needed : [Hidden Content] Once you got all this tools, Follow this Tutorial : [Hidden Content] Rate/Like/Share/Anything.. my tutorial
  13. You will need a Jail-broken phone and a DLG cheat engine ( you can search iOS Gods for a .deb or a cydia link for one) Disclaimer this will not work on some games like sever sided games (clash royal/of clans) or games with a lot of different offsets (PvZ heroes) [Hidden Content]
  14. This can be used for all sorts of things. I mainly use this for the ownage pranks app, as you can create a new account using this number Super simple! I'll just post a link, its so easy, anyone can do it. You guys dont need instuctions!!! [Hidden Content]
  15. Hello everyone, I'm creating this tutorial because many hacks are broken on latest version of unc0ver and substrate. You can use this as an alternative to writeData and vm_write because of this. It should work fine and give no crashes. 😄 Requirements: -Cydia Substrate (0.9.7020) -Filza File Manager -Basic IDA/Game hacking knowledge -Theos [Hidden Content]
  16. As of September 30th 2019, this thread has been updated to (maybe) support some other games. (Pokemon GO doesn't work so far) Method 1 Method 2 Method 3 Note: You may use Methods 2 and 3 in conjunction if they do not work standalone. Method 4 Note: This reverts to before you jailbroke! Method 5
  17. To continue reversing iOS tutorial series, today I will share you how to by pass in-app purchases using LLDB on ARM64 architect. Feel free to connect me on Twitter @ReverseThatApp and drop me a message for feedbacks/discussions... any kinds are welcome I will try to have more posts on how to reverse iOS apps soon. [Hidden Content]
  18. Want a phone number to text and call but don't want to pay for it? Here I present you, an app that allows you to do so. This allows you to have unlimited calls and texts. Link : To unlock the hidden content, thanks and click the blue heart ???? [Hidden Content] Instructions : [Hidden Content] Please thanks and +rep for support!
  19. Using Unc0ver Jailbreak is now suggested as it has an updated Cydia Substrate from Saurik himself! - It appears that the Electra with multipath tcp exploit (Dev Version) seems to have a higher success rate and works generally better than the vfs exploit version (Non Dev Account). It is highly suggested you use the multipath version of Electra. Thanks to Ignition, you can download it here. Tutorial on how to have 100% success when Jailbreaking here. Once you're Jailbroken with multipath Electra, open Cydia and install these Dependencies that are required for .deb cheats to work: Substrate Compatibility Layer Tweak Injector Substitute PreferenceLoader Filza File Manager Installing Substrate Compatibility Layer will automatically also install Tweak Injector & Substitute. They can all be found in the default repos that come with Electra Jailbreak. Filza File Manager must be installed from BigBoss repo. Filza Jailed versions or modified versions will give you errors. Once you have installed the dependencies listed above, you can proceed to follow the instructions on the hack's topic to install .deb hacks normally via Filza. - Still not working? If for some reason you still do not get the iOSGods popup when opening the game, see this topic.
  20. Requirements : iOS Device, Filza (mine is jailbroken so get this from cydia but there is a version for unjailbroken devices just google it) , Voicepack. [Hidden Content]
  21. How to make a IPA Hack With Windows You have to have some knowledge But i will Answer Questions When i can Unity games only [Hidden Content]
  22. Needs to be updated! Requirements: 30 seconds of your life [Hidden Content] I have tested it on i7 11.3.1 and works!
  23. *BEST VIEWED ON DESKTOP* The Unity tool. I hate it. All it does is make people worse at hacking because no one is developing actual analysis skills anymore. Now all you have to do to make an awesome hack is to CTRL-F everything until you have 100 features. If you want to get good at something, take the hard route. I can't stress that enough. Anyway, when I first heard about it, I thought it just revealed method names and locations. I was surprised upon finding that not only does it reveal method names and their locations, it reveals class names, parameters, instance variables, and the location in memory where said instance variables can be found. I couldn't believe what was right in front of me because everyone was just taking advantage of visible methods and their locations. This applies to non-Unity games as well. You just need to have knowledge of object oriented programming to really know how to take advantage of instance variables. I guess I could cover that in a later tutorial. Anyway, let's get started. This tutorial pertains to iOS only. Not the concepts, just the tutorial. [hide] *****Get the Unity tool from here: https://github.com/Perfare/Il2CppDumper/releases Part A. Instance Variables 1. Memory Layout I went to make this absolutely clear. For example, this... STR X3, [X0, #0x248] ...is telling the machine to store whatever X3 is holding (let's say ammo) in X0+0x248 (let's say X0 points to a Gun object). X0 contains the address of wherever the Gun object is held in memory. Let's say the address of the Gun object is 0x16fd27640. That means the machine is assigning whatever is at 0x16fd27640+0x248 to X3. That's why when you NOP a STR instruction, the value freezes. The machine can no longer update the value at the location of whatever you NOP'ed. Let's look at an actual example involving arrays: #include <stdio.h> #include <malloc.h> #include <conio.h> int main(){ int *a = (int *)malloc(sizeof(int)*4); free(a); _getch(); } This program allocates some memory for an array of four integers, then frees that memory. _getch() forces the machine to wait for a letter to be pressed before it terminates the program. Now I'll give the elements in this array some values: #include <stdio.h> #include <malloc.h> #include <conio.h> int main(){ int *a = (int *)malloc(sizeof(int)*4); a[0] = 3; a[1] = 2; a[2] = 4; a[3] = 1; free(a); _getch(); return 0; } The memory map of this array would be as follows: a[0] a[1] a[2] a[3] 3 2 4 1 But that's not all. Here's another equivalent way of writing the memory map: *(a+0) *(a+1) *(a+2) *(a+3) 3 2 4 1 This is the way we'll be able to get and set instance variables on various objects, but that is later down the line. Why does this work? Because when the compiler sees the [] operator, it translates it into pointer addition (as well as a dereference), which is exactly what we are doing by writing *(a+X). If you're still confused, hopefully this next part will clear this up. When we created the array of four ints, the machine allocated sixteen bytes space on the heap for it (as well as a pointer for it on the stack, but that isn't important for this tutorial). Why sixteen bytes? Because the size of an int on most machines is four, and we allocated memory for four ints. 4*4=16 We can take a look at what the memory looks like where the array is located in Visual Studio's debugger: The highlighted area is where the array is located. You can see the elements in the exact order as they were declared (3, 2, 4, 1) on the heap. Now we can use our newfound knowledge of memory layout to access and modify instance variables in iOS games. 2. The 'this' pointer In C++, the 'this' pointer is best thought of as a hidden argument in every non-static function call. (Static methods do not need to be called with a class object) It references the current instance of its class. To better illustrate this concept, I have created a tiny class called Test. Also, take note that both of Test's instance variables are private, which means I cannot access them directly. Here is Test.h: class Test { private: int a; int b; public: Test(); int getA() const; int getB() const; void setA(int newA); void setB(int newB); ~Test(); }; Here is Test.cpp: #include "Test.h" //create a new Test object and set its instance variables to 5 and 8 respectively Test::Test(){ this->a = 5; this->b = 8; } int Test::getA() const { return this->a; } int Test::getB() const { return this->b; } void Test::setA(int newA){ this->a = newA; } void Test::setB(int newB){ this->b = newB; } Test::~Test(){} See how I use the this pointer to get and set Test's instance variables? If I wanted to call setA, I would do this: Test *t = new Test(); t.setA(100); Obviously, in assembly, we don't have the luxury of syntax. In assembly, the call to setA would look like this: setA(t, 100); t is the this pointer. In assembly, the this pointer is always the first argument to any (non-static) function. For additional clarity, if I included this method in the Test class: void Test::setAB(int newA, int newB){ this->a = newA; this->b = newB; } and called setAB like this: Test *t = new Test(); t.setAB(1000, 2000); The function call in assembly would be setAB(t, 1000, 2000). No matter what type the function is, however many arguments it has, or whatever class it belongs to, the this pointer is always the first argument. If the method is static, there is simply no this pointer. 3. A "Hacky" Way of Getting and Setting Instance Variables Recall our class called Test and the array example. In the array example, our array was located at 0xba5d38, with sixteen bytes of extra space for the four elements. This is no different with our Test class. Consider this code: #include <stdio.h> #include <malloc.h> #include <conio.h> #include "Test.h" int main(){ Test *t = new Test(); _getch(); return 0; } The machine created a pointer to our Test object on the stack and allocated the appropriate amount of memory on the heap for its instance variables. In the Test constructor, I set a and b to 5 and 8 for visibility. Let's take a look at our memory in Visual Studio's debugger: You can see t's instance variables on the heap! Again, since an int is four bytes on most machines, there are eight byes of memory reserved for the two instance variables. And remember, they are private. When I try and directly access the instance variable "a", I get this error: (side note: I changed my project directory and I forgot to change it back) Fortunately for us, since C++ gives us complete control over our memory, we can access and modify a without a function through pointer arithmetic! Since a is our first instance variable, it is located where our Test object is located. b is located at our test object + 0x4, and so on if we had more instance variables. And remember, t is our this pointer. Consider this code: int instanceVariableA = *(int *)(t + 0x0); /*---1---*/ /*--2--*/ Don't be worried if this looks confusing. I'll explain this step by step. Just like with the array example, we can access data through pointer arithmetic. In the comments I've numbered each thing I am going to explain. 1. Since t is literally just the address to its location on the heap, this is also the address to its first instance variable. Also, throughout this entire tutorial I have been including "+ 0x0" for clarity. In your code you don't have to do this. 2. Cast whatever is at t + 0x0 to an int pointer and dereference it to access its value. After all that, we have successfully grabbed t's instance variable a without a function. Remember that when a Test object is created, a is set to 5 and b is set to 8. if I wanted to grab b, I would replace t + 0x0 with t + 0x4. We can modify a in a similar manner in which we used to grab it. All we have to do is treat all of our pointer arithmetic and casting like a variable, and set it to whatever we want, like so: *(int *)(t + 0x0) = 1000; Let's see if this is successful: Success! I call getA() to make sure that I actually did change a. Let's take a look at our memory on the heap: Sure enough, the data at where a is located changed to 0xe803. But since the hex here is in little endian, 0xe803 is actually 0x03e8, which is 1000. We successfully modified a without calling a function. This will be extremely useful when making game hacks because we won't need to call a function that may or may not be present in the game itself every time we want to modify an instance variable. Everytime we call a function from the game, a little instability is added because we don't actually know how it works, and we want as much stability as possible. 4. Applying These Concepts to Game Hacks Why did I use a program I wrote on my computer to illustrate these concepts? Because C++ on Windows is no different than C++ on iOS. A program that counts from one to one hundred on Windows would do the exact same thing on iOS. Obviously, there are API differences, but we aren't dealing with that. Also, Visual Studio's debugger is great for showing memory. Anyway, let's say that I made a dump of some Unity game and the Player class looked like this: public class Player : MonoBehaviour // TypeDefIndex: 5545 { // Fields private float health; // 0x18 private int ammo; // 0x1c private float moveSpeed; // 0x20 private bool isDead; // 0x24 private Player playerLastDamaged; // 0x28 private bool mine; // 0x30 // Methods public void .ctor(); // 0x100093720 private void Awake(); // 0x1000937A0 private void Update(); // 0x1000938FC private void InitPlayer(); // 0x100094000 private void OnDestroy(); // 0x100094AF0 } (I made every instance variable private as a proof of concept - it doesn't matter if something is public or private as shown in the last example) While taking a look at this, you should notice the instance variable "playerLastDamaged" is eight bytes. This is fine. Size does not matter when grabbing instance variables. You should also notice there are no accessors or setters for any of the instance variables. Notice the function called "Update". Any function called LateUpdate or Update is of massive use to you. Why? Because this is a non-static function that is called by Unity once per frame. If you have 60 FPS in a game, Update is being called 60 times a second. Why is this good? Think about it. We wouldn't want to get and set instance variables on a Player object that hasn't been updated for a while right? We need our most current Player object to modify, and what better way of getting it than hooking a function that is called 60 times every second? You all know how to hook a function with MSHookFunction. At least I hope so. In this example, I'm not going to show the call to MSHookFunction. Just imagine it is there. In this example, the game we are hacking is an online FPS. Everyone in the room is a Player object, and Update is called for each Player object. And for some reason, the game is so insecure that we can modify other people's instance variables non-visually. Here's how the barebones function hook would look: void (*Player_update)(void *player); void _Player_update(void *player){ Player_update(player); } Remember the previous examples. The first argument to any non-static function in assembly is the this pointer. It is best to name the this pointer the class name, because it is representing that class. We also have to use a void pointer (void *) because we don't actually have access to the Player class, only its objects. Because of this, the way we get and set instance variables will be a bit different. We also have to check if the player object isn't NULL to prevent crashes! Recall what you read about the this pointer. If the Player object is NULL, this is what the call to update would look like in C++: NULL.Update(); And that doesn't make any sense, right? For this first example, we'll be giving ourselves infinite ammo, infinite health, and increased move speed, as well as making everyone else's health 1.0 and taking everyone else's ammo away. Obviously we don't want to apply anything bad to ourselves, so we can make use of the mine instance variable. This boolean just tells us if this Player object belongs to me. To get this instance variable, we need to do this: if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); } The one difference is casting the void pointer to uint64_t. We need to do this in order to perform pointer arithmetic on the player object. Also, a boolean in C and C++ just holds a 0 or a 1... which means we can substitute int for it. So far, the Update hook looks like this: void (*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); } Player_update(player); } Now that we have the mine instance variable, we can test to see if our Player object is indeed ours, and if it is, apply the hacks: void (*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); if(isMine){ //ammo *(int *)((uint64_t)player + 0x1c) = 999; //health *(float *)((uint64_t)player + 0x18) = 100.0f; //increased move speed, normal is 1.0f *(float *)((uint64_t)player + 0x20) = 5.0f; } } Player_update(player); } That's not all we want to do, though. We want to wreak havoc on other people so we need to take everyone's ammo away and make everyone have 1.0 health. void (*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); if(isMine){ //ammo *(int *)((uint64_t)player + 0x1c) = 999; //health *(float *)((uint64_t)player + 0x18) = 100.0f; //increased move speed, normal is 1.0f *(float *)((uint64_t)player + 0x20) = 5.0f; } else{ //enemy ammo *(int *)((uint64_t)player + 0x1c) = 0; //enemy health *(float *)((uint64_t)player + 0x18) = 1.0; } } Player_update(player); } If you want to get more creative, you can make use of the "playerLastDamaged" instance variable to make a "freeze tag" hack. This hack will freeze the person you just shot, just like if you tag a person in freeze tag. Like before, we have to check if the player object is ours, and then we can access the playerLastDamaged instance variable. void (*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); } Player_update(player); } Now we have to get the playerLastDamaged instance variable. Like I said before, size does not matter. You would access it just like any other instance variable. We also have to check if it isn't NULL. void (*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); if(isMine){ void *playerLastDamaged = *(void **)((uint64_t)player + 0x28); if(playerLastDamaged != NULL){ } } } Player_update(player); } Now we have to set playerLastDamaged's moveSpeed instance variable to 0.0. Remember that playerLastDamaged is a Player object, so we have access to the Player instance variables. Again, we don't have access to the actual Player class, so we have to use a void pointer. void (*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); if(isMine){ void *playerLastDamaged = *(void **)((uint64_t)player + 0x28); if(playerLastDamaged != NULL){ //set person we just shot moveSpeed to 0.0 *(float *)((uint64_t)playerLastDamaged + 0x20) = 0.0f; } } } Player_update(player); } And just like that, our freeze tag hack is complete! There you have it, two full fledged hacks that work by modifying instance variables! ALWAYS REMEMBER TO CHECK ALL POINTERS TO SEE IF THEY'RE NULL!!!! Part B. Function Pointers Function pointers are great when you want to call a function but don't want to sacrifice stability by hooking it. This part is much simpler than instance variables. Here's an example of a function pointer in C++: #include <stdio.h> #include <conio.h> void func(){ printf("Hello, someone called me!\n"); } int main(){ //&func takes the address of where func is kept in memory void (*func_ptr)() = &func; func_ptr(); _getch(); return 0; } We can this in action here: The & operator takes the address of whatever it is being used on. You can think as a function pointer as a pointer to the address of where the function is in memory. The syntax here should look a bit familiar because you are creating a function pointer to the original function whenever you use MSHookFunction to hook something. But again, that adds instability to the hack. The concept here is the same on iOS, but the syntax is not as simple. First of all, let's add some new methods to our Player class from Part A: public class Player : MonoBehaviour // TypeDefIndex: 5545 { // Fields private float health; // 0x18 private int ammo; // 0x1c private float moveSpeed; // 0x20 private bool isDead; // 0x24 private Player playerLastDamaged; // 0x28 private bool mine; // 0x30 // Methods public void .ctor(); // 0x100093720 private void Awake(); // 0x1000937A0 private void Update(); // 0x1000938FC private void InitPlayer(); // 0x100094000 private void OnDestroy(); // 0x100094AF0 private void KillPlayer(); // 0x100095CF4 private void SetPlayerTeam(int team); // 0x100095FF8 private void RespawnPlayerAtLocation(Vector3 location, int health); // 0x10009A230 private int GetPlayerID(); // 0x10009B34C private static void Suicide(int playerID); // 0x10009C99C } Again, it doesn't matter if a function is private or public. To get the correct offset with the ASLR slide, I use a function called getRealOffset. This is what it looks like: uint64_t getRealOffset(uint64_t offset){ return _dyld_get_image_vmaddr_slide(0) + offset; } Now that that's out of the way, this is how to declare a function pointer: <type> (*<function name>)(<this pointer>, <any additional parameters>) = (<type>)(*)(void *, <types of additional parameters))getRealOffset(<offset>); To remember the syntax, learn to look at this as pairs. I'll add comments to pairs you should remember: <type> (*<function name>)(<this pointer>, <any additional parameters>) = (<type>)(*)(void *, <types of additional parameters>))getRealOffset(<offset>); /*A*/ /*------B------*/ /*-----------------C-----------------------*/ /*-A-*//*B*/ /*----------------C------------------*/ /*-------D--------*/ If it is hard to tell, here's what corresponds to what: //A <type> = (<type>) //B (*<function name>) = (*) //C (<this pointer>, <any additional parameters>) = (void *, <types of additional parameters>) //D getRealOffset(<offset>) has no corresponding part It looks really weird, but once you get used to it, it just feels right. Here's what the function pointers would look like for the five new methods I added: void (*Player_KillPlayer)(void *player) = (void (*)(void *))getRealOffset(0x100095CF4); void (*Player_SetTeam)(void *player, int team) = (void (*)(void *, int))getRealOffset(0x100095FF8); void (*Player_RespawnPlayerAtLocation)(void *player, Vector3 *location, int health) = (void (*)(void *, Vector3 *, int))getRealOffset(0x10009A230); int (*Player_GetPlayerID)(void *player) = (int (*)(void *))getRealOffset(0x10009B34C); void (*Player_Suicide)(int playerID) = (void (*)(int))getRealOffset(0x10009C99C); Side note - Vector3 is a class that you can recreate yourself. Notice how the last method I added was static. That's why there's no this object included in the parameters. You can call these function pointers as normal functions: //kill someone Player_KillPlayer(player); //get someone's ID int playerID = Player_GetPlayerID(player); //force someone with ID 1 to suicide Player_Suicide(1); Now that you know how to create and call function pointers, let's make a hack that constantly kills someone with a specific ID. For this example, it will be 10. First, we hook Update. //declare function pointers void (*Player_KillPlayer)(void *player) = (void (*)(void *))getRealOffset(0x100095CF4); void (*Player_SetTeam)(void *player, int team) = (void (*)(void *, int))getRealOffset(0x100095FF8); void (*Player_RespawnPlayerAtLocation)(void *player, Vector3 *location, int health) = (void (*)(void *, Vector3 *, int))getRealOffset(0x10009A230); int (*Player_GetPlayerID)(void *player) = (int (*)(void *))getRealOffset(0x10009B34C); void (*Player_Suicide)(int playerID) = (void (*)(int))getRealOffset(0x10009C99C); void (*Player_update)(void *player); void _Player_update(void *player){ Player_update(player); } Now we have to figure out which Player object is ours, because we don't want to kill ourselves in case our ID is 10. //declare function pointers void (*Player_KillPlayer)(void *player) = (void(*)(void *))getRealOffset(0x100095CF4); void (*Player_SetTeam)(void *player, int team) = (void(*)(void *, int))getRealOffset(0x100095FF8); void (*Player_RespawnPlayerAtLocation)(void *player, Vector3 *location, int health) = (void(*)(void *, Vector3 *, int))getRealOffset(0x10009A230); int (*Player_GetPlayerID)(void *player) = (int(*)(void *))getRealOffset(0x10009B34C); void (*Player_Suicide)(int playerID) = (void(*)(int))getRealOffset(0x10009C99C); void (*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); } Player_update(player); } Now we can check if the Player object isn't ours and then get the Player ID of the Player object if it is not ours. //declare function pointers void (*Player_KillPlayer)(void *player) = (void(*)(void *))getRealOffset(0x100095CF4); void (*Player_SetTeam)(void *player, int team) = (void(*)(void *, int))getRealOffset(0x100095FF8); void (*Player_RespawnPlayerAtLocation)(void *player, Vector3 *location, int health) = (void(*)(void *, Vector3 *, int))getRealOffset(0x10009A230); int (*Player_GetPlayerID)(void *player) = (int(*)(void *))getRealOffset(0x10009B34C); void (*Player_Suicide)(int playerID) = (void(*)(int))getRealOffset(0x10009C99C); void(*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); if(!isMine){ int playerID = Player_GetPlayerID(player); } } Player_update(player); } Now we can check if playerID is 10, and if so, force that player to kill themselves: //declare function pointers void (*Player_KillPlayer)(void *player) = (void(*)(void *))getRealOffset(0x100095CF4); void (*Player_SetTeam)(void *player, int team) = (void(*)(void *, int))getRealOffset(0x100095FF8); void (*Player_RespawnPlayerAtLocation)(void *player, Vector3 *location, int health) = (void(*)(void *, Vector3 *, int))getRealOffset(0x10009A230); int (*Player_GetPlayerID)(void *player) = (int(*)(void *))getRealOffset(0x10009B34C); void (*Player_Suicide)(int playerID) = (void(*)(int))getRealOffset(0x10009C99C); void(*Player_update)(void *player); void _Player_update(void *player){ if(player != NULL){ bool isMine = *(int *)((uint64_t)player + 0x30); if(!isMine){ int playerID = Player_GetPlayerID(player); if(playerID == 10){ Player_Suicide(playerID); } } } Player_update(player); } (I know this is inefficient, but it is a great way of showing use of function pointers) And there you have it, a hack to kill a certain player if their ID is 10 using function pointers. You can get really creative with this method of hacking! It's really addicting Here is an example Tweak.xm (dead trigger 2 hack): https://iosddl.net/cc637e33bdf2a037/Tweak_for_tutorial.xm Check out my aimbots I put on my Github: http://www.github.com/shmoo419/ [/hide] Please let me know if you have any questions (It took about 6 hours to write this tutorial)
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy - Guidelines