2019-12-06 03:29:40 +00:00
.class public abstract L e/i/b/b ;
2019-07-24 11:27:29 +00:00
.super L java/lang/Object ;
.source "ConstructorAccess.java"
# annotations
.annotation system L dalvik/annotation/Signature ;
value = {
"<T:" ,
"Ljava/lang/Object;" ,
">" ,
"Ljava/lang/Object;"
}
.end annotation
# instance fields
2019-12-06 03:29:40 +00:00
.field public a : Z
2019-07-24 11:27:29 +00:00
# direct methods
.method public constructor <init> ( ) V
.locals 0
invoke-direct { p0 } , L java/lang/Object ;-> <init> ( ) V
return-void
.end method
2019-12-06 03:29:40 +00:00
.method public static a ( L java/lang/Class ;) L e/i/b/b ;
2019-07-24 11:27:29 +00:00
.locals 20
.annotation system L dalvik/annotation/Signature ;
value = {
"<T:" ,
"Ljava/lang/Object;" ,
">(" ,
"Ljava/lang/Class<" ,
"TT;>;)" ,
2019-12-06 03:29:40 +00:00
"Le/i/b/b<" ,
2019-07-24 11:27:29 +00:00
"TT;>;"
}
.end annotation
move-object/from16 v1 , p0
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getEnclosingClass ( ) L java/lang/Class ;
move-result-object v0
2019-12-06 03:29:40 +00:00
const/4 v2 , 0x1
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const/4 v3 , 0x0
2019-07-24 11:27:29 +00:00
if-eqz v0 , :cond_0
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> isMemberClass ( ) Z
move-result v4
if-eqz v4 , :cond_0
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getModifiers ( ) I
move-result v4
invoke-static { v4 } , L java/lang/reflect/Modifier ;-> isStatic ( I ) Z
move-result v4
if-nez v4 , :cond_0
const/4 v4 , 0x1
goto :goto_0
:cond_0
const/4 v4 , 0x0
:goto_0
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v5
2019-12-06 03:29:40 +00:00
const-string v6 , "ConstructorAccess"
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
invoke-static { v5 , v6 } , L e/e/b/a/a ;-> a ( L java/lang/String ;L java/lang/String ;) L java/lang/String ;
2019-07-24 11:27:29 +00:00
move-result-object v6
const-string v7 , "java."
invoke-virtual { v6 , v7 } , L java/lang/String ;-> startsWith ( L java/lang/String ;) Z
move-result v7
if-eqz v7 , :cond_1
const-string v7 , "reflectasm."
2019-12-06 03:29:40 +00:00
invoke-static { v7 , v6 } , L e/e/b/a/a ;-> a ( L java/lang/String ;L java/lang/String ;) L java/lang/String ;
2019-07-24 11:27:29 +00:00
move-result-object v6
:cond_1
2019-12-06 03:29:40 +00:00
invoke-static/range { p0 . . p0 } , L e/i/b/a ;-> a ( L java/lang/Class ;) L e/i/b/a ;
2019-07-24 11:27:29 +00:00
move-result-object v7
:try_start_0
2019-12-06 03:29:40 +00:00
invoke-virtual { v7 , v6 } , L java/lang/ClassLoader ;-> loadClass ( L java/lang/String ;) L java/lang/Class ;
2019-07-24 11:27:29 +00:00
move-result-object v0
:try_end_0
.catch L java/lang/ClassNotFoundException ; { :try_start_0 . . :try_end_0 } :catch_0
2019-12-06 03:29:40 +00:00
goto/16 :goto_5
2019-07-24 11:27:29 +00:00
:catch_0
monitor-enter v7
:try_start_1
2019-12-06 03:29:40 +00:00
invoke-virtual { v7 , v6 } , L java/lang/ClassLoader ;-> loadClass ( L java/lang/String ;) L java/lang/Class ;
2019-07-24 11:27:29 +00:00
move-result-object v0
:try_end_1
.catch L java/lang/ClassNotFoundException ; { :try_start_1 . . :try_end_1 } :catch_1
.catchall { :try_start_1 . . :try_end_1 } :catchall_0
2019-12-06 03:29:40 +00:00
goto/16 :goto_4
2019-07-24 11:27:29 +00:00
:catchall_0
move-exception v0
2019-12-06 03:29:40 +00:00
goto/16 :goto_9
2019-07-24 11:27:29 +00:00
:catch_1
const/16 v8 , 0x2f
const/16 v9 , 0x2e
:try_start_2
invoke-virtual { v6 , v9 , v8 } , L java/lang/String ;-> replace ( CC ) L java/lang/String ;
move-result-object v13
invoke-virtual { v5 , v9 , v8 } , L java/lang/String ;-> replace ( CC ) L java/lang/String ;
move-result-object v5
:try_end_2
.catchall { :try_start_2 . . :try_end_2 } :catchall_0
const/4 v10 , 0x0
if-nez v4 , :cond_3
:try_start_3
invoke-virtual { v1 , v10 } , L java/lang/Class ;-> getDeclaredConstructor ( [ L java/lang/Class ;) L java/lang/reflect/Constructor ;
move-result-object v0
invoke-virtual { v0 } , L java/lang/reflect/Constructor ;-> getModifiers ( ) I
move-result v0
:try_end_3
.catch L java/lang/Exception ; { :try_start_3 . . :try_end_3 } :catch_2
.catchall { :try_start_3 . . :try_end_3 } :catchall_0
:try_start_4
invoke-static { v0 } , L java/lang/reflect/Modifier ;-> isPrivate ( I ) Z
move-result v8
if-nez v8 , :cond_2
:goto_1
2019-12-06 03:29:40 +00:00
move v8 , v0
move-object v0 , v10
2019-07-24 11:27:29 +00:00
goto :goto_2
:cond_2
new-instance v0 , L java/lang/RuntimeException ;
new-instance v2 , L java/lang/StringBuilder ;
2019-12-06 03:29:40 +00:00
invoke-direct { v2 } , L java/lang/StringBuilder ;-> <init> ( ) V
2019-07-24 11:27:29 +00:00
const-string v3 , "Class cannot be created (the no-arg constructor is private): "
2019-12-06 03:29:40 +00:00
invoke-virtual { v2 , v3 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
2019-07-24 11:27:29 +00:00
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v1
invoke-virtual { v2 , v1 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual { v2 } , L java/lang/StringBuilder ;-> toString ( ) L java/lang/String ;
move-result-object v1
invoke-direct { v0 , v1 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;) V
throw v0
:catch_2
move-exception v0
new-instance v2 , L java/lang/RuntimeException ;
new-instance v3 , L java/lang/StringBuilder ;
2019-12-06 03:29:40 +00:00
invoke-direct { v3 } , L java/lang/StringBuilder ;-> <init> ( ) V
2019-07-24 11:27:29 +00:00
const-string v4 , "Class cannot be created (missing no-arg constructor): "
2019-12-06 03:29:40 +00:00
invoke-virtual { v3 , v4 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
2019-07-24 11:27:29 +00:00
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v1
invoke-virtual { v3 , v1 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual { v3 } , L java/lang/StringBuilder ;-> toString ( ) L java/lang/String ;
move-result-object v1
invoke-direct { v2 , v1 , v0 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;L java/lang/Throwable ;) V
throw v2
:cond_3
invoke-virtual { v0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v10
invoke-virtual { v10 , v9 , v8 } , L java/lang/String ;-> replace ( CC ) L java/lang/String ;
move-result-object v10
:try_end_4
.catchall { :try_start_4 . . :try_end_4 } :catchall_0
:try_start_5
2019-12-06 03:29:40 +00:00
new-array v8 , v2 , [ L java/lang/Class ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
aput-object v0 , v8 , v3
2019-07-24 11:27:29 +00:00
invoke-virtual { v1 , v8 } , L java/lang/Class ;-> getDeclaredConstructor ( [ L java/lang/Class ;) L java/lang/reflect/Constructor ;
move-result-object v0
invoke-virtual { v0 } , L java/lang/reflect/Constructor ;-> getModifiers ( ) I
move-result v0
:try_end_5
2019-08-30 20:04:20 +00:00
.catch L java/lang/Exception ; { :try_start_5 . . :try_end_5 } :catch_3
2019-07-24 11:27:29 +00:00
.catchall { :try_start_5 . . :try_end_5 } :catchall_0
:try_start_6
invoke-static { v0 } , L java/lang/reflect/Modifier ;-> isPrivate ( I ) Z
move-result v8
2019-12-06 03:29:40 +00:00
if-nez v8 , :cond_c
2019-07-24 11:27:29 +00:00
goto :goto_1
:goto_2
2019-12-06 03:29:40 +00:00
invoke-static { v8 } , L java/lang/reflect/Modifier ;-> isPublic ( I ) Z
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result v8
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-eqz v8 , :cond_4
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const-string v8 , "com/esotericsoftware/reflectasm/PublicConstructorAccess"
2019-07-24 11:27:29 +00:00
goto :goto_3
:cond_4
2019-12-06 03:29:40 +00:00
const-string v8 , "com/esotericsoftware/reflectasm/ConstructorAccess"
2019-07-24 11:27:29 +00:00
:goto_3
2019-12-18 07:41:41 +00:00
new-instance v9 , L s/b/a/g ;
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-direct { v9 , v3 } , L s/b/a/g ;-> <init> ( I ) V
2019-07-24 11:27:29 +00:00
const v11 , 0x3002d
const/16 v12 , 0x21
const/4 v14 , 0x0
const/16 v16 , 0x0
move-object v10 , v9
2019-12-06 03:29:40 +00:00
move-object v15 , v8
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual/range { v10 . . v16 } , L s/b/a/g ;-> a ( II L java/lang/String ;L java/lang/String ;L java/lang/String ;[ L java/lang/String ;) V
2019-07-24 11:27:29 +00:00
const/4 v15 , 0x1
const-string v16 , "<init>"
const-string v17 , "()V"
const/16 v18 , 0x0
const/16 v19 , 0x0
move-object v14 , v9
2019-12-18 07:41:41 +00:00
invoke-virtual/range { v14 . . v19 } , L s/b/a/g ;-> a ( I L java/lang/String ;L java/lang/String ;L java/lang/String ;[ L java/lang/String ;) L s/b/a/s ;
2019-07-24 11:27:29 +00:00
move-result-object v10
2019-12-06 03:29:40 +00:00
move-object v11 , v10
2019-12-18 07:41:41 +00:00
check-cast v11 , L s/b/a/t ;
2019-12-06 03:29:40 +00:00
2019-07-24 11:27:29 +00:00
const/16 v11 , 0x19
2019-12-18 07:41:41 +00:00
invoke-virtual { v10 , v11 , v3 } , L s/b/a/s ;-> d ( II ) V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const-string v11 , "<init>"
2019-07-24 11:27:29 +00:00
const-string v12 , "()V"
const/16 v13 , 0xb7
2019-12-18 07:41:41 +00:00
invoke-virtual { v10 , v13 , v8 , v11 , v12 } , L s/b/a/s ;-> b ( I L java/lang/String ;L java/lang/String ;L java/lang/String ;) V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const/16 v8 , 0xb1
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { v10 , v8 } , L s/b/a/s ;-> a ( I ) V
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { v10 , v2 , v2 } , L s/b/a/s ;-> c ( II ) V
2019-07-24 11:27:29 +00:00
const/4 v15 , 0x1
const-string v16 , "newInstance"
const-string v17 , "()Ljava/lang/Object;"
const/16 v18 , 0x0
const/16 v19 , 0x0
move-object v14 , v9
2019-12-18 07:41:41 +00:00
invoke-virtual/range { v14 . . v19 } , L s/b/a/g ;-> a ( I L java/lang/String ;L java/lang/String ;L java/lang/String ;[ L java/lang/String ;) L s/b/a/s ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result-object v8
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-object v10 , v8
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
check-cast v10 , L s/b/a/t ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const/16 v10 , 0xbb
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { v8 , v10 , v5 } , L s/b/a/s ;-> a ( I L java/lang/String ;) V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const/16 v10 , 0x59
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { v8 , v10 } , L s/b/a/s ;-> a ( I ) V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const-string v10 , "<init>"
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const-string v11 , "()V"
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { v8 , v13 , v5 , v10 , v11 } , L s/b/a/s ;-> b ( I L java/lang/String ;L java/lang/String ;L java/lang/String ;) V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const/16 v10 , 0xb0
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { v8 , v10 } , L s/b/a/s ;-> a ( I ) V
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
const/4 v10 , 0x2
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { v8 , v10 , v2 } , L s/b/a/s ;-> c ( II ) V
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-static { v9 , v5 , v0 } , L e/i/b/b ;-> a ( L s/b/a/g ;L java/lang/String ;L java/lang/String ;) V
2019-07-24 11:27:29 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { v9 } , L s/b/a/g ;-> a ( ) [B
2019-07-24 11:27:29 +00:00
move-result-object v0
2019-12-06 03:29:40 +00:00
invoke-virtual { v7 , v6 , v0 } , L e/i/b/a ;-> a ( L java/lang/String ;[B ) L java/lang/Class ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result-object v0
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:goto_4
monitor-exit v7
:try_end_6
.catchall { :try_start_6 . . :try_end_6 } :catchall_0
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:goto_5
:try_start_7
invoke-virtual { v0 } , L java/lang/Class ;-> newInstance ( ) L java/lang/Object ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result-object v2
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
check-cast v2 , L e/i/b/b ;
:try_end_7
.catchall { :try_start_7 . . :try_end_7 } :catchall_1
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
instance-of v5 , v2 , L e/i/b/e ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-nez v5 , :cond_b
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getPackage ( ) L java/lang/Package ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result-object v5
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
invoke-virtual { v0 } , L java/lang/Class ;-> getPackage ( ) L java/lang/Package ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result-object v6
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-eq v5 , v6 , :cond_5
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
goto :goto_7
2019-07-24 11:27:29 +00:00
:cond_5
2019-12-06 03:29:40 +00:00
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getClassLoader ( ) L java/lang/ClassLoader ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result-object v5
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
invoke-virtual { v0 } , L java/lang/Class ;-> getClassLoader ( ) L java/lang/ClassLoader ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result-object v0
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
invoke-static { } , L java/lang/ClassLoader ;-> getSystemClassLoader ( ) L java/lang/ClassLoader ;
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
move-result-object v6
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-nez v5 , :cond_6
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-eqz v0 , :cond_8
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-ne v0 , v6 , :cond_9
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
goto :goto_6
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:cond_6
if-nez v0 , :cond_7
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
if-ne v5 , v6 , :cond_9
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
goto :goto_6
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:cond_7
if-ne v5 , v0 , :cond_9
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:cond_8
2019-07-24 11:27:29 +00:00
:goto_6
2019-12-06 03:29:40 +00:00
const/4 v3 , 0x1
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:cond_9
:goto_7
if-nez v3 , :cond_b
2019-07-24 11:27:29 +00:00
new-instance v0 , L java/lang/RuntimeException ;
new-instance v2 , L java/lang/StringBuilder ;
invoke-direct { v2 } , L java/lang/StringBuilder ;-> <init> ( ) V
2019-12-06 03:29:40 +00:00
if-nez v4 , :cond_a
2019-07-24 11:27:29 +00:00
const-string v3 , "Class cannot be created (the no-arg constructor is protected or package-protected, and its ConstructorAccess could not be defined in the same class loader): "
2019-12-06 03:29:40 +00:00
goto :goto_8
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
:cond_a
2019-07-24 11:27:29 +00:00
const-string v3 , "Non-static member class cannot be created (the enclosing class constructor is protected or package-protected, and its ConstructorAccess could not be defined in the same class loader): "
2019-12-06 03:29:40 +00:00
:goto_8
2019-07-24 11:27:29 +00:00
invoke-virtual { v2 , v3 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v1
invoke-virtual { v2 , v1 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual { v2 } , L java/lang/StringBuilder ;-> toString ( ) L java/lang/String ;
move-result-object v1
invoke-direct { v0 , v1 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;) V
throw v0
2019-12-06 03:29:40 +00:00
:cond_b
iput-boolean v4 , v2 , L e/i/b/b ;-> a : Z
2019-07-24 11:27:29 +00:00
return-object v2
2019-08-30 20:04:20 +00:00
:catchall_1
2019-07-24 11:27:29 +00:00
move-exception v0
new-instance v1 , L java/lang/RuntimeException ;
2019-12-06 03:29:40 +00:00
const-string v2 , "Exception constructing constructor access class: "
2019-07-24 11:27:29 +00:00
2019-12-06 03:29:40 +00:00
invoke-static { v2 , v6 } , L e/e/b/a/a ;-> a ( L java/lang/String ;L java/lang/String ;) L java/lang/String ;
2019-07-24 11:27:29 +00:00
move-result-object v2
invoke-direct { v1 , v2 , v0 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;L java/lang/Throwable ;) V
throw v1
2019-12-06 03:29:40 +00:00
:cond_c
2019-07-24 11:27:29 +00:00
:try_start_8
new-instance v0 , L java/lang/RuntimeException ;
new-instance v2 , L java/lang/StringBuilder ;
2019-12-06 03:29:40 +00:00
invoke-direct { v2 } , L java/lang/StringBuilder ;-> <init> ( ) V
2019-07-24 11:27:29 +00:00
const-string v3 , "Non-static member class cannot be created (the enclosing class constructor is private): "
2019-12-06 03:29:40 +00:00
invoke-virtual { v2 , v3 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
2019-07-24 11:27:29 +00:00
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v1
invoke-virtual { v2 , v1 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual { v2 } , L java/lang/StringBuilder ;-> toString ( ) L java/lang/String ;
move-result-object v1
invoke-direct { v0 , v1 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;) V
throw v0
2019-08-30 20:04:20 +00:00
:catch_3
2019-07-24 11:27:29 +00:00
move-exception v0
new-instance v2 , L java/lang/RuntimeException ;
new-instance v3 , L java/lang/StringBuilder ;
2019-12-06 03:29:40 +00:00
invoke-direct { v3 } , L java/lang/StringBuilder ;-> <init> ( ) V
2019-07-24 11:27:29 +00:00
const-string v4 , "Non-static member class cannot be created (missing enclosing class constructor): "
2019-12-06 03:29:40 +00:00
invoke-virtual { v3 , v4 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
2019-07-24 11:27:29 +00:00
invoke-virtual/range { p0 . . p0 } , L java/lang/Class ;-> getName ( ) L java/lang/String ;
move-result-object v1
invoke-virtual { v3 , v1 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual { v3 } , L java/lang/StringBuilder ;-> toString ( ) L java/lang/String ;
move-result-object v1
invoke-direct { v2 , v1 , v0 } , L java/lang/RuntimeException ;-> <init> ( L java/lang/String ;L java/lang/Throwable ;) V
throw v2
2019-12-06 03:29:40 +00:00
:goto_9
2019-07-24 11:27:29 +00:00
monitor-exit v7
:try_end_8
.catchall { :try_start_8 . . :try_end_8 } :catchall_0
throw v0
.end method
2019-12-18 07:41:41 +00:00
.method public static a ( L s/b/a/g ;L java/lang/String ;L java/lang/String ;) V
2019-12-06 03:29:40 +00:00
.locals 7
const/4 v1 , 0x1
const-string v2 , "newInstance"
const-string v3 , "(Ljava/lang/Object;)Ljava/lang/Object;"
const/4 v4 , 0x0
const/4 v5 , 0x0
move-object v0 , p0
2019-12-18 07:41:41 +00:00
invoke-virtual/range { v0 . . v5 } , L s/b/a/g ;-> a ( I L java/lang/String ;L java/lang/String ;L java/lang/String ;[ L java/lang/String ;) L s/b/a/s ;
2019-12-06 03:29:40 +00:00
move-result-object p0
move-object v0 , p0
2019-12-18 07:41:41 +00:00
check-cast v0 , L s/b/a/t ;
2019-12-06 03:29:40 +00:00
const/4 v0 , 0x2
const-string v1 , "<init>"
const/16 v2 , 0xb7
const/16 v3 , 0xbb
const/16 v4 , 0x59
if-eqz p2 , :cond_0
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v3 , p1 } , L s/b/a/s ;-> a ( I L java/lang/String ;) V
2019-12-06 03:29:40 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v4 } , L s/b/a/s ;-> a ( I ) V
2019-12-06 03:29:40 +00:00
const/16 v3 , 0x19
const/4 v5 , 0x1
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v3 , v5 } , L s/b/a/s ;-> d ( II ) V
2019-12-06 03:29:40 +00:00
const/16 v3 , 0xc0
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v3 , p2 } , L s/b/a/s ;-> a ( I L java/lang/String ;) V
2019-12-06 03:29:40 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v4 } , L s/b/a/s ;-> a ( I ) V
2019-12-06 03:29:40 +00:00
const/16 v3 , 0xb6
const-string v4 , "java/lang/Object"
const-string v5 , "getClass"
const-string v6 , "()Ljava/lang/Class;"
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v3 , v4 , v5 , v6 } , L s/b/a/s ;-> b ( I L java/lang/String ;L java/lang/String ;L java/lang/String ;) V
2019-12-06 03:29:40 +00:00
const/16 v3 , 0x57
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v3 } , L s/b/a/s ;-> a ( I ) V
2019-12-06 03:29:40 +00:00
new-instance v3 , L java/lang/StringBuilder ;
invoke-direct { v3 } , L java/lang/StringBuilder ;-> <init> ( ) V
const-string v4 , "(L"
invoke-virtual { v3 , v4 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual { v3 , p2 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
const-string p2 , ";)V"
invoke-virtual { v3 , p2 } , L java/lang/StringBuilder ;-> append ( L java/lang/String ;) L java/lang/StringBuilder ;
invoke-virtual { v3 } , L java/lang/StringBuilder ;-> toString ( ) L java/lang/String ;
move-result-object p2
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v2 , p1 , v1 , p2 } , L s/b/a/s ;-> b ( I L java/lang/String ;L java/lang/String ;L java/lang/String ;) V
2019-12-06 03:29:40 +00:00
const/16 p1 , 0xb0
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , p1 } , L s/b/a/s ;-> a ( I ) V
2019-12-06 03:29:40 +00:00
const/4 p1 , 0x4
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , p1 , v0 } , L s/b/a/s ;-> c ( II ) V
2019-12-06 03:29:40 +00:00
goto :goto_0
:cond_0
const-string p1 , "java/lang/UnsupportedOperationException"
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v3 , p1 } , L s/b/a/s ;-> a ( I L java/lang/String ;) V
2019-12-06 03:29:40 +00:00
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v4 } , L s/b/a/s ;-> a ( I ) V
2019-12-06 03:29:40 +00:00
const-string p2 , "Not an inner class."
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , p2 } , L s/b/a/s ;-> a ( L java/lang/Object ;) V
2019-12-06 03:29:40 +00:00
const-string p2 , "(Ljava/lang/String;)V"
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , v2 , p1 , v1 , p2 } , L s/b/a/s ;-> b ( I L java/lang/String ;L java/lang/String ;L java/lang/String ;) V
2019-12-06 03:29:40 +00:00
const/16 p1 , 0xbf
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , p1 } , L s/b/a/s ;-> a ( I ) V
2019-12-06 03:29:40 +00:00
const/4 p1 , 0x3
2019-12-18 07:41:41 +00:00
invoke-virtual { p0 , p1 , v0 } , L s/b/a/s ;-> c ( II ) V
2019-12-06 03:29:40 +00:00
:goto_0
return-void
.end method
2019-07-24 11:27:29 +00:00
# virtual methods
2019-12-06 03:29:40 +00:00
.method public abstract a ( ) L java/lang/Object ;
2019-07-24 11:27:29 +00:00
.annotation system L dalvik/annotation/Signature ;
value = {
"()TT;"
}
.end annotation
.end method