Windows C++ / TLS Callback
Author | Thomas Roccia (fr0gger) |
Platform | Windows |
Language | C++ |
Technique | TLS Callback |
Code
#include "windows.h"
#include <stdio.h>
void NTAPI __stdcall TLSCallbacks(PVOID DllHandle, DWORD dwReason, PVOID Reserved);
#ifdef _M_IX86
#pragma comment (linker, "/INCLUDE:__tls_used")
#pragma comment (linker, "/INCLUDE:__tls_callback")
#else
#pragma comment (linker, "/INCLUDE:_tls_used")
#pragma comment (linker, "/INCLUDE:_tls_callback")
#endif
EXTERN_C
#ifdef _M_X64
#pragma const_seg (".CRT$XLB")
const
#else
#pragma data_seg (".CRT$XLB")
#endif
PIMAGE_TLS_CALLBACK _tls_callback = TLSCallbacks;
#pragma data_seg ()
#pragma const_seg ()
void NTAPI __stdcall TLSCallbacks(PVOID DllHandle, DWORD dwReason, PVOID Reserved)
{
MessageBox(nullptr, "TLS Callback", "", 0);
ExitProcess(0);
}
int main(int argc, char* argv[])
{
printf("Main function!");
}
Created
September 27, 2020
Last Revised
April 22, 2024