Some notes, tools, and techniques for reverse engineering macOS binaries.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env zsh | |
| printf "PT09IENyb3NzT3ZlciBUcmlhbCBSZXNldCBTY3JpcHQgPT09DQpbSU5GT10gVGhpcyBzY3JpcHQgaXMgb25seSBtZWFudCBmb3IgZWR1Y2F0aW9uYWwgcHVycG9zZXMuDQpbV0FSTklOR10gSWYgeW91IGRpZG4ndCBnZXQgdGhpcyBzY3JpcHQgZnJvbSBueGZ4MjEncyBHaXRIdWIgR2lzdCwgaXQgbWF5IGhhdmUgYmVlbiB0YW1wZXJlZCB3aXRoLiBJZiB5b3UgZGlkIGdldCB0aGlzIG9mZiBueGZ4MjEncyBHaXRIdWIgR2lzdCwgeW91IGFyZSBzYWZlLCBjYXJyeSBvbi4gQmUgY2F1dGlvdXMgd2hlbiBydW5uaW5nIG9ubGluZSBjb2RlLCBhbmQgYWx3YXlzIGNoZWNrIGlmIGl0IGRvZXMgYW55dGhpbmcgdGhhdCB5b3UgZG9uJ3QgbGlrZS4=" | base64 -D | |
| echo "\n[LOG] Started at: $(date)" | |
| # Check if Homebrew exists, install if needed | |
| if ! command -v brew >/dev/null 2>&1; then | |
| echo "[INFO] Homebrew not found. Installing Homebrew..." | |
| /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env zsh | |
| printf "PT09IENyb3NzT3ZlciBUcmlhbCBSZXNldCBTY3JpcHQgPT09DQpbSU5GT10gVGhpcyBzY3JpcHQgaXMgb25seSBtZWFudCBmb3IgZWR1Y2F0aW9uYWwgcHVycG9zZXMuDQpbV0FSTklOR10gSWYgeW91IGRpZG4ndCBnZXQgdGhpcyBzY3JpcHQgZnJvbSBueGZ4MjEncyBHaXRIdWIgR2lzdCwgaXQgbWF5IGhhdmUgYmVlbiB0YW1wZXJlZCB3aXRoLiBJZiB5b3UgZGlkIGdldCB0aGlzIG9mZiBueGZ4MjEncyBHaXRIdWIgR2lzdCwgeW91IGFyZSBzYWZlLCBjYXJyeSBvbi4gQmUgY2F1dGlvdXMgd2hlbiBydW5uaW5nIG9ubGluZSBjb2RlLCBhbmQgYWx3YXlzIGNoZWNrIGlmIGl0IGRvZXMgYW55dGhpbmcgdGhhdCB5b3UgZG9uJ3QgbGlrZS4=" | base64 -D | |
| echo "\n[LOG] Started at: $(date)" | |
| # Check if Homebrew exists, install if needed | |
| if ! command -v brew >/dev/null 2>&1; then | |
| echo "[INFO] Homebrew not found. Installing Homebrew..." | |
| /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/bin/bash | |
| # this forces Arena into full screen mode on startup, set back to 3 to reset | |
| # note that if you go into the Arena "Graphics" preference panel, it will reset all of these | |
| # and you will need to run these commands again | |
| defaults write com.wizards.mtga "Screenmanager Fullscreen mode" -integer 0 | |
| defaults write com.wizards.mtga "Screenmanager Resolution Use Native" -integer 0 | |
| # you can also replace the long complicated integer bit with any other scaled 16:9 | |
| # resolution your system supports. |
Code is clean if it can be understood easily – by everyone on the team. Clean code can be read and enhanced by a developer other than its original author. With understandability comes readability, changeability, extensibility and maintainability.
- Follow standard conventions.
- Keep it simple stupid. Simpler is always better. Reduce complexity as much as possible.
- Boy scout rule. Leave the campground cleaner than you found it.
- Always find root cause. Always look for the root cause of a problem.