Info Call to dynamic code loading API

Description

List of all dynamic code loading API calls in the application. Loading code from untrsuted sources could allow the execution of malicious code in the context of the current application.

Recommendation

This entry is informative, no recommendations applicable.

Technical details

Method javax.mail.internet.MimeBodyPart.<clinit>() calling method java.lang.System.getProperty()


    static MimeBodyPart()
    {
        try {
            boolean v0_1;
            boolean v0_5 = System.getProperty("mail.mime.setdefaulttextcharset");
            int v1 = 0;
        } catch (SecurityException) {
            return;
        }
        if ((!v0_5) || (!v0_5.equalsIgnoreCase("false"))) {
            v0_1 = 1;
        } else {
            v0_1 = 0;
        }
        boolean v0_6;
        javax.mail.internet.MimeBodyPart.setDefaultTextCharset = v0_1;
        boolean v0_3 = System.getProperty("mail.mime.setcontenttypefilename");
        if ((!v0_3) || (!v0_3.equalsIgnoreCase("false"))) {
            v0_6 = 1;
        } else {
            v0_6 = 0;
        }
        boolean v0_10;
        javax.mail.internet.MimeBodyPart.setContentTypeFileName = v0_6;
        boolean v0_8 = System.getProperty("mail.mime.encodefilename");
        if ((!v0_8) || (v0_8.equalsIgnoreCase("false"))) {
            v0_10 = 0;
        } else {
            v0_10 = 1;
        }
        boolean v0_14;
        javax.mail.internet.MimeBodyPart.encodeFileName = v0_10;
        boolean v0_12 = System.getProperty("mail.mime.decodefilename");
        if ((!v0_12) || (v0_12.equalsIgnoreCase("false"))) {
            v0_14 = 0;
        } else {
            v0_14 = 1;
        }
        javax.mail.internet.MimeBodyPart.decodeFileName = v0_14;
        boolean v0_16 = System.getProperty("mail.mime.cachemultipart");
        if ((!v0_16) || (!v0_16.equalsIgnoreCase("false"))) {
            v1 = 1;
        } else {
        }
        javax.mail.internet.MimeBodyPart.cacheMultipart = v1;
        return;
    }

Method javax.mail.internet.MimePartDataSource.<clinit>() calling method java.lang.System.getProperty()


    static MimePartDataSource()
    {
        try {
            int v0_3;
            int v0_1 = System.getProperty("mail.mime.ignoremultipartencoding");
        } catch (SecurityException) {
            return;
        }
        if ((v0_1 == 0) || (!v0_1.equalsIgnoreCase("false"))) {
            v0_3 = 1;
        } else {
            v0_3 = 0;
        }
        javax.mail.internet.MimePartDataSource.ignoreMultipartEncoding = v0_3;
        return;
    }

