0x7D0 bytes of PEB-like data with recognizable values at key offsets
| 50 | |
| 51 | // 0x7D0 bytes of PEB-like data with recognizable values at key offsets |
| 52 | static BufferProvider makeTestProvider() { |
| 53 | QByteArray data(0x7D0, '\0'); |
| 54 | |
| 55 | auto w8 = [&](int off, uint8_t v) { data[off] = (char)v; }; |
| 56 | auto w16 = [&](int off, uint16_t v) { memcpy(data.data()+off, &v, 2); }; |
| 57 | auto w32 = [&](int off, uint32_t v) { memcpy(data.data()+off, &v, 4); }; |
| 58 | auto w64 = [&](int off, uint64_t v) { memcpy(data.data()+off, &v, 8); }; |
| 59 | |
| 60 | w8 (0x002, 1); // BeingDebugged |
| 61 | w8 (0x003, 0x04); // BitField |
| 62 | w64(0x008, 0xFFFFFFFFFFFFFFFFULL); // Mutant (-1) |
| 63 | w64(0x010, 0x00007FF6DE120000ULL); // ImageBaseAddress |
| 64 | w64(0x018, 0x00007FFE3B8B53C0ULL); // Ldr |
| 65 | w64(0x020, 0x000001A4C3E20F90ULL); // ProcessParameters |
| 66 | w64(0x028, 0x0000000000000000ULL); // SubSystemData |
| 67 | w64(0x030, 0x000001A4C3D40000ULL); // ProcessHeap |
| 68 | w64(0x038, 0x00007FFE3B8D4260ULL); // FastPebLock |
| 69 | w64(0x040, 0x0000000000000000ULL); // AtlThunkSListPtr |
| 70 | w64(0x048, 0x0000000000000000ULL); // IFEOKey |
| 71 | w32(0x050, 0x01); // CrossProcessFlags |
| 72 | w64(0x058, 0x00007FFE3B720000ULL); // KernelCallbackTable |
| 73 | w32(0x060, 0); // SystemReserved |
| 74 | w32(0x064, 0); // AtlThunkSListPtr32 |
| 75 | w64(0x068, 0x00007FFE3E570000ULL); // ApiSetMap |
| 76 | w32(0x070, 0); // TlsExpansionCounter |
| 77 | w64(0x078, 0x00007FFE3B8D3F50ULL); // TlsBitmap |
| 78 | w32(0x080, 0x00000003); // TlsBitmapBits[0] |
| 79 | w32(0x084, 0x00000000); // TlsBitmapBits[1] |
| 80 | w64(0x088, 0x00007FFE38800000ULL); // ReadOnlySharedMemoryBase |
| 81 | w64(0x090, 0x00007FFE38820000ULL); // SharedData |
| 82 | w64(0x098, 0x00007FFE388A0000ULL); // ReadOnlyStaticServerData |
| 83 | w64(0x0A0, 0x00007FFE3B8D1000ULL); // AnsiCodePageData |
| 84 | w64(0x0A8, 0x00007FFE3B8D2040ULL); // OemCodePageData |
| 85 | w64(0x0B0, 0x00007FFE3B8CE020ULL); // UnicodeCaseTableData |
| 86 | w32(0x0B8, 8); // NumberOfProcessors |
| 87 | w32(0x0BC, 0x70); // NtGlobalFlag |
| 88 | w64(0x0C0, 0xFFFFFFFF7C91E000ULL); // CriticalSectionTimeout |
| 89 | w64(0x0C8, 0x0000000000100000ULL); // HeapSegmentReserve |
| 90 | w64(0x0D0, 0x0000000000002000ULL); // HeapSegmentCommit |
| 91 | w64(0x0D8, 0x0000000000040000ULL); // HeapDeCommitTotalFreeThreshold |
| 92 | w64(0x0E0, 0x0000000000001000ULL); // HeapDeCommitFreeBlockThreshold |
| 93 | w32(0x0E8, 4); // NumberOfHeaps |
| 94 | w32(0x0EC, 16); // MaximumNumberOfHeaps |
| 95 | w64(0x0F0, 0x000001A4C3D40688ULL); // ProcessHeaps |
| 96 | w64(0x0F8, 0x00007FFE388B0000ULL); // GdiSharedHandleTable |
| 97 | w64(0x100, 0x0000000000000000ULL); // ProcessStarterHelper |
| 98 | w32(0x108, 0); // GdiDCAttributeList |
| 99 | w64(0x110, 0x00007FFE3B8D42E8ULL); // LoaderLock |
| 100 | w32(0x118, 10); // OSMajorVersion |
| 101 | w32(0x11C, 0); // OSMinorVersion |
| 102 | w16(0x120, 19045); // OSBuildNumber |
| 103 | w16(0x122, 0); // OSCSDVersion |
| 104 | w32(0x124, 2); // OSPlatformId |
| 105 | w32(0x128, 3); // ImageSubsystem (CUI) |
| 106 | w32(0x12C, 10); // ImageSubsystemMajorVersion |
| 107 | w32(0x130, 0); // ImageSubsystemMinorVersion |
| 108 | w64(0x138, 0x00000000000000FFULL); // ActiveProcessAffinityMask |
| 109 | w64(0x230, 0x0000000000000000ULL); // PostProcessInitRoutine |
no test coverage detected