wms-transcoder

16:54:36.909 INFO  jd.cli.Main - Decompiling wms-transcoder.jar
package com.wowza.wms.transcoder.encoder;

import com.wowza.util.Base64;
import com.wowza.util.BufferUtils;
import com.wowza.util.JSON;
import com.wowza.wms.bootstrap.Bootstrap;
import com.wowza.wms.logging.WMSLogger;
import com.wowza.wms.logging.WMSLoggerFactory;
import com.wowza.wms.module.ModuleConnect;
import com.wowza.wms.request.RTMPRequestAdapter;
import com.wowza.wms.server.IServer;
import com.wowza.wms.server.IServerNotify2;
import com.wowza.wms.stream.MediaStreamBase;
import com.wowza.wms.transcoder.model.TranscoderLongByReference;
import com.wowza.wms.transcoder.model.TranscoderSessionNative;
import com.wowza.wms.transcoder.vod.TranscoderVODEncoder;
import java.math.BigInteger;
import java.util.HashMap;
import java.util.Map;

public class ServerListenerEncoder
  implements IServerNotify2
{
  public void onServerCreate(IServer paramIServer) {}
  
  class EncoderThread
    extends Thread
  {
    private long a = 0L;
    private Map<String, String> b = new HashMap();
    private TranscoderSessionNative c = new TranscoderSessionNative();
    
    EncoderThread() {}
    
    /* Error */
    public void doNativeLogging()
    {
      // Byte code:
      //   0: new 39	java/util/ArrayList
      //   3: dup
      //   4: invokespecial 40	java/util/ArrayList:<init>	()V
      //   7: astore_1
      //   8: aload_0
      //   9: getfield 36	com/wowza/wms/transcoder/encoder/ServerListenerEncoder$EncoderThread:c	Lcom/wowza/wms/transcoder/model/TranscoderSessionNative;
      //   12: aload_0
      //   13: getfield 26	com/wowza/wms/transcoder/encoder/ServerListenerEncoder$EncoderThread:a	J
      //   16: aload_1
      //   17: invokevirtual 44	com/wowza/wms/transcoder/model/TranscoderSessionNative:getLogStatements	(JLjava/util/List;)J
      //   20: pop2
      //   21: aload_1
      //   22: invokeinterface 50 1 0
      //   27: ifle +132 -> 159
      //   30: goto +275 -> 305
      //   33: new 52	java/lang/StringBuilder
      //   36: dup
      //   37: invokespecial 53	java/lang/StringBuilder:<init>	()V
      //   40: aload 5
      //   42: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   45: ldc 59
      //   47: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   50: aload 6
      //   52: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   55: invokevirtual 63	java/lang/StringBuilder:toString	()Ljava/lang/String;
      //   58: astore 5
      //   60: goto +104 -> 164
      //   63: aload_2
      //   64: aload 4
      //   66: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
      //   69: invokevirtual 75	com/wowza/wms/logging/WMSLogger:debug	(Ljava/lang/String;)V
      //   72: goto +11 -> 83
      //   75: aload 6
      //   77: ifnull +87 -> 164
      //   80: goto -47 -> 33
      //   83: goto +283 -> 366
      //   86: goto -11 -> 75
      //   89: aload_2
      //   90: aload 4
      //   92: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
      //   95: invokevirtual 78	com/wowza/wms/logging/WMSLogger:fatal	(Ljava/lang/String;)V
      //   98: goto -15 -> 83
      //   101: bipush 32
      //   103: bipush 12
      //   105: isub
      //   106: ldc 80
      //   108: invokestatic 86	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   111: astore 5
      //   113: aconst_null
      //   114: astore 6
      //   116: new 52	java/lang/StringBuilder
      //   119: dup
      //   120: invokespecial 53	java/lang/StringBuilder:<init>	()V
      //   123: aload 4
      //   125: getfield 90	com/wowza/wms/transcoder/model/TranscoderLogStatement:contextType	I
      //   128: invokevirtual 93	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
      //   131: ldc 59
      //   133: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   136: aload 4
      //   138: getfield 96	com/wowza/wms/transcoder/model/TranscoderLogStatement:contextIndex	I
      //   141: invokevirtual 93	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
      //   144: invokevirtual 63	java/lang/StringBuilder:toString	()Ljava/lang/String;
      //   147: astore 7
      //   149: aload_0
      //   150: getfield 31	com/wowza/wms/transcoder/encoder/ServerListenerEncoder$EncoderThread:b	Ljava/util/Map;
      //   153: dup
      //   154: astore 8
      //   156: goto +4 -> 160
      //   159: return
      //   160: monitorenter
      //   161: goto +160 -> 321
      //   164: aload 4
      //   166: new 52	java/lang/StringBuilder
      //   169: dup
      //   170: invokespecial 53	java/lang/StringBuilder:<init>	()V
      //   173: ldc 98
      //   175: bipush 53
      //   177: bipush 17
      //   179: swap
      //   180: iadd
      //   181: invokestatic 104	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
      //   184: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   187: aload 4
      //   189: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
      //   192: bipush -66
      //   194: bipush 38
      //   196: isub
      //   197: ldc 106
      //   199: invokestatic 86	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   202: aload 5
      //   204: invokevirtual 112	java/lang/String:replace	(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
      //   207: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   210: invokevirtual 63	java/lang/StringBuilder:toString	()Ljava/lang/String;
      //   213: putfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
      //   216: aload 4
      //   218: getfield 115	com/wowza/wms/transcoder/model/TranscoderLogStatement:level	I
      //   221: tableswitch	default:+-138->83, 1:+-158->63, 2:+72->293, 3:+157->378, 4:+133->354, 5:+-132->89
      //   256: nop
      //   257: nop
      //   258: athrow
      //   259: aload_3
      //   260: invokeinterface 121 1 0
      //   265: checkcast 65	com/wowza/wms/transcoder/model/TranscoderLogStatement
      //   268: astore 4
      //   270: ldc 123
      //   272: bipush 88
      //   274: bipush -3
      //   276: iadd
      //   277: invokestatic 104	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
      //   280: astore 5
      //   282: aload 4
      //   284: getfield 90	com/wowza/wms/transcoder/model/TranscoderLogStatement:contextType	I
      //   287: iflt -123 -> 164
      //   290: goto -189 -> 101
      //   293: aload_2
      //   294: aload 4
      //   296: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
      //   299: invokevirtual 126	com/wowza/wms/logging/WMSLogger:info	(Ljava/lang/String;)V
      //   302: goto -219 -> 83
      //   305: ldc -128
      //   307: invokestatic 134	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
      //   310: astore_2
      //   311: aload_1
      //   312: invokeinterface 138 1 0
      //   317: astore_3
      //   318: goto +48 -> 366
      //   321: aload_0
      //   322: getfield 31	com/wowza/wms/transcoder/encoder/ServerListenerEncoder$EncoderThread:b	Ljava/util/Map;
      //   325: aload 7
      //   327: invokeinterface 144 2 0
      //   332: checkcast 108	java/lang/String
      //   335: astore 6
      //   337: aload 8
      //   339: monitorexit
      //   340: goto -254 -> 86
      //   343: aload 9
      //   345: athrow
      //   346: astore 9
      //   348: aload 8
      //   350: monitorexit
      //   351: goto -8 -> 343
      //   354: aload_2
      //   355: aload 4
      //   357: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
      //   360: invokevirtual 147	com/wowza/wms/logging/WMSLogger:error	(Ljava/lang/String;)V
      //   363: goto -280 -> 83
      //   366: aload_3
      //   367: invokeinterface 151 1 0
      //   372: ifeq -213 -> 159
      //   375: goto -116 -> 259
      //   378: aload_2
      //   379: aload 4
      //   381: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
      //   384: invokevirtual 154	com/wowza/wms/logging/WMSLogger:warn	(Ljava/lang/String;)V
      //   387: goto -304 -> 83
      // Line number table:
      //   Java source line #26	-> byte code offset #0
      //   Java source line #27	-> byte code offset #8
      //   Java source line #29	-> byte code offset #21
      //   Java source line #50	-> byte code offset #33
      //   Java source line #57	-> byte code offset #63
      //   Java source line #58	-> byte code offset #72
      //   Java source line #49	-> byte code offset #75
      //   Java source line #72	-> byte code offset #83
      //   Java source line #48	-> byte code offset #86
      //   Java source line #69	-> byte code offset #89
      //   Java source line #42	-> byte code offset #106
      //   Java source line #43	-> byte code offset #113
      //   Java source line #44	-> byte code offset #116
      //   Java source line #45	-> byte code offset #149
      //   Java source line #74	-> byte code offset #159
      //   Java source line #45	-> byte code offset #160
      //   Java source line #53	-> byte code offset #164
      //   Java source line #54	-> byte code offset #216
      //   Java source line #36	-> byte code offset #259
      //   Java source line #38	-> byte code offset #270
      //   Java source line #40	-> byte code offset #282
      //   Java source line #60	-> byte code offset #293
      //   Java source line #61	-> byte code offset #302
      //   Java source line #31	-> byte code offset #305
      //   Java source line #33	-> byte code offset #311
      //   Java source line #47	-> byte code offset #321
      //   Java source line #48	-> byte code offset #337
      //   Java source line #66	-> byte code offset #354
      //   Java source line #67	-> byte code offset #363
      //   Java source line #34	-> byte code offset #366
      //   Java source line #63	-> byte code offset #378
      //   Java source line #64	-> byte code offset #387
      // Exception table:
      //   from	to	target	type
      //   321	343	346	finally
      //   346	354	346	finally
    }
    
    private final void a()
    {
      try
      {
        a = c.createInstance();
        doNativeLogging();
        if (a == 0L) {
          break label37;
        }
        for (;;)
        {
          int k;
          label37:
          label59:
          byte[] arrayOfByte1;
          byte[] arrayOfByte2;
          int i;
          int j;
          if (k < 16)
          {
            break label289;
            WMSLoggerFactory.getLogger(TranscoderVODEncoder.class).warn(JSON.copyValueOf("Pwgi{jeoiX@TT|p{qse6ptrhSkiwg9$Firdm*ecy.lbtsgq5xvlpl~<Il~.2!, ,( \033,98%\" a", '?' / 91));
            break;
          }
          else
          {
            for (;;)
            {
              c.setNativeLibPath(a, Bootstrap.getNativeLibPath());
              c.initInstance(a);
              break label347;
              for (;;)
              {
                TranscoderLongByReference localTranscoderLongByReference = new TranscoderLongByReference();
                c.getLicenseChallenge(a, localTranscoderLongByReference);
                
                String str3 = RTMPRequestAdapter.fN(ModuleConnect.getN(149));
                arrayOfByte1 = BufferUtils.decodeHexString(str3);
                arrayOfByte2 = BufferUtils.longToByteArray(value);
                i = arrayOfByte2[3] & 0xFF;
                j = arrayOfByte2[5] & 0xFF;
                k = 0; break;String str1 = (String)MediaStreamBase.sinfo.get("s");BigInteger localBigInteger = (BigInteger)MediaStreamBase.sinfo.get("k");String str2 = RTMPRequestAdapter.fS(localBigInteger.toByteArray(), str1);
                if (str2.indexOf("s" + (String)MediaStreamBase.sinfo.get(JSON.copyValueOf("!?$", 67 + 47)) + "=" + RTMPRequestAdapter.fN(ModuleConnect.getN(147))) < 0) {
                  break label59;
                }
              }
              c.setLicenseResponse(a, BufferUtils.byteArrayToLong(arrayOfByte2));
            }
          }
          label289:
          tmp299_298 = ((i + k) % 8);
          byte[] tmp299_289 = arrayOfByte2;tmp299_289[tmp299_298] = ((byte)(tmp299_289[tmp299_298] ^ arrayOfByte1[((j + k) % 16)]));k++;
        }
        return;
      }
      catch (Exception localException)
      {
        label347:
        for (;;)
        {
          WMSLoggerFactory.getLogger(TranscoderVODEncoder.class).error(Base64.endsWith('?' / '�', "Wvdhtkfnn~[AKUq|ppd9qwsoR|jvvd\""), localException);
        }
      }
    }
    
    public void run()
    {
      a();
      if (a == 0L) {}
      for (;;)
      {
        return;c.vodEncoderRun(a);c.destroyInstance(a);
      }
    }
  }
  
  EncoderThread a = new EncoderThread();
  
  public void onServerInit(IServer paramIServer)
  {
    a.start();
  }
  
  public void onServerShutdownStart(IServer paramIServer) {}
  
  public void onServerShutdownComplete(IServer paramIServer) {}
  
  public void onServerConfigLoaded(IServer paramIServer) {}
}

