Tienes razón dec, la función quedo bastante extraña al intentar hacer una traducción mas o menos literal de la función en C. Pero viéndolo ahora con mas calma, recuerdo que Delphi permite escribir código en ensamblador sin tener que hacer este tipo de malabares.
La cosa ahora quedaría así:
Código Delphi
[-]
function SwallowRedpill: Boolean;
var
m: array[0..5] of byte;
begin
asm
SIDT m
end;
Result:= m[5] > $d0;
end;
begin
if SwallowRedpill then
MessageBox(0,'Estas dentro de Matrix','Matrix',MB_OK)
else
MessageBox(0,'Estas fuera de Matrix','Matrix',MB_OK);
end.