• Log in or sign up for an account here: https://www.sythe.org/login

Full ECO AntiCheat Client Codes!

worldspawn

Member
Banned
Joined
Jul 30, 2009
Sythe Gold
0
Messages
64
Full ECO AntiCheat Client Codes!
As you all probably know, ECO had been hacked last night due to the fact the ECO staff didn't want help with coding their anticheat and security. I previously talked to the person who hacked this website, and he had told me to spread the codes around to people through mIRC, Steam, etc. The following contains the EXACT codes the ECO AntiCheat consists of.

The coder (Showalter) used only C# to code the entire ECO Anticheat!!

From going over the whole anticheat, i have also concluded it does the following:
1) Takes Screenshot of your ingame screen. (along with your division, week, userid, teamid, and matchid)
2) Takes a Screenshot of your desktop. (along with your division, week, userid, teamid, and matchid)
3) Gets your processor's Hardware ID.
4) Gets your CPU's ID
5) Gets your steam folders.
6) Gets your processes list. (finds both closed and open processes!)
7) Gets your process activity.
8) Gets all your processes running at startup.
9) Gets your OS (operating system).
10) Gets your computer name.
11) Gets your steam install path.
12) Scans your autoexec.cfg and config.cfg.
13) Cleans up any resources used.


Dont forget to say thanks! ;)
ENJOY!



Pastebin.com - Code posted here too! (CLICKME)

Code:
using System;
using System.Net;
using System.Drawing;
using System.Drawing.Imaging;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.IO;
using System.Text;
using System.Management;
using Microsoft.Win32;
using System.Diagnostics;
using MySql.Data.MySqlClient;
using System.Threading;


// TODO
// end program if active over 2.5 hours


namespace CaptureScreen
{
	/// <summary>
	/// Summary description for Form1.
	/// </summary>
	public class MainForm : System.Windows.Forms.Form
	{
        private System.Windows.Forms.MainMenu mainMenu1;
        private System.Windows.Forms.PictureBox picScreen;
        private IContainer components;
        private Button finalizebutton;                             // Finalize, Submit, and Close button

        string steaminstallpath;                            // the steam install directory  ie: c:/programfiles/steam/
        List<string> steamaccounts = new List<string>();    // get all installed steamaccounts
        List<string> startProc = new List<string>();    
        List<string> prochistory = new List<string>();      // logs open and closed programs
        string[] originalArray;                             // the original running processes

        // track how long the match takes place
        DateTime startTime;

        // timer when to take screenshots
       System.Windows.Forms.Timer Clock;

        // screenshot count used to make filename unique
        int count = 0;
        int errorcount = 0;

        // info to be sent to dbase
        string hardwareID;
        string computerName;
        string steamFolders;
        string processesList;
        string processActivity;
        string OS;
        //string[] league;
        //string[] leaguename;
        //string[] division;
        //string[] season;
        //string[] week;
        //string[] map;
        string matchlegth;
        //string[] teamname;
        //string[] opponent;
        //string[] matchid;
        //string[] uploadservers;
        string selectedleague;
        string selectedmatch;

        private Button loginbutton;
        private ProgressBar progressBar;
        private TextBox password;
        private TextBox userid;
        private Label login_label;
        private Label password_label;
        private ComboBox league_combobox;
        private ComboBox match_combobox;

        string[] matchid = new string[20];
        string[] teamid = new string[20];
        string[] league = new string[20];
        string[] division = new string[20];
        string[] season = new string[20];
        string[] week = new string[20];
        string[] map = new string[20];
        string[] teamname = new string[20];
        string[] opponent = new string[20];
        string[] leaguename = new string[20];
        private Button startbutton;
        private Label leaguelabel;
        private Label matchlabel;
        private Label finalizelabel;
        string[,] uploadservers = new string[20, 20];    // 20 is the max number of alternative servers to check
        bool sendinfo = false;
        private PictureBox pictureBox1;
        bool firstss = true;


