Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Latest commit

 

History

History
 
 

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

README.md

Reverse Engineering and Weaponizing XP Solitaire (Mini-Course)

YouTube Video

Contents

├───cards_dll_proxy --> CPP and DEF file to create weaponized cards.dll
│       cards.def
│       cards_proxy.cpp
│
├───card_generator --> Python script to generate custom card bitmaps
│       card_generator.py
│       requirements.txt
│
└───example_files --> Example files from the video
        0_C.bmp
        A_H.bmp
        A_S.bmp
        cards.rc
        cards.res
        cards_weaponized.dll
        D_C.bmp
        E_D.bmp
        F_D.bmp
        F_H.bmp
        F_S.bmp
        J_C.bmp
        L_C.bmp
        L_S.bmp
        R_H.bmp
        S_H.bmp
        T_D.bmp

Usage

Generating Card Bitmaps/RES File

Using card_generator.py

$ python card_generator.py -h
Usage: card_generator.py
Edit script to select text, characters, and suits

Building the RES File

Note: Requires windres or rc.exe

windres cards.rc  -o cards.res

or

rc.exe /fo cards.res cards.rc

Building the Weaponized DLL

Note: This is just one method; Visual Studio or another C++ compiler/IDE can be used

  1. Download MSYS2
  2. Run MSYS2 and download GCC and 32/64-bit toolchains:
pacman -S mingw-w64-x86_64-gcc
pacman -S --needed base-devel mingw-w64-x86_64-toolchain
pacman -S --needed base-devel mingw-w64-i686-toolchain
  1. Compile the weaponized DLL:
g++ -Werror -static -mdll -o cards_weaponized.dll cards_proxy.cpp cards.def

Remember: Use your knowledge and skills for good and fun, not evil (not even evil fun)

Enjoy and please leave questions and feedback on YouTube or Mastodon!