chore: todo

This commit is contained in:
2025-11-14 04:06:32 +08:00
parent e52a943769
commit 9bdf74aea5
2 changed files with 9 additions and 11 deletions

View File

@@ -24,12 +24,12 @@ You don't need to execute the encrypted script. We decrypt them using the same a
### Universal
Currently we are trying to support Pyarmor 8.0 to 9.1.x (latest), Python 3.7 - 3.13, on all operating systems, with obfuscating options as many as possible. (However, we only have limited tests.)
Currently we are trying to support Pyarmor 8.0 to 9.1.9, Python 3.7 - 3.13, on all operating systems, with obfuscating options as many as possible. (However, we only have limited tests.)
You can run this tool in any environment, no need to be the same with obfuscated scripts or runtime.
> [!NOTE]
>
>
> If the data starts with `PY` followed by six digits, it is supported. Otherwise, if it starts with `PYARMOR`, it is generated by Pyarmor 7 or earlier, and is not supported.
### Easy to use
@@ -38,7 +38,7 @@ The only thing you need to do is specifying where your obfuscated scripts are. T
## Build
``` bash
```bash
mkdir build
cd build
cmake ../pycdc
@@ -50,7 +50,7 @@ You can also download prebuilt binary files on [releases page](https://github.co
## Usage
``` bash
```bash
python /path/to/oneshot/shot.py /path/to/scripts
```
@@ -73,10 +73,11 @@ Feel free to open an issue if you have any questions, suggestions, or problems.
## Todo (PR Welcome!)
- [ ] Multi-platform pyarmor_runtime executable
- [ ] Support more obfuscating options
- [ ] Regenerate pyc for other backends
- [ ] Documentation (Do not accept PR about this)
- [ ] Regenerate pyc for other backend decompilers (discussion in GH-24, GH-30)
- [ ] BCC Mode native part analysis tool
- [ ] Verify support for different obfuscating options
- [ ] Verify support for pyarmor_runtime executable on different platforms
## For CTF Challenge Makers

View File

@@ -263,9 +263,6 @@ def decrypt_process(
def get_platform_executable(specified: str) -> str:
"""
Get the appropriate executable for the current platform
"""
logger = logging.getLogger("shot")
# If a specific executable is provided, use it
@@ -497,7 +494,7 @@ def main():
sequences.extend(result)
if not runtimes:
logger.error(f"{Fore.RED}No runtime found{Style.RESET_ALL}")
logger.error(f"{Fore.RED}No `pyarmor_runtime` file found{Style.RESET_ALL}")
return
if not sequences:
logger.error(f"{Fore.RED}No armored data found{Style.RESET_ALL}")