ReactOS  0.4.15-dev-3165-gdf6fff7
ks386.template.h
Go to the documentation of this file.
1 
2 HEADER("CR0 flags"),
10 CONSTANT(CR0_AM), // not win 10
14 
15 HEADER("CR4 flags"),
26 //CONSTANT(CR4_PGE_V),
27 //CONSTANT(CR4_XSAVE),
28 
29 HEADER("Debug Registers"),
34 
35 HEADER("EFLAGS"),
43 //CONSTANT(EFLAG_SELECT),
44 
45 #if (NTDDI_VERSION >= NTDDI_VISTA)
46 HEADER("Hypervisor Enlightenment Definitions"),
51 #endif
52 
53 HEADER("KeFeatureBits flags"),
61 //CONSTANT(KF_XSTATE),
62 
63 HEADER("KGDT selectors"),
76 //CONSTANT(KGDT_R3_GS),
77 //CONSTANT(KGDT_STACK16),// obsolete
78 //CONSTANT(KGDT_CODE16), // obsolete
79 
80 HEADER("Machine type definitions"),
84 
85 HEADER("MSR definitions"),
89 
90 HEADER("MSR values"),
94 
95 HEADER("WOW64 turbo dispatch system call types"),
128 
129 HEADER("VDM constants"),
165 
166 //HEADER("VDM feature bits"),
167 //CONSTANT(V86_VIRTUAL_INT_EXTENSIONS),
168 //CONSTANT(PM_VIRTUAL_INT_EXTENSIONS),
169 
170 HEADER("XSAVE_AREA definitions"),
175 
176 //HEADER("Interrupt vector definitions"),
177 //CONSTANT(IOMMU_VECTOR),
178 //CONSTANT(STUB_VECTOR),
179 //CONSTANT(REBOOT_VECTOR),
180 //CONSTANT(IPI_VECTOR),
181 //CONSTANT(LOCAL_ERROR_VECTOR),
182 //CONSTANT(PERF_VECTOR),
183 
184 HEADER("Miscellaneous constants"),
185 //CONSTANT(INITIAL_MXCSR),
186 //CONSTANT(IPI_FREEZE),
187 //CONSTANT(XSAVE_PRESENT),
188 SIZE(KTIMER_TABLE_SIZE, KTIMER_TABLE),
189 //CONSTANT(TRAP_FRAME_MARKER),
191 //CONSTANT(INTERRUPT_FRAME),
192 //CONSTANT(EXCEPTION_FRAME),
193 //CONSTANT(SYSCALL_FRAME),
194 //CONSTANT(KXMM_FRAME_SIZE),
195 //CONSTANT(KI_SLIST_FAULT_COUNT_MAXIMUM),
199 //CONSTANT(DEBUG_ACTIVE_MASK),
200 //CONSTANT(DEBUG_ACTIVE_MINIMAL_THREAD),
201 //CONSTANT(THREAD_LOCK_FLAGS_DBG_INSTRUMENTED),
202 //CONSTANT(X86AMD64_R3_LONG_MODE_CODE),
203 //CONSTANT(SEL_TYPE_NP),
204 //CONSTANT(TEB_FLAGS_SAFE_THUNK_CALL),
205 //CONSTANT(TEB_FLAGS_FIBER_SWAPPED),
206 //CONSTANT(KI_SPINLOCK_ORDER_PRCB_LOCK),
207 //CONSTANT(PROCESSOR_START_FLAG_FORCE_ENABLE_NX),
208 
209 HEADER("** FIELD OFFSETS ***************"),
210 
211 //HEADER("RtlBackoff offsets"),
212 //OFFSET(BoDelay, ????, Delay),
213 //SIZE(RtlBackoffLength, ????),
214 
215 HEADER("CONTEXT offsets"),
216 OFFSET(CsContextFlags, CONTEXT, ContextFlags),
217 OFFSET(CsDr0, CONTEXT, Dr0),
218 OFFSET(CsDr1, CONTEXT, Dr1),
219 OFFSET(CsDr2, CONTEXT, Dr2),
220 OFFSET(CsDr3, CONTEXT, Dr3),
221 OFFSET(CsDr6, CONTEXT, Dr6),
222 OFFSET(CsDr7, CONTEXT, Dr7),
223 OFFSET(CsFloatSave, CONTEXT, FloatSave),
224 OFFSET(CsSegGs, CONTEXT, SegGs),
225 OFFSET(CsSegFs, CONTEXT, SegFs),
226 OFFSET(CsSegEs, CONTEXT, SegEs),
227 OFFSET(CsSegDs, CONTEXT, SegDs),
228 OFFSET(CsEdi, CONTEXT, Edi),
229 OFFSET(CsEsi, CONTEXT, Esi),
230 OFFSET(CsEbx, CONTEXT, Ebx),
231 OFFSET(CsEdx, CONTEXT, Edx),
232 OFFSET(CsEcx, CONTEXT, Ecx),
233 OFFSET(CsEax, CONTEXT, Eax),
234 OFFSET(CsEbp, CONTEXT, Ebp),
235 OFFSET(CsEip, CONTEXT, Eip),
236 OFFSET(CsSegCs, CONTEXT, SegCs),
237 OFFSET(CsEflags, CONTEXT, EFlags),
238 OFFSET(CsEsp, CONTEXT, Esp),
239 OFFSET(CsSegSs, CONTEXT, SegSs),
240 OFFSET(CsExtendedRegisters, CONTEXT, ExtendedRegisters),
241 //OFFSET(CsMxCsr, CONTEXT, MxCsr),
242 SIZE(ContextFrameLength, CONTEXT),
243 SIZE(CONTEXT_LENGTH, CONTEXT),
244 
245 HEADER("KCALLOUT_FRAME offsets"),
246 OFFSET(CuInStk, KCALLOUT_FRAME, InitialStack), // 00000H
247 OFFSET(CuTrFr, KCALLOUT_FRAME, TrapFrame), // 00004H
248 OFFSET(CuCbStk, KCALLOUT_FRAME, CallbackStack), // 00008H
249 OFFSET(CuEdi, KCALLOUT_FRAME, Edi), // 0000CH
250 OFFSET(CuEsi, KCALLOUT_FRAME, Esi), // 00010H
251 OFFSET(CuEbx, KCALLOUT_FRAME, Ebx), // 00014H
252 OFFSET(CuEbp, KCALLOUT_FRAME, Ebp), // 00018H
253 OFFSET(CuRet, KCALLOUT_FRAME, ReturnAddress), // 0001CH
254 OFFSET(CuOutBf, KCALLOUT_FRAME, Result), // 00020H
255 OFFSET(CuOutLn, KCALLOUT_FRAME, ResultLength), // 00024H
256 
257 //HEADER("??? offsets"),
258 //OFFSET(ErrHandler, ???, Handler),
259 //OFFSET(ErrNext, ???, Next),
260 //OFFSET(ErrLength, ???, Length),
261 
262 HEADER("FLOATING_SAVE_AREA offsets"),
263 OFFSET(FpControlWord, FLOATING_SAVE_AREA, ControlWord),
264 OFFSET(FpStatusWord, FLOATING_SAVE_AREA, StatusWord),
265 OFFSET(FpTagWord, FLOATING_SAVE_AREA, TagWord),
266 OFFSET(FpErrorOffset, FLOATING_SAVE_AREA, ErrorOffset),
267 OFFSET(FpErrorSelector, FLOATING_SAVE_AREA, ErrorSelector),
268 OFFSET(FpDataOffset, FLOATING_SAVE_AREA, DataOffset),
269 OFFSET(FpDataSelector, FLOATING_SAVE_AREA, DataSelector),
270 OFFSET(FpRegisterArea, FLOATING_SAVE_AREA, RegisterArea),
271 
272 HEADER("XSAVE_FORMAT offsets"),
273 OFFSET(FxControlWord, XSAVE_FORMAT, ControlWord),
274 OFFSET(FxStatusWord, XSAVE_FORMAT, StatusWord),
275 OFFSET(FxTagWord, XSAVE_FORMAT, TagWord),
276 OFFSET(FxErrorOpcode, XSAVE_FORMAT, ErrorOpcode),
277 OFFSET(FxErrorOffset, XSAVE_FORMAT, ErrorOffset),
278 OFFSET(FxErrorSelector, XSAVE_FORMAT, ErrorSelector),
279 OFFSET(FxDataOffset, XSAVE_FORMAT, DataOffset),
280 OFFSET(FxDataSelector, XSAVE_FORMAT, DataSelector),
281 OFFSET(FxMxCsr, XSAVE_FORMAT, MxCsr),
282 SIZE(XSAVE_FORMAT_SIZE, XSAVE_FORMAT),
283 
284 HEADER("KGDTENTRY offsets"),
285 OFFSET(KgdtLimitLow, KGDTENTRY, LimitLow),
286 OFFSET(KgdtBaseLow, KGDTENTRY, BaseLow),
287 OFFSET(KgdtHighWord, KGDTENTRY, HighWord),
288 OFFSET(KgdtBaseMid, KGDTENTRY, HighWord.Bytes.BaseMid),
289 OFFSET(KgdtLimitHi, KGDTENTRY, HighWord.Bytes.Flags2),
290 OFFSET(KgdtBaseHi, KGDTENTRY, HighWord.Bytes.BaseHi),
291 
292 HEADER("KPRCB offsets"),
293 OFFSET(PbCurrentThread, KPRCB, CurrentThread),
294 OFFSET(PbNextThread, KPRCB, NextThread),
295 OFFSET(PbIdleThread, KPRCB, IdleThread),
296 //OFFSET(PbNestingLevel, KPRCB, NestingLevel),
297 OFFSET(PbCpuType, KPRCB, CpuType),
298 OFFSET(PbCpuID, KPRCB, CpuID),
299 OFFSET(PbCpuStep, KPRCB, CpuStep),
300 OFFSET(PbProcessorState, KPRCB, ProcessorState),
301 OFFSET(PbParentNode, KPRCB, ParentNode),
302 //OFFSET(PbPriorityState, KPRCB, PriorityState),
303 OFFSET(PbHalReserved, KPRCB, HalReserved),
304 //OFFSET(PbCFlushSize, KPRCB, CFlushSize),
305 //OFFSET(PbCpuVendor, KPRCB, CpuVendor),
306 //OFFSET(PbGroupSetMember, KPRCB, GroupSetMember),
307 OFFSET(PbNumber, KPRCB, Number),
308 //OFFSET(PbClockOwner, KPRCB, ClockOwner),
309 OFFSET(PbLockQueue, KPRCB, LockQueue),
310 OFFSET(PbInterruptCount, KPRCB, InterruptCount),
311 OFFSET(PbKernelTime, KPRCB, KernelTime),
312 OFFSET(PbUserTime, KPRCB, UserTime),
313 OFFSET(PbDpcTime, KPRCB, DpcTime),
314 OFFSET(PbInterruptTime, KPRCB, InterruptTime),
315 OFFSET(PbAdjustDpcThreshold, KPRCB, AdjustDpcThreshold),
316 OFFSET(PbPageColor, KPRCB, PageColor),
317 OFFSET(PbDebuggerSavedIRQL, KPRCB, DebuggerSavedIRQL),
318 OFFSET(PbNodeShiftedColor, KPRCB, NodeShiftedColor),
319 OFFSET(PbSecondaryColorMask, KPRCB, SecondaryColorMask),
320 //OFFSET(PbAlignmentFixupCount, KPRCB, AlignmentFixupCount),
321 //OFFSET(PbExceptionDispatchCount, KPRCB, ExceptionDispatchCount),
322 OFFSET(PbSystemCalls, KPRCB, KeSystemCalls),
323 OFFSET(PbPPLookasideList, KPRCB, PPLookasideList),
324 OFFSET(PbPPNPagedLookasideList, KPRCB, PPNPagedLookasideList),
325 OFFSET(PbPPPagedLookasideList, KPRCB, PPPagedLookasideList),
326 OFFSET(PbPacketBarrier, KPRCB, PacketBarrier),
327 OFFSET(PbReverseStall, KPRCB, ReverseStall),
328 OFFSET(PbIpiFrame, KPRCB, IpiFrame),
329 OFFSET(PbCurrentPacket, KPRCB, CurrentPacket),
330 OFFSET(PbTargetSet, KPRCB, TargetSet),
331 OFFSET(PbWorkerRoutine, KPRCB, WorkerRoutine),
332 OFFSET(PbIpiFrozen, KPRCB, IpiFrozen),
333 OFFSET(PbRequestSummary, KPRCB, RequestSummary),
334 //OFFSET(PbDpcList, KPRCB, DpcList),
335 //OFFSET(PbDpcLock, KPRCB, DpcLock),
336 //OFFSET(PbDpcCount, KPRCB, DpcCount),
337 OFFSET(PbDpcStack, KPRCB, DpcStack),
338 OFFSET(PbMaximumDpcQueueDepth, KPRCB, MaximumDpcQueueDepth),
339 OFFSET(PbDpcRequestRate, KPRCB, DpcRequestRate),
340 OFFSET(PbMinimumDpcRate, KPRCB, MinimumDpcRate),
341 OFFSET(PbDpcLastCount, KPRCB, DpcLastCount),
342 OFFSET(PbPrcbLock, KPRCB, PrcbLock),
343 OFFSET(PbQuantumEnd, KPRCB, QuantumEnd),
344 OFFSET(PbDpcRoutineActive, KPRCB, DpcRoutineActive),
345 OFFSET(PbIdleSchedule, KPRCB, IdleSchedule),
346 //OFFSET(PbNormalDpcState, KPRCB, NormalDpcState),
347 //OFFSET(PbKeSpinLockOrdering, KPRCB, KeSpinLockOrdering),
348 OFFSET(PbDeferredReadyListHead, KPRCB, DeferredReadyListHead),
349 OFFSET(PbReadySummary, KPRCB, ReadySummary),
350 OFFSET(PbWaitListHead, KPRCB, WaitListHead),
351 //OFFSET(PbStartCycle, KPRCB, StartCycle),
352 //OFFSET(PbCycleTime, KPRCB, CycleTime),
353 //OFFSET(PbHighCycleTime, KPRCB, HighCycleTime),
354 OFFSET(PbDispatcherReadyListHead, KPRCB, DispatcherReadyListHead),
355 OFFSET(PbChainedInterruptList, KPRCB, ChainedInterruptList),
356 //OFFSET(PbSpinLockAcquireCount, KPRCB, SpinLockAcquireCount),
357 //OFFSET(PbSpinLockContentionCount, KPRCB, SpinLockContentionCount),
358 //OFFSET(PbSpinLockSpinCount, KPRCB, SpinLockSpinCount),
359 //OFFSET(PbContext, KPRCB, Context),
360 //OFFSET(PbIsrStack, KPRCB, IsrStack),
361 //OFFSET(PbVectorToInterruptObject, KPRCB, VectorToInterruptObject),
362 //OFFSET(PbEntropyBuffer, KPRCB, EntropyTimingState.Buffer),
363 //OFFSET(PbMailbox, KPRCB, Mailbox),
364 SIZE(ProcessorBlockLength, KPRCB),
365 
366 HEADER("KPCR offsets"),
367 OFFSET(PcExceptionList, KIPCR, NtTib.ExceptionList),
368 //OFFSET(PcInitialStack, KIPCR, InitialStack),
369 //OFFSET(PcMxCsr, KIPCR, MxCsr),
370 OFFSET(PcTssCopy, KIPCR, TssCopy),
371 OFFSET(PcContextSwitches, KIPCR, ContextSwitches),
372 OFFSET(PcSetMemberCopy, KIPCR, SetMemberCopy),
373 OFFSET(PcTeb, KIPCR, NtTib.Self),
374 OFFSET(PcSelfPcr, KIPCR, SelfPcr),
375 OFFSET(PcPrcb, KIPCR, Prcb),
376 OFFSET(PcIrql, KIPCR, Irql),
377 OFFSET(PcIRR, KIPCR, IRR),
378 OFFSET(PcIrrActive, KIPCR, IrrActive),
379 OFFSET(PcIDR, KIPCR, IDR),
380 OFFSET(PcIdt, KIPCR, IDT),
381 OFFSET(PcGdt, KIPCR, GDT),
382 OFFSET(PcTss, KIPCR, TSS),
383 OFFSET(PcSetMember, KIPCR, SetMember),
384 OFFSET(PcStallScaleFactor, KIPCR, StallScaleFactor),
385 OFFSET(PcNumber, KIPCR, Number),
386 OFFSET(PcVdmAlert, KIPCR, VdmAlert),
387 OFFSET(PcHal, KIPCR, HalReserved),
388 OFFSET(PcPrcbData, KIPCR, PrcbData),
389 OFFSET(PcCurrentThread, KIPCR, PrcbData.CurrentThread),
390 //OFFSET(PcNestingLevel, KIPCR, PrcbData.NestingLevel),
391 OFFSET(PcParentNode, KIPCR, PrcbData.ParentNode),
392 OFFSET(PcInterruptCount, KIPCR, PrcbData.InterruptCount),
393 //OFFSET(PcDpcRequestSummary, KIPCR, PrcbData.DpcRequestSummary),
394 //OFFSET(PcStartCycles, KIPCR, PrcbData.StartCycles),
395 //OFFSET(PcCycleTime, KIPCR, PrcbData.CycleTime),
396 //OFFSET(PcHighCycleTime, KIPCR, PrcbData.HighCycleTime),
397 SIZE(ProcessorControlRegisterLength, KIPCR),
398 
399 // Processor Start Block Offset Definitions
400 //HEADER("??? offsets"),
401 //OFFSET(PsbCompletionFlag, ???, PsbCompletionFlag),
402 //OFFSET(PsbFlags, ???, PsbCompletionFlag),
403 //OFFSET(PsbTiledMemoryMap, ???, PsbCompletionFlag),
404 //OFFSET(PsbSelfMap, ???, PsbCompletionFlag),
405 //OFFSET(PsbProcessorState, ???, PsbCompletionFlag),
406 //SIZE(ProcessorStartBlockLength, ???, PsbCompletionFlag),
407 
408 HEADER("PEB offsets"),
409 OFFSET(PebBeingDebugged, PEB, BeingDebugged),
410 OFFSET(PebKernelCallbackTable, PEB, KernelCallbackTable),
411 
412 HEADER("KPROCESSOR_STATE offsets"),
413 OFFSET(PsContextFrame, KPROCESSOR_STATE, ContextFrame),
414 OFFSET(PsSpecialRegisters, KPROCESSOR_STATE, SpecialRegisters),
415 SIZE(ProcessorStateLength, KPROCESSOR_STATE),
416 
417 HEADER("KSPECIAL_REGISTERS offsets"),
418 OFFSET(SrCr0, KSPECIAL_REGISTERS, Cr0),
419 OFFSET(SrCr2, KSPECIAL_REGISTERS, Cr2),
420 OFFSET(SrCr3, KSPECIAL_REGISTERS, Cr3),
421 OFFSET(SrCr4, KSPECIAL_REGISTERS, Cr4),
422 OFFSET(SrKernelDr0, KSPECIAL_REGISTERS, KernelDr0),
423 OFFSET(SrKernelDr1, KSPECIAL_REGISTERS, KernelDr1),
424 OFFSET(SrKernelDr2, KSPECIAL_REGISTERS, KernelDr2),
425 OFFSET(SrKernelDr3, KSPECIAL_REGISTERS, KernelDr3),
426 OFFSET(SrKernelDr6, KSPECIAL_REGISTERS, KernelDr6),
427 OFFSET(SrKernelDr7, KSPECIAL_REGISTERS, KernelDr7),
428 OFFSET(SrGdtr, KSPECIAL_REGISTERS, Gdtr),
429 OFFSET(SrIdtr, KSPECIAL_REGISTERS, Idtr),
430 OFFSET(SrTr, KSPECIAL_REGISTERS, Tr),
431 OFFSET(SrLdtr, KSPECIAL_REGISTERS, Ldtr),
432 //OFFSET(SrXcr0, KSPECIAL_REGISTERS, Xcr0),
433 //OFFSET(SrExceptionList, KSPECIAL_REGISTERS, ExceptionList),
434 
435 HEADER("KSYSTEM_TIME offsets"),
436 OFFSET(StLowTime, KSYSTEM_TIME, LowTime),
437 OFFSET(StHigh1Time, KSYSTEM_TIME, High1Time),
438 OFFSET(StHigh2Time, KSYSTEM_TIME, High2Time),
439 
440 //HEADER("KSWITCH_FRAME offsets"),
441 //SIZE(SwitchFrameLength, KSWITCH_FRAME),
442 
443 HEADER("TEB offsets (duplicates Te* definitions!)"),
444 OFFSET(TbExceptionList, TEB, NtTib.ExceptionList),
445 OFFSET(TbStackBase, TEB, NtTib.StackBase),
446 OFFSET(TbStackLimit, TEB, NtTib.StackLimit),
447 OFFSET(TbVersion, TEB, NtTib.Version),
448 OFFSET(TbFiberData, TEB, NtTib.FiberData),
449 OFFSET(TbArbitraryUserPointer, TEB, NtTib.ArbitraryUserPointer),
450 OFFSET(TbEnvironmentPointer, TEB, EnvironmentPointer),
451 OFFSET(TbClientId, TEB, ClientId),
452 OFFSET(TbThreadLocalStoragePointer, TEB, ThreadLocalStoragePointer),
453 OFFSET(TbCountOfOwnedCriticalSections, TEB, CountOfOwnedCriticalSections),
454 OFFSET(TbCsrClientThread, TEB, CsrClientThread),
455 OFFSET(TbWOW32Reserved, TEB, WOW32Reserved),
456 OFFSET(TbSystemReserved1, TEB, SystemReserved1),
457 OFFSET(TbExceptionCode, TEB, ExceptionCode),
458 OFFSET(TbGdiThreadLocalInfo, TEB, GdiThreadLocalInfo),
459 OFFSET(TbglDispatchTable, TEB, glDispatchTable),
460 OFFSET(TbglSectionInfo, TEB, glSectionInfo),
461 OFFSET(TbglSection, TEB, glSection),
462 OFFSET(TbglTable, TEB, glTable),
463 OFFSET(TbglCurrentRC, TEB, glCurrentRC),
464 OFFSET(TbglContext, TEB, glContext),
465 OFFSET(TbDeallocationStack, TEB, DeallocationStack),
466 OFFSET(TbVdm, TEB, Vdm),
467 OFFSET(TbGdiBatchCount, TEB, GdiBatchCount),
468 //OFFSET(TeSameTebFlags, TEB, SameTebFlags),
469 OFFSET(TebPeb, TEB, ProcessEnvironmentBlock),
470 
471 HEADER("KTRAP_FRAME"),
472 OFFSET(TsDbgEbp, KTRAP_FRAME, DbgEbp),
473 OFFSET(TsDbgEip, KTRAP_FRAME, DbgEip),
474 OFFSET(TsDbgArgMark, KTRAP_FRAME, DbgArgMark),
475 OFFSET(TsTempSegCs, KTRAP_FRAME, TempSegCs),
476 //OFFSET(TsLogging, KTRAP_FRAME, Logging),
477 //OFFSET(TsFrameType, KTRAP_FRAME, FrameType),
478 OFFSET(TsTempEsp, KTRAP_FRAME, TempEsp),
479 OFFSET(TsDr0, KTRAP_FRAME, Dr0),
480 OFFSET(TsDr1, KTRAP_FRAME, Dr1),
481 OFFSET(TsDr2, KTRAP_FRAME, Dr2),
482 OFFSET(TsDr3, KTRAP_FRAME, Dr3),
483 OFFSET(TsDr6, KTRAP_FRAME, Dr6),
484 OFFSET(TsDr7, KTRAP_FRAME, Dr7),
485 OFFSET(TsSegGs, KTRAP_FRAME, SegGs),
486 OFFSET(TsSegEs, KTRAP_FRAME, SegEs),
487 OFFSET(TsSegDs, KTRAP_FRAME, SegDs),
488 OFFSET(TsEdx, KTRAP_FRAME, Edx),
489 OFFSET(TsEcx, KTRAP_FRAME, Ecx),
490 OFFSET(TsEax, KTRAP_FRAME, Eax),
491 OFFSET(TsPreviousPreviousMode, KTRAP_FRAME, PreviousPreviousMode),
492 //OFFSET(TsMxCsr, KTRAP_FRAME, MxCsr),
493 OFFSET(TsExceptionList, KTRAP_FRAME, ExceptionList),
494 //OFFSET(TsEntropyQueueDpc, KTRAP_FRAME, EntropyQueueDpc),
495 OFFSET(TsSegFs, KTRAP_FRAME, SegFs),
496 OFFSET(TsEdi, KTRAP_FRAME, Edi),
497 OFFSET(TsEsi, KTRAP_FRAME, Esi),
498 OFFSET(TsEbx, KTRAP_FRAME, Ebx),
499 OFFSET(TsEbp, KTRAP_FRAME, Ebp),
500 OFFSET(TsErrCode, KTRAP_FRAME, ErrCode),
501 OFFSET(TsEip, KTRAP_FRAME, Eip),
502 OFFSET(TsSegCs, KTRAP_FRAME, SegCs),
503 OFFSET(TsEflags, KTRAP_FRAME, EFlags),
504 OFFSET(TsHardwareEsp, KTRAP_FRAME, HardwareEsp),
505 OFFSET(TsHardwareSegSs, KTRAP_FRAME, HardwareSegSs),
506 OFFSET(TsDbgArgPointer, KTRAP_FRAME, DbgArgPointer), // not in win10
507 OFFSET(TsV86Es, KTRAP_FRAME, V86Es),
508 OFFSET(TsV86Ds, KTRAP_FRAME, V86Ds),
509 OFFSET(TsV86Fs, KTRAP_FRAME, V86Fs),
510 OFFSET(TsV86Gs, KTRAP_FRAME, V86Gs),
513 
514 HEADER("KTSS offsets"),
515 OFFSET(TssEsp0, KTSS, Esp0),
516 OFFSET(TssCR3, KTSS, CR3),
517 OFFSET(TssEip, KTSS, Eip),
518 OFFSET(TssEFlags, KTSS, EFlags),
519 OFFSET(TssEax, KTSS, Eax),
520 OFFSET(TssEbx, KTSS, Ebx),
521 OFFSET(TssEcx, KTSS, Ecx),
522 OFFSET(TssEdx, KTSS, Edx),
523 OFFSET(TssEsp, KTSS, Esp),
524 OFFSET(TssEbp, KTSS, Ebp),
525 OFFSET(TssEsi, KTSS, Esi),
526 OFFSET(TssEdi, KTSS, Edi),
527 OFFSET(TssEs, KTSS, Es),
528 OFFSET(TssCs, KTSS, Cs),
529 OFFSET(TssSs, KTSS, Ss),
530 OFFSET(TssDs, KTSS, Ds),
531 OFFSET(TssFs, KTSS, Fs),
532 OFFSET(TssGs, KTSS, Gs),
533 OFFSET(TssLDT, KTSS, LDT),
534 OFFSET(TssIoMapBase, KTSS, IoMapBase),
535 OFFSET(TssIoMaps, KTSS, IoMaps),
536 SIZE(TssLength, KTSS),
537 
538 //HEADER("VDM_PROCESS_OBJECTS??? offsets"),
539 //VpVdmTib equ 00098H
540 
541 HEADER("XSTATE_CONFIGURATION offsets"),
542 OFFSET(XcfgEnabledFeatures, XSTATE_CONFIGURATION, EnabledFeatures),
543 #if (NTDDI_VERSION >= NTDDI_WIN10)
544 OFFSET(XcfgEnabledVolatileFeatures, XSTATE_CONFIGURATION, EnabledFeatures),
545 #endif
546 
547 HEADER("XSTATE_CONTEXT offsets"),
548 OFFSET(XctxMask, XSTATE_CONTEXT, Mask),
549 OFFSET(XctxLength, XSTATE_CONTEXT, Length),
550 OFFSET(XctxArea, XSTATE_CONTEXT, Area),
551 
552 HEADER("XSAVE_AREA offsets"),
553 OFFSET(XsaHeader, XSAVE_AREA, Header),
554 SIZE(XsaHeaderLength, XSAVE_AREA_HEADER),
555 //CONSTANTX(XSAVE_ALIGN, _alignof(XSAVE_AREA)),
556 
557 HEADER("Data access macros"),
558 RAW("#define USERDATA ds:[HEX(0FFDF0000)]"),
559 RAW("#define PCR fs:"),
560 
561 #if (NTDDI_VERSION >= NTDDI_WIN8)
562 HEADER("KNODE offsets"),
563 OFFSET(NdIdleCpuSet, KNODE, IdleCpuSet),
564 #endif
565 
566 //HEADER("ETW definitions for interrupt tracing"),
567 //SIZE(EtwTSLength, ???, TSLength),
568 
569 //HEADER("WOW64 shared information block definitions"),
570 //OFFSET(PwWow64Info, ???, IdleCpuSet),
571 //OFFSET(WiCpuFlags, ???, IdleCpuSet),
572 //CONSTANT(WOW64_CPUFLAGS_SOFTWARE),
573 
574 
576 
579 //CONSTANT(NPX_MASK_LAZY),
580 
581 // ReactOS stuff here
582 HEADER("KPCR"),
583 OFFSET(KPCR_EXCEPTION_LIST, KPCR, NtTib.ExceptionList),
584 OFFSET(KPCR_PERF_GLOBAL_GROUP_MASK, KIPCR, PerfGlobalGroupMask),
585 OFFSET(KPCR_CONTEXT_SWITCHES, KPCR, ContextSwitches),
586 OFFSET(KPCR_TEB, KIPCR, Used_Self),
587 OFFSET(KPCR_SELF, KIPCR, SelfPcr),
588 OFFSET(KPCR_PRCB, KPCR, Prcb),
591 OFFSET(KPCR_TSS, KPCR, TSS),
592 OFFSET(KPCR_STALL_SCALE_FACTOR, KPCR, StallScaleFactor),
593 OFFSET(KPCR_PRCB_DATA, KIPCR, PrcbData),
595 OFFSET(KPCR_PRCB_NEXT_THREAD, KIPCR, PrcbData.NextThread),
596 OFFSET(KPCR_PRCB_DPC_QUEUE_DEPTH, KIPCR, PrcbData.DpcData[0].DpcQueueDepth),
597 OFFSET(KPCR_PRCB_DPC_STACK, KIPCR, PrcbData.DpcStack),
598 OFFSET(KPCR_PRCB_MAXIMUM_DPC_QUEUE_DEPTH, KIPCR, PrcbData.MaximumDpcQueueDepth),
599 OFFSET(KPCR_PRCB_DPC_ROUTINE_ACTIVE, KIPCR, PrcbData.DpcRoutineActive),
600 OFFSET(KPCR_PRCB_TIMER_REQUEST, KIPCR, PrcbData.TimerRequest),
602 OFFSET(KPCR_PRCB_DEFERRED_READY_LIST_HEAD, KIPCR, PrcbData.DeferredReadyListHead),
603 OFFSET(KPCR_PRCB_POWER_STATE_IDLE_FUNCTION, KIPCR, PrcbData.PowerState.IdleFunction),
604 
605 HEADER("KTRAP_FRAME"),
621 OFFSET(KTRAP_FRAME_PREVIOUS_MODE, KTRAP_FRAME, PreviousPreviousMode),
632 OFFSET(KTRAP_FRAME_ESP, KTRAP_FRAME, HardwareEsp),
633 OFFSET(KTRAP_FRAME_SS, KTRAP_FRAME, HardwareSegSs),
639 
640 HEADER("CONTEXT"),
641 OFFSET(CONTEXT_FLAGS, CONTEXT, ContextFlags),
642 OFFSET(CONTEXT_SEGGS, CONTEXT, SegGs),
643 OFFSET(CONTEXT_SEGFS, CONTEXT, SegFs),
644 OFFSET(CONTEXT_SEGES, CONTEXT, SegEs),
645 OFFSET(CONTEXT_SEGDS, CONTEXT, SegDs),
646 OFFSET(CONTEXT_EDI, CONTEXT, Edi),
647 OFFSET(CONTEXT_ESI, CONTEXT, Esi),
648 OFFSET(CONTEXT_EBX, CONTEXT, Ebx),
649 OFFSET(CONTEXT_EDX, CONTEXT, Edx),
650 OFFSET(CONTEXT_ECX, CONTEXT, Ecx),
651 OFFSET(CONTEXT_EAX, CONTEXT, Eax),
652 OFFSET(CONTEXT_EBP, CONTEXT, Ebp),
653 OFFSET(CONTEXT_EIP, CONTEXT, Eip),
654 OFFSET(CONTEXT_SEGCS, CONTEXT, SegCs),
655 OFFSET(CONTEXT_EFLAGS, CONTEXT, EFlags),
656 OFFSET(CONTEXT_ESP, CONTEXT, Esp),
657 OFFSET(CONTEXT_SEGSS, CONTEXT, SegSs),
659 
660 HEADER("FIBER"),
662 OFFSET(FIBER_EXCEPTION_LIST, FIBER, ExceptionList),
663 OFFSET(FIBER_STACK_BASE, FIBER, StackBase),
664 OFFSET(FIBER_STACK_LIMIT, FIBER, StackLimit),
665 OFFSET(FIBER_DEALLOCATION_STACK, FIBER, DeallocationStack),
666 OFFSET(FIBER_CONTEXT, FIBER, FiberContext),
667 OFFSET(FIBER_CONTEXT_FLAGS, FIBER, FiberContext.ContextFlags),
668 OFFSET(FIBER_CONTEXT_EAX, FIBER, FiberContext.Eax),
669 OFFSET(FIBER_CONTEXT_EBX, FIBER, FiberContext.Ebx),
670 OFFSET(FIBER_CONTEXT_ECX, FIBER, FiberContext.Ecx),
671 OFFSET(FIBER_CONTEXT_EDX, FIBER, FiberContext.Edx),
672 OFFSET(FIBER_CONTEXT_ESI, FIBER, FiberContext.Esi),
673 OFFSET(FIBER_CONTEXT_EDI, FIBER, FiberContext.Edi),
674 OFFSET(FIBER_CONTEXT_EBP, FIBER, FiberContext.Ebp),
675 OFFSET(FIBER_CONTEXT_EIP, FIBER, FiberContext.Eip),
676 OFFSET(FIBER_CONTEXT_ESP, FIBER, FiberContext.Esp),
677 OFFSET(FIBER_CONTEXT_DR6, FIBER, FiberContext.Dr6),
678 OFFSET(FIBER_CONTEXT_FLOAT_SAVE_CONTROL_WORD, FIBER, FiberContext.FloatSave.ControlWord),
679 OFFSET(FIBER_CONTEXT_FLOAT_SAVE_STATUS_WORD, FIBER, FiberContext.FloatSave.StatusWord),
680 OFFSET(FIBER_CONTEXT_FLOAT_SAVE_TAG_WORD, FIBER, FiberContext.FloatSave.TagWord),
681 OFFSET(FIBER_GUARANTEED_STACK_BYTES, FIBER, GuaranteedStackBytes),
682 OFFSET(FIBER_FLS_DATA, FIBER, FlsData),
683 OFFSET(FIBER_ACTIVATION_CONTEXT_STACK, FIBER, ActivationContextStackPointer),
684 
685 HEADER("KTSS"),
686 OFFSET(KTSS_IOMAPBASE, KTSS, IoMapBase),
687 OFFSET(KTSS_ESP0, KTSS, Esp0),
688 
689 HEADER("EXCEPTION_RECORD"),
698 
699 HEADER("EXCEPTION_POINTERS"),
700 OFFSET(EXCEPTION_POINTERS_EXCEPTION_RECORD, EXCEPTION_POINTERS, ExceptionRecord),
701 OFFSET(EXCEPTION_POINTERS_CONTEXT_RECORD, EXCEPTION_POINTERS, ContextRecord),
702 SIZE(SIZEOF_EXCEPTION_POINTERS, EXCEPTION_POINTERS),
703 
704 HEADER("KTHREAD"),
706 OFFSET(KTHREAD_INITIAL_STACK, KTHREAD, InitialStack),
707 OFFSET(KTHREAD_STACK_LIMIT, KTHREAD, StackLimit),
708 OFFSET(KTHREAD_TEB, KTHREAD, Teb),
709 OFFSET(KTHREAD_KERNEL_STACK, KTHREAD, KernelStack),
712 OFFSET(KTHREAD_CONTEXT_SWITCHES, KTHREAD, ContextSwitches),
714 OFFSET(KTHREAD_NPX_STATE, KTHREAD, NpxState),
715 OFFSET(KTHREAD_WAIT_IRQL, KTHREAD, WaitIrql),
716 OFFSET(KTHREAD_WAIT_REASON, KTHREAD, WaitReason),
717 OFFSET(KTHREAD_COMBINED_APC_DISABLE, KTHREAD, CombinedApcDisable),
718 OFFSET(KTHREAD_SPECIAL_APC_DISABLE, KTHREAD, SpecialApcDisable),
719 OFFSET(KTHREAD_LARGE_STACK, KTHREAD, LargeStack),
720 OFFSET(KTHREAD_TRAP_FRAME, KTHREAD, TrapFrame),
721 OFFSET(KTHREAD_CALLBACK_STACK, KTHREAD, CallbackStack),
722 OFFSET(KTHREAD_APC_STATE_INDEX, KTHREAD, ApcStateIndex),
723 OFFSET(KTHREAD_STACK_BASE, KTHREAD, StackBase),
724 
725 HEADER("KPROCESS"),
726 OFFSET(KPROCESS_DIRECTORY_TABLE_BASE, KPROCESS, DirectoryTableBase),
727 OFFSET(KPROCESS_LDT_DESCRIPTOR0, KPROCESS, LdtDescriptor),
728 OFFSET(KPROCESS_LDT_DESCRIPTOR1, KPROCESS, LdtDescriptor.HighWord),
729 OFFSET(KPROCESS_INT21_DESCRIPTOR0, KPROCESS, Int21Descriptor),
730 OFFSET(KPROCESS_INT21_DESCRIPTOR1, KPROCESS, Int21Descriptor.Access),
731 OFFSET(KPROCESS_IOPM_OFFSET, KPROCESS, IopmOffset),
732 
733 HEADER("TEB"),
734 OFFSET(TEB_EXCEPTION_LIST, TEB, NtTib.ExceptionList),
735 OFFSET(TEB_STACK_BASE, TEB, NtTib.StackBase),
736 OFFSET(TEB_STACK_LIMIT, TEB, NtTib.StackLimit),
737 OFFSET(TEB_FIBER_DATA, TEB, NtTib.FiberData),
738 OFFSET(TEB_SELF, TEB, NtTib.Self),
739 OFFSET(TEB_PEB, TEB, ProcessEnvironmentBlock),
741 OFFSET(TEB_ACTIVATION_CONTEXT_STACK_POINTER, TEB, ActivationContextStackPointer),
742 OFFSET(TEB_GL_TABLE, TEB, glTable),
743 OFFSET(TEB_DEALLOCATION_STACK, TEB, DeallocationStack),
744 OFFSET(TEB_GDI_BATCH_COUNT, TEB, GdiBatchCount),
745 OFFSET(TEB_GUARANTEED_STACK_BYTES, TEB, GuaranteedStackBytes),
746 OFFSET(TEB_FLS_DATA, TEB, FlsData),
747 
748 HEADER("PEB"),
749 OFFSET(PEB_KERNEL_CALLBACK_TABLE, PEB, KernelCallbackTable),
750 
751 HEADER("Misc"),
771 
SIZE(KTIMER_TABLE_SIZE, KTIMER_TABLE)
#define CR0_EM
Definition: asm.h:247
#define CR0_NW
Definition: asm.h:253
_Inout_ PIRP _In_ NTSTATUS ExceptionCode
Definition: cdprocs.h:1772
#define KPCR_CONTEXT_SWITCHES
Definition: asm.h:159
#define TEB_DEALLOCATION_STACK
Definition: asm.h:420
#define KUSER_SHARED_SYSCALL_RET
Definition: asm.h:336
#define CBSTACK_RESULT
Definition: asm.h:289
#define CONTEXT_SEGCS
Definition: asm.h:357
#define FIBER_CONTEXT_EDX
Definition: asm.h:446
#define KPCR_CURRENT_THREAD
Definition: asm.h:177
#define KPCR_IDT
Definition: asm.h:169
#define EFLAGS_ALIGN_CHECK
Definition: ketypes.h:133
#define CONTEXT_EBX
Definition: asm.h:351
#define CR4_MCE
Definition: ketypes.h:90
#define KTRAP_FRAME_DS
Definition: asm.h:286
#define CONTEXT_FRAME_LENGTH
Definition: asm.h:365
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:101
#define TEB_FLS_DATA
Definition: asm.h:423
#define KTRAP_FRAME_DR2
Definition: asm.h:278
#define KTRAP_FRAME_DEBUGEIP
Definition: asm.h:271
#define NPX_FRAME_LENGTH
Definition: asm.h:246
#define KTRAP_FRAME_EIP
Definition: asm.h:300
#define CR0_NE
Definition: asm.h:250
#define CONTEXT_ESI
Definition: asm.h:350
#define KTRAP_FRAME_DR3
Definition: asm.h:279
#define KTHREAD_DEBUG_ACTIVE
Definition: asm.h:49
#define KPCR_PRCB_DATA
Definition: asm.h:176
CONSTANT(CR0_PE)
#define KF_CMPXCHG8B
Definition: ketypes.h:150
#define STATUS_CALLBACK_POP_STACK
Definition: ntstatus.h:961
#define KTRAP_FRAME_TEMPESP
Definition: asm.h:275
#define KTHREAD_STATE_
Definition: asm.h:98
#define CR4_PSE
Definition: ketypes.h:88
#define FN_CR0_NPX_STATE
Definition: asm.h:244
_Must_inspect_result_ _In_ PFLT_CALLBACK_DATA _In_ PFLT_DEFERRED_IO_WORKITEM_ROUTINE WorkerRoutine
Definition: fltkernel.h:1976
#define KF_RDTSC
Definition: ketypes.h:144
#define KTSS_ESP0
Definition: asm.h:63
#define FIBER_CONTEXT_DR6
Definition: asm.h:452
#define CR4_FXSR
Definition: ketypes.h:92
#define KPROCESS_INT21_DESCRIPTOR1
Definition: asm.h:125
#define KTRAP_FRAME_DR0
Definition: asm.h:276
#define KPROCESS_DIRECTORY_TABLE_BASE
Definition: asm.h:121
#define CONTEXT_FLAGS
Definition: asm.h:342
#define KTRAP_FRAME_V86_GS
Definition: asm.h:312
#define FP_STATUS_WORD
Definition: asm.h:238
#define KTHREAD_STACK_LIMIT
Definition: asm.h:51
#define XHF_NOEXECUTE
Definition: ketypes.h:148
#define CONTEXT_EFLAGS
Definition: asm.h:358
#define KGDT_R0_CODE
Definition: ketypes.h:75
#define CR0_CD
Definition: asm.h:254
#define KPCR_TSS
Definition: asm.h:171
#define KPCR_PRCB_DPC_QUEUE_DEPTH
Definition: asm.h:196
Definition: ke.h:289
#define CONTEXT_ALIGNED_SIZE
Definition: asm.h:364
#define FIBER_CONTEXT_EBP
Definition: asm.h:449
#define KPROCESS_INT21_DESCRIPTOR0
Definition: asm.h:124
#define KTHREAD_APC_STATE_INDEX
Definition: asm.h:112
#define CBSTACK_RESULT_LENGTH
Definition: asm.h:290
#define EXCEPTION_RECORD_EXCEPTION_FLAGS
Definition: asm.h:383
#define FIBER_CONTEXT_ESP
Definition: asm.h:451
#define KTRAP_FRAME_PREVIOUS_MODE
Definition: asm.h:291
#define CBSTACK_TRAP_FRAME
Definition: asm.h:286
#define KTSS_IOMAPBASE
Definition: asm.h:82
_Out_ PKIRQL Irql
Definition: csq.h:179
#define CONTEXT_SEGES
Definition: asm.h:347
#define FIBER_CONTEXT_FLOAT_SAVE_TAG_WORD
Definition: asm.h:455
#define KTRAP_FRAME_V86_FS
Definition: asm.h:310
#define KTRAP_FRAME_EAX
Definition: asm.h:290
#define CR4_TSD
Definition: ketypes.h:86
#define EFLAGS_V86_MASK
Definition: ketypes.h:132
#define KPCR_PRCB_NEXT_THREAD
Definition: asm.h:178
#define CR4_PGE
Definition: ketypes.h:91
#define SIZEOF_EXCEPTION_RECORD
Definition: asm.h:387
#define KF_LARGE_PAGE
Definition: ketypes.h:148
#define KPCR_SELF
Definition: asm.h:64
#define TEB_EXCEPTION_CODE
Definition: asm.h:417
#define MSR_IA32_MISC_ENABLE
Definition: ketypes.h:196
#define CONTEXT_SEGFS
Definition: asm.h:346
#define EFLAGS_VIP
Definition: ketypes.h:135
#define USER_SHARED_DATA_PROCESSOR_FEATURES
Definition: asm.h:327
#define KGDT_NULL
Definition: ketypes.h:74
#define FIBER_CONTEXT_FLOAT_SAVE_CONTROL_WORD
Definition: asm.h:454
#define KTHREAD_INITIAL_STACK
Definition: asm.h:50
#define KGDT_NMI_TSS
Definition: ketypes.h:85
#define CONTEXT_ESP
Definition: asm.h:359
#define KTHREAD_STACK_BASE
Definition: asm.h:113
#define MSR_XD_ENABLE_MASK
Definition: ketypes.h:225
#define KGDT_LDT
Definition: ketypes.h:83
#define KGDT_DF_TSS
Definition: ketypes.h:84
#define KTRAP_FRAME_ERROR_CODE
Definition: asm.h:299
#define TEB_STACK_BASE
Definition: asm.h:412
#define MSR_AMD_ACCESS
Definition: ketypes.h:195
Definition: Header.h:8
#define TEB_SELF
Definition: asm.h:415
#define CR0_AM
Definition: asm.h:252
#define CR0_ET
Definition: asm.h:249
#define KUSER_SHARED_SYSCALL
Definition: asm.h:335
#define KTRAP_FRAME_FS
Definition: asm.h:293
#define EXCEPTION_RECORD_NUMBER_PARAMETERS
Definition: asm.h:386
#define KTRAP_FRAME_CS
Definition: asm.h:301
#define EFLAGS_USER_SANITIZE
Definition: ketypes.h:137
#define KPCR_TEB
Definition: asm.h:161
#define FP_CONTROL_WORD
Definition: asm.h:237
#define PF_XMMI_INSTRUCTIONS_AVAILABLE
#define TEB_GL_TABLE
Definition: asm.h:419
#define KPCR_PRCB_POWER_STATE_IDLE_FUNCTION
Definition: asm.h:208
#define EXCEPTION_RECORD_EXCEPTION_ADDRESS
Definition: asm.h:385
#define USER_SHARED_DATA
Definition: pstypes.h:51
#define FIBER_CONTEXT_ESI
Definition: asm.h:447
#define KTHREAD_SPECIAL_APC_DISABLE
Definition: asm.h:108
#define NPX_STATE_LOADED
Definition: asm.h:265
#define KTHREAD_APCSTATE_PROCESS
Definition: asm.h:94
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:426
#define FIBER_CONTEXT_EBX
Definition: asm.h:444
Definition: ketypes.h:789
#define FIBER_ACTIVATION_CONTEXT_STACK
Definition: asm.h:441
#define KGDT_R3_DATA
Definition: ketypes.h:78
#define CR0_PG
Definition: asm.h:255
#define KPCR_STALL_SCALE_FACTOR
Definition: asm.h:65
#define TEB_FIBER_DATA
Definition: asm.h:414
#define CONTEXT_SEGGS
Definition: asm.h:345
#define HV_KE_USE_HYPERCALL_FOR_LONG_SPIN_WAIT
Definition: asm.h:639
#define KTRAP_FRAME_ECX
Definition: asm.h:289
Definition: utils.h:160
#define FIBER_CONTEXT_FLAGS
Definition: asm.h:442
#define FIBER_PARAMETER
Definition: asm.h:433
OFFSET(CsContextFlags, CONTEXT, ContextFlags)
Definition: utils.h:177
_Out_ PULONG UserTime
Definition: kefuncs.h:771
#define CR4_DE
Definition: ketypes.h:87
#define FIBER_GUARANTEED_STACK_BYTES
Definition: asm.h:439
#define KTRAP_FRAME_DR7
Definition: asm.h:281
#define DR7_ACTIVE
Definition: ketypes.h:101
#define KF_CR4
Definition: ketypes.h:145
#define KPCR_GDT
Definition: asm.h:170
#define CR4_XMMEXCPT
Definition: ketypes.h:93
_Out_ PCLIENT_ID ClientId
Definition: kefuncs.h:1163
#define KGDT_TSS
Definition: ketypes.h:79
#define KPCR_PRCB_DPC_STACK
Definition: asm.h:198
#define KGDT_R0_DATA
Definition: ketypes.h:76
#define EXCEPTION_EXECUTE_HANDLER
Definition: excpt.h:85
#define KPCR_PRCB_DEFERRED_READY_LIST_HEAD
Definition: asm.h:207
#define TEB_STACK_LIMIT
Definition: asm.h:413
#define FIBER_STACK_BASE
Definition: asm.h:435
#define CR4_VME
Definition: ketypes.h:84
#define KTHREAD_WAIT_IRQL
Definition: asm.h:52
#define DR7_RESERVED_MASK
Definition: asm.h:514
#define LowTime
#define CONTEXT_EBP
Definition: asm.h:355
#define EXCEPTION_RECORD_LENGTH
Definition: asm.h:388
HEADER("CR0 flags")
#define XSTATE_MASK_LEGACY_SSE
Definition: ketypes.h:1130
#define MACHINE_TYPE_ISA
Definition: ketypes.h:52
struct _KGDTENTRY::@2370::@2371 Bytes
#define KPROCESS_LDT_DESCRIPTOR1
Definition: asm.h:123
#define KGDT_R3_TEB
Definition: ketypes.h:81
#define KTRAP_FRAME_ES
Definition: asm.h:284
#define KPCR_PRCB_MAXIMUM_DPC_QUEUE_DEPTH
Definition: asm.h:199
#define TEB_GDI_BATCH_COUNT
Definition: asm.h:421
#define KTRAP_FRAME_EDX
Definition: asm.h:288
#define KF_FAST_SYSCALL
Definition: ketypes.h:155
#define KF_V86_VIS
Definition: ketypes.h:143
#define TEB_EXCEPTION_LIST
Definition: asm.h:411
#define KTRAP_FRAME_GS
Definition: asm.h:282
RAW("#define USERDATA ds:[HEX(0FFDF0000)]")
#define KGDT_R0_PCR
Definition: ketypes.h:80
#define CR0_PE
Definition: asm.h:245
#define FP_DATA_SELECTOR
Definition: asm.h:243
#define KTHREAD_WAIT_REASON
Definition: asm.h:102
#define CBSTACK_CALLBACK_STACK
Definition: asm.h:287
#define EFLAGS_VIF
Definition: ketypes.h:134
#define CR4_PVI
Definition: ketypes.h:85
_IRQL_requires_same_ _In_ PVOID _Inout_ struct _CONTEXT * ContextRecord
Definition: ntbasedef.h:654
#define FIBER_FLS_DATA
Definition: asm.h:440
#define XSTATE_MASK_GSSE
Definition: ketypes.h:1132
#define HV_MMU_USE_HYPERCALL_FOR_LOCAL_FLUSH
Definition: asm.h:636
#define KTHREAD_CALLBACK_STACK
Definition: asm.h:111
#define KTRAP_FRAME_ESI
Definition: asm.h:296
#define KGDT_VDM_TILE
Definition: ketypes.h:82
#define PEB_KERNEL_CALLBACK_TABLE
Definition: asm.h:428
#define EXCEPTION_RECORD_EXCEPTION_RECORD
Definition: asm.h:384
#define MACHINE_TYPE_MCA
Definition: ketypes.h:54
#define FIBER_CONTEXT_EDI
Definition: asm.h:448
#define FIBER_CONTEXT_ECX
Definition: asm.h:445
#define EFLAGS_TF
Definition: ketypes.h:125
#define CONTEXT_SEGDS
Definition: asm.h:348
_In_opt_ PENTER_STATE_SYSTEM_HANDLER _In_opt_ PVOID _In_ LONG _In_opt_ LONG volatile * Number
Definition: ntpoapi.h:204
processorSet Mask
#define KTRAP_FRAME_SS
Definition: asm.h:304
#define MSR_EFER
Definition: ketypes.h:186
#define KTRAP_FRAME_V86_ES
Definition: asm.h:306
#define CONTEXT_EAX
Definition: asm.h:354
#define SIZEOF_FX_SAVE_AREA
Definition: asm.h:29
#define TEB_PEB
Definition: asm.h:416
#define CONTEXT_ECX
Definition: asm.h:353
struct _KPCR * Self
Definition: ketypes.h:867
#define FIBER_CONTEXT_EAX
Definition: asm.h:443
#define KTHREAD_COMBINED_APC_DISABLE
Definition: asm.h:107
#define KTHREAD_LARGE_STACK
Definition: asm.h:109
#define KTRAP_FRAME_SIZE
Definition: asm.h:314
#define HV_MMU_USE_HYPERCALL_FOR_ADDRESS_SWITCH
Definition: asm.h:635
#define KPROCESS_LDT_DESCRIPTOR0
Definition: asm.h:122
#define CONTEXT_EIP
Definition: asm.h:356
Definition: compat.h:694
#define XSTATE_MASK_LEGACY_FLOATING_POINT
Definition: ketypes.h:1129
#define KTHREAD_CONTEXT_SWITCHES
Definition: asm.h:97
#define KTHREAD_TEB
Definition: asm.h:91
#define KPCR_PRCB_DPC_ROUTINE_ACTIVE
Definition: asm.h:202
#define TEB_ACTIVATION_CONTEXT_STACK_POINTER
Definition: asm.h:418
#define KPCR_PRCB
Definition: asm.h:66
#define KTRAP_FRAME_EBX
Definition: asm.h:297
#define CR4_PAE
Definition: ketypes.h:89
#define EXCEPTION_RECORD_EXCEPTION_CODE
Definition: asm.h:382
#define CR0_TS
Definition: asm.h:248
_Out_ PKAPC_STATE ApcState
Definition: mm.h:1679
#define PROCESSOR_FEATURE_FXSR
Definition: asm.h:337
#define KTRAP_FRAME_DR6
Definition: asm.h:280
#define KTRAP_FRAME_EBP
Definition: asm.h:298
ULONG QuantumEnd
Definition: ketypes.h:571
#define KTRAP_FRAME_DEBUGEBP
Definition: asm.h:270
#define KTRAP_FRAME_EXCEPTION_LIST
Definition: asm.h:292
XSAVE_FORMAT
Definition: ketypes.h:951
#define CONTEXT_SEGSS
Definition: asm.h:360
#define FIBER_STACK_LIMIT
Definition: asm.h:436
#define CR0_WP
Definition: asm.h:251
#define KTHREAD_NPX_STATE
Definition: asm.h:99
#define FIBER_CONTEXT_EIP
Definition: asm.h:450
#define NPX_STATE_NOT_LOADED
Definition: asm.h:264
#define KTHREAD_TRAP_FRAME
Definition: asm.h:110
#define KGDT_R3_CODE
Definition: ketypes.h:77
#define KTHREAD_PENDING_KERNEL_APC
Definition: asm.h:96
#define KTRAP_FRAME_DR1
Definition: asm.h:277
#define KTRAP_FRAME_EDI
Definition: asm.h:295
#define KPCR_EXCEPTION_LIST
Definition: asm.h:155
VOID CpuStep(VOID)
Definition: cpu.c:108
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG _Out_ PULONG ResultLength
Definition: wdfdevice.h:3776
#define FRAME_EDITED
Definition: ke.h:64
struct _KTHREAD * CurrentThread
Definition: ketypes.h:551
#define HV_MMU_USE_HYPERCALL_FOR_REMOTE_FLUSH
Definition: asm.h:637
#define FIBER_CONTEXT_FLOAT_SAVE_STATUS_WORD
Definition: asm.h:453
#define KTRAP_FRAME_LENGTH
Definition: asm.h:126
#define KTHREAD_KERNEL_STACK
Definition: asm.h:92
#define KF_GLOBAL_PAGE
Definition: ketypes.h:147
#define KPROCESS_IOPM_OFFSET
Definition: asm.h:126
#define CONTEXT_EDI
Definition: asm.h:349
#define KPCR_PERF_GLOBAL_GROUP_MASK
Definition: asm.h:158
#define CR0_MP
Definition: asm.h:246
#define TEB_GUARANTEED_STACK_BYTES
Definition: asm.h:422
XSAVE_AREA
Definition: ketypes.h:961
#define KTRAP_FRAME_ALIGN
Definition: asm.h:125
#define KTRAP_FRAME_ESP
Definition: asm.h:303
#define KPCR_PRCB_TIMER_REQUEST
Definition: asm.h:204
#define DR6_LEGAL
Definition: asm.h:510
#define MSR_NXE
Definition: ketypes.h:218
#define FP_TAG_WORD
Definition: asm.h:239
#define FIBER_EXCEPTION_LIST
Definition: asm.h:434
#define KTRAP_FRAME_EFLAGS
Definition: asm.h:302
XSAVE_AREA_HEADER
Definition: ketypes.h:956
#define CONTEXT_EDX
Definition: asm.h:352
#define MACHINE_TYPE_EISA
Definition: ketypes.h:53
#define FIBER_DEALLOCATION_STACK
Definition: asm.h:437
#define XSTATE_MASK_LEGACY
Definition: ketypes.h:1131
#define DR7_LEGAL
Definition: ketypes.h:100
#define EFLAGS_INTERRUPT_MASK
Definition: ketypes.h:126
#define FIBER_CONTEXT
Definition: asm.h:438
#define KTRAP_FRAME_V86_DS
Definition: asm.h:308
#define KPCR_PRCB_QUANTUM_END
Definition: asm.h:205