I wrote a smart contract and deployed it on the ethereum main chain, however in my rush to get it deployed I made a critical mistake in forgetting an edge case in the code. As a result when I called a function to move some ETH the transaction reverted and the ETH seemingly disappeared. When I called a redeem function in the contract thats supposed to redeem all ETH stored it was only 0.2ETH and not 0.6ETH. Where did the other 0.4 ETH go?
Here's the contract: https://etherscan.io/address/0xf0799e76a2eb926cbb9684675f6aeb6d31d1838c
Contract source code: https://pastebin.com/UxWZwX86