1 .class public Lbaksmali/test/class; 2 .super Ljava/lang/Object; 3 4 .source "baksmali_test_class.smali" 5 6 .implements Lsome/interface; 7 .implements Lsome/other/interface; 8 9 10 .annotation build Lsome/annotation; 11 value1 = "test" 12 value2 = .subannotation Lsome/annotation; 13 value1 = "test2" 14 value2 = Lsome/enum; 15 .end subannotation 16 .end annotation 17 18 .annotation system Lsome/annotation; 19 .end annotation 20 21 22 23 .field public static aStaticFieldWithoutAnInitializer:I 24 25 .field public static longStaticField:J = 0x300000000L 26 .field public static longNegStaticField:J = -0x300000000L 27 28 .field public static intStaticField:I = 0x70000000 29 .field public static intNegStaticField:I = -500 30 31 .field public static shortStaticField:S = 500s 32 .field public static shortNegStaticField:S = -500s 33 34 .field public static byteStaticField:B = 123t 35 .field public static byteNegStaticField:B = 0xAAt 36 37 .field public static floatStaticField:F = 3.1415926f 38 39 .field public static doubleStaticField:D = 3.141592653589793 40 41 .field public static charStaticField:C = 'a' 42 .field public static charEscapedStaticField:C = '\n' 43 44 .field public static boolTrueStaticField:Z = true 45 .field public static boolFalseStaticField:Z = false 46 47 .field public static typeStaticField:Ljava/lang/Class; = Lbaksmali/test/class; 48 49 .field public static stringStaticField:Ljava/lang/String; = "test" 50 .field public static stringEscapedStaticField:Ljava/lang/String; = "test\ntest" 51 52 53 .field public static fieldStaticField:Ljava/lang/reflect/Field; = Lbaksmali/test/class;->fieldStaticField:Ljava/lang/reflect/Field; 54 55 .field public static methodStaticField:Ljava/lang/reflect/Method; = Lbaksmali/test/class;->teshMethod(ILjava/lang/String;)Ljava/lang/String; 56 57 .field public static arrayStaticField:[I = {1, 2, 3, {1, 2, 3, 4}} 58 59 .field public static enumStaticField:Lsome/enum; = .enum Lsome/enum;->someEnumValue:Lsome/enum; 60 61 .field public static annotationStaticField:Lsome/annotation; = .subannotation Lsome/annotation; 62 value1 = "test" 63 value2 = .subannotation Lsome/annotation; 64 value1 = "test2" 65 value2 = Lsome/enum; 66 .end subannotation 67 .end subannotation 68 69 .field public static staticFieldWithAnnotation:I 70 .annotation runtime La/field/annotation; 71 this = "is" 72 a = "test" 73 .end annotation 74 .annotation runtime Lorg/junit/Test; 75 .end annotation 76 .end field 77 78 .field public instanceField:Ljava/lang/String; 79 80 81 82 .method public constructor <init>()V 83 .registers 1 84 invoke-direct {p0}, Ljava/lang/Object;-><init>()V 85 return-void 86 .end method 87 88 .method public testMethod(ILjava/lang/String;)Ljava/lang/String; 89 .registers 3 90 .annotation runtime Lorg/junit/Test; 91 .end annotation 92 .annotation system Lyet/another/annotation; 93 somevalue = 1234 94 anothervalue = 3.14159 95 .end annotation 96 97 const-string v0, "testing\n123" 98 99 goto switch: 100 101 sget v0, Lbaksmali/test/class;->staticField:I 102 103 switch: 104 packed-switch v0, pswitch: 105 106 try_start: 107 const/4 v0, 7 108 const v0, 10 109 nop 110 try_end: 111 .catch Ljava/lang/Exception; {try_start: .. try_end:} handler: 112 .catchall {try_start: .. try_end:} handler2: 113 114 handler: 115 116 Label10: 117 Label11: 118 Label12: 119 Label13: 120 return-object v0 121 122 123 124 .array-data 4 125 1 2 3 4 5 6 200 126 .end array-data 127 128 pswitch: 129 .packed-switch 10 130 Label10: 131 Label11: 132 Label12: 133 Label13: 134 .end packed-switch 135 136 handler2: 137 138 return-void 139 140 .end method 141 142 .method public abstract testMethod2()V 143 .annotation runtime Lsome/annotation; 144 subannotation = .subannotation Lsome/other/annotation; 145 value = "value" 146 .end subannotation 147 .end annotation 148 .annotation runtime Lorg/junit/Test; 149 .end annotation 150 .end method 151 152 153 .method public tryTest()V 154 .registers 1 155 156 handler: 157 nop 158 159 160 try_start: 161 const/4 v0, 7 162 const v0, 10 163 nop 164 try_end: 165 .catch Ljava/lang/Exception; {try_start: .. try_end:} handler: 166 .end method 167 168 169 .method public debugTest(IIIII)V 170 .registers 10 171 172 .parameter "Blah" 173 .parameter 174 .parameter "BlahWithAnnotations" 175 .annotation runtime Lsome/annotation; 176 something = "some value" 177 somethingelse = 1234 178 .end annotation 179 .annotation runtime La/second/annotation; 180 .end annotation 181 .end parameter 182 .parameter 183 .annotation runtime Lsome/annotation; 184 something = "some value" 185 somethingelse = 1234 186 .end annotation 187 .end parameter 188 .parameter "LastParam" 189 190 .prologue 191 192 nop 193 nop 194 195 .source "somefile.java" 196 .line 101 197 198 nop 199 200 201 .line 50 202 203 .local v0, aNumber:I 204 const v0, 1234 205 .end local v0 206 207 .source "someotherfile.java" 208 .line 900 209 210 const-string v0, "1234" 211 212 .restart local v0 213 const v0, 6789 214 .end local v0 215 216 .epilogue 217 218 .end method