Method javax.mail.internet.MimeMultipart.parse() calling method java.lang.System.getProperty()


    protected declared_synchronized void parse()
    {
        try {
            if (!this.parsed) {
                if (!javax.mail.internet.MimeMultipart.bmparse) {
                    String v2_4;
                    javax.mail.MessagingException v0_21 = this.ds.getInputStream();
                    if (((v0_21 instanceof java.io.ByteArrayInputStream)) || (((v0_21 instanceof java.io.BufferedInputStream)) || ((v0_21 instanceof javax.mail.internet.SharedInputStream)))) {
                        v2_4 = v0_21;
                    } else {
                        v2_4 = new java.io.BufferedInputStream(v0_21);
                    }
                    javax.mail.MessagingException v0_8;
                    if (!(v2_4 instanceof javax.mail.internet.SharedInputStream)) {
                        v0_8 = 0;
                    } else {
                        v0_8 = ((javax.mail.internet.SharedInputStream) v2_4);
                    }
                    String v4_6;
                    String v4_4 = new javax.mail.internet.ContentType(this.contentType).getParameter("boundary");
                    if (v4_4 == null) {
                        if (!javax.mail.internet.MimeMultipart.ignoreMissingBoundaryParameter) {
                            throw new javax.mail.MessagingException("Missing boundary parameter");
                        } else {
                            v4_6 = 0;
                        }
                    } else {
                        com.sun.mail.util.LineInputStream v5_3 = new StringBuilder("--");
                        v5_3.append(v4_4);
                        v4_6 = v5_3.toString();
                    }
                    try {
                        com.sun.mail.util.LineInputStream v5_5 = new com.sun.mail.util.LineInputStream(v2_4);
                        StringBuffer v6_0 = 0;
                        int v7_2 = 0;
                    } catch (javax.mail.MessagingException v0_15) {
                        v2_4.close();
                        throw v0_15;
                    } catch (javax.mail.MessagingException v0_14) {
                        throw new javax.mail.MessagingException("IO Error", v0_14);
                    }
                    while(true) {
                        int v8_2 = v5_5.readLine();
                        int v9_10 = 9;
                        int v10_11 = 32;
                        int v11_1 = 0;
                        if (v8_2 != 0) {
                            long v13_2 = (v8_2.length() - 1);
                            while (v13_2 >= 0) {
                                char v14 = v8_2.charAt(v13_2);
                                if ((v14 == v10_11) || (v14 == v9_10)) {
                                    v13_2--;
                                    v9_10 = 9;
                                    v10_11 = 32;
                                    v11_1 = 0;
                                }
                                v8_2 = v8_2.substring(v11_1, (v13_2 + 1));
                                if (v4_6 == null) {
                                    if (v8_2.startsWith("--")) {
                                        v4_6 = v8_2;
                                        if (v8_2 == 0) {
                                            throw new javax.mail.MessagingException("Missing start boundary");
                                        } else {
                                            if (v6_0 != null) {
                                                this.preamble = v6_0.toString();
                                            }
                                            String v4_0 = com.sun.mail.util.ASCIIUtility.getBytes(v4_6);
                                            StringBuffer v6_2 = v4_0.length;
                                            long v13_0 = 0;
                                            int v15_0 = 0;
                                            int v7_1 = 0;
                                            while (v7_1 == 0) {
                                                int v8_0;
                                                if (v0_8 == null) {
                                                    v8_0 = this.createInternetHeaders(v2_4);
                                                } else {
                                                    v13_0 = v0_8.getPosition();
                                                    do {
                                                        int v8_1 = v5_5.readLine();
                                                    } while((v8_1 != 0) && (v8_1.length() > 0));
                                                    if (v8_1 != 0) {
                                                        v8_0 = 0;
                                                    } else {
                                                        if (!javax.mail.internet.MimeMultipart.ignoreMissingEndBoundary) {
                                                            throw new javax.mail.MessagingException("missing multipart end boundary");
                                                        } else {
                                                            this.complete = v11_1;
                                                        }
                                                        v2_4.close();
                                                        this.parsed = 1;
                                                        return;
                                                    }
                                                }
                                                if (!v2_4.markSupported()) {
                                                    throw new javax.mail.MessagingException("Stream doesn\'t support mark");
                                                } else {
                                                    int v16_0;
                                                    int v15_2;
                                                    if (v0_8 != null) {
                                                        v16_0 = v0_8.getPosition();
                                                        v15_2 = 0;
                                                    } else {
                                                        v15_2 = new java.io.ByteArrayOutputStream();
                                                        v16_0 = v15_0;
                                                    }
                                                    int v19_0 = v16_0;
                                                    int v11_0 = -1;
                                                    int v16_1 = 1;
                                                    int v18 = -1;
                                                    while(true) {
                                                        int v10_0;
                                                        if (v16_1 == 0) {
                                                            v10_0 = v18;
                                                            v18 = v10_0;
                                                            int v3_7 = v2_4.read();
                                                            if (v3_7 >= 0) {
                                                                int v19_1 = v11_0;
                                                                int v10_7 = v19_0;
                                                                if (v3_7 != 13) {
                                                                    if (v3_7 != 10) {
                                                                        if (v15_2 != 0) {
                                                                            v15_2.write(v3_7);
                                                                        }
                                                                        v16_1 = 0;
                                                                        v11_0 = v19_1;
                                                                        v19_0 = v10_7;
                                                                    } else {
                                                                    }
                                                                }
                                                                int v9_7;
                                                                if (v0_8 == null) {
                                                                    v19_0 = v10_7;
                                                                    v9_7 = 13;
                                                                } else {
                                                                    v19_0 = (v0_8.getPosition() - 1);
                                                                    v9_7 = 13;
                                                                }
                                                                if (v3_7 == v9_7) {
                                                                    v2_4.mark(1);
                                                                    int v9_9 = v2_4.read();
                                                                    if (v9_9 != 10) {
                                                                        v2_4.reset();
                                                                    } else {
                                                                        v11_0 = v3_7;
                                                                        v18 = v9_9;
                                                                        int v10 = 32;
                                                                        v16_1 = 1;
                                                                    }
                                                                }
                                                                v11_0 = v3_7;
                                                                v10 = 32;
                                                                v16_1 = 1;
                                                            } else {
                                                                if (!javax.mail.internet.MimeMultipart.ignoreMissingEndBoundary) {
                                                                    throw new javax.mail.MessagingException("missing multipart end boundary");
                                                                } else {
                                                                    this.complete = 0;
                                                                    v7_1 = 1;
                                                                    int v3_12;
                                                                    int v10_10;
                                                                    if (v0_8 == null) {
                                                                        v10_10 = v19_0;
                                                                        v3_12 = this.createMimeBodyPart(v8_0, v15_2.toByteArray());
                                                                    } else {
                                                                        v10_10 = v19_0;
                                                                        v3_12 = this.createMimeBodyPart(v0_8.newStream(v13_0, v10_10));
                                                                    }
                                                                    super.addBodyPart(v3_12);
                                                                    v15_0 = v10_10;
                                                                    v10 = 32;
                                                                    v11_1 = 0;
                                                                }
                                                            }
                                                        } else {
                                                            v2_4.mark(((v6_2 + 4) + 1000));
                                                            int v3_5 = 0;
                                                            while (v3_5 < v6_2) {
                                                                if (v2_4.read() == (v4_0[v3_5] & 255)) {
                                                                    int v9 = -1;
                                                                    v3_5++;
                                                                    v10 = 32;
                                                                }
                                                                if (v3_5 == v6_2) {
                                                                    int v3_6 = v2_4.read();
                                                                    if ((v3_6 != 45) || (v2_4.read() != 45)) {
                                                                        int v9_2 = 32;
                                                                        while ((v3_6 == v9_2) || (v3_6 == 9)) {
                                                                            v3_6 = v2_4.read();
                                                                            v9_2 = 32;
                                                                        }
                                                                        if (v3_6 != 10) {
                                                                            if (v3_6 != 13) {
                                                                                v2_4.reset();
                                                                                if (v15_2 == 0) {
                                                                                    v10_0 = v18;
                                                                                } else {
                                                                                    if (v11_0 == -1) {
                                                                                        v10_0 = v18;
                                                                                    } else {
                                                                                        v15_2.write(v11_0);
                                                                                        int v10_6 = v18;
                                                                                        if (v10_6 != -1) {
                                                                                            v15_2.write(v10_6);
                                                                                        }
                                                                                        v11_0 = -1;
                                                                                        v18 = -1;
                                                                                    }
                                                                                }
                                                                            } else {
                                                                                v2_4.mark(1);
                                                                                if (v2_4.read() != 10) {
                                                                                    v2_4.reset();
                                                                                }
                                                                            }
                                                                        } else {
                                                                        }
                                                                    } else {
                                                                        this.complete = 1;
                                                                        v7_1 = 1;
                                                                    }
                                                                }
                                                            }
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                } else {
                                    if (v8_2.equals(v4_6)) {
                                    }
                                }
                                if (v8_2.length() > 0) {
                                    if (v7_2 == 0) {
                                        v7_2 = System.getProperty("line.separator", "\n");
                                    }
                                    if (v6_0 == null) {
                                        v6_0 = new StringBuffer((v8_2.length() + 2));
                                    }
                                    v6_0.append(v8_2);
                                    v6_0.append(v7_2);
                                }
                            }
                        } else {
                        }
                    }
                } else {
                    this.parsebm();
                    return;
                }
            } else {
                return;
            }
        } catch (javax.mail.MessagingException v0_16) {
            throw v0_16;
        }
    }

Method javax.mail.internet.MimeMultipart.parsebm() calling method java.lang.System.getProperty()


    private declared_synchronized void parsebm()
    {
        void v1 = this;
        try {
            if (!this.parsed) {
                String v2_3;
                javax.mail.MessagingException v0_20 = this.ds.getInputStream();
                if (((v0_20 instanceof java.io.ByteArrayInputStream)) || (((v0_20 instanceof java.io.BufferedInputStream)) || ((v0_20 instanceof javax.mail.internet.SharedInputStream)))) {
                    v2_3 = v0_20;
                } else {
                    v2_3 = new java.io.BufferedInputStream(v0_20);
                }
                javax.mail.MessagingException v0_7;
                if (!(v2_3 instanceof javax.mail.internet.SharedInputStream)) {
                    v0_7 = 0;
                } else {
                    v0_7 = ((javax.mail.internet.SharedInputStream) v2_3);
                }
                int v4_13;
                int v4_7 = new javax.mail.internet.ContentType(this.contentType).getParameter("boundary");
                if (v4_7 == 0) {
                    if (!javax.mail.internet.MimeMultipart.ignoreMissingBoundaryParameter) {
                        throw new javax.mail.MessagingException("Missing boundary parameter");
                    } else {
                        v4_13 = 0;
                    }
                } else {
                    int v5_23 = new StringBuilder("--");
                    v5_23.append(v4_7);
                    v4_13 = v5_23.toString();
                }
                try {
                    int v5_2 = new com.sun.mail.util.LineInputStream(v2_3);
                    StringBuffer v6_0 = 0;
                    String v7_2 = 0;
                } catch (javax.mail.MessagingException v0_18) {
                    v2_3.close();
                    throw v0_18;
                } catch (javax.mail.MessagingException v0_17) {
                    throw new javax.mail.MessagingException("IO Error", v0_17);
                }
                while(true) {
                    int v8_2 = v5_2.readLine();
                    int v9_4 = 9;
                    int v10_1 = 32;
                    int v12_2 = 0;
                    int v13_0 = 1;
                    if (v8_2 != 0) {
                        int v14_9 = (v8_2.length() - 1);
                        while (v14_9 >= 0) {
                            int v15_6 = v8_2.charAt(v14_9);
                            if ((v15_6 == v10_1) || (v15_6 == v9_4)) {
                                int v9 = 2;
                                v14_9--;
                                v9_4 = 9;
                                v10_1 = 32;
                                v13_0 = 1;
                            }
                            com.sun.mail.util.LineInputStream v28_4;
                            v8_2 = v8_2.substring(0, (v14_9 + 1));
                            if (v4_13 == 0) {
                                if (!v8_2.startsWith("--")) {
                                    v28_4 = v5_2;
                                } else {
                                    v4_13 = v8_2;
                                    if (v8_2 == 0) {
                                        throw new javax.mail.MessagingException("Missing start boundary");
                                    } else {
                                        if (v6_0 != null) {
                                            this.preamble = v6_0.toString();
                                        }
                                        int v4_0 = com.sun.mail.util.ASCIIUtility.getBytes(v4_13);
                                        StringBuffer v6_2 = v4_0.length;
                                        String v7_1 = new int[256];
                                        int v8_0 = 0;
                                        while (v8_0 < v6_2) {
                                            int v29_0 = v4_0;
                                            com.sun.mail.util.LineInputStream v28_0 = v5_2;
                                            javax.mail.internet.MimeBodyPart v3_3 = v29_0[v8_0];
                                            v8_0++;
                                            v7_1[v3_3] = v8_0;
                                            v5_2 = v28_0;
                                            v4_0 = v29_0;
                                            int v10 = 32;
                                            v13_0 = 1;
                                        }
                                        int v8_1 = new int[v6_2];
                                        int v14_0 = v6_2;
                                        while (v14_0 > 0) {
                                            int v29_1 = v4_0;
                                            com.sun.mail.util.LineInputStream v28_1 = v5_2;
                                            javax.mail.internet.MimeBodyPart v3_5 = (v6_2 - 1);
                                            while (v3_5 >= v14_0) {
                                                if (v29_1[v3_5] == v29_1[(v3_5 - v14_0)]) {
                                                    v8_1[(v3_5 - 1)] = v14_0;
                                                    v3_5--;
                                                }
                                                v14_0--;
                                                v5_2 = v28_1;
                                                v4_0 = v29_1;
                                                v10 = 32;
                                                v13_0 = 1;
                                            }
                                            while (v3_5 > null) {
                                                v3_5--;
                                                v8_1[v3_5] = v14_0;
                                            }
                                        }
                                        int v14_1 = (v6_2 - 1);
                                        v8_1[v14_1] = v13_0;
                                        long v18 = 0;
                                        long v16_0 = 0;
                                        int v15_1 = 0;
                                        while (v15_1 == 0) {
                                            javax.mail.internet.MimeBodyPart v3_6;
                                            int v22_0;
                                            if (v0_7 == null) {
                                                v22_0 = v16_0;
                                                v3_6 = v1.createInternetHeaders(v2_3);
                                            } else {
                                                long v16_1 = v0_7.getPosition();
                                                do {
                                                    String v20_1 = v5_2.readLine();
                                                } while((v20_1 != null) && (v20_1.length() > 0));
                                                if (v20_1 != null) {
                                                    v22_0 = v16_1;
                                                    v3_6 = 0;
                                                } else {
                                                    if (!javax.mail.internet.MimeMultipart.ignoreMissingEndBoundary) {
                                                        throw new javax.mail.MessagingException("missing multipart end boundary");
                                                    } else {
                                                        v1.complete = v12_2;
                                                    }
                                                    v2_3.close();
                                                    v1.parsed = v13_0;
                                                    return;
                                                }
                                            }
                                            if (!v2_3.markSupported()) {
                                                throw new javax.mail.MessagingException("Stream doesn\'t support mark");
                                            } else {
                                                int v24;
                                                if (v0_7 != null) {
                                                    v18 = v0_7.getPosition();
                                                    v24 = 0;
                                                } else {
                                                    v24 = new java.io.ByteArrayOutputStream();
                                                }
                                                int v9_3 = new byte[v6_2];
                                                int v10_0 = new byte[v6_2];
                                                long v25_0 = v18;
                                                int v13_1 = 0;
                                                int v19 = 1;
                                                while(true) {
                                                    int v14_7;
                                                    com.sun.mail.util.LineInputStream v28_2;
                                                    long v30;
                                                    int v31;
                                                    v2_3.mark(((v6_2 + 4) + 1000));
                                                    int v11_2 = javax.mail.internet.MimeMultipart.readFully(v2_3, v9_3, v12_2, v6_2);
                                                    if (v11_2 >= v6_2) {
                                                        int v27_0 = v14_1;
                                                        while (v27_0 >= 0) {
                                                            v28_2 = v5_2;
                                                            if (v9_3[v27_0] == v4_0[v27_0]) {
                                                                v31 = v15_1;
                                                                int v5 = 1;
                                                                v27_0--;
                                                                v5_2 = v28_2;
                                                            }
                                                            int v29_3;
                                                            int v4_3;
                                                            if (v27_0 >= 0) {
                                                                v29_3 = v4_0;
                                                                v30 = v14_1;
                                                                v31 = v15_1;
                                                                v4_3 = v24;
                                                            } else {
                                                                if (v19 != 0) {
                                                                    v12_2 = 0;
                                                                } else {
                                                                    int v5_5;
                                                                    int v12_1 = v10_0[(v13_1 - 1)];
                                                                    if (v12_1 == 13) {
                                                                        v5_5 = 10;
                                                                    } else {
                                                                        v5_5 = 10;
                                                                        if (v12_1 != 10) {
                                                                        } else {
                                                                        }
                                                                    }
                                                                    if ((v12_1 != v5_5) || ((v13_1 < 2) || (v10_0[(v13_1 - 2)] != 13))) {
                                                                        v12_2 = 1;
                                                                    } else {
                                                                        v12_2 = 2;
                                                                    }
                                                                }
                                                                int v12_4;
                                                                if (v19 != 0) {
                                                                    int v5_9;
                                                                    if (v0_7 == null) {
                                                                        v30 = v14_1;
                                                                        v5_9 = v15_1;
                                                                    } else {
                                                                        v30 = v14_1;
                                                                        v5_9 = v15_1;
                                                                        v25_0 = ((v0_7.getPosition() - ((long) v6_2)) - ((long) v12_2));
                                                                    }
                                                                    int v14_4 = v2_3.read();
                                                                    if (v14_4 != 45) {
                                                                        v31 = v5_9;
                                                                    } else {
                                                                        v31 = v5_9;
                                                                        if (v2_3.read() == 45) {
                                                                            v1.complete = 1;
                                                                            v14_7 = v25_0;
                                                                            v31 = 1;
                                                                            javax.mail.internet.MimeBodyPart v3_9;
                                                                            int v22_1;
                                                                            int v29_5;
                                                                            if (v0_7 == null) {
                                                                                int v12_7;
                                                                                v29_5 = v4_0;
                                                                                int v4_9 = v22_0;
                                                                                int v13_4 = (v13_1 - v12_2);
                                                                                if (v13_4 <= 0) {
                                                                                    v22_1 = v4_9;
                                                                                    v12_7 = v24;
                                                                                } else {
                                                                                    v22_1 = v4_9;
                                                                                    v12_7 = v24;
                                                                                    v12_7.write(v10_0, 0, v13_4);
                                                                                }
                                                                                if ((!v1.complete) && (v11_2 > 0)) {
                                                                                    v12_7.write(v9_3, 0, v11_2);
                                                                                }
                                                                                v3_9 = v1.createMimeBodyPart(v3_6, v12_7.toByteArray());
                                                                            } else {
                                                                                v29_5 = v4_0;
                                                                                int v4_15 = v22_0;
                                                                                v3_9 = v1.createMimeBodyPart(v0_7.newStream(v4_15, v14_7));
                                                                                v22_1 = v4_15;
                                                                            }
                                                                            super.addBodyPart(v3_9);
                                                                            v18 = v14_7;
                                                                            v16_0 = v22_1;
                                                                            v5_2 = v28_2;
                                                                            v4_0 = v29_5;
                                                                            v14_1 = v30;
                                                                            v15_1 = v31;
                                                                            v10 = 32;
                                                                            v12_2 = 0;
                                                                            v13_0 = 1;
                                                                        }
                                                                    }
                                                                    int v5_12 = 32;
                                                                    while ((v14_4 == v5_12) || (v14_4 == 9)) {
                                                                        int v29_4 = v4_0;
                                                                        int v4_5 = v24;
                                                                        int v15 = 13;
                                                                        v14_4 = v2_3.read();
                                                                        v24 = v4_5;
                                                                        v4_0 = v29_4;
                                                                        v5_12 = 32;
                                                                    }
                                                                    if (v14_4 != 10) {
                                                                        if (v14_4 != 13) {
                                                                            v29_3 = v4_0;
                                                                            v12_4 = v24;
                                                                            v4_3 = v12_4;
                                                                            v27_0 = 0;
                                                                            int v11_7 = Math.max(((v27_0 + 1) - v7_1[(v9_3[v27_0] & 127)]), v8_1[v27_0]);
                                                                            if (v11_7 >= 2) {
                                                                                if ((v13_1 <= 0) || (v0_7 != null)) {
                                                                                    v12_2 = 0;
                                                                                } else {
                                                                                    v12_2 = 0;
                                                                                    v4_3.write(v10_0, 0, v13_1);
                                                                                }
                                                                                v2_3.reset();
                                                                                v1 = v1.skipFully(v2_3, ((long) v11_7));
                                                                                v13_1 = v11_7;
                                                                                int v32 = v10_0;
                                                                                v10_0 = v9_3;
                                                                                v9_3 = v32;
                                                                            } else {
                                                                                if ((v0_7 == null) && (v13_1 > 1)) {
                                                                                    v4_3.write(v10_0, 0, (v13_1 - 1));
                                                                                }
                                                                                v2_3.reset();
                                                                                v1 = v1.skipFully(v2_3, 1);
                                                                                if (v13_1 < 1) {
                                                                                    v10_0[0] = v9_3[0];
                                                                                    v12_2 = 0;
                                                                                    v13_1 = 1;
                                                                                } else {
                                                                                    v10_0[0] = v10_0[(v13_1 - 1)];
                                                                                    v10_0[1] = v9_3[0];
                                                                                    v12_2 = 0;
                                                                                    v13_1 = 2;
                                                                                }
                                                                            }
                                                                            v24 = v4_3;
                                                                            v5_2 = v28_2;
                                                                            v4_0 = v29_3;
                                                                            v14_1 = v30;
                                                                            v15_1 = v31;
                                                                            v19 = 0;
                                                                        } else {
                                                                            v2_3.mark(1);
                                                                            if (v2_3.read() != 10) {
                                                                                v2_3.reset();
                                                                            }
                                                                        }
                                                                    } else {
                                                                    }
                                                                    v14_7 = v25_0;
                                                                } else {
                                                                    if (v12_2 <= 0) {
                                                                        v29_3 = v4_0;
                                                                        v30 = v14_1;
                                                                        v31 = v15_1;
                                                                        v12_4 = v24;
                                                                    } else {
                                                                    }
                                                                }
                                                            }
                                                        }
                                                        v28_2 = v5_2;
                                                    } else {
                                                        if (!javax.mail.internet.MimeMultipart.ignoreMissingEndBoundary) {
                                                            throw new javax.mail.MessagingException("missing multipart end boundary");
                                                        } else {
                                                            if (v0_7 != null) {
                                                                v25_0 = v0_7.getPosition();
                                                            }
                                                            v1.complete = v12_2;
                                                            v28_2 = v5_2;
                                                            v30 = v14_1;
                                                            v14_7 = v25_0;
                                                            v31 = 1;
                                                        }
                                                    }
                                                }
                                            }
                                        }
                                    }
                                }
                            } else {
                                if (!v8_2.equals(v4_13)) {
                                    v28_4 = v5_2;
                                } else {
                                }
                            }
                            if (v8_2.length() <= 0) {
                                v5_2 = v28_4;
                            } else {
                                if (v7_2 == null) {
                                    v7_2 = System.getProperty("line.separator", "\n");
                                }
                                if (v6_0 == null) {
                                    v6_0 = new StringBuffer((v8_2.length() + 2));
                                }
                                v6_0.append(v8_2);
                                v6_0.append(v7_2);
                                v5_2 = v28_4;
                            }
                        }
                    } else {
                    }
                }
            } else {
                return;
            }
        } catch (javax.mail.MessagingException v0_19) {
            throw v0_19;
        }
    }

Method javax.mail.internet.MimeMultipart.<clinit>() calling method java.lang.System.getProperty()


    static MimeMultipart()
    {
        try {
            boolean v0_1;
            boolean v0_5 = System.getProperty("mail.mime.multipart.ignoremissingendboundary");
            int v1 = 0;
        } catch (SecurityException) {
            return;
        }
        if ((!v0_5) || (!v0_5.equalsIgnoreCase("false"))) {
            v0_1 = 1;
        } else {
            v0_1 = 0;
        }
        boolean v0_6;
        javax.mail.internet.MimeMultipart.ignoreMissingEndBoundary = v0_1;
        boolean v0_3 = System.getProperty("mail.mime.multipart.ignoremissingboundaryparameter");
        if ((!v0_3) || (!v0_3.equalsIgnoreCase("false"))) {
            v0_6 = 1;
        } else {
            v0_6 = 0;
        }
        javax.mail.internet.MimeMultipart.ignoreMissingBoundaryParameter = v0_6;
        boolean v0_8 = System.getProperty("mail.mime.multipart.bmparse");
        if ((!v0_8) || (!v0_8.equalsIgnoreCase("false"))) {
            v1 = 1;
        } else {
        }
        javax.mail.internet.MimeMultipart.bmparse = v1;
        return;
    }

Method javax.mail.internet.InternetAddress.getLocalAddress() calling method java.lang.System.getProperty()


    public static javax.mail.internet.InternetAddress getLocalAddress(javax.mail.Session p4)
    {
        try {
            String v4_1;
            String v1_1;
            String v2_0;
            if (p4 != null) {
                v1_1 = p4.getProperty("mail.from");
                if (v1_1 != null) {
                    v4_1 = 0;
                    v2_0 = 0;
                } else {
                    v2_0 = p4.getProperty("mail.user");
                    if ((v2_0 == null) || (v2_0.length() == 0)) {
                        v2_0 = p4.getProperty("user.name");
                    }
                    if ((v2_0 == null) || (v2_0.length() == 0)) {
                        v2_0 = System.getProperty("user.name");
                    }
                    v4_1 = p4.getProperty("mail.host");
                    if ((v4_1 == null) || (v4_1.length() == 0)) {
                        java.net.InetAddress v3_4 = java.net.InetAddress.getLocalHost();
                        if (v3_4 != null) {
                            v4_1 = v3_4.getHostName();
                        }
                    }
                }
            } else {
                v2_0 = System.getProperty("user.name");
                v4_1 = java.net.InetAddress.getLocalHost().getHostName();
                v1_1 = 0;
            }
        } catch (SecurityException) {
            return 0;
        }
        if ((v1_1 == null) && ((v2_0 != null) && ((v2_0.length() != 0) && ((v4_1 != null) && (v4_1.length() != 0))))) {
            String v1_5 = new StringBuilder(String.valueOf(v2_0));
            v1_5.append("@");
            v1_5.append(v4_1);
            v1_1 = v1_5.toString();
        }
        if (v1_1 == null) {
            return 0;
        } else {
            return new javax.mail.internet.InternetAddress(v1_1);
        }
    }

Method javax.mail.internet.InternetAddress.getLocalAddress() calling method java.lang.System.getProperty()


    public static javax.mail.internet.InternetAddress getLocalAddress(javax.mail.Session p4)
    {
        try {
            String v1_1;
            String v4_1;
            String v2_0;
            if (p4 != null) {
                v1_1 = p4.getProperty("mail.from");
                if (v1_1 != null) {
                    v4_1 = 0;
                    v2_0 = 0;
                } else {
                    v2_0 = p4.getProperty("mail.user");
                    if ((v2_0 == null) || (v2_0.length() == 0)) {
                        v2_0 = p4.getProperty("user.name");
                    }
                    if ((v2_0 == null) || (v2_0.length() == 0)) {
                        v2_0 = System.getProperty("user.name");
                    }
                    v4_1 = p4.getProperty("mail.host");
                    if ((v4_1 == null) || (v4_1.length() == 0)) {
                        java.net.InetAddress v3_4 = java.net.InetAddress.getLocalHost();
                        if (v3_4 != null) {
                            v4_1 = v3_4.getHostName();
                        }
                    }
                }
            } else {
                v2_0 = System.getProperty("user.name");
                v4_1 = java.net.InetAddress.getLocalHost().getHostName();
                v1_1 = 0;
            }
        } catch (SecurityException) {
            return 0;
        }
        if ((v1_1 == null) && ((v2_0 != null) && ((v2_0.length() != 0) && ((v4_1 != null) && (v4_1.length() != 0))))) {
            String v1_5 = new StringBuilder(String.valueOf(v2_0));
            v1_5.append("@");
            v1_5.append(v4_1);
            v1_1 = v1_5.toString();
        }
        if (v1_1 == null) {
            return 0;
        } else {
            return new javax.mail.internet.InternetAddress(v1_1);
        }
    }

Method javax.activation.MimetypesFileTypeMap.<init>() calling method java.lang.System.getProperty()


    public MimetypesFileTypeMap()
    {
        Throwable v0_1 = new java.util.Vector(5);
        v0_1.addElement(0);
        com.sun.activation.registries.LogSupport.log("MimetypesFileTypeMap: load HOME");
        try {
            com.sun.activation.registries.MimeTypeFile[] v1_0 = System.getProperty("user.home");
        } catch (SecurityException) {
            com.sun.activation.registries.LogSupport.log("MimetypesFileTypeMap: load SYS");
            try {
                com.sun.activation.registries.MimeTypeFile[] v1_9 = new StringBuilder(String.valueOf(System.getProperty("java.home")));
                v1_9.append(java.io.File.separator);
                v1_9.append("lib");
                v1_9.append(java.io.File.separator);
                v1_9.append("mime.types");
                com.sun.activation.registries.MimeTypeFile[] v1_12 = this.loadFile(v1_9.toString());
            } catch (SecurityException) {
                com.sun.activation.registries.LogSupport.log("MimetypesFileTypeMap: load JAR");
                this.loadAllResources(v0_1, "mime.types");
                com.sun.activation.registries.LogSupport.log("MimetypesFileTypeMap: load DEF");
                if (javax.activation.MimetypesFileTypeMap.defDB == null) {
                    javax.activation.MimetypesFileTypeMap.defDB = this.loadResource("/mimetypes.default");
                }
                com.sun.activation.registries.MimeTypeFile[] v1_17 = javax.activation.MimetypesFileTypeMap.defDB;
                if (v1_17 != null) {
                    v0_1.addElement(v1_17);
                }
                com.sun.activation.registries.MimeTypeFile[] v1_19 = new com.sun.activation.registries.MimeTypeFile[v0_1.size()];
                this.DB = v1_19;
                v0_1.copyInto(this.DB);
                return;
            }
            if (v1_12 == null) {
            } else {
                v0_1.addElement(v1_12);
            }
        }
        if (v1_0 == null) {
        } else {
            com.sun.activation.registries.MimeTypeFile v2_1 = new StringBuilder(String.valueOf(v1_0));
            v2_1.append(java.io.File.separator);
            v2_1.append(".mime.types");
            com.sun.activation.registries.MimeTypeFile[] v1_6 = this.loadFile(v2_1.toString());
            if (v1_6 == null) {
            } else {
                v0_1.addElement(v1_6);
            }
        }
    }

Method javax.activation.MailcapCommandMap.<init>() calling method java.lang.System.getProperty()


    public MailcapCommandMap()
    {
        com.sun.activation.registries.MailcapFile[] v0_1 = new java.util.ArrayList(5);
        v0_1.add(0);
        com.sun.activation.registries.LogSupport.log("MailcapCommandMap: load HOME");
        try {
            com.sun.activation.registries.MailcapFile[] v1_0 = System.getProperty("user.home");
        } catch (SecurityException) {
            com.sun.activation.registries.LogSupport.log("MailcapCommandMap: load SYS");
            try {
                com.sun.activation.registries.MailcapFile[] v1_9 = new StringBuilder(String.valueOf(System.getProperty("java.home")));
                v1_9.append(java.io.File.separator);
                v1_9.append("lib");
                v1_9.append(java.io.File.separator);
                v1_9.append("mailcap");
                com.sun.activation.registries.MailcapFile[] v1_12 = this.loadFile(v1_9.toString());
            } catch (SecurityException) {
                com.sun.activation.registries.LogSupport.log("MailcapCommandMap: load JAR");
                this.loadAllResources(v0_1, "mailcap");
                com.sun.activation.registries.LogSupport.log("MailcapCommandMap: load DEF");
                if (javax.activation.MailcapCommandMap.defDB == null) {
                    javax.activation.MailcapCommandMap.defDB = this.loadResource("mailcap.default");
                }
                com.sun.activation.registries.MailcapFile[] v1_17 = javax.activation.MailcapCommandMap.defDB;
                if (v1_17 != null) {
                    v0_1.add(v1_17);
                }
                com.sun.activation.registries.MailcapFile[] v1_19 = new com.sun.activation.registries.MailcapFile[v0_1.size()];
                this.DB = v1_19;
                this.DB = ((com.sun.activation.registries.MailcapFile[]) v0_1.toArray(this.DB));
                return;
            }
            if (v1_12 == null) {
            } else {
                v0_1.add(v1_12);
            }
        }
        if (v1_0 == null) {
        } else {
            com.sun.activation.registries.MailcapFile v2_1 = new StringBuilder(String.valueOf(v1_0));
            v2_1.append(java.io.File.separator);
            v2_1.append(".mailcap");
            com.sun.activation.registries.MailcapFile[] v1_6 = this.loadFile(v2_1.toString());
            if (v1_6 == null) {
            } else {
                v0_1.add(v1_6);
            }
        }
    }

Method com.sun.mail.imap.protocol.BODYSTRUCTURE.<clinit>() calling method java.lang.System.getProperty()


    static BODYSTRUCTURE()
    {
        int v0_1 = new char[13];
        v0_1 = {66, 79, 68, 89, 83, 84, 82, 85, 67, 84, 85, 82, 69};
        com.sun.mail.imap.protocol.BODYSTRUCTURE.name = v0_1;
        int v0_2 = 1;
        com.sun.mail.imap.protocol.BODYSTRUCTURE.SINGLE = 1;
        com.sun.mail.imap.protocol.BODYSTRUCTURE.MULTI = 2;
        com.sun.mail.imap.protocol.BODYSTRUCTURE.NESTED = 3;
        com.sun.mail.imap.protocol.BODYSTRUCTURE.parseDebug = 0;
        try {
            boolean v2_1 = System.getProperty("mail.imap.parse.debug");
        } catch (SecurityException) {
            return;
        }
        if ((!v2_1) || (!v2_1.equalsIgnoreCase("true"))) {
            v0_2 = 0;
        } else {
        }
        com.sun.mail.imap.protocol.BODYSTRUCTURE.parseDebug = v0_2;
        return;
    }

Method org.apache.harmony.misc.SystemUtils.getOS() calling method java.lang.System.getProperty()


    public static int getOS()
    {
        if (org.apache.harmony.misc.SystemUtils.os == 0) {
            int v0_8 = System.getProperty("os.name").substring(0, 3);
            if (v0_8.compareToIgnoreCase("win") != 0) {
                if (v0_8.compareToIgnoreCase("lin") != 0) {
                    org.apache.harmony.misc.SystemUtils.os = -1;
                } else {
                    org.apache.harmony.misc.SystemUtils.os = 2;
                }
            } else {
                org.apache.harmony.misc.SystemUtils.os = 1;
            }
        }
        return org.apache.harmony.misc.SystemUtils.os;
    }

Method javax.mail.internet.ParameterList.<clinit>() calling method java.lang.System.getProperty()


    static ParameterList()
    {
        try {
            boolean v0_1;
            boolean v0_5 = System.getProperty("mail.mime.encodeparameters");
            int v1 = 1;
        } catch (SecurityException) {
            boolean v0_15 = new char[16];
            v0_15 = {48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70};
            javax.mail.internet.ParameterList.hex = v0_15;
            return;
        }
        if ((!v0_5) || (!v0_5.equalsIgnoreCase("true"))) {
            v0_1 = 0;
        } else {
            v0_1 = 1;
        }
        boolean v0_6;
        javax.mail.internet.ParameterList.encodeParameters = v0_1;
        boolean v0_3 = System.getProperty("mail.mime.decodeparameters");
        if ((!v0_3) || (!v0_3.equalsIgnoreCase("true"))) {
            v0_6 = 0;
        } else {
            v0_6 = 1;
        }
        boolean v0_10;
        javax.mail.internet.ParameterList.decodeParameters = v0_6;
        boolean v0_8 = System.getProperty("mail.mime.decodeparameters.strict");
        if ((!v0_8) || (!v0_8.equalsIgnoreCase("true"))) {
            v0_10 = 0;
        } else {
            v0_10 = 1;
        }
        javax.mail.internet.ParameterList.decodeParametersStrict = v0_10;
        boolean v0_12 = System.getProperty("mail.mime.applefilenames");
        if ((!v0_12) || (!v0_12.equalsIgnoreCase("true"))) {
            v1 = 0;
        } else {
        }
        javax.mail.internet.ParameterList.applehack = v1;
        v0_15 = new char[16];
        v0_15 = {48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 65, 66, 67, 68, 69, 70};
        javax.mail.internet.ParameterList.hex = v0_15;
        return;
    }

Method javax.mail.internet.MimeUtility.getDefaultMIMECharset() calling method java.lang.System.getProperty()


    static String getDefaultMIMECharset()
    {
        if (javax.mail.internet.MimeUtility.defaultMIMECharset == null) {
            try {
                javax.mail.internet.MimeUtility.defaultMIMECharset = System.getProperty("mail.mime.charset");
            } catch (SecurityException) {
            }
        }
        if (javax.mail.internet.MimeUtility.defaultMIMECharset == null) {
            javax.mail.internet.MimeUtility.defaultMIMECharset = javax.mail.internet.MimeUtility.mimeCharset(javax.mail.internet.MimeUtility.getDefaultJavaCharset());
        }
        return javax.mail.internet.MimeUtility.defaultMIMECharset;
    }

Method javax.mail.internet.MimeUtility.getDefaultJavaCharset() calling method java.lang.System.getProperty()

Couldn't retrieve source code

Method javax.mail.internet.MimeUtility.<clinit>() calling method java.lang.System.getProperty()


    static MimeUtility()
    {
        try {
            boolean v0_1;
            boolean v0_30 = System.getProperty("mail.mime.decodetext.strict");
            int v1_40 = 0;
        } catch (SecurityException) {
            javax.mail.internet.MimeUtility.java2mime = new java.util.Hashtable(40);
            javax.mail.internet.MimeUtility.mime2java = new java.util.Hashtable(10);
            try {
                boolean v0_61 = javax.mail.internet.MimeUtility.getResourceAsStream("/META-INF/javamail.charset.map");
            } catch (Exception) {
                if (javax.mail.internet.MimeUtility.java2mime.isEmpty()) {
                    javax.mail.internet.MimeUtility.java2mime.put("8859_1", "ISO-8859-1");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_1", "ISO-8859-1");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-1", "ISO-8859-1");
                    javax.mail.internet.MimeUtility.java2mime.put("8859_2", "ISO-8859-2");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_2", "ISO-8859-2");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-2", "ISO-8859-2");
                    javax.mail.internet.MimeUtility.java2mime.put("8859_3", "ISO-8859-3");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_3", "ISO-8859-3");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-3", "ISO-8859-3");
                    javax.mail.internet.MimeUtility.java2mime.put("8859_4", "ISO-8859-4");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_4", "ISO-8859-4");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-4", "ISO-8859-4");
                    javax.mail.internet.MimeUtility.java2mime.put("8859_5", "ISO-8859-5");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_5", "ISO-8859-5");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-5", "ISO-8859-5");
                    javax.mail.internet.MimeUtility.java2mime.put("8859_6", "ISO-8859-6");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_6", "ISO-8859-6");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-6", "ISO-8859-6");
                    javax.mail.internet.MimeUtility.java2mime.put("8859_7", "ISO-8859-7");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_7", "ISO-8859-7");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-7", "ISO-8859-7");
                    javax.mail.internet.MimeUtility.java2mime.put("8859_8", "ISO-8859-8");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_8", "ISO-8859-8");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-8", "ISO-8859-8");
                    javax.mail.internet.MimeUtility.java2mime.put("8859_9", "ISO-8859-9");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859_9", "ISO-8859-9");
                    javax.mail.internet.MimeUtility.java2mime.put("iso8859-9", "ISO-8859-9");
                    javax.mail.internet.MimeUtility.java2mime.put("sjis", "Shift_JIS");
                    javax.mail.internet.MimeUtility.java2mime.put("jis", "ISO-2022-JP");
                    javax.mail.internet.MimeUtility.java2mime.put("iso2022jp", "ISO-2022-JP");
                    javax.mail.internet.MimeUtility.java2mime.put("euc_jp", "euc-jp");
                    javax.mail.internet.MimeUtility.java2mime.put("koi8_r", "koi8-r");
                    javax.mail.internet.MimeUtility.java2mime.put("euc_cn", "euc-cn");
                    javax.mail.internet.MimeUtility.java2mime.put("euc_tw", "euc-tw");
                    javax.mail.internet.MimeUtility.java2mime.put("euc_kr", "euc-kr");
                }
                if (javax.mail.internet.MimeUtility.mime2java.isEmpty()) {
                    javax.mail.internet.MimeUtility.mime2java.put("iso-2022-cn", "ISO2022CN");
                    javax.mail.internet.MimeUtility.mime2java.put("iso-2022-kr", "ISO2022KR");
                    javax.mail.internet.MimeUtility.mime2java.put("utf-8", "UTF8");
                    javax.mail.internet.MimeUtility.mime2java.put("utf8", "UTF8");
                    javax.mail.internet.MimeUtility.mime2java.put("ja_jp.iso2022-7", "ISO2022JP");
                    javax.mail.internet.MimeUtility.mime2java.put("ja_jp.eucjp", "EUCJIS");
                    javax.mail.internet.MimeUtility.mime2java.put("euc-kr", "KSC5601");
                    javax.mail.internet.MimeUtility.mime2java.put("euckr", "KSC5601");
                    javax.mail.internet.MimeUtility.mime2java.put("us-ascii", "ISO-8859-1");
                    javax.mail.internet.MimeUtility.mime2java.put("x-us-ascii", "ISO-8859-1");
                }
                return;
            }
            if (!v0_61) {
            } else {
                try {
                    int v1_45 = new com.sun.mail.util.LineInputStream(v0_61);
                    try {
                        javax.mail.internet.MimeUtility.loadMappings(((com.sun.mail.util.LineInputStream) v1_45), javax.mail.internet.MimeUtility.java2mime);
                        javax.mail.internet.MimeUtility.loadMappings(((com.sun.mail.util.LineInputStream) v1_45), javax.mail.internet.MimeUtility.mime2java);
                        try {
                            v1_45.close();
                        } catch (Exception) {
                        }
                    } catch (boolean v0_62) {
                        v1_45.close();
                        throw v0_62;
                    }
                } catch (int v1_46) {
                    v1_45 = v0_61;
                    v0_62 = v1_46;
                }
            }
        }
        if ((!v0_30) || (!v0_30.equalsIgnoreCase("false"))) {
            v0_1 = 1;
        } else {
            v0_1 = 0;
        }
        boolean v0_33;
        javax.mail.internet.MimeUtility.decodeStrict = v0_1;
        boolean v0_15 = System.getProperty("mail.mime.encodeeol.strict");
        if ((!v0_15) || (!v0_15.equalsIgnoreCase("true"))) {
            v0_33 = 0;
        } else {
            v0_33 = 1;
        }
        boolean v0_52;
        javax.mail.internet.MimeUtility.encodeEolStrict = v0_33;
        boolean v0_49 = System.getProperty("mail.mime.foldencodedwords");
        if ((!v0_49) || (!v0_49.equalsIgnoreCase("true"))) {
            v0_52 = 0;
        } else {
            v0_52 = 1;
        }
        javax.mail.internet.MimeUtility.foldEncodedWords = v0_52;
        boolean v0_54 = System.getProperty("mail.mime.foldtext");
        if ((!v0_54) || (!v0_54.equalsIgnoreCase("false"))) {
            v1_40 = 1;
        } else {
        }
        javax.mail.internet.MimeUtility.foldText = v1_40;
    }

