导航菜单

页面标题

页面副标题

OVO v3.139.0 - a.java 源代码

正在查看: OVO v3.139.0 应用的 a.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package vkey.android.vos;

import android.util.Base64;
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.InetAddress;
import java.net.Socket;
import java.net.URL;
import java.security.KeyManagementException;
import java.security.KeyStore;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.cert.X509Certificate;
import java.util.HashMap;
import java.util.Map;
import javax.net.ssl.KeyManager;
import javax.net.ssl.KeyManagerFactory;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSocket;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
import o.i.b02;
import o.i.pq0;

public class a {

    private static final int f1889o = 4;
    private static final String p = "V-OS.RestAPI";
    private static final byte[] q = {53, 51, 57, -5, 41, -34, -4, 37, -36, -19, -14, -1, 51, -15, 7, -37, 2, 2, -14, -1, 84, -85, 2, 14, -13, 4, 13, -12, 8, 40, 27, 1, -4, -1, -24, -15, 12, -7, 11, 68, 2, -1, 10, 0, 0, 0, 0, 0, 0, -1, -9, -10, 12, -85, 3, 9, 44, 27, -34, 0, -2, -11, -4, -15, 0, 4, 3, 6, 2, -19, 11, -6, 1, 63, -59, -9, 4, 1, 1, 14, 25, -11, -1, -1, -1, -1, -1, -1, -1, -1, -1, -40, -1, -1, -1, -1, -1, -1, 1, 11, -2, 15, -19, 17, -5, 2, 38, -20, -18, 16, -6, 0, 2, -15, -10, 12, -81, 2, -1, 51, 27, -52, 1, 12, -7, -3, 9, -17, 25, -19, 11, -6, 1, -1, -7, 7, -15, 15, -10, 12, -82, 13, -14, 3, 1, 1, -5, 14, 40, 27, -1, -5, 84, -83, -2, 5, 0, 1, -3, -2, 15, 1, -44, 1, -6, 15, -9, -6, 71, -39, -37, 9, 11, -10, 12, -78, -1, 1, 11, -2, 40, 27, -37, 2, 2, -14, -1, -10, 12, -78, 11, 38, 13, 0, 0, 0, 0, 0, 0, -1, 5, 12, -67, -11, -1, 1, 11, -2, 40, 27, 0, 0, 42, -20, -52, 1, 12, 3, -9, -6, 11, 6, 2, -19, 15, -10, 12, -82, 13, 4, -11, -1, 48, 27, -5, 1, -15, 0, 4, 3, 6, 2, -19, 11, -6, 1, 63, -59, -9, 4, 1, 51, 27, -67, -5, 7, -17, -1, 14, -15, 55, -24, 1, 14, 25, -11, 13, 4, -11, -1, -31, -18, 10, 6, 67, 9, 15};
    private static int r = 56;
    private String a;
    private String b;
    private String c;
    private String d;
    private int e;
    private int f;
    private Map g;
    private String h;
    private volatile String i;
    private volatile int j;
    private byte[] k;
    private String l;
    private Boolean m;
    private InterfaceC0070a n;

    public interface InterfaceC0070a {
        void a(a aVar);
    }

    public static class b implements X509TrustManager {
        public b(String str) {
        }

        public b(String str, String str2, int i) {
        }

        @Override
        public void checkClientTrusted(X509Certificate[] x509CertificateArr, String str) {
        }

        @Override
        public void checkServerTrusted(X509Certificate[] x509CertificateArr, String str) {
        }

        @Override
        public X509Certificate[] getAcceptedIssuers() {
            return new X509Certificate[0];
        }
    }

    public static class c extends SSLSocketFactory {
        private static final byte[] e = {53, 96, 57, 78, 9, 24, 17, 45, 5, 25, 11, 32, -29, 44, 19, 34, 12, 20, 24, 12, 9, 33, -17, 18, 9, 24, 52, -52, 14, 21, 2, 9, 21, 32, 4, 13, 36, 2, -1, 45, 5, 25, 11, 32};
        private static int f = 118;
        private final String a;
        private SSLContext b;
        private SSLSocketFactory c;
        private KeyManager[] d;

