Skip to content

Latest commit

 

History

History
40 lines (35 loc) · 1.29 KB

README.md

File metadata and controls

40 lines (35 loc) · 1.29 KB

Patched-Minesweeper

I hacked Minesweeper into putting flags on all the mined squares when starting. Yoohoo.

The tools I used:

The steps I took (very rough outline):

  • found the mine-field in process's memory [0x1005400]
  • found the function which draws the initial board [0x10026A7]
  • patched this function such that for each mined-square, a flag image will be drawn (an argument different from that of a "clean" square will be passed to Windows's BitBlt function).

The code I overrode:

010026E9    AND EAX, 1F
010026EE    PUSH DWORD PTR DS:[EAX*4+1005A20]

The code I added:

010026E9    JMP patched_minesweeper.01004A60
010026EE    NOP
010026EF    NOP
010026F0    NOP
010026F1    NOP
010026F2    NOP

...

1004A60   CMP AL, 8F
1004A62   JNZ SHORT patched_minesweeper.01004A66
1004A64   MOV AL, 0E
1004A66   PUSH DWORD PTR DS:[EAX*4+1005A20]
1004A6D   JMP patched_minesweeper.010026F3

If you see this, the image did not load