Conversation

that's no stack spoofing whatsoever, thats an invalid unwind. you can achieve the same with a tweetable piece of code: `*(void**)_AddressOfReturnAddress() = CreateFileW;`
4
15
unwinding breaks after you touch the last return address since it changes how walking works. so what's the point, the rest becomes meaningless stack data as soon as you touch the last one incorrectly