AnalyzerAdapter.smali
.class public Lorg/objectweb/asm/commons/AnalyzerAdapter;
.super Lorg/objectweb/asm/MethodVisitor;
# static fields
.field static class$org$objectweb$asm$commons$AnalyzerAdapter:Ljava/lang/Class;
# instance fields
.field private labels:Ljava/util/List;
.field public locals:Ljava/util/List;
.field private maxLocals:I
.field private maxStack:I
.field private owner:Ljava/lang/String;
.field public stack:Ljava/util/List;
.field public uninitializedTypes:Ljava/util/Map;
# direct methods
.method static constructor <clinit>()V
.registers 1
const-string v0, "org.objectweb.asm.commons.AnalyzerAdapter"
invoke-static {v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->class$(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
sput-object v0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->class$org$objectweb$asm$commons$AnalyzerAdapter:Ljava/lang/Class;
return-void
.end method
.method protected constructor <init>(ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/MethodVisitor;)V
.registers 11
invoke-direct {p0, p1, p6}, Lorg/objectweb/asm/MethodVisitor;-><init>(ILorg/objectweb/asm/MethodVisitor;)V
iput-object p2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->owner:Ljava/lang/String;
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->uninitializedTypes:Ljava/util/Map;
and-int/lit8 v0, p3, 0x8
if-nez v0, :cond_2d
const-string v0, "<init>"
invoke-virtual {v0, p4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_4c
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
sget-object v1, Lorg/objectweb/asm/Opcodes;->UNINITIALIZED_THIS:Ljava/lang/Integer;
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_2d
:goto_2d
invoke-static {p5}, Lorg/objectweb/asm/Type;->getArgumentTypes(Ljava/lang/String;)[Lorg/objectweb/asm/Type;
move-result-object v1
const/4 v0, 0x0
:goto_32
array-length v2, v1
if-ge v0, v2, :cond_8c
aget-object v2, v1, v0
invoke-virtual {v2}, Lorg/objectweb/asm/Type;->getSort()I
move-result v2
packed-switch v2, :pswitch_data_96
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
aget-object v3, v1, v0
invoke-virtual {v3}, Lorg/objectweb/asm/Type;->getInternalName()Ljava/lang/String;
move-result-object v3
invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:goto_49
add-int/lit8 v0, v0, 0x1
goto :goto_32
:cond_4c
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v0, p2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_2d
:pswitch_52
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
sget-object v3, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_49
:pswitch_5a
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
sget-object v3, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_49
:pswitch_62
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
sget-object v3, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
sget-object v3, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_49
:pswitch_71
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
sget-object v3, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
sget-object v3, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_49
:pswitch_80
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
aget-object v3, v1, v0
invoke-virtual {v3}, Lorg/objectweb/asm/Type;->getDescriptor()Ljava/lang/String;
move-result-object v3
invoke-interface {v2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_49
:cond_8c
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
iput v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxLocals:I
return-void
nop
:pswitch_data_96
.packed-switch 0x1
:pswitch_52
:pswitch_52
:pswitch_52
:pswitch_52
:pswitch_52
:pswitch_5a
:pswitch_62
:pswitch_71
:pswitch_80
.end packed-switch
.end method
.method public constructor <init>(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/MethodVisitor;)V
.registers 13
const/high16 v1, 0x50000
move-object v0, p0
move-object v2, p1
move v3, p2
move-object v4, p3
move-object v5, p4
move-object v6, p5
invoke-direct/range {v0 .. v6}, Lorg/objectweb/asm/commons/AnalyzerAdapter;-><init>(ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/MethodVisitor;)V
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
sget-object v1, Lorg/objectweb/asm/commons/AnalyzerAdapter;->class$org$objectweb$asm$commons$AnalyzerAdapter:Ljava/lang/Class;
if-eq v0, v1, :cond_19
new-instance v0, Ljava/lang/IllegalStateException;
invoke-direct {v0}, Ljava/lang/IllegalStateException;-><init>()V
throw v0
:cond_19
return-void
.end method
.method static class$(Ljava/lang/String;)Ljava/lang/Class;
.registers 3
:try_start_0
invoke-static {p0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
:try_end_3
.catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_3} :catch_5
move-result-object v0
return-object v0
:catch_5
move-exception v0
invoke-virtual {v0}, Ljava/lang/ClassNotFoundException;->getMessage()Ljava/lang/String;
move-result-object v0
new-instance v1, Ljava/lang/NoClassDefFoundError;
invoke-direct {v1, v0}, Ljava/lang/NoClassDefFoundError;-><init>(Ljava/lang/String;)V
throw v1
.end method
.method private doVisitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
.registers 14
const/4 v7, 0x0
const/4 v6, 0x0
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_10
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
move v1, p1
move-object v2, p2
move-object v3, p3
move-object v4, p4
move v5, p5
invoke-virtual/range {v0 .. v5}, Lorg/objectweb/asm/MethodVisitor;->visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
:cond_10
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
if-nez v0, :cond_17
iput-object v7, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
:goto_16
return-void
:cond_17
invoke-direct {p0, p4}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(Ljava/lang/String;)V
const/16 v0, 0xb8
if-eq p1, v0, :cond_6c
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v2
const/16 v0, 0xb7
if-ne p1, v0, :cond_6c
invoke-virtual {p3, v6}, Ljava/lang/String;->charAt(I)C
move-result v0
const/16 v1, 0x3c
if-ne v0, v1, :cond_6c
sget-object v0, Lorg/objectweb/asm/Opcodes;->UNINITIALIZED_THIS:Ljava/lang/Integer;
if-ne v2, v0, :cond_4d
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->owner:Ljava/lang/String;
:goto_34
move v1, v6
:goto_35
iget-object v3, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v3
if-ge v1, v3, :cond_54
iget-object v3, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v3, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
if-ne v3, v2, :cond_4a
iget-object v3, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v3, v1, v0}, Ljava/util/List;->set(ILjava/lang/Object;)Ljava/lang/Object;
:cond_4a
add-int/lit8 v1, v1, 0x1
goto :goto_35
:cond_4d
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->uninitializedTypes:Ljava/util/Map;
invoke-interface {v0, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
goto :goto_34
:cond_54
:goto_54
iget-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
if-ge v6, v1, :cond_6c
iget-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v1, v6}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v1
if-ne v1, v2, :cond_69
iget-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v1, v6, v0}, Ljava/util/List;->set(ILjava/lang/Object;)Ljava/lang/Object;
:cond_69
add-int/lit8 v6, v6, 0x1
goto :goto_54
:cond_6c
invoke-direct {p0, p4}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
iput-object v7, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
goto :goto_16
.end method
.method private execute(IILjava/lang/String;)V
.registers 10
const/4 v5, 0x0
const/4 v4, 0x3
const/4 v3, 0x4
const/4 v1, 0x2
const/4 v2, 0x1
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
if-nez v0, :cond_c
iput-object v5, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
:goto_b
return-void
:cond_c
packed-switch p1, :pswitch_data_2ba
:pswitch_f
invoke-direct {p0, p2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
invoke-direct {p0, p3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
:cond_15
:goto_15
:pswitch_15
iput-object v5, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
goto :goto_b
:pswitch_18
sget-object v0, Lorg/objectweb/asm/Opcodes;->NULL:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_1e
sget-object v0, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_24
sget-object v0, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_2f
sget-object v0, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_35
sget-object v0, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_40
invoke-direct {p0, p2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->get(I)Ljava/lang/Object;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_48
invoke-direct {p0, p2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->get(I)Ljava/lang/Object;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_55
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_5e
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_6c
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_75
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_15
:pswitch_83
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
instance-of v1, v0, Ljava/lang/String;
if-eqz v1, :cond_99
check-cast v0, Ljava/lang/String;
invoke-virtual {v0, v2}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:cond_99
const-string v0, "java/lang/Object"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_a0
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0, p2, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->set(ILjava/lang/Object;)V
if-lez p2, :cond_15
add-int/lit8 v0, p2, -0x1
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->get(I)Ljava/lang/Object;
move-result-object v0
sget-object v1, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
if-eq v0, v1, :cond_b7
sget-object v1, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
if-ne v0, v1, :cond_15
:cond_b7
add-int/lit8 v0, p2, -0x1
sget-object v1, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->set(ILjava/lang/Object;)V
goto/16 :goto_15
:pswitch_c0
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0, p2, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->set(ILjava/lang/Object;)V
add-int/lit8 v0, p2, 0x1
sget-object v1, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->set(ILjava/lang/Object;)V
if-lez p2, :cond_15
add-int/lit8 v0, p2, -0x1
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->get(I)Ljava/lang/Object;
move-result-object v0
sget-object v1, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
if-eq v0, v1, :cond_e1
sget-object v1, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
if-ne v0, v1, :cond_15
:cond_e1
add-int/lit8 v0, p2, -0x1
sget-object v1, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->set(ILjava/lang/Object;)V
goto/16 :goto_15
:pswitch_ea
invoke-direct {p0, v4}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
goto/16 :goto_15
:pswitch_ef
invoke-direct {p0, v3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
goto/16 :goto_15
:pswitch_f4
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
goto/16 :goto_15
:pswitch_f9
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
goto/16 :goto_15
:pswitch_fe
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_10a
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v1
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_11d
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v1
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v2
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_137
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v1
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_14d
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v1
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v2
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_16a
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v1
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v2
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v3
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_18e
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v0
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
move-result-object v1
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_19e
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_1a8
invoke-direct {p0, v3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_1b7
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_1c1
invoke-direct {p0, v3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_1d0
invoke-direct {p0, v4}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_1df
sget-object v0, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-direct {p0, p2, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->set(ILjava/lang/Object;)V
goto/16 :goto_15
:pswitch_1e6
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_1f5
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_1ff
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_20e
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_218
invoke-direct {p0, v3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_222
new-instance v0, Ljava/lang/RuntimeException;
const-string v1, "JSR/RET are not supported"
invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw v0
:pswitch_22a
invoke-direct {p0, p3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_22f
invoke-direct {p0, p3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_234
invoke-direct {p0, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
invoke-direct {p0, p3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_23c
invoke-direct {p0, p3}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(Ljava/lang/String;)V
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
goto/16 :goto_15
:pswitch_244
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
const/4 v1, 0x0
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto/16 :goto_15
:pswitch_250
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
packed-switch p2, :pswitch_data_44e
const-string v0, "[J"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_25d
const-string v0, "[Z"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_264
const-string v0, "[C"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_26b
const-string v0, "[B"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_272
const-string v0, "[S"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_279
const-string v0, "[I"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_280
const-string v0, "[F"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_287
const-string v0, "[D"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_28e
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
new-instance v0, Ljava/lang/StringBuffer;
const-string v1, "["
invoke-direct {v0, v1}, Ljava/lang/StringBuffer;-><init>(Ljava/lang/String;)V
invoke-static {p3}, Lorg/objectweb/asm/Type;->getObjectType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuffer;->append(Ljava/lang/Object;)Ljava/lang/StringBuffer;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
:pswitch_2a9
invoke-direct {p0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop()Ljava/lang/Object;
invoke-static {p3}, Lorg/objectweb/asm/Type;->getObjectType(Ljava/lang/String;)Lorg/objectweb/asm/Type;
move-result-object v0
invoke-virtual {v0}, Lorg/objectweb/asm/Type;->getDescriptor()Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
goto/16 :goto_15
nop
:pswitch_data_2ba
.packed-switch 0x0
:pswitch_15
:pswitch_18
:pswitch_1e
:pswitch_1e
:pswitch_1e
:pswitch_1e
:pswitch_1e
:pswitch_1e
:pswitch_1e
:pswitch_24
:pswitch_24
:pswitch_2f
:pswitch_2f
:pswitch_2f
:pswitch_35
:pswitch_35
:pswitch_1e
:pswitch_1e
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_40
:pswitch_48
:pswitch_40
:pswitch_48
:pswitch_40
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_55
:pswitch_5e
:pswitch_6c
:pswitch_75
:pswitch_83
:pswitch_55
:pswitch_55
:pswitch_55
:pswitch_a0
:pswitch_c0
:pswitch_a0
:pswitch_c0
:pswitch_a0
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_ea
:pswitch_ef
:pswitch_ea
:pswitch_ef
:pswitch_ea
:pswitch_ea
:pswitch_ea
:pswitch_ea
:pswitch_f4
:pswitch_f9
:pswitch_fe
:pswitch_10a
:pswitch_11d
:pswitch_137
:pswitch_14d
:pswitch_16a
:pswitch_18e
:pswitch_19e
:pswitch_1a8
:pswitch_1b7
:pswitch_1c1
:pswitch_19e
:pswitch_1a8
:pswitch_1b7
:pswitch_1c1
:pswitch_19e
:pswitch_1a8
:pswitch_1b7
:pswitch_1c1
:pswitch_19e
:pswitch_1a8
:pswitch_1b7
:pswitch_1c1
:pswitch_19e
:pswitch_1a8
:pswitch_1b7
:pswitch_1c1
:pswitch_15
:pswitch_15
:pswitch_15
:pswitch_15
:pswitch_19e
:pswitch_1d0
:pswitch_19e
:pswitch_1d0
:pswitch_19e
:pswitch_1d0
:pswitch_19e
:pswitch_1a8
:pswitch_19e
:pswitch_1a8
:pswitch_19e
:pswitch_1a8
:pswitch_1df
:pswitch_1e6
:pswitch_1f5
:pswitch_1ff
:pswitch_19e
:pswitch_1b7
:pswitch_75
:pswitch_20e
:pswitch_1e6
:pswitch_1ff
:pswitch_19e
:pswitch_5e
:pswitch_1b7
:pswitch_15
:pswitch_15
:pswitch_15
:pswitch_218
:pswitch_19e
:pswitch_19e
:pswitch_218
:pswitch_218
:pswitch_f4
:pswitch_f4
:pswitch_f4
:pswitch_f4
:pswitch_f4
:pswitch_f4
:pswitch_f9
:pswitch_f9
:pswitch_f9
:pswitch_f9
:pswitch_f9
:pswitch_f9
:pswitch_f9
:pswitch_f9
:pswitch_15
:pswitch_222
:pswitch_222
:pswitch_f4
:pswitch_f4
:pswitch_f4
:pswitch_f9
:pswitch_f4
:pswitch_f9
:pswitch_f4
:pswitch_15
:pswitch_22a
:pswitch_22f
:pswitch_234
:pswitch_23c
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_f
:pswitch_244
:pswitch_250
:pswitch_28e
:pswitch_20e
:pswitch_f4
:pswitch_2a9
:pswitch_20e
:pswitch_f4
:pswitch_f4
:pswitch_f
:pswitch_f
:pswitch_f4
:pswitch_f4
.end packed-switch
:pswitch_data_44e
.packed-switch 0x4
:pswitch_25d
:pswitch_264
:pswitch_280
:pswitch_287
:pswitch_26b
:pswitch_272
:pswitch_279
.end packed-switch
.end method
.method private get(I)Ljava/lang/Object;
.registers 4
iget v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxLocals:I
add-int/lit8 v1, p1, 0x1
invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I
move-result v0
iput v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxLocals:I
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-ge p1, v0, :cond_19
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
:goto_18
return-object v0
:cond_19
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
goto :goto_18
.end method
.method private pop()Ljava/lang/Object;
.registers 3
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
iget-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
add-int/lit8 v1, v1, -0x1
invoke-interface {v0, v1}, Ljava/util/List;->remove(I)Ljava/lang/Object;
move-result-object v0
return-object v0
.end method
.method private pop(I)V
.registers 5
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
sub-int v1, v0, p1
add-int/lit8 v0, v0, -0x1
:goto_a
if-lt v0, v1, :cond_14
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v2, v0}, Ljava/util/List;->remove(I)Ljava/lang/Object;
add-int/lit8 v0, v0, -0x1
goto :goto_a
:cond_14
return-void
.end method
.method private pop(Ljava/lang/String;)V
.registers 6
const/4 v0, 0x0
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v1
const/16 v2, 0x28
if-ne v1, v2, :cond_1f
invoke-static {p1}, Lorg/objectweb/asm/Type;->getArgumentTypes(Ljava/lang/String;)[Lorg/objectweb/asm/Type;
move-result-object v2
move v1, v0
:goto_e
array-length v3, v2
if-ge v0, v3, :cond_1b
aget-object v3, v2, v0
invoke-virtual {v3}, Lorg/objectweb/asm/Type;->getSize()I
move-result v3
add-int/2addr v1, v3
add-int/lit8 v0, v0, 0x1
goto :goto_e
:cond_1b
invoke-direct {p0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
:goto_1e
return-void
:cond_1f
const/16 v0, 0x4a
if-eq v1, v0, :cond_27
const/16 v0, 0x44
if-ne v1, v0, :cond_2c
:cond_27
const/4 v0, 0x2
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
goto :goto_1e
:cond_2c
const/4 v0, 0x1
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(I)V
goto :goto_1e
.end method
.method private push(Ljava/lang/Object;)V
.registers 4
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
iget v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxStack:I
iget-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I
move-result v0
iput v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxStack:I
return-void
.end method
.method private pushDesc(Ljava/lang/String;)V
.registers 5
const/4 v0, 0x0
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v1
const/16 v2, 0x28
if-ne v1, v2, :cond_11
const/16 v0, 0x29
invoke-virtual {p1, v0}, Ljava/lang/String;->indexOf(I)I
move-result v0
add-int/lit8 v0, v0, 0x1
:cond_11
invoke-virtual {p1, v0}, Ljava/lang/String;->charAt(I)C
move-result v1
sparse-switch v1, :sswitch_data_6e
if-nez v0, :cond_5d
const/4 v0, 0x1
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v1
add-int/lit8 v1, v1, -0x1
invoke-virtual {p1, v0, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
:goto_28
:sswitch_28
return-void
:sswitch_29
sget-object v0, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_28
:sswitch_2f
sget-object v0, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_28
:sswitch_35
sget-object v0, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_28
:sswitch_40
sget-object v0, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_28
:sswitch_4b
if-nez v0, :cond_51
invoke-direct {p0, p1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_28
:cond_51
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v1
invoke-virtual {p1, v0, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_28
:cond_5d
add-int/lit8 v0, v0, 0x1
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v1
add-int/lit8 v1, v1, -0x1
invoke-virtual {p1, v0, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_28
nop
:sswitch_data_6e
.sparse-switch
0x42 -> :sswitch_29
0x43 -> :sswitch_29
0x44 -> :sswitch_40
0x46 -> :sswitch_2f
0x49 -> :sswitch_29
0x4a -> :sswitch_35
0x53 -> :sswitch_29
0x56 -> :sswitch_28
0x5a -> :sswitch_29
0x5b -> :sswitch_4b
.end sparse-switch
.end method
.method private set(ILjava/lang/Object;)V
.registers 5
iget v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxLocals:I
add-int/lit8 v1, p1, 0x1
invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I
move-result v0
iput v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxLocals:I
:goto_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-lt p1, v0, :cond_1a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
sget-object v1, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_a
:cond_1a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v0, p1, p2}, Ljava/util/List;->set(ILjava/lang/Object;)Ljava/lang/Object;
return-void
.end method
.method private static visitFrameTypes(I[Ljava/lang/Object;Ljava/util/List;)V
.registers 6
const/4 v0, 0x0
:goto_1
if-ge v0, p0, :cond_18
aget-object v1, p1, v0
invoke-interface {p2, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
sget-object v2, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
if-eq v1, v2, :cond_10
sget-object v2, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
if-ne v1, v2, :cond_15
:cond_10
sget-object v1, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-interface {p2, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_15
add-int/lit8 v0, v0, 0x1
goto :goto_1
:cond_18
return-void
.end method
# virtual methods
.method public visitFieldInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.registers 6
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_9
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2, p3, p4}, Lorg/objectweb/asm/MethodVisitor;->visitFieldInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:cond_9
const/4 v0, 0x0
invoke-direct {p0, p1, v0, p4}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
return-void
.end method
.method public visitFrame(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
.registers 12
const/4 v0, -0x1
if-eq p1, v0, :cond_b
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "ClassReader.accept() should be called with EXPAND_FRAMES flag"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_b
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_19
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
move v1, p1
move v2, p2
move-object v3, p3
move v4, p4
move-object v5, p5
invoke-virtual/range {v0 .. v5}, Lorg/objectweb/asm/MethodVisitor;->visitFrame(II[Ljava/lang/Object;I[Ljava/lang/Object;)V
:cond_19
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
if-eqz v0, :cond_40
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->clear()V
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->clear()V
:goto_27
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
invoke-static {p2, p3, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->visitFrameTypes(I[Ljava/lang/Object;Ljava/util/List;)V
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-static {p4, p5, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->visitFrameTypes(I[Ljava/lang/Object;Ljava/util/List;)V
iget v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxStack:I
iget-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->size()I
move-result v1
invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I
move-result v0
iput v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxStack:I
return-void
:cond_40
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
goto :goto_27
.end method
.method public visitIincInsn(II)V
.registers 5
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_9
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2}, Lorg/objectweb/asm/MethodVisitor;->visitIincInsn(II)V
:cond_9
const/16 v0, 0x84
const/4 v1, 0x0
invoke-direct {p0, v0, p1, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
return-void
.end method
.method public visitInsn(I)V
.registers 4
const/4 v1, 0x0
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1}, Lorg/objectweb/asm/MethodVisitor;->visitInsn(I)V
:cond_a
const/4 v0, 0x0
invoke-direct {p0, p1, v0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
const/16 v0, 0xac
if-lt p1, v0, :cond_16
const/16 v0, 0xb1
if-le p1, v0, :cond_1a
:cond_16
const/16 v0, 0xbf
if-ne p1, v0, :cond_1e
:cond_1a
iput-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
iput-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
:cond_1e
return-void
.end method
.method public visitIntInsn(II)V
.registers 4
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_9
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2}, Lorg/objectweb/asm/MethodVisitor;->visitIntInsn(II)V
:cond_9
const/4 v0, 0x0
invoke-direct {p0, p1, p2, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
return-void
.end method
.method public varargs visitInvokeDynamicInsn(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
.registers 7
const/4 v1, 0x0
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2, p3, p4}, Lorg/objectweb/asm/MethodVisitor;->visitInvokeDynamicInsn(Ljava/lang/String;Ljava/lang/String;Lorg/objectweb/asm/Handle;[Ljava/lang/Object;)V
:cond_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
if-nez v0, :cond_11
iput-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
:goto_10
return-void
:cond_11
invoke-direct {p0, p2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pop(Ljava/lang/String;)V
invoke-direct {p0, p2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->pushDesc(Ljava/lang/String;)V
iput-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
goto :goto_10
.end method
.method public visitJumpInsn(ILorg/objectweb/asm/Label;)V
.registers 5
const/4 v1, 0x0
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2}, Lorg/objectweb/asm/MethodVisitor;->visitJumpInsn(ILorg/objectweb/asm/Label;)V
:cond_a
const/4 v0, 0x0
invoke-direct {p0, p1, v0, v1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
const/16 v0, 0xa7
if-ne p1, v0, :cond_16
iput-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
iput-object v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
:cond_16
return-void
.end method
.method public visitLabel(Lorg/objectweb/asm/Label;)V
.registers 4
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_9
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1}, Lorg/objectweb/asm/MethodVisitor;->visitLabel(Lorg/objectweb/asm/Label;)V
:cond_9
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
if-nez v0, :cond_15
new-instance v0, Ljava/util/ArrayList;
const/4 v1, 0x3
invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(I)V
iput-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
:cond_15
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
return-void
.end method
.method public visitLdcInsn(Ljava/lang/Object;)V
.registers 5
const/4 v2, 0x0
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1}, Lorg/objectweb/asm/MethodVisitor;->visitLdcInsn(Ljava/lang/Object;)V
:cond_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
if-nez v0, :cond_11
iput-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
:goto_10
return-void
:cond_11
instance-of v0, p1, Ljava/lang/Integer;
if-eqz v0, :cond_1d
sget-object v0, Lorg/objectweb/asm/Opcodes;->INTEGER:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
:goto_1a
iput-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
goto :goto_10
:cond_1d
instance-of v0, p1, Ljava/lang/Long;
if-eqz v0, :cond_2c
sget-object v0, Lorg/objectweb/asm/Opcodes;->LONG:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_1a
:cond_2c
instance-of v0, p1, Ljava/lang/Float;
if-eqz v0, :cond_36
sget-object v0, Lorg/objectweb/asm/Opcodes;->FLOAT:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_1a
:cond_36
instance-of v0, p1, Ljava/lang/Double;
if-eqz v0, :cond_45
sget-object v0, Lorg/objectweb/asm/Opcodes;->DOUBLE:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
sget-object v0, Lorg/objectweb/asm/Opcodes;->TOP:Ljava/lang/Integer;
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_1a
:cond_45
instance-of v0, p1, Ljava/lang/String;
if-eqz v0, :cond_4f
const-string v0, "java/lang/String"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_1a
:cond_4f
instance-of v0, p1, Lorg/objectweb/asm/Type;
if-eqz v0, :cond_77
check-cast p1, Lorg/objectweb/asm/Type;
invoke-virtual {p1}, Lorg/objectweb/asm/Type;->getSort()I
move-result v0
const/16 v1, 0xa
if-eq v0, v1, :cond_61
const/16 v1, 0x9
if-ne v0, v1, :cond_67
:cond_61
const-string v0, "java/lang/Class"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_1a
:cond_67
const/16 v1, 0xb
if-ne v0, v1, :cond_71
const-string v0, "java/lang/invoke/MethodType"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_1a
:cond_71
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-direct {v0}, Ljava/lang/IllegalArgumentException;-><init>()V
throw v0
:cond_77
instance-of v0, p1, Lorg/objectweb/asm/Handle;
if-eqz v0, :cond_81
const-string v0, "java/lang/invoke/MethodHandle"
invoke-direct {p0, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->push(Ljava/lang/Object;)V
goto :goto_1a
:cond_81
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-direct {v0}, Ljava/lang/IllegalArgumentException;-><init>()V
throw v0
.end method
.method public visitLookupSwitchInsn(Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
.registers 7
const/4 v2, 0x0
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2, p3}, Lorg/objectweb/asm/MethodVisitor;->visitLookupSwitchInsn(Lorg/objectweb/asm/Label;[I[Lorg/objectweb/asm/Label;)V
:cond_a
const/16 v0, 0xab
const/4 v1, 0x0
invoke-direct {p0, v0, v1, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
iput-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
iput-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
return-void
.end method
.method public visitMaxs(II)V
.registers 6
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_1d
iget v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxStack:I
invoke-static {v0, p1}, Ljava/lang/Math;->max(II)I
move-result v0
iput v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxStack:I
iget v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxLocals:I
invoke-static {v0, p2}, Ljava/lang/Math;->max(II)I
move-result v0
iput v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxLocals:I
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
iget v1, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxStack:I
iget v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->maxLocals:I
invoke-virtual {v0, v1, v2}, Lorg/objectweb/asm/MethodVisitor;->visitMaxs(II)V
:cond_1d
return-void
.end method
.method public visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.registers 11
iget v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->api:I
const/high16 v1, 0x50000
if-lt v0, v1, :cond_a
invoke-super {p0, p1, p2, p3, p4}, Lorg/objectweb/asm/MethodVisitor;->visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:goto_9
return-void
:cond_a
const/16 v0, 0xb9
if-ne p1, v0, :cond_18
const/4 v5, 0x1
:goto_f
move-object v0, p0
move v1, p1
move-object v2, p2
move-object v3, p3
move-object v4, p4
invoke-direct/range {v0 .. v5}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->doVisitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
goto :goto_9
:cond_18
const/4 v5, 0x0
goto :goto_f
.end method
.method public visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
.registers 8
iget v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->api:I
const/high16 v1, 0x50000
if-ge v0, v1, :cond_a
invoke-super/range {p0 .. p5}, Lorg/objectweb/asm/MethodVisitor;->visitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
:goto_9
return-void
:cond_a
invoke-direct/range {p0 .. p5}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->doVisitMethodInsn(ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
goto :goto_9
.end method
.method public visitMultiANewArrayInsn(Ljava/lang/String;I)V
.registers 4
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_9
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2}, Lorg/objectweb/asm/MethodVisitor;->visitMultiANewArrayInsn(Ljava/lang/String;I)V
:cond_9
const/16 v0, 0xc5
invoke-direct {p0, v0, p2, p1}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
return-void
.end method
.method public varargs visitTableSwitchInsn(IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
.registers 8
const/4 v2, 0x0
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_a
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2, p3, p4}, Lorg/objectweb/asm/MethodVisitor;->visitTableSwitchInsn(IILorg/objectweb/asm/Label;[Lorg/objectweb/asm/Label;)V
:cond_a
const/16 v0, 0xaa
const/4 v1, 0x0
invoke-direct {p0, v0, v1, v2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
iput-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->locals:Ljava/util/List;
iput-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->stack:Ljava/util/List;
return-void
.end method
.method public visitTypeInsn(ILjava/lang/String;)V
.registers 7
const/4 v1, 0x0
const/16 v0, 0xbb
if-ne p1, v0, :cond_3b
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
if-nez v0, :cond_24
new-instance v0, Lorg/objectweb/asm/Label;
invoke-direct {v0}, Lorg/objectweb/asm/Label;-><init>()V
new-instance v2, Ljava/util/ArrayList;
const/4 v3, 0x3
invoke-direct {v2, v3}, Ljava/util/ArrayList;-><init>(I)V
iput-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
invoke-interface {v2, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v2, :cond_24
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v2, v0}, Lorg/objectweb/asm/MethodVisitor;->visitLabel(Lorg/objectweb/asm/Label;)V
:cond_24
move v0, v1
:goto_25
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
if-ge v0, v2, :cond_3b
iget-object v2, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->uninitializedTypes:Ljava/util/Map;
iget-object v3, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->labels:Ljava/util/List;
invoke-interface {v3, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
invoke-interface {v2, v3, p2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
add-int/lit8 v0, v0, 0x1
goto :goto_25
:cond_3b
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_44
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2}, Lorg/objectweb/asm/MethodVisitor;->visitTypeInsn(ILjava/lang/String;)V
:cond_44
invoke-direct {p0, p1, v1, p2}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
return-void
.end method
.method public visitVarInsn(II)V
.registers 4
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
if-eqz v0, :cond_9
iget-object v0, p0, Lorg/objectweb/asm/commons/AnalyzerAdapter;->mv:Lorg/objectweb/asm/MethodVisitor;
invoke-virtual {v0, p1, p2}, Lorg/objectweb/asm/MethodVisitor;->visitVarInsn(II)V
:cond_9
const/4 v0, 0x0
invoke-direct {p0, p1, p2, v0}, Lorg/objectweb/asm/commons/AnalyzerAdapter;->execute(IILjava/lang/String;)V
return-void
.end method