extern char __ImageBase;
#ifdef __GNUC__
+/* .text, .edata and .bss */
#define FREELDR_SECTION_COUNT 3
#else
#ifdef _M_AMD64
/* .text and .pdata */
#define FREELDR_SECTION_COUNT 2
#else
-#define FREELDR_SECTION_COUNT 1
+/* .text and .edata */
+#define FREELDR_SECTION_COUNT 2
#endif
#endif
extern PVOID FrLdrDefaultHeap;
extern PVOID FrLdrTempHeap;
+extern SIZE_T FrLdrImageSize;
PVOID
FrLdrHeapCreate(
FrLdrHeapFreeEx(FrLdrDefaultHeap, MemoryPointer, Tag);
}
-PVOID
FORCEINLINE
+PVOID
FrLdrTempAlloc(
- ULONG Size, ULONG Tag)
+ _In_ SIZE_T Size,
+ _In_ ULONG Tag)
{
return FrLdrHeapAllocateEx(FrLdrTempHeap, Size, Tag);
}
-VOID
FORCEINLINE
+VOID
FrLdrTempFree(
PVOID Allocation, ULONG Tag)
{