		public MainForm()
		{
			//
			// Required for Windows Form Designer support
			//
			InitializeComponent();
            this.Closing += new CancelEventHandler(MainForm_Closing);

            System.Diagnostics.Process.GetCurrentProcess().PriorityClass =
            System.Diagnostics.ProcessPriorityClass.Normal;


            // Get OS, Used for the Vista Config Workaround
            OS = OS + System.Environment.OSVersion.ToString();

            // Get Computer Name
            computerName = computerName + System.Environment.MachineName;

            // Get processor's Hardward ID
            string cpuInfo = string.Empty;
            ManagementClass mc = new ManagementClass("win32_processor");
            ManagementObjectCollection moc = mc.GetInstances();
            foreach (ManagementObject mo in moc)
            {
                if (cpuInfo == "")
                {
                    //Get only the first CPU's ID
                    cpuInfo = mo.Properties["processorID"].Value.ToString();
                    break;
                }
            }
            hardwareID = hardwareID + cpuInfo;


            // Get Steam Install Path
            try
            {
                Object steampath;
                String RegID = "SOFTWARE\\Valve\\Steam\\";
                RegistryKey key = Registry.CurrentUser;
                key = key.OpenSubKey(RegID);
                steampath = key.GetValue("SteamPath");
                steampath = steampath + "\\steamapps\\";
                steaminstallpath = steampath.ToString();
                if (steampath != null)
                {
                    DirectoryInfo di = new DirectoryInfo(steampath.ToString());
                    DirectoryInfo[] rgFolders = di.GetDirectories();
                    foreach (DirectoryInfo fi in rgFolders)
                    {
                        if (fi.Name != "common" && fi.Name != "SourceMods")
                        {
                            steamFolders = steamFolders + Environment.NewLine + fi.Name;
                            steamaccounts.Add(fi.Name);
                            writeConfigs(steampath.ToString() + fi.Name);

                        }
                    }
                }
            }
            catch { }




            // All process running at startup
            startProc.Clear();

            Process[] processlist = Process.GetProcesses();
            foreach (Process theprocess in processlist)
            {
                startProc.Add(theprocess.ProcessName + "_" + theprocess.Id);
                processesList = processesList + theprocess.Id + ";" + theprocess.ProcessName + ";";

            }
            //

            process_Timer();

		}


        private void process_Timer()
        {
            Clock = new System.Windows.Forms.Timer();
            Clock.Interval = 1000;
            Clock.Start();
            Clock.Tick += new EventHandler(getProcesses);
        }

        private void getProcesses(object sender, EventArgs eArgs)
        {

            // Setup list that holds the latest processes running
            List<string> curProc = new List<string>();
            //curProc.Clear();

            // get processes into list
            Process[] processlist = Process.GetProcesses();
            foreach (Process theprocess in processlist)
            {
                curProc.Add(theprocess.ProcessName + "_" + theprocess.Id);
                //String runningprocesses = String.Format("ID: {1} Process: {0}", theprocess.ProcessName, theprocess.Id);
                //processes.Text = processes.Text + runningprocesses + Environment.NewLine

            }

            // Convert list into array to be compared
            string[] latestArray = curProc.ToArray();
            originalArray = startProc.ToArray();
            //string[] originalArray = { "Red", "firefox", "Yellow", "rundll32", "Purple", "rundll32", "hack" };

            // Find Closed Processes
            int counter = 0;
            foreach (string nextRole in originalArray)
            {
                if (Array.IndexOf(latestArray, nextRole) == -1)
                {
                    processActivity = processActivity + "Closed " + nextRole + Environment.NewLine;
                    startProc.Remove(nextRole);

                }
                counter++;
            }

            // Find Opened Processes
            counter = 0;
            foreach (string nextRole in latestArray)
            {
                if (Array.IndexOf(originalArray, nextRole) == -1)
                {
                    processActivity = processActivity + "Opened " + nextRole + Environment.NewLine;
                    startProc.Add(nextRole);

                }
                counter++;

            }

        }

        private void init_Timer()
        {
            if (firstss == true)
            {
                Clock = new System.Windows.Forms.Timer();
                Clock.Interval = 1000;
                Clock.Start();
                Clock.Tick += new EventHandler(Timer_Tick);

                // Start the Match Length Clock
                startTime = DateTime.Now;
            }
            else
            {
                Random RandomClass = new Random();
                int RandomNumber = RandomClass.Next(5, 25);
                int randomtime = RandomNumber * 1000;

                Clock = new System.Windows.Forms.Timer();
                Clock.Interval = randomtime;
                Clock.Start();
                Clock.Tick += new EventHandler(Timer_Tick);

            }

        }

