public class org.objectweb.asm.util.CheckClassAdapter extends org.objectweb.asm.ClassVisitor
{
private static final java.lang.String USAGE;
private static final java.lang.String ERROR_AT;
private boolean checkDataFlow;
private int version;
private boolean visitCalled;
private boolean visitModuleCalled;
private boolean visitSourceCalled;
private boolean visitOuterClassCalled;
private boolean visitNestHostCalled;
private java.lang.String nestMemberPackageName;
private boolean visitEndCalled;
private java.util.Map labelInsnIndices;
public void <init>(org.objectweb.asm.ClassVisitor)
{
org.objectweb.asm.util.CheckClassAdapter v;
org.objectweb.asm.ClassVisitor v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: org.objectweb.asm.ClassVisitor;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void <init>(org.objectweb.asm.ClassVisitor,boolean)>(v, 1);
return;
}
public void <init>(org.objectweb.asm.ClassVisitor, boolean)
{
java.lang.IllegalStateException v;
java.lang.Class v;
org.objectweb.asm.util.CheckClassAdapter v;
org.objectweb.asm.ClassVisitor v;
boolean v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: org.objectweb.asm.ClassVisitor;
v := @parameter: boolean;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void <init>(int,org.objectweb.asm.ClassVisitor,boolean)>(589824, v, v);
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if v == class "Lorg/objectweb/asm/util/CheckClassAdapter;" goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>()>();
throw v;
label:
return;
}
protected void <init>(int, org.objectweb.asm.ClassVisitor, boolean)
{
int v;
java.util.HashMap v;
org.objectweb.asm.util.CheckClassAdapter v;
org.objectweb.asm.ClassVisitor v;
boolean v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: int;
v := @parameter: org.objectweb.asm.ClassVisitor;
v := @parameter: boolean;
specialinvoke v.<org.objectweb.asm.ClassVisitor: void <init>(int,org.objectweb.asm.ClassVisitor)>(v, v);
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.objectweb.asm.util.CheckClassAdapter: java.util.Map labelInsnIndices> = v;
v.<org.objectweb.asm.util.CheckClassAdapter: boolean checkDataFlow> = v;
return;
}
public void visit(int, int, java.lang.String, java.lang.String, java.lang.String, java.lang.String[])
{
java.lang.IllegalStateException v;
java.lang.String[] v;
int v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v;
boolean v, v, v, v, v, v;
java.lang.IllegalArgumentException v, v, v, v;
org.objectweb.asm.util.CheckClassAdapter v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: int;
v := @parameter: int;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String[];
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitCalled>;
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("visit must be called only once");
throw v;
label:
v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitCalled> = 1;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkAccess(int,int)>(v, 259633);
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Illegal class name (null)");
throw v;
label:
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("package-info");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("module-info");
if v != 0 goto label;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, "class name");
label:
v = "java/lang/Object";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
if v == null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("The super class name of the Object class must be \'null\'");
throw v;
label:
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("module-info");
if v == 0 goto label;
if v == null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("The super class name of a module-info class must be \'null\'");
throw v;
label:
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, "super class name");
label:
if v == null goto label;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkClassSignature(java.lang.String)>(v);
label:
v = v & 512;
if v == 0 goto label;
v = "java/lang/Object";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("The super class name of interfaces must be \'java/lang/Object\'");
throw v;
label:
if v == null goto label;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("interface name at index \u0001");
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, v);
v = v + 1;
goto label;
label:
v.<org.objectweb.asm.util.CheckClassAdapter: int version> = v;
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visit(int,int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])>(v, v, v, v, v, v);
return;
}
public void visitSource(java.lang.String, java.lang.String)
{
java.lang.IllegalStateException v;
java.lang.String v, v;
org.objectweb.asm.util.CheckClassAdapter v;
boolean v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitSourceCalled>;
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("visitSource can be called only once.");
throw v;
label:
v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitSourceCalled> = 1;
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visitSource(java.lang.String,java.lang.String)>(v, v);
return;
}
public org.objectweb.asm.ModuleVisitor visitModule(java.lang.String, int, java.lang.String)
{
java.lang.IllegalStateException v;
org.objectweb.asm.ModuleVisitor v;
org.objectweb.asm.util.CheckModuleAdapter v;
org.objectweb.asm.util.CheckClassAdapter v;
int v, v, v, v, v, v;
java.lang.String v, v;
boolean v, v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
v := @parameter: int;
v := @parameter: java.lang.String;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitModuleCalled>;
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("visitModule can be called only once.");
throw v;
label:
v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitModuleCalled> = 1;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkFullyQualifiedName(int,java.lang.String,java.lang.String)>(v, v, "module name");
v = (int) 36896;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkAccess(int,int)>(v, v);
v = new org.objectweb.asm.util.CheckModuleAdapter;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int api>;
v = specialinvoke v.<org.objectweb.asm.ClassVisitor: org.objectweb.asm.ModuleVisitor visitModule(java.lang.String,int,java.lang.String)>(v, v, v);
v = v & 32;
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
specialinvoke v.<org.objectweb.asm.util.CheckModuleAdapter: void <init>(int,org.objectweb.asm.ModuleVisitor,boolean)>(v, v, v);
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
v.<org.objectweb.asm.util.CheckModuleAdapter: int classVersion> = v;
return v;
}
public void visitNestHost(java.lang.String)
{
java.lang.IllegalStateException v, v;
int v;
java.lang.String v, v;
org.objectweb.asm.util.CheckClassAdapter v;
boolean v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, "nestHost");
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitNestHostCalled>;
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("visitNestHost can be called only once.");
throw v;
label:
v = v.<org.objectweb.asm.util.CheckClassAdapter: java.lang.String nestMemberPackageName>;
if v == null goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("visitNestHost and visitNestMember are mutually exclusive.");
throw v;
label:
v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitNestHostCalled> = 1;
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visitNestHost(java.lang.String)>(v);
return;
}
public void visitNestMember(java.lang.String)
{
java.lang.IllegalStateException v, v;
org.objectweb.asm.util.CheckClassAdapter v;
int v;
java.lang.String v, v, v, v, v, v;
boolean v, v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, "nestMember");
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitNestHostCalled>;
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("visitMemberOfNest and visitNestHost are mutually exclusive.");
throw v;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: java.lang.String packageName(java.lang.String)>(v);
v = v.<org.objectweb.asm.util.CheckClassAdapter: java.lang.String nestMemberPackageName>;
if v != null goto label;
v.<org.objectweb.asm.util.CheckClassAdapter: java.lang.String nestMemberPackageName> = v;
goto label;
label:
v = v.<org.objectweb.asm.util.CheckClassAdapter: java.lang.String nestMemberPackageName>;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new java.lang.IllegalStateException;
v = v.<org.objectweb.asm.util.CheckClassAdapter: java.lang.String nestMemberPackageName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("nest member \u should be in the package \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visitNestMember(java.lang.String)>(v);
return;
}
public void visitPermittedSubclass(java.lang.String)
{
int v;
java.lang.String v;
org.objectweb.asm.util.CheckClassAdapter v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, "permittedSubclass");
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visitPermittedSubclass(java.lang.String)>(v);
return;
}
public void visitOuterClass(java.lang.String, java.lang.String, java.lang.String)
{
java.lang.IllegalStateException v;
java.lang.IllegalArgumentException v;
org.objectweb.asm.util.CheckClassAdapter v;
int v;
java.lang.String v, v, v;
boolean v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitOuterClassCalled>;
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("visitOuterClass can be called only once.");
throw v;
label:
v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitOuterClassCalled> = 1;
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Illegal outer class owner");
throw v;
label:
if v == null goto label;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkMethodDescriptor(int,java.lang.String)>(v, v);
label:
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visitOuterClass(java.lang.String,java.lang.String,java.lang.String)>(v, v, v);
return;
}
public void visitInnerClass(java.lang.String, java.lang.String, java.lang.String, int)
{
char v;
org.objectweb.asm.util.CheckClassAdapter v;
int v, v, v, v, v, v, v, v;
java.lang.String v, v, v;
boolean v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: int;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, "class name");
if v == null goto label;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, "outer class name");
label:
if v == null goto label;
v = 0;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= v goto label;
v = virtualinvoke v.<java.lang.String: char charAt(int)>(v);
v = staticinvoke <java.lang.Character: boolean isDigit(char)>(v);
if v == 0 goto label;
v = v + 1;
goto label;
label:
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= v goto label;
label:
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
v = (int) -1;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkIdentifier(int,java.lang.String,int,int,java.lang.String)>(v, v, v, v, "inner class name");
label:
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkAccess(int,int)>(v, 30239);
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visitInnerClass(java.lang.String,java.lang.String,java.lang.String,int)>(v, v, v, v);
return;
}
public org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String, java.lang.String, java.lang.String)
{
org.objectweb.asm.RecordComponentVisitor v;
org.objectweb.asm.util.CheckRecordComponentAdapter v;
org.objectweb.asm.util.CheckClassAdapter v;
int v, v, v;
java.lang.String v, v, v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkUnqualifiedName(int,java.lang.String,java.lang.String)>(v, v, "record component name");
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkDescriptor(int,java.lang.String,boolean)>(v, v, 0);
if v == null goto label;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkFieldSignature(java.lang.String)>(v);
label:
v = new org.objectweb.asm.util.CheckRecordComponentAdapter;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int api>;
v = specialinvoke v.<org.objectweb.asm.ClassVisitor: org.objectweb.asm.RecordComponentVisitor visitRecordComponent(java.lang.String,java.lang.String,java.lang.String)>(v, v, v);
specialinvoke v.<org.objectweb.asm.util.CheckRecordComponentAdapter: void <init>(int,org.objectweb.asm.RecordComponentVisitor)>(v, v);
return v;
}
public org.objectweb.asm.FieldVisitor visitField(int, java.lang.String, java.lang.String, java.lang.String, java.lang.Object)
{
org.objectweb.asm.util.CheckFieldAdapter v;
org.objectweb.asm.FieldVisitor v;
org.objectweb.asm.util.CheckClassAdapter v;
int v, v, v, v;
java.lang.Object v;
java.lang.String v, v, v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: int;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkAccess(int,int)>(v, 184543);
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkUnqualifiedName(int,java.lang.String,java.lang.String)>(v, v, "field name");
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkDescriptor(int,java.lang.String,boolean)>(v, v, 0);
if v == null goto label;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkFieldSignature(java.lang.String)>(v);
label:
if v == null goto label;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkConstant(java.lang.Object)>(v);
label:
v = new org.objectweb.asm.util.CheckFieldAdapter;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int api>;
v = specialinvoke v.<org.objectweb.asm.ClassVisitor: org.objectweb.asm.FieldVisitor visitField(int,java.lang.String,java.lang.String,java.lang.String,java.lang.Object)>(v, v, v, v, v);
specialinvoke v.<org.objectweb.asm.util.CheckFieldAdapter: void <init>(int,org.objectweb.asm.FieldVisitor)>(v, v);
return v;
}
public org.objectweb.asm.MethodVisitor visitMethod(int, java.lang.String, java.lang.String, java.lang.String, java.lang.String[])
{
org.objectweb.asm.MethodVisitor v;
org.objectweb.asm.util.CheckMethodAdapter$MethodWriterWrapper v;
java.util.Map v, v;
org.objectweb.asm.ClassVisitor v, v;
boolean v, v, v, v;
java.lang.String[] v;
int v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v;
org.objectweb.asm.util.CheckClassAdapter v;
org.objectweb.asm.util.CheckMethodAdapter v, v, v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: int;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String[];
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkMethodAccess(int,int,int)>(v, v, 171519);
v = "<init>";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "<clinit>";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkMethodIdentifier(int,java.lang.String,java.lang.String)>(v, v, "method name");
label:
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkMethodDescriptor(int,java.lang.String)>(v, v);
if v == null goto label;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkMethodSignature(java.lang.String)>(v);
label:
if v == null goto label;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
v = v[v];
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("exception name at index \u0001");
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkInternalName(int,java.lang.String,java.lang.String)>(v, v, v);
v = v + 1;
goto label;
label:
v = specialinvoke v.<org.objectweb.asm.ClassVisitor: org.objectweb.asm.MethodVisitor visitMethod(int,java.lang.String,java.lang.String,java.lang.String,java.lang.String[])>(v, v, v, v, v);
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean checkDataFlow>;
if v == 0 goto label;
v = v.<org.objectweb.asm.util.CheckClassAdapter: org.objectweb.asm.ClassVisitor cv>;
v = v instanceof org.objectweb.asm.ClassWriter;
if v == 0 goto label;
v = new org.objectweb.asm.util.CheckMethodAdapter$MethodWriterWrapper;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int api>;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
v = v.<org.objectweb.asm.util.CheckClassAdapter: org.objectweb.asm.ClassVisitor cv>;
specialinvoke v.<org.objectweb.asm.util.CheckMethodAdapter$MethodWriterWrapper: void <init>(int,int,org.objectweb.asm.ClassWriter,org.objectweb.asm.MethodVisitor)>(v, v, v, v);
v = v;
label:
v = new org.objectweb.asm.util.CheckMethodAdapter;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int api>;
v = v.<org.objectweb.asm.util.CheckClassAdapter: java.util.Map labelInsnIndices>;
specialinvoke v.<org.objectweb.asm.util.CheckMethodAdapter: void <init>(int,int,java.lang.String,java.lang.String,org.objectweb.asm.MethodVisitor,java.util.Map)>(v, v, v, v, v, v);
v = v;
goto label;
label:
v = new org.objectweb.asm.util.CheckMethodAdapter;
v = v.<org.objectweb.asm.util.CheckClassAdapter: int api>;
v = v.<org.objectweb.asm.util.CheckClassAdapter: java.util.Map labelInsnIndices>;
specialinvoke v.<org.objectweb.asm.util.CheckMethodAdapter: void <init>(int,org.objectweb.asm.MethodVisitor,java.util.Map)>(v, v, v);
v = v;
label:
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
v.<org.objectweb.asm.util.CheckMethodAdapter: int version> = v;
return v;
}
public org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String, boolean)
{
org.objectweb.asm.AnnotationVisitor v;
org.objectweb.asm.util.CheckAnnotationAdapter v;
int v;
java.lang.String v;
org.objectweb.asm.util.CheckClassAdapter v;
boolean v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: java.lang.String;
v := @parameter: boolean;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkDescriptor(int,java.lang.String,boolean)>(v, v, 0);
v = new org.objectweb.asm.util.CheckAnnotationAdapter;
v = specialinvoke v.<org.objectweb.asm.ClassVisitor: org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String,boolean)>(v, v);
specialinvoke v.<org.objectweb.asm.util.CheckAnnotationAdapter: void <init>(org.objectweb.asm.AnnotationVisitor)>(v);
return v;
}
public org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int, org.objectweb.asm.TypePath, java.lang.String, boolean)
{
org.objectweb.asm.AnnotationVisitor v;
org.objectweb.asm.TypeReference v;
java.lang.IllegalArgumentException v;
org.objectweb.asm.util.CheckClassAdapter v;
org.objectweb.asm.TypePath v;
org.objectweb.asm.util.CheckAnnotationAdapter v;
int v, v, v;
java.lang.String v, v, v;
boolean v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: int;
v := @parameter: org.objectweb.asm.TypePath;
v := @parameter: java.lang.String;
v := @parameter: boolean;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v = new org.objectweb.asm.TypeReference;
specialinvoke v.<org.objectweb.asm.TypeReference: void <init>(int)>(v);
v = virtualinvoke v.<org.objectweb.asm.TypeReference: int getSort()>();
if v == 0 goto label;
if v == 17 goto label;
if v == 16 goto label;
v = new java.lang.IllegalArgumentException;
v = staticinvoke <java.lang.Integer: java.lang.String toHexString(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Invalid type reference sort 0x\u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkTypeRef(int)>(v);
v = v.<org.objectweb.asm.util.CheckClassAdapter: int version>;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkDescriptor(int,java.lang.String,boolean)>(v, v, 0);
v = new org.objectweb.asm.util.CheckAnnotationAdapter;
v = specialinvoke v.<org.objectweb.asm.ClassVisitor: org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int,org.objectweb.asm.TypePath,java.lang.String,boolean)>(v, v, v, v);
specialinvoke v.<org.objectweb.asm.util.CheckAnnotationAdapter: void <init>(org.objectweb.asm.AnnotationVisitor)>(v);
return v;
}
public void visitAttribute(org.objectweb.asm.Attribute)
{
org.objectweb.asm.Attribute v;
java.lang.IllegalArgumentException v;
org.objectweb.asm.util.CheckClassAdapter v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v := @parameter: org.objectweb.asm.Attribute;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
if v != null goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("Invalid attribute (must not be null)");
throw v;
label:
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visitAttribute(org.objectweb.asm.Attribute)>(v);
return;
}
public void visitEnd()
{
org.objectweb.asm.util.CheckClassAdapter v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter: void checkState()>();
v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitEndCalled> = 1;
specialinvoke v.<org.objectweb.asm.ClassVisitor: void visitEnd()>();
return;
}
private void checkState()
{
java.lang.IllegalStateException v, v;
org.objectweb.asm.util.CheckClassAdapter v;
boolean v, v;
v := @this: org.objectweb.asm.util.CheckClassAdapter;
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitCalled>;
if v != 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Cannot visit member before visit has been called.");
throw v;
label:
v = v.<org.objectweb.asm.util.CheckClassAdapter: boolean visitEndCalled>;
if v == 0 goto label;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Cannot visit member after visitEnd has been called.");
throw v;
label:
return;
}
static void checkAccess(int, int)
{
java.lang.IllegalArgumentException v, v, v;
int v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v;
v := @parameter: int;
v := @parameter: int;
v = (int) -1;
v = v ^ v;
v = v & v;
if v == 0 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Invalid access flags: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v & 7;
v = staticinvoke <java.lang.Integer: int bitCount(int)>(v);
if v <= 1 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("public, protected and private are mutually exclusive: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v & 1040;
v = staticinvoke <java.lang.Integer: int bitCount(int)>(v);
if v <= 1 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("final and abstract are mutually exclusive: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
private static void checkMethodAccess(int, int, int)
{
java.lang.IllegalArgumentException v;
int v, v, v, v, v, v, v;
java.lang.String v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void checkAccess(int,int)>(v, v);
v = (int) 65535;
v = v & v;
if v >= 61 goto label;
v = v & 3072;
v = staticinvoke <java.lang.Integer: int bitCount(int)>(v);
if v <= 1 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("strictfp and abstract are mutually exclusive: \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
static void checkFullyQualifiedName(int, java.lang.String, java.lang.String)
{
java.lang.IllegalArgumentException v, v;
int v, v, v, v, v, v;
java.lang.String v, v, v;
v := @parameter: int;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
label:
v = 0;
label:
v = v + 1;
v = virtualinvoke v.<java.lang.String: int indexOf(int,int)>(46, v);
v = (int) -1;
if v == v goto label;
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkIdentifier(int,java.lang.String,int,int,java.lang.String)>(v, v, v, v, null);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
staticinvoke <org.objectweb.asm.util.CheckMethodAdapter: void checkIdentifier(int,java.lang.String,int,int,java.lang.String)>(v, v, v, v, null);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Invalid \u (must be a fully qualified name): \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
return;
catch java.lang.IllegalArgumentException from label to label with label;
}
public static void checkClassSignature(java.lang.String)
{
char v, v;
java.lang.IllegalArgumentException v;
int v, v, v;
java.lang.String v, v;
v := @parameter: java.lang.String;
v = 0;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, 0);
if v != 60 goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeParameters(java.lang.String,int)>(v, 0);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkClassTypeSignature(java.lang.String,int)>(v, v);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 76 goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkClassTypeSignature(java.lang.String,int)>(v, v);
goto label;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v == v goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,int)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001: error at index \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public static void checkMethodSignature(java.lang.String)
{
int v, v, v, v, v, v, v, v;
java.lang.String v, v, v;
char v, v, v, v, v;
java.lang.IllegalArgumentException v;
v := @parameter: java.lang.String;
v = 0;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, 0);
if v != 60 goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeParameters(java.lang.String,int)>(v, 0);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(40, v, v);
label:
v = "ZCBSIFJDL[T";
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
v = virtualinvoke v.<java.lang.String: int indexOf(int)>(v);
v = (int) -1;
if v == v goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkJavaTypeSignature(java.lang.String,int)>(v, v);
goto label;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(41, v, v);
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 86 goto label;
v = v + 1;
goto label;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkJavaTypeSignature(java.lang.String,int)>(v, v);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 94 goto label;
v = v + 1;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 76 goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkClassTypeSignature(java.lang.String,int)>(v, v);
goto label;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeVariableSignature(java.lang.String,int)>(v, v);
goto label;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v == v goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,int)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001: error at index \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public static void checkFieldSignature(java.lang.String)
{
int v, v;
java.lang.String v, v;
java.lang.IllegalArgumentException v;
v := @parameter: java.lang.String;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkReferenceTypeSignature(java.lang.String,int)>(v, 0);
v = virtualinvoke v.<java.lang.String: int length()>();
if v == v goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,int)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001: error at index \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
private static int checkTypeParameters(java.lang.String, int)
{
int v, v, v, v;
char v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(60, v, v);
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeParameter(java.lang.String,int)>(v, v);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v == 62 goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeParameter(java.lang.String,int)>(v, v);
goto label;
label:
v = v + 1;
return v;
}
private static int checkTypeParameter(java.lang.String, int)
{
char v, v;
int v, v, v, v, v, v;
java.lang.String v, v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkSignatureIdentifier(java.lang.String,int)>(v, v);
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(58, v, v);
v = "L[T";
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
v = virtualinvoke v.<java.lang.String: int indexOf(int)>(v);
v = (int) -1;
if v == v goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkReferenceTypeSignature(java.lang.String,int)>(v, v);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 58 goto label;
v = v + 1;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkReferenceTypeSignature(java.lang.String,int)>(v, v);
goto label;
label:
return v;
}
private static int checkReferenceTypeSignature(java.lang.String, int)
{
int v, v, v, v, v;
char v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
lookupswitch(v)
{
case 76: goto label;
case 91: goto label;
default: goto label;
};
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkClassTypeSignature(java.lang.String,int)>(v, v);
return v;
label:
v = v + 1;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkJavaTypeSignature(java.lang.String,int)>(v, v);
return v;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeVariableSignature(java.lang.String,int)>(v, v);
return v;
}
private static int checkClassTypeSignature(java.lang.String, int)
{
char v, v, v, v;
int v, v, v, v, v, v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(76, v, v);
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkSignatureIdentifier(java.lang.String,int)>(v, v);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 47 goto label;
v = v + 1;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkSignatureIdentifier(java.lang.String,int)>(v, v);
goto label;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 60 goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeArguments(java.lang.String,int)>(v, v);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 46 goto label;
v = v + 1;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkSignatureIdentifier(java.lang.String,int)>(v, v);
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 60 goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeArguments(java.lang.String,int)>(v, v);
goto label;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(59, v, v);
return v;
}
private static int checkTypeArguments(java.lang.String, int)
{
int v, v, v, v;
char v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(60, v, v);
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeArgument(java.lang.String,int)>(v, v);
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v == 62 goto label;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkTypeArgument(java.lang.String,int)>(v, v);
goto label;
label:
v = v + 1;
return v;
}
private static int checkTypeArgument(java.lang.String, int)
{
int v, v, v, v;
char v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = v;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != 42 goto label;
v = v + 1;
return v;
label:
if v == 43 goto label;
if v != 45 goto label;
label:
v = v + 1;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkReferenceTypeSignature(java.lang.String,int)>(v, v);
return v;
}
private static int checkTypeVariableSignature(java.lang.String, int)
{
int v, v, v, v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(84, v, v);
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkSignatureIdentifier(java.lang.String,int)>(v, v);
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkChar(char,java.lang.String,int)>(59, v, v);
return v;
}
private static int checkJavaTypeSignature(java.lang.String, int)
{
int v, v, v;
char v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
tableswitch(v)
{
case 66: goto label;
case 67: goto label;
case 68: goto label;
case 69: goto label;
case 70: goto label;
case 71: goto label;
case 72: goto label;
case 73: goto label;
case 74: goto label;
case 75: goto label;
case 76: goto label;
case 77: goto label;
case 78: goto label;
case 79: goto label;
case 80: goto label;
case 81: goto label;
case 82: goto label;
case 83: goto label;
case 84: goto label;
case 85: goto label;
case 86: goto label;
case 87: goto label;
case 88: goto label;
case 89: goto label;
case 90: goto label;
default: goto label;
};
label:
v = v + 1;
return v;
label:
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: int checkReferenceTypeSignature(java.lang.String,int)>(v, v);
return v;
}
private static int checkSignatureIdentifier(java.lang.String, int)
{
java.lang.IllegalArgumentException v;
int v, v, v, v, v, v;
java.lang.String v, v, v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = v;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= v goto label;
v = ".;[/<>:";
v = virtualinvoke v.<java.lang.String: int codePointAt(int)>(v);
v = virtualinvoke v.<java.lang.String: int indexOf(int)>(v);
v = (int) -1;
if v != v goto label;
v = virtualinvoke v.<java.lang.String: int offsetByCodePoints(int,int)>(v, 1);
goto label;
label:
if v != v goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,int)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001: identifier expected at index \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
}
private static int checkChar(char, java.lang.String, int)
{
int v, v;
char v, v;
java.lang.String v, v;
java.lang.IllegalArgumentException v;
v := @parameter: char;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: char getChar(java.lang.String,int)>(v, v);
if v != v goto label;
v = v + 1;
return v;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,char,int)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001: \'\u0001\' expected at index \u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
}
private static char getChar(java.lang.String, int)
{
int v, v;
char v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= v goto label;
v = virtualinvoke v.<java.lang.String: char charAt(int)>(v);
goto label;
label:
v = 0;
label:
return v;
}
static void checkTypeRef(int)
{
java.lang.IllegalArgumentException v;
int v, v, v, v, v, v, v;
java.lang.String v, v;
v := @parameter: int;
v = 0;
v = v >>> 24;
tableswitch(v)
{
case 0: goto label;
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
case 11: goto label;
case 12: goto label;
case 13: goto label;
case 14: goto label;
case 15: goto label;
case 16: goto label;
case 17: goto label;
case 18: goto label;
case 19: goto label;
case 20: goto label;
case 21: goto label;
case 22: goto label;
case 23: goto label;
case 24: goto label;
case 25: goto label;
case 26: goto label;
case 27: goto label;
case 28: goto label;
case 29: goto label;
case 30: goto label;
case 31: goto label;
case 32: goto label;
case 33: goto label;
case 34: goto label;
case 35: goto label;
case 36: goto label;
case 37: goto label;
case 38: goto label;
case 39: goto label;
case 40: goto label;
case 41: goto label;
case 42: goto label;
case 43: goto label;
case 44: goto label;
case 45: goto label;
case 46: goto label;
case 47: goto label;
case 48: goto label;
case 49: goto label;
case 50: goto label;
case 51: goto label;
case 52: goto label;
case 53: goto label;
case 54: goto label;
case 55: goto label;
case 56: goto label;
case 57: goto label;
case 58: goto label;
case 59: goto label;
case 60: goto label;
case 61: goto label;
case 62: goto label;
case 63: goto label;
case 64: goto label;
case 65: goto label;
case 66: goto label;
case 67: goto label;
case 68: goto label;
case 69: goto label;
case 70: goto label;
case 71: goto label;
case 72: goto label;
case 73: goto label;
case 74: goto label;
case 75: goto label;
default: goto label;
};
label:
v = -65536;
goto label;
label:
v = -16777216;
goto label;
label:
v = (int) -256;
v = v;
goto label;
label:
v = -16776961;
label:
if v == 0 goto label;
v = (int) -1;
v = v ^ v;
v = v & v;
if v == 0 goto label;
label:
v = new java.lang.IllegalArgumentException;
v = staticinvoke <java.lang.Integer: java.lang.String toHexString(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Invalid type reference 0x\u0001");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
private static java.lang.String packageName(java.lang.String)
{
int v, v;
java.lang.String v, v;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(47);
v = (int) -1;
if v != v goto label;
return "";
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
return v;
}
public static void main(java.lang.String[]) throws java.io.IOException
{
java.io.PrintStream v;
java.io.PrintWriter v;
java.lang.String[] v;
v := @parameter: java.lang.String[];
v = new java.io.PrintWriter;
v = <java.lang.System: java.io.PrintStream err>;
specialinvoke v.<java.io.PrintWriter: void <init>(java.io.OutputStream,boolean)>(v, 1);
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void main(java.lang.String[],java.io.PrintWriter)>(v, v);
return;
}
static void main(java.lang.String[], java.io.PrintWriter) throws java.io.IOException
{
java.io.PrintWriter v;
java.lang.Throwable v;
java.lang.String[] v;
java.io.FileInputStream v;
org.objectweb.asm.ClassReader v, v, v;
int v;
java.lang.String v, v, v;
boolean v;
v := @parameter: java.lang.String[];
v := @parameter: java.io.PrintWriter;
v = lengthof v;
if v == 1 goto label;
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("Verifies the given class.\nUsage: CheckClassAdapter <fully qualified class name or class file name>");
return;
label:
v = v[0];
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>(".class");
if v == 0 goto label;
v = new java.io.FileInputStream;
v = v[0];
specialinvoke v.<java.io.FileInputStream: void <init>(java.lang.String)>(v);
label:
v = new org.objectweb.asm.ClassReader;
specialinvoke v.<org.objectweb.asm.ClassReader: void <init>(java.io.InputStream)>(v);
v = v;
label:
virtualinvoke v.<java.io.InputStream: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v = new org.objectweb.asm.ClassReader;
v = v[0];
specialinvoke v.<org.objectweb.asm.ClassReader: void <init>(java.lang.String)>(v);
v = v;
label:
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void verify(org.objectweb.asm.ClassReader,boolean,java.io.PrintWriter)>(v, 0, v);
return;
catch java.lang.Throwable from label to label with label;
}
public static void verify(org.objectweb.asm.ClassReader, boolean, java.io.PrintWriter)
{
java.io.PrintWriter v;
org.objectweb.asm.ClassReader v;
boolean v;
v := @parameter: org.objectweb.asm.ClassReader;
v := @parameter: boolean;
v := @parameter: java.io.PrintWriter;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void verify(org.objectweb.asm.ClassReader,java.lang.ClassLoader,boolean,java.io.PrintWriter)>(v, null, v, v);
return;
}
public static void verify(org.objectweb.asm.ClassReader, java.lang.ClassLoader, boolean, java.io.PrintWriter)
{
org.objectweb.asm.tree.analysis.AnalyzerException v;
org.objectweb.asm.Type v, v, v, v;
java.util.ArrayList v;
org.objectweb.asm.tree.analysis.Analyzer v;
int v, v;
java.lang.String v, v, v, v;
org.objectweb.asm.util.CheckClassAdapter$1 v;
boolean v, v, v, v;
java.io.PrintWriter v;
java.util.Iterator v, v;
java.util.List v, v;
org.objectweb.asm.tree.analysis.SimpleVerifier v;
org.objectweb.asm.ClassReader v;
java.lang.Object v, v;
java.lang.ClassLoader v;
org.objectweb.asm.tree.ClassNode v;
v := @parameter: org.objectweb.asm.ClassReader;
v := @parameter: java.lang.ClassLoader;
v := @parameter: boolean;
v := @parameter: java.io.PrintWriter;
v = new org.objectweb.asm.tree.ClassNode;
specialinvoke v.<org.objectweb.asm.tree.ClassNode: void <init>()>();
v = new org.objectweb.asm.util.CheckClassAdapter$1;
specialinvoke v.<org.objectweb.asm.util.CheckClassAdapter$1: void <init>(int,org.objectweb.asm.ClassVisitor,boolean)>(17432576, v, 0);
virtualinvoke v.<org.objectweb.asm.ClassReader: void accept(org.objectweb.asm.ClassVisitor,int)>(v, 2);
v = v.<org.objectweb.asm.tree.ClassNode: java.lang.String superName>;
if v != null goto label;
v = null;
goto label;
label:
v = v.<org.objectweb.asm.tree.ClassNode: java.lang.String superName>;
v = staticinvoke <org.objectweb.asm.Type: org.objectweb.asm.Type getObjectType(java.lang.String)>(v);
label:
v = v;
v = v.<org.objectweb.asm.tree.ClassNode: java.util.List methods>;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v.<org.objectweb.asm.tree.ClassNode: java.util.List interfaces>;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.objectweb.asm.Type: org.objectweb.asm.Type getObjectType(java.lang.String)>(v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = new org.objectweb.asm.tree.analysis.SimpleVerifier;
v = v.<org.objectweb.asm.tree.ClassNode: java.lang.String name>;
v = staticinvoke <org.objectweb.asm.Type: org.objectweb.asm.Type getObjectType(java.lang.String)>(v);
v = v.<org.objectweb.asm.tree.ClassNode: int access>;
v = v & 512;
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
specialinvoke v.<org.objectweb.asm.tree.analysis.SimpleVerifier: void <init>(org.objectweb.asm.Type,org.objectweb.asm.Type,java.util.List,boolean)>(v, v, v, v);
v = new org.objectweb.asm.tree.analysis.Analyzer;
specialinvoke v.<org.objectweb.asm.tree.analysis.Analyzer: void <init>(org.objectweb.asm.tree.analysis.Interpreter)>(v);
if v == null goto label;
virtualinvoke v.<org.objectweb.asm.tree.analysis.SimpleVerifier: void setClassLoader(java.lang.ClassLoader)>(v);
label:
v = v.<org.objectweb.asm.tree.ClassNode: java.lang.String name>;
virtualinvoke v.<org.objectweb.asm.tree.analysis.Analyzer: org.objectweb.asm.tree.analysis.Frame[] analyze(java.lang.String,org.objectweb.asm.tree.MethodNode)>(v, v);
label:
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.objectweb.asm.tree.analysis.AnalyzerException: void printStackTrace(java.io.PrintWriter)>(v);
label:
if v == 0 goto label;
staticinvoke <org.objectweb.asm.util.CheckClassAdapter: void printAnalyzerResult(org.objectweb.asm.tree.MethodNode,org.objectweb.asm.tree.analysis.Analyzer,java.io.PrintWriter)>(v, v, v);
goto label;
label:
virtualinvoke v.<java.io.PrintWriter: void flush()>();
return;
catch org.objectweb.asm.tree.analysis.AnalyzerException from label to label with label;
}
static void printAnalyzerResult(org.objectweb.asm.tree.MethodNode, org.objectweb.asm.tree.analysis.Analyzer, java.io.PrintWriter)
{
org.objectweb.asm.tree.analysis.Frame v;
org.objectweb.asm.tree.analysis.Frame[] v;
boolean v;
java.io.PrintWriter v;
java.util.List v, v, v, v, v;
java.lang.StringBuilder v, v, v;
org.objectweb.asm.util.Textifier v;
org.objectweb.asm.util.TraceMethodVisitor v;
org.objectweb.asm.tree.analysis.Analyzer v;
org.objectweb.asm.tree.MethodNode v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v;
org.objectweb.asm.tree.InsnList v, v;
org.objectweb.asm.tree.analysis.Value v, v;
org.objectweb.asm.tree.AbstractInsnNode v;
java.lang.Object v, v, v;
v := @parameter: org.objectweb.asm.tree.MethodNode;
v := @parameter: org.objectweb.asm.tree.analysis.Analyzer;
v := @parameter: java.io.PrintWriter;
v = new org.objectweb.asm.util.Textifier;
specialinvoke v.<org.objectweb.asm.util.Textifier: void <init>()>();
v = new org.objectweb.asm.util.TraceMethodVisitor;
specialinvoke v.<org.objectweb.asm.util.TraceMethodVisitor: void <init>(org.objectweb.asm.util.Printer)>(v);
v = v.<org.objectweb.asm.tree.MethodNode: java.lang.String name>;
v = v.<org.objectweb.asm.tree.MethodNode: java.lang.String desc>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001\u0001");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = 0;
label:
v = v.<org.objectweb.asm.tree.MethodNode: org.objectweb.asm.tree.InsnList instructions>;
v = virtualinvoke v.<org.objectweb.asm.tree.InsnList: int size()>();
if v >= v goto label;
v = v.<org.objectweb.asm.tree.MethodNode: org.objectweb.asm.tree.InsnList instructions>;
v = virtualinvoke v.<org.objectweb.asm.tree.InsnList: org.objectweb.asm.tree.AbstractInsnNode get(int)>(v);
virtualinvoke v.<org.objectweb.asm.tree.AbstractInsnNode: void accept(org.objectweb.asm.MethodVisitor)>(v);
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = virtualinvoke v.<org.objectweb.asm.tree.analysis.Analyzer: org.objectweb.asm.tree.analysis.Frame[] getFrames()>();
v = v[v];
if v != null goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(63);
goto label;
label:
v = 0;
label:
v = virtualinvoke v.<org.objectweb.asm.tree.analysis.Frame: int getLocals()>();
if v >= v goto label;
v = virtualinvoke v.<org.objectweb.asm.tree.analysis.Frame: org.objectweb.asm.tree.analysis.Value getLocal(int)>(v);
v = virtualinvoke v.<org.objectweb.asm.tree.analysis.BasicValue: java.lang.String toString()>();
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: java.lang.String getUnqualifiedName(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(32);
v = v + 1;
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(" : ");
v = 0;
label:
v = virtualinvoke v.<org.objectweb.asm.tree.analysis.Frame: int getStackSize()>();
if v >= v goto label;
v = virtualinvoke v.<org.objectweb.asm.tree.analysis.Frame: org.objectweb.asm.tree.analysis.Value getStack(int)>(v);
v = virtualinvoke v.<org.objectweb.asm.tree.analysis.BasicValue: java.lang.String toString()>();
v = staticinvoke <org.objectweb.asm.util.CheckClassAdapter: java.lang.String getUnqualifiedName(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(32);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
v = v.<org.objectweb.asm.tree.MethodNode: int maxStack>;
v = v.<org.objectweb.asm.tree.MethodNode: int maxLocals>;
v = v + v;
v = v + 1;
if v >= v goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(32);
goto label;
label:
v = v + 100000;
v = staticinvoke <java.lang.Integer: java.lang.String toString(int)>(v);
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(1);
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>(v);
v = v.<org.objectweb.asm.util.Textifier: java.util.List text>;
v = v.<org.objectweb.asm.util.Textifier: java.util.List text>;
v = interfaceinvoke v.<java.util.List: int size()>();
v = v - 1;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.StringBuilder,java.lang.Object)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>(" \u : \u0001");
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = v.<org.objectweb.asm.tree.MethodNode: java.util.List tryCatchBlocks>;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.objectweb.asm.tree.TryCatchBlockNode: void accept(org.objectweb.asm.MethodVisitor)>(v);
v = v.<org.objectweb.asm.util.Textifier: java.util.List text>;
v = v.<org.objectweb.asm.util.Textifier: java.util.List text>;
v = interfaceinvoke v.<java.util.List: int size()>();
v = v - 1;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Object)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>(" \u0001");
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>(v);
goto label;
label:
virtualinvoke v.<java.io.PrintWriter: void println()>();
return;
}
private static java.lang.String getUnqualifiedName(java.lang.String)
{
char v;
int v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v;
v := @parameter: java.lang.String;
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(47);
v = (int) -1;
if v != v goto label;
return v;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = virtualinvoke v.<java.lang.String: char charAt(int)>(v);
if v != 59 goto label;
v = v - 1;
label:
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(91);
v = (int) -1;
if v != v goto label;
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
return v;
label:
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001\u0001");
return v;
}
}