public class com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi extends javax.imageio.spi.ImageReaderSpi
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi
  super_class: javax.imageio.spi.ImageReaderSpi
{
  private static final int MAX_WBMP_WIDTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1024

  private static final int MAX_WBMP_HEIGHT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 768

  private static java.lang.String[] writerSpiNames;
    descriptor: [Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static java.lang.String[] formatNames;
    descriptor: [Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static java.lang.String[] entensions;
    descriptor: [Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static java.lang.String[] mimeType;
    descriptor: [Ljava/lang/String;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private boolean registered;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 44
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "com.sun.imageio.plugins.wbmp.WBMPImageWriterSpi"
            aastore
         1: .line 43
            putstatic com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.writerSpiNames:[Ljava/lang/String;
         2: .line 45
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "wbmp"
            aastore
            dup
            iconst_1
            ldc "WBMP"
            aastore
            putstatic com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.formatNames:[Ljava/lang/String;
         3: .line 46
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "wbmp"
            aastore
            putstatic com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.entensions:[Ljava/lang/String;
         4: .line 47
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "image/vnd.wap.wbmp"
            aastore
            putstatic com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.mimeType:[Ljava/lang/String;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=19, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
         0: .line 52
            aload 0 /* this */
            ldc "Oracle Corporation"
         1: .line 53
            ldc "1.0"
         2: .line 54
            getstatic com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.formatNames:[Ljava/lang/String;
         3: .line 55
            getstatic com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.entensions:[Ljava/lang/String;
         4: .line 56
            getstatic com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.mimeType:[Ljava/lang/String;
         5: .line 57
            ldc "com.sun.imageio.plugins.wbmp.WBMPImageReader"
         6: .line 58
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljavax/imageio/stream/ImageInputStream;
            aastore
         7: .line 59
            getstatic com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.writerSpiNames:[Ljava/lang/String;
         8: .line 60
            iconst_1
         9: .line 61
            aconst_null
            aconst_null
            aconst_null
            aconst_null
        10: .line 62
            iconst_1
        11: .line 63
            ldc "javax_imageio_wbmp_1.0"
        12: .line 64
            ldc "com.sun.imageio.plugins.wbmp.WBMPMetadataFormat"
        13: .line 65
            aconst_null
            aconst_null
            invokespecial javax.imageio.spi.ImageReaderSpi.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Class;[Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;ZLjava/lang/String;Ljava/lang/String;[Ljava/lang/String;[Ljava/lang/String;)V
        14: .line 49
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.registered:Z
        15: .line 66
            return
        end local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lcom/sun/imageio/plugins/wbmp/WBMPImageReaderSpi;

  public void onRegistration(javax.imageio.spi.ServiceRegistry, java.lang.Class<?>);
    descriptor: (Ljavax/imageio/spi/ServiceRegistry;Ljava/lang/Class;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
        start local 1 // javax.imageio.spi.ServiceRegistry registry
        start local 2 // java.lang.Class category
         0: .line 70
            aload 0 /* this */
            getfield com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.registered:Z
            ifeq 2
         1: .line 71
            return
         2: .line 73
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi.registered:Z
         3: .line 74
            return
        end local 2 // java.lang.Class category
        end local 1 // javax.imageio.spi.ServiceRegistry registry
        end local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    4     0      this  Lcom/sun/imageio/plugins/wbmp/WBMPImageReaderSpi;
            0    4     1  registry  Ljavax/imageio/spi/ServiceRegistry;
            0    4     2  category  Ljava/lang/Class<*>;
    Signature: (Ljavax/imageio/spi/ServiceRegistry;Ljava/lang/Class<*>;)V
    MethodParameters:
          Name  Flags
      registry  
      category  

  public java.lang.String getDescription(java.util.Locale);
    descriptor: (Ljava/util/Locale;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
        start local 1 // java.util.Locale locale
         0: .line 77
            ldc "Standard WBMP Image Reader"
            areturn
        end local 1 // java.util.Locale locale
        end local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lcom/sun/imageio/plugins/wbmp/WBMPImageReaderSpi;
            0    1     1  locale  Ljava/util/Locale;
    MethodParameters:
        Name  Flags
      locale  

  public boolean canDecodeInput(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=13, args_size=2
        start local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
        start local 1 // java.lang.Object source
         0: .line 81
            aload 1 /* source */
            instanceof javax.imageio.stream.ImageInputStream
            ifne 2
         1: .line 82
            iconst_0
            ireturn
         2: .line 85
      StackMap locals:
      StackMap stack:
            aload 1 /* source */
            checkcast javax.imageio.stream.ImageInputStream
            astore 2 /* stream */
        start local 2 // javax.imageio.stream.ImageInputStream stream
         3: .line 87
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.mark:()V
         4: .line 89
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readByte:()B
            istore 3 /* type */
        start local 3 // int type
         5: .line 90
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.readByte:()B
            istore 4 /* fixHeaderField */
        start local 4 // int fixHeaderField
         6: .line 92
            iload 3 /* type */
            ifne 7
            iload 4 /* fixHeaderField */
            ifeq 9
         7: .line 122
      StackMap locals: javax.imageio.stream.ImageInputStream int int
      StackMap stack:
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
         8: .line 94
            iconst_0
            ireturn
         9: .line 97
      StackMap locals:
      StackMap stack:
            aload 2 /* stream */
            invokestatic com.sun.imageio.plugins.common.ReaderUtil.readMultiByteInteger:(Ljavax/imageio/stream/ImageInputStream;)I
            istore 5 /* width */
        start local 5 // int width
        10: .line 98
            aload 2 /* stream */
            invokestatic com.sun.imageio.plugins.common.ReaderUtil.readMultiByteInteger:(Ljavax/imageio/stream/ImageInputStream;)I
            istore 6 /* height */
        start local 6 // int height
        11: .line 100
            iload 5 /* width */
            ifle 12
            iload 6 /* height */
            ifgt 14
        12: .line 122
      StackMap locals: int int
      StackMap stack:
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
        13: .line 101
            iconst_0
            ireturn
        14: .line 104
      StackMap locals:
      StackMap stack:
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.length:()J
            lstore 7 /* dataLength */
        start local 7 // long dataLength
        15: .line 105
            lload 7 /* dataLength */
            ldc -1
            lcmp
            ifne 21
        16: .line 113
            iload 5 /* width */
            sipush 1024
            if_icmpge 17
            iload 6 /* height */
            sipush 768
            if_icmpge 17
            iconst_1
            goto 18
      StackMap locals: long
      StackMap stack:
        17: iconst_0
      StackMap locals:
      StackMap stack: int
        18: istore 12
        19: .line 122
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
        20: .line 113
            iload 12
            ireturn
        21: .line 116
      StackMap locals:
      StackMap stack:
            lload 7 /* dataLength */
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
            lsub
            lstore 7 /* dataLength */
        22: .line 118
            iload 5 /* width */
            bipush 8
            idiv
            iload 5 /* width */
            bipush 8
            irem
            ifne 23
            iconst_0
            goto 24
      StackMap locals:
      StackMap stack: int
        23: iconst_1
      StackMap locals: com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi java.lang.Object javax.imageio.stream.ImageInputStream int int int int long
      StackMap stack: int int
        24: iadd
            i2l
            lstore 9 /* scanSize */
        start local 9 // long scanSize
        25: .line 120
            lload 7 /* dataLength */
            lload 9 /* scanSize */
            iload 6 /* height */
            i2l
            lmul
            lcmp
            ifne 26
            iconst_1
            goto 27
      StackMap locals: long
      StackMap stack:
        26: iconst_0
      StackMap locals:
      StackMap stack: int
        27: istore 12
        28: .line 122
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
        29: .line 120
            iload 12
            ireturn
        end local 9 // long scanSize
        end local 7 // long dataLength
        end local 6 // int height
        end local 5 // int width
        end local 4 // int fixHeaderField
        end local 3 // int type
        30: .line 121
      StackMap locals: com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi java.lang.Object javax.imageio.stream.ImageInputStream
      StackMap stack: java.lang.Throwable
            astore 11
        31: .line 122
            aload 2 /* stream */
            invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
        32: .line 123
            aload 11
            athrow
        end local 2 // javax.imageio.stream.ImageInputStream stream
        end local 1 // java.lang.Object source
        end local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   33     0            this  Lcom/sun/imageio/plugins/wbmp/WBMPImageReaderSpi;
            0   33     1          source  Ljava/lang/Object;
            3   33     2          stream  Ljavax/imageio/stream/ImageInputStream;
            5   30     3            type  I
            6   30     4  fixHeaderField  I
           10   30     5           width  I
           11   30     6          height  I
           15   30     7      dataLength  J
           25   30     9        scanSize  J
      Exception table:
        from    to  target  type
           4     7      30  any
           9    12      30  any
          14    19      30  any
          21    28      30  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      source  

  public javax.imageio.ImageReader createReaderInstance(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Ljavax/imageio/ImageReader;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
        start local 1 // java.lang.Object extension
         0: .line 128
            new com.sun.imageio.plugins.wbmp.WBMPImageReader
            dup
            aload 0 /* this */
            invokespecial com.sun.imageio.plugins.wbmp.WBMPImageReader.<init>:(Ljavax/imageio/spi/ImageReaderSpi;)V
            areturn
        end local 1 // java.lang.Object extension
        end local 0 // com.sun.imageio.plugins.wbmp.WBMPImageReaderSpi this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0       this  Lcom/sun/imageio/plugins/wbmp/WBMPImageReaderSpi;
            0    1     1  extension  Ljava/lang/Object;
    Exceptions:
      throws javax.imageio.IIOException
    MethodParameters:
           Name  Flags
      extension  
}
SourceFile: "WBMPImageReaderSpi.java"