From 3d412a4b30a9f7c7f51ea6562e694315948bd3da Mon Sep 17 00:00:00 2001 From: boris Date: Wed, 28 Nov 2018 16:00:02 +1300 Subject: cleaned up in short, the cheat and loader are now separate solutions. unused stuff was moved into the legacy solution in case anyone wants to compile it or whatever. i can change this back if you want to. also, i configured the loader to compile in x64, and have separate build types for linux and win64 --- legacy/enc_file/source.cpp | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 legacy/enc_file/source.cpp (limited to 'legacy/enc_file/source.cpp') diff --git a/legacy/enc_file/source.cpp b/legacy/enc_file/source.cpp new file mode 100644 index 0000000..9056764 --- /dev/null +++ b/legacy/enc_file/source.cpp @@ -0,0 +1,40 @@ +#include +#include + +int main( ) { + uint8_t key{ }; + std::cin >> key; + printf( "key: %d", key ); + + auto file = CreateFileA( "./enc.dll", GENERIC_READ, 0, 0, OPEN_ALWAYS, 0, 0 ); + if( !file ) return 0; + + auto size = GetFileSize( file, 0 ); + if( !size ) { + CloseHandle( file ); + return 0; + } + + uint8_t* data = ( uint8_t* )( malloc( size ) ); + if( !ReadFile( file, data, size, 0, 0 ) ) { + CloseHandle( file ); + free( data ); + return 0; + } + + CloseHandle( file ); + + for( size_t i{ }; i < size; ++i ) { + data[ i ] ^= key; + } + + data[ 0 ] = 'c'; + data[ 1 ] = 'd'; + + FILE* f; + fopen_s( &f, "./out.dll", "wb" ); + fwrite( data, 1, size, f ); + fclose( f ); + + return 0; +} \ No newline at end of file -- cgit v1.2.3