Jump to content

bR34Kr

ViP Pro
  • Posts

    1,324
  • Joined

  • Last visited

Everything posted by bR34Kr

  1. You can do this using the VNC package on Cydia, although it might be deprecated on more recent versions of iOS
  2. The game might be using encrypted values / offseted values. Also, you might be using the wrong types. Make sure to use a type that matches the value (always go for the smallest, smart devs won't put HP ranging from 0 to 100 in a 4 byte int while they can put it in a 1 byte char for example)
  3. As Ted said this is an Enum. What you need to do is find a class/structure that uses a value of that type (so search for the Enum's name). That will give you the field you want to modify and its offset
  4. This was posted 3 years ago. I'm pretty sure the game got updated since then
  5. The address will always change because it's allocated randomly in memory. The only way to save it is to have a static route to your value, so to do that use LLDB to search the base of your value, then finding an pointer to that base, then repeating this process until you end up with a static address. Once you do that just add, dereference, again and again and you'll be able to change your value
  6. Open the binary in IDA, find fopen calls and try to see where it freads this file. From that you can see how it decrypts the JSON into actual JSON. Good luck!
  7. Something you could do is search for your negative money value, play the game, research to narrow it down and then manually changing everyone until it works. Although this may crash/corrupt your game so I suggest you make a backup first.
  8. Debugging is the process of adding breakpoints / watchpoints and see how the game actually goes and does stuff. For the reload I'd search for the Gun class (with ammo for example), and search closeby memory for constant floats or ints representing the cooldown time. Then you're in business
  9. Yes a watchpoint will "watch" an address for r/w and will tell you where that happens :)
  10. Right now you are looking for a string and finding a function which references that string, after you search all the binary for the first FMOV instruction so you're deemed to fall on something completely random. What you should do is debug the game and find the value for the cooldown while searching by difference (cooldown increased / decreased etc.) and then finding which instruction actually edits the value and then patching it. Hope this helped
  11. Here's a brief rundown of integer types: Signature represents if a number has sign bit. If it's unsigned then all the bits of the bytes are used to represent your integer and the value will be positive. If the value is signed then the first bit will be used to check wheter an integer is positive or negative. So the 'S' or 'U' in front of the type represents if you want to search for unsigned or signed values 1 byte - char Represented by 1 byte in memory Goes from 0 to 255 (unsigned) Goes from -128 to 127 (signed) 2 bytes - short Represented by 2 bytes in memory Goes from 0 to 65535 (unsigned) Goes from -32768 to 32767 (signed) 4 bytes - int Represented by 4 bytes in memory Goes from 0 to 42949672955 (unsigned) Goes from -2147483648 to 2147483647 (signed) 8 bytes - int Represented by 8 bytes in memory Goes from 0 to 18446744073709551615 (unsigned) Goes from -9223372036854775808 to 9223372036854775807 (signed) So to answer your question more clearly: UInt is an unsigned 4 byte integer and SInt is a signed 4 byte integer More detailed explanation here: https://en.cppreference.com/w/c/language/type
  12. Been a while since I've seen ya post. Good job
  13. 1: Knock knock 2: Who's there? 1: Knock 2: Knock who? 1: Knock knock Congrats! You understood recursion through a knock knock joke :p
  14. Use Discord to chat with your friends during class Edit: I’m not responsible if you fail or anything of the sort if you do this method
  15. What OS are you on? Version and all
  16. Makes sense
  17. Only scratch. Not giving intentional pain to that area
×
  • 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