        public c() {
            this.a = c.class.getSimpleName();
            this.d = null;
            byte[] bArr = e;
            SSLContext sSLContext = SSLContext.getInstance(a(bArr[6], f & 15, -bArr[38]).intern());
            this.b = sSLContext;
            byte b = bArr[6];
            int i = bArr[9] + 1;
            sSLContext.init(null, new TrustManager[]{new b(a(b, i, i & 47).intern())}, null);
            this.c = this.b.getSocketFactory();
        }

        private static java.lang.String a(int r8, int r9, int r10) {
            throw new UnsupportedOperationException("Method not decompiled: vkey.android.vos.a.c.a(int, int, int):java.lang.String");
        }

        @Override
        public Socket createSocket(String str, int i) {
            try {
                return a(a(str, i));
            } catch (KeyManagementException | NoSuchAlgorithmException unused) {
                return a(this.c.createSocket(str, i));
            }
        }

        @Override
        public String[] getDefaultCipherSuites() {
            return this.c.getDefaultCipherSuites();
        }

        @Override
        public String[] getSupportedCipherSuites() {
            return this.c.getSupportedCipherSuites();
        }

        public c(URL url, byte[] bArr, String str) {
            this.a = c.class.getSimpleName();
            this.d = null;
            TrustManager[] trustManagerArr = new TrustManager[1];
            int defaultPort = url.getPort() == -1 ? url.getDefaultPort() : url.getPort();
            byte[] bArr2 = e;
            byte b = bArr2[6];
            int i = bArr2[9] + 1;
            trustManagerArr[0] = new b(a(b, i, i & 47).intern(), url.getHost(), defaultPort);
            KeyStore keyStore = KeyStore.getInstance(a(bArr2[14], bArr2[10], bArr2[38] + 1).intern());
            if (bArr != null && str != null) {
                keyStore.load(new ByteArrayInputStream(bArr), str.toCharArray());
                KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
                keyManagerFactory.init(keyStore, str.toCharArray());
                this.d = keyManagerFactory.getKeyManagers();
            }
            SSLContext sSLContext = SSLContext.getInstance(a(bArr2[6], f & 15, -bArr2[38]).intern());
            this.b = sSLContext;
            sSLContext.init(this.d, trustManagerArr, null);
            this.c = this.b.getSocketFactory();
        }

        private Socket a(String str, int i) {
            byte[] bArr = e;
            SSLContext sSLContext = SSLContext.getInstance(a(bArr[6], f & 15, -bArr[38]).intern());
            KeyManager[] keyManagerArr = this.d;
            int i2 = bArr[38] + 1;
            sSLContext.init(keyManagerArr, new TrustManager[]{new b(a(i2, i2, bArr[a.f1889o]).intern(), str, i)}, null);
            return sSLContext.getSocketFactory().createSocket(str, i);
        }

        @Override
        public Socket createSocket(String str, int i, InetAddress inetAddress, int i2) {
            try {
                return a(a(str, i, inetAddress, i2));
            } catch (KeyManagementException | NoSuchAlgorithmException unused) {
                return a(this.c.createSocket(str, i, inetAddress, i2));
            }
        }

        private Socket a(String str, int i, InetAddress inetAddress, int i2) {
            byte[] bArr = e;
            SSLContext sSLContext = SSLContext.getInstance(a(bArr[6], f & 15, -bArr[38]).intern());
            KeyManager[] keyManagerArr = this.d;
            int i3 = bArr[38] + 1;
            sSLContext.init(keyManagerArr, new TrustManager[]{new b(a(i3, i3, bArr[a.f1889o]).intern(), str, i)}, null);
            return sSLContext.getSocketFactory().createSocket(str, i, inetAddress, i2);
        }

