package com.l7tech.common.mime;

import com.l7tech.util.BufferPool;
import java.io.FilterInputStream;
import java.io.IOException;
import java.io.PushbackInputStream;

class a extends FilterInputStream {
   private final byte[] a;
   private final PushbackInputStream b;
   private final int c;
   private int d;
   private int e;
   private int f;
   private boolean g;
   private boolean h;
   private Runnable i;
   private Runnable j;
   private static final String[] k;

   public a(byte[] param1, PushbackInputStream param2, int param3) {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: aload 0
      // 01: aload 2
      // 02: invokespecial java/io/FilterInputStream.<init> (Ljava/io/InputStream;)V
      // 05: aload 0
      // 06: bipush 0
      // 07: putfield com/l7tech/common/mime/a.d I
      // 0a: aload 0
      // 0b: bipush 0
      // 0c: putfield com/l7tech/common/mime/a.e I
      // 0f: aload 0
      // 10: bipush 0
      // 11: putfield com/l7tech/common/mime/a.f I
      // 14: aload 0
      // 15: bipush 0
      // 16: putfield com/l7tech/common/mime/a.g Z
      // 19: aload 0
      // 1a: bipush 0
      // 1b: putfield com/l7tech/common/mime/a.h Z
      // 1e: aload 0
      // 1f: aconst_null
      // 20: putfield com/l7tech/common/mime/a.i Ljava/lang/Runnable;
      // 23: aload 0
      // 24: aconst_null
      // 25: putfield com/l7tech/common/mime/a.j Ljava/lang/Runnable;
      // 28: iload 3
      // 29: bipush 32
      // 2b: if_icmpge 3f
      // 2e: new java/lang/IllegalArgumentException
      // 31: dup
      // 32: getstatic com/l7tech/common/mime/a.k [Ljava/lang/String;
      // 35: astore 4
      // 37: aload 4
      // 39: bipush 0
      // 3a: aaload
      // 3b: invokespecial java/lang/IllegalArgumentException.<init> (Ljava/lang/String;)V
      // 3e: athrow
      // 3f: aload 2
      // 40: ifnonnull 54
      // 43: new java/lang/NullPointerException
      // 46: dup
      // 47: getstatic com/l7tech/common/mime/a.k [Ljava/lang/String;
      // 4a: bipush 4
      // 4b: aaload
      // 4c: invokespecial java/lang/NullPointerException.<init> (Ljava/lang/String;)V
      // 4f: athrow
      // 50: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 53: athrow
      // 54: aload 1
      // 55: ifnull 65
      // 58: aload 1
      // 59: arraylength
      // 5a: bipush 1
      // 5b: if_icmpge 76
      // 5e: goto 65
      // 61: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 64: athrow
      // 65: new java/lang/IllegalArgumentException
      // 68: dup
      // 69: getstatic com/l7tech/common/mime/a.k [Ljava/lang/String;
      // 6c: bipush 3
      // 6d: aaload
      // 6e: invokespecial java/lang/IllegalArgumentException.<init> (Ljava/lang/String;)V
      // 71: athrow
      // 72: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 75: athrow
      // 76: aload 0
      // 77: iload 3
      // 78: putfield com/l7tech/common/mime/a.c I
      // 7b: aload 0
      // 7c: aload 2
      // 7d: putfield com/l7tech/common/mime/a.b Ljava/io/PushbackInputStream;
      // 80: aload 0
      // 81: aload 1
      // 82: arraylength
      // 83: bipush 2
      // 84: iadd
      // 85: newarray 8
      // 87: putfield com/l7tech/common/mime/a.a [B
      // 8a: aload 1
      // 8b: bipush 0
      // 8c: aload 0
      // 8d: getfield com/l7tech/common/mime/a.a [B
      // 90: bipush 2
      // 91: aload 1
      // 92: arraylength
      // 93: invokestatic java/lang/System.arraycopy (Ljava/lang/Object;ILjava/lang/Object;II)V
      // 96: aload 0
      // 97: getfield com/l7tech/common/mime/a.a [B
      // 9a: bipush 0
      // 9b: bipush 13
      // 9d: bastore
      // 9e: aload 0
      // 9f: getfield com/l7tech/common/mime/a.a [B
      // a2: bipush 1
      // a3: bipush 10
      // a5: bastore
      // a6: return
      // try (36 -> 45): 45 java/lang/IllegalArgumentException
      // try (47 -> 53): 54 java/lang/IllegalArgumentException
      // try (49 -> 63): 63 java/lang/IllegalArgumentException
   }

