Code with Finding: |
/*
* Decompiled with CFR 0_128.
*
* Could not load the following classes:
* com.arijasoft.dataengine.MyDebug
* com.arijasoft.probeEngine.parsingError
* com.arijasoft.probeEngine.plainUrlParser$ProperChannel
*/
package com.arijasoft.probeEngine;
import com.arijasoft.dataengine.MyDebug;
import com.arijasoft.probeEngine.parsingError;
import com.arijasoft.probeEngine.plainUrlParser;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
import java.net.URI;
public class plainUrlParser {
final String KSCContentTypeTag;
final String KSCIcyBrTag;
final String KSCIcyGenreTag;
final String KSCIcyMetaintTag;
final String KSCIcyNameTag;
final String KSCMimeTypeAudioAac;
final String KSCMimeTypeAudioAacp;
final String KSCMimeTypeAudioMP4;
final String KSCMimeTypeAudioMpeg;
final String KSCMimeType_M3U;
final String KSCMimeType_M3U_1;
final String KSCMimeType_PLS_1;
final String KSCMimeType_PLS_2;
final String KSCOKHeader;
final String KSCOKHeader_200;
final String KSCOKHeader_Http;
final String KSCOKHeader_Http_1;
final String KSCOKHeader_Http_Redirect;
final String KSCOKHeader_Http_Redirect_1;
final String KSCOKHeader_Http_movedPerment;
final String KSCOKHeader_Http_movedPerment_1;
final String KSCRdirectLocationTag;
final int SOCKET_TIMEOUT;
String browser_local_url_Bitrate;
String browser_local_url_Gener;
String browser_local_url_Name;
int c;
boolean change;
String channel_Name;
InputStream in;
int ok_Count;
OutputStream out;
int port = 0;
Socket requestSocket;
StringBuffer sb;
String str;
String url_Extension;
int url_Redirect;
String url_connect = "";
public plainUrlParser() {
StringBuffer stringBuffer;
this.sb = stringBuffer = new StringBuffer();
this.c = 0;
this.KSCOKHeader = "ICY 200 OK";
this.KSCOKHeader_200 = "200 OK";
this.KSCOKHeader_Http = "HTTP/1.0 200 OK";
this.KSCOKHeader_Http_1 = "HTTP/1.1 200 OK";
this.KSCContentTypeTag = "content-type";
this.KSCMimeTypeAudioMpeg = "audio/mpeg";
this.KSCMimeTypeAudioAacp = "audio/aacp";
this.KSCMimeTypeAudioAac = "audio/aac";
this.KSCMimeTypeAudioMP4 = "audio/mp4";
this.KSCIcyMetaintTag = "icy-metaint";
this.KSCIcyNameTag = "icy-name";
this.KSCIcyGenreTag = "icy-genre";
this.KSCIcyBrTag = "icy-br";
this.KSCMimeType_PLS_1 = "audio/x-scpls";
this.KSCMimeType_PLS_2 = "audio/scpls";
this.KSCMimeType_M3U = "audio/playlist";
this.KSCMimeType_M3U_1 = "audio/x-mpegurl";
this.KSCOKHeader_Http_Redirect = "HTTP/1.0 302";
this.KSCOKHeader_Http_Redirect_1 = "HTTP/1.1 302";
this.KSCOKHeader_Http_movedPerment = "HTTP/1.0 301";
this.KSCOKHeader_Http_movedPerment_1 = "HTTP/1.1 301";
this.KSCRdirectLocationTag = "Location";
this.ok_Count = 0;
this.url_Redirect = 0;
this.SOCKET_TIMEOUT = 10000;
this.browser_local_url_Name = "";
this.browser_local_url_Gener = "";
this.browser_local_url_Bitrate = "";
this.change = false;
this.channel_Name = "";
}
/*
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public boolean ParseUrls(String string) {
boolean bl = false;
if (string == null) return bl;
String string2 = "window.open";
int n = string.contains(string2);
if (n != 0) return bl;
String string3 = "javascript:void";
n = string.contains(string3);
if (n != 0) return bl;
String string4 = "";
n = string.equals(string4);
if (n != 0) {
return bl;
}
String string5 = "Uri";
MyDebug.i((String)string5, (String)string);
ProperChannel properChannel = new ProperChannel(this);
try {
int n2;
void var3_11;
String string6;
String string7;
String string8;
URI uRI = new URI(string);
if (uRI == null) return bl;
properChannel.IpUri = string7 = uRI.getHost();
properChannel.KextStr = string8 = uRI.getPath();
properChannel.QueryStr = string6 = uRI.getQuery();
n = uRI.getPort();
if (n == (n2 = -1)) {
String string9 = "80";
} else {
StringBuilder stringBuilder = new StringBuilder();
n2 = uRI.getPort();
StringBuilder stringBuilder2 = stringBuilder.append(n2);
String string10 = stringBuilder2.toString();
}
properChannel.Port = var3_11;
}
catch (Exception exception) {
MyDebug.e((Exception)exception);
return bl;
}
properChannel.publish();
return true;
}
public String PrepareConnectCMD() {
String string;
boolean bl;
String string2 = "/";
CharSequence charSequence = this.url_Extension;
if (charSequence != null && (bl = (charSequence = this.url_Extension).startsWith(string = "/"))) {
string2 = "";
}
string = String.valueOf(string2);
super(string);
string = this.url_Extension;
string2 = charSequence.append(string).toString();
super("GET ");
String string3 = charSequence.append(string2).append(" HTTP/1.0\r\n").toString();
string = String.valueOf(string3);
super(string);
string3 = charSequence.append("User-Agent:LeadappsAndroidRadio/2.0\r\n").append("Accept:*/*\r\n").toString();
string = String.valueOf(string3);
super(string);
return charSequence.append("icy-metadata:1\r\n").append("\r\n\r\n").toString();
}
/*
* Enabled aggressive block sorting
*/
public String parsr_url(String string) {
String string2 = null;
if (string == null) return string2;
String string3 = "window.open";
int n = string.contains(string3);
if (n != 0) return string2;
string3 = "javascript:void";
n = string.contains(string3);
if (n != 0) {
return string2;
}
n = this.ParseUrls(string);
if (n == 0) return string2;
string2 = null;
parsingError.RedirectUrl_founded = "";
parsingError.Content_Type_IN_PLAIN_URL = string3 = "";
this.plain_url_parser();
n = this.ok_Count;
int n2 = 2;
if (n == n2) {
string2 = "SHOUTCAST";
}
if ((n = this.url_Redirect) >= (n2 = 1)) {
string2 = "URL_REDIRECT";
}
this.ok_Count = 0;
this.url_Redirect = 0;
return string2;
}
/*
* Exception decompiling
*/
public void plain_url_parser() {
// This method has failed to decompile. When submitting a bug report, please provide this stack trace, and (if you hold appropriate legal rights) the relevant class file.
// org.benf.cfr.reader.util.ConfusedCFRException: Tried to end blocks [0[TRYBLOCK]], but top level block is 3[TRYBLOCK]
// org.benf.cfr.reader.bytecode.analysis.opgraph.Op04StructuredStatement.processEndingBlocks(Op04StructuredStatement.java:418)
// org.benf.cfr.reader.bytecode.analysis.opgraph.Op04StructuredStatement.buildNestedBlocks(Op04StructuredStatement.java:470)
// org.benf.cfr.reader.bytecode.analysis.opgraph.Op03SimpleStatement.createInitialStructuredBlock(Op03SimpleStatement.java:2880)
// org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysisInner(CodeAnalyser.java:816)
// org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysisOrWrapFail(CodeAnalyser.java:196)
// org.benf.cfr.reader.bytecode.CodeAnalyser.getAnalysis(CodeAnalyser.java:141)
// org.benf.cfr.reader.entities.attributes.AttributeCode.analyse(AttributeCode.java:95)
// org.benf.cfr.reader.entities.Method.analyse(Method.java:370)
// org.benf.cfr.reader.entities.ClassFile.analyseMid(ClassFile.java:852)
// org.benf.cfr.reader.entities.ClassFile.analyseTop(ClassFile.java:753)
// org.benf.cfr.reader.Main.doClass(Main.java:46)
// org.benf.cfr.reader.Main.main(Main.java:190)
// ReviewPreparator.unZipIt(ReviewPreparator.java:54)
// PrepareAndSendToReview$.$anonfun$prepareAndSendToReview$4(PrepareAndSendToReview.scala:37)
// scala.collection.TraversableLike.$anonfun$map$1(TraversableLike.scala:234)
// scala.collection.immutable.HashSet$HashSet1.foreach(HashSet.scala:320)
// scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:976)
// scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:976)
// scala.collection.immutable.HashSet$HashTrieSet.foreach(HashSet.scala:976)
// scala.collection.TraversableLike.map(TraversableLike.scala:234)
// scala.collection.TraversableLike.map$(TraversableLike.scala:227)
// scala.collection.AbstractSet.scala$collection$SetLike$$super$map(Set.scala:47)
// scala.collection.SetLike.map(SetLike.scala:101)
// scala.collection.SetLike.map$(SetLike.scala:101)
// scala.collection.AbstractSet.map(Set.scala:47)
// PrepareAndSendToReview$.prepareAndSendToReview(PrepareAndSendToReview.scala:35)
// PrepareAndSendToReview$.main(PrepareAndSendToReview.scala:12)
// PrepareAndSendToReview.main(PrepareAndSendToReview.scala)
throw new IllegalStateException("Decompilation failed");
}
}
|