package com.l7tech.common.io;

import com.l7tech.util.CausedIOException;
import com.l7tech.util.ExceptionUtils;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.concurrent.ExecutionException;
import java.util.logging.Logger;
import org.jetbrains.annotations.Nullable;

public class ProcUtils {
   protected static final Logger logger;
   private static final String[] a;

   public static String[] args(Object... var0) {
      ArrayList var1 = new ArrayList();

      for (Object var5 : var0) {
         if (var5 instanceof String[] var6) {
            var1.addAll(Arrays.asList(var6));
         } else {
            var1.add(var5.toString());
         }
      }

      return var1.toArray(new String[var1.size()]);
   }

   public static ProcResult exec(String[] var0) throws IOException {
      return exec(var0, (byte[])null);
   }

   public static ProcResult exec(String[] var0, byte[] var1) throws IOException {
      String[] var10000;
      try {
         var10000 = var0;
         if (var1 != null) {
            return exec(var0, new ByteArrayInputStream(var1));
         }
      } catch (IOException var2) {
         throw a(var2);
      }

      return exec(var10000, (InputStream)null);
   }

   public static ProcResult exec(String[] var0, InputStream var1) throws IOException {
      int var2 = var0.length;

      String[] var10000;
      label17: {
         try {
            if (var2 > 1) {
               var10000 = Arrays.asList(var0).subList(1, var2).toArray(new String[var2 - 1]);
               break label17;
            }
         } catch (IOException var4) {
            throw a(var4);
         }

         var10000 = new String[0];
      }

      String[] var3 = var10000;
      return exec(null, new File(var0[0]), var3, var1, true);
   }

   public static ProcResult exec(String var0) throws IOException {
      return exec(var0, (byte[])null);
   }

   public static ProcResult exec(String var0, byte[] var1) throws IOException {
      String var10000;
      try {
         var10000 = var0;
         if (var1 != null) {
            return exec(var0, new ByteArrayInputStream(var1));
         }
      } catch (IOException var2) {
         throw a(var2);
      }

      return exec(var10000, (InputStream)null);
   }

   public static ProcResult exec(String var0, InputStream var1) throws IOException {
      return exec(var0.split(" "), var1);
   }

   public static ProcResult exec(File var0) throws IOException {
      return exec(null, var0, new String[0], (byte[])null, true);
   }

   public static ProcResult exec(File var0, File var1) throws IOException {
      return exec(var0, var1, new String[0], (byte[])null, true);
   }

   public static ProcResult exec(File var0, String[] var1) throws IOException {
      return exec(null, var0, var1, (byte[])null, true);
   }

   public static ProcResult exec(File var0, File var1, String[] var2) throws IOException {
      return exec(var0, var1, var2, (byte[])null, true);
   }

   public static ProcResult exec(File var0, String[] var1, byte[] var2) throws IOException {
      return exec(null, var0, var1, var2, true);
   }

   public static ProcResult exec(File var0, File var1, String[] var2, byte[] var3) throws IOException {
      return exec(var0, var1, var2, var3, true);
   }

   public static ProcResult exec(File var0, String[] var1, @Nullable byte[] var2, boolean var3) throws IOException {
      return exec(null, var0, var1, var2, var3);
   }

