Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Heavy flow obfuscation results in invalid bytecode #22

Open
Storyyeller opened this issue Feb 5, 2023 · 0 comments
Open

Heavy flow obfuscation results in invalid bytecode #22

Storyyeller opened this issue Feb 5, 2023 · 0 comments
Labels
bug Something isn't working legacy old bozar

Comments

@Storyyeller
Copy link

Storyyeller commented Feb 5, 2023

Describe the bug
When I try to obfuscate using heavy flow obfuscation, the result is invalid bytecode which fails bytecode verification when I try to run it. It does work if I use "light" flow obfuscation instead.

To Reproduce
Run bozar on attached Primes.jar with heavy flow obfuscation.
This zip has the input jar I used, as well as the broken output jar.
bug.zip

Expected behavior
it works

Bozar version
1.7.0 (latest)

Additional context

Error: Unable to initialize main class Primes
Caused by: java.lang.VerifyError: Bad type on operand stack
Exception Details:
  Location:
    Primes.<init>([I[III)V @629: pop2
  Reason:
    Type top (current frame, stack[1]) is not assignable to category1 type
  Current Frame:
    bci: @629
    flags: { flagThisUninit }
    locals: { uninitializedThis, '[I', '[I', integer, integer, top, top, top, top, 'java/lang/invoke/MethodType' }
    stack: { uninitializedThis, top, integer }
```
@Storyyeller Storyyeller added the bug Something isn't working label Feb 5, 2023
@vimasig vimasig added the legacy old bozar label Mar 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working legacy old bozar
Projects
None yet
Development

No branches or pull requests

2 participants