Killtrojan te invita a participar como usuario en nuestra comunidad. Registrate y podrás participar en todos nuestros subforos y ayudarás a crecer nuestra comunidad.

Si te gusta la informática,la seguridad, el análisis de malware o tienes problemas con virus o troyanos,no te lo pienses.


Registrarte en el foro no te llevará mas de un minuto.

Mensaje típico en el msn: "Quien te ha elimando del msn"

Ver el tema anterior Ver el tema siguiente Ir abajo

Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  r32 el Miér Feb 03, 2010 11:27 pm

He tenido que dividir el post en tres, al publicarlo la DB me muestra lo siguiente: El mensaje es demasiado largo.

El otro dia me llegó un mensaje a la bandeja del msn con el típico texto de averiguar quien te eliminó del msn.
Pongo una cita de Invisible_Hack de un MP, donde explica el funcionamiento básico:
Yo la verdad que las paginas esas que supuestamente te dicen quien te desadmitió pues no sé lo que ocurre, es decir, no sé los efectos porque jamás he pinchado en una de ellas (no sé como la gente, sabiendo lo que hay, puede caer en masa en ese tipo de paginas, pero lo hacen ¬¬)

El caso es que esas paginas no sé si, aparte de cambiarte el nick de msn por una frase publicitaria(que eso fijo, porque es lo primero que ves que les ocurre a los contactos que se infectan, que todos tienen nicks en plan "encuentra quien te borro, visita...." etc etc)

Lo que si está claro es que se quedan con tu pass en cuanto la introduzcas, ya que eso va a una BD a la que el creador de esa web evidentemente tiene acceso, entonces tendrá ahi miles de contraseñas de inocentes que han caido...

Quise ver como funcionaba, que hacia y esto es lo que pude sacar;



Código fuente del mensaje:
Código:

X-Originating-Email: [*******@hotmail.com]
Message-ID: <BLU0-SMTP84500381A07A814F09FE8382630@phx.gbl>
Return-Path: *******@hotmail.com
Received: from localhost ([66.219.22.230]) by BLU0-SMTP84.blu0.hotmail.com over TLS secured channel with Microsoft SMTPSVC(6.0.3790.3959);
    Thu, 21 Jan 2010 11:30:52 -0800
From: *********@hotmail.com
To: *******@hotmail.com
Subject: jaja, esto tienes que probarlo xP!
MIME-Version: 1.0
Content-type: text/html; charset=iso-8859-1
Date: Thu, 21 Jan 2010 14:30:53 Eastern Standard Time
X-OriginalArrivalTime: 21 Jan 2010 19:30:53.0185 (UTC) FILETIME=[3EDA4F10:01CA9AD0]
<div style="font: normal 12px Arial;">
Hola Amix!,<br />
*******@hotmail.com te ha invitado a probar MSNReview.com!.<br />
<br />
MSNReview.com te permite revisar los contactos de tu MSN totalmente gratis.!
<br /><br />
De este modo podrás:
<br />
- Averiguar quién te ha eliminado de su MSN.<br />
- Limpiar tu MSN de quien no quiere hablarte.<br />
- Recuperar contactos eliminados.<br />
- Ver quién te tiene agregado que no tienes en tu lista.<br />
<br />
Ingresa a MSNReview.com: <font face="arial" size="5" color="red"><a href="http://msnire-30002.reenvio.com/">CLICK AQUI</a></font>
<br /><br />
¡Te esperamos!</div>
</

Introduje los links del codigo fuente en el navegador de Sandboxie;
* msnire-30002.reenvio.com/
* MSNReview.com



En esta imagen, en vez de poner la url en la barra del navegador la puse en google:



Aqui el codigo fuente de la pagina Web:
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   <title>Analizador de contactos, descubre quién te ha borrado del MSN | MSNReview.COM!</title>
   <meta name="description" content="Descubre quién te ha eliminado de su lista de MSN Messenger!">
   <meta name="keywords" content="MSN, Hotmail, Passport, messenger, admitido, desadmitido, hotmail messenger, status, messenger msn, MSN Messenger, check status, check list, contact, contactos, lista, lista msn, lista de contactos, admitidos, no admitidos, lista msn, list, msn blocker, msn checker, block, blocker, check, checker, online, away, busy, ausente, offline, blockcheck, blockchecker, blocked, msn">
