Exception code e0434352 is the exception code used internally by the CLR to represent most exceptions(*).
Regardless of if you throw a System.NullReferenceException or a System.ArgumentException in C#, you'll throw a SEH exception e0434352 under the covers.
A fun way to validate this theory is to watch what happens to the CLR exceptions settings in cdb. Fire up cdb, and see the state of clr exceptions:
0:000> .shell -ci "sx" findstr clr
clr - CLR exception - second-chance break - not handled
clrn - CLR notification exception - break - handled
.shell: Process exited
Now, set the exception handler for exception number e0434352 and recheck the value of the clr exception handler:
0:000> sxe e0434352
0:000> .shell -ci "sx" findstr clr
clr - CLR exception - break - not handled
clrn - CLR notification exception - break - handled
.shell: Process exited
Armed with this knowledge I expect this post makes more sense.
NitPickers Corner:
(*) I know of at least Divide by Zero not using this exception code.