   @Override
   public int read() throws IOException {
      try {
         if (this.g) {
            return -1;
         }
      } catch (IOException var5) {
         throw a(var5);
      }

      byte[] var1 = new byte[1];
      int var2 = this.read(var1);

      try {
         if (var2 < 1) {
            return -1;
         }
      } catch (IOException var3) {
         throw a(var3);
      }

      try {
         if (var1[0] < 0) {
            return var1[0] + 256;
         }
      } catch (IOException var4) {
         throw a(var4);
      }

      return var1[0];
   }

   @Override
   public int read(byte[] param1, int param2, int param3) throws IOException {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: aload 1
      // 001: ifnonnull 010
      // 004: new java/lang/NullPointerException
      // 007: dup
      // 008: invokespecial java/lang/NullPointerException.<init> ()V
      // 00b: athrow
      // 00c: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 00f: athrow
      // 010: iload 2
      // 011: iflt 048
      // 014: iload 2
      // 015: aload 1
      // 016: arraylength
      // 017: if_icmpgt 048
      // 01a: goto 021
      // 01d: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 020: athrow
      // 021: iload 3
      // 022: iflt 048
      // 025: goto 02c
      // 028: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 02b: athrow
      // 02c: iload 2
      // 02d: iload 3
      // 02e: iadd
      // 02f: aload 1
      // 030: arraylength
      // 031: if_icmpgt 048
      // 034: goto 03b
      // 037: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 03a: athrow
      // 03b: iload 2
      // 03c: iload 3
      // 03d: iadd
      // 03e: ifge 054
      // 041: goto 048
      // 044: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 047: athrow
      // 048: new java/lang/IndexOutOfBoundsException
      // 04b: dup
      // 04c: invokespecial java/lang/IndexOutOfBoundsException.<init> ()V
      // 04f: athrow
      // 050: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 053: athrow
      // 054: iload 3
      // 055: ifne 05e
      // 058: bipush 0
      // 059: ireturn
      // 05a: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 05d: athrow
      // 05e: iload 3
      // 05f: aload 0
      // 060: getfield com/l7tech/common/mime/a.c I
      // 063: if_icmple 06b
      // 066: aload 0
      // 067: getfield com/l7tech/common/mime/a.c I
      // 06a: istore 3
      // 06b: aload 0
      // 06c: getfield com/l7tech/common/mime/a.g Z
      // 06f: ifeq 078
      // 072: bipush -1
      // 073: ireturn
      // 074: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 077: athrow
      // 078: aload 0
      // 079: getfield com/l7tech/common/mime/a.e I
      // 07c: ifle 0f9
      // 07f: aload 0
      // 080: getfield com/l7tech/common/mime/a.e I
      // 083: iload 3
      // 084: if_icmpge 0d5
      // 087: goto 08e
      // 08a: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 08d: athrow
      // 08e: aload 0
      // 08f: getfield com/l7tech/common/mime/a.a [B
      // 092: aload 0
      // 093: getfield com/l7tech/common/mime/a.f I
      // 096: aload 1
      // 097: iload 2
      // 098: aload 0
      // 099: getfield com/l7tech/common/mime/a.e I
      // 09c: invokestatic java/lang/System.arraycopy (Ljava/lang/Object;ILjava/lang/Object;II)V
      // 09f: aload 0
      // 0a0: getfield com/l7tech/common/mime/a.e I
      // 0a3: istore 4
      // 0a5: aload 0
      // 0a6: bipush 0
      // 0a7: putfield com/l7tech/common/mime/a.e I
      // 0aa: aload 0
      // 0ab: bipush 0
      // 0ac: putfield com/l7tech/common/mime/a.f I
      // 0af: aload 0
      // 0b0: aload 1
      // 0b1: iload 2
      // 0b2: iload 4
      // 0b4: iadd
      // 0b5: iload 3
      // 0b6: iload 4
      // 0b8: isub
      // 0b9: invokevirtual com/l7tech/common/mime/a.read ([BII)I
      // 0bc: istore 5
      // 0be: iload 5
      // 0c0: ifle 0cd
      // 0c3: iload 4
      // 0c5: iload 5
      // 0c7: iadd
      // 0c8: ireturn
      // 0c9: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0cc: athrow
      // 0cd: aload 0
      // 0ce: bipush 1
      // 0cf: putfield com/l7tech/common/mime/a.g Z
      // 0d2: iload 4
      // 0d4: ireturn
      // 0d5: aload 0
      // 0d6: getfield com/l7tech/common/mime/a.a [B
      // 0d9: aload 0
      // 0da: getfield com/l7tech/common/mime/a.f I
      // 0dd: aload 1
      // 0de: iload 2
      // 0df: iload 3
      // 0e0: invokestatic java/lang/System.arraycopy (Ljava/lang/Object;ILjava/lang/Object;II)V
      // 0e3: aload 0
      // 0e4: dup
      // 0e5: getfield com/l7tech/common/mime/a.e I
      // 0e8: iload 3
      // 0e9: isub
      // 0ea: putfield com/l7tech/common/mime/a.e I
      // 0ed: aload 0
      // 0ee: dup
      // 0ef: getfield com/l7tech/common/mime/a.f I
      // 0f2: iload 3
      // 0f3: iadd
      // 0f4: putfield com/l7tech/common/mime/a.f I
      // 0f7: iload 3
      // 0f8: ireturn
      // 0f9: aload 0
      // 0fa: getfield com/l7tech/common/mime/a.d I
      // 0fd: ifle 1e1
      // 100: aload 0
      // 101: getfield com/l7tech/common/mime/a.b Ljava/io/PushbackInputStream;
      // 104: aload 1
      // 105: iload 2
      // 106: iload 3
      // 107: invokevirtual java/io/PushbackInputStream.read ([BII)I
      // 10a: istore 4
      // 10c: iload 4
      // 10e: bipush 1
      // 10f: if_icmpge 122
      // 112: aload 0
      // 113: bipush 1
      // 114: putfield com/l7tech/common/mime/a.g Z
      // 117: aload 0
      // 118: bipush 1
      // 119: putfield com/l7tech/common/mime/a.h Z
      // 11c: bipush 0
      // 11d: ireturn
      // 11e: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 121: athrow
      // 122: aload 0
      // 123: getfield com/l7tech/common/mime/a.a [B
      // 126: arraylength
      // 127: aload 0
      // 128: getfield com/l7tech/common/mime/a.d I
      // 12b: isub
      // 12c: istore 5
      // 12e: iload 5
      // 130: iload 4
      // 132: if_icmpgt 193
      // 135: aload 1
      // 136: iload 2
      // 137: aload 0
      // 138: getfield com/l7tech/common/mime/a.a [B
      // 13b: aload 0
      // 13c: getfield com/l7tech/common/mime/a.d I
      // 13f: iload 5
      // 141: invokestatic com/l7tech/util/ArrayUtils.compareArrays ([BI[BII)Z
      // 144: ifeq 16e
      // 147: goto 14e
      // 14a: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 14d: athrow
      // 14e: aload 0
      // 14f: getfield com/l7tech/common/mime/a.b Ljava/io/PushbackInputStream;
      // 152: aload 1
      // 153: iload 2
      // 154: iload 5
      // 156: iadd
      // 157: iload 4
      // 159: iload 5
      // 15b: isub
      // 15c: invokevirtual java/io/PushbackInputStream.unread ([BII)V
      // 15f: aload 0
      // 160: invokevirtual com/l7tech/common/mime/a.a ()V
      // 163: aload 0
      // 164: bipush 1
      // 165: putfield com/l7tech/common/mime/a.g Z
      // 168: bipush -1
      // 169: ireturn
      // 16a: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 16d: athrow
      // 16e: aload 0
      // 16f: getfield com/l7tech/common/mime/a.b Ljava/io/PushbackInputStream;
      // 172: aload 1
      // 173: iload 2
      // 174: iload 4
      // 176: invokevirtual java/io/PushbackInputStream.unread ([BII)V
      // 179: aload 0
      // 17a: aload 0
      // 17b: getfield com/l7tech/common/mime/a.d I
      // 17e: putfield com/l7tech/common/mime/a.e I
      // 181: aload 0
      // 182: bipush 0
      // 183: putfield com/l7tech/common/mime/a.f I
      // 186: aload 0
      // 187: bipush 0
      // 188: putfield com/l7tech/common/mime/a.d I
      // 18b: aload 0
      // 18c: aload 1
      // 18d: iload 2
      // 18e: iload 3
      // 18f: invokevirtual com/l7tech/common/mime/a.read ([BII)I
      // 192: ireturn
      // 193: aload 1
      // 194: iload 2
      // 195: aload 0
      // 196: getfield com/l7tech/common/mime/a.a [B
      // 199: aload 0
      // 19a: getfield com/l7tech/common/mime/a.d I
      // 19d: iload 4
      // 19f: invokestatic com/l7tech/util/ArrayUtils.compareArrays ([BI[BII)Z
      // 1a2: ifeq 1bc
      // 1a5: aload 0
      // 1a6: dup
      // 1a7: getfield com/l7tech/common/mime/a.d I
      // 1aa: iload 4
      // 1ac: iadd
      // 1ad: putfield com/l7tech/common/mime/a.d I
      // 1b0: aload 0
      // 1b1: aload 1
      // 1b2: iload 2
      // 1b3: iload 3
      // 1b4: invokevirtual com/l7tech/common/mime/a.read ([BII)I
      // 1b7: ireturn
      // 1b8: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1bb: athrow
      // 1bc: aload 0
      // 1bd: getfield com/l7tech/common/mime/a.b Ljava/io/PushbackInputStream;
      // 1c0: aload 1
      // 1c1: iload 2
      // 1c2: iload 4
      // 1c4: invokevirtual java/io/PushbackInputStream.unread ([BII)V
      // 1c7: aload 0
      // 1c8: aload 0
      // 1c9: getfield com/l7tech/common/mime/a.d I
      // 1cc: putfield com/l7tech/common/mime/a.e I
      // 1cf: aload 0
      // 1d0: bipush 0
      // 1d1: putfield com/l7tech/common/mime/a.f I
      // 1d4: aload 0
      // 1d5: bipush 0
      // 1d6: putfield com/l7tech/common/mime/a.d I
      // 1d9: aload 0
      // 1da: aload 1
      // 1db: iload 2
      // 1dc: iload 3
      // 1dd: invokevirtual com/l7tech/common/mime/a.read ([BII)I
      // 1e0: ireturn
      // 1e1: aload 0
      // 1e2: getfield com/l7tech/common/mime/a.b Ljava/io/PushbackInputStream;
      // 1e5: aload 1
      // 1e6: iload 2
      // 1e7: iload 3
      // 1e8: invokevirtual java/io/PushbackInputStream.read ([BII)I
      // 1eb: istore 4
      // 1ed: iload 4
      // 1ef: bipush 1
      // 1f0: if_icmpge 204
      // 1f3: new java/io/IOException
      // 1f6: dup
      // 1f7: getstatic com/l7tech/common/mime/a.k [Ljava/lang/String;
      // 1fa: bipush 1
      // 1fb: aaload
      // 1fc: invokespecial java/io/IOException.<init> (Ljava/lang/String;)V
      // 1ff: athrow
      // 200: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 203: athrow
      // 204: aload 1
      // 205: iload 2
      // 206: iload 4
      // 208: aload 0
      // 209: getfield com/l7tech/common/mime/a.a [B
      // 20c: bipush 0
      // 20d: invokestatic com/l7tech/util/ArrayUtils.matchSubarrayOrPrefix ([BII[BI)I
      // 210: istore 5
      // 212: iload 5
      // 214: ifge 21e
      // 217: iload 4
      // 219: ireturn
      // 21a: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 21d: athrow
      // 21e: iload 5
      // 220: iload 2
      // 221: isub
      // 222: istore 6
      // 224: iload 4
      // 226: aload 0
      // 227: getfield com/l7tech/common/mime/a.a [B
      // 22a: arraylength
      // 22b: isub
      // 22c: iload 6
      // 22e: isub
      // 22f: istore 7
      // 231: iload 7
      // 233: iflt 267
      // 236: iload 7
      // 238: ifle 25b
      // 23b: goto 242
      // 23e: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 241: athrow
      // 242: aload 0
      // 243: getfield com/l7tech/common/mime/a.b Ljava/io/PushbackInputStream;
      // 246: aload 1
      // 247: iload 5
      // 249: aload 0
      // 24a: getfield com/l7tech/common/mime/a.a [B
      // 24d: arraylength
      // 24e: iadd
      // 24f: iload 7
      // 251: invokevirtual java/io/PushbackInputStream.unread ([BII)V
      // 254: goto 25b
      // 257: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 25a: athrow
      // 25b: aload 0
      // 25c: invokevirtual com/l7tech/common/mime/a.a ()V
      // 25f: aload 0
      // 260: bipush 1
      // 261: putfield com/l7tech/common/mime/a.g Z
      // 264: iload 6
      // 266: ireturn
      // 267: aload 0
      // 268: iload 4
      // 26a: iload 6
      // 26c: isub
      // 26d: putfield com/l7tech/common/mime/a.d I
      // 270: aload 0
      // 271: aload 1
      // 272: iload 5
      // 274: aload 0
      // 275: getfield com/l7tech/common/mime/a.d I
      // 278: invokevirtual com/l7tech/common/mime/a.read ([BII)I
      // 27b: istore 8
      // 27d: iload 8
      // 27f: ifle 28c
      // 282: iload 6
      // 284: iload 8
      // 286: iadd
      // 287: ireturn
      // 288: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 28b: athrow
      // 28c: aload 0
      // 28d: bipush 1
      // 28e: putfield com/l7tech/common/mime/a.g Z
      // 291: iload 6
      // 293: ireturn
      // try (0 -> 6): 6 java/io/IOException
      // try (8 -> 14): 15 java/io/IOException
      // try (10 -> 19): 20 java/io/IOException
      // try (17 -> 28): 29 java/io/IOException
      // try (22 -> 35): 36 java/io/IOException
      // try (31 -> 42): 42 java/io/IOException
      // try (44 -> 48): 48 java/io/IOException
      // try (57 -> 62): 62 java/io/IOException
      // try (64 -> 71): 72 java/io/IOException
      // try (102 -> 108): 108 java/io/IOException
      // try (147 -> 158): 158 java/io/IOException
      // try (167 -> 179): 180 java/io/IOException
      // try (170 -> 199): 199 java/io/IOException
      // try (223 -> 244): 244 java/io/IOException
      // try (275 -> 285): 285 java/io/IOException
      // try (295 -> 299): 299 java/io/IOException
      // try (313 -> 317): 318 java/io/IOException
      // try (315 -> 330): 331 java/io/IOException
      // try (352 -> 358): 358 java/io/IOException
   }

