-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpass-maker.cpp
10 lines (10 loc) · 4.07 KB
/
pass-maker.cpp
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <string>
#include <vector>
#include <sstream>
#include <fstream>
#include <iterator>
#include <algorithm>
#include "library.hpp"
// Coded : EsfeLurM
std::vector<std::string> pass;std::vector<std::string> Li3t;std::string Name_Entrance;bool changeChars = false;bool addSymbols = false;bool changeLowerUpper = false;void writeFile(){std::ofstream output_file(".\[email protected]");std::ostream_iterator<std::string> output_iterator(output_file, "\n");std::copy(pass.begin(), pass.end(), output_iterator);std::cout << "\nThe password list was saved as @PassList.txt " << std::endl;}void generatepass(){for(std::size_t i = 0; i < Li3t.size(); i++){for(std::size_t j = 0; j < Li3t.size(); j++){if(j == i || is_word_same(Li3t[i],Li3t[j])){continue;}if(addSymbols){if(j == i || is_word_same(Li3t[i],Li3t[j])){continue;}else{std::string array[] = {"!","@","#","£","$","§","%","&","'","=","«","»","?","+","-","_","<",">","*"};for(std::size_t k = 0; k < (sizeof(array) / sizeof(array[0])); k++){std::string Verb = Li3t[i] + Li3t[j] + array[k];pass.push_back(Verb);}}}std::string Verb = Li3t[i] + Li3t[j];pass.push_back(Verb);}}writeFile();}void joinResults(std::vector<std::string> result){for(std::size_t i = 0; i < result.size(); i++){Li3t.push_back(result[i]);}if(changeLowerUpper){std::size_t Li3t_size = Li3t.size();for(std::size_t i = 0; i < Li3t_size; i++){std::string Verb = word_toUpper(Li3t[i]);Li3t.push_back(Verb);Verb = word_toLower(Li3t[i]);Li3t.push_back(Verb);}}if(changeChars){std::size_t Li3t_size = Li3t.size();for(std::size_t i = 0; i < Li3t_size; i++){std::string Verb = Li3t[i];for(std::size_t j = 0; j < Verb.length(); j++){if(Verb[j] == 'A' || Verb[j] == 'a'){Verb[j] = '4';}else if(Verb[j] == 'E' || Verb[j] == 'e'){Verb[j] = '3';}else if(Verb[j] == 'O' || Verb[j] == 'o'){Verb[j] = '0';}else if(Verb[j] == 'I' || Verb[j] == 'i'){Verb[j] = '1';}else if(Verb[j] == 'S' || Verb[j] == 's'){Verb[j] = '5';}}Li3t.push_back(Verb);}}generatepass();}void parseString(std::string Name_Entrance){std::vector<std::string> result;std::stringstream s_stream(Name_Entrance);while(s_stream.good()){std::string substr;std::getline(s_stream, substr, ',');result.push_back(substr);}joinResults(result);}int main(){std::cout << "\033[01;31mᏟᎡ : \033[01;32mhttps://t.me/esfelurm" << std::endl << std::endl;std::cout << "\033[01;31m[~] \033[01;32mTarget name : \033[01;33m";getline(std::cin, Name_Entrance);Li3t.push_back(Name_Entrance);std::cout << "\033[01;31m[~] \033[01;32mEnter the target username : \033[01;33m";getline(std::cin, Name_Entrance);Li3t.push_back(Name_Entrance);std::cout << "\033[01;31m[~] \033[01;32mTarget's last name :\033[01;33m ";getline(std::cin,Name_Entrance);Li3t.push_back(Name_Entrance);std::cout << "\033[01;31m[~] \033[01;32mTarget's favorite color : \033[01;33m";getline(std::cin, Name_Entrance);Li3t.push_back(Name_Entrance);std::cout << "\033[01;31m[~] \033[01;32mDate of birth of the target : [Example {1383.8.20 or 2004.8.20}] : \033[01;33m";getline(std::cin, Name_Entrance);Li3t.push_back(Name_Entrance);std::cout << "\033[01;31m[~] \033[01;32mIdentity or name that he likes : \033[01;33m";getline(std::cin, Name_Entrance);Li3t.push_back(Name_Entrance);std::cout << std::endl;std::cout << "\033[01;31m[~] \033[01;32mEnter Li3t or words that the target likes and uses more often or leave them blank : [Example {Death , powerful .....}] : \033[01;33m" << std::endl << std::endl;getline(std::cin, Name_Entrance);std::cout << "\n\033[01;31m[~] \033[01;32mDo you want to replace letters with numbers => (y/n)\033[01;33m" << std::endl;char an_nm;std::cin >> an_nm;if (an_nm == 'y' || an_nm == 'Y'){changeChars = true;}std::cout << "\n\033[01;31m[~] \033[01;32mDo you want a symbol like ! , &, # add to the password list => (y/n)\033[01;33m" << std::endl;char su;std::cin >> su;if (su == 'y' || su == 'Y'){addSymbols = true;}std::cout << "\n\033[01;31m[~] \033[01;32mDo you want to add all-lowercase and all-uppercase Li3t? This will double the size of the pass. (y/n)\033[01;33m" << std::endl;char up;std::cin >> up;if(up == 'y' || up == 'Y'){changeLowerUpper = true;}parseString(Name_Entrance);return 0;}