Method javax.mail.Session.loadProviders() calling method java.lang.System.getProperty()


    private void loadProviders(Class p13)
    {
        String v0_1 = new javax.mail.Session$1(this);
        try {
            javax.mail.Provider$Type v1_9 = new StringBuilder(String.valueOf(System.getProperty("java.home")));
            v1_9.append(java.io.File.separator);
            v1_9.append("lib");
            v1_9.append(java.io.File.separator);
            v1_9.append("javamail.providers");
            this.loadFile(v1_9.toString(), v0_1);
        } catch (javax.mail.Provider$Type v1_2) {
            if (!this.debug) {
            } else {
                String v2_5 = new StringBuilder("DEBUG: can\'t get java.home: ");
                v2_5.append(v1_2);
                this.pr(v2_5.toString());
            }
        }
        this.loadAllResources("META-INF/javamail.providers", p13, v0_1);
        this.loadResource("/META-INF/javamail.default.providers", p13, v0_1);
        if (this.providers.size() == 0) {
            if (this.debug) {
                this.pr("DEBUG: failed to load any providers, using defaults");
            }
            String v13_11 = new javax.mail.Provider;
            v13_11(javax.mail.Provider$Type.STORE, "imap", "com.sun.mail.imap.IMAPStore", "Sun Microsystems, Inc.", "1.4.1");
            this.addProvider(v13_11);
            String v13_12 = new javax.mail.Provider;
            v13_12(javax.mail.Provider$Type.STORE, "imaps", "com.sun.mail.imap.IMAPSSLStore", "Sun Microsystems, Inc.", "1.4.1");
            this.addProvider(v13_12);
            String v13_13 = new javax.mail.Provider;
            v13_13(javax.mail.Provider$Type.STORE, "pop3", "com.sun.mail.pop3.POP3Store", "Sun Microsystems, Inc.", "1.4.1");
            this.addProvider(v13_13);
            String v13_14 = new javax.mail.Provider;
            v13_14(javax.mail.Provider$Type.STORE, "pop3s", "com.sun.mail.pop3.POP3SSLStore", "Sun Microsystems, Inc.", "1.4.1");
            this.addProvider(v13_14);
            String v13_15 = new javax.mail.Provider;
            v13_15(javax.mail.Provider$Type.TRANSPORT, "smtp", "com.sun.mail.smtp.SMTPTransport", "Sun Microsystems, Inc.", "1.4.1");
            this.addProvider(v13_15);
            String v13_16 = new javax.mail.Provider;
            v13_16(javax.mail.Provider$Type.TRANSPORT, "smtps", "com.sun.mail.smtp.SMTPSSLTransport", "Sun Microsystems, Inc.", "1.4.1");
            this.addProvider(v13_16);
        }
        if (this.debug) {
            this.pr("DEBUG: Tables of loaded providers");
            String v13_2 = new StringBuilder("DEBUG: Providers Listed By Class Name: ");
            v13_2.append(this.providersByClassName.toString());
            this.pr(v13_2.toString());
            String v13_5 = new StringBuilder("DEBUG: Providers Listed By Protocol: ");
            v13_5.append(this.providersByProtocol.toString());
            this.pr(v13_5.toString());
        }
        return;
    }

