An exception handler is a portion of code contained within an application, designed to handle an exception that may occur during runtime.
Windows contains an exception handler by default (SEH) which is designed to catch an exception and generate an error.
We can view the current state of the SEH by pressing Alt S.
As we can see, we have successfully overwritten the EDX, ESP, and ESI registers, as well as the SEH and n SEH.
If the buffer is overflown and data is written to the SEH (located eight bytes after ESP), then all of the CPU registers are set to zero (0) and this prevents us from executing our shellcode successfully.