-
Notifications
You must be signed in to change notification settings - Fork 1
Description
It looks like the LVT node handling in App.handleClass need to be prepared for the case that the current frame is a j.l.Integer (and not always a j.l.String, described assumed in the nearby comment).
Such as in class c.d.a of https://crackmes.one/crackme/5abaae3633c5d46cb40c9c94
Here we see:
Examining class crackme/dup2_x2/a
Examining method
Examining method
Examining method a
Examining method a
Examining method b
Exception in thread "main" java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String (java.lang.Integer and java.lang.String are in module java.base of loader 'bootstrap')
at latte.App.handleClass(App.java:279)
at latte.App.main(App.java:127)
279: localVar.desc = Type.getObjectType((String)stackMapLocal).getDescriptor();
280: break;