        @Override
        public Socket createSocket(InetAddress inetAddress, int i) {
            try {
                return a(a(inetAddress, i));
            } catch (KeyManagementException | NoSuchAlgorithmException unused) {
                return a(this.c.createSocket(inetAddress, i));
            }
        }

        private Socket a(InetAddress inetAddress, int i) {
            byte[] bArr = e;
            SSLContext sSLContext = SSLContext.getInstance(a(bArr[6], f & 15, -bArr[38]).intern());
            KeyManager[] keyManagerArr = this.d;
            int i2 = bArr[38] + 1;
            sSLContext.init(keyManagerArr, new TrustManager[]{new b(a(i2, i2, bArr[a.f1889o]).intern(), inetAddress.getHostName(), i)}, null);
            return sSLContext.getSocketFactory().createSocket(inetAddress, i);
        }

        @Override
        public Socket createSocket(InetAddress inetAddress, int i, InetAddress inetAddress2, int i2) {
            try {
                return a(a(inetAddress, i, inetAddress2, i2));
            } catch (KeyManagementException | NoSuchAlgorithmException unused) {
                return a(this.c.createSocket(inetAddress, i, inetAddress2, i2));
            }
        }

        private Socket a(InetAddress inetAddress, int i, InetAddress inetAddress2, int i2) {
            byte[] bArr = e;
            SSLContext sSLContext = SSLContext.getInstance(a(bArr[6], f & 15, -bArr[38]).intern());
            KeyManager[] keyManagerArr = this.d;
            int i3 = bArr[38] + 1;
            sSLContext.init(keyManagerArr, new TrustManager[]{new b(a(i3, i3, bArr[a.f1889o]).intern(), inetAddress.getHostName(), i)}, null);
            return sSLContext.getSocketFactory().createSocket(inetAddress, i, inetAddress2, i2);
        }

        @Override
        public Socket createSocket(Socket socket, String str, int i, boolean z) {
            try {
                return a(a(socket, str, i, z));
            } catch (KeyManagementException | NoSuchAlgorithmException unused) {
                return a(this.c.createSocket(socket, str, i, z));
            }
        }

        private Socket a(Socket socket) {
            if (socket != null && (socket instanceof SSLSocket)) {
                try {
                    ((SSLSocket) socket).getEnabledProtocols();
                } catch (IllegalArgumentException unused) {
                }
            }
            return socket;
        }

        private Socket a(Socket socket, String str, int i, boolean z) {
            byte[] bArr = e;
            SSLContext sSLContext = SSLContext.getInstance(a(bArr[6], f & 15, -bArr[38]).intern());
            KeyManager[] keyManagerArr = this.d;
            int i2 = bArr[38] + 1;
            sSLContext.init(keyManagerArr, new TrustManager[]{new b(a(i2, i2, bArr[a.f1889o]).intern(), str, i)}, null);
            return sSLContext.getSocketFactory().createSocket(socket, str, i, z);
        }
    }

    public a(String str) {
        this.a = str;
        byte b2 = q[16];
        this.b = a(b2, b2 | 161, r4[56] - 1);
        this.c = null;
        this.d = null;
        this.e = 0;
        this.f = 20000;
        this.g = new HashMap();
        this.h = null;
        this.i = null;
        this.j = 0;
        this.k = null;
        this.l = null;
        this.m = Boolean.TRUE;
        this.n = null;
    }

    private static String a(int i, int i2, int i3) {
        int i4 = 275 - i2;
        int i5 = i + 1;
        int i6 = 114 - i3;
        byte[] bArr = q;
        byte[] bArr2 = new byte[i5];
        int i7 = -1;
        int i8 = i5 - 1;
        if (bArr == null) {
            i4++;
            i6 = i4 + (-i6);
        }
        while (true) {
            int i9 = i6;
            int i10 = i4;
            i7++;
            bArr2[i7] = (byte) i9;
            if (i7 == i8) {
                return new String(bArr2, 0).intern();
            }
            i4 = i10 + 1;
            i6 = i9 + (-bArr[i10]);
        }
    }

