I want to catch a packet my computer is sending, modify it and send it. I can't use sniff, because it gives me a copy of the packet. The packet itself is sent.
I want to stop the sending of the packet, change it and then send it forward - MitM attack.
How can I do it using scapy?
What you need sounds more like a proxy. What kind of protocol you try to inject into? If it was HTTP it would be easy - take any HTTP proxy and mitm away.
Or you can use something like socksify, but I am not aware of anything working on Windows. Or you need something that works as a network driver.
You cannot easily achieve this with scapy if packets originate from YOUR computer. Example with scapy-arp-mitm is performing mitm on other computer communication.
Python - Man in the Middle