What is this circuit supposed to do?
When 5V is applied with the switch open, the voltage at OUT is initially going to be 5V. Over some time the capacitor is going to charge to have 5V across it and OUT will be 0V. When the switch is closed, the capacitor is going to discharged instantly through the switch. Over time this will likely damage the switch and possibly the capacitor as well.
Perhaps something like this would be better:
simulate this circuit – Schematic created using CircuitLab
In this circuit the resistor between 5V and everything else, you can see right away that there is no possibility for large currents in/out of switches, capacitors or microcontroller gates.
UPDATE: Actually this is not true because the capacitor discharged instantly when the switch is closed so that will put stress on the switch and capacitor. So as described below I would remove the capacitor entirely and implement the debouncing in code.
Although I don't know how well the 100nF capacitor would work as a debouncing circuit. For one thing, when you start up, it will initially be 0V and take time to charge up. But otherwise it might work.
In practice I would leave out the capacitor and implement debouncing in software. Specifically, you get the time with millis() and compare that to the last time the button was pressed. If that time is not exceeded, you ignore that change in state. This is how it is done and there are numerous examples of how to write code that handles momentary button debouncing.