public class com.sun.imageio.plugins.bmp.BMPImageReader extends javax.imageio.ImageReader implements com.sun.imageio.plugins.bmp.BMPConstants
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.imageio.plugins.bmp.BMPImageReader
  super_class: javax.imageio.ImageReader
{
  private static final int VERSION_2_1_BIT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  private long bitmapFileSize;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private long bitmapOffset;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private long bitmapStart;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private long compression;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private long imageSize;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private byte[] palette;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

  private int imageType;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int numBands;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

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

  private int bitsPerPixel;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int redMask;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int greenMask;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int blueMask;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int alphaMask;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.awt.image.SampleModel sampleModel;
    descriptor: Ljava/awt/image/SampleModel;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.image.SampleModel originalSampleModel;
    descriptor: Ljava/awt/image/SampleModel;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.image.ColorModel colorModel;
    descriptor: Ljava/awt/image/ColorModel;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.image.ColorModel originalColorModel;
    descriptor: Ljava/awt/image/ColorModel;
    flags: (0x0002) ACC_PRIVATE

  private javax.imageio.stream.ImageInputStream iis;
    descriptor: Ljavax/imageio/stream/ImageInputStream;
    flags: (0x0002) ACC_PRIVATE

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

  private int width;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int height;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Rectangle destinationRegion;
    descriptor: Ljava/awt/Rectangle;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.Rectangle sourceRegion;
    descriptor: Ljava/awt/Rectangle;
    flags: (0x0002) ACC_PRIVATE

  private com.sun.imageio.plugins.bmp.BMPMetadata metadata;
    descriptor: Lcom/sun/imageio/plugins/bmp/BMPMetadata;
    flags: (0x0002) ACC_PRIVATE

  private java.awt.image.BufferedImage bi;
    descriptor: Ljava/awt/image/BufferedImage;
    flags: (0x0002) ACC_PRIVATE

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

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

  private int scaleX;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int scaleY;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int[] sourceBands;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private int[] destBands;
    descriptor: [I
    flags: (0x0002) ACC_PRIVATE

  private static java.lang.Boolean isLinkedProfileDisabled;
    descriptor: Ljava/lang/Boolean;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static java.lang.Boolean isWindowsPlatform;
    descriptor: Ljava/lang/Boolean;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 1938
            aconst_null
            putstatic com.sun.imageio.plugins.bmp.BMPImageReader.isLinkedProfileDisabled:Ljava/lang/Boolean;
         1: .line 1952
            aconst_null
            putstatic com.sun.imageio.plugins.bmp.BMPImageReader.isWindowsPlatform:Ljava/lang/Boolean;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(javax.imageio.spi.ImageReaderSpi);
    descriptor: (Ljavax/imageio/spi/ImageReaderSpi;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // javax.imageio.spi.ImageReaderSpi originator
         0: .line 166
            aload 0 /* this */
            aload 1 /* originator */
            invokespecial javax.imageio.ImageReader.<init>:(Ljavax/imageio/spi/ImageReaderSpi;)V
         1: .line 125
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
         2: .line 128
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.gotHeader:Z
         3: .line 151
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
         4: .line 154
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.seleBand:Z
         5: .line 167
            return
        end local 1 // javax.imageio.spi.ImageReaderSpi originator
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    6     1  originator  Ljavax/imageio/spi/ImageReaderSpi;
    MethodParameters:
            Name  Flags
      originator  

  public void setInput(java.lang.Object, boolean, boolean);
    descriptor: (Ljava/lang/Object;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // java.lang.Object input
        start local 2 // boolean seekForwardOnly
        start local 3 // boolean ignoreMetadata
         0: .line 173
            aload 0 /* this */
            aload 1 /* input */
            iload 2 /* seekForwardOnly */
            iload 3 /* ignoreMetadata */
            invokespecial javax.imageio.ImageReader.setInput:(Ljava/lang/Object;ZZ)V
         1: .line 174
            aload 0 /* this */
            aload 1 /* input */
            checkcast javax.imageio.stream.ImageInputStream
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
         2: .line 175
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            ifnull 4
         3: .line 176
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            getstatic java.nio.ByteOrder.LITTLE_ENDIAN:Ljava/nio/ByteOrder;
            invokeinterface javax.imageio.stream.ImageInputStream.setByteOrder:(Ljava/nio/ByteOrder;)V
         4: .line 177
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.resetHeaderInfo:()V
         5: .line 178
            return
        end local 3 // boolean ignoreMetadata
        end local 2 // boolean seekForwardOnly
        end local 1 // java.lang.Object input
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    6     0             this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    6     1            input  Ljava/lang/Object;
            0    6     2  seekForwardOnly  Z
            0    6     3   ignoreMetadata  Z
    MethodParameters:
                 Name  Flags
      input            
      seekForwardOnly  
      ignoreMetadata   

  public int getNumImages(boolean);
    descriptor: (Z)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // boolean allowSearch
         0: .line 182
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            ifnonnull 2
         1: .line 183
            new java.lang.IllegalStateException
            dup
            ldc "GetNumImages0"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 185
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.seekForwardOnly:Z
            ifeq 4
            iload 1 /* allowSearch */
            ifeq 4
         3: .line 186
            new java.lang.IllegalStateException
            dup
            ldc "GetNumImages1"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 188
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 1 // boolean allowSearch
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    5     1  allowSearch  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      allowSearch  

  public int getWidth(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imageIndex
         0: .line 193
            aload 0 /* this */
            iload 1 /* imageIndex */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.checkIndex:(I)V
         1: .line 195
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readHeader:()V
         2: .line 196
            goto 5
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
         3: astore 2 /* e */
        start local 2 // java.lang.IllegalArgumentException e
         4: .line 197
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader6"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.IllegalArgumentException e
         5: .line 199
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            ireturn
        end local 1 // int imageIndex
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    6     1  imageIndex  I
            4    5     2           e  Ljava/lang/IllegalArgumentException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      imageIndex  

  public int getHeight(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imageIndex
         0: .line 203
            aload 0 /* this */
            iload 1 /* imageIndex */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.checkIndex:(I)V
         1: .line 205
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readHeader:()V
         2: .line 206
            goto 5
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
         3: astore 2 /* e */
        start local 2 // java.lang.IllegalArgumentException e
         4: .line 207
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader6"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.IllegalArgumentException e
         5: .line 209
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            ireturn
        end local 1 // int imageIndex
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    6     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    6     1  imageIndex  I
            4    5     2           e  Ljava/lang/IllegalArgumentException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      imageIndex  

  private void checkIndex(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imageIndex
         0: .line 213
            iload 1 /* imageIndex */
            ifeq 2
         1: .line 214
            new java.lang.IndexOutOfBoundsException
            dup
            ldc "BMPImageReader0"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 216
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int imageIndex
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    3     1  imageIndex  I
    MethodParameters:
            Name  Flags
      imageIndex  

  protected void readHeader();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=11, locals=33, args_size=1
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
         0: .line 230
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.gotHeader:Z
            ifeq 2
         1: .line 231
            return
         2: .line 233
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            ifnonnull 4
         3: .line 234
            new java.lang.IllegalStateException
            dup
            ldc "Input source not set!"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 236
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 1 /* profileData */
        start local 1 // int profileData
         5: iconst_0
            istore 2 /* profileSize */
        start local 2 // int profileSize
         6: .line 238
            aload 0 /* this */
            new com.sun.imageio.plugins.bmp.BMPMetadata
            dup
            invokespecial com.sun.imageio.plugins.bmp.BMPMetadata.<init>:()V
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
         7: .line 239
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.mark:()V
         8: .line 242
            iconst_2
            newarray 8
            astore 3 /* marker */
        start local 3 // byte[] marker
         9: .line 243
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 3 /* marker */
            invokeinterface javax.imageio.stream.ImageInputStream.read:([B)I
            pop
        10: .line 244
            aload 3 /* marker */
            iconst_0
            baload
            bipush 66
            if_icmpne 11
            aload 3 /* marker */
            iconst_1
            baload
            bipush 77
            if_icmpeq 12
        11: .line 245
      StackMap locals: int int byte[]
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "BMPImageReader1"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 248
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapFileSize:J
        13: .line 250
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iconst_4
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        14: .line 253
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapOffset:J
        15: .line 257
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 4 /* size */
        start local 4 // long size
        16: .line 259
            lload 4 /* size */
            ldc 12
            lcmp
            ifne 20
        17: .line 260
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readShort:()S
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
        18: .line 261
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readShort:()S
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
        19: .line 262
            goto 22
        20: .line 263
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
        21: .line 264
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
        22: .line 267
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.width:I
        23: .line 268
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.height:I
        24: .line 270
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
            pop
        25: .line 271
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedShort:()I
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
        26: .line 274
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            i2s
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.bitsPerPixel:S
        27: .line 278
            aload 0 /* this */
            iconst_3
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
        28: .line 280
            lload 4 /* size */
            ldc 12
            lcmp
            ifne 50
        29: .line 282
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            ldc "BMP v. 2.x"
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.bmpVersion:Ljava/lang/String;
        30: .line 285
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            iconst_1
            if_icmpne 33
        31: .line 286
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        32: .line 287
            goto 43
      StackMap locals:
      StackMap stack:
        33: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            iconst_4
            if_icmpne 36
        34: .line 288
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        35: .line 289
            goto 43
      StackMap locals:
      StackMap stack:
        36: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 8
            if_icmpne 39
        37: .line 290
            aload 0 /* this */
            iconst_2
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        38: .line 291
            goto 43
      StackMap locals:
      StackMap stack:
        39: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 24
            if_icmpne 42
        40: .line 292
            aload 0 /* this */
            iconst_3
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        41: .line 293
            goto 43
        42: .line 294
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader8"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        43: .line 298
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapOffset:J
            ldc 14
            lsub
            lload 4 /* size */
            lsub
            ldc 3
            ldiv
            l2i
            istore 6 /* numberOfEntries */
        start local 6 // int numberOfEntries
        44: .line 299
            iload 6 /* numberOfEntries */
            iconst_3
            imul
            istore 7 /* sizeOfPalette */
        start local 7 // int sizeOfPalette
        45: .line 300
            aload 0 /* this */
            iload 7 /* sizeOfPalette */
            newarray 8
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
        46: .line 301
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iconst_0
            iload 7 /* sizeOfPalette */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
        47: .line 302
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.palette:[B
        48: .line 303
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 6 /* numberOfEntries */
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.paletteSize:I
        end local 7 // int sizeOfPalette
        end local 6 // int numberOfEntries
        49: .line 304
            goto 222
        50: .line 305
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
        51: .line 306
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageSize:J
        52: .line 307
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            i2l
            lstore 6 /* xPelsPerMeter */
        start local 6 // long xPelsPerMeter
        53: .line 308
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            i2l
            lstore 8 /* yPelsPerMeter */
        start local 8 // long yPelsPerMeter
        54: .line 309
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 10 /* colorsUsed */
        start local 10 // long colorsUsed
        55: .line 310
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 12 /* colorsImportant */
        start local 12 // long colorsImportant
        56: .line 312
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.compression:I
        57: .line 313
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 6 /* xPelsPerMeter */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.xPixelsPerMeter:I
        58: .line 314
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 8 /* yPelsPerMeter */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.yPixelsPerMeter:I
        59: .line 315
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 10 /* colorsUsed */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.colorsUsed:I
        60: .line 316
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 12 /* colorsImportant */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.colorsImportant:I
        61: .line 318
            lload 4 /* size */
            ldc 40
            lcmp
            ifne 133
        62: .line 320
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            tableswitch { // 0 - 5
                    0: 66
                    1: 66
                    2: 66
                    3: 108
                    4: 63
                    5: 63
              default: 130
          }
        63: .line 324
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long long long long long
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            ldc "BMP v. 3.x"
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.bmpVersion:Ljava/lang/String;
        64: .line 325
            aload 0 /* this */
            bipush 16
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        65: .line 326
            goto 222
        66: .line 333
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapOffset:J
            lload 4 /* size */
            ldc 14
            ladd
            lcmp
            ifge 68
        67: .line 334
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader7"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        68: .line 336
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapOffset:J
            ldc 14
            lsub
            lload 4 /* size */
            lsub
            ldc 4
            ldiv
            l2i
            istore 14 /* numberOfEntries */
        start local 14 // int numberOfEntries
        69: .line 337
            iload 14 /* numberOfEntries */
            iconst_4
            imul
            istore 15 /* sizeOfPalette */
        start local 15 // int sizeOfPalette
        70: .line 338
            aload 0 /* this */
            iload 15 /* sizeOfPalette */
            newarray 8
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
        71: .line 339
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iconst_0
            iload 15 /* sizeOfPalette */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
        72: .line 341
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.palette:[B
        73: .line 342
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 14 /* numberOfEntries */
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.paletteSize:I
        74: .line 344
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            iconst_1
            if_icmpne 77
        75: .line 345
            aload 0 /* this */
            iconst_4
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        76: .line 346
            goto 106
      StackMap locals: int int
      StackMap stack:
        77: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            iconst_4
            if_icmpne 80
        78: .line 347
            aload 0 /* this */
            iconst_5
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        79: .line 348
            goto 106
      StackMap locals:
      StackMap stack:
        80: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 8
            if_icmpne 83
        81: .line 349
            aload 0 /* this */
            bipush 6
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        82: .line 350
            goto 106
      StackMap locals:
      StackMap stack:
        83: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 24
            if_icmpne 86
        84: .line 351
            aload 0 /* this */
            bipush 7
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        85: .line 352
            goto 106
      StackMap locals:
      StackMap stack:
        86: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 16
            if_icmpne 95
        87: .line 353
            aload 0 /* this */
            bipush 8
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        88: .line 355
            aload 0 /* this */
            sipush 31744
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
        89: .line 356
            aload 0 /* this */
            sipush 992
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
        90: .line 357
            aload 0 /* this */
            bipush 31
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
        91: .line 358
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.redMask:I
        92: .line 359
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.greenMask:I
        93: .line 360
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.blueMask:I
        94: .line 361
            goto 106
      StackMap locals:
      StackMap stack:
        95: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 32
            if_icmpne 104
        96: .line 362
            aload 0 /* this */
            bipush 9
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
        97: .line 363
            aload 0 /* this */
            ldc 16711680
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
        98: .line 364
            aload 0 /* this */
            ldc 65280
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
        99: .line 365
            aload 0 /* this */
            sipush 255
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
       100: .line 366
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.redMask:I
       101: .line 367
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.greenMask:I
       102: .line 368
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.blueMask:I
       103: .line 369
            goto 106
       104: .line 371
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader8"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
       105: .line 370
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       106: .line 374
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            ldc "BMP v. 3.x"
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.bmpVersion:Ljava/lang/String;
       107: .line 375
            goto 222
        end local 15 // int sizeOfPalette
        end local 14 // int numberOfEntries
       108: .line 379
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 16
            if_icmpne 111
       109: .line 380
            aload 0 /* this */
            bipush 8
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       110: .line 381
            goto 116
      StackMap locals:
      StackMap stack:
       111: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 32
            if_icmpne 114
       112: .line 382
            aload 0 /* this */
            bipush 9
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       113: .line 383
            goto 116
       114: .line 385
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader8"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
       115: .line 384
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       116: .line 389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
       117: .line 390
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
       118: .line 391
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
       119: .line 392
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.redMask:I
       120: .line 393
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.greenMask:I
       121: .line 394
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.blueMask:I
       122: .line 396
            lload 10 /* colorsUsed */
            lconst_0
            lcmp
            ifeq 128
       123: .line 398
            lload 10 /* colorsUsed */
            l2i
            iconst_4
            imul
            istore 15 /* sizeOfPalette */
        start local 15 // int sizeOfPalette
       124: .line 399
            aload 0 /* this */
            iload 15 /* sizeOfPalette */
            newarray 8
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
       125: .line 400
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iconst_0
            iload 15 /* sizeOfPalette */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
       126: .line 402
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.palette:[B
       127: .line 403
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 10 /* colorsUsed */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.paletteSize:I
        end local 15 // int sizeOfPalette
       128: .line 405
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            ldc "BMP v. 3.x NT"
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.bmpVersion:Ljava/lang/String;
       129: .line 407
            goto 222
       130: .line 410
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader2"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
       131: .line 409
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       132: .line 412
      StackMap locals:
      StackMap stack:
            goto 222
      StackMap locals:
      StackMap stack:
       133: lload 4 /* size */
            ldc 108
            lcmp
            ifeq 134
            lload 4 /* size */
            ldc 124
            lcmp
            ifne 220
       134: .line 414
      StackMap locals:
      StackMap stack:
            lload 4 /* size */
            ldc 108
            lcmp
            ifne 136
       135: .line 415
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            ldc "BMP v. 4.x"
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.bmpVersion:Ljava/lang/String;
            goto 138
       136: .line 416
      StackMap locals:
      StackMap stack:
            lload 4 /* size */
            ldc 124
            lcmp
            ifne 138
       137: .line 417
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            ldc "BMP v. 5.x"
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.bmpVersion:Ljava/lang/String;
       138: .line 420
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
       139: .line 421
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
       140: .line 422
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
       141: .line 424
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.alphaMask:I
       142: .line 425
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 14 /* csType */
        start local 14 // long csType
       143: .line 426
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 16 /* redX */
        start local 16 // int redX
       144: .line 427
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 17 /* redY */
        start local 17 // int redY
       145: .line 428
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 18 /* redZ */
        start local 18 // int redZ
       146: .line 429
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 19 /* greenX */
        start local 19 // int greenX
       147: .line 430
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 20 /* greenY */
        start local 20 // int greenY
       148: .line 431
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 21 /* greenZ */
        start local 21 // int greenZ
       149: .line 432
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 22 /* blueX */
        start local 22 // int blueX
       150: .line 433
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 23 /* blueY */
        start local 23 // int blueY
       151: .line 434
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 24 /* blueZ */
        start local 24 // int blueZ
       152: .line 435
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 25 /* gammaRed */
        start local 25 // long gammaRed
       153: .line 436
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 27 /* gammaGreen */
        start local 27 // long gammaGreen
       154: .line 437
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readUnsignedInt:()J
            lstore 29 /* gammaBlue */
        start local 29 // long gammaBlue
       155: .line 439
            lload 4 /* size */
            ldc 124
            lcmp
            ifne 160
       156: .line 440
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.intent:I
       157: .line 441
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 1 /* profileData */
       158: .line 442
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.readInt:()I
            istore 2 /* profileSize */
       159: .line 443
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iconst_4
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
       160: .line 446
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long long long long long long int int int int int int int int int long long long
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 14 /* csType */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.colorSpace:I
       161: .line 448
            lload 14 /* csType */
            lconst_0
            lcmp
            ifne 174
       162: .line 450
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 16 /* redX */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.redX:D
       163: .line 451
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 17 /* redY */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.redY:D
       164: .line 452
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 18 /* redZ */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.redZ:D
       165: .line 453
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 19 /* greenX */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.greenX:D
       166: .line 454
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 20 /* greenY */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.greenY:D
       167: .line 455
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 21 /* greenZ */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.greenZ:D
       168: .line 456
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 22 /* blueX */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.blueX:D
       169: .line 457
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 23 /* blueY */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.blueY:D
       170: .line 458
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 24 /* blueZ */
            i2d
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.blueZ:D
       171: .line 459
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 25 /* gammaRed */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.gammaRed:I
       172: .line 460
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 27 /* gammaGreen */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.gammaGreen:I
       173: .line 461
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            lload 29 /* gammaBlue */
            l2i
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.gammaBlue:I
       174: .line 465
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapOffset:J
            ldc 14
            lsub
            lload 4 /* size */
            lsub
            ldc 4
            ldiv
            l2i
            istore 31 /* numberOfEntries */
        start local 31 // int numberOfEntries
       175: .line 466
            iload 31 /* numberOfEntries */
            iconst_4
            imul
            istore 32 /* sizeOfPalette */
        start local 32 // int sizeOfPalette
       176: .line 467
            aload 0 /* this */
            iload 32 /* sizeOfPalette */
            newarray 8
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
       177: .line 468
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iconst_0
            iload 32 /* sizeOfPalette */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
       178: .line 469
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.palette:[B
       179: .line 470
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            iload 31 /* numberOfEntries */
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.paletteSize:I
       180: .line 472
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            tableswitch { // 4 - 5
                    4: 181
                    5: 181
              default: 187
          }
       181: .line 475
      StackMap locals: int int
      StackMap stack:
            lload 4 /* size */
            ldc 108
            lcmp
            ifne 184
       182: .line 476
            aload 0 /* this */
            bipush 17
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       183: .line 477
            goto 222
      StackMap locals:
      StackMap stack:
       184: lload 4 /* size */
            ldc 124
            lcmp
            ifne 222
       185: .line 478
            aload 0 /* this */
            bipush 18
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       186: .line 480
            goto 222
       187: .line 482
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            iconst_1
            if_icmpne 190
       188: .line 483
            aload 0 /* this */
            bipush 10
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       189: .line 484
            goto 215
      StackMap locals:
      StackMap stack:
       190: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            iconst_4
            if_icmpne 193
       191: .line 485
            aload 0 /* this */
            bipush 11
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       192: .line 486
            goto 215
      StackMap locals:
      StackMap stack:
       193: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 8
            if_icmpne 196
       194: .line 487
            aload 0 /* this */
            bipush 12
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       195: .line 488
            goto 215
      StackMap locals:
      StackMap stack:
       196: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 16
            if_icmpne 203
       197: .line 489
            aload 0 /* this */
            bipush 13
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       198: .line 490
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            ifne 215
       199: .line 491
            aload 0 /* this */
            sipush 31744
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
       200: .line 492
            aload 0 /* this */
            sipush 992
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
       201: .line 493
            aload 0 /* this */
            bipush 31
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
       202: .line 495
            goto 215
      StackMap locals:
      StackMap stack:
       203: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 24
            if_icmpne 206
       204: .line 496
            aload 0 /* this */
            bipush 14
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       205: .line 497
            goto 215
      StackMap locals:
      StackMap stack:
       206: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 32
            if_icmpne 213
       207: .line 498
            aload 0 /* this */
            bipush 15
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
       208: .line 499
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            ifne 215
       209: .line 500
            aload 0 /* this */
            ldc 16711680
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
       210: .line 501
            aload 0 /* this */
            ldc 65280
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
       211: .line 502
            aload 0 /* this */
            sipush 255
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
       212: .line 504
            goto 215
       213: .line 506
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader8"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
       214: .line 505
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       215: .line 509
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.redMask:I
       216: .line 510
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.greenMask:I
       217: .line 511
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.blueMask:I
       218: .line 512
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.alphaMask:I
            putfield com.sun.imageio.plugins.bmp.BMPMetadata.alphaMask:I
        end local 32 // int sizeOfPalette
        end local 31 // int numberOfEntries
        end local 29 // long gammaBlue
        end local 27 // long gammaGreen
        end local 25 // long gammaRed
        end local 24 // int blueZ
        end local 23 // int blueY
        end local 22 // int blueX
        end local 21 // int greenZ
        end local 20 // int greenY
        end local 19 // int greenX
        end local 18 // int redZ
        end local 17 // int redY
        end local 16 // int redX
        end local 14 // long csType
       219: .line 514
            goto 222
       220: .line 516
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long long long long long
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader3"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
       221: .line 515
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        end local 12 // long colorsImportant
        end local 10 // long colorsUsed
        end local 8 // long yPelsPerMeter
        end local 6 // long xPelsPerMeter
       222: .line 520
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            ifle 225
       223: .line 522
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
       224: .line 523
            goto 227
       225: .line 525
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
       226: .line 526
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            invokestatic java.lang.Math.abs:(I)I
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
       227: .line 531
      StackMap locals:
      StackMap stack:
            sipush 1000
            invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
            astore 6 /* colorSpace */
        start local 6 // java.awt.color.ColorSpace colorSpace
       228: .line 532
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            getfield com.sun.imageio.plugins.bmp.BMPMetadata.colorSpace:I
            iconst_3
            if_icmpeq 230
       229: .line 533
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            getfield com.sun.imageio.plugins.bmp.BMPMetadata.colorSpace:I
            iconst_4
            if_icmpne 247
       230: .line 535
      StackMap locals: java.awt.color.ColorSpace
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.mark:()V
       231: .line 536
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 1 /* profileData */
            i2l
            lload 4 /* size */
            lsub
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(J)J
            pop2
       232: .line 537
            iload 2 /* profileSize */
            newarray 8
            astore 7 /* profile */
        start local 7 // byte[] profile
       233: .line 538
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 7 /* profile */
            iconst_0
            iload 2 /* profileSize */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
       234: .line 539
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
       235: .line 542
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            getfield com.sun.imageio.plugins.bmp.BMPMetadata.colorSpace:I
            iconst_3
            if_icmpne 242
       236: .line 543
            invokestatic com.sun.imageio.plugins.bmp.BMPImageReader.isLinkedProfileAllowed:()Z
            ifeq 242
       237: .line 544
            aload 7 /* profile */
            invokestatic com.sun.imageio.plugins.bmp.BMPImageReader.isUncOrDevicePath:([B)Z
            ifne 242
       238: .line 546
            new java.lang.String
            dup
            aload 7 /* profile */
            ldc "windows-1252"
            invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
            astore 8 /* path */
        start local 8 // java.lang.String path
       239: .line 549
            new java.awt.color.ICC_ColorSpace
            dup
            aload 8 /* path */
            invokestatic java.awt.color.ICC_Profile.getInstance:(Ljava/lang/String;)Ljava/awt/color/ICC_Profile;
            invokespecial java.awt.color.ICC_ColorSpace.<init>:(Ljava/awt/color/ICC_Profile;)V
       240: .line 548
            astore 6 /* colorSpace */
        end local 8 // java.lang.String path
       241: .line 550
            goto 247
       242: .line 552
      StackMap locals: byte[]
      StackMap stack:
            new java.awt.color.ICC_ColorSpace
            dup
            aload 7 /* profile */
            invokestatic java.awt.color.ICC_Profile.getInstance:([B)Ljava/awt/color/ICC_Profile;
            invokespecial java.awt.color.ICC_ColorSpace.<init>:(Ljava/awt/color/ICC_Profile;)V
       243: .line 551
            astore 6 /* colorSpace */
       244: .line 554
            goto 247
      StackMap locals:
      StackMap stack: java.lang.Exception
       245: pop
       246: .line 555
            sipush 1000
            invokestatic java.awt.color.ColorSpace.getInstance:(I)Ljava/awt/color/ColorSpace;
            astore 6 /* colorSpace */
        end local 7 // byte[] profile
       247: .line 559
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            ifeq 249
       248: .line 560
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            ldc 4
            lcmp
            ifeq 249
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            ldc 5
            lcmp
            ifne 252
       249: .line 564
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
       250: .line 565
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
       251: .line 566
            goto 369
      StackMap locals:
      StackMap stack:
       252: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            iconst_1
            if_icmpeq 253
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            iconst_4
            if_icmpeq 253
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 8
            if_icmpne 315
       253: .line 568
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
       254: .line 570
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 8
            if_icmpne 270
       255: .line 571
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            newarray 10
            astore 7 /* bandOffsets */
        start local 7 // int[] bandOffsets
       256: .line 572
            iconst_0
            istore 8 /* i */
        start local 8 // int i
       257: goto 260
       258: .line 573
      StackMap locals: int[] int
      StackMap stack:
            aload 7 /* bandOffsets */
            iload 8 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            iconst_1
            isub
            iload 8 /* i */
            isub
            iastore
       259: .line 572
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
       260: iload 8 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            if_icmplt 258
        end local 8 // int i
       261: .line 575
            aload 0 /* this */
       262: .line 576
            new java.awt.image.PixelInterleavedSampleModel
            dup
            iconst_0
       263: .line 577
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
       264: .line 578
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
       265: .line 579
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
       266: .line 580
            aload 7 /* bandOffsets */
       267: .line 576
            invokespecial java.awt.image.PixelInterleavedSampleModel.<init>:(IIIII[I)V
       268: .line 575
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
        end local 7 // int[] bandOffsets
       269: .line 581
            goto 276
       270: .line 583
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
       271: .line 584
            new java.awt.image.MultiPixelPackedSampleModel
            dup
            iconst_0
       272: .line 585
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
       273: .line 586
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
       274: .line 584
            invokespecial java.awt.image.MultiPixelPackedSampleModel.<init>:(IIII)V
       275: .line 583
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
       276: .line 591
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
            ifeq 279
       277: .line 592
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
            iconst_1
            if_icmpeq 279
       278: .line 593
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
            iconst_2
            if_icmpne 294
       279: .line 596
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            arraylength
            iconst_3
            idiv
            i2l
            lstore 4 /* size */
       280: .line 598
            lload 4 /* size */
            ldc 256
            lcmp
            ifle 282
       281: .line 599
            ldc 256
            lstore 4 /* size */
       282: .line 603
      StackMap locals:
      StackMap stack:
            lload 4 /* size */
            l2i
            newarray 8
            astore 7 /* r */
        start local 7 // byte[] r
       283: .line 604
            lload 4 /* size */
            l2i
            newarray 8
            astore 8 /* g */
        start local 8 // byte[] g
       284: .line 605
            lload 4 /* size */
            l2i
            newarray 8
            astore 9 /* b */
        start local 9 // byte[] b
       285: .line 606
            iconst_0
            istore 11 /* i */
        start local 11 // int i
       286: goto 292
       287: .line 607
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long java.awt.color.ColorSpace byte[] byte[] byte[] top int
      StackMap stack:
            iconst_3
            iload 11 /* i */
            imul
            istore 10 /* off */
        start local 10 // int off
       288: .line 608
            aload 9 /* b */
            iload 11 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iload 10 /* off */
            baload
            bastore
       289: .line 609
            aload 8 /* g */
            iload 11 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iload 10 /* off */
            iconst_1
            iadd
            baload
            bastore
       290: .line 610
            aload 7 /* r */
            iload 11 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iload 10 /* off */
            iconst_2
            iadd
            baload
            bastore
       291: .line 606
            iinc 11 /* i */ 1
        end local 10 // int off
      StackMap locals:
      StackMap stack:
       292: iload 11 /* i */
            lload 4 /* size */
            l2i
            if_icmplt 287
        end local 11 // int i
       293: .line 612
            goto 308
        end local 9 // byte[] b
        end local 8 // byte[] g
        end local 7 // byte[] r
       294: .line 613
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long java.awt.color.ColorSpace
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            arraylength
            iconst_4
            idiv
            i2l
            lstore 4 /* size */
       295: .line 615
            lload 4 /* size */
            ldc 256
            lcmp
            ifle 297
       296: .line 616
            ldc 256
            lstore 4 /* size */
       297: .line 620
      StackMap locals:
      StackMap stack:
            lload 4 /* size */
            l2i
            newarray 8
            astore 7 /* r */
        start local 7 // byte[] r
       298: .line 621
            lload 4 /* size */
            l2i
            newarray 8
            astore 8 /* g */
        start local 8 // byte[] g
       299: .line 622
            lload 4 /* size */
            l2i
            newarray 8
            astore 9 /* b */
        start local 9 // byte[] b
       300: .line 623
            iconst_0
            istore 11 /* i */
        start local 11 // int i
       301: goto 307
       302: .line 624
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long java.awt.color.ColorSpace byte[] byte[] byte[] top int
      StackMap stack:
            iconst_4
            iload 11 /* i */
            imul
            istore 10 /* off */
        start local 10 // int off
       303: .line 625
            aload 9 /* b */
            iload 11 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iload 10 /* off */
            baload
            bastore
       304: .line 626
            aload 8 /* g */
            iload 11 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iload 10 /* off */
            iconst_1
            iadd
            baload
            bastore
       305: .line 627
            aload 7 /* r */
            iload 11 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.palette:[B
            iload 10 /* off */
            iconst_2
            iadd
            baload
            bastore
       306: .line 623
            iinc 11 /* i */ 1
        end local 10 // int off
      StackMap locals:
      StackMap stack:
       307: iload 11 /* i */
            i2l
            lload 4 /* size */
            lcmp
            iflt 302
        end local 11 // int i
       308: .line 631
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long java.awt.color.ColorSpace byte[] byte[] byte[]
      StackMap stack:
            aload 7 /* r */
            aload 8 /* g */
            aload 9 /* b */
            invokestatic com.sun.imageio.plugins.common.ImageUtil.isIndicesForGrayscale:([B[B[B)Z
            ifeq 313
       309: .line 632
            aload 0 /* this */
       310: .line 633
            aconst_null
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            invokestatic com.sun.imageio.plugins.common.ImageUtil.createColorModel:(Ljava/awt/color/ColorSpace;Ljava/awt/image/SampleModel;)Ljava/awt/image/ColorModel;
       311: .line 632
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
       312: .line 633
            goto 369
       313: .line 635
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.awt.image.IndexColorModel
            dup
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            lload 4 /* size */
            l2i
            aload 7 /* r */
            aload 8 /* g */
            aload 9 /* b */
            invokespecial java.awt.image.IndexColorModel.<init>:(II[B[B[B)V
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
        end local 9 // byte[] b
        end local 8 // byte[] g
        end local 7 // byte[] r
       314: .line 636
            goto 369
      StackMap locals:
      StackMap stack:
       315: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 16
            if_icmpne 330
       316: .line 637
            aload 0 /* this */
            iconst_3
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
       317: .line 638
            aload 0 /* this */
       318: .line 639
            new java.awt.image.SinglePixelPackedSampleModel
            dup
            iconst_1
       319: .line 640
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
       320: .line 641
            iconst_3
            newarray 10
            dup
            iconst_0
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            iastore
            dup
            iconst_1
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            iastore
            dup
            iconst_2
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            iastore
       321: .line 639
            invokespecial java.awt.image.SinglePixelPackedSampleModel.<init>:(III[I)V
       322: .line 638
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
       323: .line 643
            aload 0 /* this */
       324: .line 644
            new java.awt.image.DirectColorModel
            dup
            aload 6 /* colorSpace */
       325: .line 645
            bipush 16
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            iconst_0
       326: .line 646
            iconst_0
            iconst_1
       327: .line 644
            invokespecial java.awt.image.DirectColorModel.<init>:(Ljava/awt/color/ColorSpace;IIIIIZI)V
       328: .line 643
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
       329: .line 648
            goto 369
      StackMap locals:
      StackMap stack:
       330: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitsPerPixel:I
            bipush 32
            if_icmpne 351
       331: .line 649
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.alphaMask:I
            ifne 332
            iconst_3
            goto 333
      StackMap locals:
      StackMap stack: com.sun.imageio.plugins.bmp.BMPImageReader
       332: iconst_4
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] long java.awt.color.ColorSpace
      StackMap stack: com.sun.imageio.plugins.bmp.BMPImageReader int
       333: putfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
       334: .line 653
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            iconst_3
            if_icmpne 336
       335: .line 654
            iconst_3
            newarray 10
            dup
            iconst_0
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            iastore
            dup
            iconst_1
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            iastore
            dup
            iconst_2
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            iastore
            goto 337
       336: .line 655
      StackMap locals:
      StackMap stack:
            iconst_4
            newarray 10
            dup
            iconst_0
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            iastore
            dup
            iconst_1
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            iastore
            dup
            iconst_2
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            iastore
            dup
            iconst_3
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.alphaMask:I
            iastore
       337: .line 653
      StackMap locals:
      StackMap stack: int[]
            astore 7 /* bitMasks */
        start local 7 // int[] bitMasks
       338: .line 657
            aload 0 /* this */
       339: .line 658
            new java.awt.image.SinglePixelPackedSampleModel
            dup
            iconst_3
       340: .line 659
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
       341: .line 660
            aload 7 /* bitMasks */
       342: .line 658
            invokespecial java.awt.image.SinglePixelPackedSampleModel.<init>:(III[I)V
       343: .line 657
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
       344: .line 662
            aload 0 /* this */
       345: .line 663
            new java.awt.image.DirectColorModel
            dup
            aload 6 /* colorSpace */
       346: .line 664
            bipush 32
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.redMask:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.greenMask:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.blueMask:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.alphaMask:I
       347: .line 665
            iconst_0
            iconst_3
       348: .line 663
            invokespecial java.awt.image.DirectColorModel.<init>:(Ljava/awt/color/ColorSpace;IIIIIZI)V
       349: .line 662
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
        end local 7 // int[] bitMasks
       350: .line 666
            goto 369
       351: .line 667
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_3
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
       352: .line 669
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            newarray 10
            astore 7 /* bandOffsets */
        start local 7 // int[] bandOffsets
       353: .line 670
            iconst_0
            istore 8 /* i */
        start local 8 // int i
       354: goto 357
       355: .line 671
      StackMap locals: int[] int
      StackMap stack:
            aload 7 /* bandOffsets */
            iload 8 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            iconst_1
            isub
            iload 8 /* i */
            isub
            iastore
       356: .line 670
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
       357: iload 8 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            if_icmplt 355
        end local 8 // int i
       358: .line 674
            aload 0 /* this */
       359: .line 675
            new java.awt.image.PixelInterleavedSampleModel
            dup
            iconst_0
       360: .line 676
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
       361: .line 677
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
       362: .line 678
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
       363: .line 679
            aload 7 /* bandOffsets */
       364: .line 675
            invokespecial java.awt.image.PixelInterleavedSampleModel.<init>:(IIIII[I)V
       365: .line 674
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
       366: .line 681
            aload 0 /* this */
       367: .line 682
            aload 6 /* colorSpace */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            invokestatic com.sun.imageio.plugins.common.ImageUtil.createColorModel:(Ljava/awt/color/ColorSpace;Ljava/awt/image/SampleModel;)Ljava/awt/image/ColorModel;
       368: .line 681
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
        end local 7 // int[] bandOffsets
       369: .line 685
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.originalSampleModel:Ljava/awt/image/SampleModel;
       370: .line 686
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.originalColorModel:Ljava/awt/image/ColorModel;
       371: .line 690
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.reset:()V
       372: .line 691
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapOffset:J
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(J)J
            pop2
       373: .line 692
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            invokeinterface javax.imageio.stream.ImageInputStream.getStreamPosition:()J
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapStart:J
       374: .line 694
            aload 0 /* this */
            iconst_1
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.gotHeader:Z
       375: .line 695
            return
        end local 6 // java.awt.color.ColorSpace colorSpace
        end local 4 // long size
        end local 3 // byte[] marker
        end local 2 // int profileSize
        end local 1 // int profileData
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0  376     0             this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            5  376     1      profileData  I
            6  376     2      profileSize  I
            9  376     3           marker  [B
           16  376     4             size  J
           44   49     6  numberOfEntries  I
           45   49     7    sizeOfPalette  I
           53  222     6    xPelsPerMeter  J
           54  222     8    yPelsPerMeter  J
           55  222    10       colorsUsed  J
           56  222    12  colorsImportant  J
           69  108    14  numberOfEntries  I
           70  108    15    sizeOfPalette  I
          124  128    15    sizeOfPalette  I
          143  219    14           csType  J
          144  219    16             redX  I
          145  219    17             redY  I
          146  219    18             redZ  I
          147  219    19           greenX  I
          148  219    20           greenY  I
          149  219    21           greenZ  I
          150  219    22            blueX  I
          151  219    23            blueY  I
          152  219    24            blueZ  I
          153  219    25         gammaRed  J
          154  219    27       gammaGreen  J
          155  219    29        gammaBlue  J
          175  219    31  numberOfEntries  I
          176  219    32    sizeOfPalette  I
          228  376     6       colorSpace  Ljava/awt/color/ColorSpace;
          233  247     7          profile  [B
          239  241     8             path  Ljava/lang/String;
          256  269     7      bandOffsets  [I
          257  261     8                i  I
          283  294     7                r  [B
          298  314     7                r  [B
          284  294     8                g  [B
          299  314     8                g  [B
          285  294     9                b  [B
          300  314     9                b  [B
          288  292    10              off  I
          286  293    11                i  I
          303  307    10              off  I
          301  308    11                i  I
          338  350     7         bitMasks  [I
          353  369     7      bandOffsets  [I
          354  358     8                i  I
      Exception table:
        from    to  target  type
         235   244     245  Class java.lang.Exception
    Exceptions:
      throws java.io.IOException, java.lang.IllegalArgumentException

  public java.util.Iterator<javax.imageio.ImageTypeSpecifier> getImageTypes(int);
    descriptor: (I)Ljava/util/Iterator;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imageIndex
         0: .line 699
            aload 0 /* this */
            iload 1 /* imageIndex */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.checkIndex:(I)V
         1: .line 701
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readHeader:()V
         2: .line 702
            goto 5
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
         3: astore 2 /* e */
        start local 2 // java.lang.IllegalArgumentException e
         4: .line 703
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader6"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.IllegalArgumentException e
         5: .line 705
      StackMap locals:
      StackMap stack:
            new java.util.ArrayList
            dup
            iconst_1
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 2 /* list */
        start local 2 // java.util.ArrayList list
         6: .line 706
            aload 2 /* list */
            new javax.imageio.ImageTypeSpecifier
            dup
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.originalColorModel:Ljava/awt/image/ColorModel;
         7: .line 707
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.originalSampleModel:Ljava/awt/image/SampleModel;
            invokespecial javax.imageio.ImageTypeSpecifier.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/SampleModel;)V
         8: .line 706
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         9: .line 708
            aload 2 /* list */
            invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
            areturn
        end local 2 // java.util.ArrayList list
        end local 1 // int imageIndex
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   10     1  imageIndex  I
            4    5     2           e  Ljava/lang/IllegalArgumentException;
            6   10     2        list  Ljava/util/ArrayList<Ljavax/imageio/ImageTypeSpecifier;>;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    Signature: (I)Ljava/util/Iterator<Ljavax/imageio/ImageTypeSpecifier;>;
    MethodParameters:
            Name  Flags
      imageIndex  

  public javax.imageio.ImageReadParam getDefaultReadParam();
    descriptor: ()Ljavax/imageio/ImageReadParam;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
         0: .line 712
            new javax.imageio.ImageReadParam
            dup
            invokespecial javax.imageio.ImageReadParam.<init>:()V
            areturn
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;

  public javax.imageio.metadata.IIOMetadata getImageMetadata(int);
    descriptor: (I)Ljavax/imageio/metadata/IIOMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imageIndex
         0: .line 717
            aload 0 /* this */
            iload 1 /* imageIndex */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.checkIndex:(I)V
         1: .line 718
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            ifnonnull 6
         2: .line 720
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readHeader:()V
         3: .line 721
            goto 6
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
         4: astore 2 /* e */
        start local 2 // java.lang.IllegalArgumentException e
         5: .line 722
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader6"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.IllegalArgumentException e
         6: .line 725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            areturn
        end local 1 // int imageIndex
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    7     1  imageIndex  I
            5    6     2           e  Ljava/lang/IllegalArgumentException;
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      imageIndex  

  public javax.imageio.metadata.IIOMetadata getStreamMetadata();
    descriptor: ()Ljavax/imageio/metadata/IIOMetadata;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
         0: .line 729
            aconst_null
            areturn
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
    Exceptions:
      throws java.io.IOException

  public boolean isRandomAccessEasy(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imageIndex
         0: .line 733
            aload 0 /* this */
            iload 1 /* imageIndex */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.checkIndex:(I)V
         1: .line 735
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readHeader:()V
         2: .line 736
            goto 5
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
         3: astore 2 /* e */
        start local 2 // java.lang.IllegalArgumentException e
         4: .line 737
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader6"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 2 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 2 // java.lang.IllegalArgumentException e
         5: .line 739
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.metadata:Lcom/sun/imageio/plugins/bmp/BMPMetadata;
            getfield com.sun.imageio.plugins.bmp.BMPMetadata.compression:I
            ifne 6
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         6: iconst_0
            ireturn
        end local 1 // int imageIndex
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    7     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    7     1  imageIndex  I
            4    5     2           e  Ljava/lang/IllegalArgumentException;
      Exception table:
        from    to  target  type
           1     2       3  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      imageIndex  

  public java.awt.image.BufferedImage read(int, javax.imageio.ImageReadParam);
    descriptor: (ILjavax/imageio/ImageReadParam;)Ljava/awt/image/BufferedImage;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=3
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imageIndex
        start local 2 // javax.imageio.ImageReadParam param
         0: .line 745
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            ifnonnull 2
         1: .line 746
            new java.lang.IllegalStateException
            dup
            ldc "BMPImageReader5"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 749
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* imageIndex */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.checkIndex:(I)V
         3: .line 750
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.clearAbortRequest:()V
         4: .line 751
            aload 0 /* this */
            iload 1 /* imageIndex */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageStarted:(I)V
         5: .line 752
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 8
         6: .line 753
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processReadAborted:()V
         7: .line 754
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            areturn
         8: .line 757
      StackMap locals:
      StackMap stack:
            aload 2 /* param */
            ifnonnull 10
         9: .line 758
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.getDefaultReadParam:()Ljavax/imageio/ImageReadParam;
            astore 2 /* param */
        10: .line 762
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readHeader:()V
        11: .line 763
            goto 14
      StackMap locals:
      StackMap stack: java.lang.IllegalArgumentException
        12: astore 3 /* e */
        start local 3 // java.lang.IllegalArgumentException e
        13: .line 764
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader6"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            aload 3 /* e */
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.IllegalArgumentException e
        14: .line 767
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            new java.awt.Rectangle
            dup
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
        15: .line 768
            aload 0 /* this */
            new java.awt.Rectangle
            dup
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
        16: .line 770
            aload 2 /* param */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
        17: .line 771
            aload 2 /* param */
            invokevirtual javax.imageio.ImageReadParam.getDestination:()Ljava/awt/image/BufferedImage;
        18: .line 772
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
        19: .line 773
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
        20: .line 770
            invokestatic com.sun.imageio.plugins.bmp.BMPImageReader.computeRegions:(Ljavax/imageio/ImageReadParam;IILjava/awt/image/BufferedImage;Ljava/awt/Rectangle;Ljava/awt/Rectangle;)V
        21: .line 775
            aload 0 /* this */
            aload 2 /* param */
            invokevirtual javax.imageio.ImageReadParam.getSourceXSubsampling:()I
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
        22: .line 776
            aload 0 /* this */
            aload 2 /* param */
            invokevirtual javax.imageio.ImageReadParam.getSourceYSubsampling:()I
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
        23: .line 779
            aload 0 /* this */
            aload 2 /* param */
            invokevirtual javax.imageio.ImageReadParam.getSourceBands:()[I
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceBands:[I
        24: .line 780
            aload 0 /* this */
            aload 2 /* param */
            invokevirtual javax.imageio.ImageReadParam.getDestinationBands:()[I
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.destBands:[I
        25: .line 782
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceBands:[I
            ifnull 26
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destBands:[I
            ifnull 26
            iconst_1
            goto 27
      StackMap locals:
      StackMap stack: com.sun.imageio.plugins.bmp.BMPImageReader
        26: iconst_0
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int javax.imageio.ImageReadParam
      StackMap stack: com.sun.imageio.plugins.bmp.BMPImageReader int
        27: putfield com.sun.imageio.plugins.bmp.BMPImageReader.seleBand:Z
        28: .line 783
            aload 0 /* this */
        29: .line 784
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            new java.awt.Rectangle
            dup
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            invokespecial java.awt.Rectangle.<init>:(IIII)V
            invokevirtual java.awt.Rectangle.equals:(Ljava/lang/Object;)Z
            ifne 31
        30: .line 785
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.seleBand:Z
            ifne 31
            iconst_0
            goto 32
      StackMap locals:
      StackMap stack: com.sun.imageio.plugins.bmp.BMPImageReader
        31: iconst_1
        32: .line 783
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int javax.imageio.ImageReadParam
      StackMap stack: com.sun.imageio.plugins.bmp.BMPImageReader int
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
        33: .line 787
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.seleBand:Z
            ifne 41
        34: .line 788
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            newarray 10
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceBands:[I
        35: .line 789
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            newarray 10
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.destBands:[I
        36: .line 790
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        37: goto 40
        38: .line 791
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destBands:[I
            iload 3 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceBands:[I
            iload 3 /* i */
            iload 3 /* i */
            dup_x2
            iastore
            iastore
        39: .line 790
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        40: iload 3 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.numBands:I
            if_icmplt 38
        end local 3 // int i
        41: .line 795
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* param */
            invokevirtual javax.imageio.ImageReadParam.getDestination:()Ljava/awt/image/BufferedImage;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
        42: .line 798
            aconst_null
            astore 3 /* raster */
        start local 3 // java.awt.image.WritableRaster raster
        43: .line 800
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            ifnonnull 58
        44: .line 801
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            ifnull 62
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
            ifnull 62
        45: .line 802
            aload 0 /* this */
        46: .line 803
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
        47: .line 804
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iadd
        48: .line 805
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
        49: .line 806
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
        50: .line 805
            iadd
        51: .line 803
            invokevirtual java.awt.image.SampleModel.createCompatibleSampleModel:(II)Ljava/awt/image/SampleModel;
        52: .line 802
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
        53: .line 807
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.seleBand:Z
            ifeq 55
        54: .line 808
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceBands:[I
            invokevirtual java.awt.image.SampleModel.createSubsetSampleModel:([I)Ljava/awt/image/SampleModel;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
        55: .line 809
      StackMap locals: java.awt.image.WritableRaster
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            new java.awt.Point
            dup
            invokespecial java.awt.Point.<init>:()V
            invokestatic java.awt.image.Raster.createWritableRaster:(Ljava/awt/image/SampleModel;Ljava/awt/Point;)Ljava/awt/image/WritableRaster;
            astore 3 /* raster */
        56: .line 810
            aload 0 /* this */
            new java.awt.image.BufferedImage
            dup
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
            aload 3 /* raster */
            iconst_0
            aconst_null
            invokespecial java.awt.image.BufferedImage.<init>:(Ljava/awt/image/ColorModel;Ljava/awt/image/WritableRaster;ZLjava/util/Hashtable;)V
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
        57: .line 812
            goto 62
        58: .line 813
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iconst_0
            invokevirtual java.awt.image.BufferedImage.getWritableTile:(II)Ljava/awt/image/WritableRaster;
            astore 3 /* raster */
        59: .line 814
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            invokevirtual java.awt.image.BufferedImage.getSampleModel:()Ljava/awt/image/SampleModel;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
        60: .line 815
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
        61: .line 817
            aload 0 /* this */
            dup
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            aload 3 /* raster */
            invokevirtual java.awt.image.WritableRaster.getBounds:()Ljava/awt/Rectangle;
            invokevirtual java.awt.Rectangle.equals:(Ljava/lang/Object;)Z
            iand
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
        62: .line 820
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 4 /* bdata */
        start local 4 // byte[] bdata
        63: .line 821
            aconst_null
            astore 5 /* sdata */
        start local 5 // short[] sdata
        64: .line 822
            aconst_null
            astore 6 /* idata */
        start local 6 // int[] idata
        65: .line 825
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            ifnull 72
        66: .line 826
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            invokevirtual java.awt.image.SampleModel.getDataType:()I
            ifne 68
        67: .line 827
            aload 3 /* raster */
            invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferByte
            invokevirtual java.awt.image.DataBufferByte.getData:()[B
            astore 4 /* bdata */
            goto 72
        68: .line 828
      StackMap locals: byte[] short[] int[]
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            invokevirtual java.awt.image.SampleModel.getDataType:()I
            iconst_1
            if_icmpne 70
        69: .line 829
            aload 3 /* raster */
            invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferUShort
            invokevirtual java.awt.image.DataBufferUShort.getData:()[S
            astore 5 /* sdata */
            goto 72
        70: .line 830
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            invokevirtual java.awt.image.SampleModel.getDataType:()I
            iconst_3
            if_icmpne 72
        71: .line 831
            aload 3 /* raster */
            invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
            checkcast java.awt.image.DataBufferInt
            invokevirtual java.awt.image.DataBufferInt.getData:()[I
            astore 6 /* idata */
        72: .line 834
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapStart:J
            invokeinterface javax.imageio.stream.ImageInputStream.seek:(J)V
        73: .line 837
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.imageType:I
            tableswitch { // 0 - 18
                    0: 74
                    1: 76
                    2: 78
                    3: 80
                    4: 82
                    5: 84
                    6: 91
                    7: 98
                    8: 100
                    9: 102
                   10: 106
                   11: 108
                   12: 115
                   13: 122
                   14: 124
                   15: 126
                   16: 104
                   17: 104
                   18: 104
              default: 127
          }
        74: .line 841
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read1Bit:([B)V
        75: .line 842
            goto 127
        76: .line 846
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read4Bit:([B)V
        77: .line 847
            goto 127
        78: .line 851
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read8Bit:([B)V
        79: .line 852
            goto 127
        80: .line 856
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read24Bit:([B)V
        81: .line 857
            goto 127
        82: .line 861
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read1Bit:([B)V
        83: .line 862
            goto 127
        84: .line 865
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            tableswitch { // 0 - 2
                    0: 85
                    1: 89
                    2: 87
              default: 89
          }
        85: .line 867
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read4Bit:([B)V
        86: .line 868
            goto 127
        87: .line 871
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readRLE4:([B)V
        88: .line 872
            goto 127
        89: .line 876
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader1"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
        90: .line 875
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        91: .line 881
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            tableswitch { // 0 - 1
                    0: 92
                    1: 94
              default: 96
          }
        92: .line 883
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read8Bit:([B)V
        93: .line 884
            goto 127
        94: .line 887
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readRLE8:([B)V
        95: .line 888
            goto 127
        96: .line 892
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader1"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
        97: .line 891
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
        98: .line 899
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read24Bit:([B)V
        99: .line 900
            goto 127
       100: .line 903
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* sdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read16Bit:([S)V
       101: .line 904
            goto 127
       102: .line 907
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* idata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read32Bit:([I)V
       103: .line 908
            goto 127
       104: .line 913
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            aload 2 /* param */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readEmbedded:(ILjava/awt/image/BufferedImage;Ljavax/imageio/ImageReadParam;)Ljava/awt/image/BufferedImage;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
       105: .line 914
            goto 127
       106: .line 917
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read1Bit:([B)V
       107: .line 918
            goto 127
       108: .line 921
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            tableswitch { // 0 - 2
                    0: 109
                    1: 113
                    2: 111
              default: 113
          }
       109: .line 924
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read4Bit:([B)V
       110: .line 925
            goto 127
       111: .line 928
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readRLE4:([B)V
       112: .line 929
            goto 127
       113: .line 933
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader1"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
       114: .line 932
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       115: .line 938
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.compression:J
            l2i
            tableswitch { // 0 - 1
                    0: 116
                    1: 118
              default: 120
          }
       116: .line 941
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read8Bit:([B)V
       117: .line 942
            goto 127
       118: .line 945
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.readRLE8:([B)V
       119: .line 946
            goto 127
       120: .line 950
      StackMap locals:
      StackMap stack:
            new javax.imageio.IIOException
            dup
            ldc "BMPImageReader1"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
       121: .line 949
            invokespecial javax.imageio.IIOException.<init>:(Ljava/lang/String;)V
            athrow
       122: .line 955
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 5 /* sdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read16Bit:([S)V
       123: .line 956
            goto 127
       124: .line 959
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read24Bit:([B)V
       125: .line 960
            goto 127
       126: .line 963
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 6 /* idata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read32Bit:([I)V
       127: .line 967
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 129
       128: .line 968
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processReadAborted:()V
            goto 130
       129: .line 970
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageComplete:()V
       130: .line 972
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            areturn
        end local 6 // int[] idata
        end local 5 // short[] sdata
        end local 4 // byte[] bdata
        end local 3 // java.awt.image.WritableRaster raster
        end local 2 // javax.imageio.ImageReadParam param
        end local 1 // int imageIndex
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0  131     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0  131     1  imageIndex  I
            0  131     2       param  Ljavax/imageio/ImageReadParam;
           13   14     3           e  Ljava/lang/IllegalArgumentException;
           37   41     3           i  I
           43  131     3      raster  Ljava/awt/image/WritableRaster;
           63  131     4       bdata  [B
           64  131     5       sdata  [S
           65  131     6       idata  [I
      Exception table:
        from    to  target  type
          10    11      12  Class java.lang.IllegalArgumentException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      imageIndex  
      param       

  public boolean canReadRaster();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
         0: .line 976
            iconst_1
            ireturn
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;

  public java.awt.image.Raster readRaster(int, javax.imageio.ImageReadParam);
    descriptor: (ILjavax/imageio/ImageReadParam;)Ljava/awt/image/Raster;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imageIndex
        start local 2 // javax.imageio.ImageReadParam param
         0: .line 981
            aload 0 /* this */
            iload 1 /* imageIndex */
            aload 2 /* param */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.read:(ILjavax/imageio/ImageReadParam;)Ljava/awt/image/BufferedImage;
            astore 3 /* bi */
        start local 3 // java.awt.image.BufferedImage bi
         1: .line 982
            aload 3 /* bi */
            invokevirtual java.awt.image.BufferedImage.getData:()Ljava/awt/image/Raster;
            areturn
        end local 3 // java.awt.image.BufferedImage bi
        end local 2 // javax.imageio.ImageReadParam param
        end local 1 // int imageIndex
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0    2     1  imageIndex  I
            0    2     2       param  Ljavax/imageio/ImageReadParam;
            1    2     3          bi  Ljava/awt/image/BufferedImage;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
            Name  Flags
      imageIndex  
      param       

  private void resetHeaderInfo();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
         0: .line 986
            aload 0 /* this */
            iconst_0
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.gotHeader:Z
         1: .line 987
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
         2: .line 988
            aload 0 /* this */
            aload 0 /* this */
            aconst_null
            dup_x1
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.originalSampleModel:Ljava/awt/image/SampleModel;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
         3: .line 989
            aload 0 /* this */
            aload 0 /* this */
            aconst_null
            dup_x1
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.originalColorModel:Ljava/awt/image/ColorModel;
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.colorModel:Ljava/awt/image/ColorModel;
         4: .line 990
            return
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
         0: .line 993
            aload 0 /* this */
            invokespecial javax.imageio.ImageReader.reset:()V
         1: .line 994
            aload 0 /* this */
            aconst_null
            putfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
         2: .line 995
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.resetHeaderInfo:()V
         3: .line 996
            return
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;

  private void read1Bit(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=16, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // byte[] bdata
         0: .line 1000
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            bipush 7
            iadd
            bipush 8
            idiv
            istore 2 /* bytesPerScanline */
        start local 2 // int bytesPerScanline
         1: .line 1001
            iload 2 /* bytesPerScanline */
            iconst_4
            irem
            istore 3 /* padding */
        start local 3 // int padding
         2: .line 1002
            iload 3 /* padding */
            ifeq 4
         3: .line 1003
            iconst_4
            iload 3 /* padding */
            isub
            istore 3 /* padding */
         4: .line 1006
      StackMap locals: int int
      StackMap stack:
            iload 2 /* bytesPerScanline */
            iload 3 /* padding */
            iadd
            istore 4 /* lineLength */
        start local 4 // int lineLength
         5: .line 1008
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            ifeq 26
         6: .line 1009
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 7
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            iload 2 /* bytesPerScanline */
            imul
            goto 8
      StackMap locals: int
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 5 /* j */
        start local 5 // int j
         9: .line 1011
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 24
        11: .line 1012
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 1 /* bdata */
            iload 5 /* j */
            iload 2 /* bytesPerScanline */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
        12: .line 1013
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 3 /* padding */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        13: .line 1014
            iload 5 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 14
            iload 2 /* bytesPerScanline */
            ineg
            goto 15
      StackMap locals:
      StackMap stack: int
        14: iload 2 /* bytesPerScanline */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int int int
      StackMap stack: int int
        15: iadd
            istore 5 /* j */
        16: .line 1015
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 6 /* i */
        17: .line 1016
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        18: .line 1017
            iconst_1
            newarray 10
        19: .line 1015
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        20: .line 1018
            aload 0 /* this */
            ldc 100.0
            iload 6 /* i */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        21: .line 1019
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 23
        22: .line 1020
            goto 78
        23: .line 1011
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 6 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            if_icmplt 11
        end local 6 // int i
        end local 5 // int j
        25: .line 1023
            goto 78
        26: .line 1024
      StackMap locals:
      StackMap stack:
            iload 4 /* lineLength */
            newarray 8
            astore 5 /* buf */
        start local 5 // byte[] buf
        27: .line 1026
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            checkcast java.awt.image.MultiPixelPackedSampleModel
            invokevirtual java.awt.image.MultiPixelPackedSampleModel.getScanlineStride:()I
        28: .line 1025
            istore 6 /* lineStride */
        start local 6 // int lineStride
        29: .line 1028
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 34
        30: .line 1030
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            imul
            iadd
        31: .line 1029
            istore 7 /* lastLine */
        start local 7 // int lastLine
        32: .line 1031
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            iload 7 /* lastLine */
            isub
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        end local 7 // int lastLine
        33: .line 1032
            goto 35
        34: .line 1033
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        35: .line 1035
      StackMap locals:
      StackMap stack:
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            iconst_1
            isub
            imul
            istore 7 /* skipLength */
        start local 7 // int skipLength
        36: .line 1038
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            newarray 10
            astore 8 /* srcOff */
        start local 8 // int[] srcOff
        37: .line 1039
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            newarray 10
            astore 9 /* destOff */
        start local 9 // int[] destOff
        38: .line 1040
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            newarray 10
            astore 10 /* srcPos */
        start local 10 // int[] srcPos
        39: .line 1041
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            newarray 10
            astore 11 /* destPos */
        start local 11 // int[] destPos
        40: .line 1043
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 12 /* i */
        start local 12 // int i
        41: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 13 /* x */
        start local 13 // int x
        42: iconst_0
            istore 14 /* j */
        start local 14 // int j
        43: .line 1044
            goto 49
        44: .line 1046
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int byte[] int int int[] int[] int[] int[] int int int
      StackMap stack:
            aload 10 /* srcPos */
            iload 14 /* j */
            iload 13 /* x */
            iconst_3
            ishr
            iastore
        45: .line 1047
            aload 8 /* srcOff */
            iload 14 /* j */
            bipush 7
            iload 13 /* x */
            bipush 7
            iand
            isub
            iastore
        46: .line 1048
            aload 11 /* destPos */
            iload 14 /* j */
            iload 12 /* i */
            iconst_3
            ishr
            iastore
        47: .line 1049
            aload 9 /* destOff */
            iload 14 /* j */
            bipush 7
            iload 12 /* i */
            bipush 7
            iand
            isub
            iastore
        48: .line 1045
            iinc 12 /* i */ 1
            iinc 14 /* j */ 1
            iload 13 /* x */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
            iadd
            istore 13 /* x */
        49: .line 1044
      StackMap locals:
      StackMap stack:
            iload 12 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iadd
        50: .line 1043
            if_icmplt 44
        end local 14 // int j
        end local 13 // int x
        end local 12 // int i
        51: .line 1052
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            iload 6 /* lineStride */
            imul
            istore 12 /* k */
        start local 12 // int k
        52: .line 1053
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 54
        53: .line 1054
            iload 12 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            iload 6 /* lineStride */
            imul
            iadd
            istore 12 /* k */
        54: .line 1056
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        55: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            pop
        56: .line 1057
            goto 76
        57: .line 1058
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 5 /* buf */
            iconst_0
            iload 4 /* lineLength */
            invokeinterface javax.imageio.stream.ImageInputStream.read:([BII)I
            pop
        58: .line 1059
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        59: goto 63
        60: .line 1061
      StackMap locals: int
      StackMap stack:
            aload 5 /* buf */
            aload 10 /* srcPos */
            iload 14 /* i */
            iaload
            baload
            aload 8 /* srcOff */
            iload 14 /* i */
            iaload
            ishr
            iconst_1
            iand
            istore 15 /* v */
        start local 15 // int v
        61: .line 1062
            aload 1 /* bdata */
            iload 12 /* k */
            aload 11 /* destPos */
            iload 14 /* i */
            iaload
            iadd
            dup2
            baload
            iload 15 /* v */
            aload 9 /* destOff */
            iload 14 /* i */
            iaload
            ishl
            ior
            i2b
            bastore
        end local 15 // int v
        62: .line 1059
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        63: iload 14 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            if_icmplt 60
        end local 14 // int i
        64: .line 1065
            iload 12 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 65
            iload 6 /* lineStride */
            ineg
            goto 66
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int byte[] int int int[] int[] int[] int[] int int
      StackMap stack: int
        65: iload 6 /* lineStride */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int byte[] int int int[] int[] int[] int[] int int
      StackMap stack: int int
        66: iadd
            istore 12 /* k */
        67: .line 1066
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 7 /* skipLength */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        68: .line 1067
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 13 /* j */
        69: .line 1068
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        70: .line 1069
            iconst_1
            newarray 10
        71: .line 1067
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        72: .line 1070
            aload 0 /* this */
            ldc 100.0
            iload 13 /* j */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        73: .line 1071
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 75
        74: .line 1072
            goto 78
        75: .line 1057
      StackMap locals:
      StackMap stack:
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        76: iload 13 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
        77: .line 1056
            if_icmplt 57
        end local 13 // int j
        end local 12 // int k
        end local 11 // int[] destPos
        end local 10 // int[] srcPos
        end local 9 // int[] destOff
        end local 8 // int[] srcOff
        end local 7 // int skipLength
        end local 6 // int lineStride
        end local 5 // byte[] buf
        78: .line 1076
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int
      StackMap stack:
            return
        end local 4 // int lineLength
        end local 3 // int padding
        end local 2 // int bytesPerScanline
        end local 1 // byte[] bdata
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   79     0              this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   79     1             bdata  [B
            1   79     2  bytesPerScanline  I
            2   79     3           padding  I
            5   79     4        lineLength  I
            9   25     5                 j  I
           10   25     6                 i  I
           27   78     5               buf  [B
           29   78     6        lineStride  I
           32   33     7          lastLine  I
           36   78     7        skipLength  I
           37   78     8            srcOff  [I
           38   78     9           destOff  [I
           39   78    10            srcPos  [I
           40   78    11           destPos  [I
           41   51    12                 i  I
           42   51    13                 x  I
           43   51    14                 j  I
           52   78    12                 k  I
           55   78    13                 j  I
           59   64    14                 i  I
           61   62    15                 v  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      bdata  

  private void read4Bit(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=16, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // byte[] bdata
         0: .line 1081
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_1
            iadd
            iconst_2
            idiv
            istore 2 /* bytesPerScanline */
        start local 2 // int bytesPerScanline
         1: .line 1084
            iload 2 /* bytesPerScanline */
            iconst_4
            irem
            istore 3 /* padding */
        start local 3 // int padding
         2: .line 1085
            iload 3 /* padding */
            ifeq 4
         3: .line 1086
            iconst_4
            iload 3 /* padding */
            isub
            istore 3 /* padding */
         4: .line 1088
      StackMap locals: int int
      StackMap stack:
            iload 2 /* bytesPerScanline */
            iload 3 /* padding */
            iadd
            istore 4 /* lineLength */
        start local 4 // int lineLength
         5: .line 1090
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            ifeq 26
         6: .line 1091
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 7
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            iload 2 /* bytesPerScanline */
            imul
            goto 8
      StackMap locals: int
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 5 /* j */
        start local 5 // int j
         9: .line 1093
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 24
        11: .line 1094
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 1 /* bdata */
            iload 5 /* j */
            iload 2 /* bytesPerScanline */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
        12: .line 1095
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 3 /* padding */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        13: .line 1096
            iload 5 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 14
            iload 2 /* bytesPerScanline */
            ineg
            goto 15
      StackMap locals:
      StackMap stack: int
        14: iload 2 /* bytesPerScanline */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int int int
      StackMap stack: int int
        15: iadd
            istore 5 /* j */
        16: .line 1097
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 6 /* i */
        17: .line 1098
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        18: .line 1099
            iconst_1
            newarray 10
        19: .line 1097
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        20: .line 1100
            aload 0 /* this */
            ldc 100.0
            iload 6 /* i */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        21: .line 1101
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 23
        22: .line 1102
            goto 78
        23: .line 1093
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 6 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            if_icmplt 11
        end local 6 // int i
        end local 5 // int j
        25: .line 1105
            goto 78
        26: .line 1106
      StackMap locals:
      StackMap stack:
            iload 4 /* lineLength */
            newarray 8
            astore 5 /* buf */
        start local 5 // byte[] buf
        27: .line 1108
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            checkcast java.awt.image.MultiPixelPackedSampleModel
            invokevirtual java.awt.image.MultiPixelPackedSampleModel.getScanlineStride:()I
        28: .line 1107
            istore 6 /* lineStride */
        start local 6 // int lineStride
        29: .line 1110
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 34
        30: .line 1112
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            imul
            iadd
        31: .line 1111
            istore 7 /* lastLine */
        start local 7 // int lastLine
        32: .line 1113
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            iload 7 /* lastLine */
            isub
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        end local 7 // int lastLine
        33: .line 1114
            goto 35
        34: .line 1115
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        35: .line 1117
      StackMap locals:
      StackMap stack:
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            iconst_1
            isub
            imul
            istore 7 /* skipLength */
        start local 7 // int skipLength
        36: .line 1120
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            newarray 10
            astore 8 /* srcOff */
        start local 8 // int[] srcOff
        37: .line 1121
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            newarray 10
            astore 9 /* destOff */
        start local 9 // int[] destOff
        38: .line 1122
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            newarray 10
            astore 10 /* srcPos */
        start local 10 // int[] srcPos
        39: .line 1123
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            newarray 10
            astore 11 /* destPos */
        start local 11 // int[] destPos
        40: .line 1125
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 12 /* i */
        start local 12 // int i
        41: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 13 /* x */
        start local 13 // int x
        42: iconst_0
            istore 14 /* j */
        start local 14 // int j
        43: .line 1126
            goto 49
        44: .line 1128
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int byte[] int int int[] int[] int[] int[] int int int
      StackMap stack:
            aload 10 /* srcPos */
            iload 14 /* j */
            iload 13 /* x */
            iconst_1
            ishr
            iastore
        45: .line 1129
            aload 8 /* srcOff */
            iload 14 /* j */
            iconst_1
            iload 13 /* x */
            iconst_1
            iand
            isub
            iconst_2
            ishl
            iastore
        46: .line 1130
            aload 11 /* destPos */
            iload 14 /* j */
            iload 12 /* i */
            iconst_1
            ishr
            iastore
        47: .line 1131
            aload 9 /* destOff */
            iload 14 /* j */
            iconst_1
            iload 12 /* i */
            iconst_1
            iand
            isub
            iconst_2
            ishl
            iastore
        48: .line 1127
            iinc 12 /* i */ 1
            iinc 14 /* j */ 1
            iload 13 /* x */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
            iadd
            istore 13 /* x */
        49: .line 1126
      StackMap locals:
      StackMap stack:
            iload 12 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iadd
        50: .line 1125
            if_icmplt 44
        end local 14 // int j
        end local 13 // int x
        end local 12 // int i
        51: .line 1134
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            iload 6 /* lineStride */
            imul
            istore 12 /* k */
        start local 12 // int k
        52: .line 1135
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 54
        53: .line 1136
            iload 12 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            iload 6 /* lineStride */
            imul
            iadd
            istore 12 /* k */
        54: .line 1138
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 13 /* j */
        start local 13 // int j
        55: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            pop
        56: .line 1139
            goto 76
        57: .line 1140
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 5 /* buf */
            iconst_0
            iload 4 /* lineLength */
            invokeinterface javax.imageio.stream.ImageInputStream.read:([BII)I
            pop
        58: .line 1141
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        59: goto 63
        60: .line 1143
      StackMap locals: int
      StackMap stack:
            aload 5 /* buf */
            aload 10 /* srcPos */
            iload 14 /* i */
            iaload
            baload
            aload 8 /* srcOff */
            iload 14 /* i */
            iaload
            ishr
            bipush 15
            iand
            istore 15 /* v */
        start local 15 // int v
        61: .line 1144
            aload 1 /* bdata */
            iload 12 /* k */
            aload 11 /* destPos */
            iload 14 /* i */
            iaload
            iadd
            dup2
            baload
            iload 15 /* v */
            aload 9 /* destOff */
            iload 14 /* i */
            iaload
            ishl
            ior
            i2b
            bastore
        end local 15 // int v
        62: .line 1141
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        63: iload 14 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            if_icmplt 60
        end local 14 // int i
        64: .line 1147
            iload 12 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 65
            iload 6 /* lineStride */
            ineg
            goto 66
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int byte[] int int int[] int[] int[] int[] int int
      StackMap stack: int
        65: iload 6 /* lineStride */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int byte[] int int int[] int[] int[] int[] int int
      StackMap stack: int int
        66: iadd
            istore 12 /* k */
        67: .line 1148
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 7 /* skipLength */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        68: .line 1149
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 13 /* j */
        69: .line 1150
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        70: .line 1151
            iconst_1
            newarray 10
        71: .line 1149
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        72: .line 1152
            aload 0 /* this */
            ldc 100.0
            iload 13 /* j */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        73: .line 1153
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 75
        74: .line 1154
            goto 78
        75: .line 1139
      StackMap locals:
      StackMap stack:
            iinc 13 /* j */ 1
      StackMap locals:
      StackMap stack:
        76: iload 13 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
        77: .line 1138
            if_icmplt 57
        end local 13 // int j
        end local 12 // int k
        end local 11 // int[] destPos
        end local 10 // int[] srcPos
        end local 9 // int[] destOff
        end local 8 // int[] srcOff
        end local 7 // int skipLength
        end local 6 // int lineStride
        end local 5 // byte[] buf
        78: .line 1158
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int
      StackMap stack:
            return
        end local 4 // int lineLength
        end local 3 // int padding
        end local 2 // int bytesPerScanline
        end local 1 // byte[] bdata
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   79     0              this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   79     1             bdata  [B
            1   79     2  bytesPerScanline  I
            2   79     3           padding  I
            5   79     4        lineLength  I
            9   25     5                 j  I
           10   25     6                 i  I
           27   78     5               buf  [B
           29   78     6        lineStride  I
           32   33     7          lastLine  I
           36   78     7        skipLength  I
           37   78     8            srcOff  [I
           38   78     9           destOff  [I
           39   78    10            srcPos  [I
           40   78    11           destPos  [I
           41   51    12                 i  I
           42   51    13                 x  I
           43   51    14                 j  I
           52   78    12                 k  I
           55   78    13                 j  I
           59   64    14                 i  I
           61   62    15                 v  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      bdata  

  private void read8Bit(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=11, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // byte[] bdata
         0: .line 1164
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_4
            irem
            istore 2 /* padding */
        start local 2 // int padding
         1: .line 1165
            iload 2 /* padding */
            ifeq 3
         2: .line 1166
            iconst_4
            iload 2 /* padding */
            isub
            istore 2 /* padding */
         3: .line 1169
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iload 2 /* padding */
            iadd
            istore 3 /* lineLength */
        start local 3 // int lineLength
         4: .line 1171
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            ifeq 25
         5: .line 1172
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 6
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
            goto 7
      StackMap locals: int
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 4 /* j */
        start local 4 // int j
         8: .line 1174
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         9: goto 23
        10: .line 1175
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 1 /* bdata */
            iload 4 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
        11: .line 1176
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 2 /* padding */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        12: .line 1177
            iload 4 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 13
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            ineg
            goto 14
      StackMap locals:
      StackMap stack: int
        13: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int int
      StackMap stack: int int
        14: iadd
            istore 4 /* j */
        15: .line 1178
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 5 /* i */
        16: .line 1179
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        17: .line 1180
            iconst_1
            newarray 10
        18: .line 1178
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        19: .line 1181
            aload 0 /* this */
            ldc 100.0
            iload 5 /* i */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        20: .line 1182
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 22
        21: .line 1183
            goto 64
        22: .line 1174
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 5 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            if_icmplt 10
        end local 5 // int i
        end local 4 // int j
        24: .line 1186
            goto 64
        25: .line 1187
      StackMap locals:
      StackMap stack:
            iload 3 /* lineLength */
            newarray 8
            astore 4 /* buf */
        start local 4 // byte[] buf
        26: .line 1189
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            checkcast java.awt.image.ComponentSampleModel
            invokevirtual java.awt.image.ComponentSampleModel.getScanlineStride:()I
        27: .line 1188
            istore 5 /* lineStride */
        start local 5 // int lineStride
        28: .line 1191
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 33
        29: .line 1193
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            imul
            iadd
        30: .line 1192
            istore 6 /* lastLine */
        start local 6 // int lastLine
        31: .line 1194
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 3 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            iload 6 /* lastLine */
            isub
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        end local 6 // int lastLine
        32: .line 1195
            goto 34
        33: .line 1196
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 3 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        34: .line 1198
      StackMap locals:
      StackMap stack:
            iload 3 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            iconst_1
            isub
            imul
            istore 6 /* skipLength */
        start local 6 // int skipLength
        35: .line 1200
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            iload 5 /* lineStride */
            imul
            istore 7 /* k */
        start local 7 // int k
        36: .line 1201
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 38
        37: .line 1202
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            iload 5 /* lineStride */
            imul
            iadd
            istore 7 /* k */
        38: .line 1203
      StackMap locals: int int
      StackMap stack:
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            iadd
            istore 7 /* k */
        39: .line 1205
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        40: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            pop
        41: .line 1206
            goto 62
        42: .line 1207
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 4 /* buf */
            iconst_0
            iload 3 /* lineLength */
            invokeinterface javax.imageio.stream.ImageInputStream.read:([BII)I
            pop
        43: .line 1208
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        44: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 10 /* m */
        start local 10 // int m
        45: .line 1209
            goto 48
        46: .line 1211
      StackMap locals: int int
      StackMap stack:
            aload 1 /* bdata */
            iload 7 /* k */
            iload 9 /* i */
            iadd
            aload 4 /* buf */
            iload 10 /* m */
            baload
            bastore
        47: .line 1209
            iinc 9 /* i */ 1
            iload 10 /* m */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
            iadd
            istore 10 /* m */
      StackMap locals:
      StackMap stack:
        48: iload 9 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
        49: .line 1208
            if_icmplt 46
        end local 10 // int m
        end local 9 // int i
        50: .line 1214
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 51
            iload 5 /* lineStride */
            ineg
            goto 52
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int byte[] int int int int
      StackMap stack: int
        51: iload 5 /* lineStride */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int byte[] int int int int
      StackMap stack: int int
        52: iadd
            istore 7 /* k */
        53: .line 1215
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 6 /* skipLength */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        54: .line 1216
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 8 /* j */
        55: .line 1217
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        56: .line 1218
            iconst_1
            newarray 10
        57: .line 1216
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        58: .line 1219
            aload 0 /* this */
            ldc 100.0
            iload 8 /* j */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        59: .line 1220
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 61
        60: .line 1221
            goto 64
        61: .line 1206
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        62: iload 8 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
        63: .line 1205
            if_icmplt 42
        end local 8 // int j
        end local 7 // int k
        end local 6 // int skipLength
        end local 5 // int lineStride
        end local 4 // byte[] buf
        64: .line 1225
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int
      StackMap stack:
            return
        end local 3 // int lineLength
        end local 2 // int padding
        end local 1 // byte[] bdata
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   65     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   65     1       bdata  [B
            1   65     2     padding  I
            4   65     3  lineLength  I
            8   24     4           j  I
            9   24     5           i  I
           26   64     4         buf  [B
           28   64     5  lineStride  I
           31   32     6    lastLine  I
           35   64     6  skipLength  I
           36   64     7           k  I
           40   64     8           j  I
           44   50     9           i  I
           45   50    10           m  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      bdata  

  private void read24Bit(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=13, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // byte[] bdata
         0: .line 1231
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_3
            imul
            iconst_4
            irem
            istore 2 /* padding */
        start local 2 // int padding
         1: .line 1232
            iload 2 /* padding */
            ifeq 3
         2: .line 1233
            iconst_4
            iload 2 /* padding */
            isub
            istore 2 /* padding */
         3: .line 1235
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_3
            imul
            istore 3 /* lineStride */
        start local 3 // int lineStride
         4: .line 1236
            iload 3 /* lineStride */
            iload 2 /* padding */
            iadd
            istore 4 /* lineLength */
        start local 4 // int lineLength
         5: .line 1238
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            ifeq 26
         6: .line 1239
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 7
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
            iconst_3
            imul
            goto 8
      StackMap locals: int int
      StackMap stack:
         7: iconst_0
      StackMap locals:
      StackMap stack: int
         8: istore 5 /* j */
        start local 5 // int j
         9: .line 1241
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        10: goto 24
        11: .line 1242
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 1 /* bdata */
            iload 5 /* j */
            iload 3 /* lineStride */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
        12: .line 1243
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 2 /* padding */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        13: .line 1244
            iload 5 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 14
            iload 3 /* lineStride */
            ineg
            goto 15
      StackMap locals:
      StackMap stack: int
        14: iload 3 /* lineStride */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int int int
      StackMap stack: int int
        15: iadd
            istore 5 /* j */
        16: .line 1245
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 6 /* i */
        17: .line 1246
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        18: .line 1247
            iconst_1
            newarray 10
        19: .line 1245
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        20: .line 1248
            aload 0 /* this */
            ldc 100.0
            iload 6 /* i */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        21: .line 1249
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 23
        22: .line 1250
            goto 70
        23: .line 1241
      StackMap locals:
      StackMap stack:
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        24: iload 6 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            if_icmplt 11
        end local 6 // int i
        end local 5 // int j
        25: .line 1253
            goto 70
        26: .line 1254
      StackMap locals:
      StackMap stack:
            iload 4 /* lineLength */
            newarray 8
            astore 5 /* buf */
        start local 5 // byte[] buf
        27: .line 1256
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            checkcast java.awt.image.ComponentSampleModel
            invokevirtual java.awt.image.ComponentSampleModel.getScanlineStride:()I
        28: .line 1255
            istore 3 /* lineStride */
        29: .line 1258
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 34
        30: .line 1260
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            imul
            iadd
        31: .line 1259
            istore 6 /* lastLine */
        start local 6 // int lastLine
        32: .line 1261
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            iload 6 /* lastLine */
            isub
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        end local 6 // int lastLine
        33: .line 1262
            goto 35
        34: .line 1263
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            imul
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        35: .line 1265
      StackMap locals:
      StackMap stack:
            iload 4 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            iconst_1
            isub
            imul
            istore 6 /* skipLength */
        start local 6 // int skipLength
        36: .line 1267
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            iload 3 /* lineStride */
            imul
            istore 7 /* k */
        start local 7 // int k
        37: .line 1268
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 39
        38: .line 1269
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            iload 3 /* lineStride */
            imul
            iadd
            istore 7 /* k */
        39: .line 1270
      StackMap locals: int int
      StackMap stack:
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            iconst_3
            imul
            iadd
            istore 7 /* k */
        40: .line 1272
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        41: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            pop
        42: .line 1273
            goto 68
        43: .line 1274
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 5 /* buf */
            iconst_0
            iload 4 /* lineLength */
            invokeinterface javax.imageio.stream.ImageInputStream.read:([BII)I
            pop
        44: .line 1275
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        45: iconst_3
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            imul
            istore 10 /* m */
        start local 10 // int m
        46: .line 1276
            goto 54
        47: .line 1278
      StackMap locals: int int
      StackMap stack:
            iconst_3
            iload 9 /* i */
            imul
            iload 7 /* k */
            iadd
            istore 11 /* n */
        start local 11 // int n
        48: .line 1279
            iconst_0
            istore 12 /* b */
        start local 12 // int b
        49: goto 52
        50: .line 1280
      StackMap locals: int int
      StackMap stack:
            aload 1 /* bdata */
            iload 11 /* n */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destBands:[I
            iload 12 /* b */
            iaload
            iadd
            aload 5 /* buf */
            iload 10 /* m */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceBands:[I
            iload 12 /* b */
            iaload
            iadd
            baload
            bastore
        51: .line 1279
            iinc 12 /* b */ 1
      StackMap locals:
      StackMap stack:
        52: iload 12 /* b */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destBands:[I
            arraylength
            if_icmplt 50
        end local 12 // int b
        end local 11 // int n
        53: .line 1276
            iinc 9 /* i */ 1
            iload 10 /* m */
            iconst_3
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
            imul
            iadd
            istore 10 /* m */
      StackMap locals:
      StackMap stack:
        54: iload 9 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
        55: .line 1275
            if_icmplt 47
        end local 10 // int m
        end local 9 // int i
        56: .line 1283
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 57
            iload 3 /* lineStride */
            ineg
            goto 58
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int byte[] int int int
      StackMap stack: int
        57: iload 3 /* lineStride */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int byte[] int int int
      StackMap stack: int int
        58: iadd
            istore 7 /* k */
        59: .line 1284
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 6 /* skipLength */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        60: .line 1285
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 8 /* j */
        61: .line 1286
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        62: .line 1287
            iconst_1
            newarray 10
        63: .line 1285
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        64: .line 1288
            aload 0 /* this */
            ldc 100.0
            iload 8 /* j */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        65: .line 1289
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 67
        66: .line 1290
            goto 70
        67: .line 1273
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        68: iload 8 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
        69: .line 1272
            if_icmplt 43
        end local 8 // int j
        end local 7 // int k
        end local 6 // int skipLength
        end local 5 // byte[] buf
        70: .line 1294
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader byte[] int int int
      StackMap stack:
            return
        end local 4 // int lineLength
        end local 3 // int lineStride
        end local 2 // int padding
        end local 1 // byte[] bdata
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   71     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   71     1       bdata  [B
            1   71     2     padding  I
            4   71     3  lineStride  I
            5   71     4  lineLength  I
            9   25     5           j  I
           10   25     6           i  I
           27   70     5         buf  [B
           32   33     6    lastLine  I
           36   70     6  skipLength  I
           37   70     7           k  I
           41   70     8           j  I
           45   56     9           i  I
           46   56    10           m  I
           48   53    11           n  I
           49   53    12           b  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      bdata  

  private void read16Bit(short[]);
    descriptor: ([S)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=11, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // short[] sdata
         0: .line 1299
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_2
            imul
            iconst_4
            irem
            istore 2 /* padding */
        start local 2 // int padding
         1: .line 1301
            iload 2 /* padding */
            ifeq 3
         2: .line 1302
            iconst_4
            iload 2 /* padding */
            isub
            istore 2 /* padding */
         3: .line 1304
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iload 2 /* padding */
            iconst_2
            idiv
            iadd
            istore 3 /* lineLength */
        start local 3 // int lineLength
         4: .line 1306
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            ifeq 25
         5: .line 1307
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 6
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
            goto 7
      StackMap locals: int
      StackMap stack:
         6: iconst_0
      StackMap locals:
      StackMap stack: int
         7: istore 4 /* j */
        start local 4 // int j
         8: .line 1308
            iconst_0
            istore 5 /* i */
        start local 5 // int i
         9: goto 23
        10: .line 1309
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 1 /* sdata */
            iload 4 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([SII)V
        11: .line 1310
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 2 /* padding */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        12: .line 1312
            iload 4 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 13
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            ineg
            goto 14
      StackMap locals:
      StackMap stack: int
        13: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader short[] int int int int
      StackMap stack: int int
        14: iadd
            istore 4 /* j */
        15: .line 1313
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 5 /* i */
        16: .line 1314
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        17: .line 1315
            iconst_1
            newarray 10
        18: .line 1313
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        19: .line 1316
            aload 0 /* this */
            ldc 100.0
            iload 5 /* i */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        20: .line 1317
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 22
        21: .line 1318
            goto 64
        22: .line 1308
      StackMap locals:
      StackMap stack:
            iinc 5 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 5 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            if_icmplt 10
        end local 5 // int i
        end local 4 // int j
        24: .line 1321
            goto 64
        25: .line 1322
      StackMap locals:
      StackMap stack:
            iload 3 /* lineLength */
            newarray 9
            astore 4 /* buf */
        start local 4 // short[] buf
        26: .line 1324
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            checkcast java.awt.image.SinglePixelPackedSampleModel
            invokevirtual java.awt.image.SinglePixelPackedSampleModel.getScanlineStride:()I
        27: .line 1323
            istore 5 /* lineStride */
        start local 5 // int lineStride
        28: .line 1326
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 33
        29: .line 1328
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            imul
            iadd
        30: .line 1327
            istore 6 /* lastLine */
        start local 6 // int lastLine
        31: .line 1329
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 3 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            iload 6 /* lastLine */
            isub
            imul
            iconst_1
            ishl
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        end local 6 // int lastLine
        32: .line 1330
            goto 34
        33: .line 1331
      StackMap locals: short[] int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 3 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            imul
            iconst_1
            ishl
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        34: .line 1333
      StackMap locals:
      StackMap stack:
            iload 3 /* lineLength */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            iconst_1
            isub
            imul
            iconst_1
            ishl
            istore 6 /* skipLength */
        start local 6 // int skipLength
        35: .line 1335
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            iload 5 /* lineStride */
            imul
            istore 7 /* k */
        start local 7 // int k
        36: .line 1336
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 38
        37: .line 1337
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            iload 5 /* lineStride */
            imul
            iadd
            istore 7 /* k */
        38: .line 1338
      StackMap locals: int int
      StackMap stack:
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            iadd
            istore 7 /* k */
        39: .line 1340
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        40: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            pop
        41: .line 1341
            goto 62
        42: .line 1342
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 4 /* buf */
            iconst_0
            iload 3 /* lineLength */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([SII)V
        43: .line 1343
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        44: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 10 /* m */
        start local 10 // int m
        45: .line 1344
            goto 48
        46: .line 1346
      StackMap locals: int int
      StackMap stack:
            aload 1 /* sdata */
            iload 7 /* k */
            iload 9 /* i */
            iadd
            aload 4 /* buf */
            iload 10 /* m */
            saload
            sastore
        47: .line 1344
            iinc 9 /* i */ 1
            iload 10 /* m */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
            iadd
            istore 10 /* m */
      StackMap locals:
      StackMap stack:
        48: iload 9 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
        49: .line 1343
            if_icmplt 46
        end local 10 // int m
        end local 9 // int i
        50: .line 1349
            iload 7 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 51
            iload 5 /* lineStride */
            ineg
            goto 52
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader short[] int int short[] int int int int
      StackMap stack: int
        51: iload 5 /* lineStride */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader short[] int int short[] int int int int
      StackMap stack: int int
        52: iadd
            istore 7 /* k */
        53: .line 1350
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 6 /* skipLength */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        54: .line 1351
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 8 /* j */
        55: .line 1352
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        56: .line 1353
            iconst_1
            newarray 10
        57: .line 1351
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        58: .line 1354
            aload 0 /* this */
            ldc 100.0
            iload 8 /* j */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        59: .line 1355
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 61
        60: .line 1356
            goto 64
        61: .line 1341
      StackMap locals:
      StackMap stack:
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        62: iload 8 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
        63: .line 1340
            if_icmplt 42
        end local 8 // int j
        end local 7 // int k
        end local 6 // int skipLength
        end local 5 // int lineStride
        end local 4 // short[] buf
        64: .line 1360
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader short[] int int
      StackMap stack:
            return
        end local 3 // int lineLength
        end local 2 // int padding
        end local 1 // short[] sdata
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   65     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   65     1       sdata  [S
            1   65     2     padding  I
            4   65     3  lineLength  I
            8   24     4           j  I
            9   24     5           i  I
           26   64     4         buf  [S
           28   64     5  lineStride  I
           31   32     6    lastLine  I
           35   64     6  skipLength  I
           36   64     7           k  I
           40   64     8           j  I
           44   50     9           i  I
           45   50    10           m  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      sdata  

  private void read32Bit(int[]);
    descriptor: ([I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=9, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int[] idata
         0: .line 1363
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            ifeq 20
         1: .line 1364
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 2
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
            goto 3
      StackMap locals:
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: istore 2 /* j */
        start local 2 // int j
         4: .line 1366
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         5: goto 18
         6: .line 1367
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 1 /* idata */
            iload 2 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([III)V
         7: .line 1368
            iload 2 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 8
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            ineg
            goto 9
      StackMap locals:
      StackMap stack: int
         8: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int[] int int
      StackMap stack: int int
         9: iadd
            istore 2 /* j */
        10: .line 1369
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 3 /* i */
        11: .line 1370
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        12: .line 1371
            iconst_1
            newarray 10
        13: .line 1369
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        14: .line 1372
            aload 0 /* this */
            ldc 100.0
            iload 3 /* i */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        15: .line 1373
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 17
        16: .line 1374
            goto 59
        17: .line 1366
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 3 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            if_icmplt 6
        end local 3 // int i
        end local 2 // int j
        19: .line 1377
            goto 59
        20: .line 1378
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            newarray 10
            astore 2 /* buf */
        start local 2 // int[] buf
        21: .line 1380
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            checkcast java.awt.image.SinglePixelPackedSampleModel
            invokevirtual java.awt.image.SinglePixelPackedSampleModel.getScanlineStride:()I
        22: .line 1379
            istore 3 /* lineStride */
        start local 3 // int lineStride
        23: .line 1382
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 28
        24: .line 1384
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            imul
            iadd
        25: .line 1383
            istore 4 /* lastLine */
        start local 4 // int lastLine
        26: .line 1385
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            iload 4 /* lastLine */
            isub
            imul
            iconst_2
            ishl
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        end local 4 // int lastLine
        27: .line 1386
            goto 29
        28: .line 1387
      StackMap locals: int[] int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            imul
            iconst_2
            ishl
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        29: .line 1389
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            iconst_1
            isub
            imul
            iconst_2
            ishl
            istore 4 /* skipLength */
        start local 4 // int skipLength
        30: .line 1391
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            iload 3 /* lineStride */
            imul
            istore 5 /* k */
        start local 5 // int k
        31: .line 1392
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 33
        32: .line 1393
            iload 5 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iconst_1
            isub
            iload 3 /* lineStride */
            imul
            iadd
            istore 5 /* k */
        33: .line 1394
      StackMap locals: int int
      StackMap stack:
            iload 5 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            iadd
            istore 5 /* k */
        34: .line 1396
            iconst_0
            istore 6 /* j */
        start local 6 // int j
        35: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            pop
        36: .line 1397
            goto 57
        37: .line 1398
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 2 /* buf */
            iconst_0
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([III)V
        38: .line 1399
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        39: aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 8 /* m */
        start local 8 // int m
        40: .line 1400
            goto 43
        41: .line 1402
      StackMap locals: int int
      StackMap stack:
            aload 1 /* idata */
            iload 5 /* k */
            iload 7 /* i */
            iadd
            aload 2 /* buf */
            iload 8 /* m */
            iaload
            iastore
        42: .line 1400
            iinc 7 /* i */ 1
            iload 8 /* m */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
            iadd
            istore 8 /* m */
      StackMap locals:
      StackMap stack:
        43: iload 7 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
        44: .line 1399
            if_icmplt 41
        end local 8 // int m
        end local 7 // int i
        45: .line 1405
            iload 5 /* k */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 46
            iload 3 /* lineStride */
            ineg
            goto 47
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int[] int[] int int int int
      StackMap stack: int
        46: iload 3 /* lineStride */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int[] int[] int int int int
      StackMap stack: int int
        47: iadd
            istore 5 /* k */
        48: .line 1406
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            iload 4 /* skipLength */
            invokeinterface javax.imageio.stream.ImageInputStream.skipBytes:(I)I
            pop
        49: .line 1407
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 6 /* j */
        50: .line 1408
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        51: .line 1409
            iconst_1
            newarray 10
        52: .line 1407
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        53: .line 1410
            aload 0 /* this */
            ldc 100.0
            iload 6 /* j */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        54: .line 1411
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 56
        55: .line 1412
            goto 59
        56: .line 1397
      StackMap locals:
      StackMap stack:
            iinc 6 /* j */ 1
      StackMap locals:
      StackMap stack:
        57: iload 6 /* j */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
        58: .line 1396
            if_icmplt 37
        end local 6 // int j
        end local 5 // int k
        end local 4 // int skipLength
        end local 3 // int lineStride
        end local 2 // int[] buf
        59: .line 1416
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int[]
      StackMap stack:
            return
        end local 1 // int[] idata
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   60     0        this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   60     1       idata  [I
            4   19     2           j  I
            5   19     3           i  I
           21   59     2         buf  [I
           23   59     3  lineStride  I
           26   27     4    lastLine  I
           30   59     4  skipLength  I
           31   59     5           k  I
           35   59     6           j  I
           39   45     7           i  I
           40   45     8           m  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      idata  

  private void readRLE8(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // byte[] bdata
         0: .line 1420
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.imageSize:J
            l2i
            istore 2 /* imSize */
        start local 2 // int imSize
         1: .line 1421
            iload 2 /* imSize */
            ifne 3
         2: .line 1422
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapFileSize:J
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapOffset:J
            lsub
            l2i
            istore 2 /* imSize */
         3: .line 1425
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 3 /* padding */
        start local 3 // int padding
         4: .line 1428
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_4
            irem
            istore 4 /* remainder */
        start local 4 // int remainder
         5: .line 1429
            iload 4 /* remainder */
            ifeq 7
         6: .line 1430
            iconst_4
            iload 4 /* remainder */
            isub
            istore 3 /* padding */
         7: .line 1434
      StackMap locals: int int
      StackMap stack:
            iload 2 /* imSize */
            newarray 8
            astore 5 /* values */
        start local 5 // byte[] values
         8: .line 1436
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 5 /* values */
            iconst_0
            iload 2 /* imSize */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
         9: .line 1439
            aload 0 /* this */
            iload 2 /* imSize */
            iload 3 /* padding */
            aload 5 /* values */
            aload 1 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.decodeRLE8:(II[B[B)V
        10: .line 1440
            return
        end local 5 // byte[] values
        end local 4 // int remainder
        end local 3 // int padding
        end local 2 // int imSize
        end local 1 // byte[] bdata
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   11     1      bdata  [B
            1   11     2     imSize  I
            4   11     3    padding  I
            5   11     4  remainder  I
            8   11     5     values  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      bdata  

  private boolean copyRLE8ScanlineToDst(int, byte[], byte[]);
    descriptor: (I[B[B)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=9, args_size=4
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int lineNo
        start local 2 // byte[] val
        start local 3 // byte[] bdata
         0: .line 1446
            iconst_0
            istore 4 /* isSuccess */
        start local 4 // boolean isSuccess
         1: .line 1450
            iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            if_icmplt 40
         2: .line 1451
            iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iadd
            if_icmpge 40
         3: .line 1452
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            ifeq 16
         4: .line 1453
            iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
            istore 5 /* pos */
        start local 5 // int pos
         5: .line 1454
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         6: goto 9
         7: .line 1455
      StackMap locals: int int int
      StackMap stack:
            aload 3 /* bdata */
            iload 5 /* pos */
            iinc 5 /* pos */ 1
            aload 2 /* val */
            iload 6 /* i */
            baload
            bastore
         8: .line 1454
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 6 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            if_icmplt 7
        end local 6 // int i
        10: .line 1456
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 1 /* lineNo */
        11: .line 1457
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        12: .line 1458
            iconst_1
            newarray 10
        13: .line 1456
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        14: .line 1459
            iconst_1
            istore 4 /* isSuccess */
        end local 5 // int pos
        15: .line 1460
            goto 35
      StackMap locals:
      StackMap stack:
        16: iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            irem
            ifne 35
        17: .line 1462
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            checkcast java.awt.image.ComponentSampleModel
            invokevirtual java.awt.image.ComponentSampleModel.getScanlineStride:()I
        18: .line 1461
            istore 5 /* lineStride */
        start local 5 // int lineStride
        19: .line 1463
            iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            idiv
        20: .line 1464
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
        21: .line 1463
            iadd
            istore 6 /* currentLine */
        start local 6 // int currentLine
        22: .line 1465
            iload 6 /* currentLine */
            iload 5 /* lineStride */
            imul
            istore 7 /* pos */
        start local 7 // int pos
        23: .line 1466
            iload 7 /* pos */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            iadd
            istore 7 /* pos */
        24: .line 1467
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 8 /* i */
        start local 8 // int i
        25: .line 1468
            goto 28
        26: .line 1470
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int byte[] byte[] int int int int int
      StackMap stack:
            aload 3 /* bdata */
            iload 7 /* pos */
            iinc 7 /* pos */ 1
            aload 2 /* val */
            iload 8 /* i */
            baload
            bastore
        27: .line 1469
            iload 8 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
            iadd
            istore 8 /* i */
        28: .line 1468
      StackMap locals:
      StackMap stack:
            iload 8 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iadd
        29: .line 1467
            if_icmplt 26
        end local 8 // int i
        30: .line 1471
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 6 /* currentLine */
        31: .line 1472
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        32: .line 1473
            iconst_1
            newarray 10
        33: .line 1471
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        34: .line 1474
            iconst_1
            istore 4 /* isSuccess */
        end local 7 // int pos
        end local 6 // int currentLine
        end local 5 // int lineStride
        35: .line 1477
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int byte[] byte[] int
      StackMap stack:
            iconst_0
            istore 5 /* scIndex */
        start local 5 // int scIndex
        36: goto 39
        37: .line 1478
      StackMap locals: int
      StackMap stack:
            aload 2 /* val */
            iload 5 /* scIndex */
            iconst_0
            bastore
        38: .line 1477
            iinc 5 /* scIndex */ 1
      StackMap locals:
      StackMap stack:
        39: iload 5 /* scIndex */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            if_icmplt 37
        end local 5 // int scIndex
        40: .line 1482
      StackMap locals:
      StackMap stack:
            iload 4 /* isSuccess */
            ireturn
        end local 4 // boolean isSuccess
        end local 3 // byte[] bdata
        end local 2 // byte[] val
        end local 1 // int lineNo
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   41     0         this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   41     1       lineNo  I
            0   41     2          val  [B
            0   41     3        bdata  [B
            1   41     4    isSuccess  Z
            5   15     5          pos  I
            6   10     6            i  I
           19   35     5   lineStride  I
           22   35     6  currentLine  I
           23   35     7          pos  I
           25   30     8            i  I
           36   40     5      scIndex  I
    MethodParameters:
        Name  Flags
      lineNo  
      val     
      bdata   

  private void decodeRLE8(int, int, byte[], byte[]);
    descriptor: (II[B[B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=15, args_size=5
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imSize
        start local 2 // int padding
        start local 3 // byte[] values
        start local 4 // byte[] bdata
         0: .line 1490
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            newarray 8
            astore 5 /* val */
        start local 5 // byte[] val
         1: .line 1491
            iconst_0
            istore 6 /* count */
        start local 6 // int count
         2: iconst_0
            istore 7 /* l */
        start local 7 // int l
         3: .line 1493
            iconst_0
            istore 9 /* flag */
        start local 9 // boolean flag
         4: .line 1494
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 5
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            goto 6
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int top int
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 10 /* lineNo */
        start local 10 // int lineNo
         7: .line 1495
            iconst_0
            istore 11 /* finished */
        start local 11 // int finished
         8: .line 1498
            goto 68
         9: .line 1499
      StackMap locals: int int
      StackMap stack:
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            istore 8 /* value */
        start local 8 // int value
        10: .line 1500
            iload 8 /* value */
            ifne 59
        11: .line 1501
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            tableswitch { // 0 - 2
                    0: 12
                    1: 22
                    2: 32
              default: 47
          }
        12: .line 1506
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 10 /* lineNo */
            aload 5 /* val */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.copyRLE8ScanlineToDst:(I[B[B)Z
            ifeq 14
        13: .line 1507
            iinc 11 /* finished */ 1
        14: .line 1509
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc 100.0
            iload 11 /* finished */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        15: .line 1510
            iload 10 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 16
            iconst_m1
            goto 17
      StackMap locals:
      StackMap stack: int
        16: iconst_1
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int int int int int
      StackMap stack: int int
        17: iadd
            istore 10 /* lineNo */
        18: .line 1511
            iconst_0
            istore 7 /* l */
        19: .line 1513
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 66
        20: .line 1514
            iconst_1
            istore 9 /* flag */
        21: .line 1516
            goto 66
        22: .line 1520
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 9 /* flag */
        23: .line 1524
            iload 7 /* l */
            ifeq 66
        24: .line 1526
            aload 0 /* this */
            iload 10 /* lineNo */
            aload 5 /* val */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.copyRLE8ScanlineToDst:(I[B[B)Z
            ifeq 26
        25: .line 1527
            iinc 11 /* finished */ 1
        26: .line 1529
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc 100.0
            iload 11 /* finished */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        27: .line 1530
            iload 10 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 28
            iconst_m1
            goto 29
      StackMap locals:
      StackMap stack: int
        28: iconst_1
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int int int int int
      StackMap stack: int int
        29: iadd
            istore 10 /* lineNo */
        30: .line 1531
            iconst_0
            istore 7 /* l */
        31: .line 1533
            goto 66
        32: .line 1537
      StackMap locals:
      StackMap stack:
            iload 6 /* count */
            iconst_1
            iadd
            iload 1 /* imSize */
            if_icmpge 66
        33: .line 1538
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            istore 12 /* xoff */
        start local 12 // int xoff
        34: .line 1539
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            istore 13 /* yoff */
        start local 13 // int yoff
        35: .line 1544
            iload 13 /* yoff */
            ifeq 44
        36: .line 1546
            aload 0 /* this */
            iload 10 /* lineNo */
            aload 5 /* val */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.copyRLE8ScanlineToDst:(I[B[B)Z
            ifeq 38
        37: .line 1547
            iinc 11 /* finished */ 1
        38: .line 1549
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            ldc 100.0
            iload 11 /* finished */
            i2f
            fmul
        39: .line 1550
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
        40: .line 1549
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        41: .line 1551
            iload 10 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 42
            iload 13 /* yoff */
            ineg
            goto 43
      StackMap locals:
      StackMap stack: int
        42: iload 13 /* yoff */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int int int int int int int
      StackMap stack: int int
        43: iadd
            istore 10 /* lineNo */
        44: .line 1555
      StackMap locals:
      StackMap stack:
            iload 7 /* l */
            iload 12 /* xoff */
            iload 13 /* yoff */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
            iadd
            iadd
            istore 7 /* l */
        45: .line 1556
            iload 7 /* l */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            irem
            istore 7 /* l */
        end local 13 // int yoff
        end local 12 // int xoff
        46: .line 1558
            goto 66
        47: .line 1561
      StackMap locals:
      StackMap stack:
            aload 3 /* values */
            iload 6 /* count */
            iconst_1
            isub
            baload
            sipush 255
            iand
            istore 12 /* end */
        start local 12 // int end
        48: .line 1562
            iconst_0
            istore 13 /* readByte */
        start local 13 // byte readByte
        49: .line 1565
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        50: goto 55
        51: .line 1566
      StackMap locals: int int int
      StackMap stack:
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            i2b
            istore 13 /* readByte */
        52: .line 1569
            iload 7 /* l */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            if_icmpge 54
        53: .line 1570
            aload 5 /* val */
            iload 7 /* l */
            iinc 7 /* l */ 1
            iload 13 /* readByte */
            bastore
        54: .line 1565
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        55: iload 14 /* i */
            iload 12 /* end */
            if_icmpge 56
            iload 6 /* count */
            iload 1 /* imSize */
            if_icmplt 51
        end local 14 // int i
        56: .line 1576
      StackMap locals:
      StackMap stack:
            iload 12 /* end */
            iconst_1
            iand
            iconst_1
            if_icmpne 66
        57: .line 1577
            iinc 6 /* count */ 1
        end local 13 // byte readByte
        end local 12 // int end
        58: .line 1581
            goto 66
        59: .line 1585
      StackMap locals:
      StackMap stack:
            iload 6 /* count */
            iload 1 /* imSize */
            if_icmpge 65
        60: .line 1586
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        61: goto 64
        62: .line 1587
      StackMap locals: int
      StackMap stack:
            aload 5 /* val */
            iload 7 /* l */
            iinc 7 /* l */ 1
            aload 3 /* values */
            iload 6 /* count */
            baload
            sipush 255
            iand
            i2b
            bastore
        63: .line 1586
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        64: iload 12 /* i */
            iload 8 /* value */
            if_icmpge 65
            iload 7 /* l */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            if_icmplt 62
        end local 12 // int i
        65: .line 1591
      StackMap locals:
      StackMap stack:
            iinc 6 /* count */ 1
        66: .line 1595
      StackMap locals:
      StackMap stack:
            iload 9 /* flag */
            ifeq 68
        67: .line 1596
            goto 69
        end local 8 // int value
        68: .line 1498
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int top int int int
      StackMap stack:
            iload 6 /* count */
            iconst_1
            iadd
            iload 1 /* imSize */
            if_icmplt 9
        69: .line 1599
      StackMap locals:
      StackMap stack:
            return
        end local 11 // int finished
        end local 10 // int lineNo
        end local 9 // boolean flag
        end local 7 // int l
        end local 6 // int count
        end local 5 // byte[] val
        end local 4 // byte[] bdata
        end local 3 // byte[] values
        end local 2 // int padding
        end local 1 // int imSize
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   70     0      this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   70     1    imSize  I
            0   70     2   padding  I
            0   70     3    values  [B
            0   70     4     bdata  [B
            1   70     5       val  [B
            2   70     6     count  I
            3   70     7         l  I
           10   68     8     value  I
            4   70     9      flag  Z
            7   70    10    lineNo  I
            8   70    11  finished  I
           34   46    12      xoff  I
           35   46    13      yoff  I
           48   58    12       end  I
           49   58    13  readByte  B
           50   56    14         i  I
           61   65    12         i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      imSize   
      padding  
      values   
      bdata    

  private void readRLE4(byte[]);
    descriptor: ([B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // byte[] bdata
         0: .line 1604
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.imageSize:J
            l2i
            istore 2 /* imSize */
        start local 2 // int imSize
         1: .line 1605
            iload 2 /* imSize */
            ifne 3
         2: .line 1606
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapFileSize:J
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bitmapOffset:J
            lsub
            l2i
            istore 2 /* imSize */
         3: .line 1609
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 3 /* padding */
        start local 3 // int padding
         4: .line 1612
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_4
            irem
            istore 4 /* remainder */
        start local 4 // int remainder
         5: .line 1613
            iload 4 /* remainder */
            ifeq 7
         6: .line 1614
            iconst_4
            iload 4 /* remainder */
            isub
            istore 3 /* padding */
         7: .line 1618
      StackMap locals: int int
      StackMap stack:
            iload 2 /* imSize */
            newarray 8
            astore 5 /* values */
        start local 5 // byte[] values
         8: .line 1619
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 5 /* values */
            iconst_0
            iload 2 /* imSize */
            invokeinterface javax.imageio.stream.ImageInputStream.readFully:([BII)V
         9: .line 1622
            aload 0 /* this */
            iload 2 /* imSize */
            iload 3 /* padding */
            aload 5 /* values */
            aload 1 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.decodeRLE4:(II[B[B)V
        10: .line 1623
            return
        end local 5 // byte[] values
        end local 4 // int remainder
        end local 3 // int padding
        end local 2 // int imSize
        end local 1 // byte[] bdata
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0       this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   11     1      bdata  [B
            1   11     2     imSize  I
            4   11     3    padding  I
            5   11     4  remainder  I
            8   11     5     values  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
       Name  Flags
      bdata  

  private boolean copyRLE4ScanlineToDst(int, byte[], byte[]);
    descriptor: (I[B[B)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=10, args_size=4
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int lineNo
        start local 2 // byte[] val
        start local 3 // byte[] bdata
         0: .line 1629
            iconst_0
            istore 4 /* isSuccess */
        start local 4 // boolean isSuccess
         1: .line 1633
            iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            if_icmplt 50
         2: .line 1634
            iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            iadd
            if_icmpge 50
         3: .line 1635
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.noTransform:Z
            ifeq 21
         4: .line 1636
            iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_1
            iadd
            iconst_1
            ishr
            imul
            istore 5 /* pos */
        start local 5 // int pos
         5: .line 1637
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         6: iconst_0
            istore 7 /* j */
        start local 7 // int j
         7: goto 12
         8: .line 1638
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int byte[] byte[] int int int int
      StackMap stack:
            aload 3 /* bdata */
            iload 5 /* pos */
            iinc 5 /* pos */ 1
         9: .line 1639
            aload 2 /* val */
            iload 7 /* j */
            iinc 7 /* j */ 1
            baload
            iconst_4
            ishl
            aload 2 /* val */
            iload 7 /* j */
            iinc 7 /* j */ 1
            baload
            ior
            i2b
        10: .line 1638
            bastore
        11: .line 1637
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 6 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_1
            ishr
            if_icmplt 8
        end local 7 // int j
        end local 6 // int i
        13: .line 1640
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_1
            iand
            iconst_1
            if_icmpne 15
        14: .line 1641
            aload 3 /* bdata */
            iload 5 /* pos */
            dup2
            baload
            aload 2 /* val */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            iconst_1
            isub
            baload
            iconst_4
            ishl
            ior
            i2b
            bastore
        15: .line 1643
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 1 /* lineNo */
        16: .line 1644
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        17: .line 1645
            iconst_1
            newarray 10
        18: .line 1643
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        19: .line 1646
            iconst_1
            istore 4 /* isSuccess */
        end local 5 // int pos
        20: .line 1647
            goto 45
      StackMap locals:
      StackMap stack:
        21: iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            irem
            ifne 45
        22: .line 1649
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sampleModel:Ljava/awt/image/SampleModel;
            checkcast java.awt.image.MultiPixelPackedSampleModel
            invokevirtual java.awt.image.MultiPixelPackedSampleModel.getScanlineStride:()I
        23: .line 1648
            istore 5 /* lineStride */
        start local 5 // int lineStride
        24: .line 1650
            iload 1 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
            isub
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleY:I
            idiv
        25: .line 1651
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
        26: .line 1650
            iadd
            istore 6 /* currentLine */
        start local 6 // int currentLine
        27: .line 1652
            iload 6 /* currentLine */
            iload 5 /* lineStride */
            imul
            istore 7 /* pos */
        start local 7 // int pos
        28: .line 1653
            iload 7 /* pos */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            iconst_1
            ishr
            iadd
            istore 7 /* pos */
        29: .line 1654
            iconst_1
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            iconst_1
            iand
            isub
            iconst_2
            ishl
            istore 8 /* shift */
        start local 8 // int shift
        30: .line 1655
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            istore 9 /* i */
        start local 9 // int i
        31: .line 1656
            goto 38
        32: .line 1658
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int byte[] byte[] int int int int int int
      StackMap stack:
            aload 3 /* bdata */
            iload 7 /* pos */
            dup2
            baload
            aload 2 /* val */
            iload 9 /* i */
            baload
            iload 8 /* shift */
            ishl
            ior
            i2b
            bastore
        33: .line 1659
            iinc 8 /* shift */ 4
        34: .line 1660
            iload 8 /* shift */
            iconst_4
            if_icmpne 36
        35: .line 1661
            iinc 7 /* pos */ 1
        36: .line 1663
      StackMap locals:
      StackMap stack:
            iload 8 /* shift */
            bipush 7
            iand
            istore 8 /* shift */
        37: .line 1657
            iload 9 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.scaleX:I
            iadd
            istore 9 /* i */
        38: .line 1656
      StackMap locals:
      StackMap stack:
            iload 9 /* i */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.sourceRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iadd
        39: .line 1655
            if_icmplt 32
        end local 9 // int i
        40: .line 1665
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.bi:Ljava/awt/image/BufferedImage;
            iconst_0
            iload 6 /* currentLine */
        41: .line 1666
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iconst_1
            iconst_1
            iconst_1
        42: .line 1667
            iconst_1
            newarray 10
        43: .line 1665
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
        44: .line 1668
            iconst_1
            istore 4 /* isSuccess */
        end local 8 // int shift
        end local 7 // int pos
        end local 6 // int currentLine
        end local 5 // int lineStride
        45: .line 1671
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int byte[] byte[] int
      StackMap stack:
            iconst_0
            istore 5 /* scIndex */
        start local 5 // int scIndex
        46: goto 49
        47: .line 1672
      StackMap locals: int
      StackMap stack:
            aload 2 /* val */
            iload 5 /* scIndex */
            iconst_0
            bastore
        48: .line 1671
            iinc 5 /* scIndex */ 1
      StackMap locals:
      StackMap stack:
        49: iload 5 /* scIndex */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            if_icmplt 47
        end local 5 // int scIndex
        50: .line 1675
      StackMap locals:
      StackMap stack:
            iload 4 /* isSuccess */
            ireturn
        end local 4 // boolean isSuccess
        end local 3 // byte[] bdata
        end local 2 // byte[] val
        end local 1 // int lineNo
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   51     0         this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   51     1       lineNo  I
            0   51     2          val  [B
            0   51     3        bdata  [B
            1   51     4    isSuccess  Z
            5   20     5          pos  I
            6   13     6            i  I
            7   13     7            j  I
           24   45     5   lineStride  I
           27   45     6  currentLine  I
           28   45     7          pos  I
           30   45     8        shift  I
           31   40     9            i  I
           46   50     5      scIndex  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      lineNo  
      val     
      bdata   

  private void decodeRLE4(int, int, byte[], byte[]);
    descriptor: (II[B[B)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=15, args_size=5
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int imSize
        start local 2 // int padding
        start local 3 // byte[] values
        start local 4 // byte[] bdata
         0: .line 1682
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            newarray 8
            astore 5 /* val */
        start local 5 // byte[] val
         1: .line 1683
            iconst_0
            istore 6 /* count */
        start local 6 // int count
         2: iconst_0
            istore 7 /* l */
        start local 7 // int l
         3: .line 1685
            iconst_0
            istore 9 /* flag */
        start local 9 // boolean flag
         4: .line 1686
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 5
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.height:I
            iconst_1
            isub
            goto 6
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int top int
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: istore 10 /* lineNo */
        start local 10 // int lineNo
         7: .line 1687
            iconst_0
            istore 11 /* finished */
        start local 11 // int finished
         8: .line 1690
            goto 76
         9: .line 1692
      StackMap locals: int int
      StackMap stack:
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            istore 8 /* value */
        start local 8 // int value
        10: .line 1693
            iload 8 /* value */
            ifne 64
        11: .line 1696
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            tableswitch { // 0 - 2
                    0: 12
                    1: 22
                    2: 32
              default: 47
          }
        12: .line 1701
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int int int int int
      StackMap stack:
            aload 0 /* this */
            iload 10 /* lineNo */
            aload 5 /* val */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.copyRLE4ScanlineToDst:(I[B[B)Z
            ifeq 14
        13: .line 1702
            iinc 11 /* finished */ 1
        14: .line 1704
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc 100.0
            iload 11 /* finished */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        15: .line 1705
            iload 10 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 16
            iconst_m1
            goto 17
      StackMap locals:
      StackMap stack: int
        16: iconst_1
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int int int int int
      StackMap stack: int int
        17: iadd
            istore 10 /* lineNo */
        18: .line 1706
            iconst_0
            istore 7 /* l */
        19: .line 1708
            aload 0 /* this */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.abortRequested:()Z
            ifeq 74
        20: .line 1709
            iconst_1
            istore 9 /* flag */
        21: .line 1712
            goto 74
        22: .line 1716
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 9 /* flag */
        23: .line 1720
            iload 7 /* l */
            ifeq 74
        24: .line 1722
            aload 0 /* this */
            iload 10 /* lineNo */
            aload 5 /* val */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.copyRLE4ScanlineToDst:(I[B[B)Z
            ifeq 26
        25: .line 1723
            iinc 11 /* finished */ 1
        26: .line 1725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            ldc 100.0
            iload 11 /* finished */
            i2f
            fmul
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        27: .line 1726
            iload 10 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 28
            iconst_m1
            goto 29
      StackMap locals:
      StackMap stack: int
        28: iconst_1
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int int int int int
      StackMap stack: int int
        29: iadd
            istore 10 /* lineNo */
        30: .line 1727
            iconst_0
            istore 7 /* l */
        31: .line 1729
            goto 74
        32: .line 1733
      StackMap locals:
      StackMap stack:
            iload 6 /* count */
            iconst_1
            iadd
            iload 1 /* imSize */
            if_icmpge 74
        33: .line 1734
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            istore 12 /* xoff */
        start local 12 // int xoff
        34: .line 1735
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            sipush 255
            iand
            istore 13 /* yoff */
        start local 13 // int yoff
        35: .line 1740
            iload 13 /* yoff */
            ifeq 44
        36: .line 1742
            aload 0 /* this */
            iload 10 /* lineNo */
            aload 5 /* val */
            aload 4 /* bdata */
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.copyRLE4ScanlineToDst:(I[B[B)Z
            ifeq 38
        37: .line 1743
            iinc 11 /* finished */ 1
        38: .line 1745
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            ldc 100.0
            iload 11 /* finished */
            i2f
            fmul
        39: .line 1746
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
            i2f
            fdiv
        40: .line 1745
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
        41: .line 1747
            iload 10 /* lineNo */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.isBottomUp:Z
            ifeq 42
            iload 13 /* yoff */
            ineg
            goto 43
      StackMap locals:
      StackMap stack: int
        42: iload 13 /* yoff */
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int int int int int int int
      StackMap stack: int int
        43: iadd
            istore 10 /* lineNo */
        44: .line 1753
      StackMap locals:
      StackMap stack:
            iload 7 /* l */
            iload 12 /* xoff */
            iload 13 /* yoff */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            imul
            iadd
            iadd
            istore 7 /* l */
        45: .line 1754
            iload 7 /* l */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            irem
            istore 7 /* l */
        end local 13 // int yoff
        end local 12 // int xoff
        46: .line 1756
            goto 74
        47: .line 1759
      StackMap locals:
      StackMap stack:
            aload 3 /* values */
            iload 6 /* count */
            iconst_1
            isub
            baload
            sipush 255
            iand
            istore 12 /* end */
        start local 12 // int end
        48: .line 1760
            iconst_0
            istore 13 /* readByte */
        start local 13 // byte readByte
        49: .line 1763
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        50: goto 58
        51: .line 1764
      StackMap locals: int int int
      StackMap stack:
            iload 14 /* i */
            iconst_1
            iand
            ifne 53
        52: .line 1765
            aload 3 /* values */
            iload 6 /* count */
            baload
            sipush 240
            iand
            iconst_4
            ishr
            goto 54
        53: .line 1766
      StackMap locals:
      StackMap stack:
            aload 3 /* values */
            iload 6 /* count */
            iinc 6 /* count */ 1
            baload
            bipush 15
            iand
        54: .line 1764
      StackMap locals:
      StackMap stack: int
            i2b
            istore 13 /* readByte */
        55: .line 1769
            iload 7 /* l */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            if_icmpge 57
        56: .line 1770
            aload 5 /* val */
            iload 7 /* l */
            iinc 7 /* l */ 1
            iload 13 /* readByte */
            bastore
        57: .line 1763
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        58: iload 14 /* i */
            iload 12 /* end */
            if_icmpge 59
            iload 6 /* count */
            iload 1 /* imSize */
            if_icmplt 51
        end local 14 // int i
        59: .line 1776
      StackMap locals:
      StackMap stack:
            iload 12 /* end */
            iconst_1
            iand
            iconst_1
            if_icmpne 61
        60: .line 1777
            iinc 6 /* count */ 1
        61: .line 1782
      StackMap locals:
      StackMap stack:
            iload 12 /* end */
            iconst_1
            iadd
            iconst_2
            idiv
            iconst_1
            iand
            iconst_1
            if_icmpne 74
        62: .line 1783
            iinc 6 /* count */ 1
        end local 13 // byte readByte
        end local 12 // int end
        63: .line 1787
            goto 74
        64: .line 1791
      StackMap locals:
      StackMap stack:
            iload 6 /* count */
            iload 1 /* imSize */
            if_icmpge 73
        65: .line 1792
            iconst_2
            newarray 10
            dup
            iconst_0
            aload 3 /* values */
            iload 6 /* count */
            baload
            sipush 240
            iand
            iconst_4
            ishr
            iastore
            dup
            iconst_1
        66: .line 1793
            aload 3 /* values */
            iload 6 /* count */
            baload
            bipush 15
            iand
            iastore
        67: .line 1792
            astore 12 /* alternate */
        start local 12 // int[] alternate
        68: .line 1794
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        69: goto 72
        70: .line 1795
      StackMap locals: int[] int
      StackMap stack:
            aload 5 /* val */
            iload 7 /* l */
            iinc 7 /* l */ 1
            aload 12 /* alternate */
            iload 13 /* i */
            iconst_1
            iand
            iaload
            i2b
            bastore
        71: .line 1794
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        72: iload 13 /* i */
            iload 8 /* value */
            if_icmpge 73
            iload 7 /* l */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.width:I
            if_icmplt 70
        end local 13 // int i
        end local 12 // int[] alternate
        73: .line 1799
      StackMap locals:
      StackMap stack:
            iinc 6 /* count */ 1
        74: .line 1803
      StackMap locals:
      StackMap stack:
            iload 9 /* flag */
            ifeq 76
        75: .line 1804
            goto 77
        end local 8 // int value
        76: .line 1690
      StackMap locals: com.sun.imageio.plugins.bmp.BMPImageReader int int byte[] byte[] byte[] int int top int int int
      StackMap stack:
            iload 6 /* count */
            iconst_1
            iadd
            iload 1 /* imSize */
            if_icmplt 9
        77: .line 1807
      StackMap locals:
      StackMap stack:
            return
        end local 11 // int finished
        end local 10 // int lineNo
        end local 9 // boolean flag
        end local 7 // int l
        end local 6 // int count
        end local 5 // byte[] val
        end local 4 // byte[] bdata
        end local 3 // byte[] values
        end local 2 // int padding
        end local 1 // int imSize
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   78     0       this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   78     1     imSize  I
            0   78     2    padding  I
            0   78     3     values  [B
            0   78     4      bdata  [B
            1   78     5        val  [B
            2   78     6      count  I
            3   78     7          l  I
           10   76     8      value  I
            4   78     9       flag  Z
            7   78    10     lineNo  I
            8   78    11   finished  I
           34   46    12       xoff  I
           35   46    13       yoff  I
           48   63    12        end  I
           49   63    13   readByte  B
           50   59    14          i  I
           68   73    12  alternate  [I
           69   73    13          i  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
         Name  Flags
      imSize   
      padding  
      values   
      bdata    

  private java.awt.image.BufferedImage readEmbedded(int, java.awt.image.BufferedImage, javax.imageio.ImageReadParam);
    descriptor: (ILjava/awt/image/BufferedImage;Ljavax/imageio/ImageReadParam;)Ljava/awt/image/BufferedImage;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=4
        start local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
        start local 1 // int type
        start local 2 // java.awt.image.BufferedImage bi
        start local 3 // javax.imageio.ImageReadParam bmpParam
         0: .line 1822
            iload 1 /* type */
            tableswitch { // 4 - 5
                    4: 1
                    5: 3
              default: 5
          }
         1: .line 1824
      StackMap locals:
      StackMap stack:
            ldc "JPEG"
            astore 4 /* format */
        start local 4 // java.lang.String format
         2: .line 1825
            goto 7
        end local 4 // java.lang.String format
         3: .line 1827
      StackMap locals:
      StackMap stack:
            ldc "PNG"
            astore 4 /* format */
        start local 4 // java.lang.String format
         4: .line 1828
            goto 7
        end local 4 // java.lang.String format
         5: .line 1831
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unexpected compression type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* type */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         6: .line 1830
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        start local 4 // java.lang.String format
         7: .line 1834
      StackMap locals: java.lang.String
      StackMap stack:
            aload 4 /* format */
            invokestatic javax.imageio.ImageIO.getImageReadersByFormatName:(Ljava/lang/String;)Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.imageio.ImageReader
         8: .line 1833
            astore 5 /* reader */
        start local 5 // javax.imageio.ImageReader reader
         9: .line 1835
            aload 5 /* reader */
            ifnonnull 13
        10: .line 1836
            new java.lang.RuntimeException
            dup
            new java.lang.StringBuilder
            dup
            ldc "BMPImageReader4"
            invokestatic com.sun.imageio.plugins.common.I18N.getString:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        11: .line 1837
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* format */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        12: .line 1836
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        13: .line 1840
      StackMap locals: javax.imageio.ImageReader
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.imageSize:J
            l2i
            newarray 8
            astore 6 /* buff */
        start local 6 // byte[] buff
        14: .line 1841
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.iis:Ljavax/imageio/stream/ImageInputStream;
            aload 6 /* buff */
            invokeinterface javax.imageio.stream.ImageInputStream.read:([B)I
            pop
        15: .line 1842
            aload 5 /* reader */
            new java.io.ByteArrayInputStream
            dup
            aload 6 /* buff */
            invokespecial java.io.ByteArrayInputStream.<init>:([B)V
            invokestatic javax.imageio.ImageIO.createImageInputStream:(Ljava/lang/Object;)Ljavax/imageio/stream/ImageInputStream;
            invokevirtual javax.imageio.ImageReader.setInput:(Ljava/lang/Object;)V
        16: .line 1843
            aload 2 /* bi */
            ifnonnull 24
        17: .line 1844
            aload 5 /* reader */
            iconst_0
            invokevirtual javax.imageio.ImageReader.getImageTypes:(I)Ljava/util/Iterator;
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast javax.imageio.ImageTypeSpecifier
            astore 7 /* embType */
        start local 7 // javax.imageio.ImageTypeSpecifier embType
        18: .line 1845
            aload 7 /* embType */
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.x:I
        19: .line 1846
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.width:I
            iadd
        20: .line 1847
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.y:I
        21: .line 1848
            aload 0 /* this */
            getfield com.sun.imageio.plugins.bmp.BMPImageReader.destinationRegion:Ljava/awt/Rectangle;
            getfield java.awt.Rectangle.height:I
        22: .line 1847
            iadd
        23: .line 1845
            invokevirtual javax.imageio.ImageTypeSpecifier.createBufferedImage:(II)Ljava/awt/image/BufferedImage;
            astore 2 /* bi */
        end local 7 // javax.imageio.ImageTypeSpecifier embType
        24: .line 1851
      StackMap locals: byte[]
      StackMap stack:
            aload 5 /* reader */
            new com.sun.imageio.plugins.bmp.BMPImageReader$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            invokespecial com.sun.imageio.plugins.bmp.BMPImageReader$1.<init>:(Lcom/sun/imageio/plugins/bmp/BMPImageReader;Lcom/sun/imageio/plugins/bmp/BMPImageReader;)V
            invokevirtual javax.imageio.ImageReader.addIIOReadProgressListener:(Ljavax/imageio/event/IIOReadProgressListener;)V
        25: .line 1859
            aload 5 /* reader */
            new com.sun.imageio.plugins.bmp.BMPImageReader$2
            dup
            aload 0 /* this */
            invokespecial com.sun.imageio.plugins.bmp.BMPImageReader$2.<init>:(Lcom/sun/imageio/plugins/bmp/BMPImageReader;)V
            invokevirtual javax.imageio.ImageReader.addIIOReadUpdateListener:(Ljavax/imageio/event/IIOReadUpdateListener;)V
        26: .line 1905
            aload 5 /* reader */
            new com.sun.imageio.plugins.bmp.BMPImageReader$3
            dup
            aload 0 /* this */
            invokespecial com.sun.imageio.plugins.bmp.BMPImageReader$3.<init>:(Lcom/sun/imageio/plugins/bmp/BMPImageReader;)V
            invokevirtual javax.imageio.ImageReader.addIIOReadWarningListener:(Ljavax/imageio/event/IIOReadWarningListener;)V
        27: .line 1912
            aload 5 /* reader */
            invokevirtual javax.imageio.ImageReader.getDefaultReadParam:()Ljavax/imageio/ImageReadParam;
            astore 7 /* param */
        start local 7 // javax.imageio.ImageReadParam param
        28: .line 1913
            aload 7 /* param */
            aload 2 /* bi */
            invokevirtual javax.imageio.ImageReadParam.setDestination:(Ljava/awt/image/BufferedImage;)V
        29: .line 1914
            aload 7 /* param */
            aload 3 /* bmpParam */
            invokevirtual javax.imageio.ImageReadParam.getDestinationBands:()[I
            invokevirtual javax.imageio.ImageReadParam.setDestinationBands:([I)V
        30: .line 1915
            aload 7 /* param */
            aload 3 /* bmpParam */
            invokevirtual javax.imageio.ImageReadParam.getDestinationOffset:()Ljava/awt/Point;
            invokevirtual javax.imageio.ImageReadParam.setDestinationOffset:(Ljava/awt/Point;)V
        31: .line 1916
            aload 7 /* param */
            aload 3 /* bmpParam */
            invokevirtual javax.imageio.ImageReadParam.getSourceBands:()[I
            invokevirtual javax.imageio.ImageReadParam.setSourceBands:([I)V
        32: .line 1917
            aload 7 /* param */
            aload 3 /* bmpParam */
            invokevirtual javax.imageio.ImageReadParam.getSourceRegion:()Ljava/awt/Rectangle;
            invokevirtual javax.imageio.ImageReadParam.setSourceRegion:(Ljava/awt/Rectangle;)V
        33: .line 1918
            aload 7 /* param */
            aload 3 /* bmpParam */
            invokevirtual javax.imageio.ImageReadParam.getSourceXSubsampling:()I
        34: .line 1919
            aload 3 /* bmpParam */
            invokevirtual javax.imageio.ImageReadParam.getSourceYSubsampling:()I
        35: .line 1920
            aload 3 /* bmpParam */
            invokevirtual javax.imageio.ImageReadParam.getSubsamplingXOffset:()I
        36: .line 1921
            aload 3 /* bmpParam */
            invokevirtual javax.imageio.ImageReadParam.getSubsamplingYOffset:()I
        37: .line 1918
            invokevirtual javax.imageio.ImageReadParam.setSourceSubsampling:(IIII)V
        38: .line 1922
            aload 5 /* reader */
            iconst_0
            aload 7 /* param */
            invokevirtual javax.imageio.ImageReader.read:(ILjavax/imageio/ImageReadParam;)Ljava/awt/image/BufferedImage;
            pop
        39: .line 1923
            aload 2 /* bi */
            areturn
        end local 7 // javax.imageio.ImageReadParam param
        end local 6 // byte[] buff
        end local 5 // javax.imageio.ImageReader reader
        end local 4 // java.lang.String format
        end local 3 // javax.imageio.ImageReadParam bmpParam
        end local 2 // java.awt.image.BufferedImage bi
        end local 1 // int type
        end local 0 // com.sun.imageio.plugins.bmp.BMPImageReader this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   40     0      this  Lcom/sun/imageio/plugins/bmp/BMPImageReader;
            0   40     1      type  I
            0   40     2        bi  Ljava/awt/image/BufferedImage;
            0   40     3  bmpParam  Ljavax/imageio/ImageReadParam;
            2    3     4    format  Ljava/lang/String;
            4    5     4    format  Ljava/lang/String;
            7   40     4    format  Ljava/lang/String;
            9   40     5    reader  Ljavax/imageio/ImageReader;
           14   40     6      buff  [B
           18   24     7   embType  Ljavax/imageio/ImageTypeSpecifier;
           28   40     7     param  Ljavax/imageio/ImageReadParam;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
          Name  Flags
      type      
      bi        
      bmpParam  

  private static boolean isLinkedProfileAllowed();
    descriptor: ()Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=0
         0: .line 1941
            getstatic com.sun.imageio.plugins.bmp.BMPImageReader.isLinkedProfileDisabled:Ljava/lang/Boolean;
            ifnonnull 3
         1: .line 1942
            new com.sun.imageio.plugins.bmp.BMPImageReader$4
            dup
            invokespecial com.sun.imageio.plugins.bmp.BMPImageReader$4.<init>:()V
            astore 0 /* a */
        start local 0 // java.security.PrivilegedAction a
         2: .line 1947
            aload 0 /* a */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            putstatic com.sun.imageio.plugins.bmp.BMPImageReader.isLinkedProfileDisabled:Ljava/lang/Boolean;
        end local 0 // java.security.PrivilegedAction a
         3: .line 1949
      StackMap locals:
      StackMap stack:
            getstatic com.sun.imageio.plugins.bmp.BMPImageReader.isLinkedProfileDisabled:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifeq 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_1
      StackMap locals:
      StackMap stack: int
         5: ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            2    3     0     a  Ljava/security/PrivilegedAction<Ljava/lang/Boolean;>;

  private static boolean isUncOrDevicePath(byte[]);
    descriptor: ([B)Z
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // byte[] p
         0: .line 1966
            getstatic com.sun.imageio.plugins.bmp.BMPImageReader.isWindowsPlatform:Ljava/lang/Boolean;
            ifnonnull 3
         1: .line 1967
            new com.sun.imageio.plugins.bmp.BMPImageReader$5
            dup
            invokespecial com.sun.imageio.plugins.bmp.BMPImageReader$5.<init>:()V
            astore 1 /* a */
        start local 1 // java.security.PrivilegedAction a
         2: .line 1974
            aload 1 /* a */
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.Boolean
            putstatic com.sun.imageio.plugins.bmp.BMPImageReader.isWindowsPlatform:Ljava/lang/Boolean;
        end local 1 // java.security.PrivilegedAction a
         3: .line 1977
      StackMap locals:
      StackMap stack:
            getstatic com.sun.imageio.plugins.bmp.BMPImageReader.isWindowsPlatform:Ljava/lang/Boolean;
            invokevirtual java.lang.Boolean.booleanValue:()Z
            ifne 5
         4: .line 1979
            iconst_0
            ireturn
         5: .line 1983
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            iconst_0
            baload
            bipush 47
            if_icmpne 6
            aload 0 /* p */
            iconst_0
            bipush 92
            bastore
         6: .line 1984
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            iconst_1
            baload
            bipush 47
            if_icmpne 7
            aload 0 /* p */
            iconst_1
            bipush 92
            bastore
         7: .line 1985
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            iconst_3
            baload
            bipush 47
            if_icmpne 8
            aload 0 /* p */
            iconst_3
            bipush 92
            bastore
         8: .line 1988
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            iconst_0
            baload
            bipush 92
            if_icmpne 16
            aload 0 /* p */
            iconst_1
            baload
            bipush 92
            if_icmpne 16
         9: .line 1989
            aload 0 /* p */
            iconst_2
            baload
            bipush 63
            if_icmpne 15
            aload 0 /* p */
            iconst_3
            baload
            bipush 92
            if_icmpne 15
        10: .line 1991
            aload 0 /* p */
            iconst_4
            baload
            bipush 85
            if_icmpeq 11
            aload 0 /* p */
            iconst_4
            baload
            bipush 117
            if_icmpne 14
        11: .line 1992
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            iconst_5
            baload
            bipush 78
            if_icmpeq 12
            aload 0 /* p */
            iconst_5
            baload
            bipush 110
            if_icmpne 14
        12: .line 1993
      StackMap locals:
      StackMap stack:
            aload 0 /* p */
            bipush 6
            baload
            bipush 67
            if_icmpeq 13
            aload 0 /* p */
            bipush 6
            baload
            bipush 99
            if_icmpne 14
        13: .line 1991
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
        14: iconst_0
            ireturn
        15: .line 1996
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        16: .line 1999
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // byte[] p
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0     p  [B
            2    3     1     a  Ljava/security/PrivilegedAction<Ljava/lang/Boolean;>;
    MethodParameters:
      Name  Flags
      p     

  static void access$0(com.sun.imageio.plugins.bmp.BMPImageReader, float);
    descriptor: (Lcom/sun/imageio/plugins/bmp/BMPImageReader;F)V
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            fload 1
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageProgress:(F)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static void access$1(com.sun.imageio.plugins.bmp.BMPImageReader, java.awt.image.BufferedImage, int, int, int, int, int, int, int[]);
    descriptor: (Lcom/sun/imageio/plugins/bmp/BMPImageReader;Ljava/awt/image/BufferedImage;IIIIII[I)V
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=9, locals=9, args_size=9
         0: .line 1
            aload 0
            aload 1
            iload 2
            iload 3
            iload 4
            iload 5
            iload 6
            iload 7
            aload 8
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processImageUpdate:(Ljava/awt/image/BufferedImage;IIIIII[I)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static void access$2(com.sun.imageio.plugins.bmp.BMPImageReader, java.awt.image.BufferedImage);
    descriptor: (Lcom/sun/imageio/plugins/bmp/BMPImageReader;Ljava/awt/image/BufferedImage;)V
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processPassComplete:(Ljava/awt/image/BufferedImage;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static void access$3(com.sun.imageio.plugins.bmp.BMPImageReader, java.awt.image.BufferedImage, int, int, int, int, int, int, int, int[]);
    descriptor: (Lcom/sun/imageio/plugins/bmp/BMPImageReader;Ljava/awt/image/BufferedImage;IIIIIII[I)V
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=10, locals=10, args_size=10
         0: .line 1
            aload 0
            aload 1
            iload 2
            iload 3
            iload 4
            iload 5
            iload 6
            iload 7
            iload 8
            aload 9
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processPassStarted:(Ljava/awt/image/BufferedImage;IIIIIII[I)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static void access$4(com.sun.imageio.plugins.bmp.BMPImageReader, java.lang.String);
    descriptor: (Lcom/sun/imageio/plugins/bmp/BMPImageReader;Ljava/lang/String;)V
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
         0: .line 1
            aload 0
            aload 1
            invokevirtual com.sun.imageio.plugins.bmp.BMPImageReader.processWarningOccurred:(Ljava/lang/String;)V
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature
}
SourceFile: "BMPImageReader.java"
NestMembers:
  com.sun.imageio.plugins.bmp.BMPImageReader$1  com.sun.imageio.plugins.bmp.BMPImageReader$2  com.sun.imageio.plugins.bmp.BMPImageReader$3  com.sun.imageio.plugins.bmp.BMPImageReader$4  com.sun.imageio.plugins.bmp.BMPImageReader$5  com.sun.imageio.plugins.bmp.BMPImageReader$EmbeddedProgressAdapter
InnerClasses:
  com.sun.imageio.plugins.bmp.BMPImageReader$1
  com.sun.imageio.plugins.bmp.BMPImageReader$2
  com.sun.imageio.plugins.bmp.BMPImageReader$3
  com.sun.imageio.plugins.bmp.BMPImageReader$4
  com.sun.imageio.plugins.bmp.BMPImageReader$5
  private EmbeddedProgressAdapter = com.sun.imageio.plugins.bmp.BMPImageReader$EmbeddedProgressAdapter of com.sun.imageio.plugins.bmp.BMPImageReader