   private void a() throws IOException {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: bipush 0
      // 01: istore 1
      // 02: bipush 0
      // 03: istore 2
      // 04: bipush 0
      // 05: istore 3
      // 06: aload 0
      // 07: getfield com/l7tech/common/mime/a.b Ljava/io/PushbackInputStream;
      // 0a: invokevirtual java/io/PushbackInputStream.read ()I
      // 0d: dup
      // 0e: istore 4
      // 10: iflt 7a
      // 13: iload 4
      // 15: lookupswitch 96 3 10 57 13 39 45 75
      // 38: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3b: athrow
      // 3c: bipush 1
      // 3d: istore 1
      // 3e: iload 2
      // 3f: ifeq 49
      // 42: goto 7a
      // 45: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 48: athrow
      // 49: bipush 0
      // 4a: istore 3
      // 4b: goto 06
      // 4e: bipush 1
      // 4f: istore 2
      // 50: iload 1
      // 51: ifeq 5b
      // 54: goto 7a
      // 57: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 5a: athrow
      // 5b: bipush 0
      // 5c: istore 3
      // 5d: goto 06
      // 60: iload 3
      // 61: ifeq 70
      // 64: aload 0
      // 65: bipush 1
      // 66: putfield com/l7tech/common/mime/a.h Z
      // 69: goto 06
      // 6c: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 6f: athrow
      // 70: bipush 1
      // 71: istore 3
      // 72: goto 06
      // 75: bipush 0
      // 76: istore 3
      // 77: goto 06
      // 7a: aload 0
      // 7b: getfield com/l7tech/common/mime/a.h Z
      // 7e: ifeq 9f
      // 81: aload 0
      // 82: getfield com/l7tech/common/mime/a.j Ljava/lang/Runnable;
      // 85: ifnull 9f
      // 88: goto 8f
      // 8b: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 8e: athrow
      // 8f: aload 0
      // 90: getfield com/l7tech/common/mime/a.j Ljava/lang/Runnable;
      // 93: invokeinterface java/lang/Runnable.run ()V 1
      // 98: goto b6
      // 9b: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 9e: athrow
      // 9f: aload 0
      // a0: getfield com/l7tech/common/mime/a.i Ljava/lang/Runnable;
      // a3: ifnull b6
      // a6: aload 0
      // a7: getfield com/l7tech/common/mime/a.i Ljava/lang/Runnable;
      // aa: invokeinterface java/lang/Runnable.run ()V 1
      // af: goto b6
      // b2: invokestatic com/l7tech/common/mime/a.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // b5: athrow
      // b6: return
      // try (11 -> 14): 14 java/io/IOException
      // try (18 -> 21): 21 java/io/IOException
      // try (28 -> 31): 31 java/io/IOException
      // try (36 -> 42): 42 java/io/IOException
      // try (50 -> 56): 57 java/io/IOException
      // try (53 -> 63): 63 java/io/IOException
      // try (65 -> 71): 72 java/io/IOException
   }

