EPROCESS Windows7

Тема в разделе "WASM.BEGINNERS", создана пользователем Riply, 30 июл 2009.

  1. Riply

    Riply New Member

    Публикаций:
    0
    Регистрация:
    13 ноя 2007
    Сообщения:
    25
    Адрес:
    Petersburg
    Здравствуйте !
    Подскажите, пожалуйста, где можно раздобыть декларации(описание)
    различных струкур (типа EPROCESS) для Windows7 ?
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    А символы отменили?
     
  3. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Код (Text):
    1. struct _EPROCESS {
    2.  
    3.   // static data ------------------------------------
    4.  
    5.   // non-static data --------------------------------
    6.   /*<thisrel this+0x0>*/ /*|0x98|*/ struct _KPROCESS Pcb;
    7.   /*<thisrel this+0x98>*/ /*|0x4|*/ struct _EX_PUSH_LOCK ProcessLock;
    8.   /*<thisrel this+0xa0>*/ /*|0x8|*/ union _LARGE_INTEGER CreateTime;
    9.   /*<thisrel this+0xa8>*/ /*|0x8|*/ union _LARGE_INTEGER ExitTime;
    10.   /*<thisrel this+0xb0>*/ /*|0x4|*/ struct _EX_RUNDOWN_REF RundownProtect;
    11.   /*<thisrel this+0xb4>*/ /*|0x4|*/ void* UniqueProcessId;
    12.   /*<thisrel this+0xb8>*/ /*|0x8|*/ struct _LIST_ENTRY ActiveProcessLinks;
    13.   /*<thisrel this+0xc0>*/ /*|0x8|*/ unsigned long ProcessQuotaUsage[2];
    14.   /*<thisrel this+0xc8>*/ /*|0x8|*/ unsigned long ProcessQuotaPeak[2];
    15.   /*<thisrel this+0xd0>*/ /*|0x4|*/ unsigned long CommitCharge;
    16.   /*<thisrel this+0xd4>*/ /*|0x4|*/ struct _EPROCESS_QUOTA_BLOCK* QuotaBlock;
    17.   /*<thisrel this+0xd8>*/ /*|0x4|*/ struct _PS_CPU_QUOTA_BLOCK* CpuQuotaBlock;
    18.   /*<thisrel this+0xdc>*/ /*|0x4|*/ unsigned long PeakVirtualSize;
    19.   /*<thisrel this+0xe0>*/ /*|0x4|*/ unsigned long VirtualSize;
    20.   /*<thisrel this+0xe4>*/ /*|0x8|*/ struct _LIST_ENTRY SessionProcessLinks;
    21.   /*<thisrel this+0xec>*/ /*|0x4|*/ void* DebugPort;
    22.   /*<thisrel this+0xf0>*/ /*|0x4|*/ void* ExceptionPortData;
    23.   /*<thisrel this+0xf0>*/ /*|0x4|*/ unsigned long ExceptionPortValue;
    24.   /*<bitfield this+0xf0>*/ /*|0x4|*/ unsigned long ExceptionPortState:0:3;
    25.   /*<thisrel this+0xf4>*/ /*|0x4|*/ struct _HANDLE_TABLE* ObjectTable;
    26.   /*<thisrel this+0xf8>*/ /*|0x4|*/ struct _EX_FAST_REF Token;
    27.   /*<thisrel this+0xfc>*/ /*|0x4|*/ unsigned long WorkingSetPage;
    28.   /*<thisrel this+0x100>*/ /*|0x4|*/ struct _EX_PUSH_LOCK AddressCreationLock;
    29.   /*<thisrel this+0x104>*/ /*|0x4|*/ struct _ETHREAD* RotateInProgress;
    30.   /*<thisrel this+0x108>*/ /*|0x4|*/ struct _ETHREAD* ForkInProgress;
    31.   /*<thisrel this+0x10c>*/ /*|0x4|*/ unsigned long HardwareTrigger;
    32.   /*<thisrel this+0x110>*/ /*|0x4|*/ struct _MM_AVL_TABLE* PhysicalVadRoot;
    33.   /*<thisrel this+0x114>*/ /*|0x4|*/ void* CloneRoot;
    34.   /*<thisrel this+0x118>*/ /*|0x4|*/ unsigned long NumberOfPrivatePages;
    35.   /*<thisrel this+0x11c>*/ /*|0x4|*/ unsigned long NumberOfLockedPages;
    36.   /*<thisrel this+0x120>*/ /*|0x4|*/ void* Win32Process;
    37.   /*<thisrel this+0x124>*/ /*|0x4|*/ struct _EJOB* Job;
    38.   /*<thisrel this+0x128>*/ /*|0x4|*/ void* SectionObject;
    39.   /*<thisrel this+0x12c>*/ /*|0x4|*/ void* SectionBaseAddress;
    40.   /*<thisrel this+0x130>*/ /*|0x4|*/ unsigned long Cookie;
    41.   /*<thisrel this+0x134>*/ /*|0x4|*/ unsigned long Spare8;
    42.   /*<thisrel this+0x138>*/ /*|0x4|*/ struct _PAGEFAULT_HISTORY* WorkingSetWatch;
    43.   /*<thisrel this+0x13c>*/ /*|0x4|*/ void* Win32WindowStation;
    44.   /*<thisrel this+0x140>*/ /*|0x4|*/ void* InheritedFromUniqueProcessId;
    45.   /*<thisrel this+0x144>*/ /*|0x4|*/ void* LdtInformation;
    46.   /*<thisrel this+0x148>*/ /*|0x4|*/ void* VdmObjects;
    47.   /*<thisrel this+0x14c>*/ /*|0x4|*/ unsigned long ConsoleHostProcess;
    48.   /*<thisrel this+0x150>*/ /*|0x4|*/ void* DeviceMap;
    49.   /*<thisrel this+0x154>*/ /*|0x4|*/ void* EtwDataSource;
    50.   /*<thisrel this+0x158>*/ /*|0x4|*/ void* FreeTebHint;
    51.   /*<thisrel this+0x160>*/ /*|0x8|*/ struct _HARDWARE_PTE PageDirectoryPte;
    52.   /*<thisrel this+0x160>*/ /*|0x8|*/ unsigned __int64 Filler;
    53.   /*<thisrel this+0x168>*/ /*|0x4|*/ void* Session;
    54.   /*<thisrel this+0x16c>*/ /*|0xf|*/ unsigned char ImageFileName[15];
    55.   /*<thisrel this+0x17b>*/ /*|0x1|*/ unsigned char PriorityClass;
    56.   /*<thisrel this+0x17c>*/ /*|0x8|*/ struct _LIST_ENTRY JobLinks;
    57.   /*<thisrel this+0x184>*/ /*|0x4|*/ void* LockedPagesList;
    58.   /*<thisrel this+0x188>*/ /*|0x8|*/ struct _LIST_ENTRY ThreadListHead;
    59.   /*<thisrel this+0x190>*/ /*|0x4|*/ void* SecurityPort;
    60.   /*<thisrel this+0x194>*/ /*|0x4|*/ void* PaeTop;
    61.   /*<thisrel this+0x198>*/ /*|0x4|*/ unsigned long ActiveThreads;
    62.   /*<thisrel this+0x19c>*/ /*|0x4|*/ unsigned long ImagePathHash;
    63.   /*<thisrel this+0x1a0>*/ /*|0x4|*/ unsigned long DefaultHardErrorProcessing;
    64.   /*<thisrel this+0x1a4>*/ /*|0x4|*/ long LastThreadExitStatus;
    65.   /*<thisrel this+0x1a8>*/ /*|0x4|*/ struct _PEB* Peb;
    66.   /*<thisrel this+0x1ac>*/ /*|0x4|*/ struct _EX_FAST_REF PrefetchTrace;
    67.   /*<thisrel this+0x1b0>*/ /*|0x8|*/ union _LARGE_INTEGER ReadOperationCount;
    68.   /*<thisrel this+0x1b8>*/ /*|0x8|*/ union _LARGE_INTEGER WriteOperationCount;
    69.   /*<thisrel this+0x1c0>*/ /*|0x8|*/ union _LARGE_INTEGER OtherOperationCount;
    70.   /*<thisrel this+0x1c8>*/ /*|0x8|*/ union _LARGE_INTEGER ReadTransferCount;
    71.   /*<thisrel this+0x1d0>*/ /*|0x8|*/ union _LARGE_INTEGER WriteTransferCount;
    72.   /*<thisrel this+0x1d8>*/ /*|0x8|*/ union _LARGE_INTEGER OtherTransferCount;
    73.   /*<thisrel this+0x1e0>*/ /*|0x4|*/ unsigned long CommitChargeLimit;
    74.   /*<thisrel this+0x1e4>*/ /*|0x4|*/ unsigned long CommitChargePeak;
    75.   /*<thisrel this+0x1e8>*/ /*|0x4|*/ void* AweInfo;
    76.   /*<thisrel this+0x1ec>*/ /*|0x4|*/ struct _SE_AUDIT_PROCESS_CREATION_INFO SeAuditProcessCreationInfo;
    77.   /*<thisrel this+0x1f0>*/ /*|0x6c|*/ struct _MMSUPPORT Vm;
    78.   /*<thisrel this+0x25c>*/ /*|0x8|*/ struct _LIST_ENTRY MmProcessLinks;
    79.   /*<thisrel this+0x264>*/ /*|0x4|*/ unsigned long ModifiedPageCount;
    80.   /*<thisrel this+0x268>*/ /*|0x4|*/ unsigned long Flags2;
    81.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long JobNotReallyActive:0:1;
    82.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long AccountingFolded:1:1;
    83.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long NewProcessReported:2:1;
    84.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long ExitProcessReported:3:1;
    85.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long ReportCommitChanges:4:1;
    86.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long LastReportMemory:5:1;
    87.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long ReportPhysicalPageChanges:6:1;
    88.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long HandleTableRundown:7:1;
    89.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long NeedsHandleRundown:8:1;
    90.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long RefTraceEnabled:9:1;
    91.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long NumaAware:a:1;
    92.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long ProtectedProcess:b:1;
    93.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long DefaultPagePriority:c:3;
    94.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long PrimaryTokenFrozen:f:1;
    95.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long ProcessVerifierTarget:10:1;
    96.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long StackRandomizationDisabled:11:1;
    97.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long AffinityPermanent:12:1;
    98.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long AffinityUpdateEnable:13:1;
    99.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long PropagateNode:14:1;
    100.   /*<bitfield this+0x268>*/ /*|0x4|*/ unsigned long ExplicitAffinity:15:1;
    101.   /*<thisrel this+0x26c>*/ /*|0x4|*/ unsigned long Flags;
    102.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long CreateReported:0:1;
    103.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long NoDebugInherit:1:1;
    104.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long ProcessExiting:2:1;
    105.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long ProcessDelete:3:1;
    106.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long Wow64SplitPages:4:1;
    107.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long VmDeleted:5:1;
    108.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long OutswapEnabled:6:1;
    109.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long Outswapped:7:1;
    110.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long ForkFailed:8:1;
    111.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long Wow64VaSpace4Gb:9:1;
    112.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long AddressSpaceInitialized:a:2;
    113.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long SetTimerResolution:c:1;
    114.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long BreakOnTermination:d:1;
    115.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long DeprioritizeViews:e:1;
    116.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long WriteWatch:f:1;
    117.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long ProcessInSession:10:1;
    118.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long OverrideAddressSpace:11:1;
    119.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long HasAddressSpace:12:1;
    120.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long LaunchPrefetched:13:1;
    121.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long InjectInpageErrors:14:1;
    122.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long VmTopDown:15:1;
    123.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long ImageNotifyDone:16:1;
    124.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long PdeUpdateNeeded:17:1;
    125.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long VdmAllowed:18:1;
    126.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long CrossSessionCreate:19:1;
    127.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long ProcessInserted:1a:1;
    128.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long DefaultIoPriority:1b:3;
    129.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long ProcessSelfDelete:1e:1;
    130.   /*<bitfield this+0x26c>*/ /*|0x4|*/ unsigned long SetTimerResolutionLink:1f:1;
    131.   /*<thisrel this+0x270>*/ /*|0x4|*/ long ExitStatus;
    132.   /*<thisrel this+0x274>*/ /*|0x20|*/ struct _MM_AVL_TABLE VadRoot;
    133.   /*<thisrel this+0x294>*/ /*|0x10|*/ struct _ALPC_PROCESS_CONTEXT AlpcContext;
    134.   /*<thisrel this+0x2a4>*/ /*|0x8|*/ struct _LIST_ENTRY TimerResolutionLink;
    135.   /*<thisrel this+0x2ac>*/ /*|0x4|*/ unsigned long RequestedTimerResolution;
    136.   /*<thisrel this+0x2b0>*/ /*|0x4|*/ unsigned long ActiveThreadsHighWatermark;
    137.   /*<thisrel this+0x2b4>*/ /*|0x4|*/ unsigned long SmallestTimerResolution;
    138.   /*<thisrel this+0x2b8>*/ /*|0x4|*/ struct _PO_DIAG_STACK_RECORD* TimerResolutionStackRecord;
    139.  
    140.   // base classes -----------------------------------
    141.  
    142.   // friends ----------------------------------------
    143.  
    144.   // static functions -------------------------------
    145.  
    146.   // non-virtual functions --------------------------
    147.  
    148.   // virtual functions ------------------------------
    149. };
    150. // <size 0x2c0>
    Держи если впадлу качать
     
  4. Riply

    Riply New Member

    Публикаций:
    0
    Регистрация:
    13 ноя 2007
    Сообщения:
    25
    Адрес:
    Petersburg
    Для тех, кто знает что это такое и с чем едят, видимо нет :)
    А можно ссылку, где о них почитать ?
     
  5. Riply

    Riply New Member

    Публикаций:
    0
    Регистрация:
    13 ноя 2007
    Сообщения:
    25
    Адрес:
    Petersburg
    Спасибо.
    Закачать то "не в падлу", если там не очень много. Я под диалап-ом :dntknw:
     
  6. o14189

    o14189 New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2009
    Сообщения:
    320
    кстати подскажите пожалуйста формат запроса к серверу символов
    смотрел там хеш какой-то юзается, никто не в курсе, что за алгоритм?
     
  7. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    а зачем алгоритм? если есть symchk
     
  8. o14189

    o14189 New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2009
    Сообщения:
    320
    само собой тогда бинарные файлы не нужны
     
  9. Sol_Ksacap

    Sol_Ksacap Миша

    Публикаций:
    0
    Регистрация:
    6 мар 2008
    Сообщения:
    623
    Насчёт символов.
    [] Если не установлены DTW (Debugging Tools for Windows), то залить с сайта MS. В комплекте, кроме всего прочего, идёт symchk.
    [] Далее. Составить текстовый список файлов, для которых нужно получить символы, по одному файлу на линию. Для получения символов с ядерными структурами вроде достаточно вписать только ntoskrnl.exe.
    [] Выполнить "symchk /it MyFilesList.txt /s "" /om Output.txt". (Ключ /s нужен для того, чтобы тулза не начала сразу сливать символы в случае правильно выставленного sym-сервера).
    [] Будет сгенерирован манифест (файл "Output.txt"), содержащий хеши. Содержимое можно запостить сюда, и кто-нибудь сольёт файлы символов командой "symchk /im "Output.txt" /s SRV*C:\SymbolsForDialupers*http://msdl.microsoft.com/download/symbols", упакует их (удалив из папки бинарники) и выложит на файлообменник.
    Для одного файла это, вероятно, не актуально (~7мб pdb) и достаточно будет "symchk /if C:\windows\system32\ntoskrnl.exe /s SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols", но если нужна целая коллекция, то экономия времени получится приличная.

    На полученный pdb-файл можно натравить pdbdump (вывод показал Co^H^H Great в #3) или dia2dump.
     
  10. Riply

    Riply New Member

    Публикаций:
    0
    Регистрация:
    13 ноя 2007
    Сообщения:
    25
    Адрес:
    Petersburg
    Удалось мне раздобыть символы для Win7.
    Точнее: Windows_Winmain.7100.0.090421-1700.X86FRE.Symbols.msi (208 МБ)
    Но меня постигло страшное разочарование. В нем нет ntoskrnl
    Правда есть ntkrnlmp.pdb, но pdbdump отказывается его парсить.
    А выдает только вот это:
    Код (Text):
    1. //////////////////////////////////////////////////////////////////////////
    2. Typedefs
    3.  
    4.  
    5. //////////////////////////////////////////////////////////////////////////
    6. Enumerations
    7.  
    8.  
    9. //////////////////////////////////////////////////////////////////////////
    10. Constants
    11.  
    12.  
    13. //////////////////////////////////////////////////////////////////////////
    14. Structs
    15.  
    16.  
    17. //////////////////////////////////////////////////////////////////////////
    18. Classes
    19.  
    20.  
    21. //////////////////////////////////////////////////////////////////////////
    22. Unions
    23.  
    24.  
    25. //////////////////////////////////////////////////////////////////////////
    26. Functions
    27.  
    28.  
    29. //////////////////////////////////////////////////////////////////////////
    30. Globals/Statics
    31.  
    32.  
    33. //////////////////////////////////////////////////////////////////////////
    34. Public symbols
    Впрочем, он не "парсит" и другие pdb-шки оттуда :dntknw:
    Подскажите пожалуйста, в чем может быть дело ?
     
  11. Sol_Ksacap

    Sol_Ksacap Миша

    Публикаций:
    0
    Регистрация:
    6 мар 2008
    Сообщения:
    623
    Одинаковая вещь. С тех пор как однопроцессорная и, вроде, даже non-PAE версии ядра уже не поставляются, ntoskrnl можно считать алиасом ntkrnlmp.

    pdbdump глючный, увы. Сейчас вообще не запустился почему-то. Одна может воспользовать dia2dump, хотя выходные данные таковы, что их придётся перепарсивать, ага.

    Если нужно просто посмотреть смещения, то при наличие исполняемого модуля (лайк, "ntoskrnl.exe") можно открыть его в windbg в качестве крэш-дампа (вывод для ядра висты32):
    Код (Text):
    1. Loading Dump File [D:\Symbols\ntkrpamp.exe\47918B123b9000\ntkrpamp.exe]
    2. Symbol search path is: SRV*D:\Symbols*http://msdl.microsoft.com/download/symbols
    3. Executable search path is:
    4. ModLoad: 00400000 007b9000   D:\Symbols\ntkrpamp.exe\47918B123b9000\ntkrpamp.exe
    5. eax=00000000 ebx=00000000 ecx=00000000 edx=00000000 esi=00000000 edi=00000000
    6. eip=004ec4b0 esp=00000000 ebp=00000000 iopl=0         nv up di pl nz na po nc
    7. cs=0000  ss=0000  ds=0000  es=0000  fs=0000  gs=0000             efl=00000000
    8. ntkrpamp!KiSystemStartup:
    9. 004ec4b0 55              push    ebp
    10.  
    11. 0:000> .sympath D:\symtest
    12. Symbol search path is: D:\symtest
    13. Expanded Symbol search path is: d:\symtest
    14.  
    15. 0:000> .reload
    16. .
    17.  
    18. 0:000> lm
    19. start    end        module name
    20. 00400000 007b9000   ntkrpamp   (private pdb symbols)  d:\symtest\ntkrpamp.pdb
    21.  
    22. 0:000> dt -v _KPROCESS
    23. ntkrpamp!_KPROCESS
    24. struct _KPROCESS, 35 elements, 0x80 bytes
    25.    +0x000 Header           : struct _DISPATCHER_HEADER, 13 elements, 0x10 bytes
    26.    +0x010 ProfileListHead  : struct _LIST_ENTRY, 2 elements, 0x8 bytes
    27.    +0x018 DirectoryTableBase : Uint4B
    28.    +0x01c Unused0          : Uint4B
    29.    +0x020 LdtDescriptor    : struct _KGDTENTRY, 3 elements, 0x8 bytes
    30.    +0x028 Int21Descriptor  : struct _KIDTENTRY, 4 elements, 0x8 bytes
    31.    +0x030 IopmOffset       : Uint2B
    32.    +0x032 Unused1          : UChar
    33.    +0x033 Unused2          : UChar
    34.    +0x034 ActiveProcessors : Uint4B
    35.    +0x038 KernelTime       : Uint4B
    36.    +0x03c UserTime         : Uint4B
    37.    +0x040 ReadyListHead    : struct _LIST_ENTRY, 2 elements, 0x8 bytes
    38.    +0x048 SwapListEntry    : struct _SINGLE_LIST_ENTRY, 1 elements, 0x4 bytes
    39.    +0x04c VdmTrapcHandler  : Ptr32 to Void
    40.    +0x050 ThreadListHead   : struct _LIST_ENTRY, 2 elements, 0x8 bytes
    41.    +0x058 ProcessLock      : Uint4B
    42.    +0x05c Affinity         : Uint4B
    43.    +0x060 AutoAlignment    : Bitfield Pos 0, 1 Bit
    44.    +0x060 DisableBoost     : Bitfield Pos 1, 1 Bit
    45.    +0x060 DisableQuantum   : Bitfield Pos 2, 1 Bit
    46.    +0x060 ReservedFlags    : Bitfield Pos 3, 29 Bits
    47.    +0x060 ProcessFlags     : Int4B
    48.    +0x064 BasePriority     : Char
    49.    +0x065 QuantumReset     : Char
    50.    +0x066 State            : UChar
    51.    +0x067 ThreadSeed       : UChar
    52.    +0x068 PowerState       : UChar
    53.    +0x069 IdealNode        : UChar
    54.    +0x06a Visited          : UChar
    55.    +0x06b Flags            : struct _KEXECUTE_OPTIONS, 8 elements, 0x1 bytes
    56.    +0x06b ExecuteOptions   : UChar
    57.    +0x06c StackCount       : Uint4B
    58.    +0x070 ProcessListEntry : struct _LIST_ENTRY, 2 elements, 0x8 bytes
    59.    +0x078 CycleTime        : Uint8B
      

    С WinDbg можно поиграть и на живой системе:
    Код (Text):
    1. Connected to Windows Server 2008/Windows Vista 6001 x64 target at (Tue Aug  4 11:54:32.989 2009 (GMT+4)), ptr64 TRUE
    2.  
    3. lkd> !process 0 0 utorrent.exe
    4. PROCESS fffffa8002e66c10
    5.     SessionId: 1  Cid: 0bf4    Peb: 7efdf000  ParentCid: 0b3c
    6.     DirBase: 332cc000  ObjectTable: fffff8800dc67420  HandleCount: 339.
    7.     Image: utorrent.exe
    8.  
    9. lkd> dt _eprocess Break* fffffa8002e66c10
    10. nt!_EPROCESS
    11.    +0x370 BreakOnTermination : 0y0
    12.  
    13. lkd> dt _eprocess Break*
    14. nt!_EPROCESS
    15.    +0x370 BreakOnTermination : Pos 13, 1 Bit
    16.  
    17. lkd> eb fffffa8002e66c10 + 370 + 0n13/8
    18. fffffa80`02e66f81 08 28
    19. 28
    20. fffffa80`02e66f82 4d
    21.  
    22. lkd> dt _eprocess Break* fffffa8002e66c10
    23. nt!_EPROCESS
    24.    +0x370 BreakOnTermination : 0y1       ; dare to terminate my torrents now!
     
  12. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Символы, скачанные напрямую с сервера символов посредством symchk (я никогда неюзал символьные пакеты и даже понятия не имею как там что лежит) pdbdump парсит нормально.
    А про symchk я выше уже писал
     
  13. Riply

    Riply New Member

    Публикаций:
    0
    Регистрация:
    13 ноя 2007
    Сообщения:
    25
    Адрес:
    Petersburg
    Получилось. Спасибо :)

    С symchk, у меня не все так гладко, но думаю тоже получится :)