ClassReader.smali
.class public Lorg/objectweb/asm/ClassReader;
.super Ljava/lang/Object;
# static fields
.field public static final EXPAND_FRAMES:I = 0x8
.field public static final SKIP_CODE:I = 0x1
.field public static final SKIP_DEBUG:I = 0x2
.field public static final SKIP_FRAMES:I = 0x4
# instance fields
.field private final a:[I
.field public final b:[B
.field private final c:[Ljava/lang/String;
.field private final d:I
.field public final header:I
# direct methods
.method public constructor <init>(Ljava/io/InputStream;)V
.registers 3
const/4 v0, 0x0
invoke-static {p1, v0}, Lorg/objectweb/asm/ClassReader;->a(Ljava/io/InputStream;Z)[B
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/ClassReader;-><init>([B)V
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.registers 5
new-instance v0, Ljava/lang/StringBuffer;
invoke-direct {v0}, Ljava/lang/StringBuffer;-><init>()V
const/16 v1, 0x2e
const/16 v2, 0x2f
invoke-virtual {p1, v1, v2}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
move-result-object v0
const-string v1, ".class"
invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/lang/ClassLoader;->getSystemResourceAsStream(Ljava/lang/String;)Ljava/io/InputStream;
move-result-object v0
const/4 v1, 0x1
invoke-static {v0, v1}, Lorg/objectweb/asm/ClassReader;->a(Ljava/io/InputStream;Z)[B
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/ClassReader;-><init>([B)V
return-void
.end method
.method public constructor <init>([B)V
.registers 4
const/4 v0, 0x0
array-length v1, p1
invoke-direct {p0, p1, v0, v1}, Lorg/objectweb/asm/ClassReader;-><init>([BII)V
return-void
.end method
.method public constructor <init>([BII)V
.registers 10
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v0, p2, 0x6
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readShort(I)S
move-result v0
const/16 v1, 0x34
if-le v0, v1, :cond_15
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-direct {v0}, Ljava/lang/IllegalArgumentException;-><init>()V
throw v0
:cond_15
add-int/lit8 v0, p2, 0x8
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
new-array v0, v0, [I
iput-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
array-length v4, v0
new-array v0, v4, [Ljava/lang/String;
iput-object v0, p0, Lorg/objectweb/asm/ClassReader;->c:[Ljava/lang/String;
const/4 v2, 0x0
add-int/lit8 v0, p2, 0xa
const/4 v1, 0x1
move v3, v0
:goto_2b
if-ge v1, v4, :cond_53
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v5, v3, 0x1
aput v5, v0, v1
aget-byte v0, p1, v3
packed-switch v0, :pswitch_data_58
:pswitch_38
const/4 v0, 0x3
:cond_39
:goto_39
add-int/2addr v0, v3
add-int/lit8 v1, v1, 0x1
move v3, v0
goto :goto_2b
:pswitch_3e
const/4 v0, 0x5
goto :goto_39
:pswitch_40
const/16 v0, 0x9
add-int/lit8 v1, v1, 0x1
goto :goto_39
:pswitch_45
add-int/lit8 v0, v3, 0x1
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
add-int/lit8 v0, v0, 0x3
if-le v0, v2, :cond_39
move v2, v0
goto :goto_39
:pswitch_51
const/4 v0, 0x4
goto :goto_39
:cond_53
iput v2, p0, Lorg/objectweb/asm/ClassReader;->d:I
iput v3, p0, Lorg/objectweb/asm/ClassReader;->header:I
return-void
:pswitch_data_58
.packed-switch 0x1
:pswitch_45
:pswitch_38
:pswitch_3e
:pswitch_3e
:pswitch_40
:pswitch_40
:pswitch_38
:pswitch_38
:pswitch_3e
:pswitch_3e
:pswitch_3e
:pswitch_3e
:pswitch_38
:pswitch_38
:pswitch_51
:pswitch_38
:pswitch_38
:pswitch_3e
.end packed-switch
.end method
.method private a()I
.registers 5
iget v0, p0, Lorg/objectweb/asm/ClassReader;->header:I
add-int/lit8 v0, v0, 0x8
iget v1, p0, Lorg/objectweb/asm/ClassReader;->header:I
add-int/lit8 v1, v1, 0x6
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v1
shl-int/lit8 v1, v1, 0x1
add-int/2addr v1, v0
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
move v2, v0
:goto_14
if-lez v2, :cond_30
add-int/lit8 v0, v1, 0x8
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
:goto_1c
if-lez v0, :cond_2a
add-int/lit8 v3, v1, 0xc
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v3
add-int/lit8 v3, v3, 0x6
add-int/2addr v1, v3
add-int/lit8 v0, v0, -0x1
goto :goto_1c
:cond_2a
add-int/lit8 v1, v1, 0x8
add-int/lit8 v0, v2, -0x1
move v2, v0
goto :goto_14
:cond_30
add-int/lit8 v1, v1, 0x2
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
move v2, v0
:goto_37
if-lez v2, :cond_53
add-int/lit8 v0, v1, 0x8
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
:goto_3f
if-lez v0, :cond_4d
add-int/lit8 v3, v1, 0xc
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v3
add-int/lit8 v3, v3, 0x6
add-int/2addr v1, v3
add-int/lit8 v0, v0, -0x1
goto :goto_3f
:cond_4d
add-int/lit8 v1, v1, 0x8
add-int/lit8 v0, v2, -0x1
move v2, v0
goto :goto_37
:cond_53
add-int/lit8 v0, v1, 0x2
return v0
.end method
.method private a(IZZLorg/objectweb/asm/Context;)I
.registers 15
iget-object v4, p4, Lorg/objectweb/asm/Context;->c:[C
iget-object v5, p4, Lorg/objectweb/asm/Context;->h:[Lorg/objectweb/asm/Label;
if-eqz p2, :cond_29
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v3, p1, 0x1
aget-byte v0, v0, p1
and-int/lit16 v0, v0, 0xff
move v6, v0
:goto_f
const/4 v0, 0x0
iput v0, p4, Lorg/objectweb/asm/Context;->r:I
const/16 v0, 0x40
if-ge v6, v0, :cond_31
const/4 v0, 0x3
iput v0, p4, Lorg/objectweb/asm/Context;->p:I
const/4 v0, 0x0
iput v0, p4, Lorg/objectweb/asm/Context;->t:I
:goto_1c
iget v0, p4, Lorg/objectweb/asm/Context;->o:I
add-int/lit8 v1, v6, 0x1
add-int/2addr v0, v1
iput v0, p4, Lorg/objectweb/asm/Context;->o:I
iget v0, p4, Lorg/objectweb/asm/Context;->o:I
invoke-virtual {p0, v0, v5}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
return v3
:cond_29
const/16 v0, 0xff
const/4 v1, -0x1
iput v1, p4, Lorg/objectweb/asm/Context;->o:I
move v6, v0
move v3, p1
goto :goto_f
:cond_31
const/16 v0, 0x80
if-ge v6, v0, :cond_46
add-int/lit8 v6, v6, -0x40
iget-object v1, p4, Lorg/objectweb/asm/Context;->u:[Ljava/lang/Object;
const/4 v2, 0x0
move-object v0, p0
invoke-direct/range {v0 .. v5}, Lorg/objectweb/asm/ClassReader;->a([Ljava/lang/Object;II[C[Lorg/objectweb/asm/Label;)I
move-result v3
const/4 v0, 0x4
iput v0, p4, Lorg/objectweb/asm/Context;->p:I
const/4 v0, 0x1
iput v0, p4, Lorg/objectweb/asm/Context;->t:I
goto :goto_1c
:cond_46
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v7
add-int/lit8 v3, v3, 0x2
const/16 v0, 0xf7
if-ne v6, v0, :cond_60
iget-object v1, p4, Lorg/objectweb/asm/Context;->u:[Ljava/lang/Object;
const/4 v2, 0x0
move-object v0, p0
invoke-direct/range {v0 .. v5}, Lorg/objectweb/asm/ClassReader;->a([Ljava/lang/Object;II[C[Lorg/objectweb/asm/Label;)I
move-result v3
const/4 v0, 0x4
iput v0, p4, Lorg/objectweb/asm/Context;->p:I
const/4 v0, 0x1
iput v0, p4, Lorg/objectweb/asm/Context;->t:I
move v6, v7
goto :goto_1c
:cond_60
const/16 v0, 0xf8
if-lt v6, v0, :cond_7b
const/16 v0, 0xfb
if-ge v6, v0, :cond_7b
const/4 v0, 0x2
iput v0, p4, Lorg/objectweb/asm/Context;->p:I
rsub-int v0, v6, 0xfb
iput v0, p4, Lorg/objectweb/asm/Context;->r:I
iget v0, p4, Lorg/objectweb/asm/Context;->q:I
iget v1, p4, Lorg/objectweb/asm/Context;->r:I
sub-int/2addr v0, v1
iput v0, p4, Lorg/objectweb/asm/Context;->q:I
const/4 v0, 0x0
iput v0, p4, Lorg/objectweb/asm/Context;->t:I
move v6, v7
goto :goto_1c
:cond_7b
const/16 v0, 0xfb
if-ne v6, v0, :cond_87
const/4 v0, 0x3
iput v0, p4, Lorg/objectweb/asm/Context;->p:I
const/4 v0, 0x0
iput v0, p4, Lorg/objectweb/asm/Context;->t:I
move v6, v7
goto :goto_1c
:cond_87
const/16 v0, 0xff
if-ge v6, v0, :cond_b9
if-eqz p3, :cond_a3
iget v0, p4, Lorg/objectweb/asm/Context;->q:I
:goto_8f
add-int/lit16 v1, v6, -0xfb
move v8, v1
move v2, v0
:goto_93
if-lez v8, :cond_a5
iget-object v1, p4, Lorg/objectweb/asm/Context;->s:[Ljava/lang/Object;
add-int/lit8 v9, v2, 0x1
move-object v0, p0
invoke-direct/range {v0 .. v5}, Lorg/objectweb/asm/ClassReader;->a([Ljava/lang/Object;II[C[Lorg/objectweb/asm/Label;)I
move-result v3
add-int/lit8 v0, v8, -0x1
move v8, v0
move v2, v9
goto :goto_93
:cond_a3
const/4 v0, 0x0
goto :goto_8f
:cond_a5
const/4 v0, 0x1
iput v0, p4, Lorg/objectweb/asm/Context;->p:I
add-int/lit16 v0, v6, -0xfb
iput v0, p4, Lorg/objectweb/asm/Context;->r:I
iget v0, p4, Lorg/objectweb/asm/Context;->q:I
iget v1, p4, Lorg/objectweb/asm/Context;->r:I
add-int/2addr v0, v1
iput v0, p4, Lorg/objectweb/asm/Context;->q:I
const/4 v0, 0x0
iput v0, p4, Lorg/objectweb/asm/Context;->t:I
move v6, v7
goto/16 :goto_1c
:cond_b9
const/4 v0, 0x0
iput v0, p4, Lorg/objectweb/asm/Context;->p:I
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
add-int/lit8 v3, v3, 0x2
iput v0, p4, Lorg/objectweb/asm/Context;->r:I
iput v0, p4, Lorg/objectweb/asm/Context;->q:I
const/4 v2, 0x0
move v8, v0
:goto_c8
if-lez v8, :cond_d8
iget-object v1, p4, Lorg/objectweb/asm/Context;->s:[Ljava/lang/Object;
add-int/lit8 v6, v2, 0x1
move-object v0, p0
invoke-direct/range {v0 .. v5}, Lorg/objectweb/asm/ClassReader;->a([Ljava/lang/Object;II[C[Lorg/objectweb/asm/Label;)I
move-result v3
add-int/lit8 v0, v8, -0x1
move v2, v6
move v8, v0
goto :goto_c8
:cond_d8
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
add-int/lit8 v3, v3, 0x2
iput v0, p4, Lorg/objectweb/asm/Context;->t:I
const/4 v2, 0x0
move v8, v0
:goto_e2
if-lez v8, :cond_f2
iget-object v1, p4, Lorg/objectweb/asm/Context;->u:[Ljava/lang/Object;
add-int/lit8 v6, v2, 0x1
move-object v0, p0
invoke-direct/range {v0 .. v5}, Lorg/objectweb/asm/ClassReader;->a([Ljava/lang/Object;II[C[Lorg/objectweb/asm/Label;)I
move-result v3
add-int/lit8 v0, v8, -0x1
move v2, v6
move v8, v0
goto :goto_e2
:cond_f2
move v6, v7
goto/16 :goto_1c
.end method
.method private a(I[CLjava/lang/String;Lorg/objectweb/asm/AnnotationVisitor;)I
.registers 13
const/4 v3, 0x0
const/4 v1, 0x1
const/4 v2, 0x0
if-nez p4, :cond_22
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
aget-byte v0, v0, p1
and-int/lit16 v0, v0, 0xff
sparse-switch v0, :sswitch_data_208
add-int/lit8 v0, p1, 0x3
:goto_10
return v0
:sswitch_11
add-int/lit8 v0, p1, 0x5
goto :goto_10
:sswitch_14
add-int/lit8 v0, p1, 0x3
invoke-direct {p0, v0, p2, v1, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v0
goto :goto_10
:sswitch_1b
add-int/lit8 v0, p1, 0x1
invoke-direct {p0, v0, p2, v2, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v0
goto :goto_10
:cond_22
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v3, p1, 0x1
aget-byte v0, v0, p1
and-int/lit16 v0, v0, 0xff
sparse-switch v0, :sswitch_data_216
move v0, v3
goto :goto_10
:sswitch_2f
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
invoke-virtual {p0, v0, p2}, Lorg/objectweb/asm/ClassReader;->readConst(I[C)Ljava/lang/Object;
move-result-object v0
invoke-virtual {p4, p3, v0}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v3, 0x2
goto :goto_10
:sswitch_3d
new-instance v0, Ljava/lang/Byte;
iget-object v1, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v2
aget v1, v1, v2
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v1
int-to-byte v1, v1
invoke-direct {v0, v1}, Ljava/lang/Byte;-><init>(B)V
invoke-virtual {p4, p3, v0}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v3, 0x2
goto :goto_10
:sswitch_55
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v1
aget v0, v0, v1
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v0
if-nez v0, :cond_6b
sget-object v0, Ljava/lang/Boolean;->FALSE:Ljava/lang/Boolean;
:goto_65
invoke-virtual {p4, p3, v0}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v3, 0x2
goto :goto_10
:cond_6b
sget-object v0, Ljava/lang/Boolean;->TRUE:Ljava/lang/Boolean;
goto :goto_65
:sswitch_6e
new-instance v0, Ljava/lang/Short;
iget-object v1, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v2
aget v1, v1, v2
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v1
int-to-short v1, v1
invoke-direct {v0, v1}, Ljava/lang/Short;-><init>(S)V
invoke-virtual {p4, p3, v0}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v3, 0x2
goto :goto_10
:sswitch_86
new-instance v0, Ljava/lang/Character;
iget-object v1, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v2
aget v1, v1, v2
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v1
int-to-char v1, v1
invoke-direct {v0, v1}, Ljava/lang/Character;-><init>(C)V
invoke-virtual {p4, p3, v0}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v3, 0x2
goto/16 :goto_10
:sswitch_9f
invoke-virtual {p0, v3, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
invoke-virtual {p4, p3, v0}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v3, 0x2
goto/16 :goto_10
:sswitch_aa
invoke-virtual {p0, v3, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
add-int/lit8 v1, v3, 0x2
invoke-virtual {p0, v1, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v1
invoke-virtual {p4, p3, v0, v1}, Lorg/objectweb/asm/AnnotationVisitor;->visitEnum(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
add-int/lit8 v0, v3, 0x4
goto/16 :goto_10
:sswitch_bb
invoke-virtual {p0, v3, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lorg/objectweb/asm/Type;->getType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
move-result-object v0
invoke-virtual {p4, p3, v0}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v3, 0x2
goto/16 :goto_10
:sswitch_ca
add-int/lit8 v0, v3, 0x2
invoke-virtual {p0, v3, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v2
invoke-virtual {p4, p3, v2}, Lorg/objectweb/asm/AnnotationVisitor;->visitAnnotation(Ljava/lang/String;Ljava/lang/String;)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v2
invoke-direct {p0, v0, p2, v1, v2}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v0
goto/16 :goto_10
:sswitch_da
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v3, v3, 0x2
if-nez v5, :cond_ee
add-int/lit8 v0, v3, -0x2
invoke-virtual {p4, p3}, Lorg/objectweb/asm/AnnotationVisitor;->visitArray(Ljava/lang/String;)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v1
invoke-direct {p0, v0, p2, v2, v1}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v0
goto/16 :goto_10
:cond_ee
iget-object v4, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v0, v3, 0x1
aget-byte v3, v4, v3
and-int/lit16 v3, v3, 0xff
sparse-switch v3, :sswitch_data_24c
add-int/lit8 v0, v0, -0x3
invoke-virtual {p4, p3}, Lorg/objectweb/asm/AnnotationVisitor;->visitArray(Ljava/lang/String;)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v1
invoke-direct {p0, v0, p2, v2, v1}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v0
goto/16 :goto_10
:sswitch_105
new-array v1, v5, [B
:goto_107
if-ge v2, v5, :cond_11d
iget-object v3, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
aget v3, v3, v4
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v3
int-to-byte v3, v3
aput-byte v3, v1, v2
add-int/lit8 v0, v0, 0x3
add-int/lit8 v2, v2, 0x1
goto :goto_107
:cond_11d
invoke-virtual {p4, p3, v1}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v0, -0x1
goto/16 :goto_10
:sswitch_124
new-array v6, v5, [Z
move v3, v2
move v4, v0
:goto_128
if-ge v3, v5, :cond_143
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v7
aget v0, v0, v7
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v0
if-eqz v0, :cond_141
move v0, v1
:goto_139
aput-boolean v0, v6, v3
add-int/lit8 v4, v4, 0x3
add-int/lit8 v0, v3, 0x1
move v3, v0
goto :goto_128
:cond_141
move v0, v2
goto :goto_139
:cond_143
invoke-virtual {p4, p3, v6}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v4, -0x1
goto/16 :goto_10
:sswitch_14a
new-array v1, v5, [S
:goto_14c
if-ge v2, v5, :cond_162
iget-object v3, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
aget v3, v3, v4
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v3
int-to-short v3, v3
aput-short v3, v1, v2
add-int/lit8 v0, v0, 0x3
add-int/lit8 v2, v2, 0x1
goto :goto_14c
:cond_162
invoke-virtual {p4, p3, v1}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v0, -0x1
goto/16 :goto_10
:sswitch_169
new-array v1, v5, [C
:goto_16b
if-ge v2, v5, :cond_181
iget-object v3, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
aget v3, v3, v4
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v3
int-to-char v3, v3
aput-char v3, v1, v2
add-int/lit8 v0, v0, 0x3
add-int/lit8 v2, v2, 0x1
goto :goto_16b
:cond_181
invoke-virtual {p4, p3, v1}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v0, -0x1
goto/16 :goto_10
:sswitch_188
new-array v1, v5, [I
:goto_18a
if-ge v2, v5, :cond_19f
iget-object v3, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
aget v3, v3, v4
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v3
aput v3, v1, v2
add-int/lit8 v0, v0, 0x3
add-int/lit8 v2, v2, 0x1
goto :goto_18a
:cond_19f
invoke-virtual {p4, p3, v1}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v0, -0x1
goto/16 :goto_10
:sswitch_1a6
new-array v1, v5, [J
:goto_1a8
if-ge v2, v5, :cond_1bd
iget-object v3, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
aget v3, v3, v4
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readLong(I)J
move-result-wide v6
aput-wide v6, v1, v2
add-int/lit8 v0, v0, 0x3
add-int/lit8 v2, v2, 0x1
goto :goto_1a8
:cond_1bd
invoke-virtual {p4, p3, v1}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v0, -0x1
goto/16 :goto_10
:sswitch_1c4
new-array v1, v5, [F
:goto_1c6
if-ge v2, v5, :cond_1df
iget-object v3, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
aget v3, v3, v4
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v3
invoke-static {v3}, Ljava/lang/Float;->intBitsToFloat(I)F
move-result v3
aput v3, v1, v2
add-int/lit8 v0, v0, 0x3
add-int/lit8 v2, v2, 0x1
goto :goto_1c6
:cond_1df
invoke-virtual {p4, p3, v1}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v0, -0x1
goto/16 :goto_10
:sswitch_1e6
new-array v1, v5, [D
:goto_1e8
if-ge v2, v5, :cond_201
iget-object v3, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
aget v3, v3, v4
invoke-virtual {p0, v3}, Lorg/objectweb/asm/ClassReader;->readLong(I)J
move-result-wide v6
invoke-static {v6, v7}, Ljava/lang/Double;->longBitsToDouble(J)D
move-result-wide v6
aput-wide v6, v1, v2
add-int/lit8 v0, v0, 0x3
add-int/lit8 v2, v2, 0x1
goto :goto_1e8
:cond_201
invoke-virtual {p4, p3, v1}, Lorg/objectweb/asm/AnnotationVisitor;->visit(Ljava/lang/String;Ljava/lang/Object;)V
add-int/lit8 v0, v0, -0x1
goto/16 :goto_10
:sswitch_data_208
.sparse-switch
0x40 -> :sswitch_14
0x5b -> :sswitch_1b
0x65 -> :sswitch_11
.end sparse-switch
:sswitch_data_216
.sparse-switch
0x40 -> :sswitch_ca
0x42 -> :sswitch_3d
0x43 -> :sswitch_86
0x44 -> :sswitch_2f
0x46 -> :sswitch_2f
0x49 -> :sswitch_2f
0x4a -> :sswitch_2f
0x53 -> :sswitch_6e
0x5a -> :sswitch_55
0x5b -> :sswitch_da
0x63 -> :sswitch_bb
0x65 -> :sswitch_aa
0x73 -> :sswitch_9f
.end sparse-switch
:sswitch_data_24c
.sparse-switch
0x42 -> :sswitch_105
0x43 -> :sswitch_169
0x44 -> :sswitch_1e6
0x46 -> :sswitch_1c4
0x49 -> :sswitch_188
0x4a -> :sswitch_1a6
0x53 -> :sswitch_14a
0x5a -> :sswitch_124
.end sparse-switch
.end method
.method private a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
.registers 9
invoke-virtual {p0, p1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
add-int/lit8 v1, p1, 0x2
if-eqz p3, :cond_2e
move v3, v0
move v0, v1
move v1, v3
:goto_b
if-lez v1, :cond_28
add-int/lit8 v2, v0, 0x2
invoke-virtual {p0, v0, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v2, p2, v0, p4}, Lorg/objectweb/asm/ClassReader;->a(I[CLjava/lang/String;Lorg/objectweb/asm/AnnotationVisitor;)I
move-result v2
add-int/lit8 v0, v1, -0x1
move v1, v0
move v0, v2
goto :goto_b
:goto_1c
if-lez v1, :cond_28
const/4 v2, 0x0
invoke-direct {p0, v0, p2, v2, p4}, Lorg/objectweb/asm/ClassReader;->a(I[CLjava/lang/String;Lorg/objectweb/asm/AnnotationVisitor;)I
move-result v2
add-int/lit8 v0, v1, -0x1
move v1, v0
move v0, v2
goto :goto_1c
:cond_28
if-eqz p4, :cond_2d
invoke-virtual {p4}, Lorg/objectweb/asm/AnnotationVisitor;->visitEnd()V
:cond_2d
return v0
:cond_2e
move v3, v0
move v0, v1
move v1, v3
goto :goto_1c
.end method
.method private a(Lorg/objectweb/asm/ClassVisitor;Lorg/objectweb/asm/Context;I)I
.registers 26
move-object/from16 v0, p2
iget-object v7, v0, Lorg/objectweb/asm/Context;->c:[C
move-object/from16 v0, p0
move/from16 v1, p3
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v19
add-int/lit8 v2, p3, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v2, v7}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v10
add-int/lit8 v2, p3, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v2, v7}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v11
add-int/lit8 v3, p3, 0x6
const/4 v12, 0x0
const/16 v18, 0x0
const/16 v17, 0x0
const/16 v16, 0x0
const/4 v15, 0x0
const/4 v13, 0x0
const/4 v14, 0x0
move-object/from16 v0, p0
invoke-virtual {v0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v2
move/from16 v20, v2
move/from16 v21, v3
:goto_32
if-lez v20, :cond_13e
add-int/lit8 v2, v21, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v2, v7}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
const-string v2, "ConstantValue"
invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_7d
add-int/lit8 v2, v21, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v2}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v2
if-nez v2, :cond_76
const/4 v13, 0x0
:goto_4f
move-object v2, v14
move v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v8, v19
:goto_59
add-int/lit8 v9, v21, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v9}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v9
add-int/lit8 v9, v9, 0x6
add-int v14, v21, v9
add-int/lit8 v9, v20, -0x1
move/from16 v20, v9
move v15, v3
move/from16 v16, v4
move/from16 v17, v5
move/from16 v18, v6
move/from16 v19, v8
move/from16 v21, v14
move-object v14, v2
goto :goto_32
:cond_76
move-object/from16 v0, p0
invoke-virtual {v0, v2, v7}, Lorg/objectweb/asm/ClassReader;->readConst(I[C)Ljava/lang/Object;
move-result-object v13
goto :goto_4f
:cond_7d
const-string v2, "Signature"
invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_98
add-int/lit8 v2, v21, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v2, v7}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v12
move-object v2, v14
move v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v8, v19
goto :goto_59
:cond_98
const-string v2, "Deprecated"
invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_ae
const/high16 v2, 0x20000
or-int v2, v2, v19
move v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move v8, v2
move-object v2, v14
goto :goto_59
:cond_ae
const-string v2, "Synthetic"
invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_c5
const v2, 0x41000
or-int v2, v2, v19
move v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move v8, v2
move-object v2, v14
goto :goto_59
:cond_c5
const-string v2, "RuntimeVisibleAnnotations"
invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_d9
add-int/lit8 v2, v21, 0x8
move v3, v15
move/from16 v4, v16
move/from16 v5, v17
move v6, v2
move/from16 v8, v19
move-object v2, v14
goto :goto_59
:cond_d9
const-string v2, "RuntimeVisibleTypeAnnotations"
invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_ee
add-int/lit8 v2, v21, 0x8
move v3, v15
move v4, v2
move/from16 v5, v17
move/from16 v6, v18
move/from16 v8, v19
move-object v2, v14
goto/16 :goto_59
:cond_ee
const-string v2, "RuntimeInvisibleAnnotations"
invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_103
add-int/lit8 v2, v21, 0x8
move v3, v15
move/from16 v4, v16
move v5, v2
move/from16 v6, v18
move/from16 v8, v19
move-object v2, v14
goto/16 :goto_59
:cond_103
const-string v2, "RuntimeInvisibleTypeAnnotations"
invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_119
add-int/lit8 v2, v21, 0x8
move v3, v2
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v8, v19
move-object v2, v14
goto/16 :goto_59
:cond_119
move-object/from16 v0, p2
iget-object v3, v0, Lorg/objectweb/asm/Context;->a:[Lorg/objectweb/asm/Attribute;
add-int/lit8 v5, v21, 0x8
add-int/lit8 v2, v21, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v2}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v6
const/4 v8, -0x1
const/4 v9, 0x0
move-object/from16 v2, p0
invoke-direct/range {v2 .. v9}, Lorg/objectweb/asm/ClassReader;->a([Lorg/objectweb/asm/Attribute;Ljava/lang/String;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
move-result-object v2
if-eqz v2, :cond_20e
iput-object v14, v2, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
move v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v8, v19
goto/16 :goto_59
:cond_13e
add-int/lit8 v2, v21, 0x2
move-object/from16 v8, p1
move/from16 v9, v19
invoke-virtual/range {v8 .. v13}, Lorg/objectweb/asm/ClassVisitor;->visitField(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Lorg/objectweb/asm/FieldVisitor;
move-result-object v5
if-nez v5, :cond_14b
:goto_14a
return v2
:cond_14b
if-eqz v18, :cond_170
move-object/from16 v0, p0
move/from16 v1, v18
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
add-int/lit8 v3, v18, 0x2
:goto_157
if-lez v4, :cond_170
add-int/lit8 v6, v3, 0x2
const/4 v8, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v3, v7}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
const/4 v9, 0x1
invoke-virtual {v5, v3, v9}, Lorg/objectweb/asm/FieldVisitor;->visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
move-object/from16 v0, p0
invoke-direct {v0, v6, v7, v8, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v3
add-int/lit8 v4, v4, -0x1
goto :goto_157
:cond_170
if-eqz v17, :cond_195
move-object/from16 v0, p0
move/from16 v1, v17
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
add-int/lit8 v3, v17, 0x2
:goto_17c
if-lez v4, :cond_195
add-int/lit8 v6, v3, 0x2
const/4 v8, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v3, v7}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
const/4 v9, 0x0
invoke-virtual {v5, v3, v9}, Lorg/objectweb/asm/FieldVisitor;->visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
move-object/from16 v0, p0
invoke-direct {v0, v6, v7, v8, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v3
add-int/lit8 v4, v4, -0x1
goto :goto_17c
:cond_195
if-eqz v16, :cond_1ca
move-object/from16 v0, p0
move/from16 v1, v16
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
add-int/lit8 v3, v16, 0x2
:goto_1a1
if-lez v4, :cond_1ca
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1, v3}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v3
add-int/lit8 v6, v3, 0x2
const/4 v8, 0x1
move-object/from16 v0, p2
iget v9, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, p2
iget-object v10, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p0
invoke-virtual {v0, v3, v7}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
const/4 v11, 0x1
invoke-virtual {v5, v9, v10, v3, v11}, Lorg/objectweb/asm/FieldVisitor;->visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
move-object/from16 v0, p0
invoke-direct {v0, v6, v7, v8, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v3
add-int/lit8 v4, v4, -0x1
goto :goto_1a1
:cond_1ca
if-eqz v15, :cond_1fd
move-object/from16 v0, p0
invoke-virtual {v0, v15}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
add-int/lit8 v3, v15, 0x2
:goto_1d4
if-lez v4, :cond_1fd
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1, v3}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v3
add-int/lit8 v6, v3, 0x2
const/4 v8, 0x1
move-object/from16 v0, p2
iget v9, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, p2
iget-object v10, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p0
invoke-virtual {v0, v3, v7}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
const/4 v11, 0x0
invoke-virtual {v5, v9, v10, v3, v11}, Lorg/objectweb/asm/FieldVisitor;->visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
move-object/from16 v0, p0
invoke-direct {v0, v6, v7, v8, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v3
add-int/lit8 v4, v4, -0x1
goto :goto_1d4
:cond_1fd
:goto_1fd
if-eqz v14, :cond_209
iget-object v3, v14, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
const/4 v4, 0x0
iput-object v4, v14, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
invoke-virtual {v5, v14}, Lorg/objectweb/asm/FieldVisitor;->visitAttribute(Lorg/objectweb/asm/Attribute;)V
move-object v14, v3
goto :goto_1fd
:cond_209
invoke-virtual {v5}, Lorg/objectweb/asm/FieldVisitor;->visitEnd()V
goto/16 :goto_14a
:cond_20e
move-object v2, v14
move v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v8, v19
goto/16 :goto_59
.end method
.method private a(Lorg/objectweb/asm/Context;I)I
.registers 12
const/high16 v0, -0x1000000
invoke-virtual {p0, p2}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v1
ushr-int/lit8 v2, v1, 0x18
sparse-switch v2, :sswitch_data_8c
ushr-int/lit8 v2, v1, 0x18
const/16 v3, 0x43
if-ge v2, v3, :cond_13
const/16 v0, -0x100
:cond_13
and-int/2addr v0, v1
add-int/lit8 v1, p2, 0x3
:cond_16
:goto_16
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v2
iput v0, p1, Lorg/objectweb/asm/Context;->i:I
if-nez v2, :cond_83
const/4 v0, 0x0
:goto_1f
iput-object v0, p1, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
add-int/lit8 v0, v1, 0x1
mul-int/lit8 v1, v2, 0x2
add-int/2addr v0, v1
return v0
:sswitch_27
const/high16 v0, -0x10000
and-int/2addr v0, v1
add-int/lit8 v1, p2, 0x2
goto :goto_16
:sswitch_2d
and-int/2addr v0, v1
add-int/lit8 v1, p2, 0x1
goto :goto_16
:sswitch_31
and-int/2addr v0, v1
add-int/lit8 v1, p2, 0x1
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
new-array v1, v4, [Lorg/objectweb/asm/Label;
iput-object v1, p1, Lorg/objectweb/asm/Context;->l:[Lorg/objectweb/asm/Label;
new-array v1, v4, [Lorg/objectweb/asm/Label;
iput-object v1, p1, Lorg/objectweb/asm/Context;->m:[Lorg/objectweb/asm/Label;
new-array v1, v4, [I
iput-object v1, p1, Lorg/objectweb/asm/Context;->n:[I
add-int/lit8 v2, p2, 0x3
const/4 v1, 0x0
move v8, v1
move v1, v2
move v2, v8
:goto_4a
if-ge v2, v4, :cond_16
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v3
add-int/lit8 v5, v1, 0x2
invoke-virtual {p0, v5}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
iget-object v6, p1, Lorg/objectweb/asm/Context;->l:[Lorg/objectweb/asm/Label;
iget-object v7, p1, Lorg/objectweb/asm/Context;->h:[Lorg/objectweb/asm/Label;
invoke-virtual {p0, v3, v7}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v7
aput-object v7, v6, v2
iget-object v6, p1, Lorg/objectweb/asm/Context;->m:[Lorg/objectweb/asm/Label;
add-int/2addr v3, v5
iget-object v5, p1, Lorg/objectweb/asm/Context;->h:[Lorg/objectweb/asm/Label;
invoke-virtual {p0, v3, v5}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v3
aput-object v3, v6, v2
iget-object v3, p1, Lorg/objectweb/asm/Context;->n:[I
add-int/lit8 v5, v1, 0x4
invoke-virtual {p0, v5}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
aput v5, v3, v2
add-int/lit8 v3, v1, 0x6
add-int/lit8 v1, v2, 0x1
move v2, v1
move v1, v3
goto :goto_4a
:sswitch_7c
const v0, -0xffff01
and-int/2addr v0, v1
add-int/lit8 v1, p2, 0x4
goto :goto_16
:cond_83
new-instance v0, Lorg/objectweb/asm/TypePath;
iget-object v3, p0, Lorg/objectweb/asm/ClassReader;->b:[B
invoke-direct {v0, v3, v1}, Lorg/objectweb/asm/TypePath;-><init>([BI)V
goto :goto_1f
nop
:sswitch_data_8c
.sparse-switch
0x0 -> :sswitch_27
0x1 -> :sswitch_27
0x13 -> :sswitch_2d
0x14 -> :sswitch_2d
0x15 -> :sswitch_2d
0x16 -> :sswitch_27
0x40 -> :sswitch_31
0x41 -> :sswitch_31
0x47 -> :sswitch_7c
0x48 -> :sswitch_7c
0x49 -> :sswitch_7c
0x4a -> :sswitch_7c
0x4b -> :sswitch_7c
.end sparse-switch
.end method
.method private a([Ljava/lang/Object;II[C[Lorg/objectweb/asm/Label;)I
.registers 8
iget-object v1, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v0, p3, 0x1
aget-byte v1, v1, p3
and-int/lit16 v1, v1, 0xff
packed-switch v1, :pswitch_data_44
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v1
invoke-virtual {p0, v1, p5}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v1
aput-object v1, p1, p2
add-int/lit8 v0, v0, 0x2
:goto_17
return v0
:pswitch_18
sget-object v1, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
aput-object v1, p1, p2
goto :goto_17
:pswitch_1d
sget-object v1, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
aput-object v1, p1, p2
goto :goto_17
:pswitch_22
sget-object v1, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
aput-object v1, p1, p2
goto :goto_17
:pswitch_27
sget-object v1, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
aput-object v1, p1, p2
goto :goto_17
:pswitch_2c
sget-object v1, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
aput-object v1, p1, p2
goto :goto_17
:pswitch_31
sget-object v1, Lorg/objectweb/asm/Opcodes;->NULL:Ljava/lang/Integer;
aput-object v1, p1, p2
goto :goto_17
:pswitch_36
sget-object v1, Lorg/objectweb/asm/Opcodes;->UNINITIALIZED_THIS:Ljava/lang/Integer;
aput-object v1, p1, p2
goto :goto_17
:pswitch_3b
invoke-virtual {p0, v0, p4}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v1
aput-object v1, p1, p2
add-int/lit8 v0, v0, 0x2
goto :goto_17
:pswitch_data_44
.packed-switch 0x0
:pswitch_18
:pswitch_1d
:pswitch_22
:pswitch_27
:pswitch_2c
:pswitch_31
:pswitch_36
:pswitch_3b
.end packed-switch
.end method
.method private a(II[C)Ljava/lang/String;
.registers 14
const/4 v2, 0x1
const/4 v3, 0x0
add-int v7, p1, p2
iget-object v8, p0, Lorg/objectweb/asm/ClassReader;->b:[B
move v0, v3
move v1, v3
move v4, v3
:goto_9
if-ge p1, v7, :cond_4c
add-int/lit8 v6, p1, 0x1
aget-byte v5, v8, p1
packed-switch v1, :pswitch_data_52
:goto_12
move p1, v6
goto :goto_9
:pswitch_14
and-int/lit16 v9, v5, 0xff
const/16 v5, 0x80
if-ge v9, v5, :cond_22
add-int/lit8 v5, v4, 0x1
int-to-char v9, v9
aput-char v9, p3, v4
move v4, v5
move p1, v6
goto :goto_9
:cond_22
const/16 v0, 0xe0
if-ge v9, v0, :cond_30
const/16 v0, 0xbf
if-le v9, v0, :cond_30
and-int/lit8 v0, v9, 0x1f
int-to-char v0, v0
move v1, v2
move p1, v6
goto :goto_9
:cond_30
and-int/lit8 v0, v9, 0xf
int-to-char v0, v0
const/4 v1, 0x2
move p1, v6
goto :goto_9
:pswitch_36
add-int/lit8 v1, v4, 0x1
shl-int/lit8 v9, v0, 0x6
and-int/lit8 v5, v5, 0x3f
or-int/2addr v5, v9
int-to-char v5, v5
aput-char v5, p3, v4
move v4, v1
move p1, v6
move v1, v3
goto :goto_9
:pswitch_44
shl-int/lit8 v0, v0, 0x6
and-int/lit8 v1, v5, 0x3f
or-int/2addr v0, v1
int-to-char v0, v0
move v1, v2
goto :goto_12
:cond_4c
new-instance v0, Ljava/lang/String;
invoke-direct {v0, p3, v3, v4}, Ljava/lang/String;-><init>([CII)V
return-object v0
:pswitch_data_52
.packed-switch 0x0
:pswitch_14
:pswitch_36
:pswitch_44
.end packed-switch
.end method
.method private a([Lorg/objectweb/asm/Attribute;Ljava/lang/String;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
.registers 15
const/4 v4, 0x0
const/4 v0, 0x0
:goto_2
array-length v1, p1
if-ge v0, v1, :cond_1f
aget-object v1, p1, v0
iget-object v1, v1, Lorg/objectweb/asm/Attribute;->type:Ljava/lang/String;
invoke-virtual {v1, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_1c
aget-object v0, p1, v0
move-object v1, p0
move v2, p3
move v3, p4
move-object v4, p5
move v5, p6
move-object v6, p7
invoke-virtual/range {v0 .. v6}, Lorg/objectweb/asm/Attribute;->read(Lorg/objectweb/asm/ClassReader;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
move-result-object v0
:goto_1b
return-object v0
:cond_1c
add-int/lit8 v0, v0, 0x1
goto :goto_2
:cond_1f
new-instance v0, Lorg/objectweb/asm/Attribute;
invoke-direct {v0, p2}, Lorg/objectweb/asm/Attribute;-><init>(Ljava/lang/String;)V
const/4 v5, -0x1
move-object v1, p0
move v2, p3
move v3, p4
move-object v6, v4
invoke-virtual/range {v0 .. v6}, Lorg/objectweb/asm/Attribute;->read(Lorg/objectweb/asm/ClassReader;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
move-result-object v0
goto :goto_1b
.end method
.method private a(Lorg/objectweb/asm/ClassWriter;[Lorg/objectweb/asm/Item;[C)V
.registers 12
const/4 v0, 0x0
invoke-direct {p0}, Lorg/objectweb/asm/ClassReader;->a()I
move-result v2
invoke-virtual {p0, v2}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v1
move v4, v2
:goto_a
if-lez v1, :cond_99
add-int/lit8 v2, v4, 0x2
invoke-virtual {p0, v2, p3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v2
const-string v3, "BootstrapMethods"
invoke-virtual {v3, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_1e
const/4 v1, 0x1
:goto_1b
if-nez v1, :cond_2b
:goto_1d
return-void
:cond_1e
add-int/lit8 v2, v4, 0x4
invoke-virtual {p0, v2}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v2
add-int/lit8 v2, v2, 0x6
add-int/2addr v2, v4
add-int/lit8 v1, v1, -0x1
move v4, v2
goto :goto_a
:cond_2b
add-int/lit8 v1, v4, 0x8
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v2, v4, 0xa
move v3, v0
:goto_34
if-ge v3, v5, :cond_7e
sub-int v0, v2, v4
add-int/lit8 v6, v0, -0xa
invoke-virtual {p0, v2}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
invoke-virtual {p0, v0, p3}, Lorg/objectweb/asm/ClassReader;->readConst(I[C)Ljava/lang/Object;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v1
add-int/lit8 v0, v2, 0x2
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
:goto_4c
if-lez v0, :cond_62
add-int/lit8 v7, v2, 0x4
invoke-virtual {p0, v7}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v7
invoke-virtual {p0, v7, p3}, Lorg/objectweb/asm/ClassReader;->readConst(I[C)Ljava/lang/Object;
move-result-object v7
invoke-virtual {v7}, Ljava/lang/Object;->hashCode()I
move-result v7
xor-int/2addr v1, v7
add-int/lit8 v2, v2, 0x2
add-int/lit8 v0, v0, -0x1
goto :goto_4c
:cond_62
add-int/lit8 v2, v2, 0x4
new-instance v0, Lorg/objectweb/asm/Item;
invoke-direct {v0, v3}, Lorg/objectweb/asm/Item;-><init>(I)V
const v7, 0x7fffffff
and-int/2addr v1, v7
invoke-virtual {v0, v6, v1}, Lorg/objectweb/asm/Item;->a(II)V
iget v1, v0, Lorg/objectweb/asm/Item;->j:I
array-length v6, p2
rem-int/2addr v1, v6
aget-object v6, p2, v1
iput-object v6, v0, Lorg/objectweb/asm/Item;->k:Lorg/objectweb/asm/Item;
aput-object v0, p2, v1
add-int/lit8 v0, v3, 0x1
move v3, v0
goto :goto_34
:cond_7e
add-int/lit8 v0, v4, 0x4
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v0
new-instance v1, Lorg/objectweb/asm/ByteVector;
add-int/lit8 v2, v0, 0x3e
invoke-direct {v1, v2}, Lorg/objectweb/asm/ByteVector;-><init>(I)V
iget-object v2, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v3, v4, 0xa
add-int/lit8 v0, v0, -0x2
invoke-virtual {v1, v2, v3, v0}, Lorg/objectweb/asm/ByteVector;->putByteArray([BII)Lorg/objectweb/asm/ByteVector;
iput v5, p1, Lorg/objectweb/asm/ClassWriter;->z:I
iput-object v1, p1, Lorg/objectweb/asm/ClassWriter;->A:Lorg/objectweb/asm/ByteVector;
goto :goto_1d
:cond_99
move v1, v0
goto :goto_1b
.end method
.method private a(Lorg/objectweb/asm/Context;)V
.registers 10
const/16 v7, 0x3b
const/4 v1, 0x1
const/4 v0, 0x0
iget-object v4, p1, Lorg/objectweb/asm/Context;->g:Ljava/lang/String;
iget-object v5, p1, Lorg/objectweb/asm/Context;->s:[Ljava/lang/Object;
iget v2, p1, Lorg/objectweb/asm/Context;->e:I
and-int/lit8 v2, v2, 0x8
if-nez v2, :cond_1d
const-string v2, "<init>"
iget-object v3, p1, Lorg/objectweb/asm/Context;->f:Ljava/lang/String;
invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_2a
sget-object v2, Lorg/objectweb/asm/Opcodes;->UNINITIALIZED_THIS:Ljava/lang/Integer;
aput-object v2, v5, v0
move v0, v1
:cond_1d
:goto_1d
move v2, v0
:goto_1e
add-int/lit8 v0, v1, 0x1
invoke-virtual {v4, v1}, Ljava/lang/String;->charAt(I)C
move-result v3
sparse-switch v3, :sswitch_data_a2
iput v2, p1, Lorg/objectweb/asm/Context;->q:I
return-void
:cond_2a
iget v2, p0, Lorg/objectweb/asm/ClassReader;->header:I
add-int/lit8 v2, v2, 0x2
iget-object v3, p1, Lorg/objectweb/asm/Context;->c:[C
invoke-virtual {p0, v2, v3}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v2
aput-object v2, v5, v0
move v0, v1
goto :goto_1d
:sswitch_38
add-int/lit8 v1, v2, 0x1
sget-object v3, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
aput-object v3, v5, v2
move v2, v1
move v1, v0
goto :goto_1e
:sswitch_41
add-int/lit8 v1, v2, 0x1
sget-object v3, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
aput-object v3, v5, v2
move v2, v1
move v1, v0
goto :goto_1e
:sswitch_4a
add-int/lit8 v1, v2, 0x1
sget-object v3, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
aput-object v3, v5, v2
move v2, v1
move v1, v0
goto :goto_1e
:sswitch_53
add-int/lit8 v1, v2, 0x1
sget-object v3, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
aput-object v3, v5, v2
move v2, v1
move v1, v0
goto :goto_1e
:goto_5c
:sswitch_5c
invoke-virtual {v4, v0}, Ljava/lang/String;->charAt(I)C
move-result v3
const/16 v6, 0x5b
if-ne v3, v6, :cond_67
add-int/lit8 v0, v0, 0x1
goto :goto_5c
:cond_67
invoke-virtual {v4, v0}, Ljava/lang/String;->charAt(I)C
move-result v3
const/16 v6, 0x4c
if-ne v3, v6, :cond_7a
add-int/lit8 v0, v0, 0x1
:goto_71
invoke-virtual {v4, v0}, Ljava/lang/String;->charAt(I)C
move-result v3
if-eq v3, v7, :cond_7a
add-int/lit8 v0, v0, 0x1
goto :goto_71
:cond_7a
add-int/lit8 v3, v2, 0x1
add-int/lit8 v0, v0, 0x1
invoke-virtual {v4, v1, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v1
aput-object v1, v5, v2
move v1, v0
move v2, v3
goto :goto_1e
:goto_87
invoke-virtual {v4, v3}, Ljava/lang/String;->charAt(I)C
move-result v0
if-eq v0, v7, :cond_91
add-int/lit8 v0, v3, 0x1
move v3, v0
goto :goto_87
:cond_91
add-int/lit8 v0, v2, 0x1
add-int/lit8 v6, v1, 0x1
add-int/lit8 v1, v3, 0x1
invoke-virtual {v4, v6, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v3
aput-object v3, v5, v2
move v2, v0
goto :goto_1e
:sswitch_9f
move v3, v0
goto :goto_87
nop
:sswitch_data_a2
.sparse-switch
0x42 -> :sswitch_38
0x43 -> :sswitch_38
0x44 -> :sswitch_53
0x46 -> :sswitch_41
0x49 -> :sswitch_38
0x4a -> :sswitch_4a
0x4c -> :sswitch_9f
0x53 -> :sswitch_38
0x5a -> :sswitch_38
0x5b -> :sswitch_5c
.end sparse-switch
.end method
.method private a(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;I)V
.registers 41
move-object/from16 v0, p0
iget-object v0, v0, Lorg/objectweb/asm/ClassReader;->b:[B
move-object/from16 v30, v0
move-object/from16 v0, p2
iget-object v8, v0, Lorg/objectweb/asm/Context;->c:[C
move-object/from16 v0, p0
move/from16 v1, p3
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v31
add-int/lit8 v4, p3, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v32
add-int/lit8 v4, p3, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v33
add-int/lit8 v29, p3, 0x8
add-int v34, v29, v33
add-int/lit8 v4, v33, 0x2
new-array v10, v4, [Lorg/objectweb/asm/Label;
move-object/from16 v0, p2
iput-object v10, v0, Lorg/objectweb/asm/Context;->h:[Lorg/objectweb/asm/Label;
add-int/lit8 v4, v33, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move/from16 v5, v29
:goto_37
move/from16 v0, v34
if-ge v5, v0, :cond_fd
sub-int v6, v5, v29
aget-byte v4, v30, v5
and-int/lit16 v4, v4, 0xff
sget-object v7, Lorg/objectweb/asm/ClassWriter;->a:[B
aget-byte v4, v7, v4
packed-switch v4, :pswitch_data_9e0
:pswitch_48
add-int/lit8 v5, v5, 0x4
goto :goto_37
:pswitch_4b
add-int/lit8 v5, v5, 0x1
goto :goto_37
:pswitch_4e
add-int/lit8 v4, v5, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readShort(I)S
move-result v4
add-int/2addr v4, v6
move-object/from16 v0, p0
invoke-virtual {v0, v4, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
add-int/lit8 v5, v5, 0x3
goto :goto_37
:pswitch_5f
add-int/lit8 v4, v5, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v4
add-int/2addr v4, v6
move-object/from16 v0, p0
invoke-virtual {v0, v4, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
add-int/lit8 v5, v5, 0x5
goto :goto_37
:pswitch_70
add-int/lit8 v4, v5, 0x1
aget-byte v4, v30, v4
and-int/lit16 v4, v4, 0xff
const/16 v6, 0x84
if-ne v4, v6, :cond_7d
add-int/lit8 v5, v5, 0x6
goto :goto_37
:cond_7d
add-int/lit8 v5, v5, 0x4
goto :goto_37
:pswitch_80
add-int/lit8 v4, v5, 0x4
and-int/lit8 v5, v6, 0x3
sub-int v5, v4, v5
move-object/from16 v0, p0
invoke-virtual {v0, v5}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v4
add-int/2addr v4, v6
move-object/from16 v0, p0
invoke-virtual {v0, v4, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
add-int/lit8 v4, v5, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v4
add-int/lit8 v7, v5, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v7}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v7
sub-int/2addr v4, v7
add-int/lit8 v4, v4, 0x1
:goto_a5
if-lez v4, :cond_ba
add-int/lit8 v7, v5, 0xc
move-object/from16 v0, p0
invoke-virtual {v0, v7}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v7
add-int/2addr v7, v6
move-object/from16 v0, p0
invoke-virtual {v0, v7, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
add-int/lit8 v5, v5, 0x4
add-int/lit8 v4, v4, -0x1
goto :goto_a5
:cond_ba
add-int/lit8 v5, v5, 0xc
goto/16 :goto_37
:pswitch_be
add-int/lit8 v4, v5, 0x4
and-int/lit8 v5, v6, 0x3
sub-int v5, v4, v5
move-object/from16 v0, p0
invoke-virtual {v0, v5}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v4
add-int/2addr v4, v6
move-object/from16 v0, p0
invoke-virtual {v0, v4, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
add-int/lit8 v4, v5, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v4
:goto_d8
if-lez v4, :cond_ed
add-int/lit8 v7, v5, 0xc
move-object/from16 v0, p0
invoke-virtual {v0, v7}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v7
add-int/2addr v7, v6
move-object/from16 v0, p0
invoke-virtual {v0, v7, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
add-int/lit8 v5, v5, 0x8
add-int/lit8 v4, v4, -0x1
goto :goto_d8
:cond_ed
add-int/lit8 v5, v5, 0x8
goto/16 :goto_37
:pswitch_f1
add-int/lit8 v5, v5, 0x2
goto/16 :goto_37
:pswitch_f5
add-int/lit8 v5, v5, 0x3
goto/16 :goto_37
:pswitch_f9
add-int/lit8 v5, v5, 0x5
goto/16 :goto_37
:cond_fd
move-object/from16 v0, p0
invoke-virtual {v0, v5}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
:goto_103
if-lez v4, :cond_14d
add-int/lit8 v6, v5, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
move-object/from16 v0, p0
invoke-virtual {v0, v6, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v6
add-int/lit8 v7, v5, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v7}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v7
move-object/from16 v0, p0
invoke-virtual {v0, v7, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v7
add-int/lit8 v9, v5, 0x6
move-object/from16 v0, p0
invoke-virtual {v0, v9}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v9
move-object/from16 v0, p0
invoke-virtual {v0, v9, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v9
move-object/from16 v0, p0
iget-object v11, v0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v12, v5, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v12}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v12
aget v11, v11, v12
move-object/from16 v0, p0
invoke-virtual {v0, v11, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v11
move-object/from16 v0, p1
invoke-virtual {v0, v6, v7, v9, v11}, Lorg/objectweb/asm/MethodVisitor;->visitTryCatchBlock(Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;Ljava/lang/String;)V
add-int/lit8 v5, v5, 0x8
add-int/lit8 v4, v4, -0x1
goto :goto_103
:cond_14d
add-int/lit8 v27, v5, 0x2
const/16 v22, 0x0
const/16 v21, 0x0
const/16 v26, 0x0
const/16 v25, 0x0
const/16 v16, -0x1
const/4 v15, -0x1
const/16 v20, 0x0
const/16 v19, 0x0
const/16 v18, 0x1
move-object/from16 v0, p2
iget v4, v0, Lorg/objectweb/asm/Context;->b:I
and-int/lit8 v4, v4, 0x8
if-eqz v4, :cond_1e0
const/4 v4, 0x1
move/from16 v17, v4
:goto_16b
const/4 v14, 0x0
const/4 v13, 0x0
const/4 v12, 0x0
const/16 v24, 0x0
const/4 v5, 0x0
move-object/from16 v0, p0
move/from16 v1, v27
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
move/from16 v28, v4
:goto_17b
if-lez v28, :cond_3ce
add-int/lit8 v4, v27, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v35
const-string v4, "LocalVariableTable"
move-object/from16 v0, v35
invoke-virtual {v4, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_21c
move-object/from16 v0, p2
iget v4, v0, Lorg/objectweb/asm/Context;->b:I
and-int/lit8 v4, v4, 0x2
if-nez v4, :cond_9cc
add-int/lit8 v4, v27, 0x8
add-int/lit8 v6, v27, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
move v7, v6
move/from16 v6, v27
:goto_1a4
if-lez v7, :cond_1e4
add-int/lit8 v9, v6, 0xa
move-object/from16 v0, p0
invoke-virtual {v0, v9}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v9
aget-object v11, v10, v9
if-nez v11, :cond_1c2
move-object/from16 v0, p0
invoke-virtual {v0, v9, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v11
iget v0, v11, Lorg/objectweb/asm/Label;->a:I
move/from16 v20, v0
or-int/lit8 v20, v20, 0x1
move/from16 v0, v20
iput v0, v11, Lorg/objectweb/asm/Label;->a:I
:cond_1c2
add-int/lit8 v11, v6, 0xc
move-object/from16 v0, p0
invoke-virtual {v0, v11}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v11
add-int/2addr v9, v11
aget-object v11, v10, v9
if-nez v11, :cond_1db
move-object/from16 v0, p0
invoke-virtual {v0, v9, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v9
iget v11, v9, Lorg/objectweb/asm/Label;->a:I
or-int/lit8 v11, v11, 0x1
iput v11, v9, Lorg/objectweb/asm/Label;->a:I
:cond_1db
add-int/lit8 v6, v6, 0xa
add-int/lit8 v7, v7, -0x1
goto :goto_1a4
:cond_1e0
const/4 v4, 0x0
move/from16 v17, v4
goto :goto_16b
:cond_1e4
move v6, v13
move v7, v14
move/from16 v9, v18
move/from16 v11, v19
move v13, v15
move/from16 v14, v16
move-object/from16 v15, v21
move-object/from16 v16, v22
move/from16 v36, v12
move v12, v4
move-object v4, v5
move/from16 v5, v36
:goto_1f7
add-int/lit8 v18, v27, 0x4
move-object/from16 v0, p0
move/from16 v1, v18
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v18
add-int/lit8 v18, v18, 0x6
add-int v27, v27, v18
add-int/lit8 v18, v28, -0x1
move/from16 v28, v18
move/from16 v19, v11
move/from16 v20, v12
move-object/from16 v21, v15
move-object/from16 v22, v16
move/from16 v18, v9
move v12, v5
move v15, v13
move/from16 v16, v14
move-object v5, v4
move v13, v6
move v14, v7
goto/16 :goto_17b
:cond_21c
const-string v4, "LocalVariableTypeTable"
move-object/from16 v0, v35
invoke-virtual {v4, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_239
add-int/lit8 v4, v27, 0x8
move v6, v13
move v7, v14
move/from16 v9, v18
move v11, v4
move-object v4, v5
move v13, v15
move/from16 v14, v16
move v5, v12
move-object/from16 v15, v21
move-object/from16 v16, v22
move/from16 v12, v20
goto :goto_1f7
:cond_239
const-string v4, "LineNumberTable"
move-object/from16 v0, v35
invoke-virtual {v4, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_294
move-object/from16 v0, p2
iget v4, v0, Lorg/objectweb/asm/Context;->b:I
and-int/lit8 v4, v4, 0x2
if-nez v4, :cond_9cc
add-int/lit8 v4, v27, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
move v6, v4
move/from16 v4, v27
:goto_256
if-lez v6, :cond_281
add-int/lit8 v7, v4, 0xa
move-object/from16 v0, p0
invoke-virtual {v0, v7}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v7
aget-object v9, v10, v7
if-nez v9, :cond_270
move-object/from16 v0, p0
invoke-virtual {v0, v7, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
move-result-object v9
iget v11, v9, Lorg/objectweb/asm/Label;->a:I
or-int/lit8 v11, v11, 0x1
iput v11, v9, Lorg/objectweb/asm/Label;->a:I
:cond_270
aget-object v7, v10, v7
add-int/lit8 v9, v4, 0xc
move-object/from16 v0, p0
invoke-virtual {v0, v9}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v9
iput v9, v7, Lorg/objectweb/asm/Label;->b:I
add-int/lit8 v4, v4, 0x4
add-int/lit8 v6, v6, -0x1
goto :goto_256
:cond_281
move-object v4, v5
move v6, v13
move v7, v14
move/from16 v9, v18
move/from16 v11, v19
move v5, v12
move v13, v15
move/from16 v14, v16
move/from16 v12, v20
move-object/from16 v15, v21
move-object/from16 v16, v22
goto/16 :goto_1f7
:cond_294
const-string v4, "RuntimeVisibleTypeAnnotations"
move-object/from16 v0, v35
invoke-virtual {v4, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_2da
add-int/lit8 v4, v27, 0x8
const/4 v6, 0x1
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p2
invoke-direct {v0, v1, v2, v4, v6}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;IZ)[I
move-result-object v6
array-length v4, v6
if-eqz v4, :cond_2bb
const/4 v4, 0x0
aget v4, v6, v4
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v4
const/16 v7, 0x43
if-ge v4, v7, :cond_2ce
:cond_2bb
const/4 v4, -0x1
:goto_2bc
move v7, v14
move/from16 v9, v18
move/from16 v11, v19
move-object/from16 v16, v6
move v6, v13
move v14, v4
move v13, v15
move-object v4, v5
move v5, v12
move-object/from16 v15, v21
move/from16 v12, v20
goto/16 :goto_1f7
:cond_2ce
const/4 v4, 0x0
aget v4, v6, v4
add-int/lit8 v4, v4, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
goto :goto_2bc
:cond_2da
const-string v4, "RuntimeInvisibleTypeAnnotations"
move-object/from16 v0, v35
invoke-virtual {v4, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_320
add-int/lit8 v4, v27, 0x8
const/4 v6, 0x0
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, p2
invoke-direct {v0, v1, v2, v4, v6}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;IZ)[I
move-result-object v6
array-length v4, v6
if-eqz v4, :cond_301
const/4 v4, 0x0
aget v4, v6, v4
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v4
const/16 v7, 0x43
if-ge v4, v7, :cond_314
:cond_301
const/4 v4, -0x1
:goto_302
move v7, v14
move/from16 v9, v18
move/from16 v11, v19
move-object v15, v6
move v6, v13
move/from16 v14, v16
move v13, v4
move-object/from16 v16, v22
move-object v4, v5
move v5, v12
move/from16 v12, v20
goto/16 :goto_1f7
:cond_314
const/4 v4, 0x0
aget v4, v6, v4
add-int/lit8 v4, v4, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
goto :goto_302
:cond_320
const-string v4, "StackMapTable"
move-object/from16 v0, v35
invoke-virtual {v4, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_358
move-object/from16 v0, p2
iget v4, v0, Lorg/objectweb/asm/Context;->b:I
and-int/lit8 v4, v4, 0x4
if-nez v4, :cond_9cc
add-int/lit8 v7, v27, 0xa
add-int/lit8 v4, v27, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v6
add-int/lit8 v4, v27, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
move/from16 v9, v18
move/from16 v11, v19
move/from16 v12, v20
move v13, v15
move/from16 v14, v16
move-object/from16 v15, v21
move-object/from16 v16, v22
move/from16 v36, v4
move-object v4, v5
move/from16 v5, v36
goto/16 :goto_1f7
:cond_358
const-string v4, "StackMap"
move-object/from16 v0, v35
invoke-virtual {v4, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_38f
move-object/from16 v0, p2
iget v4, v0, Lorg/objectweb/asm/Context;->b:I
and-int/lit8 v4, v4, 0x4
if-nez v4, :cond_9cc
const/4 v9, 0x0
add-int/lit8 v7, v27, 0xa
add-int/lit8 v4, v27, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v6
add-int/lit8 v4, v27, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
move/from16 v11, v19
move/from16 v12, v20
move v13, v15
move/from16 v14, v16
move-object/from16 v15, v21
move-object/from16 v16, v22
move-object/from16 v36, v5
move v5, v4
move-object/from16 v4, v36
goto/16 :goto_1f7
:cond_38f
const/4 v4, 0x0
move/from16 v23, v4
move-object v11, v5
:goto_393
move-object/from16 v0, p2
iget-object v4, v0, Lorg/objectweb/asm/Context;->a:[Lorg/objectweb/asm/Attribute;
array-length v4, v4
move/from16 v0, v23
if-ge v0, v4, :cond_9b9
move-object/from16 v0, p2
iget-object v4, v0, Lorg/objectweb/asm/Context;->a:[Lorg/objectweb/asm/Attribute;
aget-object v4, v4, v23
iget-object v4, v4, Lorg/objectweb/asm/Attribute;->type:Ljava/lang/String;
move-object/from16 v0, v35
invoke-virtual {v4, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_3c9
move-object/from16 v0, p2
iget-object v4, v0, Lorg/objectweb/asm/Context;->a:[Lorg/objectweb/asm/Attribute;
aget-object v4, v4, v23
add-int/lit8 v6, v27, 0x8
add-int/lit8 v5, v27, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v5}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v7
add-int/lit8 v9, v29, -0x8
move-object/from16 v5, p0
invoke-virtual/range {v4 .. v10}, Lorg/objectweb/asm/Attribute;->read(Lorg/objectweb/asm/ClassReader;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
move-result-object v4
if-eqz v4, :cond_3c9
iput-object v11, v4, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
move-object v11, v4
:cond_3c9
add-int/lit8 v4, v23, 0x1
move/from16 v23, v4
goto :goto_393
:cond_3ce
if-eqz v14, :cond_9b5
const/4 v4, -0x1
move-object/from16 v0, p2
iput v4, v0, Lorg/objectweb/asm/Context;->o:I
const/4 v4, 0x0
move-object/from16 v0, p2
iput v4, v0, Lorg/objectweb/asm/Context;->p:I
const/4 v4, 0x0
move-object/from16 v0, p2
iput v4, v0, Lorg/objectweb/asm/Context;->q:I
const/4 v4, 0x0
move-object/from16 v0, p2
iput v4, v0, Lorg/objectweb/asm/Context;->r:I
const/4 v4, 0x0
move-object/from16 v0, p2
iput v4, v0, Lorg/objectweb/asm/Context;->t:I
move/from16 v0, v32
new-array v4, v0, [Ljava/lang/Object;
move-object/from16 v0, p2
iput-object v4, v0, Lorg/objectweb/asm/Context;->s:[Ljava/lang/Object;
move/from16 v0, v31
new-array v4, v0, [Ljava/lang/Object;
move-object/from16 v0, p2
iput-object v4, v0, Lorg/objectweb/asm/Context;->u:[Ljava/lang/Object;
if-eqz v17, :cond_402
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;)V
:cond_402
move v4, v14
:goto_403
add-int v6, v14, v13
add-int/lit8 v6, v6, -0x2
if-ge v4, v6, :cond_42f
aget-byte v6, v30, v4
const/16 v7, 0x8
if-ne v6, v7, :cond_42c
add-int/lit8 v6, v4, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
if-ltz v6, :cond_42c
move/from16 v0, v33
if-ge v6, v0, :cond_42c
add-int v7, v29, v6
aget-byte v7, v30, v7
and-int/lit16 v7, v7, 0xff
const/16 v9, 0xbb
if-ne v7, v9, :cond_42c
move-object/from16 v0, p0
invoke-virtual {v0, v6, v10}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
:cond_42c
add-int/lit8 v4, v4, 0x1
goto :goto_403
:cond_42f
move-object/from16 v4, p2
:goto_431
move v6, v12
move v7, v14
move/from16 v24, v15
move/from16 v27, v26
move/from16 v28, v29
move/from16 v26, v25
move/from16 v25, v16
:goto_43d
move/from16 v0, v28
move/from16 v1, v34
if-ge v0, v1, :cond_84a
sub-int v35, v28, v29
aget-object v9, v10, v35
if-eqz v9, :cond_461
move-object/from16 v0, p1
invoke-virtual {v0, v9}, Lorg/objectweb/asm/MethodVisitor;->visitLabel(Lorg/objectweb/asm/Label;)V
move-object/from16 v0, p2
iget v11, v0, Lorg/objectweb/asm/Context;->b:I
and-int/lit8 v11, v11, 0x2
if-nez v11, :cond_461
iget v11, v9, Lorg/objectweb/asm/Label;->b:I
if-lez v11, :cond_461
iget v11, v9, Lorg/objectweb/asm/Label;->b:I
move-object/from16 v0, p1
invoke-virtual {v0, v11, v9}, Lorg/objectweb/asm/MethodVisitor;->visitLineNumber(ILorg/objectweb/asm/Label;)V
:cond_461
move v9, v6
move/from16 v23, v7
move-object v7, v4
:goto_465
if-eqz v7, :cond_4b4
iget v4, v7, Lorg/objectweb/asm/Context;->o:I
move/from16 v0, v35
if-eq v4, v0, :cond_472
iget v4, v7, Lorg/objectweb/asm/Context;->o:I
const/4 v6, -0x1
if-ne v4, v6, :cond_4b4
:cond_472
iget v4, v7, Lorg/objectweb/asm/Context;->o:I
const/4 v6, -0x1
if-eq v4, v6, :cond_48b
if-eqz v18, :cond_47b
if-eqz v17, :cond_49f
:cond_47b
const/4 v12, -0x1
iget v13, v7, Lorg/objectweb/asm/Context;->q:I
iget-object v14, v7, Lorg/objectweb/asm/Context;->s:[Ljava/lang/Object;
iget v15, v7, Lorg/objectweb/asm/Context;->t:I
iget-object v0, v7, Lorg/objectweb/asm/Context;->u:[Ljava/lang/Object;
move-object/from16 v16, v0
move-object/from16 v11, p1
invoke-virtual/range {v11 .. v16}, Lorg/objectweb/asm/MethodVisitor;->visitFrame(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
:cond_48b
:goto_48b
if-lez v9, :cond_4b1
move-object/from16 v0, p0
move/from16 v1, v23
move/from16 v2, v18
move/from16 v3, v17
invoke-direct {v0, v1, v2, v3, v7}, Lorg/objectweb/asm/ClassReader;->a(IZZLorg/objectweb/asm/Context;)I
move-result v6
add-int/lit8 v4, v9, -0x1
move v9, v4
move/from16 v23, v6
goto :goto_465
:cond_49f
iget v12, v7, Lorg/objectweb/asm/Context;->p:I
iget v13, v7, Lorg/objectweb/asm/Context;->r:I
iget-object v14, v7, Lorg/objectweb/asm/Context;->s:[Ljava/lang/Object;
iget v15, v7, Lorg/objectweb/asm/Context;->t:I
iget-object v0, v7, Lorg/objectweb/asm/Context;->u:[Ljava/lang/Object;
move-object/from16 v16, v0
move-object/from16 v11, p1
invoke-virtual/range {v11 .. v16}, Lorg/objectweb/asm/MethodVisitor;->visitFrame(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
goto :goto_48b
:cond_4b1
const/4 v4, 0x0
move-object v7, v4
goto :goto_465
:cond_4b4
aget-byte v4, v30, v28
and-int/lit16 v12, v4, 0xff
sget-object v4, Lorg/objectweb/asm/ClassWriter;->a:[B
aget-byte v4, v4, v12
packed-switch v4, :pswitch_data_a08
:pswitch_4bf
add-int/lit8 v4, v28, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v4
add-int/lit8 v6, v28, 0x3
aget-byte v6, v30, v6
and-int/lit16 v6, v6, 0xff
move-object/from16 v0, p1
invoke-virtual {v0, v4, v6}, Lorg/objectweb/asm/MethodVisitor;->visitMultiANewArrayInsn(Ljava/lang/String;I)V
add-int/lit8 v11, v28, 0x4
move/from16 v16, v25
move/from16 v6, v27
:goto_4d8
if-eqz v22, :cond_9af
move-object/from16 v0, v22
array-length v4, v0
if-ge v6, v4, :cond_9af
move/from16 v0, v16
move/from16 v1, v35
if-gt v0, v1, :cond_9af
move/from16 v0, v16
move/from16 v1, v35
if-ne v0, v1, :cond_515
aget v4, v22, v6
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1, v4}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v4
add-int/lit8 v12, v4, 0x2
const/4 v13, 0x1
move-object/from16 v0, p2
iget v14, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, p2
iget-object v15, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
const/16 v16, 0x1
move-object/from16 v0, p1
move/from16 v1, v16
invoke-virtual {v0, v14, v15, v4, v1}, Lorg/objectweb/asm/MethodVisitor;->visitInsnAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v4
move-object/from16 v0, p0
invoke-direct {v0, v12, v8, v13, v4}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
:cond_515
add-int/lit8 v27, v6, 0x1
move-object/from16 v0, v22
array-length v4, v0
move/from16 v0, v27
if-ge v0, v4, :cond_52a
aget v4, v22, v27
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v4
const/16 v6, 0x43
if-ge v4, v6, :cond_7cc
:cond_52a
const/4 v4, -0x1
:goto_52b
move/from16 v16, v4
move/from16 v6, v27
goto :goto_4d8
:pswitch_530
move-object/from16 v0, p1
invoke-virtual {v0, v12}, Lorg/objectweb/asm/MethodVisitor;->visitInsn(I)V
add-int/lit8 v11, v28, 0x1
move/from16 v16, v25
move/from16 v6, v27
goto :goto_4d8
:pswitch_53c
const/16 v4, 0x36
if-le v12, v4, :cond_554
add-int/lit8 v4, v12, -0x3b
shr-int/lit8 v6, v4, 0x2
add-int/lit8 v6, v6, 0x36
and-int/lit8 v4, v4, 0x3
move-object/from16 v0, p1
invoke-virtual {v0, v6, v4}, Lorg/objectweb/asm/MethodVisitor;->visitVarInsn(II)V
:goto_54d
add-int/lit8 v11, v28, 0x1
move/from16 v16, v25
move/from16 v6, v27
goto :goto_4d8
:cond_554
add-int/lit8 v4, v12, -0x1a
shr-int/lit8 v6, v4, 0x2
add-int/lit8 v6, v6, 0x15
and-int/lit8 v4, v4, 0x3
move-object/from16 v0, p1
invoke-virtual {v0, v6, v4}, Lorg/objectweb/asm/MethodVisitor;->visitVarInsn(II)V
goto :goto_54d
:pswitch_562
add-int/lit8 v4, v28, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readShort(I)S
move-result v4
add-int v4, v4, v35
aget-object v4, v10, v4
move-object/from16 v0, p1
invoke-virtual {v0, v12, v4}, Lorg/objectweb/asm/MethodVisitor;->visitJumpInsn(ILorg/objectweb/asm/Label;)V
add-int/lit8 v11, v28, 0x3
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_57b
add-int/lit8 v4, v12, -0x21
add-int/lit8 v6, v28, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v6
add-int v6, v6, v35
aget-object v6, v10, v6
move-object/from16 v0, p1
invoke-virtual {v0, v4, v6}, Lorg/objectweb/asm/MethodVisitor;->visitJumpInsn(ILorg/objectweb/asm/Label;)V
add-int/lit8 v11, v28, 0x5
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_596
add-int/lit8 v4, v28, 0x1
aget-byte v4, v30, v4
and-int/lit16 v4, v4, 0xff
const/16 v6, 0x84
if-ne v4, v6, :cond_5bd
add-int/lit8 v4, v28, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
add-int/lit8 v6, v28, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readShort(I)S
move-result v6
move-object/from16 v0, p1
invoke-virtual {v0, v4, v6}, Lorg/objectweb/asm/MethodVisitor;->visitIincInsn(II)V
add-int/lit8 v11, v28, 0x6
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:cond_5bd
add-int/lit8 v6, v28, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
move-object/from16 v0, p1
invoke-virtual {v0, v4, v6}, Lorg/objectweb/asm/MethodVisitor;->visitVarInsn(II)V
add-int/lit8 v11, v28, 0x4
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_5d2
add-int/lit8 v4, v28, 0x4
and-int/lit8 v6, v35, 0x3
sub-int/2addr v4, v6
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v6
add-int v11, v35, v6
add-int/lit8 v6, v4, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v12
add-int/lit8 v6, v4, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v13
sub-int v6, v13, v12
add-int/lit8 v6, v6, 0x1
new-array v14, v6, [Lorg/objectweb/asm/Label;
add-int/lit8 v6, v4, 0xc
const/4 v4, 0x0
:goto_5f8
array-length v15, v14
if-ge v4, v15, :cond_60c
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v15
add-int v15, v15, v35
aget-object v15, v10, v15
aput-object v15, v14, v4
add-int/lit8 v6, v6, 0x4
add-int/lit8 v4, v4, 0x1
goto :goto_5f8
:cond_60c
aget-object v4, v10, v11
move-object/from16 v0, p1
invoke-virtual {v0, v12, v13, v4, v14}, Lorg/objectweb/asm/MethodVisitor;->visitTableSwitchInsn(IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
move/from16 v16, v25
move v11, v6
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_61a
add-int/lit8 v4, v28, 0x4
and-int/lit8 v6, v35, 0x3
sub-int/2addr v4, v6
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v6
add-int v6, v6, v35
add-int/lit8 v11, v4, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v11}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v12
new-array v13, v12, [I
new-array v14, v12, [Lorg/objectweb/asm/Label;
add-int/lit8 v11, v4, 0x8
const/4 v4, 0x0
:goto_636
if-ge v4, v12, :cond_653
move-object/from16 v0, p0
invoke-virtual {v0, v11}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v15
aput v15, v13, v4
add-int/lit8 v15, v11, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v15}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v15
add-int v15, v15, v35
aget-object v15, v10, v15
aput-object v15, v14, v4
add-int/lit8 v11, v11, 0x8
add-int/lit8 v4, v4, 0x1
goto :goto_636
:cond_653
aget-object v4, v10, v6
move-object/from16 v0, p1
invoke-virtual {v0, v4, v13, v14}, Lorg/objectweb/asm/MethodVisitor;->visitLookupSwitchInsn(Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_660
add-int/lit8 v4, v28, 0x1
aget-byte v4, v30, v4
and-int/lit16 v4, v4, 0xff
move-object/from16 v0, p1
invoke-virtual {v0, v12, v4}, Lorg/objectweb/asm/MethodVisitor;->visitVarInsn(II)V
add-int/lit8 v11, v28, 0x2
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_673
add-int/lit8 v4, v28, 0x1
aget-byte v4, v30, v4
move-object/from16 v0, p1
invoke-virtual {v0, v12, v4}, Lorg/objectweb/asm/MethodVisitor;->visitIntInsn(II)V
add-int/lit8 v11, v28, 0x2
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_684
add-int/lit8 v4, v28, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readShort(I)S
move-result v4
move-object/from16 v0, p1
invoke-virtual {v0, v12, v4}, Lorg/objectweb/asm/MethodVisitor;->visitIntInsn(II)V
add-int/lit8 v11, v28, 0x3
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_699
add-int/lit8 v4, v28, 0x1
aget-byte v4, v30, v4
and-int/lit16 v4, v4, 0xff
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readConst(I[C)Ljava/lang/Object;
move-result-object v4
move-object/from16 v0, p1
invoke-virtual {v0, v4}, Lorg/objectweb/asm/MethodVisitor;->visitLdcInsn(Ljava/lang/Object;)V
add-int/lit8 v11, v28, 0x2
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_6b2
add-int/lit8 v4, v28, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readConst(I[C)Ljava/lang/Object;
move-result-object v4
move-object/from16 v0, p1
invoke-virtual {v0, v4}, Lorg/objectweb/asm/MethodVisitor;->visitLdcInsn(Ljava/lang/Object;)V
add-int/lit8 v11, v28, 0x3
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_6cd
move-object/from16 v0, p0
iget-object v4, v0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v6, v28, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
aget v4, v4, v6
add-int/lit8 v6, v4, -0x1
aget-byte v6, v30, v6
const/16 v11, 0xb
if-ne v6, v11, :cond_71c
const/16 v16, 0x1
:goto_6e5
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v13
move-object/from16 v0, p0
iget-object v6, v0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v4, v4, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
aget v4, v6, v4
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v14
add-int/lit8 v4, v4, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v15
const/16 v4, 0xb6
if-ge v12, v4, :cond_71f
move-object/from16 v0, p1
invoke-virtual {v0, v12, v13, v14, v15}, Lorg/objectweb/asm/MethodVisitor;->visitFieldInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:goto_710
const/16 v4, 0xb9
if-ne v12, v4, :cond_725
add-int/lit8 v11, v28, 0x5
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:cond_71c
const/16 v16, 0x0
goto :goto_6e5
:cond_71f
move-object/from16 v11, p1
invoke-virtual/range {v11 .. v16}, Lorg/objectweb/asm/MethodVisitor;->visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
goto :goto_710
:cond_725
add-int/lit8 v11, v28, 0x3
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_72d
move-object/from16 v0, p0
iget-object v4, v0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v6, v28, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
aget v12, v4, v6
move-object/from16 v0, p2
iget-object v4, v0, Lorg/objectweb/asm/Context;->d:[I
move-object/from16 v0, p0
invoke-virtual {v0, v12}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
aget v6, v4, v6
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readConst(I[C)Ljava/lang/Object;
move-result-object v4
check-cast v4, Lorg/objectweb/asm/Handle;
add-int/lit8 v11, v6, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v11}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v13
new-array v14, v13, [Ljava/lang/Object;
add-int/lit8 v6, v6, 0x4
const/4 v11, 0x0
:goto_762
if-ge v11, v13, :cond_777
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v15
move-object/from16 v0, p0
invoke-virtual {v0, v15, v8}, Lorg/objectweb/asm/ClassReader;->readConst(I[C)Ljava/lang/Object;
move-result-object v15
aput-object v15, v14, v11
add-int/lit8 v6, v6, 0x2
add-int/lit8 v11, v11, 0x1
goto :goto_762
:cond_777
move-object/from16 v0, p0
iget-object v6, v0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v11, v12, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v11}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v11
aget v6, v6, v11
move-object/from16 v0, p0
invoke-virtual {v0, v6, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v11
add-int/lit8 v6, v6, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v6, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v6
move-object/from16 v0, p1
invoke-virtual {v0, v11, v6, v4, v14}, Lorg/objectweb/asm/MethodVisitor;->visitInvokeDynamicInsn(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
add-int/lit8 v11, v28, 0x5
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_7a0
add-int/lit8 v4, v28, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v4
move-object/from16 v0, p1
invoke-virtual {v0, v12, v4}, Lorg/objectweb/asm/MethodVisitor;->visitTypeInsn(ILjava/lang/String;)V
add-int/lit8 v11, v28, 0x3
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:pswitch_7b5
add-int/lit8 v4, v28, 0x1
aget-byte v4, v30, v4
and-int/lit16 v4, v4, 0xff
add-int/lit8 v6, v28, 0x2
aget-byte v6, v30, v6
move-object/from16 v0, p1
invoke-virtual {v0, v4, v6}, Lorg/objectweb/asm/MethodVisitor;->visitIincInsn(II)V
add-int/lit8 v11, v28, 0x3
move/from16 v16, v25
move/from16 v6, v27
goto/16 :goto_4d8
:cond_7cc
aget v4, v22, v27
add-int/lit8 v4, v4, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
goto/16 :goto_52b
:goto_7d8
if-eqz v21, :cond_83a
move-object/from16 v0, v21
array-length v12, v0
if-ge v4, v12, :cond_83a
move/from16 v0, v35
if-gt v15, v0, :cond_83a
move/from16 v0, v35
if-ne v15, v0, :cond_815
aget v12, v21, v4
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1, v12}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v12
add-int/lit8 v13, v12, 0x2
const/4 v14, 0x1
move-object/from16 v0, p2
iget v15, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, p2
iget-object v0, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v24, v0
move-object/from16 v0, p0
invoke-virtual {v0, v12, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v12
const/16 v25, 0x0
move-object/from16 v0, p1
move-object/from16 v1, v24
move/from16 v2, v25
invoke-virtual {v0, v15, v1, v12, v2}, Lorg/objectweb/asm/MethodVisitor;->visitInsnAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v12
move-object/from16 v0, p0
invoke-direct {v0, v13, v8, v14, v12}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
:cond_815
add-int/lit8 v26, v4, 0x1
move-object/from16 v0, v21
array-length v4, v0
move/from16 v0, v26
if-ge v0, v4, :cond_82a
aget v4, v21, v26
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v4
const/16 v12, 0x43
if-ge v4, v12, :cond_82f
:cond_82a
const/4 v4, -0x1
:goto_82b
move v15, v4
move/from16 v4, v26
goto :goto_7d8
:cond_82f
aget v4, v21, v26
add-int/lit8 v4, v4, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
goto :goto_82b
:cond_83a
move/from16 v24, v15
move/from16 v25, v16
move/from16 v26, v4
move/from16 v27, v6
move/from16 v28, v11
move-object v4, v7
move v6, v9
move/from16 v7, v23
goto/16 :goto_43d
:cond_84a
aget-object v4, v10, v33
if-eqz v4, :cond_855
aget-object v4, v10, v33
move-object/from16 v0, p1
invoke-virtual {v0, v4}, Lorg/objectweb/asm/MethodVisitor;->visitLabel(Lorg/objectweb/asm/Label;)V
:cond_855
move-object/from16 v0, p2
iget v4, v0, Lorg/objectweb/asm/Context;->b:I
and-int/lit8 v4, v4, 0x2
if-nez v4, :cond_8f7
if-eqz v20, :cond_8f7
const/4 v4, 0x0
if-eqz v19, :cond_892
add-int/lit8 v7, v19, 0x2
move-object/from16 v0, p0
move/from16 v1, v19
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
mul-int/lit8 v4, v4, 0x3
new-array v4, v4, [I
array-length v6, v4
:goto_871
if-lez v6, :cond_892
add-int/lit8 v6, v6, -0x1
add-int/lit8 v9, v7, 0x6
aput v9, v4, v6
add-int/lit8 v6, v6, -0x1
add-int/lit8 v9, v7, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v9}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v9
aput v9, v4, v6
add-int/lit8 v6, v6, -0x1
move-object/from16 v0, p0
invoke-virtual {v0, v7}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v9
aput v9, v4, v6
add-int/lit8 v7, v7, 0xa
goto :goto_871
:cond_892
add-int/lit8 v7, v20, 0x2
move-object/from16 v0, p0
move/from16 v1, v20
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
move v9, v7
move v7, v6
:goto_89e
if-lez v7, :cond_8f7
move-object/from16 v0, p0
invoke-virtual {v0, v9}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v11
add-int/lit8 v6, v9, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v16
add-int/lit8 v6, v9, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v17
const/4 v14, 0x0
if-eqz v4, :cond_8d3
const/4 v6, 0x0
:goto_8ba
array-length v12, v4
if-ge v6, v12, :cond_8d3
aget v12, v4, v6
if-ne v12, v11, :cond_8f4
add-int/lit8 v12, v6, 0x1
aget v12, v4, v12
move/from16 v0, v17
if-ne v12, v0, :cond_8f4
add-int/lit8 v6, v6, 0x2
aget v6, v4, v6
move-object/from16 v0, p0
invoke-virtual {v0, v6, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v14
:cond_8d3
add-int/lit8 v6, v9, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v6, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v12
add-int/lit8 v6, v9, 0x6
move-object/from16 v0, p0
invoke-virtual {v0, v6, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v13
aget-object v15, v10, v11
add-int v6, v11, v16
aget-object v16, v10, v6
move-object/from16 v11, p1
invoke-virtual/range {v11 .. v17}, Lorg/objectweb/asm/MethodVisitor;->visitLocalVariable(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Label;Lorg/objectweb/asm/Label;I)V
add-int/lit8 v9, v9, 0xa
add-int/lit8 v6, v7, -0x1
move v7, v6
goto :goto_89e
:cond_8f4
add-int/lit8 v6, v6, 0x3
goto :goto_8ba
:cond_8f7
if-eqz v22, :cond_947
const/4 v4, 0x0
:goto_8fa
move-object/from16 v0, v22
array-length v6, v0
if-ge v4, v6, :cond_947
aget v6, v22, v4
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v6
shr-int/lit8 v6, v6, 0x1
const/16 v7, 0x20
if-ne v6, v7, :cond_944
aget v6, v22, v4
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1, v6}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v6
add-int/lit8 v7, v6, 0x2
const/16 v17, 0x1
move-object/from16 v0, p2
iget v10, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, p2
iget-object v11, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p2
iget-object v12, v0, Lorg/objectweb/asm/Context;->l:[Lorg/objectweb/asm/Label;
move-object/from16 v0, p2
iget-object v13, v0, Lorg/objectweb/asm/Context;->m:[Lorg/objectweb/asm/Label;
move-object/from16 v0, p2
iget-object v14, v0, Lorg/objectweb/asm/Context;->n:[I
move-object/from16 v0, p0
invoke-virtual {v0, v6, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v15
const/16 v16, 0x1
move-object/from16 v9, p1
invoke-virtual/range {v9 .. v16}, Lorg/objectweb/asm/MethodVisitor;->visitLocalVariableAnnotation(ILorg/objectweb/asm/TypePath;[Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;[ILjava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v6
move-object/from16 v0, p0
move/from16 v1, v17
invoke-direct {v0, v7, v8, v1, v6}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
:cond_944
add-int/lit8 v4, v4, 0x1
goto :goto_8fa
:cond_947
if-eqz v21, :cond_997
const/4 v4, 0x0
:goto_94a
move-object/from16 v0, v21
array-length v6, v0
if-ge v4, v6, :cond_997
aget v6, v21, v4
move-object/from16 v0, p0
invoke-virtual {v0, v6}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v6
shr-int/lit8 v6, v6, 0x1
const/16 v7, 0x20
if-ne v6, v7, :cond_994
aget v6, v21, v4
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1, v6}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v6
add-int/lit8 v7, v6, 0x2
const/16 v17, 0x1
move-object/from16 v0, p2
iget v10, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, p2
iget-object v11, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p2
iget-object v12, v0, Lorg/objectweb/asm/Context;->l:[Lorg/objectweb/asm/Label;
move-object/from16 v0, p2
iget-object v13, v0, Lorg/objectweb/asm/Context;->m:[Lorg/objectweb/asm/Label;
move-object/from16 v0, p2
iget-object v14, v0, Lorg/objectweb/asm/Context;->n:[I
move-object/from16 v0, p0
invoke-virtual {v0, v6, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v15
const/16 v16, 0x0
move-object/from16 v9, p1
invoke-virtual/range {v9 .. v16}, Lorg/objectweb/asm/MethodVisitor;->visitLocalVariableAnnotation(ILorg/objectweb/asm/TypePath;[Lorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;[ILjava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v6
move-object/from16 v0, p0
move/from16 v1, v17
invoke-direct {v0, v7, v8, v1, v6}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
:cond_994
add-int/lit8 v4, v4, 0x1
goto :goto_94a
:cond_997
:goto_997
if-eqz v5, :cond_9a5
iget-object v4, v5, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
const/4 v6, 0x0
iput-object v6, v5, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
move-object/from16 v0, p1
invoke-virtual {v0, v5}, Lorg/objectweb/asm/MethodVisitor;->visitAttribute(Lorg/objectweb/asm/Attribute;)V
move-object v5, v4
goto :goto_997
:cond_9a5
move-object/from16 v0, p1
move/from16 v1, v31
move/from16 v2, v32
invoke-virtual {v0, v1, v2}, Lorg/objectweb/asm/MethodVisitor;->visitMaxs(II)V
return-void
:cond_9af
move/from16 v15, v24
move/from16 v4, v26
goto/16 :goto_7d8
:cond_9b5
move-object/from16 v4, v24
goto/16 :goto_431
:cond_9b9
move-object v4, v11
move v5, v12
move v6, v13
move v7, v14
move/from16 v9, v18
move/from16 v11, v19
move/from16 v12, v20
move v13, v15
move/from16 v14, v16
move-object/from16 v15, v21
move-object/from16 v16, v22
goto/16 :goto_1f7
:cond_9cc
move-object v4, v5
move v6, v13
move v7, v14
move/from16 v9, v18
move/from16 v11, v19
move v5, v12
move v13, v15
move/from16 v14, v16
move/from16 v12, v20
move-object/from16 v15, v21
move-object/from16 v16, v22
goto/16 :goto_1f7
nop
:pswitch_data_9e0
.packed-switch 0x0
:pswitch_4b
:pswitch_f1
:pswitch_f5
:pswitch_f1
:pswitch_4b
:pswitch_f5
:pswitch_f5
:pswitch_f9
:pswitch_f9
:pswitch_4e
:pswitch_5f
:pswitch_f1
:pswitch_f5
:pswitch_f5
:pswitch_80
:pswitch_be
:pswitch_48
:pswitch_70
.end packed-switch
:pswitch_data_a08
.packed-switch 0x0
:pswitch_530
:pswitch_673
:pswitch_684
:pswitch_660
:pswitch_53c
:pswitch_7a0
:pswitch_6cd
:pswitch_6cd
:pswitch_72d
:pswitch_562
:pswitch_57b
:pswitch_699
:pswitch_6b2
:pswitch_7b5
:pswitch_5d2
:pswitch_61a
:pswitch_4bf
:pswitch_596
.end packed-switch
.end method
.method private static a(Ljava/io/InputStream;Z)[B
.registers 8
const/4 v0, 0x0
if-nez p0, :cond_b
new-instance v0, Ljava/io/IOException;
const-string v1, "Class not found"
invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
throw v0
:cond_b
:try_start_b
invoke-virtual {p0}, Ljava/io/InputStream;->available()I
move-result v1
new-array v1, v1, [B
move v2, v0
:goto_12
array-length v0, v1
sub-int/2addr v0, v2
invoke-virtual {p0, v1, v2, v0}, Ljava/io/InputStream;->read([BII)I
move-result v0
const/4 v3, -0x1
if-ne v0, v3, :cond_2b
array-length v0, v1
if-ge v2, v0, :cond_57
new-array v0, v2, [B
const/4 v3, 0x0
const/4 v4, 0x0
invoke-static {v1, v3, v0, v4, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
:try_end_25
.catchall {:try_start_b .. :try_end_25} :catchall_4e
:goto_25
if-eqz p1, :cond_2a
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:cond_2a
:goto_2a
return-object v0
:cond_2b
add-int/2addr v2, v0
:try_start_2c
array-length v0, v1
if-ne v2, v0, :cond_55
invoke-virtual {p0}, Ljava/io/InputStream;->read()I
:try_end_32
.catchall {:try_start_2c .. :try_end_32} :catchall_4e
move-result v4
if-gez v4, :cond_3c
if-eqz p1, :cond_3a
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:cond_3a
move-object v0, v1
goto :goto_2a
:cond_3c
:try_start_3c
array-length v0, v1
add-int/lit16 v0, v0, 0x3e8
new-array v3, v0, [B
const/4 v0, 0x0
const/4 v5, 0x0
invoke-static {v1, v0, v3, v5, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
add-int/lit8 v0, v2, 0x1
int-to-byte v1, v4
aput-byte v1, v3, v2
:try_end_4b
.catchall {:try_start_3c .. :try_end_4b} :catchall_4e
move-object v1, v3
:goto_4c
move v2, v0
goto :goto_12
:catchall_4e
move-exception v0
if-eqz p1, :cond_54
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:cond_54
throw v0
:cond_55
move v0, v2
goto :goto_4c
:cond_57
move-object v0, v1
goto :goto_25
.end method
.method private a(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;IZ)[I
.registers 15
iget-object v3, p2, Lorg/objectweb/asm/Context;->c:[C
invoke-virtual {p0, p3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
new-array v4, v0, [I
add-int/lit8 v1, p3, 0x2
const/4 v0, 0x0
:goto_b
array-length v2, v4
if-ge v0, v2, :cond_86
aput v1, v4, v0
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v5
ushr-int/lit8 v2, v5, 0x18
sparse-switch v2, :sswitch_data_88
add-int/lit8 v1, v1, 0x3
:goto_1b
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v6
ushr-int/lit8 v2, v5, 0x18
const/16 v7, 0x42
if-ne v2, v7, :cond_7a
if-nez v6, :cond_72
const/4 v2, 0x0
:goto_28
mul-int/lit8 v6, v6, 0x2
add-int/lit8 v6, v6, 0x1
add-int/2addr v1, v6
add-int/lit8 v6, v1, 0x2
const/4 v7, 0x1
invoke-virtual {p0, v1, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v5, v2, v1, p4}, Lorg/objectweb/asm/MethodVisitor;->visitTryCatchAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v1
invoke-direct {p0, v6, v3, v7, v1}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v1
:goto_3c
add-int/lit8 v0, v0, 0x1
goto :goto_b
:sswitch_3f
add-int/lit8 v1, v1, 0x2
goto :goto_1b
:sswitch_42
add-int/lit8 v1, v1, 0x1
goto :goto_1b
:sswitch_45
add-int/lit8 v2, v1, 0x1
invoke-virtual {p0, v2}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v2
move v9, v2
move v2, v1
move v1, v9
:goto_4e
if-lez v1, :cond_6c
add-int/lit8 v6, v2, 0x3
invoke-virtual {p0, v6}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v6
add-int/lit8 v7, v2, 0x5
invoke-virtual {p0, v7}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v7
iget-object v8, p2, Lorg/objectweb/asm/Context;->h:[Lorg/objectweb/asm/Label;
invoke-virtual {p0, v6, v8}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
add-int/2addr v6, v7
iget-object v7, p2, Lorg/objectweb/asm/Context;->h:[Lorg/objectweb/asm/Label;
invoke-virtual {p0, v6, v7}, Lorg/objectweb/asm/ClassReader;->readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
add-int/lit8 v2, v2, 0x6
add-int/lit8 v1, v1, -0x1
goto :goto_4e
:cond_6c
add-int/lit8 v1, v2, 0x3
goto :goto_1b
:sswitch_6f
add-int/lit8 v1, v1, 0x4
goto :goto_1b
:cond_72
new-instance v2, Lorg/objectweb/asm/TypePath;
iget-object v7, p0, Lorg/objectweb/asm/ClassReader;->b:[B
invoke-direct {v2, v7, v1}, Lorg/objectweb/asm/TypePath;-><init>([BI)V
goto :goto_28
:cond_7a
add-int/lit8 v1, v1, 0x3
mul-int/lit8 v2, v6, 0x2
add-int/2addr v1, v2
const/4 v2, 0x1
const/4 v5, 0x0
invoke-direct {p0, v1, v3, v2, v5}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v1
goto :goto_3c
:cond_86
return-object v4
nop
:sswitch_data_88
.sparse-switch
0x0 -> :sswitch_3f
0x1 -> :sswitch_3f
0x13 -> :sswitch_42
0x14 -> :sswitch_42
0x15 -> :sswitch_42
0x16 -> :sswitch_3f
0x40 -> :sswitch_45
0x41 -> :sswitch_45
0x47 -> :sswitch_6f
0x48 -> :sswitch_6f
0x49 -> :sswitch_6f
0x4a -> :sswitch_6f
0x4b -> :sswitch_6f
.end sparse-switch
.end method
.method private b(Lorg/objectweb/asm/ClassVisitor;Lorg/objectweb/asm/Context;I)I
.registers 34
move-object/from16 v0, p2
iget-object v8, v0, Lorg/objectweb/asm/Context;->c:[C
move-object/from16 v0, p0
move/from16 v1, p3
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v3
move-object/from16 v0, p2
iput v3, v0, Lorg/objectweb/asm/Context;->e:I
add-int/lit8 v3, p3, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
move-object/from16 v0, p2
iput-object v3, v0, Lorg/objectweb/asm/Context;->f:Ljava/lang/String;
add-int/lit8 v3, p3, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
move-object/from16 v0, p2
iput-object v3, v0, Lorg/objectweb/asm/Context;->g:Ljava/lang/String;
add-int/lit8 v28, p3, 0x6
const/16 v25, 0x0
const/16 v24, 0x0
const/4 v14, 0x0
const/4 v13, 0x0
const/16 v23, 0x0
const/16 v22, 0x0
const/16 v21, 0x0
const/16 v20, 0x0
const/16 v19, 0x0
const/16 v18, 0x0
const/16 v17, 0x0
const/16 v16, 0x0
const/4 v15, 0x0
move-object/from16 v0, p0
move/from16 v1, v28
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v3
move/from16 v26, v3
move/from16 v27, v28
:goto_4d
if-lez v26, :cond_298
add-int/lit8 v3, v27, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v5
const-string v3, "Code"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_a8
move-object/from16 v0, p2
iget v3, v0, Lorg/objectweb/asm/Context;->b:I
and-int/lit8 v3, v3, 0x1
if-nez v3, :cond_41c
add-int/lit8 v3, v27, 0x8
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move/from16 v16, v3
move-object v3, v15
move/from16 v15, v24
:goto_7e
add-int/lit8 v17, v27, 0x4
move-object/from16 v0, p0
move/from16 v1, v17
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v17
add-int/lit8 v17, v17, 0x6
add-int v18, v27, v17
add-int/lit8 v17, v26, -0x1
move/from16 v26, v17
move/from16 v19, v7
move/from16 v20, v9
move/from16 v21, v10
move/from16 v22, v11
move/from16 v23, v12
move/from16 v24, v15
move/from16 v25, v16
move/from16 v27, v18
move-object v15, v3
move/from16 v16, v4
move/from16 v17, v5
move/from16 v18, v6
goto :goto_4d
:cond_a8
const-string v3, "Exceptions"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_ec
add-int/lit8 v3, v27, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v3}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v3
new-array v14, v3, [Ljava/lang/String;
add-int/lit8 v4, v27, 0xa
const/4 v3, 0x0
move/from16 v29, v3
move v3, v4
move/from16 v4, v29
:goto_c2
array-length v5, v14
if-ge v4, v5, :cond_d4
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v5
aput-object v5, v14, v4
add-int/lit8 v5, v3, 0x2
add-int/lit8 v3, v4, 0x1
move v4, v3
move v3, v5
goto :goto_c2
:cond_d4
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move/from16 v16, v25
move/from16 v29, v3
move-object v3, v15
move/from16 v15, v29
goto :goto_7e
:cond_ec
const-string v3, "Signature"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_113
add-int/lit8 v3, v27, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v13
move-object v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move/from16 v15, v24
move/from16 v16, v25
goto/16 :goto_7e
:cond_113
const-string v3, "Deprecated"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_13d
move-object/from16 v0, p2
iget v3, v0, Lorg/objectweb/asm/Context;->e:I
const/high16 v4, 0x20000
or-int/2addr v3, v4
move-object/from16 v0, p2
iput v3, v0, Lorg/objectweb/asm/Context;->e:I
move-object v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move/from16 v15, v24
move/from16 v16, v25
goto/16 :goto_7e
:cond_13d
const-string v3, "RuntimeVisibleAnnotations"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_15d
add-int/lit8 v3, v27, 0x8
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move v11, v3
move/from16 v12, v23
move-object v3, v15
move/from16 v16, v25
move/from16 v15, v24
goto/16 :goto_7e
:cond_15d
const-string v3, "RuntimeVisibleTypeAnnotations"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_17d
add-int/lit8 v3, v27, 0x8
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move v9, v3
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move-object v3, v15
move/from16 v16, v25
move/from16 v15, v24
goto/16 :goto_7e
:cond_17d
const-string v3, "AnnotationDefault"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_19d
add-int/lit8 v3, v27, 0x8
move/from16 v4, v16
move/from16 v5, v17
move v6, v3
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move-object v3, v15
move/from16 v16, v25
move/from16 v15, v24
goto/16 :goto_7e
:cond_19d
const-string v3, "Synthetic"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_1c8
move-object/from16 v0, p2
iget v3, v0, Lorg/objectweb/asm/Context;->e:I
const v4, 0x41000
or-int/2addr v3, v4
move-object/from16 v0, p2
iput v3, v0, Lorg/objectweb/asm/Context;->e:I
move-object v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move/from16 v15, v24
move/from16 v16, v25
goto/16 :goto_7e
:cond_1c8
const-string v3, "RuntimeInvisibleAnnotations"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_1e8
add-int/lit8 v3, v27, 0x8
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move v10, v3
move/from16 v11, v22
move/from16 v12, v23
move-object v3, v15
move/from16 v16, v25
move/from16 v15, v24
goto/16 :goto_7e
:cond_1e8
const-string v3, "RuntimeInvisibleTypeAnnotations"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_208
add-int/lit8 v3, v27, 0x8
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move v7, v3
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move-object v3, v15
move/from16 v16, v25
move/from16 v15, v24
goto/16 :goto_7e
:cond_208
const-string v3, "RuntimeVisibleParameterAnnotations"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_228
add-int/lit8 v3, v27, 0x8
move/from16 v4, v16
move v5, v3
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move-object v3, v15
move/from16 v16, v25
move/from16 v15, v24
goto/16 :goto_7e
:cond_228
const-string v3, "RuntimeInvisibleParameterAnnotations"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_248
add-int/lit8 v3, v27, 0x8
move v4, v3
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move/from16 v16, v25
move-object v3, v15
move/from16 v15, v24
goto/16 :goto_7e
:cond_248
const-string v3, "MethodParameters"
invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_268
add-int/lit8 v3, v27, 0x8
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move v12, v3
move-object v3, v15
move/from16 v16, v25
move/from16 v15, v24
goto/16 :goto_7e
:cond_268
move-object/from16 v0, p2
iget-object v4, v0, Lorg/objectweb/asm/Context;->a:[Lorg/objectweb/asm/Attribute;
add-int/lit8 v6, v27, 0x8
add-int/lit8 v3, v27, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v3}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v7
const/4 v9, -0x1
const/4 v10, 0x0
move-object/from16 v3, p0
invoke-direct/range {v3 .. v10}, Lorg/objectweb/asm/ClassReader;->a([Lorg/objectweb/asm/Attribute;Ljava/lang/String;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
move-result-object v3
if-eqz v3, :cond_41c
iput-object v15, v3, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move/from16 v15, v24
move/from16 v16, v25
goto/16 :goto_7e
:cond_298
add-int/lit8 v6, v27, 0x2
move-object/from16 v0, p2
iget v10, v0, Lorg/objectweb/asm/Context;->e:I
move-object/from16 v0, p2
iget-object v11, v0, Lorg/objectweb/asm/Context;->f:Ljava/lang/String;
move-object/from16 v0, p2
iget-object v12, v0, Lorg/objectweb/asm/Context;->g:Ljava/lang/String;
move-object/from16 v9, p1
invoke-virtual/range {v9 .. v14}, Lorg/objectweb/asm/ClassVisitor;->visitMethod(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)Lorg/objectweb/asm/MethodVisitor;
move-result-object v4
if-nez v4, :cond_2b0
move v3, v6
:goto_2af
return v3
:cond_2b0
instance-of v3, v4, Lorg/objectweb/asm/MethodWriter;
if-eqz v3, :cond_2f9
move-object v3, v4
check-cast v3, Lorg/objectweb/asm/MethodWriter;
iget-object v5, v3, Lorg/objectweb/asm/MethodWriter;->b:Lorg/objectweb/asm/ClassWriter;
iget-object v5, v5, Lorg/objectweb/asm/ClassWriter;->M:Lorg/objectweb/asm/ClassReader;
move-object/from16 v0, p0
if-ne v5, v0, :cond_2f9
iget-object v5, v3, Lorg/objectweb/asm/MethodWriter;->g:Ljava/lang/String;
if-ne v13, v5, :cond_2f9
const/4 v5, 0x0
if-nez v14, :cond_2d9
iget v5, v3, Lorg/objectweb/asm/MethodWriter;->j:I
if-nez v5, :cond_2d7
const/4 v5, 0x1
:cond_2cb
:goto_2cb
if-eqz v5, :cond_2f9
move/from16 v0, v28
iput v0, v3, Lorg/objectweb/asm/MethodWriter;->h:I
sub-int v4, v6, v28
iput v4, v3, Lorg/objectweb/asm/MethodWriter;->i:I
move v3, v6
goto :goto_2af
:cond_2d7
const/4 v5, 0x0
goto :goto_2cb
:cond_2d9
array-length v7, v14
iget v9, v3, Lorg/objectweb/asm/MethodWriter;->j:I
if-ne v7, v9, :cond_2cb
const/4 v5, 0x1
array-length v7, v14
add-int/lit8 v7, v7, -0x1
:goto_2e2
if-ltz v7, :cond_2cb
add-int/lit8 v24, v24, -0x2
iget-object v9, v3, Lorg/objectweb/asm/MethodWriter;->k:[I
aget v9, v9, v7
move-object/from16 v0, p0
move/from16 v1, v24
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v10
if-eq v9, v10, :cond_2f6
const/4 v5, 0x0
goto :goto_2cb
:cond_2f6
add-int/lit8 v7, v7, -0x1
goto :goto_2e2
:cond_2f9
if-eqz v23, :cond_31d
move-object/from16 v0, p0
iget-object v3, v0, Lorg/objectweb/asm/ClassReader;->b:[B
aget-byte v3, v3, v23
and-int/lit16 v5, v3, 0xff
add-int/lit8 v3, v23, 0x1
:goto_305
if-lez v5, :cond_31d
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v7
add-int/lit8 v9, v3, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v9}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v9
invoke-virtual {v4, v7, v9}, Lorg/objectweb/asm/MethodVisitor;->visitParameter(Ljava/lang/String;I)V
add-int/lit8 v5, v5, -0x1
add-int/lit8 v3, v3, 0x4
goto :goto_305
:cond_31d
if-eqz v18, :cond_330
invoke-virtual {v4}, Lorg/objectweb/asm/MethodVisitor;->visitAnnotationDefault()Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
const/4 v5, 0x0
move-object/from16 v0, p0
move/from16 v1, v18
invoke-direct {v0, v1, v8, v5, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CLjava/lang/String;Lorg/objectweb/asm/AnnotationVisitor;)I
if-eqz v3, :cond_330
invoke-virtual {v3}, Lorg/objectweb/asm/AnnotationVisitor;->visitEnd()V
:cond_330
if-eqz v22, :cond_355
move-object/from16 v0, p0
move/from16 v1, v22
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v3, v22, 0x2
:goto_33c
if-lez v5, :cond_355
add-int/lit8 v7, v3, 0x2
const/4 v9, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
const/4 v10, 0x1
invoke-virtual {v4, v3, v10}, Lorg/objectweb/asm/MethodVisitor;->visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
move-object/from16 v0, p0
invoke-direct {v0, v7, v8, v9, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v3
add-int/lit8 v5, v5, -0x1
goto :goto_33c
:cond_355
if-eqz v21, :cond_37a
move-object/from16 v0, p0
move/from16 v1, v21
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v3, v21, 0x2
:goto_361
if-lez v5, :cond_37a
add-int/lit8 v7, v3, 0x2
const/4 v9, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
const/4 v10, 0x0
invoke-virtual {v4, v3, v10}, Lorg/objectweb/asm/MethodVisitor;->visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
move-object/from16 v0, p0
invoke-direct {v0, v7, v8, v9, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v3
add-int/lit8 v5, v5, -0x1
goto :goto_361
:cond_37a
if-eqz v20, :cond_3af
move-object/from16 v0, p0
move/from16 v1, v20
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v3, v20, 0x2
:goto_386
if-lez v5, :cond_3af
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1, v3}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v3
add-int/lit8 v7, v3, 0x2
const/4 v9, 0x1
move-object/from16 v0, p2
iget v10, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, p2
iget-object v11, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
const/4 v12, 0x1
invoke-virtual {v4, v10, v11, v3, v12}, Lorg/objectweb/asm/MethodVisitor;->visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
move-object/from16 v0, p0
invoke-direct {v0, v7, v8, v9, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v3
add-int/lit8 v5, v5, -0x1
goto :goto_386
:cond_3af
if-eqz v19, :cond_3e4
move-object/from16 v0, p0
move/from16 v1, v19
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v3, v19, 0x2
:goto_3bb
if-lez v5, :cond_3e4
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-direct {v0, v1, v3}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v3
add-int/lit8 v7, v3, 0x2
const/4 v9, 0x1
move-object/from16 v0, p2
iget v10, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, p2
iget-object v11, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p0
invoke-virtual {v0, v3, v8}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v3
const/4 v12, 0x0
invoke-virtual {v4, v10, v11, v3, v12}, Lorg/objectweb/asm/MethodVisitor;->visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v3
move-object/from16 v0, p0
invoke-direct {v0, v7, v8, v9, v3}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v3
add-int/lit8 v5, v5, -0x1
goto :goto_3bb
:cond_3e4
if-eqz v17, :cond_3f0
const/4 v3, 0x1
move-object/from16 v0, p0
move-object/from16 v1, p2
move/from16 v2, v17
invoke-direct {v0, v4, v1, v2, v3}, Lorg/objectweb/asm/ClassReader;->b(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;IZ)V
:cond_3f0
if-eqz v16, :cond_3fc
const/4 v3, 0x0
move-object/from16 v0, p0
move-object/from16 v1, p2
move/from16 v2, v16
invoke-direct {v0, v4, v1, v2, v3}, Lorg/objectweb/asm/ClassReader;->b(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;IZ)V
:cond_3fc
:goto_3fc
if-eqz v15, :cond_408
iget-object v3, v15, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
const/4 v5, 0x0
iput-object v5, v15, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
invoke-virtual {v4, v15}, Lorg/objectweb/asm/MethodVisitor;->visitAttribute(Lorg/objectweb/asm/Attribute;)V
move-object v15, v3
goto :goto_3fc
:cond_408
if-eqz v25, :cond_416
invoke-virtual {v4}, Lorg/objectweb/asm/MethodVisitor;->visitCode()V
move-object/from16 v0, p0
move-object/from16 v1, p2
move/from16 v2, v25
invoke-direct {v0, v4, v1, v2}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;I)V
:cond_416
invoke-virtual {v4}, Lorg/objectweb/asm/MethodVisitor;->visitEnd()V
move v3, v6
goto/16 :goto_2af
:cond_41c
move-object v3, v15
move/from16 v4, v16
move/from16 v5, v17
move/from16 v6, v18
move/from16 v7, v19
move/from16 v9, v20
move/from16 v10, v21
move/from16 v11, v22
move/from16 v12, v23
move/from16 v15, v24
move/from16 v16, v25
goto/16 :goto_7e
.end method
.method private b(Lorg/objectweb/asm/MethodVisitor;Lorg/objectweb/asm/Context;IZ)V
.registers 13
const/4 v2, 0x0
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v1, p3, 0x1
aget-byte v0, v0, p3
and-int/lit16 v3, v0, 0xff
iget-object v0, p2, Lorg/objectweb/asm/Context;->g:Ljava/lang/String;
invoke-static {v0}, Lorg/objectweb/asm/Type;->getArgumentTypes(Ljava/lang/String;)[Lorg/objectweb/asm/Type;
move-result-object v0
array-length v0, v0
sub-int v4, v0, v3
move v0, v2
:goto_13
if-ge v0, v4, :cond_23
const-string v5, "Ljava/lang/Synthetic;"
invoke-virtual {p1, v0, v5, v2}, Lorg/objectweb/asm/MethodVisitor;->visitParameterAnnotation(ILjava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v5
if-eqz v5, :cond_20
invoke-virtual {v5}, Lorg/objectweb/asm/AnnotationVisitor;->visitEnd()V
:cond_20
add-int/lit8 v0, v0, 0x1
goto :goto_13
:cond_23
iget-object v5, p2, Lorg/objectweb/asm/Context;->c:[C
move v2, v0
:goto_26
add-int v0, v3, v4
if-ge v2, v0, :cond_48
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
add-int/lit8 v1, v1, 0x2
:goto_30
if-lez v0, :cond_44
invoke-virtual {p0, v1, v5}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v6
invoke-virtual {p1, v2, v6, p4}, Lorg/objectweb/asm/MethodVisitor;->visitParameterAnnotation(ILjava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v6
add-int/lit8 v1, v1, 0x2
const/4 v7, 0x1
invoke-direct {p0, v1, v5, v7, v6}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v1
add-int/lit8 v0, v0, -0x1
goto :goto_30
:cond_44
add-int/lit8 v0, v2, 0x1
move v2, v0
goto :goto_26
:cond_48
return-void
.end method
# virtual methods
.method a(Lorg/objectweb/asm/ClassWriter;)V
.registers 13
const/4 v2, 0x1
const/4 v10, 0x0
iget v0, p0, Lorg/objectweb/asm/ClassReader;->d:I
new-array v3, v0, [C
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
array-length v4, v0
new-array v5, v4, [Lorg/objectweb/asm/Item;
move v1, v2
:goto_c
if-ge v1, v4, :cond_ff
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
aget v0, v0, v1
iget-object v6, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v7, v0, -0x1
aget-byte v6, v6, v7
new-instance v7, Lorg/objectweb/asm/Item;
invoke-direct {v7, v1}, Lorg/objectweb/asm/Item;-><init>(I)V
packed-switch v6, :pswitch_data_11c
:pswitch_20
invoke-virtual {p0, v0, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
invoke-virtual {v7, v6, v0, v10, v10}, Lorg/objectweb/asm/Item;->a(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
move v0, v1
:goto_28
iget v1, v7, Lorg/objectweb/asm/Item;->j:I
rem-int/2addr v1, v4
aget-object v6, v5, v1
iput-object v6, v7, Lorg/objectweb/asm/Item;->k:Lorg/objectweb/asm/Item;
aput-object v7, v5, v1
add-int/lit8 v1, v0, 0x1
goto :goto_c
:pswitch_34
iget-object v8, p0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v9, v0, 0x2
invoke-virtual {p0, v9}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v9
aget v8, v8, v9
invoke-virtual {p0, v0, v3}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v0
invoke-virtual {p0, v8, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v9
add-int/lit8 v8, v8, 0x2
invoke-virtual {p0, v8, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v8
invoke-virtual {v7, v6, v0, v9, v8}, Lorg/objectweb/asm/Item;->a(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
move v0, v1
goto :goto_28
:pswitch_51
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v0
invoke-virtual {v7, v0}, Lorg/objectweb/asm/Item;->a(I)V
move v0, v1
goto :goto_28
:pswitch_5a
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v0
invoke-static {v0}, Ljava/lang/Float;->intBitsToFloat(I)F
move-result v0
invoke-virtual {v7, v0}, Lorg/objectweb/asm/Item;->a(F)V
move v0, v1
goto :goto_28
:pswitch_67
invoke-virtual {p0, v0, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v8
add-int/lit8 v0, v0, 0x2
invoke-virtual {p0, v0, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
invoke-virtual {v7, v6, v8, v0, v10}, Lorg/objectweb/asm/Item;->a(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
move v0, v1
goto :goto_28
:pswitch_76
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readLong(I)J
move-result-wide v8
invoke-virtual {v7, v8, v9}, Lorg/objectweb/asm/Item;->a(J)V
add-int/lit8 v0, v1, 0x1
goto :goto_28
:pswitch_80
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readLong(I)J
move-result-wide v8
invoke-static {v8, v9}, Ljava/lang/Double;->longBitsToDouble(J)D
move-result-wide v8
invoke-virtual {v7, v8, v9}, Lorg/objectweb/asm/Item;->a(D)V
add-int/lit8 v0, v1, 0x1
goto :goto_28
:pswitch_8e
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->c:[Ljava/lang/String;
aget-object v0, v0, v1
if-nez v0, :cond_a6
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
aget v0, v0, v1
iget-object v8, p0, Lorg/objectweb/asm/ClassReader;->c:[Ljava/lang/String;
add-int/lit8 v9, v0, 0x2
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
invoke-direct {p0, v9, v0, v3}, Lorg/objectweb/asm/ClassReader;->a(II[C)Ljava/lang/String;
move-result-object v0
aput-object v0, v8, v1
:cond_a6
invoke-virtual {v7, v6, v0, v10, v10}, Lorg/objectweb/asm/Item;->a(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
move v0, v1
goto/16 :goto_28
:pswitch_ac
iget-object v6, p0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v8, v0, 0x1
invoke-virtual {p0, v8}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v8
aget v6, v6, v8
iget-object v8, p0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v9, v6, 0x2
invoke-virtual {p0, v9}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v9
aget v8, v8, v9
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v0
add-int/lit8 v0, v0, 0x14
invoke-virtual {p0, v6, v3}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v6
invoke-virtual {p0, v8, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v9
add-int/lit8 v8, v8, 0x2
invoke-virtual {p0, v8, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v8
invoke-virtual {v7, v0, v6, v9, v8}, Lorg/objectweb/asm/Item;->a(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
move v0, v1
goto/16 :goto_28
:pswitch_da
iget-object v6, p1, Lorg/objectweb/asm/ClassWriter;->A:Lorg/objectweb/asm/ByteVector;
if-nez v6, :cond_e1
invoke-direct {p0, p1, v5, v3}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/ClassWriter;[Lorg/objectweb/asm/Item;[C)V
:cond_e1
iget-object v6, p0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v8, v0, 0x2
invoke-virtual {p0, v8}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v8
aget v6, v6, v8
invoke-virtual {p0, v6, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v8
add-int/lit8 v6, v6, 0x2
invoke-virtual {p0, v6, v3}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v6
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
invoke-virtual {v7, v8, v6, v0}, Lorg/objectweb/asm/Item;->a(Ljava/lang/String;Ljava/lang/String;I)V
move v0, v1
goto/16 :goto_28
:cond_ff
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
aget v0, v0, v2
add-int/lit8 v0, v0, -0x1
iget-object v1, p1, Lorg/objectweb/asm/ClassWriter;->d:Lorg/objectweb/asm/ByteVector;
iget-object v2, p0, Lorg/objectweb/asm/ClassReader;->b:[B
iget v3, p0, Lorg/objectweb/asm/ClassReader;->header:I
sub-int/2addr v3, v0
invoke-virtual {v1, v2, v0, v3}, Lorg/objectweb/asm/ByteVector;->putByteArray([BII)Lorg/objectweb/asm/ByteVector;
iput-object v5, p1, Lorg/objectweb/asm/ClassWriter;->e:[Lorg/objectweb/asm/Item;
const-wide/high16 v0, 0x3fe8000000000000L # 0.75
int-to-double v2, v4
mul-double/2addr v0, v2
double-to-int v0, v0
iput v0, p1, Lorg/objectweb/asm/ClassWriter;->f:I
iput v4, p1, Lorg/objectweb/asm/ClassWriter;->c:I
return-void
nop
:pswitch_data_11c
.packed-switch 0x1
:pswitch_8e
:pswitch_20
:pswitch_51
:pswitch_5a
:pswitch_76
:pswitch_80
:pswitch_20
:pswitch_20
:pswitch_34
:pswitch_34
:pswitch_34
:pswitch_67
:pswitch_20
:pswitch_20
:pswitch_ac
:pswitch_20
:pswitch_20
:pswitch_da
.end packed-switch
.end method
.method public accept(Lorg/objectweb/asm/ClassVisitor;I)V
.registers 4
const/4 v0, 0x0
new-array v0, v0, [Lorg/objectweb/asm/Attribute;
invoke-virtual {p0, p1, v0, p2}, Lorg/objectweb/asm/ClassReader;->accept(Lorg/objectweb/asm/ClassVisitor;[Lorg/objectweb/asm/Attribute;I)V
return-void
.end method
.method public accept(Lorg/objectweb/asm/ClassVisitor;[Lorg/objectweb/asm/Attribute;I)V
.registers 36
move-object/from16 v0, p0
iget v4, v0, Lorg/objectweb/asm/ClassReader;->header:I
move-object/from16 v0, p0
iget v5, v0, Lorg/objectweb/asm/ClassReader;->d:I
new-array v9, v5, [C
new-instance v30, Lorg/objectweb/asm/Context;
invoke-direct/range {v30 .. v30}, Lorg/objectweb/asm/Context;-><init>()V
move-object/from16 v0, p2
move-object/from16 v1, v30
iput-object v0, v1, Lorg/objectweb/asm/Context;->a:[Lorg/objectweb/asm/Attribute;
move/from16 v0, p3
move-object/from16 v1, v30
iput v0, v1, Lorg/objectweb/asm/Context;->b:I
move-object/from16 v0, v30
iput-object v9, v0, Lorg/objectweb/asm/Context;->c:[C
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v12
add-int/lit8 v5, v4, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v5, v9}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v13
add-int/lit8 v5, v4, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v5, v9}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v15
add-int/lit8 v5, v4, 0x6
move-object/from16 v0, p0
invoke-virtual {v0, v5}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
new-array v0, v5, [Ljava/lang/String;
move-object/from16 v16, v0
add-int/lit8 v5, v4, 0x8
const/4 v4, 0x0
:goto_44
move-object/from16 v0, v16
array-length v6, v0
if-ge v4, v6, :cond_56
move-object/from16 v0, p0
invoke-virtual {v0, v5, v9}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v6
aput-object v6, v16, v4
add-int/lit8 v5, v5, 0x2
add-int/lit8 v4, v4, 0x1
goto :goto_44
:cond_56
const/4 v14, 0x0
const/16 v27, 0x0
const/16 v26, 0x0
const/16 v25, 0x0
const/16 v24, 0x0
const/16 v23, 0x0
const/16 v22, 0x0
const/16 v21, 0x0
const/16 v20, 0x0
const/16 v19, 0x0
const/16 v18, 0x0
const/16 v17, 0x0
invoke-direct/range {p0 .. p0}, Lorg/objectweb/asm/ClassReader;->a()I
move-result v5
move-object/from16 v0, p0
invoke-virtual {v0, v5}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
move/from16 v28, v4
move/from16 v29, v5
:goto_7b
if-lez v28, :cond_317
add-int/lit8 v4, v29, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v6
const-string v4, "SourceFile"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_de
add-int/lit8 v4, v29, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v18, v4
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v4, v17
move-object/from16 v12, v24
move-object/from16 v14, v25
move-object/from16 v17, v26
:goto_af
add-int/lit8 v21, v29, 0x4
move-object/from16 v0, p0
move/from16 v1, v21
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v21
add-int/lit8 v21, v21, 0x6
add-int v22, v29, v21
add-int/lit8 v21, v28, -0x1
move/from16 v28, v21
move-object/from16 v23, v11
move-object/from16 v24, v12
move-object/from16 v25, v14
move-object/from16 v26, v17
move-object/from16 v27, v18
move/from16 v29, v22
move-object/from16 v17, v4
move/from16 v18, v5
move/from16 v21, v8
move-object/from16 v14, v19
move/from16 v12, v20
move/from16 v22, v10
move/from16 v19, v6
move/from16 v20, v7
goto :goto_7b
:cond_de
const-string v4, "InnerClasses"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_102
add-int/lit8 v4, v29, 0x8
move v5, v4
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v18, v27
move-object/from16 v4, v17
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
move-object/from16 v17, v26
goto :goto_af
:cond_102
const-string v4, "EnclosingMethod"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_152
add-int/lit8 v4, v29, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v6
add-int/lit8 v4, v29, 0xa
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
if-eqz v4, :cond_4ac
move-object/from16 v0, p0
iget-object v5, v0, Lorg/objectweb/asm/ClassReader;->a:[I
aget v5, v5, v4
move-object/from16 v0, p0
invoke-virtual {v0, v5, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v5
move-object/from16 v0, p0
iget-object v7, v0, Lorg/objectweb/asm/ClassReader;->a:[I
aget v4, v7, v4
add-int/lit8 v4, v4, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
:goto_136
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object v11, v4
move-object/from16 v4, v17
move/from16 v20, v12
move-object v12, v5
move-object/from16 v17, v26
move/from16 v5, v18
move-object/from16 v18, v27
move-object/from16 v31, v6
move/from16 v6, v19
move-object/from16 v19, v14
move-object/from16 v14, v31
goto/16 :goto_af
:cond_152
const-string v4, "Signature"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_17e
add-int/lit8 v4, v29, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v14
move-object/from16 v4, v17
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v17, v26
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
goto/16 :goto_af
:cond_17e
const-string v4, "RuntimeVisibleAnnotations"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_1a3
add-int/lit8 v4, v29, 0x8
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move v10, v4
move-object/from16 v11, v23
move-object/from16 v4, v17
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
move-object/from16 v17, v26
goto/16 :goto_af
:cond_1a3
const-string v4, "RuntimeVisibleTypeAnnotations"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_1c8
add-int/lit8 v4, v29, 0x8
move/from16 v5, v18
move/from16 v6, v19
move v7, v4
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v18, v27
move-object/from16 v19, v14
move-object/from16 v4, v17
move-object/from16 v17, v26
move-object/from16 v14, v25
goto/16 :goto_af
:cond_1c8
const-string v4, "Deprecated"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_1ef
const/high16 v4, 0x20000
or-int/2addr v12, v4
move-object/from16 v4, v17
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v17, v26
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
goto/16 :goto_af
:cond_1ef
const-string v4, "Synthetic"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_217
const v4, 0x41000
or-int/2addr v12, v4
move-object/from16 v4, v17
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v17, v26
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
goto/16 :goto_af
:cond_217
const-string v4, "SourceDebugExtension"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_24f
add-int/lit8 v4, v29, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v4
add-int/lit8 v5, v29, 0x8
new-array v6, v4, [C
move-object/from16 v0, p0
invoke-direct {v0, v5, v4, v6}, Lorg/objectweb/asm/ClassReader;->a(II[C)Ljava/lang/String;
move-result-object v4
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
move-object/from16 v31, v4
move-object/from16 v4, v17
move-object/from16 v17, v31
goto/16 :goto_af
:cond_24f
const-string v4, "RuntimeInvisibleAnnotations"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_274
add-int/lit8 v4, v29, 0x8
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move v8, v4
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v4, v17
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
move-object/from16 v17, v26
goto/16 :goto_af
:cond_274
const-string v4, "RuntimeInvisibleTypeAnnotations"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_299
add-int/lit8 v4, v29, 0x8
move/from16 v5, v18
move v6, v4
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v19, v14
move-object/from16 v14, v25
move-object/from16 v18, v27
move-object/from16 v4, v17
move/from16 v20, v12
move-object/from16 v17, v26
move-object/from16 v12, v24
goto/16 :goto_af
:cond_299
const-string v4, "BootstrapMethods"
invoke-virtual {v4, v6}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v4
if-eqz v4, :cond_2e3
add-int/lit8 v4, v29, 0x8
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
new-array v6, v4, [I
const/4 v5, 0x0
add-int/lit8 v4, v29, 0xa
:goto_2ae
array-length v7, v6
if-ge v5, v7, :cond_2c3
aput v4, v6, v5
add-int/lit8 v7, v4, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v7}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v7
add-int/lit8 v7, v7, 0x2
shl-int/lit8 v7, v7, 0x1
add-int/2addr v4, v7
add-int/lit8 v5, v5, 0x1
goto :goto_2ae
:cond_2c3
move-object/from16 v0, v30
iput-object v6, v0, Lorg/objectweb/asm/Context;->d:[I
move-object/from16 v4, v17
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v17, v26
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
goto/16 :goto_af
:cond_2e3
add-int/lit8 v7, v29, 0x8
add-int/lit8 v4, v29, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v8
const/4 v10, -0x1
const/4 v11, 0x0
move-object/from16 v4, p0
move-object/from16 v5, p2
invoke-direct/range {v4 .. v11}, Lorg/objectweb/asm/ClassReader;->a([Lorg/objectweb/asm/Attribute;Ljava/lang/String;II[CI[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Attribute;
move-result-object v4
if-eqz v4, :cond_490
move-object/from16 v0, v17
iput-object v0, v4, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v17, v26
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
goto/16 :goto_af
:cond_317
move-object/from16 v0, p0
iget-object v4, v0, Lorg/objectweb/asm/ClassReader;->a:[I
const/4 v5, 0x1
aget v4, v4, v5
add-int/lit8 v4, v4, -0x7
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v11
move-object/from16 v10, p1
invoke-virtual/range {v10 .. v16}, Lorg/objectweb/asm/ClassVisitor;->visit(IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)V
and-int/lit8 v4, p3, 0x2
if-nez v4, :cond_33c
if-nez v27, :cond_333
if-eqz v26, :cond_33c
:cond_333
move-object/from16 v0, p1
move-object/from16 v1, v27
move-object/from16 v2, v26
invoke-virtual {v0, v1, v2}, Lorg/objectweb/asm/ClassVisitor;->visitSource(Ljava/lang/String;Ljava/lang/String;)V
:cond_33c
if-eqz v25, :cond_349
move-object/from16 v0, p1
move-object/from16 v1, v25
move-object/from16 v2, v24
move-object/from16 v3, v23
invoke-virtual {v0, v1, v2, v3}, Lorg/objectweb/asm/ClassVisitor;->visitOuterClass(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:cond_349
if-eqz v22, :cond_370
move-object/from16 v0, p0
move/from16 v1, v22
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v4, v22, 0x2
:goto_355
if-lez v5, :cond_370
add-int/lit8 v6, v4, 0x2
const/4 v7, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
const/4 v8, 0x1
move-object/from16 v0, p1
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassVisitor;->visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v4
move-object/from16 v0, p0
invoke-direct {v0, v6, v9, v7, v4}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v4
add-int/lit8 v5, v5, -0x1
goto :goto_355
:cond_370
if-eqz v21, :cond_397
move-object/from16 v0, p0
move/from16 v1, v21
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v4, v21, 0x2
:goto_37c
if-lez v5, :cond_397
add-int/lit8 v6, v4, 0x2
const/4 v7, 0x1
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
const/4 v8, 0x0
move-object/from16 v0, p1
invoke-virtual {v0, v4, v8}, Lorg/objectweb/asm/ClassVisitor;->visitAnnotation(Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v4
move-object/from16 v0, p0
invoke-direct {v0, v6, v9, v7, v4}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v4
add-int/lit8 v5, v5, -0x1
goto :goto_37c
:cond_397
if-eqz v20, :cond_3ce
move-object/from16 v0, p0
move/from16 v1, v20
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v4, v20, 0x2
:goto_3a3
if-lez v5, :cond_3ce
move-object/from16 v0, p0
move-object/from16 v1, v30
invoke-direct {v0, v1, v4}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v4
add-int/lit8 v6, v4, 0x2
const/4 v7, 0x1
move-object/from16 v0, v30
iget v8, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, v30
iget-object v10, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
const/4 v11, 0x1
move-object/from16 v0, p1
invoke-virtual {v0, v8, v10, v4, v11}, Lorg/objectweb/asm/ClassVisitor;->visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v4
move-object/from16 v0, p0
invoke-direct {v0, v6, v9, v7, v4}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v4
add-int/lit8 v5, v5, -0x1
goto :goto_3a3
:cond_3ce
if-eqz v19, :cond_405
move-object/from16 v0, p0
move/from16 v1, v19
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v5
add-int/lit8 v4, v19, 0x2
:goto_3da
if-lez v5, :cond_405
move-object/from16 v0, p0
move-object/from16 v1, v30
invoke-direct {v0, v1, v4}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/Context;I)I
move-result v4
add-int/lit8 v6, v4, 0x2
const/4 v7, 0x1
move-object/from16 v0, v30
iget v8, v0, Lorg/objectweb/asm/Context;->i:I
move-object/from16 v0, v30
iget-object v10, v0, Lorg/objectweb/asm/Context;->j:Lorg/objectweb/asm/TypePath;
move-object/from16 v0, p0
invoke-virtual {v0, v4, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
const/4 v11, 0x0
move-object/from16 v0, p1
invoke-virtual {v0, v8, v10, v4, v11}, Lorg/objectweb/asm/ClassVisitor;->visitTypeAnnotation(ILorg/objectweb/asm/TypePath;Ljava/lang/String;Z)Lorg/objectweb/asm/AnnotationVisitor;
move-result-object v4
move-object/from16 v0, p0
invoke-direct {v0, v6, v9, v7, v4}, Lorg/objectweb/asm/ClassReader;->a(I[CZLorg/objectweb/asm/AnnotationVisitor;)I
move-result v4
add-int/lit8 v5, v5, -0x1
goto :goto_3da
:cond_405
:goto_405
if-eqz v17, :cond_41a
move-object/from16 v0, v17
iget-object v4, v0, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
const/4 v5, 0x0
move-object/from16 v0, v17
iput-object v5, v0, Lorg/objectweb/asm/Attribute;->a:Lorg/objectweb/asm/Attribute;
move-object/from16 v0, p1
move-object/from16 v1, v17
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassVisitor;->visitAttribute(Lorg/objectweb/asm/Attribute;)V
move-object/from16 v17, v4
goto :goto_405
:cond_41a
if-eqz v18, :cond_450
add-int/lit8 v5, v18, 0x2
move-object/from16 v0, p0
move/from16 v1, v18
invoke-virtual {v0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
:goto_426
if-lez v4, :cond_450
move-object/from16 v0, p0
invoke-virtual {v0, v5, v9}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v6
add-int/lit8 v7, v5, 0x2
move-object/from16 v0, p0
invoke-virtual {v0, v7, v9}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v7
add-int/lit8 v8, v5, 0x4
move-object/from16 v0, p0
invoke-virtual {v0, v8, v9}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v8
add-int/lit8 v10, v5, 0x6
move-object/from16 v0, p0
invoke-virtual {v0, v10}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v10
move-object/from16 v0, p1
invoke-virtual {v0, v6, v7, v8, v10}, Lorg/objectweb/asm/ClassVisitor;->visitInnerClass(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V
add-int/lit8 v5, v5, 0x8
add-int/lit8 v4, v4, -0x1
goto :goto_426
:cond_450
move-object/from16 v0, p0
iget v4, v0, Lorg/objectweb/asm/ClassReader;->header:I
add-int/lit8 v4, v4, 0xa
move-object/from16 v0, v16
array-length v5, v0
mul-int/lit8 v5, v5, 0x2
add-int/2addr v5, v4
add-int/lit8 v4, v5, -0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
:goto_464
if-lez v4, :cond_473
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, v30
invoke-direct {v0, v1, v2, v5}, Lorg/objectweb/asm/ClassReader;->a(Lorg/objectweb/asm/ClassVisitor;Lorg/objectweb/asm/Context;I)I
move-result v5
add-int/lit8 v4, v4, -0x1
goto :goto_464
:cond_473
add-int/lit8 v5, v5, 0x2
add-int/lit8 v4, v5, -0x2
move-object/from16 v0, p0
invoke-virtual {v0, v4}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v4
:goto_47d
if-lez v4, :cond_48c
move-object/from16 v0, p0
move-object/from16 v1, p1
move-object/from16 v2, v30
invoke-direct {v0, v1, v2, v5}, Lorg/objectweb/asm/ClassReader;->b(Lorg/objectweb/asm/ClassVisitor;Lorg/objectweb/asm/Context;I)I
move-result v5
add-int/lit8 v4, v4, -0x1
goto :goto_47d
:cond_48c
invoke-virtual/range {p1 .. p1}, Lorg/objectweb/asm/ClassVisitor;->visitEnd()V
return-void
:cond_490
move-object/from16 v4, v17
move/from16 v5, v18
move/from16 v6, v19
move/from16 v7, v20
move/from16 v8, v21
move/from16 v10, v22
move-object/from16 v11, v23
move-object/from16 v17, v26
move-object/from16 v18, v27
move-object/from16 v19, v14
move/from16 v20, v12
move-object/from16 v12, v24
move-object/from16 v14, v25
goto/16 :goto_af
:cond_4ac
move-object/from16 v4, v23
move-object/from16 v5, v24
goto/16 :goto_136
.end method
.method public getAccess()I
.registers 2
iget v0, p0, Lorg/objectweb/asm/ClassReader;->header:I
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
return v0
.end method
.method public getClassName()Ljava/lang/String;
.registers 3
iget v0, p0, Lorg/objectweb/asm/ClassReader;->header:I
add-int/lit8 v0, v0, 0x2
iget v1, p0, Lorg/objectweb/asm/ClassReader;->d:I
new-array v1, v1, [C
invoke-virtual {p0, v0, v1}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public getInterfaces()[Ljava/lang/String;
.registers 7
iget v0, p0, Lorg/objectweb/asm/ClassReader;->header:I
add-int/lit8 v1, v0, 0x6
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v2
new-array v3, v2, [Ljava/lang/String;
if-lez v2, :cond_1e
iget v0, p0, Lorg/objectweb/asm/ClassReader;->d:I
new-array v4, v0, [C
const/4 v0, 0x0
:goto_11
if-ge v0, v2, :cond_1e
add-int/lit8 v1, v1, 0x2
invoke-virtual {p0, v1, v4}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v5
aput-object v5, v3, v0
add-int/lit8 v0, v0, 0x1
goto :goto_11
:cond_1e
return-object v3
.end method
.method public getItem(I)I
.registers 3
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
aget v0, v0, p1
return v0
.end method
.method public getItemCount()I
.registers 2
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
array-length v0, v0
return v0
.end method
.method public getMaxStringLength()I
.registers 2
iget v0, p0, Lorg/objectweb/asm/ClassReader;->d:I
return v0
.end method
.method public getSuperName()Ljava/lang/String;
.registers 3
iget v0, p0, Lorg/objectweb/asm/ClassReader;->header:I
add-int/lit8 v0, v0, 0x4
iget v1, p0, Lorg/objectweb/asm/ClassReader;->d:I
new-array v1, v1, [C
invoke-virtual {p0, v0, v1}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public readByte(I)I
.registers 3
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
aget-byte v0, v0, p1
and-int/lit16 v0, v0, 0xff
return v0
.end method
.method public readClass(I[C)Ljava/lang/String;
.registers 5
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
invoke-virtual {p0, p1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v1
aget v0, v0, v1
invoke-virtual {p0, v0, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public readConst(I[C)Ljava/lang/Object;
.registers 8
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
aget v1, v0, p1
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
add-int/lit8 v2, v1, -0x1
aget-byte v0, v0, v2
packed-switch v0, :pswitch_data_7e
:pswitch_d
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readByte(I)I
move-result v2
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
add-int/lit8 v1, v1, 0x1
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v1
aget v1, v0, v1
invoke-virtual {p0, v1, p2}, Lorg/objectweb/asm/ClassReader;->readClass(I[C)Ljava/lang/String;
move-result-object v3
add-int/lit8 v1, v1, 0x2
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v1
aget v0, v0, v1
invoke-virtual {p0, v0, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v1
add-int/lit8 v0, v0, 0x2
invoke-virtual {p0, v0, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v4
new-instance v0, Lorg/objectweb/asm/Handle;
invoke-direct {v0, v2, v3, v1, v4}, Lorg/objectweb/asm/Handle;-><init>(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:goto_36
return-object v0
:pswitch_37
new-instance v0, Ljava/lang/Integer;
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v1
invoke-direct {v0, v1}, Ljava/lang/Integer;-><init>(I)V
goto :goto_36
:pswitch_41
new-instance v0, Ljava/lang/Float;
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v1
invoke-static {v1}, Ljava/lang/Float;->intBitsToFloat(I)F
move-result v1
invoke-direct {v0, v1}, Ljava/lang/Float;-><init>(F)V
goto :goto_36
:pswitch_4f
new-instance v0, Ljava/lang/Long;
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readLong(I)J
move-result-wide v2
invoke-direct {v0, v2, v3}, Ljava/lang/Long;-><init>(J)V
goto :goto_36
:pswitch_59
new-instance v0, Ljava/lang/Double;
invoke-virtual {p0, v1}, Lorg/objectweb/asm/ClassReader;->readLong(I)J
move-result-wide v2
invoke-static {v2, v3}, Ljava/lang/Double;->longBitsToDouble(J)D
move-result-wide v2
invoke-direct {v0, v2, v3}, Ljava/lang/Double;-><init>(D)V
goto :goto_36
:pswitch_67
invoke-virtual {p0, v1, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lorg/objectweb/asm/Type;->getObjectType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
move-result-object v0
goto :goto_36
:pswitch_70
invoke-virtual {p0, v1, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
goto :goto_36
:pswitch_75
invoke-virtual {p0, v1, p2}, Lorg/objectweb/asm/ClassReader;->readUTF8(I[C)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lorg/objectweb/asm/Type;->getMethodType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
move-result-object v0
goto :goto_36
:pswitch_data_7e
.packed-switch 0x3
:pswitch_37
:pswitch_41
:pswitch_4f
:pswitch_59
:pswitch_67
:pswitch_70
:pswitch_d
:pswitch_d
:pswitch_d
:pswitch_d
:pswitch_d
:pswitch_d
:pswitch_d
:pswitch_75
.end packed-switch
.end method
.method public readInt(I)I
.registers 5
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
aget-byte v1, v0, p1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x18
add-int/lit8 v2, p1, 0x1
aget-byte v2, v0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x10
or-int/2addr v1, v2
add-int/lit8 v2, p1, 0x2
aget-byte v2, v0, v2
and-int/lit16 v2, v2, 0xff
shl-int/lit8 v2, v2, 0x8
or-int/2addr v1, v2
add-int/lit8 v2, p1, 0x3
aget-byte v0, v0, v2
and-int/lit16 v0, v0, 0xff
or-int/2addr v0, v1
return v0
.end method
.method protected readLabel(I[Lorg/objectweb/asm/Label;)Lorg/objectweb/asm/Label;
.registers 4
aget-object v0, p2, p1
if-nez v0, :cond_b
new-instance v0, Lorg/objectweb/asm/Label;
invoke-direct {v0}, Lorg/objectweb/asm/Label;-><init>()V
aput-object v0, p2, p1
:cond_b
aget-object v0, p2, p1
return-object v0
.end method
.method public readLong(I)J
.registers 8
invoke-virtual {p0, p1}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v0
int-to-long v0, v0
add-int/lit8 v2, p1, 0x4
invoke-virtual {p0, v2}, Lorg/objectweb/asm/ClassReader;->readInt(I)I
move-result v2
int-to-long v2, v2
const-wide v4, 0xffffffffL
and-long/2addr v2, v4
const/16 v4, 0x20
shl-long/2addr v0, v4
or-long/2addr v0, v2
return-wide v0
.end method
.method public readShort(I)S
.registers 5
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
aget-byte v1, v0, p1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x8
add-int/lit8 v2, p1, 0x1
aget-byte v0, v0, v2
and-int/lit16 v0, v0, 0xff
or-int/2addr v0, v1
int-to-short v0, v0
return v0
.end method
.method public readUTF8(I[C)Ljava/lang/String;
.registers 7
invoke-virtual {p0, p1}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v1
if-eqz p1, :cond_8
if-nez v1, :cond_a
:cond_8
const/4 v0, 0x0
:cond_9
:goto_9
return-object v0
:cond_a
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->c:[Ljava/lang/String;
aget-object v0, v0, v1
if-nez v0, :cond_9
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->a:[I
aget v0, v0, v1
iget-object v2, p0, Lorg/objectweb/asm/ClassReader;->c:[Ljava/lang/String;
add-int/lit8 v3, v0, 0x2
invoke-virtual {p0, v0}, Lorg/objectweb/asm/ClassReader;->readUnsignedShort(I)I
move-result v0
invoke-direct {p0, v3, v0, p2}, Lorg/objectweb/asm/ClassReader;->a(II[C)Ljava/lang/String;
move-result-object v0
aput-object v0, v2, v1
goto :goto_9
.end method
.method public readUnsignedShort(I)I
.registers 5
iget-object v0, p0, Lorg/objectweb/asm/ClassReader;->b:[B
aget-byte v1, v0, p1
and-int/lit16 v1, v1, 0xff
shl-int/lit8 v1, v1, 0x8
add-int/lit8 v2, p1, 0x1
aget-byte v0, v0, v2
and-int/lit16 v0, v0, 0xff
or-int/2addr v0, v1
return v0
.end method