Method javax.mail.Session.loadAddressMap() calling method java.lang.System.getProperty()


    private void loadAddressMap(Class p3)
    {
        String v0_1 = new javax.mail.Session$2(this);
        this.loadResource("/META-INF/javamail.default.address.map", p3, v0_1);
        this.loadAllResources("META-INF/javamail.address.map", p3, v0_1);
        try {
            java.util.Properties v3_1 = new StringBuilder(String.valueOf(System.getProperty("java.home")));
            v3_1.append(java.io.File.separator);
            v3_1.append("lib");
            v3_1.append(java.io.File.separator);
            v3_1.append("javamail.address.map");
            this.loadFile(v3_1.toString(), v0_1);
        } catch (java.util.Properties v3_3) {
            if (!this.debug) {
            } else {
                String v0_4 = new StringBuilder("DEBUG: can\'t get java.home: ");
                v0_4.append(v3_3);
                this.pr(v0_4.toString());
            }
        }
        if (this.addressMap.isEmpty()) {
            if (this.debug) {
                this.pr("DEBUG: failed to load address map, using defaults");
            }
            this.addressMap.put("rfc822", "smtp");
        }
        return;
    }

Method javax.mail.Service.connect() calling method java.lang.System.getProperty()


    public declared_synchronized void connect(String p19, int p20, String p21, String p22)
    {
        javax.mail.Session v0_0 = p21;
        try {
            if (this.isConnected()) {
                throw new IllegalStateException("already connected");
            } else {
                int v5_0;
                javax.mail.URLName v2_0;
                String v7_0;
                javax.mail.PasswordAuthentication v4_0;
                String v6_1;
                if (this.url == null) {
                    v4_0 = p19;
                    v5_0 = p20;
                    v2_0 = 0;
                    v7_0 = 0;
                    v6_1 = p22;
                } else {
                    v2_0 = this.url.getProtocol();
                    if (p19 != null) {
                        v4_0 = p19;
                    } else {
                        v4_0 = this.url.getHost();
                    }
                    if (p20 != -1) {
                        v5_0 = p20;
                    } else {
                        v5_0 = this.url.getPort();
                    }
                    if (p21 != null) {
                        if ((p22 != null) || (!p21.equals(this.url.getUsername()))) {
                            v6_1 = p22;
                        } else {
                            v6_1 = this.url.getPassword();
                        }
                    } else {
                        v0_0 = this.url.getUsername();
                        if (p22 != null) {
                            v6_1 = p22;
                        } else {
                            v6_1 = this.url.getPassword();
                        }
                    }
                    v7_0 = this.url.getFile();
                }
                if (v2_0 != null) {
                    if (v4_0 == null) {
                        javax.mail.PasswordAuthentication v4_4 = this.session;
                        javax.mail.URLName v8_10 = new StringBuilder("mail.");
                        v8_10.append(v2_0);
                        v8_10.append(".host");
                        v4_0 = v4_4.getProperty(v8_10.toString());
                    }
                    if (v0_0 == null) {
                        javax.mail.Session v0_13 = this.session;
                        javax.mail.URLName v8_13 = new StringBuilder("mail.");
                        v8_13.append(v2_0);
                        v8_13.append(".user");
                        v0_0 = v0_13.getProperty(v8_13.toString());
                    }
                }
                if (v4_0 == null) {
                    v4_0 = this.session.getProperty("mail.host");
                }
                javax.mail.URLName v8_16;
                if (v0_0 != null) {
                    v8_16 = v0_0;
                } else {
                    v8_16 = this.session.getProperty("mail.user");
                }
                javax.mail.Session v0_1;
                if (v8_16 != null) {
                    v0_1 = v8_16;
                } else {
                    try {
                        v0_1 = System.getProperty("user.name");
                    } catch (javax.mail.Session v0_18) {
                        if (!this.debug) {
                        } else {
                            v0_18.printStackTrace(this.session.getDebugOut());
                        }
                    }
                }
                if ((v6_1 != null) || (this.url == null)) {
                    int v15 = 1;
                    String v3_3 = v0_1;
                    int v16_1 = 0;
                } else {
                    int v13_0 = new javax.mail.URLName;
                    String v3_0 = v13_0;
                    v15 = 1;
                    v13_0(v2_0, v4_0, v5_0, v7_0, v0_1, 0);
                    this.setURLName(v3_0);
                    String v3_2 = this.session.getPasswordAuthentication(this.getURLName());
                    if (v3_2 == null) {
                        v3_3 = v0_1;
                        v16_1 = 1;
                    } else {
                        if (v0_1 != null) {
                            if (!v0_1.equals(v3_2.getUserName())) {
                            } else {
                                v6_1 = v3_2.getPassword();
                                v3_3 = v0_1;
                                v16_1 = 0;
                            }
                        } else {
                            javax.mail.Session v0_2 = v3_2.getUserName();
                            v6_1 = v3_2.getPassword();
                            v3_3 = v0_2;
                            v16_1 = 0;
                        }
                    }
                }
                try {
                    javax.mail.Session v0_3 = this.protocolConnect(v4_0, v5_0, v3_3, v6_1);
                    String v14_1 = 0;
                } catch (javax.mail.Session v0_4) {
                    v14_1 = v0_4;
                    v0_3 = 0;
                }
                if (v0_3 == null) {
                    try {
                        int v9_2 = java.net.InetAddress.getByName(v4_0);
                    } catch (java.net.UnknownHostException) {
                        v9_2 = 0;
                    }
                    javax.mail.URLName v8_7 = this.session.requestPasswordAuthentication(v9_2, v5_0, v2_0, 0, v3_3);
                    if (v8_7 != null) {
                        javax.mail.Session v0_5 = v8_7.getUserName();
                        String v3_4 = v8_7.getPassword();
                        v3_3 = v0_5;
                        v0_3 = this.protocolConnect(v4_0, v5_0, v0_5, v3_4);
                        v6_1 = v3_4;
                    }
                }
                if (v0_3 != null) {
                    javax.mail.Session v0_6 = new javax.mail.URLName;
                    v0_6(v2_0, v4_0, v5_0, v7_0, v3_3, v6_1);
                    this.setURLName(v0_6);
                    if (v16_1 != 0) {
                        this.session.setPasswordAuthentication(this.getURLName(), new javax.mail.PasswordAuthentication(v3_3, v6_1));
                    }
                    this.setConnected(v15);
                    this.notifyConnectionListeners(v15);
                    return;
                } else {
                    if (v14_1 == null) {
                        throw new javax.mail.AuthenticationFailedException();
                    } else {
                        throw v14_1;
                    }
                }
            }
        } catch (javax.mail.Session v0_10) {
            throw v0_10;
        }
    }