   @Override
   public long skip(long var1) throws IOException {
      try {
         if (var1 < 1L) {
            return 0L;
         }
      } catch (IOException var5) {
         throw a(var5);
      }

      long var10000;
      label22: {
         try {
            if (var1 > 512L) {
               var10000 = 512L;
               break label22;
            }
         } catch (IOException var6) {
            throw a(var6);
         }

         var10000 = var1;
      }

      int var3 = (int)var10000;
      byte[] var4 = new byte[var3];
      return this.read(var4, 0, var3);
   }

   @Override
   public void close() throws IOException {
      byte[] var1 = BufferPool.getBuffer(4096);
      int var2 = var1.length;

      try {
         try {
            while (this.read(var1, 0, var2) > 0) {
            }
         } catch (IOException var6) {
            throw a(var6);
         }

         this.g = true;
      } finally {
         BufferPool.returnBuffer(var1);
      }
   }

   @Override
   public synchronized void reset() throws IOException {
      throw new IOException(k[2]);
   }

   @Override
   public boolean markSupported() {
      return false;
   }

   @Override
   public synchronized void mark(int var1) {
   }

   public boolean isLastPartProcessed() {
      return this.h;
   }

   public void setEndOfStreamHook(Runnable var1) {
      this.i = var1;
   }

