新浪彩票 v0.96.37版本的 MD5 值为:0c7ddce345383506e2959f5d75bdceab

以下内容为反编译后的 C0512.java 源代码,内容仅作参考


package Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.O6AgNJgW1GmSRcLCckPu.uFUurWO95THYWQmKZLIT;

import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.O6AgNJgW1GmSRcLCckPu.C0554;
import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.O6AgNJgW1GmSRcLCckPu.C0566;
import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.O6AgNJgW1GmSRcLCckPu.LqSTODtVHQX5CnrAQOLr.C0063;
import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.O6AgNJgW1GmSRcLCckPu.VS1uHJ3912Y87t31oDBr.C0083;
import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.O6AgNJgW1GmSRcLCckPu.bRLhZpiWrPio5wxrxojI.C0166;
import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.O6AgNJgW1GmSRcLCckPu.sh8riw4Zcy5DkehkGGcx.C0459;
import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.O6AgNJgW1GmSRcLCckPu.yrDPsDIVhJjchscJ3dG6.C0541;
import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.v4rqru3PdyhrqRZkuHAG.sURcKRzF6jWquyal6cy3.C1103;
import Hs3z8m4Zk5vN3zlf3ycP.O6AgNJgW1GmSRcLCckPu.ykCxyCDhWxmlZosXV5ip.PmpzgmtwkmMb39lNWcsm.C1319;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.security.SecureRandom;
public class C0512 {
    private byte[] f2617;
    private boolean f2618;
    private C0063 f2619;
    private BufferedOutputStream f2620;
    private BufferedInputStream f2621;

    public C0512() {
        this.f2618 = true;
        this.f2619 = null;
        this.f2621 = null;
        this.f2620 = null;
        this.f2617 = null;
    }

    public static void m2022(String[] strArr) {
        String str;
        boolean z = true;
        if (strArr.length < 2) {
            new C0512();
            PrintStream printStream = System.err;
            printStream.println("Usage: java " + C0512.class.getName() + " infile outfile [keyfile]");
            System.exit(1);
        }
        String str2 = strArr[0];
        String str3 = strArr[1];
        if (strArr.length > 2) {
            str = strArr[2];
            z = false;
        } else {
            str = "deskey.dat";
        }
        new C0512(str2, str3, str, z).m2024();
    }

    private void m2023(byte[] bArr) {
        this.f2619.mo297(false, new C0459(bArr));
        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(this.f2621));
        byte[] bArr2 = null;
        while (true) {
            try {
                String readLine = bufferedReader.readLine();
                if (readLine == null) {
                    try {
                        break;
                    } catch (C0566 unused) {
                        return;
                    }
                }
                byte[] m5072 = C1319.m5072(readLine);
                bArr2 = new byte[this.f2619.mo299(m5072.length)];
                int mo300 = this.f2619.mo300(m5072, 0, m5072.length, bArr2, 0);
                if (mo300 > 0) {
                    this.f2620.write(bArr2, 0, mo300);
                }
            } catch (IOException e) {
                e.printStackTrace();
                return;
            }
        }
        int mo296 = this.f2619.mo296(bArr2, 0);
        if (mo296 > 0) {
            this.f2620.write(bArr2, 0, mo296);
        }
    }

    private void m2024() {
        this.f2619 = new C0063(new C0166(new C0083()));
        if (this.f2618) {
            m2025(this.f2617);
        } else {
            m2023(this.f2617);
        }
        try {
            this.f2621.close();
            this.f2620.flush();
            this.f2620.close();
        } catch (IOException unused) {
        }
    }

    private void m2025(byte[] bArr) {
        this.f2619.mo297(true, new C0459(bArr));
        byte[] bArr2 = new byte[47];
        byte[] bArr3 = new byte[this.f2619.mo299(47)];
        while (true) {
            try {
                int read = this.f2621.read(bArr2, 0, 47);
                if (read <= 0) {
                    try {
                        break;
                    } catch (C0566 unused) {
                        return;
                    }
                }
                int mo300 = this.f2619.mo300(bArr2, 0, read, bArr3, 0);
                if (mo300 > 0) {
                    byte[] m5074 = C1319.m5074(bArr3, 0, mo300);
                    this.f2620.write(m5074, 0, m5074.length);
                    this.f2620.write(10);
                }
            } catch (IOException e) {
                e.printStackTrace();
                return;
            }
        }
        int mo296 = this.f2619.mo296(bArr3, 0);
        if (mo296 > 0) {
            byte[] m50742 = C1319.m5074(bArr3, 0, mo296);
            this.f2620.write(m50742, 0, m50742.length);
            this.f2620.write(10);
        }
    }

    public C0512(String str, String str2, String str3, boolean z) {
        SecureRandom secureRandom;
        this.f2618 = true;
        SecureRandom secureRandom2 = null;
        this.f2619 = null;
        this.f2621 = null;
        this.f2620 = null;
        this.f2617 = null;
        this.f2618 = z;
        try {
            this.f2621 = new BufferedInputStream(new FileInputStream(str));
        } catch (FileNotFoundException unused) {
            PrintStream printStream = System.err;
            printStream.println("Input file not found [" + str + "]");
            System.exit(1);
        }
        try {
            this.f2620 = new BufferedOutputStream(new FileOutputStream(str2));
        } catch (IOException unused2) {
            PrintStream printStream2 = System.err;
            printStream2.println("Output file not created [" + str2 + "]");
            System.exit(1);
        }
        if (z) {
            try {
                secureRandom = new SecureRandom();
            } catch (Exception unused3) {
            }
            try {
                secureRandom.setSeed("www.bouncycastle.org".getBytes());
            } catch (Exception unused4) {
                secureRandom2 = secureRandom;
                try {
                    System.err.println("Hmmm, no SHA1PRNG, you need the Sun implementation");
                    System.exit(1);
                    secureRandom = secureRandom2;
                    C0554 c0554 = new C0554(secureRandom, C1103.f5216);
                    C0541 c0541 = new C0541();
                    c0541.mo2042(c0554);
                    this.f2617 = c0541.mo2041();
                    BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(new FileOutputStream(str3));
                    byte[] m5071 = C1319.m5071(this.f2617);
                    bufferedOutputStream.write(m5071, 0, m5071.length);
                    bufferedOutputStream.flush();
                    bufferedOutputStream.close();
                    return;
                } catch (IOException unused5) {
                    PrintStream printStream3 = System.err;
                    printStream3.println("Could not decryption create key file [" + str3 + "]");
                    System.exit(1);
                    return;
                }
            }
            C0554 c05542 = new C0554(secureRandom, C1103.f5216);
            C0541 c05412 = new C0541();
            c05412.mo2042(c05542);
            this.f2617 = c05412.mo2041();
            BufferedOutputStream bufferedOutputStream2 = new BufferedOutputStream(new FileOutputStream(str3));
            byte[] m50712 = C1319.m5071(this.f2617);
            bufferedOutputStream2.write(m50712, 0, m50712.length);
            bufferedOutputStream2.flush();
            bufferedOutputStream2.close();
            return;
        }
        try {
            BufferedInputStream bufferedInputStream = new BufferedInputStream(new FileInputStream(str3));
            int available = bufferedInputStream.available();
            byte[] bArr = new byte[available];
            bufferedInputStream.read(bArr, 0, available);
            this.f2617 = C1319.m5075(bArr);
        } catch (IOException unused6) {
            PrintStream printStream4 = System.err;
            printStream4.println("Decryption key file not found, or not valid [" + str3 + "]");
            System.exit(1);
        }
    }
}