   public static ProcResult exec(@Nullable File param0, File param1, String[] param2, byte[] param3, boolean param4) 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: aload 3
      // 01: ifnull 3c
      // 04: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 07: getstatic java/util/logging/Level.FINEST Ljava/util/logging/Level;
      // 0a: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 0d: ifeq 3c
      // 10: goto 17
      // 13: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 16: athrow
      // 17: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 1a: aload 3
      // 1b: arraylength
      // 1c: aload 1
      // 1d: invokevirtual java/io/File.getName ()Ljava/lang/String;
      // 20: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 23: bipush 1
      // 24: aaload
      // 25: dup_x2
      // 26: pop
      // 27: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 2a: bipush 0
      // 2b: aaload
      // 2c: swap
      // 2d: invokedynamic makeConcatWithConstants (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001\u0001" ]
      // 32: invokevirtual java/util/logging/Logger.finest (Ljava/lang/String;)V
      // 35: goto 3c
      // 38: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 3b: athrow
      // 3c: aload 0
      // 3d: aload 1
      // 3e: aload 2
      // 3f: aload 3
      // 40: ifnull 52
      // 43: new java/io/ByteArrayInputStream
      // 46: dup
      // 47: aload 3
      // 48: invokespecial java/io/ByteArrayInputStream.<init> ([B)V
      // 4b: goto 53
      // 4e: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 51: athrow
      // 52: aconst_null
      // 53: iload 4
      // 55: invokestatic com/l7tech/common/io/ProcUtils.exec (Ljava/io/File;Ljava/io/File;[Ljava/lang/String;Ljava/io/InputStream;Z)Lcom/l7tech/common/io/ProcResult;
      // 58: areturn
      // try (0 -> 6): 7 java/io/IOException
      // try (2 -> 25): 26 java/io/IOException
      // try (28 -> 38): 38 java/io/IOException
   }

   public static ProcResult exec(@Nullable File var0, File var1, String[] var2, InputStream var3, boolean var4) throws IOException {
      try {
         return a(var0, var1, var2, var3, var4);
      } catch (IOException | ExecutionException var7) {
         String var10 = var1.getName();
         String var11 = var7.getMessage();
         String[] var9 = a;
         throw new CausedIOException(var9[4] + var10 + var9[6] + var11, var7);
      } catch (InterruptedException var8) {
         Thread.currentThread().interrupt();
         String var10002 = var1.getName();
         String var10003 = ExceptionUtils.getMessage(var8);
         String[] var6 = a;
         throw new CausedIOException(var6[15] + var10002 + var6[7] + var10003, var8);
      }
   }

   private static ProcResult a(File param0, File param1, String[] param2, InputStream param3, boolean param4) throws InterruptedException, IOException, ExecutionException {
      // $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 2
      // 001: arraylength
      // 002: bipush 1
      // 003: iadd
      // 004: anewarray 54
      // 007: astore 5
      // 009: aload 5
      // 00b: bipush 0
      // 00c: aload 1
      // 00d: invokevirtual java/io/File.getPath ()Ljava/lang/String;
      // 010: aastore
      // 011: aload 2
      // 012: bipush 0
      // 013: aload 5
      // 015: bipush 1
      // 016: aload 2
      // 017: arraylength
      // 018: invokestatic java/lang/System.arraycopy (Ljava/lang/Object;ILjava/lang/Object;II)V
      // 01b: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 01e: getstatic java/util/logging/Level.FINEST Ljava/util/logging/Level;
      // 021: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 024: ifeq 044
      // 027: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 02a: aload 1
      // 02b: invokevirtual java/io/File.getName ()Ljava/lang/String;
      // 02e: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 031: bipush 11
      // 033: aaload
      // 034: swap
      // 035: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 03a: invokevirtual java/util/logging/Logger.finest (Ljava/lang/String;)V
      // 03d: goto 044
      // 040: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 043: athrow
      // 044: aconst_null
      // 045: astore 6
      // 047: aconst_null
      // 048: astore 7
      // 04a: aconst_null
      // 04b: astore 8
      // 04d: new java/lang/ProcessBuilder
      // 050: dup
      // 051: aload 5
      // 053: invokespecial java/lang/ProcessBuilder.<init> ([Ljava/lang/String;)V
      // 056: aload 0
      // 057: invokevirtual java/lang/ProcessBuilder.directory (Ljava/io/File;)Ljava/lang/ProcessBuilder;
      // 05a: bipush 1
      // 05b: invokevirtual java/lang/ProcessBuilder.redirectErrorStream (Z)Ljava/lang/ProcessBuilder;
      // 05e: invokevirtual java/lang/ProcessBuilder.start ()Ljava/lang/Process;
      // 061: astore 6
      // 063: aload 6
      // 065: invokevirtual java/lang/Process.getOutputStream ()Ljava/io/OutputStream;
      // 068: astore 8
      // 06a: aload 3
      // 06b: ifnull 0ba
      // 06e: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 071: getstatic java/util/logging/Level.FINEST Ljava/util/logging/Level;
      // 074: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 077: ifeq 09e
      // 07a: goto 081
      // 07d: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 080: athrow
      // 081: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 084: aload 1
      // 085: invokevirtual java/io/File.getName ()Ljava/lang/String;
      // 088: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 08b: bipush 14
      // 08d: aaload
      // 08e: swap
      // 08f: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 094: invokevirtual java/util/logging/Logger.finest (Ljava/lang/String;)V
      // 097: goto 09e
      // 09a: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 09d: athrow
      // 09e: aload 3
      // 09f: aload 8
      // 0a1: invokestatic com/l7tech/util/IOUtils.copyStream (Ljava/io/InputStream;Ljava/io/OutputStream;)J
      // 0a4: pop2
      // 0a5: aload 3
      // 0a6: invokestatic com/l7tech/util/ResourceUtils.closeQuietly (Ljava/io/Closeable;)V
      // 0a9: goto 0b5
      // 0ac: astore 9
      // 0ae: aload 3
      // 0af: invokestatic com/l7tech/util/ResourceUtils.closeQuietly (Ljava/io/Closeable;)V
      // 0b2: aload 9
      // 0b4: athrow
      // 0b5: aload 8
      // 0b7: invokevirtual java/io/OutputStream.flush ()V
      // 0ba: aload 8
      // 0bc: invokevirtual java/io/OutputStream.close ()V
      // 0bf: aconst_null
      // 0c0: astore 8
      // 0c2: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 0c5: getstatic java/util/logging/Level.FINEST Ljava/util/logging/Level;
      // 0c8: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 0cb: ifeq 0ea
      // 0ce: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 0d1: aload 1
      // 0d2: invokevirtual java/io/File.getName ()Ljava/lang/String;
      // 0d5: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 0d8: bipush 2
      // 0d9: aaload
      // 0da: swap
      // 0db: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001" ]
      // 0e0: invokevirtual java/util/logging/Logger.finest (Ljava/lang/String;)V
      // 0e3: goto 0ea
      // 0e6: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 0e9: athrow
      // 0ea: aload 6
      // 0ec: invokevirtual java/lang/Process.getInputStream ()Ljava/io/InputStream;
      // 0ef: astore 7
      // 0f1: aload 7
      // 0f3: invokestatic com/l7tech/util/IOUtils.slurpStream (Ljava/io/InputStream;)[B
      // 0f6: astore 9
      // 0f8: aload 7
      // 0fa: invokevirtual java/io/InputStream.close ()V
      // 0fd: aconst_null
      // 0fe: astore 7
      // 100: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 103: getstatic java/util/logging/Level.FINEST Ljava/util/logging/Level;
      // 106: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 109: ifeq 133
      // 10c: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 10f: aload 9
      // 111: arraylength
      // 112: aload 1
      // 113: invokevirtual java/io/File.getName ()Ljava/lang/String;
      // 116: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 119: bipush 3
      // 11a: aaload
      // 11b: dup_x2
      // 11c: pop
      // 11d: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 120: bipush 12
      // 122: aaload
      // 123: swap
      // 124: invokedynamic makeConcatWithConstants (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001\u0001" ]
      // 129: invokevirtual java/util/logging/Logger.finest (Ljava/lang/String;)V
      // 12c: goto 133
      // 12f: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 132: athrow
      // 133: aload 6
      // 135: invokevirtual java/lang/Process.waitFor ()I
      // 138: istore 10
      // 13a: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 13d: getstatic java/util/logging/Level.FINEST Ljava/util/logging/Level;
      // 140: invokevirtual java/util/logging/Logger.isLoggable (Ljava/util/logging/Level;)Z
      // 143: ifeq 16d
      // 146: getstatic com/l7tech/common/io/ProcUtils.logger Ljava/util/logging/Logger;
      // 149: aload 1
      // 14a: invokevirtual java/io/File.getName ()Ljava/lang/String;
      // 14d: iload 10
      // 14f: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 152: bipush 8
      // 154: aaload
      // 155: dup_x2
      // 156: pop
      // 157: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 15a: bipush 13
      // 15c: aaload
      // 15d: swap
      // 15e: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001\u0001" ]
      // 163: invokevirtual java/util/logging/Logger.finest (Ljava/lang/String;)V
      // 166: goto 16d
      // 169: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 16c: athrow
      // 16d: iload 4
      // 16f: ifne 1b9
      // 172: iload 10
      // 174: ifeq 1b9
      // 177: goto 17e
      // 17a: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 17d: athrow
      // 17e: new java/io/IOException
      // 181: dup
      // 182: aload 1
      // 183: invokevirtual java/io/File.getName ()Ljava/lang/String;
      // 186: iload 10
      // 188: new java/lang/String
      // 18b: dup
      // 18c: aload 9
      // 18e: invokespecial java/lang/String.<init> ([B)V
      // 191: astore 13
      // 193: istore 14
      // 195: astore 15
      // 197: getstatic com/l7tech/common/io/ProcUtils.a [Ljava/lang/String;
      // 19a: astore 16
      // 19c: aload 16
      // 19e: bipush 10
      // 1a0: aaload
      // 1a1: aload 15
      // 1a3: aload 16
      // 1a5: bipush 5
      // 1a6: aaload
      // 1a7: iload 14
      // 1a9: aload 16
      // 1ab: bipush 9
      // 1ad: aaload
      // 1ae: aload 13
      // 1b0: invokedynamic makeConcatWithConstants (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Ljava/lang/String; bsm=java/lang/invoke/StringConcatFactory.makeConcatWithConstants (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; args=[ "\u0001\u0001\u0001\u0001\u0001\u0001" ]
      // 1b5: invokespecial java/io/IOException.<init> (Ljava/lang/String;)V
      // 1b8: athrow
      // 1b9: new com/l7tech/common/io/ProcResult
      // 1bc: dup
      // 1bd: iload 10
      // 1bf: aload 9
      // 1c1: invokespecial com/l7tech/common/io/ProcResult.<init> (I[B)V
      // 1c4: astore 11
      // 1c6: aload 7
      // 1c8: invokestatic com/l7tech/util/ResourceUtils.closeQuietly (Ljava/io/Closeable;)V
      // 1cb: aload 8
      // 1cd: invokestatic com/l7tech/util/ResourceUtils.closeQuietly (Ljava/io/Closeable;)V
      // 1d0: aload 6
      // 1d2: ifnull 1e1
      // 1d5: aload 6
      // 1d7: invokevirtual java/lang/Process.destroy ()V
      // 1da: goto 1e1
      // 1dd: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 1e0: athrow
      // 1e1: aload 11
      // 1e3: areturn
      // 1e4: astore 12
      // 1e6: aload 7
      // 1e8: invokestatic com/l7tech/util/ResourceUtils.closeQuietly (Ljava/io/Closeable;)V
      // 1eb: aload 8
      // 1ed: invokestatic com/l7tech/util/ResourceUtils.closeQuietly (Ljava/io/Closeable;)V
      // 1f0: aload 6
      // 1f2: ifnull 201
      // 1f5: aload 6
      // 1f7: invokevirtual java/lang/Process.destroy ()V
      // 1fa: goto 201
      // 1fd: invokestatic com/l7tech/common/io/ProcUtils.a (Ljava/lang/Exception;)Ljava/lang/Exception;
      // 200: athrow
      // 201: aload 12
      // 203: athrow
      // try (55 -> 71): 72 java/lang/InterruptedException
      // try (53 -> 59): 60 java/lang/InterruptedException
      // try (6 -> 31): 32 java/lang/InterruptedException
      // try (74 -> 78): 81 null
      // try (81 -> 82): 81 null
      // try (166 -> 170): 171 java/lang/InterruptedException
      // try (144 -> 163): 164 java/lang/InterruptedException
      // try (118 -> 138): 139 java/lang/InterruptedException
      // try (92 -> 105): 106 java/lang/InterruptedException
      // try (40 -> 208): 221 null
      // try (208 -> 216): 217 java/lang/InterruptedException
      // try (221 -> 222): 221 null
      // try (222 -> 230): 231 java/lang/InterruptedException
   }

   static {
      String[] var5 = new String[16];
      int var3 = 0;
      String var2 = "\u0005r.rug}Jvwo~d(Q0>hd{}Ub8abu0\u001f0\bvu9byz:\u0005\u001dwu6byz:\u0005\u007f\"r`a)\u0005v%i}4-W\u007f0tqyg\u0005\u0005wu6b0\u0011p~6d|q}Q\u007fwo~b2Nuw\u001c\u0005u/odq9\u0005g>rx43J~-cb{}Vd6reg}\n\u0005`%iwf<H*w\u0002\u001f0\bub8abu0\u0005\u000b\u000b0wIe`-Pdm&\bub8abu0\u0005\u0011we9hyz:\u0005`%iwf<H*w\u001f\u0005r.rug}Jvwie`-Pdw`b{0\u0005`%iwf<H*w\u0014\u0005u/odq9\u0005c#gda.\u0005s8bu4";
      int var4 = "\u0005r.rug}Jvwo~d(Q0>hd{}Ub8abu0\u001f0\bvu9byz:\u0005\u001dwu6byz:\u0005\u007f\"r`a)\u0005v%i}4-W\u007f0tqyg\u0005\u0005wu6b0\u0011p~6d|q}Q\u007fwo~b2Nuw\u001c\u0005u/odq9\u0005g>rx43J~-cb{}Vd6reg}\n\u0005`%iwf<H*w\u0002\u001f0\bub8abu0\u0005\u000b\u000b0wIe`-Pdm&\bub8abu0\u0005\u0011we9hyz:\u0005`%iwf<H*w\u001f\u0005r.rug}Jvwie`-Pdw`b{0\u0005`%iwf<H*w\u0014\u0005u/odq9\u0005c#gda.\u0005s8bu4"
         .length();
      char var1 = 30;
      int var7 = -1;

      label24:
      while (true) {
         byte var10000 = 40;
         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) {
                     a = var5;
                     logger = Logger.getLogger(ProcUtils.class.getName());
                     return;
                  }

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

                  var2 = "$=e=;8xG&}!r&m\b$| 72?\u000e<e1&vl\u0013 p%?v~\u0014r|*\"#kG;{0=vo\u0015=r63;%G).<a! $j\u0017&p r2j\u0015;{#r?q\u0011=v%&?p\trz\"r&m\b5g%?v";
                  var4 = "$=e=;8xG&}!r&m\b$| 72?\u000e<e1&vl\u0013 p%?v~\u0014r|*\"#kG;{0=vo\u0015=r63;%G).<a! $j\u0017&p r2j\u0015;{#r?q\u0011=v%&?p\trz\"r&m\b5g%?v"
                     .length();
                  var1 = '9';
                  var7 = -1;
            }

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

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

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

      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 -> 13;
            case 1 -> 56;
            case 2 -> 127;
            case 3 -> 46;
            case 4 -> 56;
            case 5 -> 60;
            default -> 117;
         });
      }

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