   public void setFinalBoundaryHook(Runnable var1) {
      this.j = var1;
   }

   private static Exception a(Exception var0) {
      return var0;
   }

   static {
      String[] var5 = new String[5];
      int var3 = 0;
      String var2 = "%og{\u0015\u0017\u0005>I}i\u0012V\u000b i`3\u0015\u0013F4n4\u007f\u0012\u0017\u0015!:'!W\u0014\u001f!\u007fgD\u0018oxg\u001e\u0006\u0007'n4`\u0003\u0004\u00034w4v\u0019\u0012\u00031:vv\u0011\u0019\u00140:u3\u0003\u0013\u00148szr\u0003\u001f\b2:v|\u0002\u0018\u00024hm3\u0000\u0017\u0015u\u007fzp\u0018\u0003\b!\u007ffv\u0013\u00188{fxX\u0004\u0003&\u007f`3\u0019\u0019\u0012uiac\u0007\u0019\u0014!\u007fp";
      int var4 = "%og{\u0015\u0017\u0005>I}i\u0012V\u000b i`3\u0015\u0013F4n4\u007f\u0012\u0017\u0015!:'!W\u0014\u001f!\u007fgD\u0018oxg\u001e\u0006\u0007'n4`\u0003\u0004\u00034w4v\u0019\u0012\u00031:vv\u0011\u0019\u00140:u3\u0003\u0013\u00148szr\u0003\u001f\b2:v|\u0002\u0018\u00024hm3\u0000\u0017\u0015u\u007fzp\u0018\u0003\b!\u007ffv\u0013\u00188{fxX\u0004\u0003&\u007f`3\u0019\u0019\u0012uiac\u0007\u0019\u0014!\u007fp"
         .length();
      char var1 = '&';
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 67;
         String var10001 = var2.substring(++var7, var7 + var1);
         byte var10002 = -1;

         while (true) {
            String var8 = a(var10000, a(var10001));
            switch (var10002) {
               case 0:
                  var5[var3++] = var8;
                  if ((var7 += var1) >= var4) {
                     k = var5;
                     return;
                  }

                  var1 = var2.charAt(var7);
                  break;
               default:
                  var5[var3++] = var8;
                  if ((var7 += var1) < var4) {
                     var1 = var2.charAt(var7);
                     continue label24;
                  }

                  var2 = "J\u001d\n\u0015ltuU\u001cF\u0003jqzC\t\u0014\u0018%iaT\u001cF\u0003`$zH\u0006K\u000fphx\u0007\t\b\u0005%j{IE\u0003\fupm\u001dN\u0006\u0016\u0014q$gS\u001a\u0003\u0000h$yR\u001b\u0012Akk`\u0007\n\u0003AkqxK";
                  var4 = "J\u001d\n\u0015ltuU\u001cF\u0003jqzC\t\u0014\u0018%iaT\u001cF\u0003`$zH\u0006K\u000fphx\u0007\t\b\u0005%j{IE\u0003\fupm\u001dN\u0006\u0016\u0014q$gS\u001a\u0003\u0000h$yR\u001b\u0012Akk`\u0007\n\u0003AkqxK"
                     .length();
                  var1 = '1';
                  var7 = -1;
            }

            var10000 = 49;
            var10001 = var2.substring(++var7, var7 + var1);
            var10002 = 0;
         }
      }
   }

   private static char[] a(String var0) {
      char[] var10000 = var0.toCharArray();
      if (var10000.length < 2) {
         var10000[0] = (char)(var10000[0] ^ 37);
      }

      return var10000;
   }

   private static String a(int var0, char[] var1) {
      int var10003 = var1.length;
      int var10002 = var0;
      char[] var10001 = var1;
      int var10000 = var10003;

      for (int var2 = 0; var10000 > var2; var2++) {
         var10001[var2] = (char)(var10001[var2] ^ var10002 ^ switch (var2 % 7) {
            case 0 -> 22;
            case 1 -> 89;
            case 2 -> 87;
            case 3 -> 80;
            case 4 -> 52;
            case 5 -> 53;
            default -> 37;
         });
      }

      return new String(var10001).intern();
   }
}