Method com.sun.mail.util.BASE64DecoderStream.<init>() calling method java.lang.System.getProperty()


    public BASE64DecoderStream(java.io.InputStream p3)
    {
        super(p3);
        int v3_2 = new byte[3];
        super.buffer = v3_2;
        int v3_3 = 0;
        super.bufsize = 0;
        super.index = 0;
        boolean v0_4 = new byte[8190];
        super.input_buffer = v0_4;
        super.input_pos = 0;
        super.input_len = 0;
        super.ignoreErrors = 0;
        try {
            boolean v0_1 = System.getProperty("mail.mime.base64.ignoreerrors");
        } catch (SecurityException) {
            return;
        }
        if ((v0_1) && (!v0_1.equalsIgnoreCase("false"))) {
            v3_3 = 1;
        }
        super.ignoreErrors = v3_3;
        return;
    }

Method com.sun.mail.dsn.DeliveryStatus.<clinit>() calling method java.lang.System.getProperty()


    static DeliveryStatus()
    {
        try {
            int v0_3;
            int v0_1 = System.getProperty("mail.dsn.debug");
        } catch (SecurityException) {
            return;
        }
        if ((v0_1 == 0) || (v0_1.equalsIgnoreCase("false"))) {
            v0_3 = 0;
        } else {
            v0_3 = 1;
        }
        com.sun.mail.dsn.DeliveryStatus.debug = v0_3;
        return;
    }

