Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765) sends eth to arbitrary user
Dangerous calls:
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
Ensure that an arbitrary user cannot withdraw unauthorized funds.
Additional information: link
Reentrancy in BNB_Ninja._transfer(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1613-1713):
External calls:
- swapAndDistributeBNB(swapTokensAtAmount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1660)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
External calls sending eth:
- swapAndDistributeBNB(swapTokensAtAmount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1660)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
State variables written after the call(s):
- super._transfer(from,address(this),fees) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1689)
- _balances[sender] = senderBalance - amount (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#307)
- _balances[recipient] += amount (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#309)
- super._transfer(from,to,amount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1696)
- _balances[sender] = senderBalance - amount (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#307)
- _balances[recipient] += amount (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#309)
- accBuybackFee = accBuybackFee.add(forBuyback) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1683)
- accDividendFee = accDividendFee.add(forDividends) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1685)
- accMarketingFee = accMarketingFee.add(forMarketing) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1684)
- swapping = false (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1661)
Reentrancy in DividendPayingToken._withdrawDividendOfUser(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#844-860):
External calls:
- (success) = user.call{gas: 3000,value: _withdrawableDividend}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#849)
State variables written after the call(s):
- withdrawnDividends[user] = withdrawnDividends[user].sub(_withdrawableDividend) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#852)
Reentrancy in BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765):
External calls:
- swapTokensForEth(tokens) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1736)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
External calls sending eth:
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
State variables written after the call(s):
- accMarketingFee = 1 (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1749)
Reentrancy in BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765):
External calls:
- swapTokensForEth(tokens) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1736)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
External calls sending eth:
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
State variables written after the call(s):
- accBuybackFee = 1 (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1756)
Reentrancy in BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765):
External calls:
- swapTokensForEth(tokens) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1736)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
External calls sending eth:
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
State variables written after the call(s):
- accDividendFee = 1 (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1763)
Apply the check-effects-interactions pattern.
Additional information: link
BNB_Ninja.withdrawStuckTokens(address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1767-1769) ignores return value by IERC20(_token).transfer(msg.sender,_amount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1768)
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked.
Additional information: link
Combination 1: Reentrancy vulnerabilities + Functions that send Ether to arbitraty destination. Usual for scams. May be justified by some complex mechanics (e.g. rebase, reflections). DYOR & manual audit are advised.
Combination 2: Unchecked transfer + Functions that send Ether to arbitraty destination. Usual for scams. May be justified by some complex mechanics (e.g. rebase, reflections). DYOR & manual audit are advised.
Combination 3: Reentrancy vulnerabilities + Unchecked transfer vulnerability. Usual for scams. May be justified by some complex mechanics (e.g. rebase, reflections). DYOR & manual audit are advised.
Contract ownership is not renounced (belongs to a wallet)
Ownable._previousOwner (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#946) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
name() should be declared external:
- ERC20.name() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#135-137)
symbol() should be declared external:
- ERC20.symbol() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#143-145)
transfer(address,uint256) should be declared external:
- ERC20.transfer(address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#186-189)
allowance(address,address) should be declared external:
- ERC20.allowance(address,address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#194-196)
approve(address,uint256) should be declared external:
- ERC20.approve(address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#205-208)
transferFrom(address,address,uint256) should be declared external:
- ERC20.transferFrom(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#223-237)
increaseAllowance(address,uint256) should be declared external:
- ERC20.increaseAllowance(address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#251-254)
decreaseAllowance(address,uint256) should be declared external:
- ERC20.decreaseAllowance(address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#270-278)
get(IterableMapping.Map,address) should be declared external:
- IterableMapping.get(IterableMapping.Map,address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#699-701)
getIndexOfKey(IterableMapping.Map,address) should be declared external:
- IterableMapping.getIndexOfKey(IterableMapping.Map,address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#703-708)
getKeyAtIndex(IterableMapping.Map,uint256) should be declared external:
- IterableMapping.getKeyAtIndex(IterableMapping.Map,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#710-712)
size(IterableMapping.Map) should be declared external:
- IterableMapping.size(IterableMapping.Map) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#716-718)
withdrawDividend() should be declared external:
- BnbnDividendTracker.withdrawDividend() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1802-1804)
- DividendPayingToken.withdrawDividend() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#838-840)
dividendOf(address) should be declared external:
- DividendPayingToken.dividendOf(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#866-868)
withdrawnDividendOf(address) should be declared external:
- DividendPayingToken.withdrawnDividendOf(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#880-882)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#982-985)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#991-995)
getAccountSells(address,uint256) should be declared external:
- BNB_Ninja.getAccountSells(address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1427-1429)
updateDividendTracker(address) should be declared external:
- BNB_Ninja.updateDividendTracker(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1468-1482)
excludeFromFees(address,bool) should be declared external:
- BNB_Ninja.excludeFromFees(address,bool) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1484-1489)
excludeFromPeriodLimit(address,bool) should be declared external:
- BNB_Ninja.excludeFromPeriodLimit(address,bool) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1491-1496)
excludeFromMaxTxLimit(address,bool) should be declared external:
- BNB_Ninja.excludeFromMaxTxLimit(address,bool) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1498-1503)
excludeMultipleAccountsFromFees(address[],bool) should be declared external:
- BNB_Ninja.excludeMultipleAccountsFromFees(address[],bool) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1505-1511)
updateGasForProcessing(uint256) should be declared external:
- BNB_Ninja.updateGasForProcessing(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1513-1518)
isExcludedFromFees(address) should be declared external:
- BNB_Ninja.isExcludedFromFees(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1536-1538)
isExcludedFromMaxTxLimit(address) should be declared external:
- BNB_Ninja.isExcludedFromMaxTxLimit(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1540-1542)
isExcludedFromMaxHoldLimit(address) should be declared external:
- BNB_Ninja.isExcludedFromMaxHoldLimit(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1544-1546)
isExcludedFromPeriodLimit(address) should be declared external:
- BNB_Ninja.isExcludedFromPeriodLimit(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1548-1550)
withdrawableDividendOf(address) should be declared external:
- BNB_Ninja.withdrawableDividendOf(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1552-1554)
dividendTokenBalanceOf(address) should be declared external:
- BNB_Ninja.dividendTokenBalanceOf(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1556-1558)
withdrawStuckTokens(address,uint256) should be declared external:
- BNB_Ninja.withdrawStuckTokens(address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1767-1769)
getAccountAtIndex(uint256) should be declared external:
- BnbnDividendTracker.getAccountAtIndex(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1879-1896)
process(uint256) should be declared external:
- BnbnDividendTracker.process(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1925-1970)
Use the external attribute for functions never called from the contract.
Additional information: link
Reentrancy in BNB_Ninja.updateDividendTracker(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1468-1482):
External calls:
- newDividendTracker.excludeFromDividends(address(newDividendTracker)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1475)
- newDividendTracker.excludeFromDividends(address(this)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1476)
- newDividendTracker.excludeFromDividends(address(pancakeRouter)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1477)
State variables written after the call(s):
- dividendTracker = newDividendTracker (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1481)
Apply the check-effects-interactions pattern.
Additional information: link
BNB_Ninja._transfer(address,address,uint256).iterations (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1706) is a local variable never initialized
BNB_Ninja._transfer(address,address,uint256).claims (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1706) is a local variable never initialized
BNB_Ninja._transfer(address,address,uint256).lastProcessedIndex (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1706) is a local variable never initialized
BNB_Ninja._transfer(address,address,uint256).sell (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1626) is a local variable never initialized
BNB_Ninja.getAccountPeriodSellVolume(address).offset (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1393) is a local variable never initialized
Initialize all the variables. If a variable is meant to be initialized to zero, explicitly set it to zero to improve code readability.
Additional information: link
BNB_Ninja.claim() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1591-1593) ignores return value by dividendTracker.processAccount(address(msg.sender),false) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1592)
BNB_Ninja._transfer(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1613-1713) ignores return value by dividendTracker.process(gas) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1706-1711)
Ensure that all the return values of the function calls are used.
Additional information: link
DividendPayingToken.constructor(string,string)._name (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#799) shadows:
- ERC20._name (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#115) (state variable)
DividendPayingToken.constructor(string,string)._symbol (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#799) shadows:
- ERC20._symbol (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#116) (state variable)
Rename the local variables that shadow another component.
Additional information: link
BNB_Ninja.updatePancakeRouter(address)._pancakePair (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1347-1348) lacks a zero-check on :
- pancakePair = _pancakePair (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1349)
Check that the address is not zero.
Additional information: link
DividendPayingToken._withdrawDividendOfUser(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#844-860) has external calls inside a loop: (success) = user.call{gas: 3000,value: _withdrawableDividend}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#849)
Favor pull over push strategy for external calls.
Additional information: link
Variable 'BNB_Ninja._transfer(address,address,uint256).iterations (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1706)' in BNB_Ninja._transfer(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1613-1713) potentially used before declaration: ProcessedDividendTracker(iterations,claims,lastProcessedIndex,true,gas,tx.origin) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1707)
Variable 'BNB_Ninja._transfer(address,address,uint256).lastProcessedIndex (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1706)' in BNB_Ninja._transfer(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1613-1713) potentially used before declaration: ProcessedDividendTracker(iterations,claims,lastProcessedIndex,true,gas,tx.origin) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1707)
Variable 'BNB_Ninja._transfer(address,address,uint256).claims (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1706)' in BNB_Ninja._transfer(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1613-1713) potentially used before declaration: ProcessedDividendTracker(iterations,claims,lastProcessedIndex,true,gas,tx.origin) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1707)
Move all variable declarations prior to any usage of the variable, and ensure that reaching a variable declaration does not depend on some conditional if it is used unconditionally.
Additional information: link
Reentrancy in BNB_Ninja.constructor() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1305-1331):
External calls:
- updatePancakeRouter(0x10ED43C718714eb63d5aA57B78B54704E256024E) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1308)
- _pancakePair = IPancakeFactory(pancakeRouter.factory()).createPair(address(this),pancakeRouter.WETH()) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1347-1348)
- dividendTracker.excludeFromDividends(address(pancakeRouter)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1351)
- dividendTracker.excludeFromDividends(pancakePair) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1352)
- dividendTracker.excludeFromDividends(address(dividendTracker)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1312)
- dividendTracker.excludeFromDividends(address(this)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1313)
- dividendTracker.excludeFromDividends(address(0)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1314)
State variables written after the call(s):
- _mint(addy,10 ** 11 * (10 ** decimals())) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1328)
- _balances[account] += amount (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#331)
- excludeFromAllLimits(owner(),true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1318)
- _isExcludedFromFees[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1365)
- excludeFromAllLimits(addy,true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1321)
- _isExcludedFromFees[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1365)
- excludeFromAllLimits(address(this),true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1322)
- _isExcludedFromFees[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1365)
- _isExcludedFromMaxHoldLimit[address(0)] = true (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1316)
- excludeFromAllLimits(owner(),true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1318)
- _isExcludedFromMaxHoldLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1368)
- excludeFromAllLimits(addy,true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1321)
- _isExcludedFromMaxHoldLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1368)
- excludeFromAllLimits(address(this),true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1322)
- _isExcludedFromMaxHoldLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1368)
- excludeFromAllLimits(owner(),true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1318)
- _isExcludedFromMaxTxLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1366)
- excludeFromAllLimits(addy,true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1321)
- _isExcludedFromMaxTxLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1366)
- excludeFromAllLimits(address(this),true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1322)
- _isExcludedFromMaxTxLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1366)
- excludeFromAllLimits(owner(),true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1318)
- _isExcludedFromPeriodLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1367)
- excludeFromAllLimits(addy,true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1321)
- _isExcludedFromPeriodLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1367)
- excludeFromAllLimits(address(this),true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1322)
- _isExcludedFromPeriodLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1367)
- _mint(addy,10 ** 11 * (10 ** decimals())) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1328)
- _totalSupply += amount (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#330)
- canTransferBeforeTradingIsEnabled[owner()] = true (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1324)
- canTransferBeforeTradingIsEnabled[addy] = true (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1325)
- maxHoldingAmount = totalSupply().div(100) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1330)
- maxTransactionAmount = totalSupply().div(200) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1329)
Reentrancy in BnbnDividendTracker.processAccount(address,bool) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1972-1982):
External calls:
- amount = _withdrawDividendOfUser(account) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1973)
- (success) = user.call{gas: 3000,value: _withdrawableDividend}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#849)
State variables written after the call(s):
- lastClaimTimes[account] = block.timestamp (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1976)
Reentrancy in BNB_Ninja.updatePancakeRouter(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1343-1359):
External calls:
- _pancakePair = IPancakeFactory(pancakeRouter.factory()).createPair(address(this),pancakeRouter.WETH()) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1347-1348)
State variables written after the call(s):
- pancakePair = _pancakePair (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1349)
Reentrancy in BNB_Ninja.updatePancakeRouter(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1343-1359):
External calls:
- _pancakePair = IPancakeFactory(pancakeRouter.factory()).createPair(address(this),pancakeRouter.WETH()) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1347-1348)
- dividendTracker.excludeFromDividends(address(pancakeRouter)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1351)
- dividendTracker.excludeFromDividends(pancakePair) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1352)
State variables written after the call(s):
- excludeFromAllLimits(newAddress,true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1354)
- _isExcludedFromFees[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1365)
- excludeFromAllLimits(newAddress,true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1354)
- _isExcludedFromMaxHoldLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1368)
- _isExcludedFromMaxHoldLimit[pancakePair] = true (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1357)
- excludeFromAllLimits(newAddress,true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1354)
- _isExcludedFromMaxTxLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1366)
- excludeFromAllLimits(newAddress,true) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1354)
- _isExcludedFromPeriodLimit[account] = status (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1367)
- _isExcludedFromPeriodLimit[pancakePair] = true (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1356)
Apply the check-effects-interactions pattern.
Additional information: link
BNB_Ninja.updateGasForProcessing(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1513-1518) uses literals with too many digits:
- require(bool,string)(newValue >= 200000 && newValue <= 500000,BNB Ninja: gasForProcessing must be between 200,000 and 500,000) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1514)
BNB_Ninja.slitherConstructorVariables() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1201-1770) uses literals with too many digits:
- gasForProcessing = 300000 (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1230)
BnbnDividendTracker.getAccountAtIndex(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1879-1896) uses literals with too many digits:
- (0x0000000000000000000000000000000000000000,- 1,- 1,0,0,0,0,0) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1890)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
Reentrancy in BNB_Ninja._transfer(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1613-1713):
External calls:
- swapAndDistributeBNB(swapTokensAtAmount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1660)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
External calls sending eth:
- swapAndDistributeBNB(swapTokensAtAmount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1660)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
Event emitted after the call(s):
- Transfer(sender,recipient,amount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#311)
- super._transfer(from,address(this),fees) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1689)
- Transfer(sender,recipient,amount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#311)
- super._transfer(from,to,amount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1696)
Reentrancy in BNB_Ninja._transfer(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1613-1713):
External calls:
- swapAndDistributeBNB(swapTokensAtAmount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1660)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
- dividendTracker.setBalance(address(from),balanceOf(from)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1700)
- dividendTracker.setBalance(address(to),balanceOf(to)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1701)
- dividendTracker.process(gas) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1706-1711)
External calls sending eth:
- swapAndDistributeBNB(swapTokensAtAmount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1660)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
Event emitted after the call(s):
- ErrorInProcess(msg.sender) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1710)
- ProcessedDividendTracker(iterations,claims,lastProcessedIndex,true,gas,tx.origin) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1707)
Reentrancy in BNB_Ninja.constructor() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1305-1331):
External calls:
- updatePancakeRouter(0x10ED43C718714eb63d5aA57B78B54704E256024E) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1308)
- _pancakePair = IPancakeFactory(pancakeRouter.factory()).createPair(address(this),pancakeRouter.WETH()) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1347-1348)
- dividendTracker.excludeFromDividends(address(pancakeRouter)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1351)
- dividendTracker.excludeFromDividends(pancakePair) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1352)
- dividendTracker.excludeFromDividends(address(dividendTracker)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1312)
- dividendTracker.excludeFromDividends(address(this)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1313)
- dividendTracker.excludeFromDividends(address(0)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1314)
Event emitted after the call(s):
- Transfer(address(0),account,amount) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#332)
- _mint(addy,10 ** 11 * (10 ** decimals())) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1328)
Reentrancy in BnbnDividendTracker.processAccount(address,bool) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1972-1982):
External calls:
- amount = _withdrawDividendOfUser(account) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1973)
- (success) = user.call{gas: 3000,value: _withdrawableDividend}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#849)
Event emitted after the call(s):
- Claim(account,amount,automatic) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1977)
Reentrancy in BNB_Ninja.processDividendTracker(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1586-1589):
External calls:
- (iterations,claims,lastProcessedIndex) = dividendTracker.process(gas) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1587)
Event emitted after the call(s):
- ProcessedDividendTracker(iterations,claims,lastProcessedIndex,false,gas,tx.origin) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1588)
Reentrancy in BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765):
External calls:
- swapTokensForEth(tokens) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1736)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
Event emitted after the call(s):
- CalculatedBNBForEachRecipient(forMarketing,forBuyback,forDividends) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1743)
Reentrancy in BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765):
External calls:
- swapTokensForEth(tokens) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1736)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
External calls sending eth:
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
Event emitted after the call(s):
- SwapAndSendTo(accMarketingFee,forMarketing,MARKETING) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1748)
Reentrancy in BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765):
External calls:
- swapTokensForEth(tokens) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1736)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
External calls sending eth:
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
Event emitted after the call(s):
- SwapAndSendTo(accBuybackFee,forBuyback,ANTI DUMP) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1755)
Reentrancy in BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765):
External calls:
- swapTokensForEth(tokens) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1736)
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
External calls sending eth:
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
Event emitted after the call(s):
- SwapAndSendTo(accDividendFee,forDividends,DIVIDENDS) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1762)
Reentrancy in BNB_Ninja.swapTokensForEth(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1715-1733):
External calls:
- pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount,0,path,address(this),block.timestamp) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1725-1731)
Event emitted after the call(s):
- FinishSwapTokensForEth(address(this).balance) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1732)
Reentrancy in BNB_Ninja.updateDividendTracker(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1468-1482):
External calls:
- newDividendTracker.excludeFromDividends(address(newDividendTracker)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1475)
- newDividendTracker.excludeFromDividends(address(this)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1476)
- newDividendTracker.excludeFromDividends(address(pancakeRouter)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1477)
Event emitted after the call(s):
- UpdateDividendTracker(newAddress,address(dividendTracker)) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1479)
Apply the check-effects-interactions pattern.
Additional information: link
BNB_Ninja.getAccountPeriodSellVolume(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1392-1416) uses timestamp for comparisons
Dangerous comparisons:
- block.timestamp.sub(accountSells[account][i].time) <= restrictionPeriod (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1397)
BnbnDividendTracker.getAccount(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1836-1877) uses timestamp for comparisons
Dangerous comparisons:
- nextClaimTime > block.timestamp (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1874-1876)
BnbnDividendTracker.canAutoClaim(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1898-1904) uses timestamp for comparisons
Dangerous comparisons:
- lastClaimTime > block.timestamp (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1899)
- block.timestamp.sub(lastClaimTime) >= claimWait (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1903)
Avoid relying on block.timestamp.
Additional information: link
Context._msgData() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#12-14) is never used and should be removed
DividendPayingToken._transfer(address,address,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#900-906) is never used and should be removed
SafeMath.div(uint256,uint256,string) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#652-661) is never used and should be removed
SafeMath.mod(uint256,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#612-614) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#678-687) is never used and should be removed
SafeMath.sub(uint256,uint256,string) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#629-638) is never used and should be removed
SafeMath.tryAdd(uint256,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#483-489) is never used and should be removed
SafeMath.tryDiv(uint256,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#525-530) is never used and should be removed
SafeMath.tryMod(uint256,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#537-542) is never used and should be removed
SafeMath.tryMul(uint256,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#508-518) is never used and should be removed
SafeMath.trySub(uint256,uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#496-501) is never used and should be removed
SafeMathInt.div(int256,int256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#451-457) is never used and should be removed
SafeMathInt.mul(int256,int256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#441-449) is never used and should be removed
Remove unused functions.
Additional information: link
BNB_Ninja.swapTokensAtAmount (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1215) is set pre-construction with a non-constant function or state variable:
- 10 ** 6 * (10 ** decimals())
Remove any initialization of state variables via non-constant state variables or function calls. If variables must be set upon contract deployment, locate initialization in the constructor instead.
Additional information: link
Pragma version^0.8.0 (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#5) allows old versions
solc-0.8.11 is not recommended for deployment
Deploy with any of the following Solidity versions: 0.5.16 - 0.5.17, 0.6.11 - 0.6.12, 0.7.5 - 0.7.6 Use a simple pragma version that allows any of these versions. Consider using the latest version of Solidity for testing.
Additional information: link
Low level call in DividendPayingToken._withdrawDividendOfUser(address) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#844-860):
- (success) = user.call{gas: 3000,value: _withdrawableDividend}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#849)
Low level call in BNB_Ninja.swapAndDistributeBNB(uint256) (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1735-1765):
- (success) = address(marketingWallet).call{value: forMarketing}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1745)
- (success,None) = address(buybackWallet).call{value: forBuyback}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1752)
- (success,None) = address(dividendTracker).call{value: forDividends}() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1759)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Variable ERC20._name (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#115) is not in mixedCase
Variable ERC20._symbol (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#116) is not in mixedCase
Parameter DividendPayingToken.dividendOf(address)._owner (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#866) is not in mixedCase
Parameter DividendPayingToken.withdrawableDividendOf(address)._owner (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#873) is not in mixedCase
Parameter DividendPayingToken.withdrawnDividendOf(address)._owner (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#880) is not in mixedCase
Parameter DividendPayingToken.accumulativeDividendOf(address)._owner (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#890) is not in mixedCase
Constant DividendPayingToken.magnitude (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#779) is not in UPPER_CASE_WITH_UNDERSCORES
Variable Ownable._owner (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#945) is not in mixedCase
Function IPancakePair.DOMAIN_SEPARATOR() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1029) is not in mixedCase
Function IPancakePair.PERMIT_TYPEHASH() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1030) is not in mixedCase
Function IPancakePair.MINIMUM_LIQUIDITY() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1047) is not in mixedCase
Function IPancakeRouter01.WETH() (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1067) is not in mixedCase
Contract BNB_Ninja (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1201-1770) is not in CapWords
Parameter BNB_Ninja.setRestrictionPeriod(uint256)._newPeriodHours (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1387) is not in mixedCase
Parameter BNB_Ninja.setBuyFees(uint256,uint256,uint256)._BuybackFee (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1431) is not in mixedCase
Parameter BNB_Ninja.setBuyFees(uint256,uint256,uint256)._MarketingFee (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1431) is not in mixedCase
Parameter BNB_Ninja.setBuyFees(uint256,uint256,uint256)._DividendFee (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1431) is not in mixedCase
Parameter BNB_Ninja.setSellFees(uint256,uint256,uint256)._SellBuybackFee (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1440) is not in mixedCase
Parameter BNB_Ninja.setSellFees(uint256,uint256,uint256)._SellMarketingFee (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1440) is not in mixedCase
Parameter BNB_Ninja.setSellFees(uint256,uint256,uint256)._SellDividendFee (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1440) is not in mixedCase
Parameter BNB_Ninja.withdrawStuckTokens(address,uint256)._token (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1767) is not in mixedCase
Parameter BNB_Ninja.withdrawStuckTokens(address,uint256)._amount (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1767) is not in mixedCase
Parameter BnbnDividendTracker.getAccount(address)._account (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1836) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Variable IPancakeRouter01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1072) is too similar to IPancakeRouter01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1073)
Variable DividendPayingToken._withdrawDividendOfUser(address)._withdrawableDividend (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#845) is too similar to BnbnDividendTracker.getAccount(address).withdrawableDividends (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1840)
Prevent variables from having similar names.
Additional information: link
Ownable._previousOwner (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#946) is never used in BNB_Ninja (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1201-1770)
Ownable._previousOwner (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#946) is never used in BnbnDividendTracker (crytic-export/etherscan-contracts/0xa9bcc3f55fb920eb50878d4e15a820c5634ba2a7.bscscan.com-BNB_Ninja.sol#1772-1984)
Remove unused state variables.
Additional information: link
Unable to find website, listings and other project-related information
Young tokens have high risks of scam / price dump / death
Token has no active CoinGecko listing / rank
Token has no active CoinMarketCap listing / rank
Unable to find Telegram and Twitter accounts