public final class com.sun.media.sound.AiffFileReader extends com.sun.media.sound.SunFileReader
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.sun.media.sound.AiffFileReader
  super_class: com.sun.media.sound.SunFileReader
{
  private static final int MAX_READ_LENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.media.sound.AiffFileReader this
         0: .line 57
            aload 0 /* this */
            invokespecial com.sun.media.sound.SunFileReader.<init>:()V
         1: .line 58
            return
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/media/sound/AiffFileReader;

  public javax.sound.sampled.AudioFileFormat getAudioFileFormat(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)Ljavax/sound/sampled/AudioFileFormat;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.InputStream stream
         0: .line 85
            aload 0 /* this */
            aload 1 /* stream */
            iconst_1
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 2 /* aff */
        start local 2 // javax.sound.sampled.AudioFileFormat aff
         1: .line 88
            aload 1 /* stream */
            invokevirtual java.io.InputStream.reset:()V
         2: .line 89
            aload 2 /* aff */
            areturn
        end local 2 // javax.sound.sampled.AudioFileFormat aff
        end local 1 // java.io.InputStream stream
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/sun/media/sound/AiffFileReader;
            0    3     1  stream  Ljava/io/InputStream;
            1    3     2     aff  Ljavax/sound/sampled/AudioFileFormat;
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
        Name  Flags
      stream  

  public javax.sound.sampled.AudioFileFormat getAudioFileFormat(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljavax/sound/sampled/AudioFileFormat;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.net.URL url
         0: .line 104
            aconst_null
            astore 2 /* fileFormat */
        start local 2 // javax.sound.sampled.AudioFileFormat fileFormat
         1: .line 105
            aload 1 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            astore 3 /* urlStream */
        start local 3 // java.io.InputStream urlStream
         2: .line 107
            aload 0 /* this */
            aload 3 /* urlStream */
            iconst_0
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 2 /* fileFormat */
         3: .line 108
            goto 7
      StackMap locals: com.sun.media.sound.AiffFileReader java.net.URL javax.sound.sampled.AudioFileFormat java.io.InputStream
      StackMap stack: java.lang.Throwable
         4: astore 4
         5: .line 109
            aload 3 /* urlStream */
            invokevirtual java.io.InputStream.close:()V
         6: .line 110
            aload 4
            athrow
         7: .line 109
      StackMap locals:
      StackMap stack:
            aload 3 /* urlStream */
            invokevirtual java.io.InputStream.close:()V
         8: .line 111
            aload 2 /* fileFormat */
            areturn
        end local 3 // java.io.InputStream urlStream
        end local 2 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 1 // java.net.URL url
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lcom/sun/media/sound/AiffFileReader;
            0    9     1         url  Ljava/net/URL;
            1    9     2  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
            2    9     3   urlStream  Ljava/io/InputStream;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
      Name  Flags
      url   

  public javax.sound.sampled.AudioFileFormat getAudioFileFormat(java.io.File);
    descriptor: (Ljava/io/File;)Ljavax/sound/sampled/AudioFileFormat;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.File file
         0: .line 126
            aconst_null
            astore 2 /* fileFormat */
        start local 2 // javax.sound.sampled.AudioFileFormat fileFormat
         1: .line 127
            new java.io.FileInputStream
            dup
            aload 1 /* file */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 3 /* fis */
        start local 3 // java.io.FileInputStream fis
         2: .line 130
            aload 0 /* this */
            aload 3 /* fis */
            iconst_0
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 2 /* fileFormat */
         3: .line 131
            goto 7
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.File javax.sound.sampled.AudioFileFormat java.io.FileInputStream
      StackMap stack: java.lang.Throwable
         4: astore 4
         5: .line 132
            aload 3 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
         6: .line 133
            aload 4
            athrow
         7: .line 132
      StackMap locals:
      StackMap stack:
            aload 3 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
         8: .line 135
            aload 2 /* fileFormat */
            areturn
        end local 3 // java.io.FileInputStream fis
        end local 2 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 1 // java.io.File file
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lcom/sun/media/sound/AiffFileReader;
            0    9     1        file  Ljava/io/File;
            1    9     2  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
            2    9     3         fis  Ljava/io/FileInputStream;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  public javax.sound.sampled.AudioInputStream getAudioInputStream(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)Ljavax/sound/sampled/AudioInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.InputStream stream
         0: .line 162
            aload 0 /* this */
            aload 1 /* stream */
            iconst_1
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 2 /* fileFormat */
        start local 2 // javax.sound.sampled.AudioFileFormat fileFormat
         1: .line 166
            new javax.sound.sampled.AudioInputStream
            dup
            aload 1 /* stream */
            aload 2 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFormat:()Ljavax/sound/sampled/AudioFormat;
            aload 2 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFrameLength:()I
            i2l
            invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
            areturn
        end local 2 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 1 // java.io.InputStream stream
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/media/sound/AiffFileReader;
            0    2     1      stream  Ljava/io/InputStream;
            1    2     2  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
        Name  Flags
      stream  

  public javax.sound.sampled.AudioInputStream getAudioInputStream(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljavax/sound/sampled/AudioInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.net.URL url
         0: .line 182
            aload 1 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            astore 2 /* urlStream */
        start local 2 // java.io.InputStream urlStream
         1: .line 183
            aconst_null
            astore 3 /* fileFormat */
        start local 3 // javax.sound.sampled.AudioFileFormat fileFormat
         2: .line 185
            aload 0 /* this */
            aload 2 /* urlStream */
            iconst_0
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 3 /* fileFormat */
         3: .line 186
            goto 8
      StackMap locals: com.sun.media.sound.AiffFileReader java.net.URL java.io.InputStream javax.sound.sampled.AudioFileFormat
      StackMap stack: java.lang.Throwable
         4: astore 4
         5: .line 187
            aload 3 /* fileFormat */
            ifnonnull 7
         6: .line 188
            aload 2 /* urlStream */
            invokevirtual java.io.InputStream.close:()V
         7: .line 190
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 4
            athrow
         8: .line 187
      StackMap locals:
      StackMap stack:
            aload 3 /* fileFormat */
            ifnonnull 10
         9: .line 188
            aload 2 /* urlStream */
            invokevirtual java.io.InputStream.close:()V
        10: .line 191
      StackMap locals:
      StackMap stack:
            new javax.sound.sampled.AudioInputStream
            dup
            aload 2 /* urlStream */
            aload 3 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFormat:()Ljavax/sound/sampled/AudioFormat;
            aload 3 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFrameLength:()I
            i2l
            invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
            areturn
        end local 3 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 2 // java.io.InputStream urlStream
        end local 1 // java.net.URL url
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lcom/sun/media/sound/AiffFileReader;
            0   11     1         url  Ljava/net/URL;
            1   11     2   urlStream  Ljava/io/InputStream;
            2   11     3  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
      Name  Flags
      url   

  public javax.sound.sampled.AudioInputStream getAudioInputStream(java.io.File);
    descriptor: (Ljava/io/File;)Ljavax/sound/sampled/AudioInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.File file
         0: .line 209
            new java.io.FileInputStream
            dup
            aload 1 /* file */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 2 /* fis */
        start local 2 // java.io.FileInputStream fis
         1: .line 210
            aconst_null
            astore 3 /* fileFormat */
        start local 3 // javax.sound.sampled.AudioFileFormat fileFormat
         2: .line 213
            aload 0 /* this */
            aload 2 /* fis */
            iconst_0
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 3 /* fileFormat */
         3: .line 214
            goto 8
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.File java.io.FileInputStream javax.sound.sampled.AudioFileFormat
      StackMap stack: java.lang.Throwable
         4: astore 4
         5: .line 215
            aload 3 /* fileFormat */
            ifnonnull 7
         6: .line 216
            aload 2 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
         7: .line 218
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 4
            athrow
         8: .line 215
      StackMap locals:
      StackMap stack:
            aload 3 /* fileFormat */
            ifnonnull 10
         9: .line 216
            aload 2 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
        10: .line 219
      StackMap locals:
      StackMap stack:
            new javax.sound.sampled.AudioInputStream
            dup
            aload 2 /* fis */
            aload 3 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFormat:()Ljavax/sound/sampled/AudioFormat;
            aload 3 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFrameLength:()I
            i2l
            invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
            areturn
        end local 3 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 2 // java.io.FileInputStream fis
        end local 1 // java.io.File file
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lcom/sun/media/sound/AiffFileReader;
            0   11     1        file  Ljava/io/File;
            1   11     2         fis  Ljava/io/FileInputStream;
            2   11     3  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  private javax.sound.sampled.AudioFileFormat getCOMM(java.io.InputStream, boolean);
    descriptor: (Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=21, args_size=3
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.InputStream is
        start local 2 // boolean doReset
         0: .line 227
            new java.io.DataInputStream
            dup
            aload 1 /* is */
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 3 /* dis */
        start local 3 // java.io.DataInputStream dis
         1: .line 229
            iload 2 /* doReset */
            ifeq 3
         2: .line 230
            aload 3 /* dis */
            bipush 8
            invokevirtual java.io.DataInputStream.mark:(I)V
         3: .line 236
      StackMap locals: java.io.DataInputStream
      StackMap stack:
            iconst_0
            istore 4 /* fileRead */
        start local 4 // int fileRead
         4: .line 237
            iconst_0
            istore 5 /* dataLength */
        start local 5 // int dataLength
         5: .line 238
            aconst_null
            astore 6 /* format */
        start local 6 // javax.sound.sampled.AudioFormat format
         6: .line 241
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 7 /* magic */
        start local 7 // int magic
         7: .line 244
            iload 7 /* magic */
            ldc 1179603533
            if_icmpeq 11
         8: .line 246
            iload 2 /* doReset */
            ifeq 10
         9: .line 247
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.reset:()V
        10: .line 249
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.InputStream int java.io.DataInputStream int int javax.sound.sampled.AudioFormat int
      StackMap stack:
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "not an AIFF file"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 252
      StackMap locals:
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 8 /* length */
        start local 8 // int length
        12: .line 253
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 9 /* iffType */
        start local 9 // int iffType
        13: .line 254
            iinc 4 /* fileRead */ 12
        14: .line 257
            iload 8 /* length */
            ifgt 18
        15: .line 258
            iconst_m1
            istore 8 /* length */
        16: .line 259
            iconst_m1
            istore 10 /* totallength */
        start local 10 // int totallength
        17: .line 260
            goto 19
        end local 10 // int totallength
        18: .line 261
      StackMap locals: int int
      StackMap stack:
            iload 8 /* length */
            bipush 8
            iadd
            istore 10 /* totallength */
        start local 10 // int totallength
        19: .line 265
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 11 /* aifc */
        start local 11 // boolean aifc
        20: .line 267
            iload 9 /* iffType */
            ldc 1095321155
            if_icmpne 22
        21: .line 268
            iconst_1
            istore 11 /* aifc */
        22: .line 273
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 12 /* ssndFound */
        start local 12 // boolean ssndFound
        23: .line 274
            goto 69
        24: .line 276
      StackMap locals: int
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 13 /* chunkName */
        start local 13 // int chunkName
        25: .line 277
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 14 /* chunkLen */
        start local 14 // int chunkLen
        26: .line 278
            iinc 4 /* fileRead */ 8
        27: .line 280
            iconst_0
            istore 15 /* chunkRead */
        start local 15 // int chunkRead
        28: .line 283
            iload 13 /* chunkName */
            lookupswitch { // 3
           1129270605: 30
           1180058962: 29
           1397968452: 55
              default: 63
          }
        29: .line 286
      StackMap locals: int int int
      StackMap stack:
            goto 63
        30: .line 291
      StackMap locals:
      StackMap stack:
            iload 11 /* aifc */
            ifne 31
            iload 14 /* chunkLen */
            bipush 18
            if_icmplt 32
      StackMap locals:
      StackMap stack:
        31: iload 11 /* aifc */
            ifeq 33
            iload 14 /* chunkLen */
            bipush 22
            if_icmpge 33
        32: .line 292
      StackMap locals:
      StackMap stack:
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "Invalid AIFF/COMM chunksize"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        33: .line 295
      StackMap locals:
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readShort:()S
            istore 16 /* channels */
        start local 16 // int channels
        34: .line 296
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            pop
        35: .line 297
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readShort:()S
            istore 17 /* sampleSizeInBits */
        start local 17 // int sampleSizeInBits
        36: .line 298
            aload 0 /* this */
            aload 3 /* dis */
            invokevirtual com.sun.media.sound.AiffFileReader.read_ieee_extended:(Ljava/io/DataInputStream;)D
            d2f
            fstore 18 /* sampleRate */
        start local 18 // float sampleRate
        37: .line 299
            iinc 15 /* chunkRead */ 18
        38: .line 303
            getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_SIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
            astore 19 /* encoding */
        start local 19 // javax.sound.sampled.AudioFormat$Encoding encoding
        39: .line 305
            iload 11 /* aifc */
            ifeq 49
        40: .line 306
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 20 /* enc */
        start local 20 // int enc
        41: iinc 15 /* chunkRead */ 4
        42: .line 307
            iload 20 /* enc */
            lookupswitch { // 2
           1313820229: 43
           1970037111: 45
              default: 48
          }
        43: .line 309
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.InputStream int java.io.DataInputStream int int javax.sound.sampled.AudioFormat int int int int int int int int int int int float javax.sound.sampled.AudioFormat$Encoding int
      StackMap stack:
            getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_SIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
            astore 19 /* encoding */
        44: .line 310
            goto 49
        45: .line 312
      StackMap locals:
      StackMap stack:
            getstatic javax.sound.sampled.AudioFormat$Encoding.ULAW:Ljavax/sound/sampled/AudioFormat$Encoding;
            astore 19 /* encoding */
        46: .line 313
            bipush 8
            istore 17 /* sampleSizeInBits */
        47: .line 314
            goto 49
        48: .line 316
      StackMap locals:
      StackMap stack:
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "Invalid AIFF encoding"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        end local 20 // int enc
        49: .line 319
      StackMap locals:
      StackMap stack:
            iload 17 /* sampleSizeInBits */
            iload 16 /* channels */
            invokestatic com.sun.media.sound.AiffFileReader.calculatePCMFrameSize:(II)I
            istore 20 /* frameSize */
        start local 20 // int frameSize
        50: .line 324
            new javax.sound.sampled.AudioFormat
            dup
            aload 19 /* encoding */
            fload 18 /* sampleRate */
        51: .line 325
            iload 17 /* sampleSizeInBits */
            iload 16 /* channels */
        52: .line 326
            iload 20 /* frameSize */
            fload 18 /* sampleRate */
            iconst_1
        53: .line 324
            invokespecial javax.sound.sampled.AudioFormat.<init>:(Ljavax/sound/sampled/AudioFormat$Encoding;FIIIFZ)V
            astore 6 /* format */
        54: .line 327
            goto 63
        end local 20 // int frameSize
        end local 19 // javax.sound.sampled.AudioFormat$Encoding encoding
        end local 18 // float sampleRate
        end local 17 // int sampleSizeInBits
        end local 16 // int channels
        55: .line 332
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.InputStream int java.io.DataInputStream int int javax.sound.sampled.AudioFormat int int int int int int int int int
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            pop
        56: .line 333
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            pop
        57: .line 334
            iinc 15 /* chunkRead */ 8
        58: .line 347
            iload 14 /* chunkLen */
            iload 8 /* length */
            if_icmpge 61
        59: .line 348
            iload 14 /* chunkLen */
            iload 15 /* chunkRead */
            isub
            istore 5 /* dataLength */
        60: .line 349
            goto 62
        61: .line 351
      StackMap locals:
      StackMap stack:
            iload 8 /* length */
            iload 4 /* fileRead */
            iload 15 /* chunkRead */
            iadd
            isub
            istore 5 /* dataLength */
        62: .line 353
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 12 /* ssndFound */
        63: .line 355
      StackMap locals:
      StackMap stack:
            iload 4 /* fileRead */
        64: .line 356
            iload 15 /* chunkRead */
            iadd
            istore 4 /* fileRead */
        65: .line 358
            iload 12 /* ssndFound */
            ifne 69
        66: .line 359
            iload 14 /* chunkLen */
            iload 15 /* chunkRead */
            isub
            istore 16 /* toSkip */
        start local 16 // int toSkip
        67: .line 360
            iload 16 /* toSkip */
            ifle 69
        68: .line 361
            iload 4 /* fileRead */
            aload 3 /* dis */
            iload 16 /* toSkip */
            invokevirtual java.io.DataInputStream.skipBytes:(I)I
            iadd
            istore 4 /* fileRead */
        end local 16 // int toSkip
        end local 15 // int chunkRead
        end local 14 // int chunkLen
        end local 13 // int chunkName
        69: .line 274
      StackMap locals:
      StackMap stack:
            iload 12 /* ssndFound */
            ifeq 24
        70: .line 366
            aload 6 /* format */
            ifnonnull 72
        71: .line 367
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "missing COMM chunk"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        72: .line 369
      StackMap locals:
      StackMap stack:
            iload 11 /* aifc */
            ifeq 73
            getstatic javax.sound.sampled.AudioFileFormat$Type.AIFC:Ljavax/sound/sampled/AudioFileFormat$Type;
            goto 74
      StackMap locals:
      StackMap stack:
        73: getstatic javax.sound.sampled.AudioFileFormat$Type.AIFF:Ljavax/sound/sampled/AudioFileFormat$Type;
      StackMap locals:
      StackMap stack: javax.sound.sampled.AudioFileFormat$Type
        74: astore 13 /* type */
        start local 13 // javax.sound.sampled.AudioFileFormat$Type type
        75: .line 371
            new com.sun.media.sound.AiffFileFormat
            dup
            aload 13 /* type */
            iload 10 /* totallength */
            aload 6 /* format */
            iload 5 /* dataLength */
            aload 6 /* format */
            invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
            idiv
            invokespecial com.sun.media.sound.AiffFileFormat.<init>:(Ljavax/sound/sampled/AudioFileFormat$Type;ILjavax/sound/sampled/AudioFormat;I)V
            areturn
        end local 13 // javax.sound.sampled.AudioFileFormat$Type type
        end local 12 // boolean ssndFound
        end local 11 // boolean aifc
        end local 10 // int totallength
        end local 9 // int iffType
        end local 8 // int length
        end local 7 // int magic
        end local 6 // javax.sound.sampled.AudioFormat format
        end local 5 // int dataLength
        end local 4 // int fileRead
        end local 3 // java.io.DataInputStream dis
        end local 2 // boolean doReset
        end local 1 // java.io.InputStream is
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   76     0              this  Lcom/sun/media/sound/AiffFileReader;
            0   76     1                is  Ljava/io/InputStream;
            0   76     2           doReset  Z
            1   76     3               dis  Ljava/io/DataInputStream;
            4   76     4          fileRead  I
            5   76     5        dataLength  I
            6   76     6            format  Ljavax/sound/sampled/AudioFormat;
            7   76     7             magic  I
           12   76     8            length  I
           13   76     9           iffType  I
           17   18    10       totallength  I
           19   76    10       totallength  I
           20   76    11              aifc  Z
           23   76    12         ssndFound  Z
           25   69    13         chunkName  I
           26   69    14          chunkLen  I
           28   69    15         chunkRead  I
           34   55    16          channels  I
           36   55    17  sampleSizeInBits  I
           37   55    18        sampleRate  F
           39   55    19          encoding  Ljavax/sound/sampled/AudioFormat$Encoding;
           41   49    20               enc  I
           50   55    20         frameSize  I
           67   69    16            toSkip  I
           75   76    13              type  Ljavax/sound/sampled/AudioFileFormat$Type;
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
         Name  Flags
      is       
      doReset  

  private void write_ieee_extended(java.io.DataOutputStream, double);
    descriptor: (Ljava/io/DataOutputStream;D)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.DataOutputStream dos
        start local 2 // double f
         0: .line 384
            sipush 16398
            istore 4 /* exponent */
        start local 4 // int exponent
         1: .line 385
            dload 2 /* f */
            dstore 5 /* highMantissa */
        start local 5 // double highMantissa
         2: .line 389
            goto 5
         3: .line 390
      StackMap locals: int double
      StackMap stack:
            dload 5 /* highMantissa */
            ldc 2.0
            dmul
            dstore 5 /* highMantissa */
         4: .line 391
            iinc 4 /* exponent */ -1
         5: .line 389
      StackMap locals:
      StackMap stack:
            dload 5 /* highMantissa */
            ldc 44000.0
            dcmpg
            iflt 3
         6: .line 393
            aload 1 /* dos */
            iload 4 /* exponent */
            invokevirtual java.io.DataOutputStream.writeShort:(I)V
         7: .line 394
            aload 1 /* dos */
            dload 5 /* highMantissa */
            d2i
            bipush 16
            ishl
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
         8: .line 395
            aload 1 /* dos */
            iconst_0
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
         9: .line 396
            return
        end local 5 // double highMantissa
        end local 4 // int exponent
        end local 2 // double f
        end local 1 // java.io.DataOutputStream dos
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lcom/sun/media/sound/AiffFileReader;
            0   10     1           dos  Ljava/io/DataOutputStream;
            0   10     2             f  D
            1   10     4      exponent  I
            2   10     5  highMantissa  D
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dos   
      f     

  private double read_ieee_extended(java.io.DataInputStream);
    descriptor: (Ljava/io/DataInputStream;)D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=15, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.DataInputStream dis
         0: .line 408
            dconst_0
            dstore 2 /* f */
        start local 2 // double f
         1: .line 409
            iconst_0
            istore 4 /* expon */
        start local 4 // int expon
         2: .line 410
            lconst_0
            lstore 5 /* hiMant */
        start local 5 // long hiMant
         3: lconst_0
            lstore 7 /* loMant */
        start local 7 // long loMant
         4: .line 412
            ldc 3.4028234663852886E38
            dstore 13 /* HUGE */
        start local 13 // double HUGE
         5: .line 415
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 4 /* expon */
         6: .line 417
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            i2l
            lstore 9 /* t1 */
        start local 9 // long t1
         7: .line 418
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            i2l
            lstore 11 /* t2 */
        start local 11 // long t2
         8: .line 419
            lload 9 /* t1 */
            bipush 16
            lshl
            lload 11 /* t2 */
            lor
            lstore 5 /* hiMant */
         9: .line 421
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            i2l
            lstore 9 /* t1 */
        10: .line 422
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            i2l
            lstore 11 /* t2 */
        11: .line 423
            lload 9 /* t1 */
            bipush 16
            lshl
            lload 11 /* t2 */
            lor
            lstore 7 /* loMant */
        12: .line 425
            iload 4 /* expon */
            ifne 15
            lload 5 /* hiMant */
            lconst_0
            lcmp
            ifne 15
            lload 7 /* loMant */
            lconst_0
            lcmp
            ifne 15
        13: .line 426
            dconst_0
            dstore 2 /* f */
        14: .line 427
            goto 22
        15: .line 428
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.DataInputStream double int long long long long double
      StackMap stack:
            iload 4 /* expon */
            sipush 32767
            if_icmpne 17
        16: .line 429
            dload 13 /* HUGE */
            dstore 2 /* f */
            goto 22
        17: .line 431
      StackMap locals:
      StackMap stack:
            iinc 4 /* expon */ -16383
        18: .line 432
            iinc 4 /* expon */ -31
        19: .line 433
            lload 5 /* hiMant */
            l2d
            ldc 2.0
            iload 4 /* expon */
            i2d
            invokestatic java.lang.Math.pow:(DD)D
            dmul
            dstore 2 /* f */
        20: .line 434
            iinc 4 /* expon */ -32
        21: .line 435
            dload 2 /* f */
            lload 7 /* loMant */
            l2d
            ldc 2.0
            iload 4 /* expon */
            i2d
            invokestatic java.lang.Math.pow:(DD)D
            dmul
            dadd
            dstore 2 /* f */
        22: .line 439
      StackMap locals:
      StackMap stack:
            dload 2 /* f */
            dreturn
        end local 13 // double HUGE
        end local 11 // long t2
        end local 9 // long t1
        end local 7 // long loMant
        end local 5 // long hiMant
        end local 4 // int expon
        end local 2 // double f
        end local 1 // java.io.DataInputStream dis
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   23     0    this  Lcom/sun/media/sound/AiffFileReader;
            0   23     1     dis  Ljava/io/DataInputStream;
            1   23     2       f  D
            2   23     4   expon  I
            3   23     5  hiMant  J
            4   23     7  loMant  J
            7   23     9      t1  J
            8   23    11      t2  J
            5   23    13    HUGE  D
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dis   
}
SourceFile: "AiffFileReader.java"
InnerClasses:
  public Type = javax.sound.sampled.AudioFileFormat$Type of javax.sound.sampled.AudioFileFormat
  public Encoding = javax.sound.sampled.AudioFormat$Encoding of javax.sound.sampled.AudioFormat