예제 #1
0
        public static CallHijacker.Function CreateFunction()
        {
            CallHijacker.Function func = new CallHijacker.Function();
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("Search By: " + Environment.NewLine);
            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("[1] MethodName" + Environment.NewLine + "[2] Parameters" + Environment.NewLine + "[3] MDToken" + Environment.NewLine);
            int parse3 = Convert.ToInt32(WriteInput());

            Console.Clear();
            if (parse3 == 1)
            {
                func.SearchBy = "MethodName";
            }
            else if (parse3 == 2)
            {
                func.SearchBy           = "Parameters";
                Console.ForegroundColor = ConsoleColor.White;
                Console.WriteLine("Parameter: ");
                func.Parameter          = Convert.ToInt32(Console.ReadLine());
                Console.ForegroundColor = ConsoleColor.Cyan;
                Console.Clear();
            }
            else if (parse3 == 3)
            {
                func.SearchBy = "MDToken";
            }
            Console.ForegroundColor = ConsoleColor.White;

            Console.WriteLine("SearchFor: ");
            Console.ForegroundColor = ConsoleColor.Cyan;

            func.SearchFor = Console.ReadLine();
            Console.Clear();
            Console.ForegroundColor = ConsoleColor.White;

            Console.WriteLine("Replace Result With: ");
            string readline = Console.ReadLine();

            Console.Clear();
            func.ReplaceResultWith = readline;
            if (readline == "*Nothing*")
            {
                func.ReplaceResultWith = null;
            }
            if (readline == "*True*")
            {
                func.ReplaceResultWith = true;
            }
            if (readline == "*False*")
            {
                func.ReplaceResultWith = false;
            }
            Console.ForegroundColor = ConsoleColor.Cyan;

            Console.WriteLine("[1] Add Function Inside This Function");
            Console.WriteLine("[2] Continue");
            int inpupt = Convert.ToInt32(WriteInput());

            Console.Clear();
            if (inpupt == 2)
            {
                return(func);
            }
            if (inpupt == 1)
            {
                func.ContinueAdvanced = CreateFunction();
            }
            return(func);
        }
예제 #2
0
        public static CallHijacker.Function CreateFunction(CallHijacker.Function func)
        {
            Console.ForegroundColor = ConsoleColor.White;
            Console.WriteLine("Search By: " + Environment.NewLine);
            Console.ForegroundColor = ConsoleColor.Cyan;
            Console.WriteLine("[1] MethodName" + Environment.NewLine + "[2] MDToken" + Environment.NewLine);
            int parse3 = Convert.ToInt32(WriteInput());

            if (parse3 == 1)
            {
                Method method = new Method();
                Console.WriteLine("Method Name:");
                method.MethodName = WriteInput();
                Console.Clear();
                Console.WriteLine("Replace Result With: (*null* if do nothing)");
                method.ReplaceResultWith = ParseString(WriteInput());
                Console.Clear();
                Console.WriteLine("[1] Add Edit Parameter\n[2]Continue");
                if (Convert.ToInt32(WriteInput()) == 1)
                {
                    method.Param = new List <CallHijacker.Parameter>();
                    for (; ;)
                    {
                        method.Param.Add(GenerateParam());
                        Console.WriteLine("[1] Add Edit Parameter\n[2]Continue");
                        if (Convert.ToInt32(WriteInput()) != 1)
                        {
                            break;
                        }
                    }
                }
                Console.Clear();
                func.Methods.Add(method);
                Console.WriteLine("[1] Continue\n[2] Save");
                int parse2 = Convert.ToInt32(WriteInput());
                if (parse2 == 1)
                {
                    CreateFunction(func);
                }
                else
                {
                    return(func);
                }
            }
            else
            {
                if (parse3 == 3)
                {
                }
                else
                {
                    if (parse3 == 2)
                    {
                        CallHijacker.MDToken MDTok = new CallHijacker.MDToken();
                        Console.WriteLine("MDToken:");
                        MDTok.MDTokenInt = Convert.ToInt32(WriteInput());
                        Console.Clear();
                        Console.WriteLine("Replace Result With: (*null* if do nothing)");
                        string input = WriteInput();
                        MDTok.ReplaceResultWith = ParseString(input);
                        Console.Clear();
                        Console.WriteLine();
                        Console.WriteLine("[1] Add Edit Parameter\n[2]Continue");
                        if (Convert.ToInt32(WriteInput()) == 1)
                        {
                            MDTok.Param = new List <CallHijacker.Parameter>();
                            for (; ;)
                            {
                                MDTok.Param.Add(GenerateParam());
                                Console.WriteLine("[1] Add Edit Parameter\n[2] Continue");
                                if (Convert.ToInt32(WriteInput()) != 1)
                                {
                                    break;
                                }
                            }
                        }
                        func.MDToken.Add(MDTok);
                        Console.Clear();
                        Console.WriteLine("[1] Continue\n[2] Save");
                        int parse2 = Convert.ToInt32(WriteInput());
                        if (parse2 == 1)
                        {
                            CreateFunction(func);
                        }
                        else
                        {
                            return(func);
                        }
                    }
                }
            }



            return(func);
        }