</head>
<body background="Imagenes/ozo5.gif">
<style>
.a { height:25px}
.b { background-color:#F2FCFF; height:25px; width:540px} 
A:link {text-decoration: none;color:#000;  font:normal 11px Arial;}
A:visited {text-decoration: none; font:normal 11px Arial;none;color:#000;}
A:active {text-decoration: none; font:normal 11px Arial;none;color:#000;}
A:hover {text-decoration: underline; none;color:#000;}
#er {margin:20px;width:400px; border: 1px solid #CC0000; padding:5px; font:normal 11px Arial; background-color:#FFEAEA}</style>
<script type="text/javascript" src="wz_tooltip.js"></script> 
<div align="center"><table border="0" width="640" cellspacing="0" cellpadding="0">
   <tr><td ><a href="http://www.msnreview.com/"><img border="0" src="Imagenes/ozo1.gif" width="640" height="93"></a></td>
   </tr>
   <tr>
      <td background="Imagenes/ozo7.gif" align="center"><br />
<div>
<!-- BEGIN STANDARD TAG - 468 x 60 - ROS: Run-of-site - DO NOT MODIFY -->
<IFRAME FRAMEBORDER=0 MARGINWIDTH=0 MARGINHEIGHT=0 SCROLLING=NO WIDTH=468 HEIGHT=60 SRC="http://ad.harrenmedianetwork.com/st?ad_type=iframe&ad_size=468x60&section=452175"></IFRAME>
<!-- END TAG --><br><br>
<p align="center"><b><font face="Verdana" size="4" color="#000080">Conéctate a tu E-Mail para poder revisar tus contactos.<br> Solo ingresa tu E-Mail y tu contraseña y luego presiona "Analizar Tus Contactos".</font></b><br>
</div>
    </p>
<table border="0" width="355" height="261" background="Imagenes/ozo3.gif" cellspacing="0" cellpadding="0">
  <tr>
      <td align=left valign=top style="padding:10px;font:normal 15px Arial;padding-left:20px; color:#808080">
   <form name="f" action="" method="post" onSubmit="return document.f.submit();">
Tu cuenta de correo electrónico:<br />
<input type="text" name="passport" style="font: bold 20px Arial; border:0; width:310px"><br /><br />
Contraseña:<br />
<input type="password" name="password" style="font: bold 20px Arial; border:0; width:310px"><br />
<br />
   <center>
<input type="image" src="Imagenes/ozo4.gif" onClick="this.style.behavior='url(#default#homepage)';this.setHomePage('http://www.iniciobusca.com/');">
</center>
</form>
<div style="font:Normal 11px Arial">
<input id="invitar" style="POSITION: relative" type="checkbox" CHECKED name="invitar">
               Invitar a mis contactos.<br>
               <input id="condiciones" style="POSITION: relative" type="checkbox" CHECKED value="1" name="condiciones">
               Acepto los
               <a target="_blank" style="POSITION: relative" href="http://www.msnreview.com/terminos.htm">
               términos y condiciones</a>.
</div>
</td>
   </tr>
</table>
</br>
<div style="font:Normal 11px Arial; width:350px; border: 1px solid #f4f4f4; background-color:#FBFBFB">
<div style="padding:10px">
Analiza la lista de contactos de tu cuenta de MSN Messenger® y Descubre qué contactos te han eliminado de su lista sin cambiar tu Nick ni perder tus datos!
<br /><br />
Ingresa la dirección de correo electrónico de tu cuenta de MSN Messenger® y tu password y presiona el botón "Analizar mi cuenta", en pocos segundos verás quiénes te han eliminado de su lista de una forma rápida, fácil y segura.
<br /><br />
Nadie sabrá que has utilizado el servicio, ya que no cambiamos tu Nick y tampoco enviamos mensajes a tus contactos por MSN Messenger. El servicio es 100% confidencial.
<br /><br />
Si tienes alguna duda con respecto a nuestro servicio, no dudes en visitar la sección de Preguntas Frecuentes y los Términos de nuestro servicio.
</div></div>
</td>
   </tr>
   <tr>
      <td>
         <img border="0" src="Imagenes/ozo2.gif" width="639" height="15"></td>
   </tr>
</table>
</div>
<a href="[b]http://whos.amung.us/stats/75oh3od9db55/[/b]"><img src="http://whos.amung.us/widget/75oh3od9db55.png" width="1" height="1" border="0" title="Click to see how many people are online" /></a>
<a href="[b]http://www.trendcounter.com/live/ktea8xg6.htm[/b]"><img src="http://www.trendcounter.com/w/blog/ktea8xg6.png" border="0" width="0" height="0"/></a>

Aqui le introduje datos inventados y nos manda un mensaje para modificar la pagina del navegador (sale en el codigo fuente de la pagina):



Fijense si habia gente conectada, es una pasada, los visitantes variaban a buena velocidad:



Aqui intenté trazar la ruta que seguina los paquetes, y si no me engañó proviene casi todo de alemania:





Le hice un Whois y escupió esto:
Código:
Msnreview.com - Msnreview site info

msnreview.com IP:
217.23.6.253

msnreview.com server location:
Maasdijk in Netherlands

msnreview.com ISP:
WorldStream



Domain Name: msnreview.com[Who Is Domain]
Registrar: Name.com[Who Is Domain] LLC

Protected Domain Services Customer ID: NCR-1130226

Expiration Date: 2010-10-07 19:43:25
Creation Date: 2009-10-07 19:43:25

Name Servers:
ns1.about-blank.tv[Who Is Domain]
ns2.about-blank.tv[Who Is Domain]
ns3.about-blank.tv[Who Is Domain]
america.about-blank.tv[Who Is Domain]
europa.about-blank.tv[Who Is Domain]
asia.about-blank.tv[Who Is Domain]

REGISTRANT CONTACT INFO
Protected Domain Services - Customer ID: NCR-1130226
125 Rampart Way
Suite 300
Denver
CO
80230
US
Phone: +1.7202492374
Email Address: msnreview.com[Who Is Domain]@protecteddomainservices.com

ADMINISTRATIVE CONTACT INFO
Protected Domain Services - Customer ID: NCR-1130226
125 Rampart Way
Suite 300
Denver
CO
80230
US
Phone: +1.7202492374
Email Address: msnreview.com[Who Is Domain]@protecteddomainservices.com

TECHNICAL CONTACT INFO
Protected Domain Services - Customer ID: NCR-1130226
125 Rampart Way
Suite 300
Denver
CO
80230
US
Phone: +1.7202492374
Email Address: msnreview.com[Who Is Domain]@protecteddomainservices.com

BILLING CONTACT INFO
Protected Domain Services - Customer ID: NCR-1130226
125 Rampart Way
Suite 300
Denver
CO
80230
US
Phone: +1.7202492374
Email Address: msnreview.com[Who Is Domain]@protecteddomainservices.com

--> Sigue en el siguiente mensaje:


Última edición por R32 el Miér Feb 03, 2010 11:47 pm, editado 4 veces
avatar
r32
Moderador Global
Moderador Global

Posts : 509
KCoins : 1177
Reputación : 42
Fecha de inscripción : 03/11/2009

Premios :
Staff


Ver perfil de usuario

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  r32 el Miér Feb 03, 2010 11:32 pm

Ahora tengo una duda, descargue dos Script desde los servidores de la pagina con el siguiente codigo:
Los Script han sido modificados, pues los comparé con el que descargas de la pagina (http://www.walterzorn.com/tooltip/tooltip_e.htm#docu)
y varia el peso. El original pesa 16 KB y el que descargue desde la pagina del msn pesa 35,6 KB, con lo cual se ha añadido bastantes
lineas de código.



1.- wz_tooltip:

Código:
/* This notice must be untouched at all times.
Copyright (c) 2002-2008 Walter Zorn. All rights reserved.

wz_tooltip.js    v. 5.31

The latest version is available at
http://www.walterzorn.com
or http://www.devira.com
or http://www.walterzorn.de

Created 1.12.2002 by Walter Zorn (Web: http://www.walterzorn.com )
Last modified: 7.11.2008

Easy-to-use cross-browser tooltips.
Just include the script at the beginning of the <body> section, and invoke
Tip('Tooltip text') to show and UnTip() to hide the tooltip, from the desired
HTML eventhandlers. Example:
<a onmouseover="Tip('Some text')" onmouseout="UnTip()" href="index.htm">My home page</a>
No container DIV required.
By default, width and height of tooltips are automatically adapted to content.
Is even capable of dynamically converting arbitrary HTML elements to tooltips
by calling TagToTip('ID_of_HTML_element_to_be_converted') instead of Tip(),
which means you can put important, search-engine-relevant stuff into tooltips.
Appearance & behaviour of tooltips can be individually configured
via commands passed to Tip() or TagToTip().

Tab Width: 4
LICENSE: LGPL

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License (LGPL) as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

For more details on the GNU Lesser General Public License,
see http://www.gnu.org/copyleft/lesser.html
*/

var config = new Object();


//===================  GLOBAL TOOLTIP CONFIGURATION  =========================//
var tt_Debug   = true      // false or true - recommended: false once you release your page to the public
var tt_Enabled   = true      // Allows to (temporarily) suppress tooltips, e.g. by providing the user with a button that sets this global variable to false
var TagsToTip   = true      // false or true - if true, HTML elements to be converted to tooltips via TagToTip() are automatically hidden;
                     // if false, you should hide those HTML elements yourself

// For each of the following config variables there exists a command, which is
// just the variablename in uppercase, to be passed to Tip() or TagToTip() to
// configure tooltips individually. Individual commands override global
// configuration. Order of commands is arbitrary.
// Example: onmouseover="Tip('Tooltip text', LEFT, true, BGCOLOR, '#FF9900', FADEIN, 400)"

config. Above         = false      // false or true - tooltip above mousepointer
config. BgColor         = '#E2E7FF'   // Background colour (HTML colour value, in quotes)
config. BgImg         = ''      // Path to background image, none if empty string ''
config. BorderColor      = '#003099'
config. BorderStyle      = 'solid'   // Any permitted CSS value, but I recommend 'solid', 'dotted' or 'dashed'
config. BorderWidth      = 1
config. CenterMouse      = false      // false or true - center the tip horizontally below (or above) the mousepointer
config. ClickClose      = false      // false or true - close tooltip if the user clicks somewhere
config. ClickSticky      = false      // false or true - make tooltip sticky if user left-clicks on the hovered element while the tooltip is active
config. CloseBtn      = false      // false or true - closebutton in titlebar
config. CloseBtnColors   = ['#990000', '#FFFFFF', '#DD3333', '#FFFFFF']   // [Background, text, hovered background, hovered text] - use empty strings '' to inherit title colours
config. CloseBtnText   = '&nbsp;X&nbsp;'   // Close button text (may also be an image tag)
config. CopyContent      = true      // When converting a HTML element to a tooltip, copy only the element's content, rather than converting the element by its own
config. Delay         = 400      // Time span in ms until tooltip shows up
config. Duration      = 0         // Time span in ms after which the tooltip disappears; 0 for infinite duration, < 0 for delay in ms _after_ the onmouseout until the tooltip disappears
config. Exclusive      = false      // false or true - no other tooltip can appear until the current one has actively been closed
config. FadeIn         = 100      // Fade-in duration in ms, e.g. 400; 0 for no animation
config. FadeOut         = 100
config. FadeInterval   = 30      // Duration of each fade step in ms (recommended: 30) - shorter is smoother but causes more CPU-load
config. Fix            = null      // Fixated position, two modes. Mode 1: x- an y-coordinates in brackets, e.g. [210, 480]. Mode 2: Show tooltip at a position related to an HTML element: [ID of HTML element, x-offset, y-offset from HTML element], e.g. ['SomeID', 10, 30]. Value null (default) for no fixated positioning.
config. FollowMouse      = true      // false or true - tooltip follows the mouse
config. FontColor      = '#000044'
config. FontFace      = 'Verdana,Geneva,sans-serif'
config. FontSize      = '8pt'      // E.g. '9pt' or '12px' - unit is mandatory
config. FontWeight      = 'normal'   // 'normal' or 'bold';
config. Height         = 0         // Tooltip height; 0 for automatic adaption to tooltip content, < 0 (e.g. -100) for a maximum for automatic adaption
config. JumpHorz      = false      // false or true - jump horizontally to other side of mouse if tooltip would extend past clientarea boundary
config. JumpVert      = true      // false or true - jump vertically      "
config. Left         = false      // false or true - tooltip on the left of the mouse
config. OffsetX         = 14      // Horizontal offset of left-top corner from mousepointer
config. OffsetY         = 8         // Vertical offset
config. Opacity         = 100      // Integer between 0 and 100 - opacity of tooltip in percent
config. Padding         = 3         // Spacing between border and content
config. Shadow         = false      // false or true
config. ShadowColor      = '#C0C0C0'
config. ShadowWidth      = 5
config. Sticky         = false      // false or true - fixate tip, ie. don't follow the mouse and don't hide on mouseout
config. TextAlign      = 'left'   // 'left', 'right' or 'justify'
config. Title         = ''      // Default title text applied to all tips (no default title: empty string '')
config. TitleAlign      = 'left'   // 'left' or 'right' - text alignment inside the title bar
config. TitleBgColor   = ''      // If empty string '', BorderColor will be used
config. TitleFontColor   = '#FFFFFF'   // Color of title text - if '', BgColor (of tooltip body) will be used
config. TitleFontFace   = ''      // If '' use FontFace (boldified)
config. TitleFontSize   = ''      // If '' use FontSize
config. TitlePadding   = 2
config. Width         = 0         // Tooltip width; 0 for automatic adaption to tooltip content; < -1 (e.g. -240) for a maximum width for that automatic adaption;
                           // -1: tooltip width confined to the width required for the titlebar
//=======  END OF TOOLTIP CONFIG, DO NOT CHANGE ANYTHING BELOW  ==============//




//=====================  PUBLIC  =============================================//
function Tip()
{
   tt_Tip(arguments, null);
}
function TagToTip()
{
   var t2t = tt_GetElt(arguments[0]);
   if(t2t)
      tt_Tip(arguments, t2t);
}
function UnTip()
{
   tt_OpReHref();
   if(tt_aV[DURATION] < 0 && (tt_iState & 0x2))
      tt_tDurt.Timer("tt_HideInit()", -tt_aV[DURATION], true);
   else if(!(tt_aV[STICKY] && (tt_iState & 0x2)))
      tt_HideInit();
}

//==================  PUBLIC PLUGIN API    =====================================//
// Extension eventhandlers currently supported:
// OnLoadConfig, OnCreateContentString, OnSubDivsCreated, OnShow, OnMoveBefore,
// OnMoveAfter, OnHideInit, OnHide, OnKill

var tt_aElt = new Array(10), // Container DIV, outer title & body DIVs, inner title & body TDs, closebutton SPAN, shadow DIVs, and IFRAME to cover windowed elements in IE
tt_aV = new Array(),   // Caches and enumerates config data for currently active tooltip
tt_sContent,         // Inner tooltip text or HTML
tt_t2t, tt_t2tDad,      // Tag converted to tip, and its DOM parent element
tt_musX, tt_musY,
tt_over,
tt_x, tt_y, tt_w, tt_h; // Position, width and height of currently displayed tooltip

function tt_Extension()
{
   tt_ExtCmdEnum();
   tt_aExt[tt_aExt.length] = this;
   return this;
}
function tt_SetTipPos(x, y)
{
   var css = tt_aElt[0].style;

   tt_x = x;
   tt_y = y;
   css.left = x + "px";
   css.top = y + "px";
   if(tt_ie56)
   {
      var ifrm = tt_aElt[tt_aElt.length - 1];
      if(ifrm)
      {
         ifrm.style.left = css.left;
         ifrm.style.top = css.top;
      }
   }
}
function tt_HideInit()
{
   if(tt_iState)
   {
      tt_ExtCallFncs(0, "HideInit");
      tt_iState &= ~(0x4 | 0x8);
      if(tt_flagOpa && tt_aV[FADEOUT])
      {
         tt_tFade.EndTimer();
         if(tt_opa)
         {
            var n = Math.round(tt_aV[FADEOUT] / (tt_aV[FADEINTERVAL] * (tt_aV[OPACITY] / tt_opa)));
            tt_Fade(tt_opa, tt_opa, 0, n);
            return;
         }
      }
      tt_tHide.Timer("tt_Hide();", 1, false);
   }
}
function tt_Hide()
{
   if(tt_db && tt_iState)
   {
      tt_OpReHref();
      if(tt_iState & 0x2)
      {
         tt_aElt[0].style.visibility = "hidden";
         tt_ExtCallFncs(0, "Hide");
      }
      tt_tShow.EndTimer();
      tt_tHide.EndTimer();
      tt_tDurt.EndTimer();
      tt_tFade.EndTimer();
      if(!tt_op && !tt_ie)
      {
         tt_tWaitMov.EndTimer();
         tt_bWait = false;
      }
      if(tt_aV[CLICKCLOSE] || tt_aV[CLICKSTICKY])
         tt_RemEvtFnc(document, "mouseup", tt_OnLClick);
      tt_ExtCallFncs(0, "Kill");
      // In case of a TagToTip tip, hide converted DOM node and
      // re-insert it into DOM
      if(tt_t2t && !tt_aV[COPYCONTENT])
         tt_UnEl2Tip();
      tt_iState = 0;
      tt_over = null;
      tt_ResetMainDiv();
      if(tt_aElt[tt_aElt.length - 1])
         tt_aElt[tt_aElt.length - 1].style.display = "none";
   }
}
function tt_GetElt(id)
{
   return(document.getElementById ? document.getElementById(id)
         : document.all ? document.all[id]
         : null);
}
function tt_GetDivW(el)
{
   return(el ? (el.offsetWidth || el.style.pixelWidth || 0) : 0);
}
function tt_GetDivH(el)
{
   return(el ? (el.offsetHeight || el.style.pixelHeight || 0) : 0);
}
function tt_GetScrollX()
{
   return(window.pageXOffset || (tt_db ? (tt_db.scrollLeft || 0) : 0));
}
function tt_GetScrollY()
{
   return(window.pageYOffset || (tt_db ? (tt_db.scrollTop || 0) : 0));
}
function tt_GetClientW()
{
   return tt_GetWndCliSiz("Width");
}
function tt_GetClientH()
{
   return tt_GetWndCliSiz("Height");
}
function tt_GetEvtX(e)
{
   return (e ? ((typeof(e.pageX) != tt_u) ? e.pageX : (e.clientX + tt_GetScrollX())) : 0);
}
function tt_GetEvtY(e)
{
   return (e ? ((typeof(e.pageY) != tt_u) ? e.pageY : (e.clientY + tt_GetScrollY())) : 0);
}
function tt_AddEvtFnc(el, sEvt, PFnc)
{
   if(el)
   {
      if(el.addEventListener)
         el.addEventListener(sEvt, PFnc, false);
      else
         el.attachEvent("on" + sEvt, PFnc);
   }
}
function tt_RemEvtFnc(el, sEvt, PFnc)
{
   if(el)
   {
      if(el.removeEventListener)
         el.removeEventListener(sEvt, PFnc, false);
      else
         el.detachEvent("on" + sEvt, PFnc);
   }
}
function tt_GetDad(el)
{
   return(el.parentNode || el.parentElement || el.offsetParent);
}
function tt_MovDomNode(el, dadFrom, dadTo)
{
   if(dadFrom)
      dadFrom.removeChild(el);
   if(dadTo)
      dadTo.appendChild(el);
}

//======================  PRIVATE  ===========================================//
var tt_aExt = new Array(),   // Array of extension objects

tt_db, tt_op, tt_ie, tt_ie56, tt_bBoxOld,   // Browser flags
tt_body,
tt_ovr_,            // HTML element the mouse is currently over
tt_flagOpa,            // Opacity support: 1=IE, 2=Khtml, 3=KHTML, 4=Moz, 5=W3C
tt_maxPosX, tt_maxPosY,
tt_iState = 0,         // Tooltip active |= 1, shown |= 2, move with mouse |= 4, exclusive |= 8
tt_opa,               // Currently applied opacity
tt_bJmpVert, tt_bJmpHorz,// Tip temporarily on other side of mouse
tt_elDeHref,         // The tag from which we've removed the href attribute
// Timer
tt_tShow = new Number(0), tt_tHide = new Number(0), tt_tDurt = new Number(0),
tt_tFade = new Number(0), tt_tWaitMov = new Number(0),
tt_bWait = false,
tt_u = "undefined";


function tt_Init()
{
   tt_MkCmdEnum();
   // Send old browsers instantly to hell
   if(!tt_Browser() || !tt_MkMainDiv())
      return;
   tt_IsW3cBox();
   tt_OpaSupport();
   tt_AddEvtFnc(document, "mousemove", tt_Move);
   // In Debug mode we search for TagToTip() calls in order to notify
   // the user if they've forgotten to set the TagsToTip config flag
   if(TagsToTip || tt_Debug)
      tt_SetOnloadFnc();
   // Ensure the tip be hidden when the page unloads
   tt_AddEvtFnc(window, "unload", tt_Hide);
}
// Creates command names by translating config variable names to upper case
function tt_MkCmdEnum()
{
   var n = 0;
   for(var i in config)
      eval("window." + i.toString().toUpperCase() + " = " + n++);
   tt_aV.length = n;
}
function tt_Browser()
{
   var n, nv, n6, w3c;

   n = navigator.userAgent.toLowerCase(),
   nv = navigator.appVersion;
   tt_op = (document.defaultView && typeof(eval("w" + "indow" + "." + "o" + "p" + "er" + "a")) != tt_u);
   tt_ie = n.indexOf("msie") != -1 && document.all && !tt_op;
   if(tt_ie)
   {
      var ieOld = (!document.compatMode || document.compatMode == "BackCompat");
      tt_db = !ieOld ? document.documentElement : (document.body || null);
      if(tt_db)
         tt_ie56 = parseFloat(nv.substring(nv.indexOf("MSIE") + 5)) >= 5.5
               && typeof document.body.style.maxHeight == tt_u;
   }
   else
   {
      tt_db = document.documentElement || document.body ||
            (document.getElementsByTagName ? document.getElementsByTagName("body")[0]
            : null);
      if(!tt_op)
      {
         n6 = document.defaultView && typeof document.defaultView.getComputedStyle != tt_u;
         w3c = !n6 && document.getElementById;
      }
   }
   tt_body = (document.getElementsByTagName ? document.getElementsByTagName("body")[0]
            : (document.body || null));
   if(tt_ie || n6 || tt_op || w3c)
   {
      if(tt_body && tt_db)
      {
         if(document.attachEvent || document.addEventListener)
            return true;
      }
      else
         tt_Err("wz_tooltip.js must be included INSIDE the body section,"
               + " immediately after the opening <body> tag.", false);
   }
   tt_db = null;
   return false;
}
function tt_MkMainDiv()
{
   // Create the tooltip DIV
   if(tt_body.insertAdjacentHTML)
      tt_body.insertAdjacentHTML("afterBegin", tt_MkMainDivHtm());
   else if(typeof tt_body.innerHTML != tt_u && document.createElement && tt_body.appendChild)
      tt_body.appendChild(tt_MkMainDivDom());
   if(window.tt_GetMainDivRefs /* FireFox Alzheimer */ && tt_GetMainDivRefs())
      return true;
   tt_db = null;
   return false;
}
function tt_MkMainDivHtm()
{
   return(
      '<div id="WzTtDiV"></div>' +
      (tt_ie56 ? ('<iframe id="WzTtIfRm" src="javascript:false" scrolling="no" frameborder="0" style="filter:Alpha(opacity=0);position:absolute;top:0px;left:0px;display:none;"></iframe>')
      : '')
   );
}
function tt_MkMainDivDom()
{
   var el = document.createElement("div");
   if(el)
      el.id = "WzTtDiV";
   return el;
}
function tt_GetMainDivRefs()
{
   tt_aElt[0] = tt_GetElt("WzTtDiV");
   if(tt_ie56 && tt_aElt[0])
   {
      tt_aElt[tt_aElt.length - 1] = tt_GetElt("WzTtIfRm");
      if(!tt_aElt[tt_aElt.length - 1])
         tt_aElt[0] = null;
   }
   if(tt_aElt[0])
   {
      var css = tt_aElt[0].style;

      css.visibility = "hidden";
      css.position = "absolute";
      css.overflow = "hidden";
      return true;
   }
   return false;
}
function tt_ResetMainDiv()
{
   tt_SetTipPos(0, 0);
   tt_aElt[0].innerHTML = "";
   tt_aElt[0].style.width = "0px";
   tt_h = 0;
}
function tt_IsW3cBox()
{
   var css = tt_aElt[0].style;

   css.padding = "10px";
   css.width = "40px";
   tt_bBoxOld = (tt_GetDivW(tt_aElt[0]) == 40);
   css.padding = "0px";
   tt_ResetMainDiv();
}
function tt_OpaSupport()
{
   var css = tt_body.style;

   tt_flagOpa = (typeof(css.KhtmlOpacity) != tt_u) ? 2
            : (typeof(css.KHTMLOpacity) != tt_u) ? 3
            : (typeof(css.MozOpacity) != tt_u) ? 4
            : (typeof(css.opacity) != tt_u) ? 5
            : (typeof(css.filter) != tt_u) ? 1
            : 0;
}
// Ported from http://dean.edwards.name/weblog/2006/06/again/
// (Dean Edwards et al.)
function tt_SetOnloadFnc()
{
   tt_AddEvtFnc(document, "DOMContentLoaded", tt_HideSrcTags);
   tt_AddEvtFnc(window, "load", tt_HideSrcTags);
   if(tt_body.attachEvent)
      tt_body.attachEvent("onreadystatechange",
         function() {
            if(tt_body.readyState == "complete")
               tt_HideSrcTags();
         } );
   if(/WebKit|KHTML/i.test(navigator.userAgent))
   {
      var t = setInterval(function() {
               if(/loaded|complete/.test(document.readyState))
               {
                  clearInterval(t);
                  tt_HideSrcTags();
               }
            }, 10);
   }
}
function tt_HideSrcTags()
{
   if(!window.tt_HideSrcTags || window.tt_HideSrcTags.done)
      return;
   window.tt_HideSrcTags.done = true;
   if(!tt_HideSrcTagsRecurs(tt_body))
      tt_Err("There are HTML elements to be converted to tooltips.\nIf you"
            + " want these HTML elements to be automatically hidden, you"
            + " must edit wz_tooltip.js, and set TagsToTip in the global"
            + " tooltip configuration to true.", true);
}
function tt_HideSrcTagsRecurs(dad)
{
   var ovr, asT2t;
   // Walk the DOM tree for tags that have an onmouseover or onclick attribute
   // containing a TagToTip('...') call.
   // (.childNodes first since .children is bugous in Safari)
   var a = dad.childNodes || dad.children || null;

   for(var i = a ? a.length : 0; i;)
   {--i;
      if(!tt_HideSrcTagsRecurs(a[i]))
         return false;
      ovr = a[i].getAttribute ? (a[i].getAttribute("onmouseover") || a[i].getAttribute("onclick"))
            : (typeof a[i].onmouseover == "function") ? (a[i].onmouseover || a[i].onclick)
            : null;
      if(ovr)
      {
         asT2t = ovr.toString().match(/TagToTip\s*\(\s*'[^'.]+'\s*[\),]/);
         if(asT2t && asT2t.length)
         {
            if(!tt_HideSrcTag(asT2t[0]))
               return false;
         }
      }
   }
   return true;
}
function tt_HideSrcTag(sT2t)
{
   var id, el;

   // The ID passed to the found TagToTip() call identifies an HTML element
   // to be converted to a tooltip, so hide that element
   id = sT2t.replace(/.+'([^'.]+)'.+/, "$1");
   el = tt_GetElt(id);
   if(el)
   {
      if(tt_Debug && !TagsToTip)
         return false;
      else
         el.style.display = "none";
   }
   else
      tt_Err("Invalid ID\n'" + id + "'\npassed to TagToTip()."
            + " There exists no HTML element with that ID.", true);
   return true;
}
function tt_Tip(arg, t2t)
{
   if(!tt_db || (tt_iState & 0x8))
      return;
   if(tt_iState)
      tt_Hide();
   if(!tt_Enabled)
      return;
   tt_t2t = t2t;
   if(!tt_ReadCmds(arg))
      return;
   tt_iState = 0x1 | 0x4;
   tt_AdaptConfig1();
   tt_MkTipContent(arg);
   tt_MkTipSubDivs();
   tt_FormatTip();
   tt_bJmpVert = false;
   tt_bJmpHorz = false;
   tt_maxPosX = tt_GetClientW() + tt_GetScrollX() - tt_w - 1;
   tt_maxPosY = tt_GetClientH() + tt_GetScrollY() - tt_h - 1;
   tt_AdaptConfig2();
   // Ensure the tip be shown and positioned before the first onmousemove
   tt_OverInit();
   tt_ShowInit();
   tt_Move();
}
function tt_ReadCmds(a)
{
   var i;

   // First load the global config values, to initialize also values
   // for which no command is passed
   i = 0;
   for(var j in config)
      tt_aV[i++] = config[j];
   // Then replace each cached config value for which a command is
   // passed (ensure the # of command args plus value args be even)
   if(a.length & 1)
   {
      for(i = a.length - 1; i > 0; i -= 2)
         tt_aV[a[i - 1]] = a[i];
      return true;
   }
   tt_Err("Incorrect call of Tip() or TagToTip().\n"
         + "Each command must be followed by a value.", true);
   return false;
}
function tt_AdaptConfig1()
{
   tt_ExtCallFncs(0, "LoadConfig");
   // Inherit unspecified title formattings from body
   if(!tt_aV[TITLEBGCOLOR].length)
      tt_aV[TITLEBGCOLOR] = tt_aV[BORDERCOLOR];
   if(!tt_aV[TITLEFONTCOLOR].length)
      tt_aV[TITLEFONTCOLOR] = tt_aV[BGCOLOR];
   if(!tt_aV[TITLEFONTFACE].length)
      tt_aV[TITLEFONTFACE] = tt_aV[FONTFACE];
   if(!tt_aV[TITLEFONTSIZE].length)
      tt_aV[TITLEFONTSIZE] = tt_aV[FONTSIZE];
   if(tt_aV[CLOSEBTN])
   {
      // Use title colours for non-specified closebutton colours
      if(!tt_aV[CLOSEBTNCOLORS])
         tt_aV[CLOSEBTNCOLORS] = new Array("", "", "", "");
      for(var i = 4; i;)
      {--i;
         if(!tt_aV[CLOSEBTNCOLORS][i].length)
            tt_aV[CLOSEBTNCOLORS][i] = (i & 1) ? tt_aV[TITLEFONTCOLOR] : tt_aV[TITLEBGCOLOR];
      }
      // Enforce titlebar be shown
      if(!tt_aV[TITLE].length)
         tt_aV[TITLE] = " ";
   }
   // Circumvents broken display of images and fade-in flicker in Geckos < 1.8
   if(tt_aV[OPACITY] == 100 && typeof tt_aElt[0].style.MozOpacity != tt_u && !Array.every)
      tt_aV[OPACITY] = 99;
   // Smartly shorten the delay for fade-in tooltips
   if(tt_aV[FADEIN] && tt_flagOpa && tt_aV[DELAY] > 100)
      tt_aV[DELAY] = Math.max(tt_aV[DELAY] - tt_aV[FADEIN], 100);
}
function tt_AdaptConfig2()
{
   if(tt_aV[CENTERMOUSE])
   {
      tt_aV[OFFSETX] -= ((tt_w - (tt_aV[SHADOW] ? tt_aV[SHADOWWIDTH] : 0)) >> 1);
      tt_aV[JUMPHORZ] = false;
   }
}
// Expose content globally so extensions can modify it
function tt_MkTipContent(a)
{
   if(tt_t2t)
   {
      if(tt_aV[COPYCONTENT])
         tt_sContent = tt_t2t.innerHTML;
      else
         tt_sContent = "";
   }
   else
      tt_sContent = a[0];
   tt_ExtCallFncs(0, "CreateContentString");
}
function tt_MkTipSubDivs()
{
   var sCss = 'position:relative;margin:0px;padding:0px;border-width:0px;left:0px;top:0px;line-height:normal;width:auto;',
   sTbTrTd = ' cellspacing="0" cellpadding="0" border="0" style="' + sCss + '"><tbody style="' + sCss + '"><tr><td ';

   tt_aElt[0].style.width = tt_GetClientW() + "px";
   tt_aElt[0].innerHTML =
      (''
      + (tt_aV[TITLE].length ?
         ('<div id="WzTiTl" style="position:relative;z-index:1;">'
         + '<table id="WzTiTlTb"' + sTbTrTd + 'id="WzTiTlI" style="' + sCss + '">'
         + tt_aV[TITLE]
         + '</td>'
         + (tt_aV[CLOSEBTN] ?
            ('<td align="right" style="' + sCss
            + 'text-align:right;">'
            + '<span id="WzClOsE" style="position:relative;left:2px;padding-left:2px;padding-right:2px;'
            + 'cursor:' + (tt_ie ? 'hand' : 'pointer')
            + ';" onmouseover="tt_OnCloseBtnOver(1)" onmouseout="tt_OnCloseBtnOver(0)" onclick="tt_HideInit()">'
            + tt_aV[CLOSEBTNTEXT]
            + '</span></td>')
            : '')
         + '</tr></tbody></table></div>')
         : '')
      + '<div id="WzBoDy" style="position:relative;z-index:0;">'
      + '<table' + sTbTrTd + 'id="WzBoDyI" style="' + sCss + '">'
      + tt_sContent
      + '</td></tr></tbody></table></div>'
      + (tt_aV[SHADOW]
         ? ('<div id="WzTtShDwR" style="position:absolute;overflow:hidden;"></div>'
            + '<div id="WzTtShDwB" style="position:relative;overflow:hidden;"></div>')
         : '')
      );
   tt_GetSubDivRefs();
   // Convert DOM node to tip
   if(tt_t2t && !tt_aV[COPYCONTENT])
      tt_El2Tip();
   tt_ExtCallFncs(0, "SubDivsCreated");
}
function tt_GetSubDivRefs()
{
   var aId = new Array("WzTiTl", "WzTiTlTb", "WzTiTlI", "WzClOsE", "WzBoDy", "WzBoDyI", "WzTtShDwB", "WzTtShDwR");

   for(var i = aId.length; i; --i)
      tt_aElt[i] = tt_GetElt(aId[i - 1]);
}
function tt_FormatTip()
{
   var css, w, h, pad = tt_aV[PADDING], padT, wBrd = tt_aV[BORDERWIDTH],
   iOffY, iOffSh, iAdd = (pad + wBrd) << 1;

   //--------- Title DIV ----------
   if(tt_aV[TITLE].length)
   {
      padT = tt_aV[TITLEPADDING];
      css = tt_aElt[1].style;
      css.background = tt_aV[TITLEBGCOLOR];
      css.paddingTop = css.paddingBottom = padT + "px";
      css.paddingLeft = css.paddingRight = (padT + 2) + "px";
      css = tt_aElt[3].style;
      css.color = tt_aV[TITLEFONTCOLOR];
      if(tt_aV[WIDTH] == -1)
         css.whiteSpace = "nowrap";
      css.fontFamily = tt_aV[TITLEFONTFACE];
      css.fontSize = tt_aV[TITLEFONTSIZE];
      css.fontWeight = "bold";
      css.textAlign = tt_aV[TITLEALIGN];
      // Close button DIV
      if(tt_aElt[4])
      {
         css = tt_aElt[4].style;
         css.background = tt_aV[CLOSEBTNCOLORS][0];
         css.color = tt_aV[CLOSEBTNCOLORS][1];
         css.fontFamily = tt_aV[TITLEFONTFACE];
         css.fontSize = tt_aV[TITLEFONTSIZE];
         css.fontWeight = "bold";
      }
      if(tt_aV[WIDTH] > 0)
         tt_w = tt_aV[WIDTH];
      else
      {
         tt_w = tt_GetDivW(tt_aElt[3]) + tt_GetDivW(tt_aElt[4]);
         // Some spacing between title DIV and closebutton
         if(tt_aElt[4])
            tt_w += pad;
         // Restrict auto width to max width
         if(tt_aV[WIDTH] < -1 && tt_w > -tt_aV[WIDTH])
            tt_w = -tt_aV[WIDTH];
      }
      // Ensure the top border of the body DIV be covered by the title DIV
      iOffY = -wBrd;
   }
   else
   {
      tt_w = 0;
      iOffY = 0;
   }

   //-------- Body DIV ------------
   css = tt_aElt[5].style;
   css.top = iOffY + "px";
   if(wBrd)
   {
      css.borderColor = tt_aV[BORDERCOLOR];
      css.borderStyle = tt_aV[BORDERSTYLE];
      css.borderWidth = wBrd + "px";
   }
   if(tt_aV[BGCOLOR].length)
      css.background = tt_aV[BGCOLOR];
   if(tt_aV[BGIMG].length)
      css.backgroundImage = "url(" + tt_aV[BGIMG] + ")";
   css.padding = pad + "px";
   css.textAlign = tt_aV[TEXTALIGN];
   if(tt_aV[HEIGHT])
   {
      css.overflow = "auto";
      if(tt_aV[HEIGHT] > 0)
         css.height = (tt_aV[HEIGHT] + iAdd) + "px";
      else
         tt_h = iAdd - tt_aV[HEIGHT];
   }
   // TD inside body DIV
   css = tt_aElt[6].style;
   css.color = tt_aV[FONTCOLOR];
   css.fontFamily = tt_aV[FONTFACE];
   css.fontSize = tt_aV[FONTSIZE];
   css.fontWeight = tt_aV[FONTWEIGHT];
   css.textAlign = tt_aV[TEXTALIGN];
   if(tt_aV[WIDTH] > 0)
      w = tt_aV[WIDTH];
   // Width like title (if existent)
   else if(tt_aV[WIDTH] == -1 && tt_w)
      w = tt_w;
   else
   {
      // Measure width of the body's inner TD, as some browsers would expand
      // the container and outer body DIV to 100%
      w = tt_GetDivW(tt_aElt[6]);
      // Restrict auto width to max width
      if(tt_aV[WIDTH] < -1 && w > -tt_aV[WIDTH])
         w = -tt_aV[WIDTH];
   }
   if(w > tt_w)
      tt_w = w;
   tt_w += iAdd;

   //--------- Shadow DIVs ------------
   if(tt_aV[SHADOW])
   {
      tt_w += tt_aV[SHADOWWIDTH];
      iOffSh = Math.floor((tt_aV[SHADOWWIDTH] * 4) / 3);
      // Bottom shadow
      css = tt_aElt[7].style;
      css.top = iOffY + "px";
      css.left = iOffSh + "px";
      css.width = (tt_w - iOffSh - tt_aV[SHADOWWIDTH]) + "px";
      css.height = tt_aV[SHADOWWIDTH] + "px";
      css.background = tt_aV[SHADOWCOLOR];
      // Right shadow
      css = tt_aElt[8].style;
      css.top = iOffSh + "px";
      css.left = (tt_w - tt_aV[SHADOWWIDTH]) + "px";
      css.width = tt_aV[SHADOWWIDTH] + "px";
      css.background = tt_aV[SHADOWCOLOR];
   }
   else
      iOffSh = 0;

--> Sigue el codigo en el siguiente mensaje:


Última edición por R32 el Jue Feb 04, 2010 1:09 pm, editado 3 veces
avatar
r32
Moderador Global
Moderador Global

Posts : 509
KCoins : 1177
Reputación : 42
Fecha de inscripción : 03/11/2009

Premios :
Staff


Ver perfil de usuario

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  r32 el Miér Feb 03, 2010 11:33 pm

Código:
//-------- Container DIV -------
   tt_SetTipOpa(tt_aV[FADEIN] ? 0 : tt_aV[OPACITY]);
   tt_FixSize(iOffY, iOffSh);
}
// Fixate the size so it can't dynamically change while the tooltip is moving.
function tt_FixSize(iOffY, iOffSh)
{
   var wIn, wOut, h, add, pad = tt_aV[PADDING], wBrd = tt_aV[BORDERWIDTH], i;

   tt_aElt[0].style.width = tt_w + "px";
   tt_aElt[0].style.pixelWidth = tt_w;
   wOut = tt_w - ((tt_aV[SHADOW]) ? tt_aV[SHADOWWIDTH] : 0);
   // Body
   wIn = wOut;
   if(!tt_bBoxOld)
      wIn -= (pad + wBrd) << 1;
   tt_aElt[5].style.width = wIn + "px";
   // Title
   if(tt_aElt[1])
   {
      wIn = wOut - ((tt_aV[TITLEPADDING] + 2) << 1);
      if(!tt_bBoxOld)
         wOut = wIn;
      tt_aElt[1].style.width = wOut + "px";
      tt_aElt[2].style.width = wIn + "px";
   }
   // Max height specified
   if(tt_h)
   {
      h = tt_GetDivH(tt_aElt[5]);
      if(h > tt_h)
      {
         if(!tt_bBoxOld)
            tt_h -= (pad + wBrd) << 1;
         tt_aElt[5].style.height = tt_h + "px";
      }
   }
   tt_h = tt_GetDivH(tt_aElt[0]) + iOffY;
   // Right shadow
   if(tt_aElt[8])
      tt_aElt[8].style.height = (tt_h - iOffSh) + "px";
   i = tt_aElt.length - 1;
   if(tt_aElt[i])
   {
      tt_aElt[i].style.width = tt_w + "px";
      tt_aElt[i].style.height = tt_h + "px";
   }
}
function tt_DeAlt(el)
{
   var aKid;

   if(el)
   {
      if(el.alt)
         el.alt = "";
      if(el.title)
         el.title = "";
      aKid = el.childNodes || el.children || null;
      if(aKid)
      {
         for(var i = aKid.length; i;)
            tt_DeAlt(aKid[--i]);
      }
   }
}
// This hack removes the native tooltips over links in Opera
function tt_OpDeHref(el)
{
   if(!tt_op)
      return;
   if(tt_elDeHref)
      tt_OpReHref();
   while(el)
   {
      if(el.hasAttribute && el.hasAttribute("href"))
      {
         el.t_href = el.getAttribute("href");
         el.t_stats = window.status;
         el.removeAttribute("href");
         el.style.cursor = "hand";
         tt_AddEvtFnc(el, "mousedown", tt_OpReHref);
         window.status = el.t_href;
         tt_elDeHref = el;
         break;
      }
      el = tt_GetDad(el);
   }
}
function tt_OpReHref()
{
   if(tt_elDeHref)
   {
      tt_elDeHref.setAttribute("href", tt_elDeHref.t_href);
      tt_RemEvtFnc(tt_elDeHref, "mousedown", tt_OpReHref);
      window.status = tt_elDeHref.t_stats;
      tt_elDeHref = null;
   }
}
function tt_El2Tip()
{
   var css = tt_t2t.style;

   // Store previous positioning
   tt_t2t.t_cp = css.position;
   tt_t2t.t_cl = css.left;
   tt_t2t.t_ct = css.top;
   tt_t2t.t_cd = css.display;
   // Store the tag's parent element so we can restore that DOM branch
   // when the tooltip is being hidden
   tt_t2tDad = tt_GetDad(tt_t2t);
   tt_MovDomNode(tt_t2t, tt_t2tDad, tt_aElt[6]);
   css.display = "block";
   css.position = "static";
   css.left = css.top = css.marginLeft = css.marginTop = "0px";
}
function tt_UnEl2Tip()
{
   // Restore positioning and display
   var css = tt_t2t.style;

   css.display = tt_t2t.t_cd;
   tt_MovDomNode(tt_t2t, tt_GetDad(tt_t2t), tt_t2tDad);
   css.position = tt_t2t.t_cp;
   css.left = tt_t2t.t_cl;
   css.top = tt_t2t.t_ct;
   tt_t2tDad = null;
}
function tt_OverInit()
{
   if(window.event)
      tt_over = window.event.target || window.event.srcElement;
   else
      tt_over = tt_ovr_;
   tt_DeAlt(tt_over);
   tt_OpDeHref(tt_over);
}
function tt_ShowInit()
{
   tt_tShow.Timer("tt_Show()", tt_aV[DELAY], true);
   if(tt_aV[CLICKCLOSE] || tt_aV[CLICKSTICKY])
      tt_AddEvtFnc(document, "mouseup", tt_OnLClick);
}
function tt_Show()
{
   var css = tt_aElt[0].style;

   // Override the z-index of the topmost wz_dragdrop.js D&D item
   css.zIndex = Math.max((window.dd && dd.z) ? (dd.z + 2) : 0, 1010);
   if(tt_aV[STICKY] || !tt_aV[FOLLOWMOUSE])
      tt_iState &= ~0x4;
   if(tt_aV[EXCLUSIVE])
      tt_iState |= 0x8;
   if(tt_aV[DURATION] > 0)
      tt_tDurt.Timer("tt_HideInit()", tt_aV[DURATION], true);
   tt_ExtCallFncs(0, "Show")
   css.visibility = "visible";
   tt_iState |= 0x2;
   if(tt_aV[FADEIN])
      tt_Fade(0, 0, tt_aV[OPACITY], Math.round(tt_aV[FADEIN] / tt_aV[FADEINTERVAL]));
   tt_ShowIfrm();
}
function tt_ShowIfrm()
{
   if(tt_ie56)
   {
      var ifrm = tt_aElt[tt_aElt.length - 1];
      if(ifrm)
      {
         var css = ifrm.style;
         css.zIndex = tt_aElt[0].style.zIndex - 1;
         css.display = "block";
      }
   }
}
function tt_Move(e)
{
   if(e)
      tt_ovr_ = e.target || e.srcElement;
   e = e || window.event;
   if(e)
   {
      tt_musX = tt_GetEvtX(e);
      tt_musY = tt_GetEvtY(e);
   }
   if(tt_iState & 0x4)
   {
      // Prevent jam of mousemove events
      if(!tt_op && !tt_ie)
      {
         if(tt_bWait)
            return;
         tt_bWait = true;
         tt_tWaitMov.Timer("tt_bWait = false;", 1, true);
      }
      if(tt_aV[FIX])
      {
         tt_iState &= ~0x4;
         tt_PosFix();
      }
      else if(!tt_ExtCallFncs(e, "MoveBefore"))
         tt_SetTipPos(tt_Pos(0), tt_Pos(1));
      tt_ExtCallFncs([tt_musX, tt_musY], "MoveAfter")
   }
}
function tt_Pos(iDim)
{
   var iX, bJmpMod, cmdAlt, cmdOff, cx, iMax, iScrl, iMus, bJmp;

   // Map values according to dimension to calculate
   if(iDim)
   {
      bJmpMod = tt_aV[JUMPVERT];
      cmdAlt = ABOVE;
      cmdOff = OFFSETY;
      cx = tt_h;
      iMax = tt_maxPosY;
      iScrl = tt_GetScrollY();
      iMus = tt_musY;
      bJmp = tt_bJmpVert;
   }
   else
   {
      bJmpMod = tt_aV[JUMPHORZ];
      cmdAlt = LEFT;
      cmdOff = OFFSETX;
      cx = tt_w;
      iMax = tt_maxPosX;
      iScrl = tt_GetScrollX();
      iMus = tt_musX;
      bJmp = tt_bJmpHorz;
   }
   if(bJmpMod)
   {
      if(tt_aV[cmdAlt] && (!bJmp || tt_CalcPosAlt(iDim) >= iScrl + 16))
         iX = tt_PosAlt(iDim);
      else if(!tt_aV[cmdAlt] && bJmp && tt_CalcPosDef(iDim) > iMax - 16)
         iX = tt_PosAlt(iDim);
      else
         iX = tt_PosDef(iDim);
   }
   else
   {
      iX = iMus;
      if(tt_aV[cmdAlt])
         iX -= cx + tt_aV[cmdOff] - (tt_aV[SHADOW] ? tt_aV[SHADOWWIDTH] : 0);
      else
         iX += tt_aV[cmdOff];
   }
   // Prevent tip from extending past clientarea boundary
   if(iX > iMax)
      iX = bJmpMod ? tt_PosAlt(iDim) : iMax;
   // In case of insufficient space on both sides, ensure the left/upper part
   // of the tip be visible
   if(iX < iScrl)
      iX = bJmpMod ? tt_PosDef(iDim) : iScrl;
   return iX;
}
function tt_PosDef(iDim)
{
   if(iDim)
      tt_bJmpVert = tt_aV[ABOVE];
   else
      tt_bJmpHorz = tt_aV[LEFT];
   return tt_CalcPosDef(iDim);
}
function tt_PosAlt(iDim)
{
   if(iDim)
      tt_bJmpVert = !tt_aV[ABOVE];
   else
      tt_bJmpHorz = !tt_aV[LEFT];
   return tt_CalcPosAlt(iDim);
}
function tt_CalcPosDef(iDim)
{
   return iDim ? (tt_musY + tt_aV[OFFSETY]) : (tt_musX + tt_aV[OFFSETX]);
}
function tt_CalcPosAlt(iDim)
{
   var cmdOff = iDim ? OFFSETY : OFFSETX;
   var dx = tt_aV[cmdOff] - (tt_aV[SHADOW] ? tt_aV[SHADOWWIDTH] : 0);
   if(tt_aV[cmdOff] > 0 && dx <= 0)
      dx = 1;
   return((iDim ? (tt_musY - tt_h) : (tt_musX - tt_w)) - dx);
}
function tt_PosFix()
{
   var iX, iY;

   if(typeof(tt_aV[FIX][0]) == "number")
   {
      iX = tt_aV[FIX][0];
      iY = tt_aV[FIX][1];
   }
   else
   {
      if(typeof(tt_aV[FIX][0]) == "string")
         el = tt_GetElt(tt_aV[FIX][0]);
      // First slot in array is direct reference to HTML element
      else
         el = tt_aV[FIX][0];
      iX = tt_aV[FIX][1];
      iY = tt_aV[FIX][2];
      // By default, vert pos is related to bottom edge of HTML element
      if(!tt_aV[ABOVE] && el)
         iY += tt_GetDivH(el);
      for(; el; el = el.offsetParent)
      {
         iX += el.offsetLeft || 0;
         iY += el.offsetTop || 0;
      }
   }
   // For a fixed tip positioned above the mouse, use the bottom edge as anchor
   // (recommended by Christophe Rebeschini, 31.1.2008)
   if(tt_aV[ABOVE])
      iY -= tt_h;
   tt_SetTipPos(iX, iY);
}
function tt_Fade(a, now, z, n)
{
   if(n)
   {
      now += Math.round((z - now) / n);
      if((z > a) ? (now >= z) : (now <= z))
         now = z;
      else
         tt_tFade.Timer(
            "tt_Fade("
            + a + "," + now + "," + z + "," + (n - 1)
            + ")",
            tt_aV[FADEINTERVAL],
            true
         );
   }
   now ? tt_SetTipOpa(now) : tt_Hide();
}
function tt_SetTipOpa(opa)
{
   // To circumvent the opacity nesting flaws of IE, we set the opacity
   // for each sub-DIV separately, rather than for the container DIV.
   tt_SetOpa(tt_aElt[5], opa);
   if(tt_aElt[1])
      tt_SetOpa(tt_aElt[1], opa);
   if(tt_aV[SHADOW])
   {
      opa = Math.round(opa * 0.8);
      tt_SetOpa(tt_aElt[7], opa);
      tt_SetOpa(tt_aElt[8], opa);
   }
}
function tt_OnCloseBtnOver(iOver)
{
   var css = tt_aElt[4].style;

   iOver <<= 1;
   css.background = tt_aV[CLOSEBTNCOLORS][iOver];
   css.color = tt_aV[CLOSEBTNCOLORS][iOver + 1];
}
function tt_OnLClick(e)
{
   //  Ignore right-clicks
   e = e || window.event;
   if(!((e.button && e.button & 2) || (e.which && e.which == 3)))
   {
      if(tt_aV[CLICKSTICKY] && (tt_iState & 0x4))
      {
         tt_aV[STICKY] = true;
         tt_iState &= ~0x4;
      }
      else if(tt_aV[CLICKCLOSE])
         tt_HideInit();
   }
}
function tt_Int(x)
{
   var y;

   return(isNaN(y = parseInt(x)) ? 0 : y);
}
Number.prototype.Timer = function(s, iT, bUrge)
{
   if(!this.value || bUrge)
      this.value = window.setTimeout(s, iT);
}
Number.prototype.EndTimer = function()
{
   if(this.value)
   {
      window.clearTimeout(this.value);
      this.value = 0;
   }
}
function tt_GetWndCliSiz(s)
{
   var db, y = window["inner" + s], sC = "client" + s, sN = "number";
   if(typeof y == sN)
   {
      var y2;
      return(
         // Gecko or Opera with scrollbar
         // ... quirks mode
         ((db = document.body) && typeof(y2 = db[sC]) == sN && y2 &&  y2 <= y) ? y2
         // ... strict mode
         : ((db = document.documentElement) && typeof(y2 = db[sC]) == sN && y2 && y2 <= y) ? y2
         // No scrollbar, or clientarea size == 0, or other browser (KHTML etc.)
         : y
      );
   }
   // IE
   return(
      // document.documentElement.client+s functional, returns > 0
      ((db = document.documentElement) && (y = db[sC])) ? y
      // ... not functional, in which case document.body.client+s
      // is the clientarea size, fortunately
      : document.body[sC]
   );
}
function tt_SetOpa(el, opa)
{
   var css = el.style;

   tt_opa = opa;
   if(tt_flagOpa == 1)
   {
      if(opa < 100)
      {
         // Hacks for bugs of IE:
         // 1.) Once a CSS filter has been applied, fonts are no longer
         // anti-aliased, so we store the previous 'non-filter' to be
         // able to restore it
         if(typeof(el.filtNo) == tt_u)
            el.filtNo = css.filter;
         // 2.) A DIV cannot be made visible in a single step if an
         // opacity < 100 has been applied while the DIV was hidden
         var bVis = css.visibility != "hidden";
         // 3.) In IE6, applying an opacity < 100 has no effect if the
         //     element has no layout (position, size, zoom, ...)
         css.zoom = "100%";
         if(!bVis)
            css.visibility = "visible";
         css.filter = "alpha(opacity=" + opa + ")";
         if(!bVis)
            css.visibility = "hidden";
      }
      else if(typeof(el.filtNo) != tt_u)
         // Restore 'non-filter'
         css.filter = el.filtNo;
   }
   else
   {
      opa /= 100.0;
      switch(tt_flagOpa)
      {
      case 2:
         css.KhtmlOpacity = opa; break;
      case 3:
         css.KHTMLOpacity = opa; break;
      case 4:
         css.MozOpacity = opa; break;
      case 5:
         css.opacity = opa; break;
      }
   }
}
function tt_Err(sErr, bIfDebug)
{
   if(tt_Debug || !bIfDebug)
      alert("Tooltip Script Error Message:\n\n" + sErr);
}

//============  EXTENSION (PLUGIN) MANAGER  ===============//
function tt_ExtCmdEnum()
{
   var s;

   // Add new command(s) to the commands enum
   for(var i in config)
   {
      s = "window." + i.toString().toUpperCase();
      if(eval("typeof(" + s + ") == tt_u"))
      {
         eval(s + " = " + tt_aV.length);
         tt_aV[tt_aV.length] = null;
      }
   }
}
function tt_ExtCallFncs(arg, sFnc)
{
   var b = false;
   for(var i = tt_aExt.length; i;)
   {--i;
      var fnc = tt_aExt[i]["On" + sFnc];
      // Call the method the extension has defined for this event
      if(fnc && fnc(arg))
         b = true;
   }
   return b;
}

tt_Init();

2.- s_code:
Código:
/* SiteCatalyst code version: H.15.1.
Copyright 1997-2008 Omniture, Inc. More info available at
http://www.omniture.com */

var s_account="flycelles"
var s=s_gi(s_account)
/************************** CONFIG SECTION **************************/
/* You may add or alter any code config here. */
s.charSet="ISO-8859-1"
/* Conversion Config */
s.currencyCode="USD"
/* Link Tracking Config */
s.trackDownloadLinks=true
s.trackExternalLinks=true
s.trackInlineStats=true
s.linkDownloadFileTypes="exe,zip,wav,mp3,mov,mpg,avi,wmv,doc,pdf,xls"
s.linkInternalFilters="javascript:,."
s.linkLeaveQueryString=false
s.linkTrackVars="None"
s.linkTrackEvents="None"

/* WARNING: Changing any of the below variables will cause drastic
changes to how your visitor data is collected.  Changes should only be
made when instructed to do so by your account manager.*/
s.visitorNamespace="flycellcom"
s.dc=112

/************* DO NOT ALTER ANYTHING BELOW THIS LINE ! **************/
var s_code='',s_objectID;function s_gi(un,pg,ss){var c="=fun@5(~){`Ks=^Q~$d ~.substring(~.indexOf(~;@r~`l@r~=new Fun@5(~.toLowerCase()~s_c_il['+s^qn+']~};s.~.length~.toUpperCase~=new Object~s.wd~','~"
+"){@r~t^s~.location~')q='~var ~s.pt(~dynamicAccount~link~s.apv~='+@w(~)@rx^l!Object$aObject.prototype$aObject.prototype[x])~);s.~Element~.getTime()~=new Array~ookieDomainPeriods~s.m_~.protocol~=new "
+"Date~BufferedRequests~}c$o(e){~visitor~;@V^is[k],255)}~javaEnabled~conne@5^K~^zc_i~Name~=''~:'')~onclick~}@r~else ~ternalFilters~javascript~s.dl~@Ms.b.addBehavior(\"# default# ~=parseFloat(~'+tm.ge"
+"t~cookie~parseInt(~s.rep(~s.^R~track~o^zoid~browser~.parent~window~referrer~colorDepth~String~while(~.host~.lastIndexOf('~s.sq~s.maxDelay~s.vl_g~r=s.m(f)?s[f](~for(~s.un~s.eo~&&s.~t=s.ot(o)~j='1.~#"
+"1URL~lugins~document~Type~Sampling~s.rc[un]~Download~Event~');~this~tfs~resolution~s.c_r(~s.c_w(~s.eh~s.isie~s.vl_l~s.vl_t~Height~t,h){t=t?t~tcf~isopera~ismac~escape(~'s_~.href~screen.~s.fl(~Versio"
+"n~harCode~&&(~variableProvider~s.pe~)?'Y':'N'~:'';h=h?h~._i~e&&l$ZSESSION'~=='~f',~onload~name~home#1~objectID~}else{~.s_~s.rl[u~Width~s.ssl~o.type~Timeout(~ction~Lifetime~.mrq(\"'+un+'\")~sEnabled"
+"~;i++)~'){q='~&&l$ZNONE'){~ExternalLinks~_'+~charSet~onerror~lnk~currencyCode~.src~s=s_gi(~etYear(~Opera~;try{~Math.~s.fsg~s.ns6~s.oun~InlineStats~Track~'0123456789~&&!~s[k]=~s.epa(~m._d~n=s.oid(o)"
+"~,'sqs',q);~LeaveQuery~')>=~'=')~&&t~){n=~\",''),~vo)~s.sampled~=s.oh(o);~+(y<1900?~s.disable~ingServer~n]=~true~sess~campaign~lif~if(~'http~,100)~s.co(~x in ~s.ape~ffset~s.c_d~s.br~'&pe~s.gg(~s.gv"
+"(~s[mn]~s.qav~,'vo~s.pl~=(apn~Listener~\"s_gs(\")~vo._t~b.attach~d.create~=s.n.app~(''+~'+n~)+'/~s()+'~){p=~():''~a):f(~+1))~a['!'+t]~){v=s.n.~channel~un)~.target~o.value~g+\"_c\"]~\".tl(\")~etscap"
+"e~(ns?ns:~omePage~s.d.get~')<~!='~||!~[b](e);~m[t+1](~return~height~events~random~code~'MSIE ~rs,~un,~,pev~INPUT'~floor(~atch~s.num(~[\"s_\"+~s.c_gd~s.dc~s.pg~,'lt~.inner~transa~;s.gl(~\"m_\"+n~idt"
+"='+~',s.bc~page~Group,~.fromC~sByTag~?'&~+';'~t&&~1);~[t]=~'+v]~>=5)~[t](~=l[n];~!a[t])~~s._c=^fc';`E=^0`5!`E`fn){`E`fl`U;`E`fn=0;}s^ql=`E`fl;s^qn=`E`fn;s^ql[s^q@ms;`E`fn++;s.m`0m){`2$Em)`4'{$Y0`Af"
+"l`0x,l){`2x?$Ex)`30,l):x`Aco`0o`G!o)`2o;`Kn`D,x;^B@vo)@rx`4'select$Y0&&x`4'filter$Y0)n[x]=o[x];`2n`Anum`0x){x`h+x;^B`Kp=0;p<x`B;p++)@r(@T')`4x`3p,p$L<0)`20;`21`Arep=s_r;@w`0x`1,h=@TABCDEF',i,c=s.@E"
+",n,l,e,y`h;c=c?c`C$J`5x){x`h+x`5c^sAUTO'^l'').c^kAt){^Bi=0;i<x`B@9{c=x`3i,i+#8n=x.c^kAt(i)`5n>127){l=0;e`h;^4n||l<4){e=h`3n%16,n%16+1)+e;n=`tn/16);l++}y+='%u'+e}`6c^s+')y+='%2B';`ly+=^ec)}x=y^yx=x?"
+"`u^e''+x),'+`F%2B'):x`5x&&c^Eem==1&&x`4'%u$Y0&&x`4'%U$Y0){i=x`4'%^P^4i>=0){i++`5h`38)`4x`3i,i+1)`C())>=0)`2x`30,i)+'u00'+x`3i);i=x`4'%',i)}}}}`2x`Aepa`0x`1;`2x?un^e`u''+x,'+`F ')):x`Apt`0x,d,f,a`1,"
+"t=x,z=0,y,r;^4t){y=t`4d);y=y<0?t`B:y;t=t`30,y);^At,$Kt,a)`5r)`2r;z+=y+d`B;t=x`3z,x`B);t=z<x`B?t:''}`2''`Aisf`0t,a){`Kc=a`4':')`5c>=0)a=a`30,c)`5t`30,2)==^f')t=t`32);`2(t!`h@d==a)`Afsf`0t,a`1`5`La,`"
+"F,'is^tt))@O+=(@O!`h?`F`i+t;`20`Afs`0x,f`1;@O`h;`Lx,`F,'fs^tf);`2@O`Ac_d`h;$rf`0t,a`1`5!$pt))`21;`20`Ac_gd`0`1,d=`E`I^5^v,n=s.fpC`V,p`5!n)n=s.c`V`5d@U@y@en?`tn):2;n=n>2?n:2;p=d^6.')`5p>=0){^4p>=0&&"
+"n>1$Id^6.',p-#8n--}@y=p>0&&`Ld,'.`Fc_gd^t0)?d`3p):d}}`2@y`Ac_r`0k`1;k=@w(k);`Kc=' '+s.d.`s,i=c`4' '+k+@c,e=i<0?i:c`4';',i),v=i<0?'':@Wc`3i+2+k`B,e<0?c`B:e));`2v$Z[[B]]'?v:''`Ac_w`0k,v,e`1,d=$r(),l="
+"s.`s@6,t;v`h+v;l=l?$El)`C$J`5^r@Bt=(v!`h?`tl?l:0):-60)`5t){e`Y;e.setTime(e`T+(t*1000))}`kk@Bs.d.`s=k+'`Pv!`h?v:'[[B]]')+'; path=/;'+(^r?' expires='+e.toGMT^3()#6`i+(d?' domain='+d#6`i;`2^Tk)==v}`20"
+"`Aeh`0o,e,r,f`1,b=^f'+e+'@Ds^qn,n=-1,l,i,x`5!^Vl)^Vl`U;l=^Vl;^Bi=0;i<l`B&&n<0;i++`Gl[i].o==o&&l[i].e==e)n=i`kn<0@ei;l[n]`D}x#Dx.o=o;x.e=e;f=r?x.b:f`5r||f){x.b=r?0:o[e];x.o[e]=f`kx.b){x.o[b]=x.b;`2b"
+"}`20`Acet`0f,a,t,o,b`1,r,^b`5`O>=5^l!s.^c||`O>=7)){^b`7's`Ff`Fa`Ft`F`Ke,r@M^A$Ka)`ar=s.m(t)?s#Ce):t(e)}`2r^Pr=^b(s,f,a,t)^y@rs.^d^Eu`4$i4@b0)r=s.m(b)?s[b](a):b(a);else{^V(`E,'@F',0,o);^A$Ka`Reh(`E,"
+"'@F',1)}}`2r`Ag^Ret`0e`1;`2`v`Ag^Roe`7'e`F`Ks=`9,c;^V(^0,\"@F\",1`Re^R=1;c=s.t()`5c)s.d.write(c`Re^R=0;`2@n'`Rg^Rfb`0a){`2^0`Ag^Rf`0w`1,p=w`z,l=w`I;`v=w`5p&&p`I!=l&&p`I^5==l^5){`v=p;`2s.g^Rf(`v)}`2"
+"`v`Ag^R`0`1`5!`v){`v=`E`5!s.e^R)`v=s.cet('g^R^t`v,'g^Ret',s.g^Roe,'g^Rfb')}`2`v`Amrq`0u`1,l=@0],n,r;@0]=0`5l)^Bn=0;n<l`B;n++){r#Ds.mr(0,0,r.r,0,r.t,r.u)}`Abr`0id,rs`1`5@k`Z$a^U^fbr',rs))@zl=rs`Aflu"
+"sh`Z`0`1;s.fbr(0)`Afbr`0id`1,br=^T^fbr')`5!br)br=@zl`5br`G!@k`Z)^U^fbr`F'`Rmr(0,0,br)}@zl=0`Amr`0@o,q,$jid,ta,u`1,dc=$s,t1=s.`w@l,t2=s.`w@lSecure,ns=s.`b`gspace,un=u?u:$Vs.f$P,unc=`u$k'_`F-'),r`D,l"
+",imn=^fi@D($P,im,b,e`5!rs){rs=@s'+(@2?'s'`i+'://'+(t1?(@2@d2?t2:t1):($V(@2?'102':unc))+'.'+($s?$s:112)+'.2o7.net')$Gb/ss/'+^C+'/1/H.15.1/'+@o+'?[AQB]&ndh=1'+(q?q`i+'&[AQE]'`5^W@Us.^d`G`O>5.5)rs=^i$"
+"j4095);`lrs=^i$j2047)`kid){@z(id,rs);$d}`ks.d.images&&`O>=3^l!s.^c||`O>=7)^l@P<0||`O>=6.1)`G!s.rc)s.rc`D`5!^M){^M=1`5!s.rl)s.rl`D;@0n]`U;set@4'@r^0`fl)^0.`9@7',750)^yl=@0n]`5l){r.t=ta;r.u=un;r.r=rs"
+";l[l`B]=r;`2''}imn+='@D^M;^M++}im=`E[imn]`5!im)im=`E[im@mnew Image;im^zl=0;im.^u`7'e`F^Q^zl=1`5^0`fl)^0.`9@7^Pim@I=rs`5rs`4$0=@b0^l!ta||ta^s_self'||ta^s_top'||(`E.^v@da==`E.^v))){b=e`Y;^4!im^zl&&e`"
+"T-b`T<500)e`Y}`2''}`2'<im'+'g sr'+'c=\"'+rs+'\" width=1 $e=1 border=0 alt=\"\">'`Agg`0v`1`5!`E[^f#A)`E[^f#A`h;`2`E[^f#A`Aglf`0t,a`Gt`30,2)==^f')t=t`32);`Ks=^Q,v=$1t)`5v)s#9v`Agl`0v`1`5$t)`Lv,`F,'gl"
+"^t0)`Agv`0v`1;`2s['vpm@Dv]?s['vpv@Dv]:(s[v]?s[v]`i`Ahavf`0t,a`1,b=t`30,4),x=t`34),n=`tx),k='g@Dt,m='vpm@Dt,q=t,v=s.`N@SVa$je=s.`N@S^Os,mn;@V$2t)`5s.@G||^D||^n`G^n^Epe`30,4)$Z@G_'){mn=^n`30,1)`C()+^"
+"n`31)`5$3){v=$3.`wVars;e=$3.`w^Os}}v=v?v+`F+^X+`F+^X2:''`5v@U`Lv,`F,'is^tt))s[k]`h`5`H$f'&&e)@Vs.fs(s[k],e)}s[m]=0`5`H`bID`Jvid';`6`H^H@Ag'`c`6`H^1@Ar'`c`6`Hvmk`Jvmt';`6`H@E@Ace'`5s[k]&&s[k]`C()^sA"
+"UTO')@V'ISO8859-1';`6s[k]^Eem==2)@V'UTF-8'}`6`H`b`gspace`Jns';`6`Hc`V`Jcdp';`6`H`s@6`Jcl';`6`H^m`Jvvp';`6`H@H`Jcc';`6`H$O`Jch';`6`H$w@5ID`Jxact';`6`H@p`Jv0';`6`H^S`Js';`6`H^2`Jc';`6`H`n^j`Jj';`6`H`"
+"d`Jv';`6`H`s@8`Jk';`6`H`y@1`Jbw';`6`H`y^Z`Jbh';`6`H`e`Jct';`6`H^w`Jhp';`6`Hp^I`Jp';`6$px)`Gb^sprop`Jc$F;`6b^seVar`Jv$F;`6b^shier@Ah$F`c`ks[k]@d$Z`N`g'@d$Z`N^K')$4+='&'+q+'`Ps[k]);`2''`Ahav`0`1;$4`h"
+";`L^Y,`F,'hav^t0);`2$4`Alnf`0^a`8^p`8:'';`Kte=t`4@c`5t@de>0&&h`4t`3te$L>=0)`2t`30,te);`2''`Aln`0h`1,n=s.`N`gs`5n)`2`Ln,`F,'ln^th);`2''`Altdf`0^a`8^p`8:'';`Kqi=h`4'?^Ph=qi>=0?h`30,qi):h`5#7h`3h`B-(t"
+"`B$L^s.'+t)`21;`20`Altef`0^a`8^p`8:''`5#7h`4t)>=0)`21;`20`Alt`0h`1,lft=s.`N^NFile^Ks,lef=s.`NEx`m,@q=s.`NIn`m;@q=@q?@q:`E`I^5^v;h=h`8`5s.`w^NLinks&&lf#7`Llft,`F$ud^th))`2'd'`5s.`w@C^llef||@q)^l!lef"
+"||`Llef,`F$ue^th))^l!@q$a`L@q,`F$ue^th)))`2'e';`2''`Alc`7'e`F`Ks=`9,b=^V(^Q,\"`j\"`R@G=@u^Q`Rt(`R@G=0`5b)`2^Q$b`2@n'`Rbc`7'e`F`Ks=`9,f,^b`5s.d^Ed.all^Ed.all.cppXYctnr)$d;^D=e@I`S?e@I`S:e$Q;^b`7\"s"
+"\",\"`Ke@M@r^D^l^D.tag`g||^D`z`S||^D`zNode))s.t()`a}\");^b(s`Reo=0'`Roh`0o`1,l=`E`I,h=o^g?o^g:'',i,j,k,p;i=h`4':^Pj=h`4'?^Pk=h`4'/')`5h^li<0||(j>=0&&i>j)||(k>=0&&i>k))$Io`X&&o`X`B>1?o`X:(l`X?l`X`i;"
+"i=l.path^v^6/^Ph=(p?p+'//'`i+(o^5?o^5:(l^5?l^5`i)+(h`30,1)$Z/'?l.path^v`30,i<0?0:i$G'`i+h}`2h`Aot`0o){`Kt=o.tag`g;t=t@d`C?t`C$J`5`HSHAPE')t`h`5t`G`H$m&&@3&&@3`C)t=@3`C();`6!#7o^g)t='A';}`2t`Aoid`0o"
+"`1,^F,p,c,n`h,x=0`5t@U`x$Io`X;c=o.`j`5o^g^l`HA'||`HAREA')^l!c$ap||p`8`4'`n$Y0))n@i`6c@e`us.rep(`us.rep$Ec,\"\\r@f\"\\n@f\"\\t@f' `F^Px=2}`6$R^l`H$m||`HSUBMIT')@e$R;x=3}`6o@I&&`HIMAGE')n=o@I`5n){`x="
+"^in@t;`xt=x}}`2`x`Arqf`0t,un`1,e=t`4@c,u=e>=0?`F+t`30,e)+`F:'';`2u&&u`4`F+un+`F)>=0?@Wt`3e$L:''`Arq`0un`1,c=un`4`F),v=^T^fsq'),q`h`5c<0)`2`Lv,'&`Frq^t$P;`2`L$k`F,'rq',0)`Asqp`0t,a`1,e=t`4@c,q=e<0?'"
+"':@Wt`3e+1)`Rsqq[q]`h`5e>=0)`Lt`30,e),`F@Z`20`Asqs`0$kq`1;^7u[u@mq;`20`Asq`0q`1,k=^fsq',v=^Tk),x,c=0;^7q`D;^7u`D;^7q[q]`h;`Lv,'&`Fsqp',0);`L^C,`F@Zv`h;^B@v^7u`Q)^7q[^7u[x]]+=(^7q[^7u[x]]?`F`i+x;^B@"
+"v^7q`Q&&^7q[x]^lx==q||c<2)){v+=(v#5'`i+^7q[x]+'`Px);c++}`2^Uk,v,0)`Awdl`7'e`F`Ks=`9,r=@n,b=^V(`E,\"^u\"),i,o,oc`5b)r=^Q$b^Bi=0;i<s.d.`Ns`B@9{o=s.d.`Ns[i];oc=o.`j?\"\"+o.`j:\"\"`5(oc`4$9<0||oc`4\"^z"
+"oc(\")>=0)&&oc`4$T<0)^V(o,\"`j\",0,s.lc);}`2r^P`Es`0`1`5`O>3^l!^W$as.^d||`O#B`Gs.b^E$B^O)s.$B^O('`j#0);`6s.b^Eb.add^O$8)s.b.add^O$8('click#0,false);`l^V(`E,'^u',0,`El)}`Avs`0x`1,v=s.`b^L,g=s.`b^L#2"
+"k=^fvsn@D^C+(g?'@Dg`i,n=^Tk),e`Y,y=e.g@K);e.s@Ky+10@j1900:0))`5v){v*=100`5!n`G!^Uk,x,e))`20;n=x`kn%10000>v)`20}`21`Adyasmf`0t,m`G#7m&&m`4t)>=0)`21;`20`Adyasf`0t,m`1,i=t?t`4@c:-1,n,x`5i>=0&&m){`Kn=t"
+"`30,i),x=t`3i+1)`5`Lx,`F,'dyasm^tm))`2n}`20`Auns`0`1,x=s.`MSele@5,l=s.`MList,m=s.`MM$o,n,i;^C=^C`8`5x&&l`G!m)m=`E`I^5`5!m.toLowerCase)m`h+m;l=l`8;m=m`8;n=`Ll,';`Fdyas^tm)`5n)^C=n}i=^C`4`F`Rfun=i<0?"
+"^C:^C`30,i)`Asa`0un`1;^C=un`5!@Q)@Q=un;`6(`F+@Q+`F)`4$P<0)@Q+=`F+un;^Cs()`Am_i`0n,a`1,m,f=n`30,1),r,l,i`5!`Wl)`Wl`D`5!`Wnl)`Wnl`U;m=`Wl[n]`5!a&&m&&m._e@Um^q)`Wa(n)`5!m){m`D,m._c=^fm';m^qn=`E`fn;m^q"
+"l=s^ql;m^ql[m^q@mm;`E`fn++;m.s=s;m._n=n;m._l`U('_c`F_in`F_il`F_i`F_e`F_d`F_dl`Fs`Fn`F_r`F_g`F_g1`F_t`F_t1`F_x`F_x1`F_l'`Rm_l[@mm;`Wnl[`Wnl`B]=n}`6m._r@Um._m){r=m._r;r._m=m;l=m._l;^Bi=0;i<l`B@9@rm[l"
+"[i]])r[l[i]]=m[l[i]];r^ql[r^q@mr;m=`Wl[@mr`kf==f`C())s[@mm;`2m`Am_a`7'n`Fg`F@r!g)g=$y;`Ks=`9,c=s[$S,m,x,f=0`5!c)c=`E$q$S`5c&&s_d)s[g]`7\"s\",s_ft(s_d(c)));x=s[g]`5!x)x=`E$qg];m=`Wi(n,1)`5x){m^q=f=1"
+"`5(\"\"+x)`4\"fun@5\")>=0)x(s);`l`Wm(\"x\",n,x)}m=`Wi(n,1)`5@Xl)@Xl=@X=0;`ot();`2f'`Rm_m`0t,n,d){t='@Dt;`Ks=^Q,i,x,m,f='@Dt`5`Wl&&`Wnl)^Bi=0;i<`Wnl`B@9{x=`Wnl[i]`5!n||x==n){m=`Wi(x)`5m[t]`G`H_d')`2"
+"1`5d)m#Cd);`lm#C)`km[t+1]@Um[f]`Gd)$cd);`l$c)}m[f]=1}}`20`AloadModule`0n,u,d,l`1,m,i=n`4':'),g=i<0?$y:n`3i+1),o=0,f,c=s.h?s.h:s.b,^b`5i>=0)n=n`30,i);m=`Wi(n)`5(l$a`Wa(n,g))&&u^Ed&&c^E$C`S`Gd){@X=1;"
+"@Xl=1`k@2)u=`uu,@s:`Fhttps:^Pf`7'e`F`9.m_a(\"$F+'\",\"'+g+'\")^P^b`7's`Ff`Fu`Fc`F`Ke,o=0@Mo=s.$C`S(\"script\")`5o){@3=\"text/`n\"`5f)o.^u=f;o@I=u;c.appendChild(o)}`ao=0}`2o^Po=^b(s,f,u,c)}`lm=`Wi(n"
+");m._e=1;`2m`Avo1`0t,a`Ga[t]||$M)^Q#9a[t]`Avo2`0t,a`G#E{a#9^Q[t]`5#E$M=1}`Adlt`7'`Ks=`9,d`Y,i,vo,f=0`5`ol)^Bi=0;i<`ol`B@9{vo=`ol[i]`5vo`G!`Wm(\"d\")||d`T-$A>=^8){`ol[i]=0;s.t(@g}`lf=1}`k`oi)clear@4"
+"`oi`Rdli=0`5f`G!`oi)`oi=set@4`ot,^8)}`l`ol=0'`Rdl`0vo`1,d`Y`5!@gvo`D;`L^9,`F$52',@g;$A=d`T`5!`ol)`ol`U;`ol[`ol`B]=vo`5!^8)^8=250;`ot()`At`0vo,id`1,trk=1,tm`Y,sed=Math&&@N$g?@N$n@N$g()*1000000000000"
+"0):tm`T,@o='s'+@N$ntm`T/10800000)%10+sed,y=tm.g@K),vt=tm.getDate($G`rMonth($G'@jy+1900:y)+' `rHour$H:`rMinute$H:`rSecond$H `rDay()+' `rTimezoneO@x(),^b,^R=s.g^R(),ta`h,q`h,qs`h,$h`h,vb`D$x^9`Runs()"
+"`5!s.td){`Ktl=^R`I,a,o,i,x`h,c`h,v`h,p`h,bw`h,bh`h,^G0',k=^U^fcc`F@n',0^o,hp`h,ct`h,pn=0,ps`5^3&&^3.prototype){^G1'`5j.m$o){^G2'`5tm.setUTCDate){^G3'`5^W^E^d&&`O#B^G4'`5pn.toPrecision){^G5';a`U`5a."
+"forEach){^G6';i=0;o`D;^b`7'o`F`Ke,i=0@Mi=new Iterator(o)`a}`2i^Pi=^b(o)`5i&&i.next)^G7'}}}}`k`O>=4)x=^hwidth+'x'+^h$e`5s.isns||s.^c`G`O>=3$N`d(^o`5`O>=4){c=^hpixelDepth;bw=`E$v@1;bh=`E$v^Z}}$6=s.n."
+"p^I}`6^W`G`O>=4$N`d(^o;c=^h^2`5`O#B{bw=s.d.^J`S.o@x@1;bh=s.d.^J`S.o@x^Z`5!s.^d^Eb){^b`7's`Ftl`F`Ke,hp=0`ph$W\");hp=s.b.isH$W(tl)?\"Y\":\"N\"`a}`2hp^Php=^b(s,tl);^b`7's`F`Ke,ct=0`pclientCaps\");ct=s"
+".b.`e`a}`2ct^Pct=^b(s)}}}`lr`h`k$6)^4pn<$6`B&&pn<30){ps=^i$6[pn].^v@t#6`5p`4ps)<0)p+=ps;pn++}s.^S=x;s.^2=c;s.`n^j=j;s.`d=v;s.`s@8=k;s.`y@1=bw;s.`y^Z=bh;s.`e=ct;s.^w=hp;s.p^I=p;s.td=1`k@g{`L^9,`F$52"
+"',vb);`L^9,`F$51',@g`ks.useP^I)s.doP^I(s);`Kl=`E`I,r=^R.^J.^1`5!s.^H)s.^H=l^g?l^g:l`5!s.^1)s.^1=r;`Wm('g')`5(vo&&$A)$a`Wm('d')`Gs.@G||^D){`Ko=^D?^D:s.@G`5!o)`2'';`Kp=$2'#1`g'),w=1,^F,@Y,x=`xt,h,l,i"
+",oc`5^D&&o==^D){^4o@Un@d$ZBODY'){o=o`z`S?o`z`S:o`zNode`5!o)`2'';^F;@Y;x=`xt}oc=o.`j?''+o.`j:''`5(oc`4$9>=0&&oc`4\"^zoc(\")<0)||oc`4$T>=0)`2''}ta=n?o$Q:1;h@ii=h`4'?^Ph=s.`N@a^3||i<0?h:h`30,i);l=s.`N"
+"`g?s.`N`g:s.ln(h);t=s.`N^K?s.`N^K`8:s.lt(h)`5t^lh||l))q+=$0=@G@D(`Hd'||`He'?@w(t):'o')+(h?$0v1`Ph)`i+(l?$0v2`Pl)`i;`ltrk=0`5s.`w@R`G!p$I$2'^H^Pw=0}^F;i=o.sourceIndex`5$1'^x')@e$1'^x^Px=1;i=1`kp&&n@"
+"d)qs='&pid`P^ip,255))+(w#5p$zw`i+'&oid`P^in@t)+(x#5o$zx`i+'&ot`Pt)+(i#5oi='+i`i}`k!trk@Uqs)`2'';@h=s.vs(sed)`5trk`G@h)$h=s.mr(@o,(vt#5t`Pvt)`i+s.hav()+q+(qs?qs:s.rq(^C)),0,id,ta);qs`h;`Wm('t')`5s.p"
+"_r)s.p_r()}^7(qs);^y`o(@g;`k@g`L^9,`F$51',vb`R@G=^D=s.`N`g=s.`N^K=`E^z^x=s.ppu=^n=^nv1=^nv2=^nv3`h`5$t)`E^z@G=`E^zeo=`E^z`N`g=`E^z`N^K`h`5!id@Us.tc){s.tc=1;s.flush`Z()}`2$h`Atl`0o,t,n,vo`1;s.@G=@uo"
+"`R`N^K=t;s.`N`g=n;s.t(@g}`5pg){`E^zco`0o){`K@J\"_\",1,#8`2@uo)`Awd^zgs`0$P{`K@J$k1,#8`2s.t()`Awd^zdc`0$P{`K@J$k#8`2s.t()}}@2=(`E`I`X`8`4@ss@b0`Rd=^J;s.b=s.d.body`5$X`S#4`g){s.h=$X`S#4`g('HEAD')`5s."
+"h)s.h=s.h[0]}s.n=navigator;s.u=s.n.userAgent;@P=s.u`4'N$U6/^P`Kapn$D`g,v$D^j,ie=v`4$i'),o=s.u`4'@L '),i`5v`4'@L@b0||o>0)apn='@L';^W$7^sMicrosoft Internet Explorer'`Risns$7^sN$U'`R^c$7^s@L'`R^d=(s.u"
+"`4'Mac@b0)`5o>0)`O`qs.u`3o+6));`6ie>0){`O=`ti=v`3ie+5))`5`O>3)`O`qi)}`6@P>0)`O`qs.u`3@P+10));`l`O`qv`Rem=0`5^3#3^k){i=^e^3#3^k(256))`C(`Rem=(i^s%C4%80'?2:(i^s%U0100'?1:0))}s.sa(un`Rvl_l='`bID,vmk,p"
+"pu,@E,`b`gspace,c`V,`s@6,#1`g,^H,^1,@H';^Y=^X+',^m,$O,server,#1^K,$w@5ID,purchaseID,@p,state,zip,$f,products,`N`g,`N^K';^B`Kn=1;n<51;n++)^Y+=',prop$F+',eVar$F+',hier$F;^X2=',^S,^2,`n^j,`d,`s@8,`y@1"
+",`y^Z,`e,^w,pe$l1$l2$l3,p^I';^Y+=^X2;^9=^Y+',`b^L,`b^L#2`MSele@5,`MList,`MM$o,`w^NLinks,`w@C,`w@R,`N@a^3,`N^NFile^Ks,`NEx`m,`NIn`m,`N@SVa$j`N@S^Os,`N`gs,@G,eo';$t=pg$x^9)`5!ss)`Es()",
w=window,l=w.s_c_il,n=navigator,u=n.userAgent,v=n.appVersion,e=v.indexOf('MSIE '),m=u.indexOf('Netscape6/'),a,i,s;if(un){un=un.toLowerCase();if(l)for(i=0;i<l.length;i++){s=l[i];if(s._c=='s_c'){if(s.oun==un)return s;else if(s.fs(s.oun,un)){s.sa(un);return s}}}}
w.s_r=new Function("x","o","n","var i=x.indexOf(o);if(i>=0&&x.split)x=(x.split(o)).join(n);else while(i>=0){x=x.substring(0,i)+n+x.substring(i+o.length);i=x.indexOf(o)}return x");
w.s_d=new Function("x","var t='`^@$#',l='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',d,n=0,b,k,w,i=x.lastIndexOf('~~');if(i>0){d=x.substring(0,i);x=x.substring(i+2);while(d){w=d;i"
+"=d.indexOf('~');if(i>0){w=d.substring(0,i);d=d.substring(i+1)}else d='';b=parseInt(n/62);k=n-b*62;k=t.substring(b,b+1)+l.substring(k,k+1);x=s_r(x,k,w);n++}for(i=0;i<5;i++){w=t.substring(i,i+1);x=s_"
+"r(x,w+' ',w)}}return x");
w.s_fe=new Function("c","return s_r(s_r(s_r(c,'\\\\','\\\\\\\\'),'\"','\\\\\"'),\"\\n\",\"\\\\n\")");
w.s_fa=new Function("f","var s=f.indexOf('(')+1,e=f.indexOf(')'),a='',c;while(s>=0&&s<e){c=f.substring(s,s+1);if(c==',')a+='\",\"';else if((\"\\n\\r\\t \").indexOf(c)<0)a+=c;s++}return a?'\"'+a+'\"':"
+"a");
w.s_ft=new Function("c","c+='';var s,e,o,a,d,q,f,h,x;s=c.indexOf('=function(');while(s>=0){s++;d=1;q='';x=0;f=c.substring(s);a=s_fa(f);e=o=c.indexOf('{',s);e++;while(d>0){h=c.substring(e,e+1);if(q){i"
+"f(h==q&&!x)q='';if(h=='\\\\')x=x?0:1;else x=0}else{if(h=='\"'||h==\"'\")q=h;if(h=='{')d++;if(h=='}')d--}if(d>0)e++}c=c.substring(0,s)+'new Function('+(a?a+',':'')+'\"'+s_fe(c.substring(o+1,e))+'\")"
+"'+c.substring(e+1);s=c.indexOf('=function(')}return c;");
c=s_d(c);if(e>0){a=parseInt(i=v.substring(e+5));if(a>3)a=parseFloat(i)}else if(m>0)a=parseFloat(u.substring(m+10));else a=parseFloat(v);if(a>=5&&v.indexOf('Opera')<0&&u.indexOf('Opera')<0){w.s_c=new Function("un","pg","ss","var s=this;"+c);return new s_c(un,pg,ss)}else s=new Function("un","pg","ss","var s=new Object;"+s_ft(c)+";return s");return s(un,pg,ss)}

¿Que función tienen? Question

Un saludo Smile
avatar
r32
Moderador Global
Moderador Global

Posts : 509
KCoins : 1177
Reputación : 42
Fecha de inscripción : 03/11/2009

Premios :
Staff


Ver perfil de usuario

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  invisible_hack el Vie Feb 05, 2010 12:08 am

Hola.

Muy buen destripe de este tipo de virus, que sepas que te llevas un + 1 por mi parte bien merecido, si señor Laughing

Y pues en cuanto a los archivos JavaScript, el primero pues según lo miré por encima parece que simplemente, el primer archivo, tiene instrucciones relativas al diseño de la web, concretamente se centra en una tooltip que al parecer sale cuando entras en la pagina y tal...

Y yo creo que lo que se encarga de hacer el cambio de nick y demás es el segundo archivo, pero la verdad es que parece que viene como medio encriptado o algo el segundo archivo, osea si te fijas no está ni mucho menos igual de claro que el otro...

De todos modos, tengo que mirarlo con más detenimiento...pero creo que Novlucker nos podría ser de bastante ayuda, he visto que suele tener bastante maña a la hora de destripar virus y demás cosas dañinas, así que quizás nos pueda echar un cable bastante útil.

A ver si pronto se conecta y postea en el tema ^^
avatar
invisible_hack
CoAdmin
CoAdmin

Posts : 496
KCoins : 814
Reputación : 7
Fecha de inscripción : 02/09/2009

Staff


Ver perfil de usuario http://www.elrincondeinvisible.blogspot.com

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  novlucker el Vie Feb 05, 2010 11:38 am

Como han dicho antes, el primre javascript es para el tema del diseño, y el segundo si no me equivoco es para estadísticas Razz

Por otra parte, si ingreso a msnreview.com, no me muestra nada de eso :S , solo oun par de reviews de distintas versiones del messenger.

Saludos

_________________
"Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro."
Albert Einstein

avatar
novlucker
Colaborador
Colaborador

Posts : 129
KCoins : 200
Reputación : 3
Fecha de inscripción : 25/09/2008

Staff


Ver perfil de usuario

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  invisible_hack el Vie Feb 05, 2010 2:23 pm

¿Cómo has hecho para desencriptar el segundo archivo? Porque yo al menos no consigo entenderlo...está como ofuscado...

Mmmm...entonces, si el segundo js es para estadísticas...¿cómo hacen para cambiar el nick por la frase publicitaria? Eso si que seria interesante averiguarlo...

Un saludo.
avatar
invisible_hack
CoAdmin
CoAdmin

Posts : 496
KCoins : 814
Reputación : 7
Fecha de inscripción : 02/09/2009

Staff


Ver perfil de usuario http://www.elrincondeinvisible.blogspot.com

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  novlucker el Vie Feb 05, 2010 6:37 pm

Simplemente he buscado el segundo archivo en google XD

Además lo de cambiar el nick por la frase no se hace del lado del cliente, sino del lado servidor, hay APIs webs para interactuar con el messenger Razz

Saludos

_________________
"Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro."
Albert Einstein

avatar
novlucker
Colaborador
Colaborador

Posts : 129
KCoins : 200
Reputación : 3
Fecha de inscripción : 25/09/2008

Staff


Ver perfil de usuario

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  invisible_hack el Vie Feb 05, 2010 7:04 pm

Jaja, mira por donde, no se me ocurrió buscar los nombres en Google... Rolling Eyes


Además lo de cambiar el nick por la frase no se hace del lado del cliente, sino del lado servidor, hay APIs webs para interactuar con el messenger

Si, eso me recuerda la clase que hizo SDC en Php para interactuar desde php con el msn, para poder hacer bots y demás...

Dejo el enlace aqui por si a alguien le interesa:

http://foro.elhacker.net/php/mzk_mezzengerklient_clase_php_para_hacer_webmessengers_y_bots_msnp9-t158896.0.html

Un saludo.
avatar
invisible_hack
CoAdmin
CoAdmin

Posts : 496
KCoins : 814
Reputación : 7
Fecha de inscripción : 02/09/2009

Staff


Ver perfil de usuario http://www.elrincondeinvisible.blogspot.com

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  r32 el Sáb Feb 06, 2010 2:51 pm

Hola, pues mas bien era eso la duda de si hacian algo malo, o simplemente recopliar algun dato.
Entonces lo unico que hacen es quedarse son los datos de tu cuenta, enviar el mensaje a todos tus contactos y asi hacer una enorme base de datos.
Novlucker, he probado de entrar a (http://msnreview.com) y sigue mostrando la imagen que ves arriba, he probado en otro pc y la abre...
Al entrar a (msnire-30002.reenvio.com/) tambien nos redirecciona al sitio.

No se lo que puede pasar Question

Un saludo Smile
avatar
r32
Moderador Global
Moderador Global

Posts : 509
KCoins : 1177
Reputación : 42
Fecha de inscripción : 03/11/2009

Premios :
Staff


Ver perfil de usuario

Volver arriba Ir abajo

Re: Mensaje típico en el msn: "Quien te ha elimando del msn"

Mensaje  Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.