Skip to content

GuillaumeMCK/PyPass-SAB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyPass-SAB 🐍


PyPass-SAB is a patcher written in Python that allows bypassing and resetting the 100-day trial limit of StartAllBack. This patcher supports versions between v3.5.5 and v3.9.5. Other versions may work but are not tested.


Why did I make this?

Because it's annoying to reinstall StartAllBack every 100 days. I made this patcher for fun and to challenge myself. However, if you want to support the developer of StartAllBack, please purchase a license here.

What does it do?

graph TD;
    A[Start] --> B[Delete Trial Registry Key]
    B --> C[Verify File Hash]
    
    C -- Known Indexes --> D[Create Backup]
    C -- Unknown Indexes --> E[Identify Function Indexes to Patch]
    
    E -- Functions Found --> D
    E -- Functions Not Found --> H[Error: Cannot Patch]
    
    D --> G["Terminate Processes (Explorer, StartAllBack)"]
    G --> I[Apply Patch]
    I --> J[Verify Patch]
    
    J -- Patch Verified --> K[Restart Processes]
    J -- Patch Failed --> M[Restore Backup then restart processes]
    
    M -- Abort --> H[End]
    
    K --> H[End]
Loading

The patch

CompareFileTime Function
                      ***************************************************************
                      *                                                             *
                      *   FUNCTION                                                  *
                      ***************************************************************
                      undefined8  __fastcall  Ordinal_101 (void )
      undefined8        RAX:8          <RETURN>
                      0x2164  101
                      Ordinal_101                                     XREF[4]:     Entry Point (*) ,  180027af9 (c) ,
                                                                                   18008a9bc (*) ,  1800920fc (*)
180002164  b8  00  00      MOV        EAX ,0x0
           00  00
180002169  c3              RET
CheckLicense Function
                      ***************************************************************
                      *                                                             *
                      *   FUNCTION                                                  *
                      ***************************************************************
                      undefined8  __fastcall  Ordinal_102 (undefined8 *  param_1 )
      undefined8        RAX:8          <RETURN>
      undefined8 *      RCX:8          param_1
                      0x1f68  102
                      Ordinal_102                                     XREF[4]:     Entry Point (*) ,  180027aeb (c) ,
                                                                                   18008a9c0 (*) ,  1800920e4 (*)
180001f68  48  c7  01      MOV        qword ptr [param_1 ],0x1
           01  00  00
           00
180001f6f  b8  01  00      MOV        EAX ,0x1
           00  00
180001f74  c3              RET

Note: The patch does not change the software's expiration date. It only bypasses the license check.

Registry key

A registry key is created when the software is launched for the first time. This key indicates that the trial period has started. To reset the 100-day trial period, we need to delete the following key:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\CLSID\{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx}

Note: Each time you run the patcher, the key will be deleted.

How to launch it?

From the release page:
Download the latest release and run the file.

From sources:
Follow the instructions below:

git clone https://github.com/GuillaumeMCK/PyPass-SAB.git
cd PyPass-SAB
make

Create a executable

make build

Disclaimer

Warning: I AM NOT RESPONSIBLE FOR ANY DAMAGE CAUSED OR ANY ILLEGAL USAGE OF THIS APP. USE IT AT YOUR OWN RISK.