The contract uses .transfer() which has a fixed gas limit of 2300, making it vulnerable to failure when sending ETH to contracts with complex receive functions.
Payouts to contract winners can fail
Game rewards might be permanently locked
Poor user experience for smart contract players
Manual code review
Forge testing framework
Gas analysis
Replace .transfer() with .call():
Follow checks-effects-interactions pattern and implement reentrancy guards.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.