        public void Timer_Tick(object sender, EventArgs eArgs)
        {
            Clock.Stop();
            if (sender == Clock)
            {

                string exePath = System.IO.Path.GetDirectoryName(System.Windows.Forms.Application.ExecutablePath);
                exePath = exePath + @"\eco_ac32.dll";
                System.Console.WriteLine(exePath);
                System.Console.WriteLine(steaminstallpath);
                //picScreen.Image.Save(exePath);
            
                Bitmap bmp1 = CaptureScreen.GetDesktopImage();
                //if (Clock.Interval <= (12 * 1000))
                //{
                    //bmp1 = ResizeBitmap(bmp1, 416, 312);
                //}
                ImageCodecInfo jgpEncoder = GetEncoder(ImageFormat.Jpeg);

                // Create an Encoder object based on the GUID
                // for the Quality parameter category.
                System.Drawing.Imaging.Encoder myEncoder =
                    System.Drawing.Imaging.Encoder.Quality;

                // Create an EncoderParameters object.
                // An EncoderParameters object has an array of EncoderParameter
                // objects. In this case, there is only one
                // EncoderParameter object in the array.
                EncoderParameters myEncoderParameters = new EncoderParameters(1);

                if (Clock.Interval >= (22 * 1000) || firstss == true)
                {
                    int scale_x = (int)Math.Round((bmp1.Width / 1.5));
                    int scale_y = (int)Math.Round(bmp1.Height / 1.5);

                    if (scale_x >= 801 && scale_y >= 601)
                    {
                        bmp1 = ResizeBitmap(bmp1, scale_x, scale_y);
                    }
                    else
                    {
                        bmp1 = ResizeBitmap(bmp1, 800, 600);
                    }

                    Console.WriteLine("scale_x: " + scale_x + "  scale_y: " + scale_y);
                    EncoderParameter myEncoderParameter = new EncoderParameter(myEncoder, 80L);

                    myEncoderParameters.Param[0] = myEncoderParameter;
                    bmp1.Save(exePath, jgpEncoder, myEncoderParameters);
                    sendImage(exePath, "large");
                    firstss = false;

                }
                else
                {
                    bmp1 = ResizeBitmap(bmp1, 416, 312);
                    EncoderParameter myEncoderParameter = new EncoderParameter(myEncoder, 30L);

                    myEncoderParameters.Param[0] = myEncoderParameter;
                    bmp1.Save(exePath, jgpEncoder, myEncoderParameters);
                    sendImage(exePath, "thumb");
                }

                count++;
                //Clock.Stop;     // stop timer untill file uploads

            }
        }

        public Bitmap ResizeBitmap(Bitmap b, int nWidth, int nHeight)
        {
            Bitmap result = new Bitmap(nWidth, nHeight);
            using (Graphics g = Graphics.FromImage((Image)result))
                g.DrawImage(b, 0, 0, nWidth, nHeight);
            return result;
        }

        private ImageCodecInfo GetEncoder(ImageFormat format)
        {

            ImageCodecInfo[] codecs = ImageCodecInfo.GetImageDecoders();

            foreach (ImageCodecInfo codec in codecs)
            {
                if (codec.FormatID == format.Guid)
                {
                    return codec;
                }
            }
            return null;
        }



        private void writeConfigs (string steamfolder)
        {
            steamfolder = steamfolder + "\\counter-strike source\\cstrike\\cfg\\";

            if (File.Exists(steamfolder + "config.cfg"))
            {
                String line;
                bool execExists = false;
                try
                {
                    //Pass the file path and file name to the StreamReader constructor
                    StreamReader sr = new StreamReader(steamfolder + "autoexec.cfg");

                    //Read the first line of text
                    line = sr.ReadLine();

                    //Continue to read until you reach end of file
                    while (line != null)
                    {
                        Console.WriteLine(line);
                        //write the lie to console window
                        //Console.WriteLine(line);
                        //Read the next line
                        if (line == "exec eco-config.cfg")
                        {
                            execExists = true;

                        }
                        line = sr.ReadLine();
                    }

                    //close the file
                    sr.Close();
                    Console.ReadLine();
                }
                catch (Exception e)
                {
                    Console.WriteLine("Exception: " + e.Message);
                }


                // Write to the config folder
                try
                {
                    //Open the File
                    StreamWriter sw2 = new StreamWriter(steamfolder + "autoexec.cfg", true, Encoding.UTF8);

                    //Writeout the numbers 1 to 10 on the same line.
                    if (execExists == false)
                    {
                        sw2.WriteLine("exec eco-config.cfg");
                    }
                    //close the file
                    sw2.Close();

                    try
                    {
                        //Open the File
                        StreamWriter sw = new StreamWriter(steamfolder + "eco-config.cfg");

                        //Writeout the numbers 1 to 10 on the same line.
                        sw.WriteLine("mat_aaquality 0");
                        sw.WriteLine("mat_antialias 0");
                        sw.WriteLine("cl_updaterate 101");
                        sw.WriteLine("cl_cmdrate 101");
                        sw.WriteLine("rate 30000");

                        //close the file
                        sw.Close();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine("Exception: " + e.Message);
                    }

                }
                catch (Exception e)
                {
                    Console.WriteLine("Exception: " + e.Message);
                }

            }
        }


