Techwiki:Win32k/BRUSH
BRUSH as found on Windows XP
typedef _BRUSHATTR { UINT AttrFlags; COLORREF lbColor; } BRUSHATTR, *PBRUSHATTR;
typedef _BRUSH { BASEOBJECT BaseObject; // 0x000 ulShareCount = 6 ULONG ulStyle; // 0x010 HBITMAP hbmPattern; // 0x014 01050078 HBITMAP hbmClient; // 0x018 01050077 invalid handle FLONG flAttrs; // 0x01c 00020043 ULONG ulBrushUnique; // 0x020 0000002e ? PBRUSHATTR pBrushAttr; // 0x024 e16293c8 BRUSHATTR BrushAttr; // 0x028 DWORD unk030; // 0x030 00000000 DWORD unk034; // 0x034 00000000 DWORD unk038; // 0x038 00000001 DWORD unk03c; // 0x03c 00d8e9ec DWORD unk040; // 0x040 00ffffff DWORD unk044; // 0x044 00000004 DWORD unk048; // 0x048 00000008 PVOID pvRBrush // 0x04c e16146b0 -> 'Gdbr' PPDEVOBJ ppdev; // 0x050 e1d17008 -> 'GDev' DWORD unk054; // 0x054 ffffffff DWORD unk058; // 0x058 00000000 DWORD unk05c; // 0x05c 00000000 DWORD unk060; // 0x060 00000000 DWORD unk064; // 0x064 00000000 DWORD unk068; // 0x068 00350281 DWORD unk06c; // 0x06c 00000100 DWORD unk070; // 0x070 8a27f1f0 ??? PREGION prgn; // 0x074 e1610008 -> 'Gla4' DWORD unk078; // 0x078 00020210 DWORD unk07c; // 0x07c 7153624f DWORD unk080; // 0x080 e4c9f260 ??? DWORD unk084; // 0x084 e4bfc1f0 -> 'Ddk ' } BRUSH, *PBRUSH;
- See EBRUSHOBJ for a list of flAttrs flags.