public class com.sun.imageio.plugins.common.ReaderUtil
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.imageio.plugins.common.ReaderUtil
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.imageio.plugins.common.ReaderUtil this
         0: .line 40
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.sun.imageio.plugins.common.ReaderUtil this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/imageio/plugins/common/ReaderUtil;

  private static void computeUpdatedPixels(int, int, int, int, int, int, int, int, int, int[], int);
    descriptor: (IIIIIIIII[II)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=18, args_size=11
        start local 0 // int sourceOffset
        start local 1 // int sourceExtent
        start local 2 // int destinationOffset
        start local 3 // int dstMin
        start local 4 // int dstMax
        start local 5 // int sourceSubsampling
        start local 6 // int passStart
        start local 7 // int passExtent
        start local 8 // int passPeriod
        start local 9 // int[] vals
        start local 10 // int offset
         0: .line 84
            iconst_0
            istore 11 /* gotPixel */
        start local 11 // boolean gotPixel
         1: .line 85
            iconst_m1
            istore 12 /* firstDst */
        start local 12 // int firstDst
         2: .line 86
            iconst_m1
            istore 13 /* secondDst */
        start local 13 // int secondDst
         3: .line 87
            iconst_m1
            istore 14 /* lastDst */
        start local 14 // int lastDst
         4: .line 89
            iconst_0
            istore 15 /* i */
        start local 15 // int i
         5: goto 28
         6: .line 90
      StackMap locals: int int int int int int int int int int[] int int int int int int
      StackMap stack:
            iload 6 /* passStart */
            iload 15 /* i */
            iload 8 /* passPeriod */
            imul
            iadd
            istore 16 /* src */
        start local 16 // int src
         7: .line 91
            iload 16 /* src */
            iload 0 /* sourceOffset */
            if_icmpge 9
         8: .line 92
            goto 27
         9: .line 94
      StackMap locals: int
      StackMap stack:
            iload 16 /* src */
            iload 0 /* sourceOffset */
            isub
            iload 5 /* sourceSubsampling */
            irem
            ifeq 11
        10: .line 95
            goto 27
        11: .line 97
      StackMap locals:
      StackMap stack:
            iload 16 /* src */
            iload 0 /* sourceOffset */
            iload 1 /* sourceExtent */
            iadd
            if_icmplt 13
        12: .line 98
            goto 29
        13: .line 101
      StackMap locals:
      StackMap stack:
            iload 2 /* destinationOffset */
        14: .line 102
            iload 16 /* src */
            iload 0 /* sourceOffset */
            isub
            iload 5 /* sourceSubsampling */
            idiv
        15: .line 101
            iadd
            istore 17 /* dst */
        start local 17 // int dst
        16: .line 103
            iload 17 /* dst */
            iload 3 /* dstMin */
            if_icmpge 18
        17: .line 104
            goto 27
        18: .line 106
      StackMap locals: int
      StackMap stack:
            iload 17 /* dst */
            iload 4 /* dstMax */
            if_icmple 20
        19: .line 107
            goto 29
        20: .line 110
      StackMap locals:
      StackMap stack:
            iload 11 /* gotPixel */
            ifne 24
        21: .line 111
            iload 17 /* dst */
            istore 12 /* firstDst */
        22: .line 112
            iconst_1
            istore 11 /* gotPixel */
        23: .line 113
            goto 26
      StackMap locals:
      StackMap stack:
        24: iload 13 /* secondDst */
            iconst_m1
            if_icmpne 26
        25: .line 114
            iload 17 /* dst */
            istore 13 /* secondDst */
        26: .line 116
      StackMap locals:
      StackMap stack:
            iload 17 /* dst */
            istore 14 /* lastDst */
        end local 17 // int dst
        end local 16 // int src
        27: .line 89
      StackMap locals:
      StackMap stack:
            iinc 15 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 15 /* i */
            iload 7 /* passExtent */
            if_icmplt 6
        end local 15 // int i
        29: .line 119
      StackMap locals:
      StackMap stack:
            aload 9 /* vals */
            iload 10 /* offset */
            iload 12 /* firstDst */
            iastore
        30: .line 122
            iload 11 /* gotPixel */
            ifne 33
        31: .line 123
            aload 9 /* vals */
            iload 10 /* offset */
            iconst_2
            iadd
            iconst_0
            iastore
        32: .line 124
            goto 34
        33: .line 125
      StackMap locals:
      StackMap stack:
            aload 9 /* vals */
            iload 10 /* offset */
            iconst_2
            iadd
            iload 14 /* lastDst */
            iload 12 /* firstDst */
            isub
            iconst_1
            iadd
            iastore
        34: .line 129
      StackMap locals:
      StackMap stack:
            aload 9 /* vals */
            iload 10 /* offset */
            iconst_4
            iadd
            iload 13 /* secondDst */
            iload 12 /* firstDst */
            isub
            iconst_1
            invokestatic java.lang.Math.max:(II)I
            iastore
        35: .line 130
            return
        end local 14 // int lastDst
        end local 13 // int secondDst
        end local 12 // int firstDst
        end local 11 // boolean gotPixel
        end local 10 // int offset
        end local 9 // int[] vals
        end local 8 // int passPeriod
        end local 7 // int passExtent
        end local 6 // int passStart
        end local 5 // int sourceSubsampling
        end local 4 // int dstMax
        end local 3 // int dstMin
        end local 2 // int destinationOffset
        end local 1 // int sourceExtent
        end local 0 // int sourceOffset
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   36     0       sourceOffset  I
            0   36     1       sourceExtent  I
            0   36     2  destinationOffset  I
            0   36     3             dstMin  I
            0   36     4             dstMax  I
            0   36     5  sourceSubsampling  I
            0   36     6          passStart  I
            0   36     7         passExtent  I
            0   36     8         passPeriod  I
            0   36     9               vals  [I
            0   36    10             offset  I
            1   36    11           gotPixel  Z
            2   36    12           firstDst  I
            3   36    13          secondDst  I
            4   36    14            lastDst  I
            5   29    15                  i  I
            7   27    16                src  I
           16   27    17                dst  I
    MethodParameters:
                   Name  Flags
      sourceOffset       
      sourceExtent       
      destinationOffset  
      dstMin             
      dstMax             
      sourceSubsampling  
      passStart          
      passExtent         
      passPeriod         
      vals               
      offset             

  public static int[] computeUpdatedPixels(java.awt.Rectangle, java.awt.Point, int, int, int, int, int, int, int, int, int, int, int, int);
    descriptor: (Ljava/awt/Rectangle;Ljava/awt/Point;IIIIIIIIIIII)[I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=11, locals=15, args_size=14
        start local 0 // java.awt.Rectangle sourceRegion
        start local 1 // java.awt.Point destinationOffset
        start local 2 // int dstMinX
        start local 3 // int dstMinY
        start local 4 // int dstMaxX
        start local 5 // int dstMaxY
        start local 6 // int sourceXSubsampling
        start local 7 // int sourceYSubsampling
        start local 8 // int passXStart
        start local 9 // int passYStart
        start local 10 // int passWidth
        start local 11 // int passHeight
        start local 12 // int passPeriodX
        start local 13 // int passPeriodY
         0: .line 190
            bipush 6
            newarray 10
            astore 14 /* vals */
        start local 14 // int[] vals
         1: .line 191
            aload 0 /* sourceRegion */
            getfield java.awt.Rectangle.x:I
            aload 0 /* sourceRegion */
            getfield java.awt.Rectangle.width:I
         2: .line 192
            aload 1 /* destinationOffset */
            getfield java.awt.Point.x:I
         3: .line 193
            iload 2 /* dstMinX */
            iload 4 /* dstMaxX */
            iload 6 /* sourceXSubsampling */
         4: .line 194
            iload 8 /* passXStart */
            iload 10 /* passWidth */
            iload 12 /* passPeriodX */
         5: .line 195
            aload 14 /* vals */
            iconst_0
         6: .line 191
            invokestatic com.sun.imageio.plugins.common.ReaderUtil.computeUpdatedPixels:(IIIIIIIII[II)V
         7: .line 196
            aload 0 /* sourceRegion */
            getfield java.awt.Rectangle.y:I
            aload 0 /* sourceRegion */
            getfield java.awt.Rectangle.height:I
         8: .line 197
            aload 1 /* destinationOffset */
            getfield java.awt.Point.y:I
         9: .line 198
            iload 3 /* dstMinY */
            iload 5 /* dstMaxY */
            iload 7 /* sourceYSubsampling */
        10: .line 199
            iload 9 /* passYStart */
            iload 11 /* passHeight */
            iload 13 /* passPeriodY */
        11: .line 200
            aload 14 /* vals */
            iconst_1
        12: .line 196
            invokestatic com.sun.imageio.plugins.common.ReaderUtil.computeUpdatedPixels:(IIIIIIIII[II)V
        13: .line 201
            aload 14 /* vals */
            areturn
        end local 14 // int[] vals
        end local 13 // int passPeriodY
        end local 12 // int passPeriodX
        end local 11 // int passHeight
        end local 10 // int passWidth
        end local 9 // int passYStart
        end local 8 // int passXStart
        end local 7 // int sourceYSubsampling
        end local 6 // int sourceXSubsampling
        end local 5 // int dstMaxY
        end local 4 // int dstMaxX
        end local 3 // int dstMinY
        end local 2 // int dstMinX
        end local 1 // java.awt.Point destinationOffset
        end local 0 // java.awt.Rectangle sourceRegion
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   14     0        sourceRegion  Ljava/awt/Rectangle;
            0   14     1   destinationOffset  Ljava/awt/Point;
            0   14     2             dstMinX  I
            0   14     3             dstMinY  I
            0   14     4             dstMaxX  I
            0   14     5             dstMaxY  I
            0   14     6  sourceXSubsampling  I
            0   14     7  sourceYSubsampling  I
            0   14     8          passXStart  I
            0   14     9          passYStart  I
            0   14    10           passWidth  I
            0   14    11          passHeight  I
            0   14    12         passPeriodX  I
            0   14    13         passPeriodY  I
            1   14    14                vals  [I
    MethodParameters:
                    Name  Flags
      sourceRegion        
      destinationOffset   
      dstMinX             
      dstMinY             
      dstMaxX             
      dstMaxY             
      sourceXSubsampling  
      sourceYSubsampling  
      passXStart          
      passYStart          
      passWidth           
      passHeight          
      passPeriodX         
      passPeriodY         

  public static int readMultiByteInteger(javax.imageio.stream.ImageInputStream);
    descriptor: (Ljavax/imageio/stream/ImageInputStream;)I
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // javax.imageio.stream.ImageInputStream iis
         0: .line 207
            aload 0 /* iis */
            invokeinterface javax.imageio.stream.ImageInputStream.readByte:()B
            istore 1 /* value */
        start local 1 // int value
         1: .line 208
            iload 1 /* value */
            bipush 127
            iand
            istore 2 /* result */
        start local 2 // int result
         2: .line 209
            goto 6
         3: .line 210
      StackMap locals: int int
      StackMap stack:
            iload 2 /* result */
            bipush 7
            ishl
            istore 2 /* result */
         4: .line 211
            aload 0 /* iis */
            invokeinterface javax.imageio.stream.ImageInputStream.readByte:()B
            istore 1 /* value */
         5: .line 212
            iload 2 /* result */
            iload 1 /* value */
            bipush 127
            iand
            ior
            istore 2 /* result */
         6: .line 209
      StackMap locals:
      StackMap stack:
            iload 1 /* value */
            sipush 128
            iand
            sipush 128
            if_icmpeq 3
         7: .line 214
            iload 2 /* result */
            ireturn
        end local 2 // int result
        end local 1 // int value
        end local 0 // javax.imageio.stream.ImageInputStream iis
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0     iis  Ljavax/imageio/stream/ImageInputStream;
            1    8     1   value  I
            2    8     2  result  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      iis   
}
SourceFile: "ReaderUtil.java"