Need help with reward token

I deployed a token at https://bscscan.com/address/0x91c6ab47127f11e311ee100df4a60316f4762157. The contract is visible there.

It is a complicated contract with reward functionality, using the interface 'IDividendDistributor'. And that's the part that isn't working properly. There should be transactions, showing BTCB being sent to the holders, but that doesn't happen. Most likely it has to do with the function: 'SetSwapBackSettings' (which can be accessed in bscscan by the owner). Because people can't swap at all on pancakeswap when it is enabled, I disabled it. Now people can swap, but then there is no reward functionality.

I forked another project that was working fine, didn't change the smart contract at all, except for token name and ticker symbol, so I'm confident that this contract should work. It is just a question of setting all the right parameters. The problem is that most of those function calls are not recorded as a transaction in bscscan, so I can't just copy what the other project was doing.

These are the important functions in IDivdendDistributor:

interface IDividendDistributor {
    function setDistributionCriteria(uint256 _minPeriod, uint256 _minDistribution) external;
    function setShare(address shareholder, uint256 amount) external;
    function deposit() external payable;
    function process(uint256 gas) external;
}

(for the full code, follow the first link to the published contract):

If someone knows how to get the reward functionality to work properly I would be very grateful.