手机管家 v6.0.0版本的 MD5 值为:bf0bca2cb03f766137fe9ecf7383a634
以下内容为反编译后的 j.java 源代码,内容仅作参考
package oicq.wlogin_sdk.request;
import com.tencent.kingkong.database.SQLiteDatabase;
import java.io.InputStream;
import java.io.OutputStream;
import java.lang.reflect.Array;
import java.net.HttpURLConnection;
import java.net.InetSocketAddress;
import java.net.Socket;
import java.net.URL;
import java.util.Random;
import oicq.wlogin_sdk.tools.ErrMsg;
import oicq.wlogin_sdk.tools.c;
import oicq.wlogin_sdk.tools.util;
import tcs.byb;
import tcs.byf;
import tcs.byg;
import tcs.byh;
import tcs.byi;
import tcs.byj;
import tcs.byl;
import tcs.byn;
import tcs.byo;
import tcs.byp;
import tcs.byq;
import tcs.byr;
import tcs.byt;
import tcs.byu;
import tcs.byw;
import tcs.byx;
import tcs.byy;
import tcs.byz;
import tcs.bza;
import tcs.bzb;
import tcs.bzc;
import tcs.bze;
import tcs.bzg;
import tcs.bzh;
import tcs.bzi;
import tcs.bzj;
import tcs.bzk;
import tcs.bzl;
import tcs.bzo;
import tcs.bzq;
import tcs.bzr;
import tcs.bzu;
import tcs.bzv;
import tcs.bzy;
import tcs.bzz;
import tcs.caa;
import tcs.cac;
import tcs.cad;
import tcs.cae;
import tcs.cag;
import tcs.cah;
import tcs.caj;
import tcs.cak;
import tcs.cal;
import tcs.cam;
import tcs.cao;
import tcs.cap;
import tcs.cat;
import tcs.cau;
import tcs.cax;
public class j {
static String[] gyg = {"183.60.18.138", "112.90.85.191", "112.90.85.193", "183.60.18.150", "120.196.212.233", "120.204.200.34", "27.115.124.244"};
static String[] gyh = {"112.90.141.41", "112.90.141.48", "113.108.11.157", "113.108.11.159", "120.196.212.232"};
static int gyj = 0;
static String gyk = SQLiteDatabase.KeyEmpty;
static String gyl = SQLiteDatabase.KeyEmpty;
public s gxO;
byte gyf;
int guB = 4096;
int guC = 0;
int gxP = 27;
int gxQ = 0;
public int gxR = 15;
protected int gxS = 0;
protected byte[] guE = new byte[this.guB];
protected int gxT = 8001;
protected int gxU = 0;
protected int gxV = 3;
protected int gxW = 0;
protected int gxX = 0;
protected int gxY = 2;
protected int gxZ = 0;
protected int gya = 0;
InetSocketAddress gyb = null;
int gyc = 0;
byte[] gyd = new byte[6144];
protected int gtL = 0;
protected int gtM = 0;
protected String gye = SQLiteDatabase.KeyEmpty;
int gyi = 0;
public String hX(boolean z) {
return !z ? gyg[((int) (Math.random() * 2.147483647E9d)) % gyg.length] : gyh[((int) (Math.random() * 2.147483647E9d)) % gyh.length];
}
public static void am(int i, String str) {
gyj = i;
gyk = str;
}
public void a(int i, int i2, int i3, long j, int i4, int i5, int i6, int i7, int i8) {
int i9 = this.gxU + 1;
this.gxU = i9;
this.guC = 0;
util.int8_to_buf(this.guE, this.guC, 2);
this.guC++;
util.int16_to_buf(this.guE, this.guC, this.gxP + 2 + i8);
this.guC += 2;
util.int16_to_buf(this.guE, this.guC, i);
this.guC += 2;
util.int16_to_buf(this.guE, this.guC, i2);
this.guC += 2;
util.int16_to_buf(this.guE, this.guC, i9);
this.guC += 2;
util.int32_to_buf(this.guE, this.guC, (int) j);
this.guC += 4;
util.int8_to_buf(this.guE, this.guC, 3);
this.guC++;
util.int8_to_buf(this.guE, this.guC, 7);
this.guC++;
util.int8_to_buf(this.guE, this.guC, i4);
this.guC++;
util.int32_to_buf(this.guE, this.guC, i5);
this.guC += 4;
util.int32_to_buf(this.guE, this.guC, i6);
this.guC += 4;
util.int32_to_buf(this.guE, this.guC, i7);
this.guC += 4;
}
public void aMS() {
util.int8_to_buf(this.guE, this.guC, 3);
this.guC++;
}
public void l(byte[] bArr, int i) {
if (this.guC + i + 1 > this.guB) {
this.guB = this.guC + i + 1 + 128;
byte[] bArr2 = new byte[this.guB];
System.arraycopy(this.guE, 0, bArr2, 0, this.guC);
this.guE = bArr2;
}
System.arraycopy(bArr, 0, this.guE, this.guC, i);
this.guC += i;
}
public void a(int i, int i2, int i3, long j, int i4, int i5, int i6, int i7, byte[] bArr, int i8) {
a(i, i2, i3, j, i4, i5, i6, i7, i8);
l(bArr, i8);
aMS();
}
public void a(int i, int i2, int i3, long j, int i4, int i5, int i6, int i7, byte[] bArr) {
a(i, i2, i3, j, i4, i5, i6, i7, bArr, bArr.length);
}
public int aMT() {
int c;
if (this.guC <= this.gxR + 2) {
return util.E_PK_LEN;
}
this.gxS = (r0 - this.gxR) - 2;
if (this.gxO.gyv == 0) {
c = c(this.guE, this.gxR + 1, this.gxS, this.gxO.gyw);
if (c < 0) {
util.LOGI("use ecdh decrypt_body failed", s._context, SQLiteDatabase.KeyEmpty);
c = c(this.guE, this.gxR + 1, this.gxS, this.gxO.gyo);
if (c < 0) {
util.LOGI("use kc decrypt_body failed", s._context, SQLiteDatabase.KeyEmpty);
}
}
} else {
c = c(this.guE, this.gxR + 1, this.gxS, this.gxO.gyo);
if (c < 0) {
util.LOGI("use kc decrypt_body failed", s._context, SQLiteDatabase.KeyEmpty);
}
}
if (c >= 0) {
return e(this.guE, this.gxR + 1, this.gxS);
}
return c;
}
public void o(byte[] bArr, int i) {
if (i > this.guB) {
this.guB = i + 128;
this.guE = new byte[this.guB];
}
this.guC = i;
System.arraycopy(bArr, 0, this.guE, 0, i);
}
public byte[] aMu() {
byte[] bArr = new byte[this.guC];
System.arraycopy(this.guE, 0, bArr, 0, this.guC);
return bArr;
}
public int c(byte[] bArr, int i, int i2, byte[] bArr2) {
byte[] e = oicq.wlogin_sdk.tools.f.e(bArr, i, i2, bArr2);
if (e == null) {
return util.E_DECRYPT;
}
this.gxS = e.length;
if (e.length + this.gxR + 2 > this.guB) {
this.guB = e.length + this.gxR + 2;
byte[] bArr3 = new byte[this.guB];
System.arraycopy(this.guE, 0, bArr3, 0, this.guC);
this.guE = bArr3;
}
this.guC = 0;
System.arraycopy(e, 0, this.guE, i, e.length);
this.guC = e.length + this.gxR + 2 + this.guC;
return 0;
}
byte[] a(byte[] bArr, byte[] bArr2, byte[] bArr3, byte[] bArr4) {
if (bArr == null || bArr2 == null || bArr3 == null || bArr4 == null) {
return new byte[0];
}
byte[] f = oicq.wlogin_sdk.tools.f.f(bArr, 0, bArr.length, bArr4);
byte[] bArr5 = new byte[bArr2.length + 2 + 2 + 2 + bArr3.length + f.length];
util.int8_to_buf(bArr5, 0, 1);
util.int8_to_buf(bArr5, 1, 1);
System.arraycopy(bArr2, 0, bArr5, 2, bArr2.length);
int length = bArr2.length + 2;
util.int16_to_buf(bArr5, length, 258);
int i = length + 2;
util.int16_to_buf(bArr5, i, bArr3.length);
int i2 = i + 2;
System.arraycopy(bArr3, 0, bArr5, i2, bArr3.length);
System.arraycopy(f, 0, bArr5, i2 + bArr3.length, f.length);
util.LOGD("req body:" + util.buf_to_string(bArr5));
return bArr5;
}
byte[] g(byte[] bArr, byte[] bArr2) {
if (bArr == null || bArr2 == null) {
return new byte[0];
}
byte[] f = oicq.wlogin_sdk.tools.f.f(bArr, 0, bArr.length, bArr2);
byte[] bArr3 = new byte[bArr2.length + 2 + 2 + 2 + f.length];
util.int8_to_buf(bArr3, 0, 1);
util.int8_to_buf(bArr3, 1, 2);
System.arraycopy(bArr2, 0, bArr3, 2, bArr2.length);
int length = bArr2.length + 2;
util.int16_to_buf(bArr3, length, 258);
int i = length + 2;
util.int16_to_buf(bArr3, i, 0);
System.arraycopy(f, 0, bArr3, i + 2, f.length);
util.LOGD("req body:" + util.buf_to_string(bArr3));
return bArr3;
}
public byte[] c(byte[] bArr, int i, int i2) {
byte[] bArr2 = new byte[bArr.length + 4];
util.int16_to_buf(bArr2, 0, i);
util.int16_to_buf(bArr2, 2, i2);
System.arraycopy(bArr, 0, bArr2, 4, bArr.length);
return this.gxO.gyv == 0 ? a(bArr2, this.gxO.gyo, this.gxO._pub_key, this.gxO.gyw) : g(bArr2, this.gxO.gyo);
}
public byte[] al(byte[] bArr) {
return this.gxO.gyv == 0 ? a(bArr, this.gxO.gyo, this.gxO._pub_key, this.gxO.gyw) : g(bArr, this.gxO.gyo);
}
public Socket aMU() {
if (this.gxO.gyZ != null) {
util.LOGD("_sk", "_sk" + this.gxO.gyZ.toString());
} else {
util.LOGD("_sk", "_sknull");
}
return this.gxO.gyZ;
}
public void a(Socket socket) {
this.gxO.gyZ = socket;
}
public String hY(boolean z) {
String[] strArr = new String[2];
if (z) {
strArr[0] = "wlogin.qq.com";
strArr[1] = "wlogin1.qq.com";
} else {
strArr[0] = "wtlogin.qq.com";
strArr[1] = "wtlogin1.qq.com";
}
return strArr[Math.abs(new Random().nextInt() % strArr.length)];
}
public int hZ(boolean z) {
if (z) {
}
return 443;
}
public String Y(int i, boolean z) {
String str = SQLiteDatabase.KeyEmpty;
int i2 = i / 2;
if (gyj != 0 && gyk != null && gyk.length() > 0) {
str = gyk;
} else if (i2 < 1) {
if (z) {
if (s.gyH == 1) {
str = new String(util.get_wap_server_host1(s._context));
} else if (s.gyH == 2) {
str = new String(util.get_wap_server_host2(s._context));
}
} else if (s.gyH == 1) {
str = new String(util.get_server_host1(s._context));
} else if (s.gyH == 2) {
str = new String(util.get_server_host2(s._context));
}
if (str == null || str.length() <= 0) {
str = hY(z);
}
} else if (i2 < 2) {
str = hY(z);
} else {
str = hX(z);
}
gyl = str;
util.LOGD("resolve_server_addr OK", "host:" + str + " tryno:" + i2);
return str;
}
public int a(String str, boolean z, WUserSigInfo wUserSigInfo) {
int aMV;
if (this.gxO.aNa()) {
aMV = b(str, z, wUserSigInfo);
} else {
aMV = aMV();
}
if (aMV == -1000) {
ErrMsg errMsg = new ErrMsg();
errMsg.setMessage(oicq.wlogin_sdk.tools.c.a(c.b.MSG_4));
b(errMsg);
}
return aMV;
}
public int b(String str, boolean z, WUserSigInfo wUserSigInfo) {
Exception exc;
Object[] objArr;
?? r1;
util.LOGI(String.valueOf(getClass().getName()) + ":snd_rcv_req_msf ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
int i = this.gxO.gyu;
byte[] aMu = aMu();
long currentTimeMillis = System.currentTimeMillis();
try {
util.LOGI("WtloginMsfListener uin:" + str + " service_cmd:" + this.gye + " timeout:" + i + " flag:" + z, s._context, new StringBuilder().append(this.gxO._uin).toString());
c cVar = new c(str, this.gye, aMu, i, z, wUserSigInfo);
Thread thread = new Thread(cVar);
thread.start();
thread.join(i);
r1 = cVar.aMR();
try {
if (r1 == 0) {
util.LOGI("recv data from server failed, ret=" + cVar.xE(), s._context, new StringBuilder().append(this.gxO._uin).toString());
r1 = -1000;
objArr = r1;
} else {
o(r1, r1.length);
r1 = 0;
objArr = r1;
}
} catch (Exception e) {
objArr = r1;
exc = e;
util.printException(exc, s._context, new StringBuilder().append(this.gxO._uin).toString());
r1 = -1000;
if (this.gtL != 2066) {
}
util.LOGI(String.valueOf(getClass().getName()) + ":snd_rcv_req_msf ret=" + r1, s._context, new StringBuilder().append(this.gxO._uin).toString());
return r1;
}
} catch (Exception e2) {
exc = e2;
objArr = null;
}
if (this.gtL != 2066) {
byb bybVar = new byb();
bybVar.gtL = this.gtL;
bybVar.gvV = this.gtM;
bybVar.gvP = r1;
bybVar.gvL = (int) (System.currentTimeMillis() - currentTimeMillis);
bybVar.gvW = 0;
bybVar.gvX = SQLiteDatabase.KeyEmpty;
bybVar.gvY = SQLiteDatabase.KeyEmpty;
bybVar.gvZ = 0;
bybVar.gwa = 0;
bybVar.gwb = 0;
bybVar.gwc = SQLiteDatabase.KeyEmpty;
if (r1 == 0) {
bybVar.gvT = aMu.length;
bybVar.gvS = objArr.length;
} else {
bybVar.gvT = 0;
bybVar.gvS = 0;
}
bybVar.gwd = 3;
s.gzc.a(bybVar);
}
util.LOGI(String.valueOf(getClass().getName()) + ":snd_rcv_req_msf ret=" + r1, s._context, new StringBuilder().append(this.gxO._uin).toString());
return r1;
}
public int an(byte[] bArr) {
return util.buf_to_int16(bArr, 1);
}
public int aMV() {
long j;
int i;
boolean z;
int i2;
boolean z2;
int i3;
boolean z3;
URL url;
InputStream inputStream;
Socket socket;
boolean z4;
int i4;
util.LOGI(String.valueOf(getClass().getName()) + ":snd_rcv_req_tcp ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
byte[] aMu = aMu();
int i5 = 0;
long j2 = 0;
int i6 = 0;
int i7 = 0;
int i8 = 0;
boolean z5 = false;
Socket aMU = aMU();
boolean z6 = false;
while (true) {
if (i8 >= 6) {
j = j2;
i = i5;
z = z5;
i2 = i6;
z2 = z6;
break;
}
if (i8 != 0) {
util.chg_retry_type(s._context);
}
boolean is_wap_retry = util.is_wap_retry(s._context);
this.gyb = null;
if (i8 != 0 && this.gtL != 2066) {
byb bybVar = new byb();
bybVar.gtL = this.gtL;
bybVar.gvV = this.gtM;
bybVar.gvP = i7;
bybVar.gvL = (int) (System.currentTimeMillis() - j2);
bybVar.gvW = i8;
bybVar.gvX = gyl;
if (bybVar.gvX == null) {
bybVar.gvX = SQLiteDatabase.KeyEmpty;
}
if (this.gyb == null) {
bybVar.gvY = SQLiteDatabase.KeyEmpty;
} else {
bybVar.gvY = this.gyb.getAddress().getHostAddress();
}
bybVar.gvZ = hZ(is_wap_retry);
bybVar.gwa = i6;
bybVar.gwb = s.gyH;
bybVar.gwc = SQLiteDatabase.KeyEmpty;
bybVar.gvT = 0;
bybVar.gvS = 0;
if (is_wap_retry) {
if (z5) {
bybVar.gwd = 2;
} else {
bybVar.gwd = 1;
}
} else {
bybVar.gwd = 0;
}
s.gzc.a(bybVar);
}
j2 = System.currentTimeMillis();
if (is_wap_retry) {
util.LOGI("try http connect " + i8 + " ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
String Y = Y(i8, is_wap_retry);
String str = null;
int i9 = -1;
try {
z3 = util.is_wap_proxy_retry(s._context);
if (z3) {
try {
String str2 = util.get_proxy_ip();
int i10 = util.get_proxy_port();
if (str2 == null || str2.length() <= 0 || i10 == -1) {
util.LOGI("proxy_ip=" + str2 + ",proxy_port=" + i10 + ",set is_wap_proxy_retry=false", s._context, new StringBuilder().append(this.gxO._uin).toString());
str = str2;
i9 = i10;
z5 = false;
} else {
str = str2;
i9 = i10;
z5 = z3;
}
} catch (Exception e) {
i7 = -1000;
i8++;
z5 = z3;
z6 = is_wap_retry;
}
} else {
z5 = z3;
}
if (z5) {
url = new URL("http://" + str + ":" + i9 + "/cgi-bin/wlogin_proxy_login");
} else {
url = new URL("http://" + Y + "/cgi-bin/wlogin_proxy_login");
}
util.LOGI("try http proxy=" + z5 + " connect to " + url, s._context, new StringBuilder().append(this.gxO._uin).toString());
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("POST");
if (z5) {
httpURLConnection.setRequestProperty("X-Online-Host", Y);
}
httpURLConnection.setRequestProperty("Content-Type", "application/octet-stream");
httpURLConnection.setRequestProperty("Content-Disposition", "attachment; filename=micromsgresp.dat");
httpURLConnection.setRequestProperty("Content-Length", new Integer(aMu.length).toString());
httpURLConnection.setConnectTimeout(this.gxO.gyu);
httpURLConnection.setReadTimeout(this.gxO.gyu);
httpURLConnection.setDoOutput(true);
httpURLConnection.setDoInput(true);
util.LOGI("http request connect ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
if (!h.a(httpURLConnection, this.gxO.gyu)) {
util.LOGI("http request connect failed", s._context, new StringBuilder().append(this.gxO._uin).toString());
i8++;
i7 = -1000;
z6 = is_wap_retry;
} else {
util.LOGI("http request write ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
OutputStream outputStream = httpURLConnection.getOutputStream();
outputStream.write(aMu, 0, aMu.length);
outputStream.flush();
int responseCode = httpURLConnection.getResponseCode();
util.LOGI("http request response code=" + responseCode, s._context, new StringBuilder().append(this.gxO._uin).toString());
if (200 != responseCode) {
util.LOGD("use http ret=" + responseCode + " msg=" + httpURLConnection.getResponseMessage());
i8++;
i7 = -1000;
z6 = is_wap_retry;
} else {
inputStream = httpURLConnection.getInputStream();
socket = aMU;
z4 = z5;
}
}
} catch (Exception e2) {
z3 = z5;
}
} else {
util.LOGI("try bin connect " + i8 + " ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
util.LOGD("use bin connect type");
if (aMU == null) {
String str3 = SQLiteDatabase.KeyEmpty;
i6 = 1;
if (this.gyb == null) {
str3 = Y(i8, is_wap_retry);
util.LOGI("DNS for " + str3 + " request ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
try {
this.gyc = hZ(is_wap_retry);
this.gyb = a.b(str3, this.gyc, this.gxO.gyu);
} catch (Exception e3) {
}
}
if (this.gyb == null) {
util.LOGI("DNS for " + str3 + " request failed", s._context, new StringBuilder().append(this.gxO._uin).toString());
i8++;
this.gyb = null;
a((Socket) null);
i7 = -1007;
aMU = null;
z6 = is_wap_retry;
} else {
util.LOGI("DNS for " + str3 + "(" + this.gyb.toString() + ") request OK", s._context, new StringBuilder().append(this.gxO._uin).toString());
}
}
if (aMU == null) {
try {
util.LOGI("tcp connect to " + this.gyb + " request ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
socket = new Socket();
a(socket);
socket.connect(this.gyb, this.gxO.gyu);
socket.setSoTimeout(this.gxO.gyu);
socket.setReceiveBufferSize(this.gyd.length);
util.LOGI("tcp connect to " + this.gyb + " OK", s._context, new StringBuilder().append(this.gxO._uin).toString());
} catch (Exception e4) {
i8++;
this.gyb = null;
a((Socket) null);
i7 = -1000;
aMU = null;
z6 = is_wap_retry;
}
} else {
socket = aMU;
}
util.LOGI("tcp request write ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
OutputStream outputStream2 = socket.getOutputStream();
outputStream2.write(aMu, 0, aMu.length);
outputStream2.flush();
inputStream = socket.getInputStream();
z4 = z5;
}
util.LOGI("recv data from server ...", s._context, new StringBuilder().append(this.gxO._uin).toString());
int i11 = 0;
int i12 = 0;
while (i12 < this.gxR + 1 && (i11 = inputStream.read(this.gyd, i12, (this.gxR + 1) - i12)) >= 0) {
i12 += i11;
}
if (i11 < 0) {
i7 = -1000;
i4 = i8 + 1;
if (!is_wap_retry) {
try {
socket.close();
this.gyb = null;
socket = null;
a((Socket) null);
i8 = i4;
z5 = z4;
aMU = null;
z6 = is_wap_retry;
} catch (Exception e5) {
int i13 = i5;
int i14 = i4 + 1;
if (is_wap_retry) {
i7 = -1000;
i5 = i13;
i8 = i14;
z5 = z4;
aMU = socket;
z6 = is_wap_retry;
} else {
try {
if (socket.isConnected()) {
socket.close();
}
} catch (Exception e6) {
}
this.gyb = null;
a((Socket) null);
i7 = -1000;
i5 = i13;
i8 = i14;
z5 = z4;
aMU = null;
z6 = is_wap_retry;
}
}
}
} else {
i5 = an(this.gyd);
if (i5 <= this.gxR + 1) {
i7 = -1000;
i4 = i8 + 1;
if (!is_wap_retry) {
socket.close();
this.gyb = null;
a((Socket) null);
i8 = i4;
z5 = z4;
aMU = null;
z6 = is_wap_retry;
}
} else if (i5 >= this.gyd.length) {
i7 = -1000;
i4 = i8 + 1;
if (!is_wap_retry) {
socket.close();
this.gyb = null;
a((Socket) null);
i8 = i4;
z5 = z4;
aMU = null;
z6 = is_wap_retry;
}
} else {
int i15 = this.gxR + 1;
int i16 = i5 - i15;
while (i16 > 0) {
i11 = inputStream.read(this.gyd, i15, i16);
if (i11 == -1) {
break;
}
i15 += i11;
i16 -= i11;
}
if (i11 != -1) {
i2 = i6;
z2 = is_wap_retry;
boolean z7 = z4;
j = j2;
i = i5;
z = z7;
break;
}
i7 = -1000;
i4 = i8 + 1;
if (!is_wap_retry) {
socket.close();
this.gyb = null;
a((Socket) null);
i8 = i4;
z5 = z4;
aMU = null;
z6 = is_wap_retry;
}
}
}
i8 = i4;
z5 = z4;
aMU = socket;
z6 = is_wap_retry;
}
if (i8 >= 6) {
i3 = -1000;
} else {
i3 = 0;
}
if (i3 == 0) {
o(this.gyd, i);
}
if (i3 == 0 && this.gtL != 2066) {
byb bybVar2 = new byb();
bybVar2.gtL = this.gtL;
bybVar2.gvV = this.gtM;
bybVar2.gvP = i3;
bybVar2.gvL = (int) (System.currentTimeMillis() - j);
bybVar2.gvW = i8;
bybVar2.gvX = gyl;
if (bybVar2.gvX == null) {
bybVar2.gvX = SQLiteDatabase.KeyEmpty;
}
if (this.gyb == null) {
bybVar2.gvY = SQLiteDatabase.KeyEmpty;
} else {
bybVar2.gvY = this.gyb.getAddress().getHostAddress();
}
bybVar2.gvZ = this.gyc;
bybVar2.gwa = i2;
bybVar2.gwb = s.gyH;
bybVar2.gwc = SQLiteDatabase.KeyEmpty;
bybVar2.gvT = aMu.length;
bybVar2.gvS = i;
if (z2) {
if (z) {
bybVar2.gwd = 2;
} else {
bybVar2.gwd = 1;
}
} else {
bybVar2.gwd = 0;
}
s.gzc.a(bybVar2);
}
util.LOGI(String.valueOf(getClass().getName()) + ":snd_rcv_req_tcp ret=" + i3, s._context, new StringBuilder().append(this.gxO._uin).toString());
return i3;
}
public int p(byte[] bArr, int i) {
this.gyf = bArr[i];
return bArr[i] & 255;
}
public String toString() {
String str = SQLiteDatabase.KeyEmpty;
for (int i = 0; i < this.guC; i++) {
str = String.valueOf(String.valueOf(str) + Integer.toHexString((this.guE[i] >> 4) & 15)) + Integer.toHexString(this.guE[i] & 15);
}
return str;
}
public void d(byte[] bArr, int i, int i2) {
bzr bzrVar = new bzr();
int g = bzrVar.g(bArr, i, i2);
f dZ = s.dZ(this.gxO._seqence);
if (g >= 0) {
dZ.gxF.w(new String(bzrVar.aND()));
dZ.gxF.setMessage(new String(bzrVar.aNE()));
dZ.gxF.setType(bzrVar.aNe());
dZ.gxF.sL(new String(bzrVar.aNF()));
}
}
public void b(ErrMsg errMsg) {
f dZ = s.dZ(this.gxO._seqence);
dZ.gxF.aNZ();
if (errMsg != null) {
try {
dZ.gxF = (ErrMsg) errMsg.clone();
} catch (CloneNotSupportedException e) {
dZ.gxF.aNZ();
}
}
}
public void a(bzu bzuVar) {
try {
ErrMsg errMsg = new ErrMsg();
if (bzuVar != null) {
errMsg.setType(bzuVar.aNe());
errMsg.w(new String(bzuVar.aND()));
errMsg.setMessage(new String(bzuVar.aNG()));
errMsg.sL(new String(bzuVar.aNH()));
new e(s._context, errMsg).start();
}
} catch (Exception e) {
}
}
public static byte[] h(byte[] bArr, byte[] bArr2) {
byte[] bArr3 = new byte[bArr.length + bArr2.length];
System.arraycopy(bArr, 0, bArr3, 0, bArr.length);
System.arraycopy(bArr2, 0, bArr3, bArr.length, bArr2.length);
return bArr3;
}
public byte[] ao(byte[] bArr) {
byte[] e;
if (s.gyF == null || s.gyF.length <= 0) {
e = oicq.wlogin_sdk.tools.f.e(bArr, 0, bArr.length, "%4;7t>;28<fc.5*6".getBytes());
} else {
byte[] bArr2 = new byte[16];
if (s.gyF.length > bArr2.length) {
System.arraycopy(s.gyF, 0, bArr2, 0, bArr2.length);
} else {
System.arraycopy(s.gyF, 0, bArr2, 0, s.gyF.length);
for (int length = s.gyF.length; length < bArr2.length; length++) {
bArr2[length] = (byte) (length + 1);
}
}
e = oicq.wlogin_sdk.tools.f.e(bArr, 0, bArr.length, bArr2);
if (e == null || e.length <= 0) {
e = oicq.wlogin_sdk.tools.f.e(bArr, 0, bArr.length, "%4;7t>;28<fc.5*6".getBytes());
}
}
byte[] bArr3 = e == null ? (byte[]) bArr.clone() : e;
if (bArr3 == null || bArr3.length < 16) {
return null;
}
int length2 = bArr3.length - 16;
byte[] bArr4 = new byte[length2];
System.arraycopy(bArr3, 0, bArr4, 0, length2);
byte[] bArr5 = new byte[16];
System.arraycopy(bArr3, length2, bArr5, 0, 16);
s.dZ(this.gxO._seqence).gxG = bArr5;
return bArr4;
}
public int vg(int i) {
s.dZ(this.gxO._seqence).gxE = i;
return i;
}
public int aMW() {
return s.dZ(this.gxO._seqence).gxE;
}
public byte[] a(cad cadVar) {
byj byjVar = new byj();
byp bypVar = new byp();
cae caeVar = new cae();
bzq bzqVar = new bzq();
byte[] aMv = cadVar.aMv();
int length = aMv.length;
if (byjVar.g(aMv, 2, length) < 0 || bypVar.g(aMv, 2, length) < 0 || caeVar.g(aMv, 2, length) < 0) {
return null;
}
byte[] aMu = byjVar.aMu();
byte[] aMu2 = bypVar.aMu();
byte[] aMu3 = caeVar.aMu();
byte[] aw = bzqVar.aw(s.gyE);
byte[] bArr = new byte[aMu.length + 3 + aMu2.length + aMu3.length + aw.length];
bArr[0] = 64;
util.int16_to_buf(bArr, 1, 4);
System.arraycopy(aMu, 0, bArr, 3, aMu.length);
int length2 = aMu.length + 3;
System.arraycopy(aMu2, 0, bArr, length2, aMu2.length);
int length3 = length2 + aMu2.length;
System.arraycopy(aMu3, 0, bArr, length3, aMu3.length);
System.arraycopy(aw, 0, bArr, length3 + aMu3.length, aw.length);
return bArr;
}
void a(int i, byte[] bArr, int i2) {
if (bArr != null && bArr.length > 0) {
if (i == 1) {
if (s.gyH == 1) {
util.set_server_host1(s._context, bArr);
} else if (s.gyH == 2) {
util.set_server_host2(s._context, bArr);
}
} else if (i == 2) {
if (s.gyH == 1) {
util.set_wap_server_host1(s._context, bArr);
} else if (s.gyH == 2) {
util.set_wap_server_host2(s._context, bArr);
}
}
util.LOGI("net type:" + s.gyH + " type:" + i + " host:" + new String(bArr) + " port:" + i2, s._context, new StringBuilder().append(this.gxO._uin).toString());
}
}
public int a(cal calVar) {
byte[] aMv = calVar.aMv();
if (aMv != null && aMv.length > 2) {
int buf_to_int8 = util.buf_to_int8(aMv, 1);
int i = 2;
for (int i2 = 0; i2 < buf_to_int8 && aMv.length >= i + 1; i2++) {
int buf_to_int82 = util.buf_to_int8(aMv, i);
int i3 = i + 1;
if (aMv.length < i3 + 2) {
break;
}
int buf_to_int16 = util.buf_to_int16(aMv, i3);
int i4 = i3 + 2;
if (aMv.length < i4 + buf_to_int16) {
break;
}
byte[] bArr = new byte[buf_to_int16];
System.arraycopy(aMv, i4, bArr, 0, buf_to_int16);
int i5 = i4 + buf_to_int16;
if (aMv.length < i5 + 2) {
break;
}
int buf_to_int162 = util.buf_to_int16(aMv, i5);
i = i5 + 2;
a(buf_to_int82, bArr, buf_to_int162);
}
}
return 0;
}
public int a(bzy bzyVar) {
cal calVar = new cal();
cak cakVar = new cak();
byte[] aMv = bzyVar.aMv();
int length = aMv.length;
if (calVar.g(aMv, 2, length) > 0) {
a(calVar);
}
if (cakVar.g(aMv, 2, length) > 0) {
this.gxO.gyv = 1;
this.gxO.gyx = cakVar.aMv();
util.LOGI("get rollback sig", s._context, SQLiteDatabase.KeyEmpty);
return 0;
}
return 0;
}
public int e(byte[] bArr, int i, int i2) {
int i3;
int g;
int d;
byte[] bArr2;
byte[] bArr3;
long j = 4294967295L;
byh byhVar = new byh();
byi byiVar = new byi();
byt bytVar = new byt();
byw bywVar = new byw();
byq byqVar = new byq();
byr byrVar = new byr();
byn bynVar = new byn();
byu byuVar = new byu();
byg bygVar = new byg();
byx byxVar = new byx();
byf byfVar = new byf();
byo byoVar = new byo();
byy byyVar = new byy();
byz byzVar = new byz();
bzb bzbVar = new bzb();
bzc bzcVar = new bzc();
bzg bzgVar = new bzg();
byl bylVar = new byl();
byj byjVar = new byj();
byp bypVar = new byp();
bze bzeVar = new bze();
bza bzaVar = new bza();
bzl bzlVar = new bzl();
bzh bzhVar = new bzh();
bzu bzuVar = new bzu();
bzv bzvVar = new bzv();
bzo bzoVar = new bzo();
cax caxVar = new cax();
bzz bzzVar = new bzz();
caa caaVar = new caa();
cac cacVar = new cac();
cae caeVar = new cae();
cad cadVar = new cad();
bzy bzyVar = new bzy();
caj cajVar = new caj();
cag cagVar = new cag();
cah cahVar = new cah();
cam camVar = new cam();
cao caoVar = new cao();
cap capVar = new cap();
cat catVar = new cat();
cau cauVar = new cau();
byte[] bArr4 = null;
byte[] bArr5 = null;
byte[] bArr6 = null;
byte[] bArr7 = null;
byte[] bArr8 = null;
byte[] bArr9 = null;
byte[] bArr10 = null;
bzi bziVar = new bzi();
bzj bzjVar = new bzj();
bzk bzkVar = new bzk();
f dZ = s.dZ(this.gxO._seqence);
long j2 = dZ.gxw;
long j3 = dZ.gxx;
if (this.gtL == 2064 && this.gtM == 9) {
i3 = 0;
} else if (this.gtL == 2064 && (this.gtM == 10 || this.gtM == 11)) {
i3 = 1;
} else if (this.gtL == 2064 && this.gtM == 2) {
i3 = 2;
} else if (this.gtL == 2064 && this.gtM == 4) {
i3 = 3;
} else if (this.gtL == 2064 && this.gtM == 13) {
i3 = 4;
} else if (this.gtL == 2064 && this.gtM == 15) {
i3 = 5;
} else if (this.gtL == 2064 && this.gtM == 7) {
i3 = 6;
} else {
return util.E_SYSTEM;
}
if (i2 < 5) {
return util.E_PK_LEN;
}
int p = p(bArr, i + 2);
util.LOGD(getClass().getName(), "get_response_body type=" + p);
int i4 = i + 5;
this.gxO.gyp = null;
switch (p) {
case 0:
if (i3 == 1) {
if (this.gxO.gyn == null) {
return util.E_NO_TGTKEY;
}
if (bzvVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
this.gxO.gyp = bzvVar;
}
if (bzyVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
a(bzyVar);
util.LOGD("parse t161 called");
}
d = bywVar.d(bArr, i4, (this.guC - i4) - 1, this.gxO.gyn);
util.LOGD("decrypt key=", util.buf_to_string(this.gxO.gyn));
} else if (i3 == 2) {
if (aMW() == 3) {
if (bytVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
this.gxO._uin = bytVar.aMP();
this.gxO.a(this.gxO.gvM, Long.valueOf(this.gxO._uin));
}
if (byhVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
dZ.gxH = byhVar;
}
g = 0;
break;
} else {
if (bzvVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
this.gxO.gyp = bzvVar;
}
if (bzyVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
a(bzyVar);
util.LOGD("parse t161 called");
}
d = bywVar.d(bArr, i4, (this.guC - i4) - 1, dZ.gxG);
}
} else if (i3 == 3) {
g = bytVar.g(bArr, i4, this.guC - i4);
if (g >= 0) {
this.gxO._uin = bytVar.aMP();
this.gxO.a(this.gxO.gvM, Long.valueOf(this.gxO._uin));
g = byhVar.g(bArr, i4, this.guC - i4);
if (g >= 0) {
dZ.gxH = byhVar;
g = 0;
break;
}
}
} else {
if (bzvVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
this.gxO.gyp = bzvVar;
}
if (bzyVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
a(bzyVar);
util.LOGD("parse t161 called");
}
d = bywVar.d(bArr, i4, (this.guC - i4) - 1, dZ.gxG);
}
if (d < 0) {
util.LOGD("119 can not decrypt");
g = d;
break;
} else {
byte[] aMv = bywVar.aMv();
int i5 = 2;
int length = aMv.length;
if (bzuVar.g(aMv, 2, length) > 0) {
a(bzuVar);
}
if (bzgVar.g(aMv, 2, length) > 0) {
this.gxO.i(bzgVar.aNs(), bzgVar.aNt());
}
byqVar.g(aMv, 2, length);
byrVar.g(aMv, 2, length);
bynVar.g(aMv, 2, length);
byuVar.g(aMv, 2, length);
int g2 = byxVar.g(aMv, 2, length);
if (g2 >= 0) {
if (bygVar.g(aMv, 2, length) >= 0) {
bArr9 = bygVar.aMv();
}
if (bylVar.g(aMv, 2, length) >= 0) {
util.set_ksid(s._context, bylVar.aMv());
}
if (byfVar.g(aMv, 2, length) >= 0) {
bArr4 = byfVar.aMv();
}
if (byoVar.g(aMv, 2, length) >= 0) {
bArr5 = byoVar.aMv();
}
int g3 = byyVar.g(aMv, 2, length);
util.LOGD("t11c ret=", new Integer(g3).toString());
if (g3 >= 0) {
bArr6 = byyVar.aMv();
}
if (bzbVar.g(aMv, 2, length) >= 0) {
bArr7 = bzbVar.aMv();
}
if (bzcVar.g(aMv, 2, length) >= 0) {
bArr8 = bzcVar.aMv();
}
if (bzeVar.g(aMv, 2, length) < 0) {
bArr2 = null;
} else {
byte[] aNq = bzeVar.aNq();
bArr10 = bzeVar.aNr();
bArr2 = aNq;
}
util.LOGI("tgt len:" + util.buf_len(bynVar.aMv()) + " tgt_key len:" + util.buf_len(byqVar.aMv()) + " st len:" + util.buf_len(byuVar.aMv()) + " st_key len:" + util.buf_len(byrVar.aMv()) + " stwx_web len:" + util.buf_len(bArr9) + " a8 len:" + util.buf_len(bArr4) + " a5 len:" + util.buf_len(bArr5) + " lskey len:" + util.buf_len(bArr6) + " skey len:" + util.buf_len(bArr7) + " sig64 len:" + util.buf_len(bArr8) + " openid len:" + util.buf_len(bArr2) + " openkey len:" + util.buf_len(bArr10), s._context, new StringBuilder().append(this.gxO._uin).toString());
if (cadVar.g(aMv, 2, length) >= 0) {
byte[] a = a(cadVar);
if (a != null && a.length > 0) {
this.gxO.gys = new WFastLoginInfo(a);
util.LOGD("fast data:", util.buf_to_string(a));
} else {
this.gxO.gys = new WFastLoginInfo();
}
}
byte[][] bArr11 = (byte[][]) Array.newInstance((Class<?>) Byte.TYPE, 3, 0);
if (cacVar.g(aMv, 2, length) >= 0) {
bArr11[0] = cacVar.aNK();
bArr11[1] = cacVar.aNL();
bArr11[2] = cacVar.aNM();
util.LOGD("type:" + util.buf_to_string(bArr11[0]) + " format:" + util.buf_to_string(bArr11[1]) + " url:" + new String(bArr11[2]));
}
byte[][] bArr12 = (byte[][]) Array.newInstance((Class<?>) Byte.TYPE, 12, 0);
for (int i6 = 0; i6 < 12; i6++) {
bArr12[i6] = new byte[0];
}
if (bziVar.g(aMv, 2, length) >= 0) {
bArr12[0] = bziVar.aMv();
}
if (bzjVar.g(aMv, 2, length) >= 0) {
bArr12[1] = bzjVar.aMv();
}
if (bzkVar.g(aMv, 2, length) >= 0) {
bArr12[2] = bzkVar.aMv();
}
int g4 = bypVar.g(aMv, 2, length);
if (byjVar.g(aMv, 2, length) >= 0 && g4 >= 0) {
util.LOGD("update A1 from server:", util.buf_to_string(byjVar.aMv()));
util.LOGD("key:", util.buf_to_string(bypVar.aMv()));
bArr12[3] = (byte[]) h(byjVar.aMv(), bypVar.aMv()).clone();
}
if (bzhVar.g(aMv, 2, length) >= 0) {
bArr12[4] = bzhVar.aNu();
bArr3 = bzhVar.aNq();
} else {
bArr3 = bArr2;
}
if (bzoVar.g(aMv, 2, length) >= 0) {
bArr12[5] = bzoVar.aMv();
}
if (caxVar.g(aMv, 2, length) >= 0) {
bArr12[6] = caxVar.aMv();
}
if (bzzVar.g(aMv, 2, length) >= 0) {
bArr12[7] = bzzVar.aMv();
}
if (caeVar.g(aMv, 2, length) >= 0) {
bArr12[8] = caeVar.aMv();
util.LOGD("nopicsig len:" + bArr12[8].length + " data:" + util.buf_to_string(bArr12[8]));
}
if (cajVar.g(aMv, 2, length) >= 0) {
bArr12[9] = cajVar.aMv();
}
if (cagVar.g(aMv, 2, length) >= 0) {
bArr12[10] = cagVar.aMv();
}
if (cahVar.g(aMv, 2, length) >= 0) {
bArr12[11] = cahVar.aMv();
}
util.LOGI("new_st len:" + util.buf_len(bArr12[0]) + " net_st_key len:" + util.buf_len(bArr12[1]) + " vkey len:" + util.buf_len(bArr12[2]) + " encrypt_a1 len:" + util.buf_len(bArr12[3]) + " openid len:" + util.buf_len(bArr3) + " access_token len:" + util.buf_len(bArr12[4]) + " d2 len:" + util.buf_len(bArr12[5]) + " d2_key len:" + util.buf_len(bArr12[6]) + " sid len:" + util.buf_len(bArr12[7]) + " no_pic_sig len:" + util.buf_len(bArr12[8]) + " aq_sig len:" + util.buf_len(bArr12[9]) + " pskey len:" + util.buf_len(bArr12[10]) + " super_key len:" + util.buf_len(bArr12[11]), s._context, new StringBuilder().append(this.gxO._uin).toString());
if (bzaVar.g(aMv, 2, length) >= 0) {
j = 4294967295L & bzaVar.aNp();
}
long[] jArr = new long[7];
int i7 = 2;
long j4 = 2160000;
while (true) {
i7 = bzlVar.g(aMv, i7, length);
if (i7 >= 0) {
long aNv = bzlVar.aNv() != 0 ? bzlVar.aNv() : j4;
if (bzlVar.aNw() == 0) {
jArr[0] = 1641600;
} else {
jArr[0] = bzlVar.aNw();
}
if (bzlVar.aNx() != 0) {
jArr[1] = bzlVar.aNx();
} else {
jArr[1] = 2880;
}
if (bzlVar.aNy() != 0) {
jArr[2] = bzlVar.aNy();
} else {
jArr[2] = 1728000;
}
if (bzlVar.aNz() == 0) {
jArr[3] = 72000;
} else {
jArr[3] = bzlVar.aNz();
}
if (bzlVar.aNA() != 0) {
jArr[4] = bzlVar.aNA();
} else {
jArr[4] = 6000;
}
if (bzlVar.aNB() != 0) {
jArr[5] = bzlVar.aNB();
} else {
jArr[5] = 1728000;
}
if (bzlVar.aNC() == 0) {
jArr[6] = 1728000;
j4 = aNv;
} else {
jArr[6] = bzlVar.aNC();
j4 = aNv;
}
} else {
util.LOGI("appid:" + dZ.gxx + " app_pri:" + j + " login_bitmap:" + this.gxO._login_bitmap + " tk_valid:0 a2_valid:" + j4 + " lskey_valid:" + jArr[0] + " skey_valid:" + jArr[1] + " vkey_valid:" + jArr[2] + " a8_valid:" + jArr[3] + " stweb_valid:" + jArr[4] + " d2_valid:" + jArr[5] + " sid_valid:" + jArr[6], s._context, new StringBuilder().append(this.gxO._uin).toString());
byte[] bArr13 = new byte[0];
byte[] bArr14 = new byte[0];
if (bArr12[3] != null) {
byte[] bArr15 = (byte[]) bArr12[3].clone();
bArr12[3] = new byte[0];
bArr13 = bArr15;
}
if (bArr12[8] != null) {
byte[] bArr16 = (byte[]) bArr12[8].clone();
bArr12[8] = new byte[0];
bArr14 = bArr16;
}
g = this.gxO.a(this.gxO._uin, j2, bArr13, bArr14, j3, j, s.get_cur_time(), s.get_cur_time() + 0, j4 + s.get_cur_time(), byxVar.aNi(), byxVar.aNj(), byxVar.aNk(), byxVar.aNl(), bArr11, bynVar.aMv(), byqVar.aMv(), byuVar.aMv(), byrVar.aMv(), bArr9, bArr5, bArr4, bArr6, bArr7, bArr8, bArr3, bArr10, bArr12, jArr, this.gxO._login_bitmap);
if (g == 0) {
while (true) {
i5 = byzVar.g(aMv, i5, length);
if (i5 >= 0) {
this.gxO.a(this.gxO._uin, byzVar.aNm(), s.get_cur_time(), s.get_cur_time() + 0, byzVar.aNo(), byzVar.aNn());
} else {
g = 0;
break;
}
}
} else {
ErrMsg errMsg = new ErrMsg();
errMsg.setMessage(oicq.wlogin_sdk.tools.c.a(c.b.MSG_2));
b(errMsg);
util.LOGI("put_siginfo fail,ret=" + g, s._context, new StringBuilder().append(this.gxO._uin).toString());
break;
}
}
}
} else {
g = g2;
break;
}
}
break;
case 1:
case 15:
this.gxO.o(this.gxO._uin, j2);
d(bArr, i4, (this.guC - i4) - 1);
g = p;
break;
case 2:
g = byhVar.g(bArr, i4, (this.guC - i4) - 1);
if (g >= 0) {
dZ.gxH = byhVar;
g = byiVar.g(bArr, i4, (this.guC - i4) - 1);
if (g >= 0) {
dZ.gxI = byiVar;
if (caaVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
dZ.gxJ = caaVar;
} else {
dZ.gxJ = new caa();
}
b(null);
g = p;
break;
}
}
break;
case 16:
g = bzgVar.g(bArr, i4, (this.guC - i4) - 1);
if (g >= 0) {
this.gxO.i(bzgVar.aNs(), bzgVar.aNt());
d(bArr, i4, (this.guC - i4) - 1);
g = p;
break;
}
break;
case 160:
g = byhVar.g(bArr, i4, (this.guC - i4) - 1);
if (g >= 0) {
dZ.gxH = byhVar;
g = camVar.g(bArr, i4, (this.guC - i4) - 1);
if (g >= 0) {
dZ.gxK = camVar;
if (caoVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
dZ.gxM.gui = new String(caoVar.aNN());
dZ.gxM.guj = new String(caoVar.aNO());
dZ.gxM.guk = caoVar.aNP();
dZ.gxM.gul = caoVar.aNQ();
dZ.gxM.gum = caoVar.aNR();
}
if (capVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
dZ.gxM.gur = new String(capVar.aNS());
}
if (catVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
dZ.gxM.gun = catVar.aNT();
dZ.gxM.guo = new String(catVar.aNU());
dZ.gxM.gup = catVar.aNV();
dZ.gxM.guq = new String(catVar.aNW());
}
if (cauVar.g(bArr, i4, (this.guC - i4) - 1) >= 0) {
dZ.gxM.gus = new String(cauVar.aMv());
}
d(bArr, i4, (this.guC - i4) - 1);
g = p;
break;
}
}
break;
case 176:
d(bArr, i4, (this.guC - i4) - 1);
this.gxO.sI(this.gxO.gvM);
g = p;
break;
case 180:
g = bzyVar.g(bArr, i4, (this.guC - i4) - 1);
if (g >= 0) {
a(bzyVar);
util.LOGD("0xb4 parse t161 called");
d(bArr, i4, (this.guC - i4) - 1);
g = p;
break;
}
break;
default:
d(bArr, i4, (this.guC - i4) - 1);
g = p;
break;
}
util.LOGI("ret:" + g, s._context, new StringBuilder().append(this.gxO._uin).toString());
if (g == 0) {
b(null);
}
if (g == 10 || g == 161 || g == 162 || g == 164 || g == 165 || g == 166 || g == 154 || (g >= 128 && g <= 143)) {
g = -1000;
}
if (i3 != 2 && i3 != 6) {
vg(i3);
return g;
}
return g;
}
}