+##\r
+## At this point, the stub has saved the current application stack esp into AppEsp\r
+## and switched stacks to the debug stack, where it pushed the vector number\r
+##\r
+## The application stack looks like this:\r
+##\r
+## ...\r
+## (last application stack entry)\r
+## eflags from interrupted task\r
+## CS from interrupted task\r
+## EIP from interrupted task\r
+## Error code <-------------------- Only present for some exeption types\r
+##\r
+##\r
+\r
+\r
+## The stub switched us to the debug stack and pushed the interrupt number.\r
+##\r
+## Next, construct the context record. It will be build on the debug stack by\r
+## pushing the registers in the correct order so as to create the context structure\r
+## on the debug stack. The context record must be built from the end back to the\r
+## beginning because the stack grows down...\r
+#\r
+## For reference, the context record looks like this:\r
+##\r
+## typedef\r
+## struct {\r
+## UINT32 ExceptionData;\r
+## FX_SAVE_STATE_IA32 FxSaveState;\r
+## UINT32 Dr0, Dr1, Dr2, Dr3, Dr6, Dr7;\r
+## UINT32 Cr0, Cr2, Cr3, Cr4;\r
+## UINT32 EFlags;\r
+## UINT32 Ldtr, Tr;\r
+## UINT32 Gdtr[2], Idtr[2];\r
+## UINT32 Eip;\r
+## UINT32 Gs, Fs, Es, Ds, Cs, Ss;\r
+## UINT32 Edi, Esi, Ebp, Esp, Ebx, Edx, Ecx, Eax;\r
+## } SYSTEM_CONTEXT_IA32; // 32 bit system context record\r
+\r
+## UINT32 Edi, Esi, Ebp, Esp, Ebx, Edx, Ecx, Eax;\r