function GetSIDTBaseAddress: DWORD; assembler; asm sub esp, 8 // create stack frame sidt qword ptr [esp] mov eax, dword ptr [esp+2] // write into EAX for return value add esp, 8 // clean up stack end;
… or if the sidt opcode is unknown:
Continue reading ‘Getting the SIDT base address with Delphi’