public class sun.net.www.protocol.http.ntlm.NTLMAuthentication extends sun.net.www.protocol.http.AuthenticationInfo
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.net.www.protocol.http.ntlm.NTLMAuthentication
  super_class: sun.net.www.protocol.http.AuthenticationInfo
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 170

  private static final sun.net.www.protocol.http.ntlm.NTLMAuthenticationCallback NTLMAuthCallback;
    descriptor: Lsun/net/www/protocol/http/ntlm/NTLMAuthenticationCallback;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private java.lang.String hostname;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

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

  private static final boolean ntlmCache;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  java.net.PasswordAuthentication pw;
    descriptor: Ljava/net/PasswordAuthentication;
    flags: (0x0000) 

  com.sun.security.ntlm.Client client;
    descriptor: Lcom/sun/security/ntlm/Client;
    flags: (0x0000) 

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=0
         0: .line 72
            invokestatic sun.net.www.protocol.http.ntlm.NTLMAuthenticationCallback.getNTLMAuthenticationCallback:()Lsun/net/www/protocol/http/ntlm/NTLMAuthenticationCallback;
         1: .line 71
            putstatic sun.net.www.protocol.http.ntlm.NTLMAuthentication.NTLMAuthCallback:Lsun/net/www/protocol/http/ntlm/NTLMAuthenticationCallback;
         2: .line 80
            new sun.security.action.GetPropertyAction
            dup
            ldc "http.auth.ntlm.domain"
            ldc ""
            invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         3: .line 79
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            putstatic sun.net.www.protocol.http.ntlm.NTLMAuthentication.defaultDomain:Ljava/lang/String;
         4: .line 82
            new sun.security.action.GetPropertyAction
            dup
            ldc "jdk.ntlm.cache"
            ldc "true"
            invokespecial sun.security.action.GetPropertyAction.<init>:(Ljava/lang/String;Ljava/lang/String;)V
         5: .line 81
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 0 /* ntlmCacheProp */
        start local 0 // java.lang.String ntlmCacheProp
         6: .line 83
            aload 0 /* ntlmCacheProp */
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
            putstatic sun.net.www.protocol.http.ntlm.NTLMAuthentication.ntlmCache:Z
        end local 0 // java.lang.String ntlmCacheProp
         7: .line 84
            return
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            6    7     0  ntlmCacheProp  Ljava/lang/String;

  public static boolean supportsTransparentAuth();
    descriptor: ()Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 87
            iconst_0
            ireturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public static boolean isTrustedSite(java.net.URL);
    descriptor: (Ljava/net/URL;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.net.URL url
         0: .line 96
            getstatic sun.net.www.protocol.http.ntlm.NTLMAuthentication.NTLMAuthCallback:Lsun/net/www/protocol/http/ntlm/NTLMAuthenticationCallback;
            ifnull 2
         1: .line 97
            getstatic sun.net.www.protocol.http.ntlm.NTLMAuthentication.NTLMAuthCallback:Lsun/net/www/protocol/http/ntlm/NTLMAuthenticationCallback;
            aload 0 /* url */
            invokevirtual sun.net.www.protocol.http.ntlm.NTLMAuthenticationCallback.isTrustedSite:(Ljava/net/URL;)Z
            ireturn
         2: .line 98
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // java.net.URL url
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0   url  Ljava/net/URL;
    MethodParameters:
      Name  Flags
      url   

  private void init0();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
         0: .line 103
            aload 0 /* this */
         1: .line 104
            new sun.net.www.protocol.http.ntlm.NTLMAuthentication$1
            dup
            aload 0 /* this */
            invokespecial sun.net.www.protocol.http.ntlm.NTLMAuthentication$1.<init>:(Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;)V
         2: .line 103
            invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
            checkcast java.lang.String
            putfield sun.net.www.protocol.http.ntlm.NTLMAuthentication.hostname:Ljava/lang/String;
         3: .line 115
            return
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;

  public void <init>(boolean, java.net.URL, java.net.PasswordAuthentication);
    descriptor: (ZLjava/net/URL;Ljava/net/PasswordAuthentication;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
        start local 1 // boolean isProxy
        start local 2 // java.net.URL url
        start local 3 // java.net.PasswordAuthentication pw
         0: .line 127
            aload 0 /* this */
            iload 1 /* isProxy */
            ifeq 1
            bipush 112
            goto 2
      StackMap locals:
      StackMap stack: uninitialized-this
         1: bipush 115
         2: .line 128
      StackMap locals: uninitialized-this int java.net.URL java.net.PasswordAuthentication
      StackMap stack: uninitialized-this int
            getstatic sun.net.www.protocol.http.AuthScheme.NTLM:Lsun/net/www/protocol/http/AuthScheme;
         3: .line 129
            aload 2 /* url */
         4: .line 130
            ldc ""
            invokespecial sun.net.www.protocol.http.AuthenticationInfo.<init>:(CLsun/net/www/protocol/http/AuthScheme;Ljava/net/URL;Ljava/lang/String;)V
         5: .line 131
            aload 0 /* this */
            aload 3 /* pw */
            invokevirtual sun.net.www.protocol.http.ntlm.NTLMAuthentication.init:(Ljava/net/PasswordAuthentication;)V
         6: .line 132
            return
        end local 3 // java.net.PasswordAuthentication pw
        end local 2 // java.net.URL url
        end local 1 // boolean isProxy
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    7     0     this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;
            0    7     1  isProxy  Z
            0    7     2      url  Ljava/net/URL;
            0    7     3       pw  Ljava/net/PasswordAuthentication;
    MethodParameters:
         Name  Flags
      isProxy  
      url      
      pw       

  private void init(java.net.PasswordAuthentication);
    descriptor: (Ljava/net/PasswordAuthentication;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=7, args_size=2
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
        start local 1 // java.net.PasswordAuthentication pw
         0: .line 138
            aload 0 /* this */
            aload 1 /* pw */
            putfield sun.net.www.protocol.http.ntlm.NTLMAuthentication.pw:Ljava/net/PasswordAuthentication;
         1: .line 139
            aload 1 /* pw */
            invokevirtual java.net.PasswordAuthentication.getUserName:()Ljava/lang/String;
            astore 5 /* s */
        start local 5 // java.lang.String s
         2: .line 140
            aload 5 /* s */
            bipush 92
            invokevirtual java.lang.String.indexOf:(I)I
            istore 6 /* i */
        start local 6 // int i
         3: .line 141
            iload 6 /* i */
            iconst_m1
            if_icmpne 7
         4: .line 142
            aload 5 /* s */
            astore 2 /* username */
        start local 2 // java.lang.String username
         5: .line 143
            getstatic sun.net.www.protocol.http.ntlm.NTLMAuthentication.defaultDomain:Ljava/lang/String;
            astore 3 /* ntdomain */
        start local 3 // java.lang.String ntdomain
         6: .line 144
            goto 9
        end local 3 // java.lang.String ntdomain
        end local 2 // java.lang.String username
         7: .line 145
      StackMap locals: sun.net.www.protocol.http.ntlm.NTLMAuthentication java.net.PasswordAuthentication top top top java.lang.String int
      StackMap stack:
            aload 5 /* s */
            iconst_0
            iload 6 /* i */
            invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
            invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
            astore 3 /* ntdomain */
        start local 3 // java.lang.String ntdomain
         8: .line 146
            aload 5 /* s */
            iload 6 /* i */
            iconst_1
            iadd
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 2 /* username */
        start local 2 // java.lang.String username
         9: .line 148
      StackMap locals: sun.net.www.protocol.http.ntlm.NTLMAuthentication java.net.PasswordAuthentication java.lang.String java.lang.String top java.lang.String int
      StackMap stack:
            aload 1 /* pw */
            invokevirtual java.net.PasswordAuthentication.getPassword:()[C
            astore 4 /* password */
        start local 4 // char[] password
        10: .line 149
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.http.ntlm.NTLMAuthentication.init0:()V
        11: .line 151
            aload 0 /* this */
            new com.sun.security.ntlm.Client
            dup
            ldc "ntlm.version"
            invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
            aload 0 /* this */
            getfield sun.net.www.protocol.http.ntlm.NTLMAuthentication.hostname:Ljava/lang/String;
        12: .line 152
            aload 2 /* username */
            aload 3 /* ntdomain */
            aload 4 /* password */
            invokespecial com.sun.security.ntlm.Client.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[C)V
        13: .line 151
            putfield sun.net.www.protocol.http.ntlm.NTLMAuthentication.client:Lcom/sun/security/ntlm/Client;
        14: .line 153
            goto 20
      StackMap locals: sun.net.www.protocol.http.ntlm.NTLMAuthentication java.net.PasswordAuthentication java.lang.String java.lang.String char[] java.lang.String int
      StackMap stack: com.sun.security.ntlm.NTLMException
        15: pop
        16: .line 155
            aload 0 /* this */
            new com.sun.security.ntlm.Client
            dup
            aconst_null
            aload 0 /* this */
            getfield sun.net.www.protocol.http.ntlm.NTLMAuthentication.hostname:Ljava/lang/String;
            aload 2 /* username */
            aload 3 /* ntdomain */
            aload 4 /* password */
            invokespecial com.sun.security.ntlm.Client.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[C)V
            putfield sun.net.www.protocol.http.ntlm.NTLMAuthentication.client:Lcom/sun/security/ntlm/Client;
        17: .line 156
            goto 20
      StackMap locals:
      StackMap stack: com.sun.security.ntlm.NTLMException
        18: pop
        19: .line 158
            new java.lang.AssertionError
            dup
            ldc "Really?"
            invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
            athrow
        20: .line 161
      StackMap locals:
      StackMap stack:
            return
        end local 6 // int i
        end local 5 // java.lang.String s
        end local 4 // char[] password
        end local 3 // java.lang.String ntdomain
        end local 2 // java.lang.String username
        end local 1 // java.net.PasswordAuthentication pw
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   21     0      this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;
            0   21     1        pw  Ljava/net/PasswordAuthentication;
            5    7     2  username  Ljava/lang/String;
            9   21     2  username  Ljava/lang/String;
            6    7     3  ntdomain  Ljava/lang/String;
            8   21     3  ntdomain  Ljava/lang/String;
           10   21     4  password  [C
            2   21     5         s  Ljava/lang/String;
            3   21     6         i  I
      Exception table:
        from    to  target  type
          11    14      15  Class com.sun.security.ntlm.NTLMException
          16    17      18  Class com.sun.security.ntlm.NTLMException
    MethodParameters:
      Name  Flags
      pw    

  public void <init>(boolean, java.lang.String, int, java.net.PasswordAuthentication);
    descriptor: (ZLjava/lang/String;ILjava/net/PasswordAuthentication;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=5
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
        start local 1 // boolean isProxy
        start local 2 // java.lang.String host
        start local 3 // int port
        start local 4 // java.net.PasswordAuthentication pw
         0: .line 168
            aload 0 /* this */
            iload 1 /* isProxy */
            ifeq 1
            bipush 112
            goto 2
      StackMap locals:
      StackMap stack: uninitialized-this
         1: bipush 115
         2: .line 169
      StackMap locals: uninitialized-this int java.lang.String int java.net.PasswordAuthentication
      StackMap stack: uninitialized-this int
            getstatic sun.net.www.protocol.http.AuthScheme.NTLM:Lsun/net/www/protocol/http/AuthScheme;
         3: .line 170
            aload 2 /* host */
         4: .line 171
            iload 3 /* port */
         5: .line 172
            ldc ""
            invokespecial sun.net.www.protocol.http.AuthenticationInfo.<init>:(CLsun/net/www/protocol/http/AuthScheme;Ljava/lang/String;ILjava/lang/String;)V
         6: .line 173
            aload 0 /* this */
            aload 4 /* pw */
            invokevirtual sun.net.www.protocol.http.ntlm.NTLMAuthentication.init:(Ljava/net/PasswordAuthentication;)V
         7: .line 174
            return
        end local 4 // java.net.PasswordAuthentication pw
        end local 3 // int port
        end local 2 // java.lang.String host
        end local 1 // boolean isProxy
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    8     0     this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;
            0    8     1  isProxy  Z
            0    8     2     host  Ljava/lang/String;
            0    8     3     port  I
            0    8     4       pw  Ljava/net/PasswordAuthentication;
    MethodParameters:
         Name  Flags
      isProxy  
      host     
      port     
      pw       

  protected boolean useAuthCache();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
         0: .line 178
            getstatic sun.net.www.protocol.http.ntlm.NTLMAuthentication.ntlmCache:Z
            ifeq 1
            aload 0 /* this */
            invokespecial sun.net.www.protocol.http.AuthenticationInfo.useAuthCache:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;

  public boolean supportsPreemptiveAuthorization();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
         0: .line 186
            iconst_0
            ireturn
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;

  public java.lang.String getHeaderValue(java.net.URL, java.lang.String);
    descriptor: (Ljava/net/URL;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
        start local 1 // java.net.URL url
        start local 2 // java.lang.String method
         0: .line 194
            new java.lang.RuntimeException
            dup
            ldc "getHeaderValue not supported"
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // java.lang.String method
        end local 1 // java.net.URL url
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;
            0    1     1     url  Ljava/net/URL;
            0    1     2  method  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      url     
      method  

  public boolean isAuthorizationStale(java.lang.String);
    descriptor: (Ljava/lang/String;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
        start local 1 // java.lang.String header
         0: .line 207
            iconst_0
            ireturn
        end local 1 // java.lang.String header
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0    this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;
            0    1     1  header  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      header  

  public synchronized boolean setHeaders(sun.net.www.protocol.http.HttpURLConnection, sun.net.www.HeaderParser, java.lang.String);
    descriptor: (Lsun/net/www/protocol/http/HttpURLConnection;Lsun/net/www/HeaderParser;Ljava/lang/String;)Z
    flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
        start local 1 // sun.net.www.protocol.http.HttpURLConnection conn
        start local 2 // sun.net.www.HeaderParser p
        start local 3 // java.lang.String raw
         0: .line 223
            aload 3 /* raw */
            invokevirtual java.lang.String.length:()I
            bipush 6
            if_icmpge 3
         1: .line 224
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.http.ntlm.NTLMAuthentication.buildType1Msg:()Ljava/lang/String;
            astore 4 /* response */
        start local 4 // java.lang.String response
         2: .line 225
            goto 5
        end local 4 // java.lang.String response
         3: .line 226
      StackMap locals:
      StackMap stack:
            aload 3 /* raw */
            iconst_5
            invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
            astore 5 /* msg */
        start local 5 // java.lang.String msg
         4: .line 227
            aload 0 /* this */
            aload 5 /* msg */
            invokevirtual sun.net.www.protocol.http.ntlm.NTLMAuthentication.buildType3Msg:(Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* response */
        end local 5 // java.lang.String msg
        start local 4 // java.lang.String response
         5: .line 229
      StackMap locals: java.lang.String
      StackMap stack:
            aload 1 /* conn */
            aload 0 /* this */
            invokevirtual sun.net.www.protocol.http.ntlm.NTLMAuthentication.getHeaderName:()Ljava/lang/String;
            aload 4 /* response */
            invokevirtual sun.net.www.protocol.http.HttpURLConnection.setAuthenticationProperty:(Ljava/lang/String;Ljava/lang/String;)V
         6: .line 230
            iconst_1
            ireturn
        end local 4 // java.lang.String response
         7: .line 231
      StackMap locals: sun.net.www.protocol.http.ntlm.NTLMAuthentication sun.net.www.protocol.http.HttpURLConnection sun.net.www.HeaderParser java.lang.String
      StackMap stack: java.io.IOException
            pop
         8: .line 232
            iconst_0
            ireturn
         9: .line 233
      StackMap locals:
      StackMap stack: java.security.GeneralSecurityException
            pop
        10: .line 234
            iconst_0
            ireturn
        end local 3 // java.lang.String raw
        end local 2 // sun.net.www.HeaderParser p
        end local 1 // sun.net.www.protocol.http.HttpURLConnection conn
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;
            0   11     1      conn  Lsun/net/www/protocol/http/HttpURLConnection;
            0   11     2         p  Lsun/net/www/HeaderParser;
            0   11     3       raw  Ljava/lang/String;
            2    3     4  response  Ljava/lang/String;
            5    7     4  response  Ljava/lang/String;
            4    5     5       msg  Ljava/lang/String;
      Exception table:
        from    to  target  type
           0     6       7  Class java.io.IOException
           0     6       9  Class java.security.GeneralSecurityException
    MethodParameters:
      Name  Flags
      conn  
      p     
      raw   

  private java.lang.String buildType1Msg();
    descriptor: ()Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
         0: .line 239
            aload 0 /* this */
            getfield sun.net.www.protocol.http.ntlm.NTLMAuthentication.client:Lcom/sun/security/ntlm/Client;
            invokevirtual com.sun.security.ntlm.Client.type1:()[B
            astore 1 /* msg */
        start local 1 // byte[] msg
         1: .line 240
            new java.lang.StringBuilder
            dup
            ldc "NTLM "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            new sun.net.www.protocol.http.ntlm.B64Encoder
            dup
            invokespecial sun.net.www.protocol.http.ntlm.B64Encoder.<init>:()V
            aload 1 /* msg */
            invokevirtual sun.net.www.protocol.http.ntlm.B64Encoder.encode:([B)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* result */
        start local 2 // java.lang.String result
         2: .line 241
            aload 2 /* result */
            areturn
        end local 2 // java.lang.String result
        end local 1 // byte[] msg
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;
            1    3     1     msg  [B
            2    3     2  result  Ljava/lang/String;

  private java.lang.String buildType3Msg(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=6, args_size=2
        start local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
        start local 1 // java.lang.String challenge
         0: .line 249
            new sun.misc.BASE64Decoder
            dup
            invokespecial sun.misc.BASE64Decoder.<init>:()V
            aload 1 /* challenge */
            invokevirtual sun.misc.BASE64Decoder.decodeBuffer:(Ljava/lang/String;)[B
            astore 2 /* type2 */
        start local 2 // byte[] type2
         1: .line 250
            bipush 8
            newarray 8
            astore 3 /* nonce */
        start local 3 // byte[] nonce
         2: .line 251
            new java.util.Random
            dup
            invokespecial java.util.Random.<init>:()V
            aload 3 /* nonce */
            invokevirtual java.util.Random.nextBytes:([B)V
         3: .line 252
            aload 0 /* this */
            getfield sun.net.www.protocol.http.ntlm.NTLMAuthentication.client:Lcom/sun/security/ntlm/Client;
            aload 2 /* type2 */
            aload 3 /* nonce */
            invokevirtual com.sun.security.ntlm.Client.type3:([B[B)[B
            astore 4 /* msg */
        start local 4 // byte[] msg
         4: .line 253
            new java.lang.StringBuilder
            dup
            ldc "NTLM "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            new sun.net.www.protocol.http.ntlm.B64Encoder
            dup
            invokespecial sun.net.www.protocol.http.ntlm.B64Encoder.<init>:()V
            aload 4 /* msg */
            invokevirtual sun.net.www.protocol.http.ntlm.B64Encoder.encode:([B)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 5 /* result */
        start local 5 // java.lang.String result
         5: .line 254
            aload 5 /* result */
            areturn
        end local 5 // java.lang.String result
        end local 4 // byte[] msg
        end local 3 // byte[] nonce
        end local 2 // byte[] type2
        end local 1 // java.lang.String challenge
        end local 0 // sun.net.www.protocol.http.ntlm.NTLMAuthentication this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    6     0       this  Lsun/net/www/protocol/http/ntlm/NTLMAuthentication;
            0    6     1  challenge  Ljava/lang/String;
            1    6     2      type2  [B
            2    6     3      nonce  [B
            4    6     4        msg  [B
            5    6     5     result  Ljava/lang/String;
    Exceptions:
      throws java.security.GeneralSecurityException, java.io.IOException
    MethodParameters:
           Name  Flags
      challenge  
}
SourceFile: "NTLMAuthentication.java"
NestMembers:
  sun.net.www.protocol.http.ntlm.NTLMAuthentication$1
InnerClasses:
  sun.net.www.protocol.http.ntlm.NTLMAuthentication$1