Method com.rudraum.rudraumThumb2Thief.stuff.Util.grabLogcat() calling method java.lang.System.getProperty()


    private static String grabLogcat()
    {
        try {
            String v1_0 = new java.io.BufferedReader(new java.io.InputStreamReader(Runtime.getRuntime().exec("logcat -d").getInputStream()));
            String v0_2 = new StringBuilder();
            String v2_1 = System.getProperty("line.separator");
        } catch (String v0_4) {
            android.util.Log.w(com.rudraum.rudraumThumb2Thief.stuff.Util.TAG, "IOException when trying to read logcat.", v0_4);
            return "Exception grabbing logcat";
        }
        while(true) {
            String v3 = v1_0.readLine();
            if (v3 == null) {
                break;
            }
            v0_2.append(v3);
            v0_2.append(v2_1);
        }
        return v0_2.toString();
    }

Method org.joda.time.DateTimeZone.getDefaultProvider() calling method java.lang.System.getProperty()


    private static org.joda.time.tz.Provider getDefaultProvider()
    {
        Exception v0_5 = System.getProperty("org.joda.time.DateTimeZone.Provider");
        if (v0_5 == null) {
            Exception v0_4 = System.getProperty("org.joda.time.DateTimeZone.Folder");
        } else {
            try {
                return org.joda.time.DateTimeZone.validateProvider(((org.joda.time.tz.Provider) Class.forName(v0_5).newInstance()));
            } catch (Exception v0_2) {
                throw new RuntimeException(v0_2);
            }
        }
    }

