[FREELDR] Implement the memory managment functions for UEFI (#5174) CORE-11954 - EFI binaries have a different subsystem in the PE header; - ENVIRON: Make sure INTN and UINTN are 64bit for 64bit platforms; - Handle UEFI Memory maps and translate it for freeldr; - Add FAILED_TO_EXIT_BOOTSERVICES Freeldr BSoD code.
[BOOT][SDK:RTL] Compile a reduced RTL library for FreeLdr / NT bootloader... ... as it should have always been done (and must be done for NTDLL and NTOS kernel as well). This allows using the RTL with the correct definitions and the reduced functionality available at boot-time. + Make the RTL main header compatible. In addition, this will permit re-using existing code that already uses the RTL (mostly string conversions). See commits 427c90af3 (r36761) and b46e8cc18 (r36980) for some background.
[FORMATTING] Remove trailing whitespace. Addendum to 34593d93. Excluded: 3rd-party code (incl. wine) and most of the win32ss.
[RTL] Introduce RtlpImageNtHeader, which implements the required functionality. ntdll and ntoskrnl now have a wrapper for this, with SEH. This protects the function against malformed / bad images, whilst still being able to use the code in freeldr et al. Idea from Thomas. CORE-14857