/* Location:
 * Qualified Name:     com.wowza.wms.transcoder.encoder.ServerListenerEncoder
 * Java Class Version: 6 (50.0)
 * JD-Core Version:    0.7.1
 */
package com.wowza.wms.transcoder.encoder;

import com.wowza.util.Base64;
import com.wowza.util.BufferUtils;
import com.wowza.util.JSON;
import com.wowza.wms.bootstrap.Bootstrap;
import com.wowza.wms.logging.WMSLogger;
import com.wowza.wms.logging.WMSLoggerFactory;
import com.wowza.wms.module.ModuleConnect;
import com.wowza.wms.request.RTMPRequestAdapter;
import com.wowza.wms.stream.MediaStreamBase;
import com.wowza.wms.transcoder.model.TranscoderLongByReference;
import com.wowza.wms.transcoder.model.TranscoderSessionNative;
import com.wowza.wms.transcoder.vod.TranscoderVODEncoder;
import java.math.BigInteger;
import java.util.HashMap;
import java.util.Map;

class ServerListenerEncoder$EncoderThread
  extends Thread
{
  private long a = 0L;
  private Map<String, String> b = new HashMap();
  private TranscoderSessionNative c = new TranscoderSessionNative();
  
  ServerListenerEncoder$EncoderThread(ServerListenerEncoder paramServerListenerEncoder) {}
  
  /* Error */
  public void doNativeLogging()
  {
    // Byte code:
    //   0: new 39	java/util/ArrayList
    //   3: dup
    //   4: invokespecial 40	java/util/ArrayList:<init>	()V
    //   7: astore_1
    //   8: aload_0
    //   9: getfield 36	com/wowza/wms/transcoder/encoder/ServerListenerEncoder$EncoderThread:c	Lcom/wowza/wms/transcoder/model/TranscoderSessionNative;
    //   12: aload_0
    //   13: getfield 26	com/wowza/wms/transcoder/encoder/ServerListenerEncoder$EncoderThread:a	J
    //   16: aload_1
    //   17: invokevirtual 44	com/wowza/wms/transcoder/model/TranscoderSessionNative:getLogStatements	(JLjava/util/List;)J
    //   20: pop2
    //   21: aload_1
    //   22: invokeinterface 50 1 0
    //   27: ifle +132 -> 159
    //   30: goto +275 -> 305
    //   33: new 52	java/lang/StringBuilder
    //   36: dup
    //   37: invokespecial 53	java/lang/StringBuilder:<init>	()V
    //   40: aload 5
    //   42: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   45: ldc 59
    //   47: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   50: aload 6
    //   52: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   55: invokevirtual 63	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   58: astore 5
    //   60: goto +104 -> 164
    //   63: aload_2
    //   64: aload 4
    //   66: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
    //   69: invokevirtual 75	com/wowza/wms/logging/WMSLogger:debug	(Ljava/lang/String;)V
    //   72: goto +11 -> 83
    //   75: aload 6
    //   77: ifnull +87 -> 164
    //   80: goto -47 -> 33
    //   83: goto +283 -> 366
    //   86: goto -11 -> 75
    //   89: aload_2
    //   90: aload 4
    //   92: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
    //   95: invokevirtual 78	com/wowza/wms/logging/WMSLogger:fatal	(Ljava/lang/String;)V
    //   98: goto -15 -> 83
    //   101: bipush 32
    //   103: bipush 12
    //   105: isub
    //   106: ldc 80
    //   108: invokestatic 86	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   111: astore 5
    //   113: aconst_null
    //   114: astore 6
    //   116: new 52	java/lang/StringBuilder
    //   119: dup
    //   120: invokespecial 53	java/lang/StringBuilder:<init>	()V
    //   123: aload 4
    //   125: getfield 90	com/wowza/wms/transcoder/model/TranscoderLogStatement:contextType	I
    //   128: invokevirtual 93	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   131: ldc 59
    //   133: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   136: aload 4
    //   138: getfield 96	com/wowza/wms/transcoder/model/TranscoderLogStatement:contextIndex	I
    //   141: invokevirtual 93	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
    //   144: invokevirtual 63	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   147: astore 7
    //   149: aload_0
    //   150: getfield 31	com/wowza/wms/transcoder/encoder/ServerListenerEncoder$EncoderThread:b	Ljava/util/Map;
    //   153: dup
    //   154: astore 8
    //   156: goto +4 -> 160
    //   159: return
    //   160: monitorenter
    //   161: goto +160 -> 321
    //   164: aload 4
    //   166: new 52	java/lang/StringBuilder
    //   169: dup
    //   170: invokespecial 53	java/lang/StringBuilder:<init>	()V
    //   173: ldc 98
    //   175: bipush 53
    //   177: bipush 17
    //   179: swap
    //   180: iadd
    //   181: invokestatic 104	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   184: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   187: aload 4
    //   189: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
    //   192: bipush -66
    //   194: bipush 38
    //   196: isub
    //   197: ldc 106
    //   199: invokestatic 86	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   202: aload 5
    //   204: invokevirtual 112	java/lang/String:replace	(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
    //   207: invokevirtual 57	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   210: invokevirtual 63	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   213: putfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
    //   216: aload 4
    //   218: getfield 115	com/wowza/wms/transcoder/model/TranscoderLogStatement:level	I
    //   221: tableswitch	default:+-138->83, 1:+-158->63, 2:+72->293, 3:+157->378, 4:+133->354, 5:+-132->89
    //   256: nop
    //   257: nop
    //   258: athrow
    //   259: aload_3
    //   260: invokeinterface 121 1 0
    //   265: checkcast 65	com/wowza/wms/transcoder/model/TranscoderLogStatement
    //   268: astore 4
    //   270: ldc 123
    //   272: bipush 88
    //   274: bipush -3
    //   276: iadd
    //   277: invokestatic 104	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   280: astore 5
    //   282: aload 4
    //   284: getfield 90	com/wowza/wms/transcoder/model/TranscoderLogStatement:contextType	I
    //   287: iflt -123 -> 164
    //   290: goto -189 -> 101
    //   293: aload_2
    //   294: aload 4
    //   296: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
    //   299: invokevirtual 126	com/wowza/wms/logging/WMSLogger:info	(Ljava/lang/String;)V
    //   302: goto -219 -> 83
    //   305: ldc -128
    //   307: invokestatic 134	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
    //   310: astore_2
    //   311: aload_1
    //   312: invokeinterface 138 1 0
    //   317: astore_3
    //   318: goto +48 -> 366
    //   321: aload_0
    //   322: getfield 31	com/wowza/wms/transcoder/encoder/ServerListenerEncoder$EncoderThread:b	Ljava/util/Map;
    //   325: aload 7
    //   327: invokeinterface 144 2 0
    //   332: checkcast 108	java/lang/String
    //   335: astore 6
    //   337: aload 8
    //   339: monitorexit
    //   340: goto -254 -> 86
    //   343: aload 9
    //   345: athrow
    //   346: astore 9
    //   348: aload 8
    //   350: monitorexit
    //   351: goto -8 -> 343
    //   354: aload_2
    //   355: aload 4
    //   357: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
    //   360: invokevirtual 147	com/wowza/wms/logging/WMSLogger:error	(Ljava/lang/String;)V
    //   363: goto -280 -> 83
    //   366: aload_3
    //   367: invokeinterface 151 1 0
    //   372: ifeq -213 -> 159
    //   375: goto -116 -> 259
    //   378: aload_2
    //   379: aload 4
    //   381: getfield 69	com/wowza/wms/transcoder/model/TranscoderLogStatement:statement	Ljava/lang/String;
    //   384: invokevirtual 154	com/wowza/wms/logging/WMSLogger:warn	(Ljava/lang/String;)V
    //   387: goto -304 -> 83
    // Line number table:
    //   Java source line #26	-> byte code offset #0
    //   Java source line #27	-> byte code offset #8
    //   Java source line #29	-> byte code offset #21
    //   Java source line #50	-> byte code offset #33
    //   Java source line #57	-> byte code offset #63
    //   Java source line #58	-> byte code offset #72
    //   Java source line #49	-> byte code offset #75
    //   Java source line #72	-> byte code offset #83
    //   Java source line #48	-> byte code offset #86
    //   Java source line #69	-> byte code offset #89
    //   Java source line #42	-> byte code offset #106
    //   Java source line #43	-> byte code offset #113
    //   Java source line #44	-> byte code offset #116
    //   Java source line #45	-> byte code offset #149
    //   Java source line #74	-> byte code offset #159
    //   Java source line #45	-> byte code offset #160
    //   Java source line #53	-> byte code offset #164
    //   Java source line #54	-> byte code offset #216
    //   Java source line #36	-> byte code offset #259
    //   Java source line #38	-> byte code offset #270
    //   Java source line #40	-> byte code offset #282
    //   Java source line #60	-> byte code offset #293
    //   Java source line #61	-> byte code offset #302
    //   Java source line #31	-> byte code offset #305
    //   Java source line #33	-> byte code offset #311
    //   Java source line #47	-> byte code offset #321
    //   Java source line #48	-> byte code offset #337
    //   Java source line #66	-> byte code offset #354
    //   Java source line #67	-> byte code offset #363
    //   Java source line #34	-> byte code offset #366
    //   Java source line #63	-> byte code offset #378
    //   Java source line #64	-> byte code offset #387
    // Exception table:
    //   from	to	target	type
    //   321	343	346	finally
    //   346	354	346	finally
  }
  
  private final void a()
  {
    try
    {
      a = c.createInstance();
      doNativeLogging();
      if (a == 0L) {
        break label37;
      }
      for (;;)
      {
        int k;
        label37:
        label59:
        byte[] arrayOfByte1;
        byte[] arrayOfByte2;
        int i;
        int j;
        if (k < 16)
        {
          break label289;
          WMSLoggerFactory.getLogger(TranscoderVODEncoder.class).warn(JSON.copyValueOf("Pwgi{jeoiX@TT|p{qse6ptrhSkiwg9$Firdm*ecy.lbtsgq5xvlpl~<Il~.2!, ,( \033,98%\" a", '?' / 91));
          break;
        }
        else
        {
          for (;;)
          {
            c.setNativeLibPath(a, Bootstrap.getNativeLibPath());
            c.initInstance(a);
            break label347;
            for (;;)
            {
              TranscoderLongByReference localTranscoderLongByReference = new TranscoderLongByReference();
              c.getLicenseChallenge(a, localTranscoderLongByReference);
              
              String str3 = RTMPRequestAdapter.fN(ModuleConnect.getN(149));
              arrayOfByte1 = BufferUtils.decodeHexString(str3);
              arrayOfByte2 = BufferUtils.longToByteArray(value);
              i = arrayOfByte2[3] & 0xFF;
              j = arrayOfByte2[5] & 0xFF;
              k = 0; break;String str1 = (String)MediaStreamBase.sinfo.get("s");BigInteger localBigInteger = (BigInteger)MediaStreamBase.sinfo.get("k");String str2 = RTMPRequestAdapter.fS(localBigInteger.toByteArray(), str1);
              if (str2.indexOf("s" + (String)MediaStreamBase.sinfo.get(JSON.copyValueOf("!?$", 67 + 47)) + "=" + RTMPRequestAdapter.fN(ModuleConnect.getN(147))) < 0) {
                break label59;
              }
            }
            c.setLicenseResponse(a, BufferUtils.byteArrayToLong(arrayOfByte2));
          }
        }
        label289:
        tmp299_298 = ((i + k) % 8);
        byte[] tmp299_289 = arrayOfByte2;tmp299_289[tmp299_298] = ((byte)(tmp299_289[tmp299_298] ^ arrayOfByte1[((j + k) % 16)]));k++;
      }
      return;
    }
    catch (Exception localException)
    {
      label347:
      for (;;)
      {
        WMSLoggerFactory.getLogger(TranscoderVODEncoder.class).error(Base64.endsWith('?' / '�', "Wvdhtkfnn~[AKUq|ppd9qwsoR|jvvd\""), localException);
      }
    }
  }
  
  public void run()
  {
    a();
    if (a == 0L) {}
    for (;;)
    {
      return;c.vodEncoderRun(a);c.destroyInstance(a);
    }
  }
}

