class sun.nio.fs.WindowsChannelFactory
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.nio.fs.WindowsChannelFactory
  super_class: java.lang.Object
{
  private static final jdk.internal.misc.JavaIOFileDescriptorAccess fdAccess;
    descriptor: Ljdk/internal/misc/JavaIOFileDescriptorAccess;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static final java.nio.file.OpenOption OPEN_REPARSE_POINT;
    descriptor: Ljava/nio/file/OpenOption;
    flags: (0x0018) ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 52
            invokestatic jdk.internal.misc.SharedSecrets.getJavaIOFileDescriptorAccess:()Ljdk/internal/misc/JavaIOFileDescriptorAccess;
         1: .line 51
            putstatic sun.nio.fs.WindowsChannelFactory.fdAccess:Ljdk/internal/misc/JavaIOFileDescriptorAccess;
         2: .line 60
            new sun.nio.fs.WindowsChannelFactory$1
            dup
            invokespecial sun.nio.fs.WindowsChannelFactory$1.<init>:()V
            putstatic sun.nio.fs.WindowsChannelFactory.OPEN_REPARSE_POINT:Ljava/nio/file/OpenOption;
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.nio.fs.WindowsChannelFactory this
         0: .line 54
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // sun.nio.fs.WindowsChannelFactory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/nio/fs/WindowsChannelFactory;

  static java.nio.channels.FileChannel newFileChannel(java.lang.String, java.lang.String, java.util.Set<? extends java.nio.file.OpenOption>, long);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;J)Ljava/nio/channels/FileChannel;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=6, locals=7, args_size=4
        start local 0 // java.lang.String pathForWindows
        start local 1 // java.lang.String pathToCheck
        start local 2 // java.util.Set options
        start local 3 // long pSecurityDescriptor
         0: .line 151
            aload 2 /* options */
            invokestatic sun.nio.fs.WindowsChannelFactory$Flags.toFlags:(Ljava/util/Set;)Lsun/nio/fs/WindowsChannelFactory$Flags;
            astore 5 /* flags */
        start local 5 // sun.nio.fs.WindowsChannelFactory$Flags flags
         1: .line 154
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
            ifne 6
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.write:Z
            ifne 6
         2: .line 155
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.append:Z
            ifeq 5
         3: .line 156
            aload 5 /* flags */
            iconst_1
            putfield sun.nio.fs.WindowsChannelFactory$Flags.write:Z
         4: .line 157
            goto 6
         5: .line 158
      StackMap locals: sun.nio.fs.WindowsChannelFactory$Flags
      StackMap stack:
            aload 5 /* flags */
            iconst_1
            putfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
         6: .line 163
      StackMap locals:
      StackMap stack:
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
            ifeq 8
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.append:Z
            ifeq 8
         7: .line 164
            new java.lang.IllegalArgumentException
            dup
            ldc "READ + APPEND not allowed"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 165
      StackMap locals:
      StackMap stack:
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.append:Z
            ifeq 10
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.truncateExisting:Z
            ifeq 10
         9: .line 166
            new java.lang.IllegalArgumentException
            dup
            ldc "APPEND + TRUNCATE_EXISTING not allowed"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* pathForWindows */
            aload 1 /* pathToCheck */
            aload 5 /* flags */
            lload 3 /* pSecurityDescriptor */
            invokestatic sun.nio.fs.WindowsChannelFactory.open:(Ljava/lang/String;Ljava/lang/String;Lsun/nio/fs/WindowsChannelFactory$Flags;J)Ljava/io/FileDescriptor;
            astore 6 /* fdObj */
        start local 6 // java.io.FileDescriptor fdObj
        11: .line 169
            aload 6 /* fdObj */
            aload 0 /* pathForWindows */
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
        12: .line 170
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.write:Z
            aload 5 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.direct:Z
            aconst_null
        13: .line 169
            invokestatic sun.nio.ch.FileChannelImpl.open:(Ljava/io/FileDescriptor;Ljava/lang/String;ZZZLjava/lang/Object;)Ljava/nio/channels/FileChannel;
            areturn
        end local 6 // java.io.FileDescriptor fdObj
        end local 5 // sun.nio.fs.WindowsChannelFactory$Flags flags
        end local 3 // long pSecurityDescriptor
        end local 2 // java.util.Set options
        end local 1 // java.lang.String pathToCheck
        end local 0 // java.lang.String pathForWindows
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   14     0       pathForWindows  Ljava/lang/String;
            0   14     1          pathToCheck  Ljava/lang/String;
            0   14     2              options  Ljava/util/Set<+Ljava/nio/file/OpenOption;>;
            0   14     3  pSecurityDescriptor  J
            1   14     5                flags  Lsun/nio/fs/WindowsChannelFactory$Flags;
           11   14     6                fdObj  Ljava/io/FileDescriptor;
    Exceptions:
      throws sun.nio.fs.WindowsException
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Set<+Ljava/nio/file/OpenOption;>;J)Ljava/nio/channels/FileChannel;
    MethodParameters:
                     Name  Flags
      pathForWindows       
      pathToCheck          
      options              
      pSecurityDescriptor  

  static java.nio.channels.AsynchronousFileChannel newAsynchronousFileChannel(java.lang.String, java.lang.String, java.util.Set<? extends java.nio.file.OpenOption>, long, sun.nio.ch.ThreadPool);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Set;JLsun/nio/ch/ThreadPool;)Ljava/nio/channels/AsynchronousFileChannel;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=5, locals=9, args_size=5
        start local 0 // java.lang.String pathForWindows
        start local 1 // java.lang.String pathToCheck
        start local 2 // java.util.Set options
        start local 3 // long pSecurityDescriptor
        start local 5 // sun.nio.ch.ThreadPool pool
         0: .line 190
            aload 2 /* options */
            invokestatic sun.nio.fs.WindowsChannelFactory$Flags.toFlags:(Ljava/util/Set;)Lsun/nio/fs/WindowsChannelFactory$Flags;
            astore 6 /* flags */
        start local 6 // sun.nio.fs.WindowsChannelFactory$Flags flags
         1: .line 193
            aload 6 /* flags */
            iconst_1
            putfield sun.nio.fs.WindowsChannelFactory$Flags.overlapped:Z
         2: .line 196
            aload 6 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
            ifne 4
            aload 6 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.write:Z
            ifne 4
         3: .line 197
            aload 6 /* flags */
            iconst_1
            putfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
         4: .line 201
      StackMap locals: sun.nio.fs.WindowsChannelFactory$Flags
      StackMap stack:
            aload 6 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.append:Z
            ifeq 6
         5: .line 202
            new java.lang.UnsupportedOperationException
            dup
            ldc "APPEND not allowed"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 207
      StackMap locals:
      StackMap stack:
            aload 0 /* pathForWindows */
            aload 1 /* pathToCheck */
            aload 6 /* flags */
            lload 3 /* pSecurityDescriptor */
            invokestatic sun.nio.fs.WindowsChannelFactory.open:(Ljava/lang/String;Ljava/lang/String;Lsun/nio/fs/WindowsChannelFactory$Flags;J)Ljava/io/FileDescriptor;
            astore 7 /* fdObj */
        start local 7 // java.io.FileDescriptor fdObj
         7: .line 208
            goto 11
        end local 7 // java.io.FileDescriptor fdObj
      StackMap locals:
      StackMap stack: sun.nio.fs.WindowsException
         8: astore 8 /* x */
        start local 8 // sun.nio.fs.WindowsException x
         9: .line 209
            aload 8 /* x */
            aload 0 /* pathForWindows */
            invokevirtual sun.nio.fs.WindowsException.rethrowAsIOException:(Ljava/lang/String;)V
        10: .line 210
            aconst_null
            areturn
        end local 8 // sun.nio.fs.WindowsException x
        start local 7 // java.io.FileDescriptor fdObj
        11: .line 215
      StackMap locals: java.io.FileDescriptor
      StackMap stack:
            aload 7 /* fdObj */
            aload 6 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
            aload 6 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.write:Z
            aload 5 /* pool */
            invokestatic sun.nio.ch.WindowsAsynchronousFileChannelImpl.open:(Ljava/io/FileDescriptor;ZZLsun/nio/ch/ThreadPool;)Ljava/nio/channels/AsynchronousFileChannel;
        12: areturn
        13: .line 216
      StackMap locals:
      StackMap stack: java.io.IOException
            astore 8 /* x */
        start local 8 // java.io.IOException x
        14: .line 219
            getstatic sun.nio.fs.WindowsChannelFactory.fdAccess:Ljdk/internal/misc/JavaIOFileDescriptorAccess;
            aload 7 /* fdObj */
            invokeinterface jdk.internal.misc.JavaIOFileDescriptorAccess.close:(Ljava/io/FileDescriptor;)V
        15: .line 220
            aload 8 /* x */
            athrow
        end local 8 // java.io.IOException x
        end local 7 // java.io.FileDescriptor fdObj
        end local 6 // sun.nio.fs.WindowsChannelFactory$Flags flags
        end local 5 // sun.nio.ch.ThreadPool pool
        end local 3 // long pSecurityDescriptor
        end local 2 // java.util.Set options
        end local 1 // java.lang.String pathToCheck
        end local 0 // java.lang.String pathForWindows
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   16     0       pathForWindows  Ljava/lang/String;
            0   16     1          pathToCheck  Ljava/lang/String;
            0   16     2              options  Ljava/util/Set<+Ljava/nio/file/OpenOption;>;
            0   16     3  pSecurityDescriptor  J
            0   16     5                 pool  Lsun/nio/ch/ThreadPool;
            1   16     6                flags  Lsun/nio/fs/WindowsChannelFactory$Flags;
            7    8     7                fdObj  Ljava/io/FileDescriptor;
           11   16     7                fdObj  Ljava/io/FileDescriptor;
            9   11     8                    x  Lsun/nio/fs/WindowsException;
           14   16     8                    x  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           6     7       8  Class sun.nio.fs.WindowsException
          11    12      13  Class java.io.IOException
    Exceptions:
      throws java.io.IOException
    Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/Set<+Ljava/nio/file/OpenOption;>;JLsun/nio/ch/ThreadPool;)Ljava/nio/channels/AsynchronousFileChannel;
    MethodParameters:
                     Name  Flags
      pathForWindows       
      pathToCheck          
      options              
      pSecurityDescriptor  
      pool                 

  private static java.io.FileDescriptor open(java.lang.String, java.lang.String, sun.nio.fs.WindowsChannelFactory$Flags, long);
    descriptor: (Ljava/lang/String;Ljava/lang/String;Lsun/nio/fs/WindowsChannelFactory$Flags;J)Ljava/io/FileDescriptor;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=7, locals=14, args_size=4
        start local 0 // java.lang.String pathForWindows
        start local 1 // java.lang.String pathToCheck
        start local 2 // sun.nio.fs.WindowsChannelFactory$Flags flags
        start local 3 // long pSecurityDescriptor
         0: .line 235
            iconst_0
            istore 5 /* truncateAfterOpen */
        start local 5 // boolean truncateAfterOpen
         1: .line 238
            iconst_0
            istore 6 /* dwDesiredAccess */
        start local 6 // int dwDesiredAccess
         2: .line 239
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
            ifeq 4
         3: .line 240
            iload 6 /* dwDesiredAccess */
            ldc -2147483648
            ior
            istore 6 /* dwDesiredAccess */
         4: .line 241
      StackMap locals: int int
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.write:Z
            ifeq 6
         5: .line 242
            iload 6 /* dwDesiredAccess */
            ldc 1073741824
            ior
            istore 6 /* dwDesiredAccess */
         6: .line 244
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 7 /* dwShareMode */
        start local 7 // int dwShareMode
         7: .line 245
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.shareRead:Z
            ifeq 9
         8: .line 246
            iload 7 /* dwShareMode */
            iconst_1
            ior
            istore 7 /* dwShareMode */
         9: .line 247
      StackMap locals: int
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.shareWrite:Z
            ifeq 11
        10: .line 248
            iload 7 /* dwShareMode */
            iconst_2
            ior
            istore 7 /* dwShareMode */
        11: .line 249
      StackMap locals:
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.shareDelete:Z
            ifeq 13
        12: .line 250
            iload 7 /* dwShareMode */
            iconst_4
            ior
            istore 7 /* dwShareMode */
        13: .line 252
      StackMap locals:
      StackMap stack:
            sipush 128
            istore 8 /* dwFlagsAndAttributes */
        start local 8 // int dwFlagsAndAttributes
        14: .line 253
            iconst_3
            istore 9 /* dwCreationDisposition */
        start local 9 // int dwCreationDisposition
        15: .line 254
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.write:Z
            ifeq 27
        16: .line 255
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.createNew:Z
            ifeq 20
        17: .line 256
            iconst_1
            istore 9 /* dwCreationDisposition */
        18: .line 258
            iload 8 /* dwFlagsAndAttributes */
            ldc 2097152
            ior
            istore 8 /* dwFlagsAndAttributes */
        19: .line 259
            goto 27
        20: .line 260
      StackMap locals: int int
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.create:Z
            ifeq 22
        21: .line 261
            iconst_4
            istore 9 /* dwCreationDisposition */
        22: .line 262
      StackMap locals:
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.truncateExisting:Z
            ifeq 27
        23: .line 266
            iload 9 /* dwCreationDisposition */
            iconst_4
            if_icmpne 26
        24: .line 267
            iconst_1
            istore 5 /* truncateAfterOpen */
        25: .line 268
            goto 27
        26: .line 269
      StackMap locals:
      StackMap stack:
            iconst_5
            istore 9 /* dwCreationDisposition */
        27: .line 275
      StackMap locals:
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.dsync:Z
            ifne 28
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.sync:Z
            ifeq 29
        28: .line 276
      StackMap locals:
      StackMap stack:
            iload 8 /* dwFlagsAndAttributes */
            ldc -2147483648
            ior
            istore 8 /* dwFlagsAndAttributes */
        29: .line 277
      StackMap locals:
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.overlapped:Z
            ifeq 31
        30: .line 278
            iload 8 /* dwFlagsAndAttributes */
            ldc 1073741824
            ior
            istore 8 /* dwFlagsAndAttributes */
        31: .line 279
      StackMap locals:
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.deleteOnClose:Z
            ifeq 33
        32: .line 280
            iload 8 /* dwFlagsAndAttributes */
            ldc 67108864
            ior
            istore 8 /* dwFlagsAndAttributes */
        33: .line 283
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 10 /* okayToFollowLinks */
        start local 10 // boolean okayToFollowLinks
        34: .line 284
            iload 9 /* dwCreationDisposition */
            iconst_1
            if_icmpeq 41
        35: .line 285
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.noFollowLinks:Z
            ifne 38
        36: .line 286
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.openReparsePoint:Z
            ifne 38
        37: .line 287
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.deleteOnClose:Z
            ifeq 41
        38: .line 289
      StackMap locals: int
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.noFollowLinks:Z
            ifne 39
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.deleteOnClose:Z
            ifeq 40
        39: .line 290
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 10 /* okayToFollowLinks */
        40: .line 291
      StackMap locals:
      StackMap stack:
            iload 8 /* dwFlagsAndAttributes */
            ldc 2097152
            ior
            istore 8 /* dwFlagsAndAttributes */
        41: .line 295
      StackMap locals:
      StackMap stack:
            aload 1 /* pathToCheck */
            ifnull 50
        42: .line 296
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 11 /* sm */
        start local 11 // java.lang.SecurityManager sm
        43: .line 297
            aload 11 /* sm */
            ifnull 50
        44: .line 298
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.read:Z
            ifeq 46
        45: .line 299
            aload 11 /* sm */
            aload 1 /* pathToCheck */
            invokevirtual java.lang.SecurityManager.checkRead:(Ljava/lang/String;)V
        46: .line 300
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.write:Z
            ifeq 48
        47: .line 301
            aload 11 /* sm */
            aload 1 /* pathToCheck */
            invokevirtual java.lang.SecurityManager.checkWrite:(Ljava/lang/String;)V
        48: .line 302
      StackMap locals:
      StackMap stack:
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.deleteOnClose:Z
            ifeq 50
        49: .line 303
            aload 11 /* sm */
            aload 1 /* pathToCheck */
            invokevirtual java.lang.SecurityManager.checkDelete:(Ljava/lang/String;)V
        end local 11 // java.lang.SecurityManager sm
        50: .line 308
      StackMap locals:
      StackMap stack:
            aload 0 /* pathForWindows */
        51: .line 309
            iload 6 /* dwDesiredAccess */
        52: .line 310
            iload 7 /* dwShareMode */
        53: .line 311
            lload 3 /* pSecurityDescriptor */
        54: .line 312
            iload 9 /* dwCreationDisposition */
        55: .line 313
            iload 8 /* dwFlagsAndAttributes */
        56: .line 308
            invokestatic sun.nio.fs.WindowsNativeDispatcher.CreateFile:(Ljava/lang/String;IIJII)J
            lstore 11 /* handle */
        start local 11 // long handle
        57: .line 316
            iload 10 /* okayToFollowLinks */
            ifne 63
        58: .line 318
            lload 11 /* handle */
            invokestatic sun.nio.fs.WindowsFileAttributes.readAttributes:(J)Lsun/nio/fs/WindowsFileAttributes;
            invokevirtual sun.nio.fs.WindowsFileAttributes.isSymbolicLink:()Z
            ifeq 63
        59: .line 319
            new sun.nio.fs.WindowsException
            dup
            ldc "File is symbolic link"
            invokespecial sun.nio.fs.WindowsException.<init>:(Ljava/lang/String;)V
            athrow
        60: .line 320
      StackMap locals: java.lang.String java.lang.String sun.nio.fs.WindowsChannelFactory$Flags long int int int int int int long
      StackMap stack: sun.nio.fs.WindowsException
            astore 13 /* x */
        start local 13 // sun.nio.fs.WindowsException x
        61: .line 321
            lload 11 /* handle */
            invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
        62: .line 322
            aload 13 /* x */
            athrow
        end local 13 // sun.nio.fs.WindowsException x
        63: .line 327
      StackMap locals:
      StackMap stack:
            iload 5 /* truncateAfterOpen */
            ifeq 69
        64: .line 329
            lload 11 /* handle */
            invokestatic sun.nio.fs.WindowsNativeDispatcher.SetEndOfFile:(J)V
        65: .line 330
            goto 69
      StackMap locals:
      StackMap stack: sun.nio.fs.WindowsException
        66: astore 13 /* x */
        start local 13 // sun.nio.fs.WindowsException x
        67: .line 331
            lload 11 /* handle */
            invokestatic sun.nio.fs.WindowsNativeDispatcher.CloseHandle:(J)V
        68: .line 332
            aload 13 /* x */
            athrow
        end local 13 // sun.nio.fs.WindowsException x
        69: .line 337
      StackMap locals:
      StackMap stack:
            iload 9 /* dwCreationDisposition */
            iconst_1
            if_icmpne 73
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.sparse:Z
            ifeq 73
        70: .line 339
            lload 11 /* handle */
            invokestatic sun.nio.fs.WindowsNativeDispatcher.DeviceIoControlSetSparse:(J)V
        71: .line 340
            goto 73
      StackMap locals:
      StackMap stack: sun.nio.fs.WindowsException
        72: pop
        73: .line 346
      StackMap locals:
      StackMap stack:
            new java.io.FileDescriptor
            dup
            invokespecial java.io.FileDescriptor.<init>:()V
            astore 13 /* fdObj */
        start local 13 // java.io.FileDescriptor fdObj
        74: .line 347
            getstatic sun.nio.fs.WindowsChannelFactory.fdAccess:Ljdk/internal/misc/JavaIOFileDescriptorAccess;
            aload 13 /* fdObj */
            lload 11 /* handle */
            invokeinterface jdk.internal.misc.JavaIOFileDescriptorAccess.setHandle:(Ljava/io/FileDescriptor;J)V
        75: .line 348
            getstatic sun.nio.fs.WindowsChannelFactory.fdAccess:Ljdk/internal/misc/JavaIOFileDescriptorAccess;
            aload 13 /* fdObj */
            aload 2 /* flags */
            getfield sun.nio.fs.WindowsChannelFactory$Flags.append:Z
            invokeinterface jdk.internal.misc.JavaIOFileDescriptorAccess.setAppend:(Ljava/io/FileDescriptor;Z)V
        76: .line 349
            getstatic sun.nio.fs.WindowsChannelFactory.fdAccess:Ljdk/internal/misc/JavaIOFileDescriptorAccess;
            aload 13 /* fdObj */
            invokeinterface jdk.internal.misc.JavaIOFileDescriptorAccess.registerCleanup:(Ljava/io/FileDescriptor;)V
        77: .line 350
            aload 13 /* fdObj */
            areturn
        end local 13 // java.io.FileDescriptor fdObj
        end local 11 // long handle
        end local 10 // boolean okayToFollowLinks
        end local 9 // int dwCreationDisposition
        end local 8 // int dwFlagsAndAttributes
        end local 7 // int dwShareMode
        end local 6 // int dwDesiredAccess
        end local 5 // boolean truncateAfterOpen
        end local 3 // long pSecurityDescriptor
        end local 2 // sun.nio.fs.WindowsChannelFactory$Flags flags
        end local 1 // java.lang.String pathToCheck
        end local 0 // java.lang.String pathForWindows
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   78     0         pathForWindows  Ljava/lang/String;
            0   78     1            pathToCheck  Ljava/lang/String;
            0   78     2                  flags  Lsun/nio/fs/WindowsChannelFactory$Flags;
            0   78     3    pSecurityDescriptor  J
            1   78     5      truncateAfterOpen  Z
            2   78     6        dwDesiredAccess  I
            7   78     7            dwShareMode  I
           14   78     8   dwFlagsAndAttributes  I
           15   78     9  dwCreationDisposition  I
           34   78    10      okayToFollowLinks  Z
           43   50    11                     sm  Ljava/lang/SecurityManager;
           57   78    11                 handle  J
           61   63    13                      x  Lsun/nio/fs/WindowsException;
           67   69    13                      x  Lsun/nio/fs/WindowsException;
           74   78    13                  fdObj  Ljava/io/FileDescriptor;
      Exception table:
        from    to  target  type
          58    60      60  Class sun.nio.fs.WindowsException
          64    65      66  Class sun.nio.fs.WindowsException
          70    71      72  Class sun.nio.fs.WindowsException
    Exceptions:
      throws sun.nio.fs.WindowsException
    MethodParameters:
                     Name  Flags
      pathForWindows       
      pathToCheck          
      flags                
      pSecurityDescriptor  
}
SourceFile: "WindowsChannelFactory.java"
NestMembers:
  sun.nio.fs.WindowsChannelFactory$1  sun.nio.fs.WindowsChannelFactory$Flags
InnerClasses:
  sun.nio.fs.WindowsChannelFactory$1
  private Flags = sun.nio.fs.WindowsChannelFactory$Flags of sun.nio.fs.WindowsChannelFactory