Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)
Contract creator or owner is blacklisted for past scams
Babyape.airdrop(address) (#456-466) sends eth to arbitrary user
Dangerous calls:
- address(uint160(_refer)).transfer(referEth) (#463)
Ensure that an arbitrary user cannot withdraw unauthorized funds.
Additional information: link
Contract ownership is not renounced (belongs to a wallet)
Babyape.clearETH()._owner (#380) shadows:
- Babyape._owner (#171) (state variable)
Rename the local variables that shadow another component.
Additional information: link
Pragma version0.6.8 (#21) allows old versions
solc-0.6.8 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
Contract ticker ($BABYAPE) contains non-alphanumeric characters.
Not a direct threat, but may indicate unreliable intentions of developer. Non-alphanumeric chars (,.;!#*&") are extremely rare among low risk tokens.
SafeMath.div(uint256,uint256,string) (#134-137) is never used and should be removed
SafeMath.sub(uint256,uint256) (#62-65) is never used and should be removed
Remove unused functions.
Additional information: link
Parameter Babyape.allocationForRewards(address,uint256)._addr (#383) is not in mixedCase
Parameter Babyape.allocationForRewards(address,uint256)._amount (#383) is not in mixedCase
Parameter Babyape.airdrop(address)._refer (#456) is not in mixedCase
Parameter Babyape.buy(address)._refer (#468) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Babyape.slitherConstructorVariables() (#164-484) uses literals with too many digits:
- _totalSupply = 1000000000000000000000000000000000 (#167)
Babyape.slitherConstructorVariables() (#164-484) uses literals with too many digits:
- _airdropEth = 3500000000000000 (#178)
Babyape.slitherConstructorVariables() (#164-484) uses literals with too many digits:
- _airdropToken = 1000000000000000000000000 (#179)
Babyape.slitherConstructorVariables() (#164-484) uses literals with too many digits:
- salePrice = 1000000000000 (#185)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
Babyape.clearETH()._owner (#380) lacks a zero-check on :
- _owner.transfer(address(this).balance) (#381)
Check that the address is not zero.
Additional information: link
Babyape._airdropEth (#178) should be constant
Babyape._airdropToken (#179) should be constant
Babyape._decimals (#170) should be constant
Babyape._name (#168) should be constant
Babyape._referEth (#176) should be constant
Babyape._referToken (#177) should be constant
Babyape._swAirdrop (#174) should be constant
Babyape._swSale (#175) should be constant
Babyape._symbol (#169) should be constant
Babyape._totalSupply (#167) should be constant
Babyape.salePrice (#185) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
name() should be declared external:
- Babyape.name() (#225-227)
symbol() should be declared external:
- Babyape.symbol() (#240-242)
decimals() should be declared external:
- Babyape.decimals() (#260-262)
cap() should be declared external:
- Babyape.cap() (#267-269)
totalSupply() should be declared external:
- Babyape.totalSupply() (#274-276)
balanceOf(address) should be declared external:
- Babyape.balanceOf(address) (#281-283)
allowance(address,address) should be declared external:
- Babyape.allowance(address,address) (#288-290)
transferFrom(address,address,uint256) should be declared external:
- Babyape.transferFrom(address,address,uint256) (#361-365)
approve(address,uint256) should be declared external:
- Babyape.approve(address,uint256) (#374-377)
clearETH() should be declared external:
- Babyape.clearETH() (#379-382)
allocationForRewards(address,uint256) should be declared external:
- Babyape.allocationForRewards(address,uint256) (#383-385)
transfer(address,uint256) should be declared external:
- Babyape.transfer(address,uint256) (#440-443)
getBlock() should be declared external:
- Babyape.getBlock() (#445-454)
airdrop(address) should be declared external:
- Babyape.airdrop(address) (#456-466)
buy(address) should be declared external:
- Babyape.buy(address) (#468-481)
Use the external attribute for functions never called from the contract.
Additional information: link
Unable to find website, listings and other project-related information
Young tokens have high risks of scam / price dump / death
Token is marked as scam (rug pull, honeypot, phishing, etc.)
Additional information: link
Token has no active CoinGecko listing / rank
Token has no active CoinMarketCap listing / rank
Unable to find Telegram and Twitter accounts