Untitled
unknown
c_cpp
3 years ago
771 B
7
Indexable
PIMAGE_DATA_DIRECTORY tlsDirectory = (PIMAGE_DATA_DIRECTORY) & parser -> pinh -> OptionalHeader.DataDirectory[IMAGE_DIRECTORY_ENTRY_TLS];
if (tlsDirectory -> Size)
{
PIMAGE_TLS_DIRECTORY tls = (PIMAGE_TLS_DIRECTORY)((DWORD_PTR) parser -> pMapView + tlsDirectory -> VirtualAddress);
DWORD size = tls -> EndAddressOfRawData - tls -> StartAddressOfRawData;
PIMAGE_SECTION_HEADER tlsSection = parser -> createSection(".tls", size,
IMAGE_SCN_CNT_INITIALIZED_DATA | IMAGE_SCN_MEM_READ);
DWORD tlsDstAddress = (DWORD_PTR) parser -> pMapView + tlsSection -> PointerToRawData;
DWORD tlsSrcAddress = (DWORD_PTR) parser -> pMapView + tls -> StartAddressOfRawData;
memcpy((PVOID) tlsDstAddress, (PVOID) tlsSrcAddress, size);
}Editor is loading...