public class org.jf.smali.Smali
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jf.smali.Smali
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jf/smali/Smali;
public static boolean assemble(org.jf.smali.SmaliOptions, java.lang.String[]);
descriptor: (Lorg/jf/smali/SmaliOptions;[Ljava/lang/String;)Z
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokestatic org.jf.smali.Smali.assemble:(Lorg/jf/smali/SmaliOptions;Ljava/util/List;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 options Lorg/jf/smali/SmaliOptions;
0 1 1 input [Ljava/lang/String;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
options final
input
public static boolean assemble(org.jf.smali.SmaliOptions, java.util.List<java.lang.String>);
descriptor: (Lorg/jf/smali/SmaliOptions;Ljava/util/List;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=7, locals=10, args_size=2
start local 0 start local 1 0: new java.util.TreeSet
dup
invokespecial java.util.TreeSet.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 11
StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 3: new java.io.File
dup
aload 3
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 5
start local 5 4: aload 5
invokevirtual java.io.File.exists:()Z
ifne 6
5: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Cannot find file or directory \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet java.lang.String java.util.Iterator java.io.File
StackMap stack:
aload 5
invokevirtual java.io.File.isDirectory:()Z
ifeq 9
7: aload 5
aload 2
invokestatic org.jf.smali.Smali.getSmaliFilesInDir:(Ljava/io/File;Ljava/util/Set;)V
8: goto 11
StackMap locals:
StackMap stack:
9: aload 5
invokevirtual java.io.File.isFile:()Z
ifeq 11
10: aload 2
aload 5
invokevirtual java.util.TreeSet.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 3 11: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
12: iconst_0
istore 3
start local 3 13: new org.jf.dexlib2.writer.builder.DexBuilder
dup
aload 0
getfield org.jf.smali.SmaliOptions.apiLevel:I
invokestatic org.jf.dexlib2.Opcodes.forApi:(I)Lorg/jf/dexlib2/Opcodes;
invokespecial org.jf.dexlib2.writer.builder.DexBuilder.<init>:(Lorg/jf/dexlib2/Opcodes;)V
astore 4
start local 4 14: aload 0
getfield org.jf.smali.SmaliOptions.jobs:I
invokestatic java.util.concurrent.Executors.newFixedThreadPool:(I)Ljava/util/concurrent/ExecutorService;
astore 5
start local 5 15: invokestatic com.google.common.collect.Lists.newArrayList:()Ljava/util/ArrayList;
astore 6
start local 6 16: aload 2
invokevirtual java.util.TreeSet.iterator:()Ljava/util/Iterator;
astore 8
goto 19
StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int org.jf.dexlib2.writer.builder.DexBuilder java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
StackMap stack:
17: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.io.File
astore 7
start local 7 18: aload 6
aload 5
new org.jf.smali.Smali$1
dup
aload 7
aload 4
aload 0
invokespecial org.jf.smali.Smali$1.<init>:(Ljava/io/File;Lorg/jf/dexlib2/writer/builder/DexBuilder;Lorg/jf/smali/SmaliOptions;)V
invokeinterface java.util.concurrent.ExecutorService.submit:(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 7 19: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
20: aload 6
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 29
StackMap locals:
StackMap stack:
21: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.concurrent.Future
astore 7
start local 7 22: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int org.jf.dexlib2.writer.builder.DexBuilder java.util.concurrent.ExecutorService java.util.List java.util.concurrent.Future java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.concurrent.Future.get:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifne 29
23: iconst_1
istore 3
24: goto 29
StackMap locals:
StackMap stack: java.util.concurrent.ExecutionException
25: astore 9
start local 9 26: new java.lang.RuntimeException
dup
aload 9
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 9 27: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
28: goto 22
end local 7 29: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int org.jf.dexlib2.writer.builder.DexBuilder java.util.concurrent.ExecutorService java.util.List top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
30: aload 5
invokeinterface java.util.concurrent.ExecutorService.shutdown:()V
31: iload 3
ifeq 33
32: iconst_0
ireturn
33: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int org.jf.dexlib2.writer.builder.DexBuilder java.util.concurrent.ExecutorService java.util.List
StackMap stack:
aload 4
new org.jf.dexlib2.writer.io.FileDataStore
dup
new java.io.File
dup
aload 0
getfield org.jf.smali.SmaliOptions.outputDexFile:Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokespecial org.jf.dexlib2.writer.io.FileDataStore.<init>:(Ljava/io/File;)V
invokevirtual org.jf.dexlib2.writer.builder.DexBuilder.writeTo:(Lorg/jf/dexlib2/writer/io/DexDataStore;)V
34: iconst_1
ireturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 options Lorg/jf/smali/SmaliOptions;
0 35 1 input Ljava/util/List<Ljava/lang/String;>;
1 35 2 filesToProcessSet Ljava/util/TreeSet<Ljava/io/File;>;
3 11 3 fileToProcess Ljava/lang/String;
4 11 5 argFile Ljava/io/File;
13 35 3 errors Z
14 35 4 dexBuilder Lorg/jf/dexlib2/writer/builder/DexBuilder;
15 35 5 executor Ljava/util/concurrent/ExecutorService;
16 35 6 tasks Ljava/util/List<Ljava/util/concurrent/Future<Ljava/lang/Boolean;>;>;
18 19 7 file Ljava/io/File;
22 29 7 task Ljava/util/concurrent/Future<Ljava/lang/Boolean;>;
26 27 9 ex Ljava/util/concurrent/ExecutionException;
Exception table:
from to target type
22 24 25 Class java.util.concurrent.ExecutionException
22 27 27 Class java.lang.InterruptedException
Exceptions:
throws java.io.IOException
Signature: (Lorg/jf/smali/SmaliOptions;Ljava/util/List<Ljava/lang/String;>;)Z
MethodParameters:
Name Flags
options final
input
public static boolean printTokens(org.jf.smali.SmaliOptions, java.util.List<java.lang.String>);
descriptor: (Lorg/jf/smali/SmaliOptions;Ljava/util/List;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: new java.util.TreeSet
dup
invokespecial java.util.TreeSet.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 11
StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 3: new java.io.File
dup
aload 3
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 5
start local 5 4: aload 5
invokevirtual java.io.File.exists:()Z
ifne 6
5: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "Cannot find file or directory \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet java.lang.String java.util.Iterator java.io.File
StackMap stack:
aload 5
invokevirtual java.io.File.isDirectory:()Z
ifeq 9
7: aload 5
aload 2
invokestatic org.jf.smali.Smali.getSmaliFilesInDir:(Ljava/io/File;Ljava/util/Set;)V
8: goto 11
StackMap locals:
StackMap stack:
9: aload 5
invokevirtual java.io.File.isFile:()Z
ifeq 11
10: aload 2
aload 5
invokevirtual java.util.TreeSet.add:(Ljava/lang/Object;)Z
pop
end local 5 end local 3 11: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
12: iconst_0
istore 3
start local 3 13: aload 2
invokevirtual java.util.TreeSet.iterator:()Ljava/util/Iterator;
astore 5
goto 21
StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int top java.util.Iterator
StackMap stack:
14: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.io.File
astore 4
start local 4 15: iload 3
aload 4
aload 0
invokestatic org.jf.smali.Smali.printTokensForSingleFile:(Ljava/io/File;Lorg/jf/smali/SmaliOptions;)Z
ifeq 16
iconst_0
goto 17
StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int java.io.File java.util.Iterator
StackMap stack: int
16: iconst_1
StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int java.io.File java.util.Iterator
StackMap stack: int int
17: ior
istore 3
18: goto 21
StackMap locals:
StackMap stack: java.lang.Exception
19: astore 6
start local 6 20: new java.lang.RuntimeException
dup
aload 6
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 6 end local 4 21: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 14
22: iload 3
ifeq 24
23: iconst_0
ireturn
24: StackMap locals: org.jf.smali.SmaliOptions java.util.List java.util.TreeSet int
StackMap stack:
iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 options Lorg/jf/smali/SmaliOptions;
0 25 1 input Ljava/util/List<Ljava/lang/String;>;
1 25 2 filesToProcessSet Ljava/util/TreeSet<Ljava/io/File;>;
3 11 3 fileToProcess Ljava/lang/String;
4 11 5 argFile Ljava/io/File;
13 25 3 errors Z
15 21 4 file Ljava/io/File;
20 21 6 ex Ljava/lang/Exception;
Exception table:
from to target type
15 18 19 Class java.lang.Exception
Exceptions:
throws java.io.IOException
Signature: (Lorg/jf/smali/SmaliOptions;Ljava/util/List<Ljava/lang/String;>;)Z
MethodParameters:
Name Flags
options final
input
private static void getSmaliFilesInDir(java.io.File, java.util.Set<java.io.File>);
descriptor: (Ljava/io/File;Ljava/util/Set;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.io.File.listFiles:()[Ljava/io/File;
astore 2
start local 2 1: aload 2
ifnull 11
2: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 10
StackMap locals: java.io.File java.util.Set java.io.File[] top int int java.io.File[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 3
invokevirtual java.io.File.isDirectory:()Z
ifeq 7
5: aload 3
aload 1
invokestatic org.jf.smali.Smali.getSmaliFilesInDir:(Ljava/io/File;Ljava/util/Set;)V
6: goto 9
StackMap locals: java.io.File java.util.Set java.io.File[] java.io.File int int java.io.File[]
StackMap stack:
7: aload 3
invokevirtual java.io.File.getName:()Ljava/lang/String;
ldc ".smali"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 9
8: aload 1
aload 3
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 3 9: StackMap locals: java.io.File java.util.Set java.io.File[] top int int java.io.File[]
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
10: iload 4
iload 5
if_icmplt 3
11: StackMap locals: java.io.File java.util.Set java.io.File[]
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 dir Ljava/io/File;
0 12 1 smaliFiles Ljava/util/Set<Ljava/io/File;>;
1 12 2 files [Ljava/io/File;
4 9 3 file Ljava/io/File;
Signature: (Ljava/io/File;Ljava/util/Set<Ljava/io/File;>;)V
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
javax.annotation.Nonnull()
METHOD_FORMAL_PARAMETER
javax.annotation.Nonnull()
RuntimeVisibleParameterAnnotations:
0:
javax.annotation.Nonnull()
1:
javax.annotation.Nonnull()
MethodParameters:
Name Flags
dir
smaliFiles
private static boolean assembleSmaliFile(java.io.File, org.jf.dexlib2.writer.builder.DexBuilder, org.jf.smali.SmaliOptions);
descriptor: (Ljava/io/File;Lorg/jf/dexlib2/writer/builder/DexBuilder;Lorg/jf/smali/SmaliOptions;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: new java.io.FileInputStream
dup
aload 0
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 3
2: new java.io.InputStreamReader
dup
aload 3
ldc "UTF-8"
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
astore 4
start local 4 3: new org.jf.smali.smaliFlexLexer
dup
aload 4
aload 2
getfield org.jf.smali.SmaliOptions.apiLevel:I
invokespecial org.jf.smali.smaliFlexLexer.<init>:(Ljava/io/Reader;I)V
astore 5
start local 5 4: aload 5
checkcast org.jf.smali.smaliFlexLexer
aload 0
invokevirtual org.jf.smali.smaliFlexLexer.setSourceFile:(Ljava/io/File;)V
5: new org.antlr.runtime.CommonTokenStream
dup
aload 5
checkcast org.antlr.runtime.TokenSource
invokespecial org.antlr.runtime.CommonTokenStream.<init>:(Lorg/antlr/runtime/TokenSource;)V
astore 6
start local 6 6: aload 2
getfield org.jf.smali.SmaliOptions.printTokens:Z
ifeq 21
7: aload 6
invokevirtual org.antlr.runtime.CommonTokenStream.getTokens:()Ljava/util/List;
pop
8: iconst_0
istore 7
start local 7 9: goto 19
10: StackMap locals: java.io.File org.jf.dexlib2.writer.builder.DexBuilder org.jf.smali.SmaliOptions java.io.FileInputStream java.io.InputStreamReader org.jf.smali.LexerErrorInterface org.antlr.runtime.CommonTokenStream int
StackMap stack:
aload 6
iload 7
invokevirtual org.antlr.runtime.CommonTokenStream.get:(I)Lorg/antlr/runtime/Token;
astore 8
start local 8 11: aload 8
invokeinterface org.antlr.runtime.Token.getChannel:()I
bipush 99
if_icmpne 13
12: goto 18
13: StackMap locals: org.antlr.runtime.Token
StackMap stack:
aload 8
invokeinterface org.antlr.runtime.Token.getType:()I
iconst_m1
if_icmpne 16
14: ldc "EOF"
astore 9
start local 9 15: goto 17
end local 9 16: StackMap locals:
StackMap stack:
getstatic org.jf.smali.smaliParser.tokenNames:[Ljava/lang/String;
aload 8
invokeinterface org.antlr.runtime.Token.getType:()I
aaload
astore 9
start local 9 17: StackMap locals: java.lang.String
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
aload 9
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokeinterface org.antlr.runtime.Token.getText:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 9 end local 8 18: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
19: iload 7
aload 6
invokevirtual org.antlr.runtime.CommonTokenStream.size:()I
if_icmplt 10
end local 7 20: getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.flush:()V
21: StackMap locals:
StackMap stack:
new org.jf.smali.smaliParser
dup
aload 6
invokespecial org.jf.smali.smaliParser.<init>:(Lorg/antlr/runtime/TokenStream;)V
astore 7
start local 7 22: aload 7
aload 2
getfield org.jf.smali.SmaliOptions.verboseErrors:Z
invokevirtual org.jf.smali.smaliParser.setVerboseErrors:(Z)V
23: aload 7
aload 2
getfield org.jf.smali.SmaliOptions.allowOdexOpcodes:Z
invokevirtual org.jf.smali.smaliParser.setAllowOdex:(Z)V
24: aload 7
aload 2
getfield org.jf.smali.SmaliOptions.apiLevel:I
invokevirtual org.jf.smali.smaliParser.setApiLevel:(I)V
25: aload 7
invokevirtual org.jf.smali.smaliParser.smali_file:()Lorg/jf/smali/smaliParser$smali_file_return;
astore 8
start local 8 26: aload 7
invokevirtual org.jf.smali.smaliParser.getNumberOfSyntaxErrors:()I
ifgt 27
aload 5
invokeinterface org.jf.smali.LexerErrorInterface.getNumberOfSyntaxErrors:()I
ifle 30
27: StackMap locals: org.jf.smali.smaliParser org.jf.smali.smaliParser$smali_file_return
StackMap stack:
aload 3
ifnull 29
28: aload 3
invokevirtual java.io.FileInputStream.close:()V
29: StackMap locals:
StackMap stack:
iconst_0
ireturn
30: StackMap locals:
StackMap stack:
aload 8
invokevirtual org.jf.smali.smaliParser$smali_file_return.getTree:()Lorg/antlr/runtime/tree/CommonTree;
astore 9
start local 9 31: new org.antlr.runtime.tree.CommonTreeNodeStream
dup
aload 9
invokespecial org.antlr.runtime.tree.CommonTreeNodeStream.<init>:(Ljava/lang/Object;)V
astore 10
start local 10 32: aload 10
aload 6
invokevirtual org.antlr.runtime.tree.CommonTreeNodeStream.setTokenStream:(Lorg/antlr/runtime/TokenStream;)V
33: aload 2
getfield org.jf.smali.SmaliOptions.printTokens:Z
ifeq 35
34: getstatic java.lang.System.out:Ljava/io/PrintStream;
aload 9
invokevirtual org.antlr.runtime.tree.CommonTree.toStringTree:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
35: StackMap locals: org.antlr.runtime.tree.CommonTree org.antlr.runtime.tree.CommonTreeNodeStream
StackMap stack:
new org.jf.smali.smaliTreeWalker
dup
aload 10
invokespecial org.jf.smali.smaliTreeWalker.<init>:(Lorg/antlr/runtime/tree/TreeNodeStream;)V
astore 11
start local 11 36: aload 11
aload 2
getfield org.jf.smali.SmaliOptions.apiLevel:I
invokevirtual org.jf.smali.smaliTreeWalker.setApiLevel:(I)V
37: aload 11
aload 2
getfield org.jf.smali.SmaliOptions.verboseErrors:Z
invokevirtual org.jf.smali.smaliTreeWalker.setVerboseErrors:(Z)V
38: aload 11
aload 1
invokevirtual org.jf.smali.smaliTreeWalker.setDexBuilder:(Lorg/jf/dexlib2/writer/builder/DexBuilder;)V
39: aload 11
invokevirtual org.jf.smali.smaliTreeWalker.smali_file:()Lorg/jf/dexlib2/iface/ClassDef;
pop
40: aload 11
invokevirtual org.jf.smali.smaliTreeWalker.getNumberOfSyntaxErrors:()I
ifne 41
iconst_1
goto 42
StackMap locals: org.jf.smali.smaliTreeWalker
StackMap stack:
41: iconst_0
StackMap locals:
StackMap stack: int
42: istore 13
43: aload 3
ifnull 45
44: aload 3
invokevirtual java.io.FileInputStream.close:()V
45: StackMap locals: java.io.File org.jf.dexlib2.writer.builder.DexBuilder org.jf.smali.SmaliOptions java.io.FileInputStream java.io.InputStreamReader org.jf.smali.LexerErrorInterface org.antlr.runtime.CommonTokenStream org.jf.smali.smaliParser org.jf.smali.smaliParser$smali_file_return org.antlr.runtime.tree.CommonTree org.antlr.runtime.tree.CommonTreeNodeStream org.jf.smali.smaliTreeWalker top int
StackMap stack:
iload 13
ireturn
end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 46: StackMap locals: java.io.File org.jf.dexlib2.writer.builder.DexBuilder org.jf.smali.SmaliOptions java.io.FileInputStream
StackMap stack: java.lang.Throwable
astore 12
47: aload 3
ifnull 49
48: aload 3
invokevirtual java.io.FileInputStream.close:()V
49: StackMap locals: java.io.File org.jf.dexlib2.writer.builder.DexBuilder org.jf.smali.SmaliOptions java.io.FileInputStream top top top top top top top top java.lang.Throwable
StackMap stack:
aload 12
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 50 0 smaliFile Ljava/io/File;
0 50 1 dexBuilder Lorg/jf/dexlib2/writer/builder/DexBuilder;
0 50 2 options Lorg/jf/smali/SmaliOptions;
1 50 3 fis Ljava/io/FileInputStream;
3 46 4 reader Ljava/io/InputStreamReader;
4 46 5 lexer Lorg/jf/smali/LexerErrorInterface;
6 46 6 tokens Lorg/antlr/runtime/CommonTokenStream;
9 20 7 i I
11 18 8 token Lorg/antlr/runtime/Token;
15 16 9 tokenName Ljava/lang/String;
17 18 9 tokenName Ljava/lang/String;
22 46 7 parser Lorg/jf/smali/smaliParser;
26 46 8 result Lorg/jf/smali/smaliParser$smali_file_return;
31 46 9 t Lorg/antlr/runtime/tree/CommonTree;
32 46 10 treeStream Lorg/antlr/runtime/tree/CommonTreeNodeStream;
36 46 11 dexGen Lorg/jf/smali/smaliTreeWalker;
Exception table:
from to target type
1 27 46 any
30 43 46 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
smaliFile
dexBuilder
options
private static boolean printTokensForSingleFile(java.io.File, org.jf.smali.SmaliOptions);
descriptor: (Ljava/io/File;Lorg/jf/smali/SmaliOptions;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=11, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: new java.io.FileInputStream
dup
aload 0
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
astore 2
2: new java.io.InputStreamReader
dup
aload 2
ldc "UTF-8"
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;Ljava/lang/String;)V
astore 3
start local 3 3: new org.jf.smali.smaliFlexLexer
dup
aload 3
aload 1
getfield org.jf.smali.SmaliOptions.apiLevel:I
invokespecial org.jf.smali.smaliFlexLexer.<init>:(Ljava/io/Reader;I)V
astore 4
start local 4 4: aload 4
checkcast org.jf.smali.smaliFlexLexer
aload 0
invokevirtual org.jf.smali.smaliFlexLexer.setSourceFile:(Ljava/io/File;)V
5: new org.antlr.runtime.CommonTokenStream
dup
aload 4
checkcast org.antlr.runtime.TokenSource
invokespecial org.antlr.runtime.CommonTokenStream.<init>:(Lorg/antlr/runtime/TokenSource;)V
astore 5
start local 5 6: aload 5
invokevirtual org.antlr.runtime.CommonTokenStream.fill:()V
7: iconst_0
istore 6
start local 6 8: goto 18
9: StackMap locals: java.io.File org.jf.smali.SmaliOptions java.io.FileInputStream java.io.InputStreamReader org.jf.smali.LexerErrorInterface org.antlr.runtime.CommonTokenStream int
StackMap stack:
aload 5
iload 6
invokevirtual org.antlr.runtime.CommonTokenStream.get:(I)Lorg/antlr/runtime/Token;
astore 7
start local 7 10: aload 7
invokeinterface org.antlr.runtime.Token.getChannel:()I
bipush 99
if_icmpne 12
11: goto 17
12: StackMap locals: org.antlr.runtime.Token
StackMap stack:
aload 7
invokeinterface org.antlr.runtime.Token.getType:()I
iconst_m1
if_icmpne 15
13: ldc "EOF"
astore 8
start local 8 14: goto 16
end local 8 15: StackMap locals:
StackMap stack:
getstatic org.jf.smali.smaliParser.tokenNames:[Ljava/lang/String;
aload 7
invokeinterface org.antlr.runtime.Token.getType:()I
aaload
astore 8
start local 8 16: StackMap locals: java.lang.String
StackMap stack:
getstatic java.lang.System.out:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
aload 8
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "(\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokeinterface org.antlr.runtime.Token.getText:()Ljava/lang/String;
invokestatic org.jf.util.StringUtils.escapeString:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
end local 8 end local 7 17: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
18: iload 6
aload 5
invokevirtual org.antlr.runtime.CommonTokenStream.size:()I
if_icmplt 9
end local 6 19: getstatic java.lang.System.out:Ljava/io/PrintStream;
invokevirtual java.io.PrintStream.flush:()V
20: aload 4
invokeinterface org.jf.smali.LexerErrorInterface.getNumberOfSyntaxErrors:()I
ifne 21
iconst_1
goto 22
StackMap locals:
StackMap stack:
21: iconst_0
StackMap locals:
StackMap stack: int
22: istore 10
23: aload 2
ifnull 25
24: aload 2
invokevirtual java.io.FileInputStream.close:()V
25: StackMap locals: java.io.File org.jf.smali.SmaliOptions java.io.FileInputStream java.io.InputStreamReader org.jf.smali.LexerErrorInterface org.antlr.runtime.CommonTokenStream top top top top int
StackMap stack:
iload 10
ireturn
end local 5 end local 4 end local 3 26: StackMap locals: java.io.File org.jf.smali.SmaliOptions java.io.FileInputStream
StackMap stack: java.lang.Throwable
astore 9
27: aload 2
ifnull 29
28: aload 2
invokevirtual java.io.FileInputStream.close:()V
29: StackMap locals: java.io.File org.jf.smali.SmaliOptions java.io.FileInputStream top top top top top top java.lang.Throwable
StackMap stack:
aload 9
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 smaliFile Ljava/io/File;
0 30 1 options Lorg/jf/smali/SmaliOptions;
1 30 2 fis Ljava/io/FileInputStream;
3 26 3 reader Ljava/io/InputStreamReader;
4 26 4 lexer Lorg/jf/smali/LexerErrorInterface;
6 26 5 tokens Lorg/antlr/runtime/CommonTokenStream;
8 19 6 i I
10 17 7 token Lorg/antlr/runtime/Token;
14 15 8 tokenName Ljava/lang/String;
16 17 8 tokenName Ljava/lang/String;
Exception table:
from to target type
1 23 26 any
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
smaliFile
options
}
SourceFile: "Smali.java"
NestMembers:
org.jf.smali.Smali$1
InnerClasses:
org.jf.smali.Smali$1
public smali_file_return = org.jf.smali.smaliParser$smali_file_return of org.jf.smali.smaliParser