Method org.joda.time.DateTimeZone.getDefaultNameProvider() calling method java.lang.System.getProperty()


    private static org.joda.time.tz.NameProvider getDefaultNameProvider()
    {
        org.joda.time.tz.DefaultNameProvider v0_0 = 0;
        try {
            Exception v1_2 = System.getProperty("org.joda.time.DateTimeZone.NameProvider");
        } catch (SecurityException) {
            if (v0_0 == null) {
                v0_0 = new org.joda.time.tz.DefaultNameProvider();
            }
            return v0_0;
        }
        if (v1_2 == null) {
        } else {
            try {
                v0_0 = ((org.joda.time.tz.NameProvider) Class.forName(v1_2).newInstance());
            } catch (Exception v1_1) {
                throw new RuntimeException(v1_1);
            }
        }
    }

Method org.joda.time.DateTimeZone.getDefault() calling method java.lang.System.getProperty()


    public static org.joda.time.DateTimeZone getDefault()
    {
        org.joda.time.DateTimeZone v0_1 = ((org.joda.time.DateTimeZone) org.joda.time.DateTimeZone.cDefault.get());
        if (v0_1 == null) {
            try {
                boolean v1_4 = System.getProperty("user.timezone");
            } catch (RuntimeException) {
                if (v0_1 != null) {
                    if (v0_1 == null) {
                        v0_1 = org.joda.time.DateTimeZone.UTC;
                    }
                    if (!org.joda.time.DateTimeZone.cDefault.compareAndSet(0, v0_1)) {
                        v0_1 = ((org.joda.time.DateTimeZone) org.joda.time.DateTimeZone.cDefault.get());
                    }
                } else {
                    v0_1 = org.joda.time.DateTimeZone.forTimeZone(java.util.TimeZone.getDefault());
                }
            } catch (IllegalArgumentException) {
            }
            if (!v1_4) {
            } else {
                v0_1 = org.joda.time.DateTimeZone.forID(v1_4);
            }
        }
        return v0_1;
    }

Method com.bumptech.glide.load.model.LazyHeaders$Builder.getSanitizedUserAgent() calling method java.lang.System.getProperty()


    static String getSanitizedUserAgent()
    {
        String v0_2 = System.getProperty("http.agent");
        if (!android.text.TextUtils.isEmpty(v0_2)) {
            int v1_1 = v0_2.length();
            StringBuilder v2_0 = new StringBuilder(v0_2.length());
            int v3_1 = 0;
            while (v3_1 < v1_1) {
                int v4_0 = v0_2.charAt(v3_1);
                if (((v4_0 <= 31) && (v4_0 != 9)) || (v4_0 >= 127)) {
                    v2_0.append(63);
                } else {
                    v2_0.append(v4_0);
                }
                v3_1++;
            }
            return v2_0.toString();
        } else {
            return v0_2;
        }
    }

