private static unsafe void WriteNTHeader(byte[] buffer, uint pos, IMAGE_NT_HEADERS header) { fixed(byte *p = buffer) { IMAGE_NT_HEADERS *ptr = (IMAGE_NT_HEADERS *)(p + pos); *ptr = header; } }
private static unsafe IMAGE_NT_HEADERS ReadNTHeader(byte[] buffer, uint pos) { IMAGE_NT_HEADERS dosHeader = new IMAGE_NT_HEADERS(); fixed(byte *p = buffer) { IMAGE_NT_HEADERS *ptr = (IMAGE_NT_HEADERS *)(p + pos); dosHeader = *ptr; } return(dosHeader); }