public abstract class android.os.ServiceManagerNative extends android.os.Binder implements android.os.IServiceManager
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: android.os.ServiceManagerNative
  super_class: android.os.Binder
{
  public static android.os.IServiceManager asInterface(android.os.IBinder);
    descriptor: (Landroid/os/IBinder;)Landroid/os/IServiceManager;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // android.os.IBinder obj
         0: .line 35
            aload 0 /* obj */
            ifnonnull 2
         1: .line 36
            aconst_null
            areturn
         2: .line 39
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            ldc "android.os.IServiceManager"
            invokeinterface android.os.IBinder.queryLocalInterface:(Ljava/lang/String;)Landroid/os/IInterface;
            checkcast android.os.IServiceManager
         3: .line 38
            astore 1 /* in */
        start local 1 // android.os.IServiceManager in
         4: .line 40
            aload 1 /* in */
            ifnull 6
         5: .line 41
            aload 1 /* in */
            areturn
         6: .line 44
      StackMap locals: android.os.IServiceManager
      StackMap stack:
            new android.os.ServiceManagerProxy
            dup
            aload 0 /* obj */
            invokespecial android.os.ServiceManagerProxy.<init>:(Landroid/os/IBinder;)V
            areturn
        end local 1 // android.os.IServiceManager in
        end local 0 // android.os.IBinder obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0   obj  Landroid/os/IBinder;
            4    7     1    in  Landroid/os/IServiceManager;
    MethodParameters:
      Name  Flags
      obj   

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.os.ServiceManagerNative this
         0: .line 47
            aload 0 /* this */
            invokespecial android.os.Binder.<init>:()V
         1: .line 49
            aload 0 /* this */
            aload 0 /* this */
            ldc "android.os.IServiceManager"
            invokevirtual android.os.ServiceManagerNative.attachInterface:(Landroid/os/IInterface;Ljava/lang/String;)V
         2: .line 50
            return
        end local 0 // android.os.ServiceManagerNative this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/os/ServiceManagerNative;

  public boolean onTransact(int, android.os.Parcel, android.os.Parcel, int);
    descriptor: (ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // android.os.ServiceManagerNative this
        start local 1 // int code
        start local 2 // android.os.Parcel data
        start local 3 // android.os.Parcel reply
        start local 4 // int flags
         0: .line 55
            iload 1 /* code */
            tableswitch { // 1 - 6
                    1: 1
                    2: 6
                    3: 11
                    4: 20
                    5: 31
                    6: 25
              default: 31
          }
         1: .line 57
      StackMap locals:
      StackMap stack:
            aload 2 /* data */
            ldc "android.os.IServiceManager"
            invokevirtual android.os.Parcel.enforceInterface:(Ljava/lang/String;)V
         2: .line 58
            aload 2 /* data */
            invokevirtual android.os.Parcel.readString:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         3: .line 59
            aload 0 /* this */
            aload 5 /* name */
            invokevirtual android.os.ServiceManagerNative.getService:(Ljava/lang/String;)Landroid/os/IBinder;
            astore 6 /* service */
        start local 6 // android.os.IBinder service
         4: .line 60
            aload 3 /* reply */
            aload 6 /* service */
            invokevirtual android.os.Parcel.writeStrongBinder:(Landroid/os/IBinder;)V
         5: .line 61
            iconst_1
            ireturn
        end local 6 // android.os.IBinder service
        end local 5 // java.lang.String name
         6: .line 65
      StackMap locals:
      StackMap stack:
            aload 2 /* data */
            ldc "android.os.IServiceManager"
            invokevirtual android.os.Parcel.enforceInterface:(Ljava/lang/String;)V
         7: .line 66
            aload 2 /* data */
            invokevirtual android.os.Parcel.readString:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         8: .line 67
            aload 0 /* this */
            aload 5 /* name */
            invokevirtual android.os.ServiceManagerNative.checkService:(Ljava/lang/String;)Landroid/os/IBinder;
            astore 6 /* service */
        start local 6 // android.os.IBinder service
         9: .line 68
            aload 3 /* reply */
            aload 6 /* service */
            invokevirtual android.os.Parcel.writeStrongBinder:(Landroid/os/IBinder;)V
        10: .line 69
            iconst_1
            ireturn
        end local 6 // android.os.IBinder service
        end local 5 // java.lang.String name
        11: .line 73
      StackMap locals:
      StackMap stack:
            aload 2 /* data */
            ldc "android.os.IServiceManager"
            invokevirtual android.os.Parcel.enforceInterface:(Ljava/lang/String;)V
        12: .line 74
            aload 2 /* data */
            invokevirtual android.os.Parcel.readString:()Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
        13: .line 75
            aload 2 /* data */
            invokevirtual android.os.Parcel.readStrongBinder:()Landroid/os/IBinder;
            astore 6 /* service */
        start local 6 // android.os.IBinder service
        14: .line 76
            aload 2 /* data */
            invokevirtual android.os.Parcel.readInt:()I
            ifeq 15
            iconst_1
            goto 16
      StackMap locals: java.lang.String android.os.IBinder
      StackMap stack:
        15: iconst_0
      StackMap locals:
      StackMap stack: int
        16: istore 7 /* allowIsolated */
        start local 7 // boolean allowIsolated
        17: .line 77
            aload 2 /* data */
            invokevirtual android.os.Parcel.readInt:()I
            istore 8 /* dumpPriority */
        start local 8 // int dumpPriority
        18: .line 78
            aload 0 /* this */
            aload 5 /* name */
            aload 6 /* service */
            iload 7 /* allowIsolated */
            iload 8 /* dumpPriority */
            invokevirtual android.os.ServiceManagerNative.addService:(Ljava/lang/String;Landroid/os/IBinder;ZI)V
        19: .line 79
            iconst_1
            ireturn
        end local 8 // int dumpPriority
        end local 7 // boolean allowIsolated
        end local 6 // android.os.IBinder service
        end local 5 // java.lang.String name
        20: .line 83
      StackMap locals:
      StackMap stack:
            aload 2 /* data */
            ldc "android.os.IServiceManager"
            invokevirtual android.os.Parcel.enforceInterface:(Ljava/lang/String;)V
        21: .line 84
            aload 2 /* data */
            invokevirtual android.os.Parcel.readInt:()I
            istore 5 /* dumpPriority */
        start local 5 // int dumpPriority
        22: .line 85
            aload 0 /* this */
            iload 5 /* dumpPriority */
            invokevirtual android.os.ServiceManagerNative.listServices:(I)[Ljava/lang/String;
            astore 6 /* list */
        start local 6 // java.lang.String[] list
        23: .line 86
            aload 3 /* reply */
            aload 6 /* list */
            invokevirtual android.os.Parcel.writeStringArray:([Ljava/lang/String;)V
        24: .line 87
            iconst_1
            ireturn
        end local 6 // java.lang.String[] list
        end local 5 // int dumpPriority
        25: .line 91
      StackMap locals:
      StackMap stack:
            aload 2 /* data */
            ldc "android.os.IServiceManager"
            invokevirtual android.os.Parcel.enforceInterface:(Ljava/lang/String;)V
        26: .line 94
            aload 2 /* data */
            invokevirtual android.os.Parcel.readStrongBinder:()Landroid/os/IBinder;
        27: .line 93
            invokestatic android.os.IPermissionController$Stub.asInterface:(Landroid/os/IBinder;)Landroid/os/IPermissionController;
        28: .line 92
            astore 5 /* controller */
        start local 5 // android.os.IPermissionController controller
        29: .line 95
            aload 0 /* this */
            aload 5 /* controller */
            invokevirtual android.os.ServiceManagerNative.setPermissionController:(Landroid/os/IPermissionController;)V
        30: .line 96
            iconst_1
            ireturn
        end local 5 // android.os.IPermissionController controller
        31: .line 99
      StackMap locals:
      StackMap stack:
            goto 33
      StackMap locals:
      StackMap stack: android.os.RemoteException
        32: pop
        33: .line 102
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 4 // int flags
        end local 3 // android.os.Parcel reply
        end local 2 // android.os.Parcel data
        end local 1 // int code
        end local 0 // android.os.ServiceManagerNative this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   34     0           this  Landroid/os/ServiceManagerNative;
            0   34     1           code  I
            0   34     2           data  Landroid/os/Parcel;
            0   34     3          reply  Landroid/os/Parcel;
            0   34     4          flags  I
            3    6     5           name  Ljava/lang/String;
            4    6     6        service  Landroid/os/IBinder;
            8   11     5           name  Ljava/lang/String;
            9   11     6        service  Landroid/os/IBinder;
           13   20     5           name  Ljava/lang/String;
           14   20     6        service  Landroid/os/IBinder;
           17   20     7  allowIsolated  Z
           18   20     8   dumpPriority  I
           22   25     5   dumpPriority  I
           23   25     6           list  [Ljava/lang/String;
           29   31     5     controller  Landroid/os/IPermissionController;
      Exception table:
        from    to  target  type
           0     5      32  Class android.os.RemoteException
           6    10      32  Class android.os.RemoteException
          11    19      32  Class android.os.RemoteException
          20    24      32  Class android.os.RemoteException
          25    30      32  Class android.os.RemoteException
    MethodParameters:
       Name  Flags
      code   
      data   
      reply  
      flags  

  public android.os.IBinder asBinder();
    descriptor: ()Landroid/os/IBinder;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.os.ServiceManagerNative this
         0: .line 107
            aload 0 /* this */
            areturn
        end local 0 // android.os.ServiceManagerNative this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/os/ServiceManagerNative;
}
SourceFile: "ServiceManagerNative.java"
InnerClasses:
  public abstract Stub = android.os.IPermissionController$Stub of android.os.IPermissionController