Method android.support.multidex.MultiDex.doInstallation() calling method java.lang.System.getProperty()


    private static void doInstallation(android.content.Context p5, java.io.File p6, java.io.File p7, String p8, String p9, boolean p10)
    {
        try {
            if (!android.support.multidex.MultiDex.installedApk.contains(p6)) {
                android.support.multidex.MultiDex.installedApk.add(p6);
                if (android.os.Build$VERSION.SDK_INT > 20) {
                    String v3_1 = new StringBuilder();
                    v3_1.append("MultiDex is not guaranteed to work in SDK version ");
                    v3_1.append(android.os.Build$VERSION.SDK_INT);
                    v3_1.append(": SDK version higher than ");
                    v3_1.append(20);
                    v3_1.append(" should be backed by ");
                    v3_1.append("runtime with built-in multidex capabilty but it\'s not the ");
                    v3_1.append("case here: java.vm.version=\"");
                    v3_1.append(System.getProperty("java.vm.version"));
                    v3_1.append("\"");
                    android.util.Log.w("MultiDex", v3_1.toString());
                }
                ClassLoader v1_3 = p5.getClassLoader();
                if (v1_3 != null) {
                    try {
                        android.support.multidex.MultiDex.clearOldDexDir(p5);
                    } catch (java.io.IOException v2_7) {
                        android.util.Log.w("MultiDex", "Something went wrong when trying to clear old MultiDex extraction, continuing without cleaning.", v2_7);
                    }
                    java.io.File v7_2 = android.support.multidex.MultiDex.getDexDir(p5, p7, p8);
                    android.support.multidex.MultiDexExtractor v8_2 = new android.support.multidex.MultiDexExtractor(p6, v7_2);
                    java.io.IOException v6_2 = 0;
                    try {
                        try {
                            android.support.multidex.MultiDex.installSecondaryDexes(v1_3, v7_2, v8_2.load(p5, p9, 0));
                        } catch (java.io.IOException v2_10) {
                            if (p10 == 0) {
                                throw v2_10;
                            } else {
                                android.util.Log.w("MultiDex", "Failed to install extracted secondary dex files, retrying with forced extraction", v2_10);
                                android.support.multidex.MultiDex.installSecondaryDexes(v1_3, v7_2, v8_2.load(p5, p9, 1));
                            }
                        }
                        try {
                            v8_2.close();
                        } catch (java.io.IOException v6_2) {
                        }
                        if (v6_2 != null) {
                            throw v6_2;
                        } else {
                            return;
                        }
                    } catch (java.util.List v5_3) {
                        v8_2.close();
                        throw v5_3;
                    }
                } else {
                    android.util.Log.e("MultiDex", "Context class loader is null. Must be running in test mode. Skip patching.");
                    return;
                }
            } else {
                return;
            }
        } catch (java.util.List v5_5) {
            throw v5_5;
        }
    }

Method android.support.multidex.MultiDex.<clinit>() calling method java.lang.System.getProperty()


    static MultiDex()
    {
        android.support.multidex.MultiDex.installedApk = new java.util.HashSet();
        android.support.multidex.MultiDex.IS_VM_MULTIDEX_CAPABLE = android.support.multidex.MultiDex.isVMMultidexCapable(System.getProperty("java.vm.version"));
        return;
    }

Method android.support.multidex.MultiDex$V4.install() calling method dalvik.system.DexFile.loadDex()


    static void install(ClassLoader p10, java.util.List p11)
    {
        dalvik.system.DexFile[] v0_0 = p11.size();
        reflect.Field v1_1 = android.support.multidex.MultiDex.access$000(p10, "path");
        StringBuilder v2_1 = new StringBuilder(((String) v1_1.get(p10)));
        String[] v3_0 = new String[v0_0];
        java.io.File[] v4 = new java.io.File[v0_0];
        java.util.zip.ZipFile[] v5 = new java.util.zip.ZipFile[v0_0];
        dalvik.system.DexFile[] v0_1 = new dalvik.system.DexFile[v0_0];
        String v11_1 = p11.listIterator();
        while (v11_1.hasNext()) {
            dalvik.system.DexFile v6_2 = ((java.io.File) v11_1.next());
            String v7 = v6_2.getAbsolutePath();
            v2_1.append(58);
            v2_1.append(v7);
            int v8_1 = v11_1.previousIndex();
            v3_0[v8_1] = v7;
            v4[v8_1] = v6_2;
            v5[v8_1] = new java.util.zip.ZipFile(v6_2);
            dalvik.system.DexFile v6_4 = new StringBuilder();
            v6_4.append(v7);
            v6_4.append(".dex");
            v0_1[v8_1] = dalvik.system.DexFile.loadDex(v7, v6_4.toString(), 0);
        }
        v1_1.set(p10, v2_1.toString());
        android.support.multidex.MultiDex.access$100(p10, "mPaths", v3_0);
        android.support.multidex.MultiDex.access$100(p10, "mFiles", v4);
        android.support.multidex.MultiDex.access$100(p10, "mZips", v5);
        android.support.multidex.MultiDex.access$100(p10, "mDexs", v0_1);
        return;
    }

Method android.support.multidex.MultiDex$V14.makeDexElements() calling method dalvik.system.DexFile.loadDex()


    private Object[] makeDexElements(java.util.List p8)
    {
        Object[] v0_1 = new Object[p8.size()];
        int v2 = 0;
        while (v2 < v0_1.length) {
            Object v3_0 = ((java.io.File) p8.get(v2));
            v0_1[v2] = this.elementConstructor.newInstance(v3_0, dalvik.system.DexFile.loadDex(v3_0.getPath(), android.support.multidex.MultiDex$V14.optimizedPathFor(v3_0), 0));
            v2++;
        }
        return v0_1;
    }

Method com.google.android.gms.dynamite.zzh.<init>() calling method dalvik.system.PathClassLoader.<init>()


    zzh(String p1, ClassLoader p2)
    {
        super(p1, p2);
        return;
    }

Method com.google.android.gms.internal.zzdm.zza() calling method dalvik.system.DexClassLoader.<init>()


    public static com.google.android.gms.internal.zzdm zza(android.content.Context p8, String p9, String p10, boolean p11)
    {
        void v0_1 = new com.google.android.gms.internal.zzdm(p8);
        try {
            v0_1.zzais = java.util.concurrent.Executors.newCachedThreadPool();
            v0_1.zzahr = p11;
        } catch (com.google.android.gms.internal.zzdj) {
            return v0_1;
        }
        if (p11 != null) {
            v0_1.zzaix = v0_1.zzais.submit(new com.google.android.gms.internal.zzdn(v0_1));
        }
        v0_1.zzais.execute(new com.google.android.gms.internal.zzdp(v0_1));
        String v2_3;
        String v1_0 = com.google.android.gms.common.zzf.zzafy();
        if (com.google.android.gms.common.zzf.zzcf(v0_1.zzair) <= 0) {
            v2_3 = 0;
        } else {
            v2_3 = 1;
        }
        String v1_2;
        v0_1.zzajc = v2_3;
        if (v1_0.isGooglePlayServicesAvailable(v0_1.zzair) != 0) {
            v1_2 = 0;
        } else {
            v1_2 = 1;
        }
        v0_1.zzajd = v1_2;
        v0_1.zza(0, 1);
        if (com.google.android.gms.internal.zzdr.zzau()) {
            if (((Boolean) com.google.android.gms.internal.zzkb.zzif().zzd(com.google.android.gms.internal.zznh.zzbnv)).booleanValue()) {
                throw new IllegalStateException("Task Context initialization must not be called from the UI thread.");
            } else {
            }
        }
        v0_1.zzaiu = new com.google.android.gms.internal.zzcx(0);
        v0_1.zzaiv = v0_1.zzaiu.zzl(p9);
        try {
            android.content.IntentFilter v9_24 = v0_1.zzair.getCacheDir();
        } catch (String v8_4) {
            throw new com.google.android.gms.internal.zzdj(v8_4);
        }
        if (v9_24 == null) {
            v9_24 = v0_1.zzair.getDir("dex", 0);
            if (v9_24 == null) {
                throw new com.google.android.gms.internal.zzdj();
            } else {
            }
        }
        String v6_1 = new Object[2];
        v6_1[0] = v9_24;
        v6_1[1] = "1505450608132";
        Object[] v3_3 = new java.io.File(String.format("%s/%s.jar", v6_1));
        if (!v3_3.exists()) {
            android.content.Context v10_9 = v0_1.zzaiu.zzb(v0_1.zzaiv, p10);
            v3_3.createNewFile();
            String v4_6 = new java.io.FileOutputStream(v3_3);
            v4_6.write(v10_9, 0, v10_9.length);
            v4_6.close();
        }
        v0_1.zzb(v9_24, "1505450608132");
        try {
            v0_1.zzait = new dalvik.system.DexClassLoader(v3_3.getAbsolutePath(), v9_24.getAbsolutePath(), 0, v0_1.zzair.getClassLoader());
        } catch (android.content.Context v10_3) {
            com.google.android.gms.internal.zzdm.zzb(v3_3);
            v0_1 = v0_1.zza(v9_24, "1505450608132");
            Object[] v3_0 = new Object[2];
            v3_0[0] = v9_24;
            v3_0[1] = "1505450608132";
            com.google.android.gms.internal.zzdm.zzm(String.format("%s/%s.dex", v3_0));
            throw v10_3;
        }
        com.google.android.gms.internal.zzdm.zzb(v3_3);
        v0_1 = v0_1.zza(v9_24, "1505450608132");
        Object[] v3_1 = new Object[2];
        v3_1[0] = v9_24;
        v3_1[1] = "1505450608132";
        com.google.android.gms.internal.zzdm.zzm(String.format("%s/%s.dex", v3_1));
        if (((Boolean) com.google.android.gms.internal.zzkb.zzif().zzd(com.google.android.gms.internal.zznh.zzbnn)).booleanValue()) {
            if (!v0_1.zzajh) {
                android.content.IntentFilter v9_16 = new android.content.IntentFilter();
                v9_16.addAction("android.intent.action.USER_PRESENT");
                v9_16.addAction("android.intent.action.SCREEN_OFF");
                v0_1.zzair.registerReceiver(new com.google.android.gms.internal.zzdm$zza(v0_1, 0), v9_16);
                v0_1.zzajh = 1;
            } else {
            }
        }
        v0_1.zzajb = new com.google.android.gms.internal.zzcp(v0_1);
        v0_1.zzajf = 1;
        return v0_1;
    }