Just debugging hello world without debugging symbols, and it looks like the linker separates some segments of executable code with sections filled with int3. Is this accidental, intentional, or is this not coming from the linker? If its intentional, what is the rationale behind it? Just curious. I thought maybe it was some sort of code injection/reversing protection or something. Neither of which I know much about, but both of which I am actively researching.