    public void e() {
        InterfaceC0070a interfaceC0070a = this.n;
        if (interfaceC0070a != null) {
            interfaceC0070a.a(this);
        }
    }

    public int c() {
        return this.j;
    }

    public String d() {
        return this.i;
    }

    private static String a(InputStream inputStream) {
        StringBuilder sb = new StringBuilder();
        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
        while (true) {
            String readLine = bufferedReader.readLine();
            if (readLine == null) {
                return sb.toString();
            }
            sb.append(readLine);
        }
    }

    public static byte[] d(String str) {
        int length = str.length();
        byte[] bArr = new byte[length / 2];
        for (int i = 0; i < length; i += 2) {
            bArr[i / 2] = (byte) (Character.digit(str.charAt(i + 1), 16) + (Character.digit(str.charAt(i), 16) << f1889o));
        }
        return bArr;
    }

    public void b() {
        if (this.n != null) {
            new Thread(new vkey.android.vos.b(this)).start();
        } else {
            c(null);
        }
    }

    public void c(java.lang.String r13) {
        throw new UnsupportedOperationException("Method not decompiled: vkey.android.vos.a.c(java.lang.String):void");
    }

    private String a(URL url, String str, String str2) {
        byte[] bArr = q;
        byte b2 = bArr[155];
        int i = b2 | 88;
        if (!str2.startsWith(a(b2, i, i >>> 1))) {
            if (this.c == null || this.d == null) {
                return "";
            }
            StringBuilder sb = new StringBuilder();
            sb.append(this.c);
            byte b3 = bArr[43];
            sb.append(a(b3, b3 | 161, r));
            sb.append(this.d);
            String sb2 = sb.toString();
            String encodeToString = Base64.encodeToString(sb2.getBytes(), 0, sb2.getBytes().length, 0);
            StringBuilder sb3 = new StringBuilder();
            byte b4 = bArr[155];
            return pq0.b(sb3, a(b4, b4, bArr[232]), encodeToString);
        }
        if (this.c == null || this.d == null) {
            return "";
        }
        byte b5 = bArr[155];
        int i2 = b5 | 88;
        String replaceFirst = str2.replaceFirst(a(b5, i2, i2 >>> 1), "");
        byte b6 = bArr[43];
        String[] split = replaceFirst.split(a(b6, b6 | 178, bArr[168] - 1));
        HashMap hashMap = new HashMap();
        for (String str3 : split) {
            String trim = str3.trim();
            byte[] bArr2 = q;
            byte b7 = bArr2[43];
            String[] split2 = trim.split(a(b7, b7 | 161, bArr2[0]), 2);
            String str4 = split2[0];
            String str5 = split2[1];
            hashMap.put(str4, str5.substring(1, str5.length() - 1));
        }
        String file = url.getFile();
        byte[] bArr3 = q;
        MessageDigest messageDigest = MessageDigest.getInstance(a(bArr3[16], bArr3[43], bArr3[7]));
        StringBuilder sb4 = new StringBuilder();
        sb4.append(this.c);
        byte b8 = bArr3[43];
        sb4.append(a(b8, b8 | 161, r));
        sb4.append((String) hashMap.get(a(bArr3[25], bArr3[55], bArr3[43])));
        byte b9 = bArr3[43];
        sb4.append(a(b9, b9 | 161, r));
        sb4.append(this.d);
        String a = a(messageDigest.digest(sb4.toString().getBytes(a(bArr3[14], 170, 29))));
        messageDigest.reset();
        StringBuilder c2 = b02.c(str);
        byte b10 = bArr3[43];
        String b11 = pq0.b(c2, a(b10, b10 | 161, r), file);
        byte b12 = bArr3[25];
        String a2 = a(messageDigest.digest(b11.getBytes(a(b12, b12 | 193, 29))));
        String a3 = a(messageDigest.digest(Long.toString(System.currentTimeMillis()).getBytes(a(bArr3[14], 170, 29))));
        StringBuilder c3 = b02.c(a);
        byte b13 = bArr3[43];
        c3.append(a(b13, b13 | 161, r));
        byte b14 = bArr3[25];
        c3.append((String) hashMap.get(a(b14, 178, b14)));
        byte b15 = bArr3[55];
        c3.append(a(b15, b15 | 224, r));
        c3.append(a3);
        byte b16 = bArr3[43];
        c3.append(a(b16, b16 | 161, r));
        byte b17 = bArr3[16];
        c3.append((String) hashMap.get(a(b17, b17 | 233, bArr3[31])));
        byte b18 = bArr3[43];
        String b19 = pq0.b(c3, a(b18, b18 | 161, r), a2);
        byte b20 = bArr3[25];
        String a4 = a(messageDigest.digest(b19.getBytes(a(b20, b20 | 193, 29))));
        StringBuilder sb5 = new StringBuilder();
        sb5.append(a(bArr3[109], 260, 46));
        sb5.append(this.c);
        sb5.append(a(bArr3[55], bArr3[1] - 1, 80));
        sb5.append((String) hashMap.get(a(bArr3[25], bArr3[55], bArr3[43])));
        sb5.append(a(bArr3[55], 102, 80));
        byte b21 = bArr3[25];
        sb5.append((String) hashMap.get(a(b21, 178, b21)));
        sb5.append(a(bArr3[14], r << 2, 80));
        sb5.append(file);
        sb5.append(a(bArr3[36], 137, 80));
        sb5.append(a4);
        sb5.append(a(bArr3[14], 161, 80));
        byte b22 = bArr3[16];
        sb5.append((String) hashMap.get(a(b22, b22 | 233, bArr3[31])));
        sb5.append(a(23, 88, 80));
        sb5.append(a3);
        byte b23 = bArr3[43];
        int i3 = b23 | 217;
        sb5.append(a(b23, i3, i3 & 372));
        return sb5.toString();
    }