		/// <summary>
		/// Clean up any resources being used.
		/// </summary>
		protected override void Dispose( bool disposing )
		{
			if( disposing )
			{
				if (components != null) 
				{
					components.Dispose();
				}
			}
			base.Dispose( disposing );
		}


		#region Windows Form Designer generated code
		/// <summary>
		/// Required method for Designer support - do not modify
		/// the contents of this method with the code editor.
		/// </summary>
		private void InitializeComponent()
		{
            this.components = new System.ComponentModel.Container();
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
            this.mainMenu1 = new System.Windows.Forms.MainMenu(this.components);
            this.picScreen = new System.Windows.Forms.PictureBox();
            this.finalizebutton = new System.Windows.Forms.Button();
            this.loginbutton = new System.Windows.Forms.Button();
            this.progressBar = new System.Windows.Forms.ProgressBar();
            this.password = new System.Windows.Forms.TextBox();
            this.userid = new System.Windows.Forms.TextBox();
            this.login_label = new System.Windows.Forms.Label();
            this.password_label = new System.Windows.Forms.Label();
            this.league_combobox = new System.Windows.Forms.ComboBox();
            this.match_combobox = new System.Windows.Forms.ComboBox();
            this.startbutton = new System.Windows.Forms.Button();
            this.leaguelabel = new System.Windows.Forms.Label();
            this.matchlabel = new System.Windows.Forms.Label();
            this.finalizelabel = new System.Windows.Forms.Label();
            this.pictureBox1 = new System.Windows.Forms.PictureBox();
            ((System.ComponentModel.ISupportInitialize)(this.picScreen)).BeginInit();
            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
            this.SuspendLayout();
            // 
            // picScreen
            // 
            this.picScreen.Dock = System.Windows.Forms.DockStyle.Fill;
            this.picScreen.Image = ((System.Drawing.Image)(resources.GetObject("picScreen.Image")));
            this.picScreen.InitialImage = null;
            this.picScreen.Location = new System.Drawing.Point(0, 0);
            this.picScreen.Margin = new System.Windows.Forms.Padding(0);
            this.picScreen.Name = "picScreen";
            this.picScreen.Size = new System.Drawing.Size(500, 300);
            this.picScreen.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
            this.picScreen.TabIndex = 5;
            this.picScreen.TabStop = false;
            this.picScreen.Click += new System.EventHandler(this.picScreen_Click);
            // 
            // finalizebutton
            // 
            this.finalizebutton.Location = new System.Drawing.Point(280, 248);
            this.finalizebutton.Name = "finalizebutton";
            this.finalizebutton.Size = new System.Drawing.Size(103, 32);
            this.finalizebutton.TabIndex = 14;
            this.finalizebutton.Text = "Finalize";
            this.finalizebutton.UseVisualStyleBackColor = true;
            this.finalizebutton.Visible = false;
            this.finalizebutton.Click += new System.EventHandler(this.button1_Click);
            // 
            // loginbutton
            // 
            this.loginbutton.Location = new System.Drawing.Point(280, 248);
            this.loginbutton.Name = "loginbutton";
            this.loginbutton.Size = new System.Drawing.Size(103, 32);
            this.loginbutton.TabIndex = 15;
            this.loginbutton.Text = "Login";
            this.loginbutton.UseVisualStyleBackColor = true;
            this.loginbutton.Click += new System.EventHandler(this.button2_Click);
            // 
            // progressBar
            // 
            this.progressBar.Location = new System.Drawing.Point(194, 220);
            this.progressBar.Name = "progressBar";
            this.progressBar.Size = new System.Drawing.Size(189, 19);
            this.progressBar.TabIndex = 16;
            this.progressBar.Visible = false;
            this.progressBar.Click += new System.EventHandler(this.progressBar_Click);
            // 
            // password
            // 
            this.password.Location = new System.Drawing.Point(194, 218);
            this.password.Name = "password";
            this.password.Size = new System.Drawing.Size(189, 20);
            this.password.TabIndex = 2;
            // 
            // userid
            // 
            this.userid.Location = new System.Drawing.Point(194, 190);
            this.userid.Name = "userid";
            this.userid.Size = new System.Drawing.Size(189, 20);
            this.userid.TabIndex = 1;
            // 
            // login_label
            // 
            this.login_label.AutoSize = true;
            this.login_label.BackColor = System.Drawing.Color.Black;
            this.login_label.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.login_label.ForeColor = System.Drawing.Color.White;
            this.login_label.Location = new System.Drawing.Point(140, 194);
            this.login_label.Name = "login_label";
            this.login_label.Size = new System.Drawing.Size(41, 15);
            this.login_label.TabIndex = 19;
            this.login_label.Text = "Login:";
            // 
            // password_label
            // 
            this.password_label.AutoSize = true;
            this.password_label.BackColor = System.Drawing.Color.Black;
            this.password_label.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.password_label.ForeColor = System.Drawing.Color.White;
            this.password_label.Location = new System.Drawing.Point(113, 221);
            this.password_label.Name = "password_label";
            this.password_label.Size = new System.Drawing.Size(68, 15);
            this.password_label.TabIndex = 20;
            this.password_label.Text = "Password:";
            this.password_label.Click += new System.EventHandler(this.password_label_Click);
            // 
            // league_combobox
            // 
            this.league_combobox.FormattingEnabled = true;
            this.league_combobox.Location = new System.Drawing.Point(194, 189);
            this.league_combobox.Name = "league_combobox";
            this.league_combobox.Size = new System.Drawing.Size(189, 21);
            this.league_combobox.TabIndex = 1;
            this.league_combobox.Visible = false;
            this.league_combobox.SelectedIndexChanged += new System.EventHandler(this.league_combobox_SelectedIndexChanged);
            // 
            // match_combobox
            // 
            this.match_combobox.FormattingEnabled = true;
            this.match_combobox.Location = new System.Drawing.Point(194, 218);
            this.match_combobox.Name = "match_combobox";
            this.match_combobox.Size = new System.Drawing.Size(189, 21);
            this.match_combobox.TabIndex = 2;
            this.match_combobox.Visible = false;
            this.match_combobox.SelectedIndexChanged += new System.EventHandler(this.match_combobox_SelectedIndexChanged);
            // 
            // startbutton
            // 
            this.startbutton.Location = new System.Drawing.Point(280, 248);
            this.startbutton.Name = "startbutton";
            this.startbutton.Size = new System.Drawing.Size(103, 32);
            this.startbutton.TabIndex = 3;
            this.startbutton.Text = "Start Match";
            this.startbutton.UseVisualStyleBackColor = true;
            this.startbutton.Visible = false;
            this.startbutton.Click += new System.EventHandler(this.startbutton_Click);
            // 
            // leaguelabel
            // 
            this.leaguelabel.AutoSize = true;
            this.leaguelabel.BackColor = System.Drawing.Color.Black;
            this.leaguelabel.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.leaguelabel.ForeColor = System.Drawing.Color.White;
            this.leaguelabel.Location = new System.Drawing.Point(90, 193);
            this.leaguelabel.Name = "leaguelabel";
            this.leaguelabel.Size = new System.Drawing.Size(91, 15);
            this.leaguelabel.TabIndex = 24;
            this.leaguelabel.Text = "Select League:";
            this.leaguelabel.Visible = false;
            // 
            // matchlabel
            // 
            this.matchlabel.AutoSize = true;
            this.matchlabel.BackColor = System.Drawing.Color.Black;
            this.matchlabel.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.matchlabel.ForeColor = System.Drawing.Color.White;
            this.matchlabel.Location = new System.Drawing.Point(97, 220);
            this.matchlabel.Name = "matchlabel";
            this.matchlabel.Size = new System.Drawing.Size(84, 15);
            this.matchlabel.TabIndex = 25;
            this.matchlabel.Text = "Select Match:";
            this.matchlabel.Visible = false;
            // 
            // finalizelabel
            // 
            this.finalizelabel.AutoSize = true;
            this.finalizelabel.BackColor = System.Drawing.Color.Black;
            this.finalizelabel.Font = new System.Drawing.Font("Arial", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.finalizelabel.ForeColor = System.Drawing.Color.White;
            this.finalizelabel.Location = new System.Drawing.Point(191, 193);
            this.finalizelabel.Name = "finalizelabel";
            this.finalizelabel.Size = new System.Drawing.Size(51, 15);
            this.finalizelabel.TabIndex = 26;
            this.finalizelabel.Text = "Activity:";
            this.finalizelabel.Visible = false;
            this.finalizelabel.Click += new System.EventHandler(this.finalizelabel_Click);
            // 
            // pictureBox1
            // 
            this.pictureBox1.BackColor = System.Drawing.Color.Black;
            this.pictureBox1.Cursor = System.Windows.Forms.Cursors.Hand;
            this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
            this.pictureBox1.Location = new System.Drawing.Point(470, 20);
            this.pictureBox1.Name = "pictureBox1";
            this.pictureBox1.Size = new System.Drawing.Size(10, 10);
            this.pictureBox1.TabIndex = 27;
            this.pictureBox1.TabStop = false;
            this.pictureBox1.Click += new System.EventHandler(this.pictureBox1_Click_1);
            // 
            // MainForm
            // 
            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
            this.ClientSize = new System.Drawing.Size(500, 300);
            this.Controls.Add(this.pictureBox1);
            this.Controls.Add(this.finalizelabel);
            this.Controls.Add(this.matchlabel);
            this.Controls.Add(this.leaguelabel);
            this.Controls.Add(this.startbutton);
            this.Controls.Add(this.match_combobox);
            this.Controls.Add(this.league_combobox);
            this.Controls.Add(this.password_label);
            this.Controls.Add(this.login_label);
            this.Controls.Add(this.userid);
            this.Controls.Add(this.password);
            this.Controls.Add(this.progressBar);
            this.Controls.Add(this.loginbutton);
            this.Controls.Add(this.finalizebutton);
            this.Controls.Add(this.picScreen);
            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
            this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
            this.MaximizeBox = false;
            this.MaximumSize = new System.Drawing.Size(500, 300);
            this.Menu = this.mainMenu1;
            this.MinimumSize = new System.Drawing.Size(500, 300);
            this.Name = "MainForm";
            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
            this.Text = "ECO ANTI-CHEAT";
            this.Load += new System.EventHandler(this.MainForm_Load);
            ((System.ComponentModel.ISupportInitialize)(this.picScreen)).EndInit();
            ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
            this.ResumeLayout(false);
            this.PerformLayout();

		}
		#endregion

		/// <summary>
		/// The main entry point for the application.
		/// </summary>
		[STAThread]
		static void Main() 
		{
			Application.Run(new MainForm());
		}

		private void mnuCaptureScreen_Click(object sender, System.EventArgs e)
		{
			picScreen.Image = CaptureScreen.GetDesktopImage();
		}

		private void mnuExit_Click(object sender, System.EventArgs e)
		{

		}

        private void picScreen_Click(object sender, EventArgs e)
        {

        }

        private void menuItem1_Click(object sender, EventArgs e)
        {

        }

        private void menuItem2_Click(object sender, EventArgs e)
        {

        }

        public void MainForm_Closing(object sender, CancelEventArgs cArgs)
        {
            if (sendinfo == true)
            {
                finalize();
            }

            if (steaminstallpath != null)
            {
                DirectoryInfo di = new DirectoryInfo(steaminstallpath);
                //FileInfo[] rgFiles = di.GetFiles("*");
                DirectoryInfo[] rgFolders = di.GetDirectories();
                foreach (DirectoryInfo fi in rgFolders)
                {
                    if (fi.Name != "common" && fi.Name != "SourceMods")
                    {
                        steamFolders = steamFolders + Environment.NewLine + fi.Name;
                        unwriteConfigs(steaminstallpath + fi.Name);

                    }
                }
            }


        }


        private void unwriteConfigs(string steamfolder)
        {
            steamfolder = steamfolder + "\\counter-strike source\\cstrike\\cfg\\";
            if (File.Exists(steamfolder + "autoexec.cfg"))
            {
                StringBuilder newFile = new StringBuilder();

                string temp = "";

                string[] file = File.ReadAllLines(steamfolder + "autoexec.cfg");

                foreach (string line in file)
                {

                    if (line.Contains("exec eco-config.cfg"))
                    {

                        temp = line.Replace("exec eco-config.cfg", "");

                        newFile.Append(temp);

                        continue;

                    }

                    newFile.Append(line + "\r\n");

                }

                File.WriteAllText(steamfolder + "autoexec.cfg", newFile.ToString());
            }
        }

        private void MainForm_Load(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, System.EventArgs e) // Finalize Button
        {
            finalize();
        }


        private void finalize()
        {
            try
            {
                Clock.Stop();
                finalizelabel.Text = "Finalizing...";
                string MyConString = "SERVER=66.189.220.3;" +
                    "DATABASE= league_ac;" +
                    "UID=acs;" +
                    "PASSWORD=error;";
                MySqlConnection connection = new MySqlConnection(MyConString);
                MySqlCommand command = connection.CreateCommand();
                MySqlDataReader Reader;

                //format the steamaccount array
                string steamaccts = "";
                string[] acctsarray = steamaccounts.ToArray();
                foreach (string accts in acctsarray)
                {
                    steamaccts = steamaccts + accts.ToString() + ";";
                }


                DateTime stopTime = DateTime.Now;
                TimeSpan duration = stopTime - startTime;
                string matchlength = duration.Hours + ":" + duration.Minutes + ":" + duration.Seconds;
                Console.WriteLine("Time Difference (seconds): " + duration.Seconds);
                Console.WriteLine("Time Difference (minutes): " + duration.Minutes);
                Console.WriteLine("Time Difference (hours): " + duration.Hours);
                Console.WriteLine("Time Difference (days): " + duration.Days);


                command.CommandText = "insert into league_ac.css (userid,processlist,processactivity,computername,hardwareid,os,steamaccounts,matchlength) values ('" + computerName + "', '" + processesList + "','" + processActivity + "','" + computerName + "', '" + hardwareID + "', '" + OS + "', '" + steamaccts + "', '" + matchlength + "')";

                connection.Open();
                Reader = command.ExecuteReader();
                connection.Close();

                System.Windows.Forms.Application.Exit();
            }
            catch { MessageBox.Show("Server is unavailable, please retry", "Error"); }
        }

        private void sendImage(string filelocation, string imagesize)
        {
            int x = 10;

            ImageCodecInfo jgpEncoder = GetEncoder(ImageFormat.Jpeg);
            System.Drawing.Imaging.Encoder myEncoder =
            System.Drawing.Imaging.Encoder.Quality;
            EncoderParameter myEncoderParameter = new EncoderParameter(myEncoder, 30L);

            byte[] blob;
            //Stream test;
            PointofEntry:
            try
            {

                // Ping server and make sure it lives
                WebClient myWebClient = new WebClient();

                string uriString = "http://" + uploadservers[Convert.ToInt16(selectedmatch), x] + "/eco-ac/ping.php";

                Stream myStream = myWebClient.OpenRead(uriString);
                StreamReader sr = new StreamReader(myStream);
                string webresponse = sr.ReadToEnd();
                webresponse = webresponse.Trim();

                if (webresponse == "Pong")
                {
                    // Send the Image
                    System.Net.WebClient Client = new System.Net.WebClient();
                    Client.Headers.Add("Content-Type", "binary/octet-stream");
                    UploadFileInBackground2("http://" + uploadservers[Convert.ToInt16(selectedmatch), x] + "/eco-ac/eco_ac_uploader.php?userid=" + userid.Text + "&league=" + league[Convert.ToInt16(selectedmatch)] + "&division=" + division[Convert.ToInt16(selectedmatch)] + "&week=" + week[Convert.ToInt16(selectedmatch)] + "&teamid=" + teamid[Convert.ToInt16(selectedmatch)] + "&matchid=" + matchid[Convert.ToInt16(selectedmatch)] + "&size=" + imagesize + "&count=" + count, filelocation);

                }
                else
                {
                    throw new System.ArgumentException("Did not return Ping Request", "webresponse");
                }
            }
            catch {
                Console.WriteLine("trying another server");
                x++;
                goto PointofEntry;
            }


        }



        // Sample call: UploadFileInBackground2("http://www.contoso.com/fileUpload.aspx", "data.txt")
        private void UploadFileInBackground2(string address, string fileName)
        {
            WebClient client = new WebClient();
            Uri uri = new Uri(address);

            client.UploadFileCompleted += new UploadFileCompletedEventHandler(UploadFileCallback2);

            // Specify a progress notification handler.
            client.UploadProgressChanged += new UploadProgressChangedEventHandler(UploadProgressCallback);
            client.UploadFileAsync(uri, "POST", fileName);
            Console.WriteLine("File upload started.");
        }

        private void UploadFileCallback2(object sender, EventArgs eArgs)
        {
            Console.WriteLine("IM A WINNER!");
            this.progressBar.Value = 0;

            init_Timer();

        }


        private void UploadProgressCallback(object sender, UploadProgressChangedEventArgs e)
        {
            // Displays the operation identifier, and the transfer progress.
            Console.WriteLine("{0}    uploaded {1} of {2} bytes. {3} % complete...",
                (string)e.UserState,
                e.BytesSent,
                e.TotalBytesToSend,
                e.ProgressPercentage);
                //Thread.Sleep(300);  // throttle the upload bandwidth

            if (e.ProgressPercentage <= 50 && e.ProgressPercentage >= 0)
            {
                this.progressBar.Value = e.ProgressPercentage * 2;
            }
        }
        private void DownloadProgressCallback(object sender, DownloadProgressChangedEventArgs e)
        {
            // Displays the operation identifier, and the transfer progress.
            Console.WriteLine("{0}    downloaded {1} of {2} bytes. {3} % complete...",
                (string)e.UserState,
                e.BytesReceived,
                e.TotalBytesToReceive,
                e.ProgressPercentage);
        }

        private void button2_Click(object sender, EventArgs e)
        {
            //init_Timer(); 
            // grab login data
            authenticate();

        }

        private void password_label_Click(object sender, EventArgs e)
        {

        }

        private void authenticate()
        {
            // User Login Check, recieve array of useful info to populate game selection lists
            WebClient myWebClient = new WebClient();

            string uriString = "http://66.189.220.3/eco/eco-ac/eco_ac_login.php?userid=" + userid.Text + "&password=" + password.Text;

            Stream myStream = myWebClient.OpenRead(uriString);
            StreamReader sr = new StreamReader(myStream);
            string webresponse = sr.ReadToEnd();
            webresponse = webresponse.Trim();
            if (webresponse == "Login Failed")
            {
                MessageBox.Show("Login Failed, try again", "Error");
                
            }
            else
            {
                string[] leaguearray = new string[15];
                string[] acsSettingsarray = new string[29];
                char[] splitter = { ',' };
                char[] splitter2 = { ';' };
                leaguearray = webresponse.Split(splitter2);


                for (int y = 0; y < leaguearray.Length; y++)
                {
                    try
                    {
                        acsSettingsarray = leaguearray[y].Split(splitter);
                        matchid[y] = acsSettingsarray[0];
                        league[y] = acsSettingsarray[1];
                        division[y] = acsSettingsarray[2];
                        season[y] = acsSettingsarray[3];
                        week[y] = acsSettingsarray[4];
                        map[y] = acsSettingsarray[5];
                        teamname[y] = acsSettingsarray[6];
                        opponent[y] = acsSettingsarray[7];
                        leaguename[y] = acsSettingsarray[8];
                        teamid[y] = acsSettingsarray[9];

                        for (int x = 10; x < acsSettingsarray.Length; x++)   // get all available upload servers
                        {
                            uploadservers[y,x] = acsSettingsarray[x];
                        }



                        // determine if the leaguename is listed twice or more in the combobox
                        bool leaguedouble = false;
                        for (int i = 0; i < league_combobox.Items.Count; i++)
                        {
                            Console.WriteLine(leaguename[i] + " " + leaguename[y]);
                            if (leaguename[y] == league_combobox.Items[i].ToString())
                            {
                                leaguedouble = true;
                            }
                        }
                        if (leaguedouble == false)
                        {
                            league_combobox.Items.Add(leaguename[y]); // sort out the doubles first
                        }
                        //



                        for (int x = 0; x < acsSettingsarray.Length; x++)   // for testing, prints all info recieved from server
                        {
                            Console.WriteLine(acsSettingsarray[x] + " " + acsSettingsarray.Length);
                        }

                        loginbutton.Visible = false;
                        userid.Visible = false;
                        password.Visible = false;
                        login_label.Visible = false;
                        password_label.Visible = false;
                        league_combobox.Visible = true;
                        match_combobox.Visible = true;
                        leaguelabel.Visible = true;
                        matchlabel.Visible = true;


                    }
                    catch { MessageBox.Show("Server is unavailable, please retry", "Error"); }
                }

            }

            Console.WriteLine("\nDisplaying Data :\n");
            Console.WriteLine(webresponse);
            myStream.Close();
        }

        private void league_combobox_SelectedIndexChanged(object sender, EventArgs e)
        {
            selectedleague = league_combobox.SelectedItem.ToString();
            match_combobox.Items.Clear(); // clear all from match combobox so matches arent added twice
            Console.WriteLine(selectedleague);
            for (int x = 0; x < teamname.Length; x++)   // get all available upload servers
            {
                if (leaguename[x] == selectedleague)
                {
                    //match_combobox.Items.Add(teamname[x] + " (home) Vs " + opponent[x] + " (away)");
                    match_combobox.Items.Add(new itemobject(teamname[x] + " (home) Vs " + opponent[x] + " (away)", x));
                }
            }
        }

        private void match_combobox_SelectedIndexChanged(object sender, EventArgs e)
        {
            // track the selected match array id
            itemobject obj = (itemobject)match_combobox.SelectedItem;
            selectedmatch = obj.Value.ToString();
            Console.WriteLine("Selected: " + selectedmatch);
            startbutton.Visible = true;
        }

        private void startbutton_Click(object sender, EventArgs e)
        {
            init_Timer();   // begin with the screenshots
            sendinfo = true;

            startbutton.Visible = false;
            match_combobox.Visible = false;
            league_combobox.Visible = false;
            leaguelabel.Visible = false;
            matchlabel.Visible = false;
            finalizebutton.Visible = true;
            progressBar.Visible = true;
            finalizelabel.Visible = true;
        }

        private void progressBar_Click(object sender, EventArgs e)
        {

        }


        private void finalizelabel_Click(object sender, EventArgs e)
        {

        }

        private void pictureBox1_Click_1(object sender, EventArgs e)
        {
            finalize();
        }




	}

}bebe
 
Full ECO AntiCheat Client Codes!
u kids are bad thats the sourcecode from 3 months ago
 
Runescape Gamblingrunescape gambling
Back
Top