| 212 | } // namespace |
| 213 | |
| 214 | DWORD LdrpHandleTlsData(void* baseAddress) |
| 215 | { |
| 216 | auto ldrpHandleTlsData = GetLdrpHandleTlsData(); |
| 217 | LDR_DATA_TABLE_ENTRY ldrDataTableEntry{}; |
| 218 | ldrDataTableEntry.DllBase = baseAddress; |
| 219 | #if defined _M_X64 |
| 220 | return ((LdrpHandleTlsData_t)ldrpHandleTlsData)(&ldrDataTableEntry); |
| 221 | #elif defined _M_IX86 |
| 222 | if (IsWindows8Point1OrGreater()) |
| 223 | return ((LdrpHandleTlsDataWin8Point1OrGreater)ldrpHandleTlsData)(&ldrDataTableEntry); |
| 224 | else |
| 225 | return ((LdprHandleTlsDataWin7OrGreater)ldrpHandleTlsData)(&ldrDataTableEntry); |
| 226 | #else |
| 227 | #error Unsupported architecture |
| 228 | #endif |
| 229 | } |
| 230 | |
| 231 | #if defined _M_IX86 |
| 232 | void RtlInsertInvertedFunctionTable(void* baseAddress, DWORD sizeOfImage) |
no test coverage detected