    public void b(String str) {
        this.h = str;
    }

    public void b(String str, String str2) {
        this.g.put(str, str2);
    }

    public static String a(byte[] bArr) {
        char[] charArray = a(q[101], 193, r0[274] - 1).toCharArray();
        char[] cArr = new char[bArr.length * 2];
        for (int i = 0; i < bArr.length; i++) {
            int i2 = bArr[i] & 255;
            int i3 = i * 2;
            cArr[i3] = charArray[i2 >>> f1889o];
            cArr[i3 + 1] = charArray[i2 & 15];
        }
        return new String(cArr);
    }

    public void a() {
        this.m = Boolean.FALSE;
    }

    public void a(int i) {
        this.f = i;
    }

    public void a(String str) {
        byte[] bArr = q;
        byte b2 = bArr[16];
        if (!str.equals(a(b2, b2 | 161, bArr[56] - 1)) && !str.equals(a(bArr[54], 244, -bArr[5])) && !str.equals(a(bArr[16], bArr[f1889o], -bArr[5]))) {
            byte b3 = bArr[25];
            if (!str.equals(a(b3, b3 | 170, -bArr[5])) && !str.equals(a(bArr[155], 142, 46))) {
                byte b4 = bArr[38];
                a(b4, b4 | 260, r >>> 1);
                a(bArr[67], 241, bArr[7]);
                byte b5 = bArr[36];
                a(b5, b5 | 113, bArr[25]);
                return;
            }
        }
        this.b = str;
    }

    public void a(String str, String str2) {
        this.c = str;
        this.d = str2;
    }

    public void a(InterfaceC0070a interfaceC0070a) {
        this.n = interfaceC0070a;
    }

    public void a(byte[] bArr, String str) {
        this.k = bArr;
        this.l = str;
    }
}