/* Location:
 * Qualified Name:     com.wowza.wms.transcoder.encoder.ServerListenerEncoder.EncoderThread
 * Java Class Version: 6 (50.0)
 * JD-Core Version:    0.7.1
 */
package com.wowza.wms.transcoder.httpprovider;

import com.wowza.util.JSON;
import com.wowza.wms.application.WMSProperties;
import com.wowza.wms.http.HTTProvider2Base;
import com.wowza.wms.transcoder.model.ITranscoderFrameGrabResult;

public class HTTPTranscoderThumbnail
  extends HTTProvider2Base
{
  int a;
  int b;
  
  public HTTPTranscoderThumbnail()
  {
    a = 1500;
    b = 50;
  }
  
  class GrabResult
    implements ITranscoderFrameGrabResult
  {
    byte[] a = null;
    String b = JSON.copyValueOf("e`tu", 63 * 49);
    String c = JSON.copyValueOf("4,(**1)", 47 * 15);
    
    GrabResult() {}
    
    /* Error */
    public void onGrabFrame(com.wowza.wms.transcoder.model.TranscoderNativeVideoFrame arg1)
    {
      // Byte code:
      //   0: aload_1
      //   1: invokestatic 50	com/wowza/wms/transcoder/util/TranscoderStreamUtils:nativeImageToBufferedImage	(Lcom/wowza/wms/transcoder/model/TranscoderNativeVideoFrame;)Ljava/awt/image/BufferedImage;
      //   4: astore_2
      //   5: aload_2
      //   6: ifnull +6 -> 12
      //   9: goto +4 -> 13
      //   12: return
      //   13: ldc 9
      //   15: invokestatic 56	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
      //   18: new 58	java/lang/StringBuilder
      //   21: dup
      //   22: invokespecial 59	java/lang/StringBuilder:<init>	()V
      //   25: bipush -53
      //   27: bipush 11
      //   29: isub
      //   30: ldc 61
      //   32: invokestatic 67	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   35: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   38: aload_0
      //   39: getfield 40	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail$GrabResult:c	Ljava/lang/String;
      //   42: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   45: ldc 73
      //   47: bipush 59
      //   49: bipush 39
      //   51: swap
      //   52: imul
      //   53: invokestatic 34	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
      //   56: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   59: aload_0
      //   60: getfield 36	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail$GrabResult:b	Ljava/lang/String;
      //   63: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   66: bipush 36
      //   68: bipush 123
      //   70: iadd
      //   71: ldc 75
      //   73: invokestatic 67	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   76: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   79: aload_2
      //   80: invokevirtual 81	java/awt/image/BufferedImage:getWidth	()I
      //   83: invokevirtual 84	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
      //   86: ldc 86
      //   88: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   91: aload_2
      //   92: invokevirtual 89	java/awt/image/BufferedImage:getHeight	()I
      //   95: invokevirtual 84	java/lang/StringBuilder:append	(I)Ljava/lang/StringBuilder;
      //   98: bipush -17
      //   100: bipush -59
      //   102: isub
      //   103: ldc 91
      //   105: invokestatic 67	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   108: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   111: aload_1
      //   112: invokevirtual 97	com/wowza/wms/transcoder/model/TranscoderNativeVideoFrame:getTimecode	()J
      //   115: invokevirtual 100	java/lang/StringBuilder:append	(J)Ljava/lang/StringBuilder;
      //   118: invokevirtual 104	java/lang/StringBuilder:toString	()Ljava/lang/String;
      //   121: invokevirtual 110	com/wowza/wms/logging/WMSLogger:info	(Ljava/lang/String;)V
      //   124: goto +63 -> 187
      //   127: astore_3
      //   128: ldc 9
      //   130: invokestatic 56	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
      //   133: new 58	java/lang/StringBuilder
      //   136: dup
      //   137: invokespecial 59	java/lang/StringBuilder:<init>	()V
      //   140: ldc 112
      //   142: sipush 1104
      //   145: sipush 181
      //   148: idiv
      //   149: invokestatic 34	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
      //   152: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   155: aload_0
      //   156: getfield 40	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail$GrabResult:c	Ljava/lang/String;
      //   159: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   162: iconst_3
      //   163: bipush 17
      //   165: imul
      //   166: ldc 114
      //   168: invokestatic 67	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   171: invokevirtual 71	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
      //   174: invokevirtual 104	java/lang/StringBuilder:toString	()Ljava/lang/String;
      //   177: aload_3
      //   178: invokevirtual 118	com/wowza/wms/logging/WMSLogger:error	(Ljava/lang/String;Ljava/lang/Throwable;)V
      //   181: goto -169 -> 12
      //   184: goto -172 -> 12
      //   187: new 120	java/io/ByteArrayOutputStream
      //   190: dup
      //   191: invokespecial 121	java/io/ByteArrayOutputStream:<init>	()V
      //   194: astore_3
      //   195: aload_2
      //   196: aload_0
      //   197: getfield 36	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail$GrabResult:b	Ljava/lang/String;
      //   200: sipush 189
      //   203: bipush 56
      //   205: idiv
      //   206: ldc 123
      //   208: invokestatic 67	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
      //   211: invokevirtual 129	java/lang/String:equals	(Ljava/lang/Object;)Z
      //   214: ifeq +64 -> 278
      //   217: goto +17 -> 234
      //   220: aload_0
      //   221: aload_3
      //   222: invokevirtual 133	java/io/ByteArrayOutputStream:toByteArray	()[B
      //   225: putfield 26	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail$GrabResult:a	[B
      //   228: aload 4
      //   230: monitorexit
      //   231: goto +21 -> 252
      //   234: ldc -121
      //   236: sipush 289
      //   239: bipush 59
      //   241: idiv
      //   242: invokestatic 34	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
      //   245: goto +10 -> 255
      //   248: monitorenter
      //   249: goto -29 -> 220
      //   252: goto -68 -> 184
      //   255: aload_3
      //   256: invokestatic 141	javax/imageio/ImageIO:write	(Ljava/awt/image/RenderedImage;Ljava/lang/String;Ljava/io/OutputStream;)Z
      //   259: pop
      //   260: aload_0
      //   261: dup
      //   262: astore 4
      //   264: goto -16 -> 248
      //   267: aload 5
      //   269: athrow
      //   270: astore 5
      //   272: aload 4
      //   274: monitorexit
      //   275: goto -8 -> 267
      //   278: aload_0
      //   279: getfield 36	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail$GrabResult:b	Ljava/lang/String;
      //   282: goto -27 -> 255
      // Line number table:
      //   Java source line #31	-> byte code offset #0
      //   Java source line #32	-> byte code offset #5
      //   Java source line #49	-> byte code offset #12
      //   Java source line #34	-> byte code offset #13
      //   Java source line #44	-> byte code offset #127
      //   Java source line #46	-> byte code offset #128
      //   Java source line #47	-> byte code offset #184
      //   Java source line #37	-> byte code offset #187
      //   Java source line #38	-> byte code offset #195
      //   Java source line #41	-> byte code offset #220
      //   Java source line #42	-> byte code offset #228
      //   Java source line #38	-> byte code offset #234
      //   Java source line #39	-> byte code offset #248
      //   Java source line #42	-> byte code offset #252
      //   Java source line #38	-> byte code offset #255
      //   Java source line #39	-> byte code offset #260
      //   Java source line #42	-> byte code offset #267
      //   Java source line #38	-> byte code offset #278
      // Exception table:
      //   from	to	target	type
      //   187	285	127	java/lang/Exception
      //   220	234	270	finally
      //   270	278	270	finally
    }
    
    public synchronized byte[] getBytes()
    {
      return a;
    }
  }
  
  public void setProperties(WMSProperties paramWMSProperties)
  {
    super.setProperties(paramWMSProperties);
    
    a = paramWMSProperties.getPropertyInt(JSON.copyValueOf("wcv}lyXdcj", 13 + 120), a);
    b = paramWMSProperties.getPropertyInt(JSON.copyValueOf("btcfqfb^vmij|r", -15 - -31), b);
  }
  
  /* Error */
  public void onHTTPRequest(com.wowza.wms.vhost.IVHost paramIVHost, com.wowza.wms.http.IHTTPRequest paramIHTTPRequest, com.wowza.wms.http.IHTTPResponse paramIHTTPResponse)
  {
    // Byte code:
    //   0: aload_0
    //   1: aload_1
    //   2: aload_2
    //   3: aload_3
    //   4: invokevirtual 47	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail:doHTTPAuthentication	(Lcom/wowza/wms/vhost/IVHost;Lcom/wowza/wms/http/IHTTPRequest;Lcom/wowza/wms/http/IHTTPResponse;)Z
    //   7: ifne +1112 -> 1119
    //   10: goto +1001 -> 1011
    //   13: aload_0
    //   14: getfield 19	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail:b	I
    //   17: i2l
    //   18: invokestatic 53	java/lang/Thread:sleep	(J)V
    //   21: goto +1164 -> 1185
    //   24: goto +486 -> 510
    //   27: aload 7
    //   29: bipush 28
    //   31: bipush -52
    //   33: isub
    //   34: ldc 55
    //   36: invokestatic 61	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   39: invokeinterface 67 2 0
    //   44: checkcast 69	java/lang/String
    //   47: astore 10
    //   49: iconst_0
    //   50: istore 11
    //   52: iconst_0
    //   53: istore 12
    //   55: aload 10
    //   57: ifnull +1094 -> 1151
    //   60: goto +625 -> 685
    //   63: invokestatic 75	java/lang/System:currentTimeMillis	()J
    //   66: lstore 25
    //   68: lload 25
    //   70: lload 23
    //   72: lsub
    //   73: aload_0
    //   74: getfield 17	com/wowza/wms/transcoder/httpprovider/HTTPTranscoderThumbnail:a	I
    //   77: i2l
    //   78: lcmp
    //   79: ifle +544 -> 623
    //   82: goto +869 -> 951
    //   85: aload 21
    //   87: aload 22
    //   89: invokevirtual 81	com/wowza/wms/transcoder/model/TranscoderStreamSourceVideo:grabFrame	(Lcom/wowza/wms/transcoder/model/ITranscoderFrameGrabResult;)V
    //   92: goto +206 -> 298
    //   95: ldc 2
    //   97: invokestatic 87	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
    //   100: new 89	java/lang/StringBuilder
    //   103: dup
    //   104: invokespecial 90	java/lang/StringBuilder:<init>	()V
    //   107: sipush 233
    //   110: bipush 73
    //   112: idiv
    //   113: ldc 92
    //   115: invokestatic 61	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   118: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   121: aload 13
    //   123: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   126: ldc 98
    //   128: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   131: aload 14
    //   133: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   136: ldc 98
    //   138: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   141: aload 8
    //   143: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   146: ldc 100
    //   148: bipush -50
    //   150: bipush -5
    //   152: isub
    //   153: invokestatic 31	com/wowza/util/JSON:copyValueOf	(Ljava/lang/String;I)Ljava/lang/String;
    //   156: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   159: invokevirtual 104	java/lang/StringBuilder:toString	()Ljava/lang/String;
    //   162: invokevirtual 110	com/wowza/wms/logging/WMSLogger:warn	(Ljava/lang/String;)V
    //   165: goto +345 -> 510
    //   168: ldc 2
    //   170: invokestatic 87	com/wowza/wms/logging/WMSLoggerFactory:getLogger	(Ljava/lang/Class;)Lcom/wowza/wms/logging/WMSLogger;
    //   173: new 89	java/lang/StringBuilder
    //   176: dup
    //   177: invokespecial 90	java/lang/StringBuilder:<init>	()V
    //   180: bipush -16
    //   182: bipush -22
    //   184: isub
    //   185: ldc 112
    //   187: invokestatic 61	com/wowza/util/Base64:endsWith	(ILjava/lang/String;)Ljava/lang/String;
    //   190: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   193: aload 13
    //   195: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   198: ldc 98
    //   200: invokevirtual 96	java/lang/StringBuilder:append	(Ljava/lang/String;)Ljava/lang/StringBuilder;
    //   203: alo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60

Further reading...

For more information on Java 1.5 Tiger, you may find Java 1.5 Tiger, A developer's Notebook by D. Flanagan and B. McLaughlin from O'Reilly of interest.

New!JAR listings


Copyright 2006-2019. Infinite Loop Ltd