MOONASS - Smart Contract Audit Report

Summary

MoonAss Audit Report MOONASS ($MOASS) is a new community-driven DeFi token on the Binance Smart Chain that is an automatic liquidity providing protocol that pays out static rewards to holders.

Our team audited the token contract that was provided to us as a '.sol' file and their intention is to deploy it on the Binance Smart Chain.

Notes on the Contract:
  • MOONASS's code implements and builds upon the fee-redistribution features pioneered by Reflect Finance.
  • The total supply of the token is initially set to three hundred and fifty million $MOASS [350,000,000].
  • There is a hardcoded 8% 'tax fee' on all 'standard' (non-excluded) token transfers. 5% is redistributed to existing token holders instantly and automatically at the time of each transaction. The other 3% is sent to the burn address. If the owner does not exclude the burn address after deploying, it will participate in the reward distribution (as a regular holder) and increase proportionally to the rewards it receives. This is often used as a deflationary mechanism.
  • The owner of the contract can exclude and include accounts from reward distribution.
  • The owner of the contract can add and remove accounts from a 'whitelist' that will enable those addresses to utilize the "whitelist" transfer function where the 3% burn fee is not applied.
  • Ownership has not been renounced (As the contract is not yet deployed).
  • The contract utilizes SafeMath libraries along with following the BEP20 standard.
Audit Findings Summary
  • No external threats were identified.
  • We recommend that the team renounces ownership after a successful launch.
  • As with any token, please ensure trust in the team prior to investing as they have some control within the ecosystem.
  • Date: June 19th, 2021

Audit Results

Vulnerability CategoryNotesResult
Arbitrary Storage WriteN/APASS
Arbitrary JumpN/APASS
Delegate Call to Untrusted ContractN/APASS
Dependence on Predictable VariablesN/APASS
Deprecated OpcodesN/APASS
Ether ThiefN/APASS
ExceptionsN/APASS
External CallsN/APASS
Flash LoansN/APASS
Integer Over/UnderflowN/APASS
Multiple SendsN/APASS
OraclesN/APASS
SuicideN/APASS
State Change External CallsN/APASS
Unchecked RetvalN/APASS
User Supplied AssertionN/APASS
Critical Solidity CompilerN/APASS
Overall Contract Safety PASS

Function Graph

ERC20 Token Graph


Inheritence Chart

Multi-file Token


Functions Overview


 ($) = payable function
 # = non-constant function
 
 + [Int] IBEP20 
    - [Ext] totalSupply
    - [Ext] balanceOf
    - [Ext] transfer #
    - [Ext] allowance
    - [Ext] approve #
    - [Ext] transferFrom #

 + [Lib] Address 
    - [Int] isContract
    - [Int] sendValue #
    - [Int] functionCall #
    - [Int] functionCall #
    - [Int] functionCallWithValue #
    - [Int] functionCallWithValue #
    - [Prv] _functionCallWithValue #

 +  Context 
    - [Int] _msgSender
    - [Int] _msgData

 +  Ownable (Context)
    - [Int]  #
    - [Pub] owner
    - [Pub] renounceOwnership #
       - modifiers: onlyOwner
    - [Pub] transferOwnership #
       - modifiers: onlyOwner

 + [Lib] SafeMath 
    - [Int] add
    - [Int] sub
    - [Int] sub
    - [Int] mul
    - [Int] div
    - [Int] div
    - [Int] mod
    - [Int] mod

 +  MOONASS (IBEP20, Ownable)
    - [Pub]  #
    - [Pub] name
    - [Pub] symbol
    - [Pub] decimals
    - [Pub] totalSupply
    - [Pub] balanceOf
    - [Pub] transfer #
    - [Pub] allowance
    - [Pub] approve #
    - [Pub] transferFrom #
    - [Pub] increaseAllowance #
    - [Pub] decreaseAllowance #
    - [Pub] isExcluded
    - [Pub] totalFees
    - [Pub] reflect #
    - [Pub] reflectionFromToken #
    - [Pub] tokenFromReflection
    - [Ext] excludeAccount #
       - modifiers: onlyOwner
    - [Ext] includeAccount #
       - modifiers: onlyOwner
    - [Pub] addWhitelisted #
       - modifiers: onlyOwner
    - [Pub] removeWhitelisted #
       - modifiers: onlyOwner
    - [Pub] send #
    - [Prv] _approve #
    - [Prv] _transfer #
    - [Prv] _transferStandard #
    - [Prv] _transferToExcluded #
    - [Prv] _transferFromExcluded #
    - [Prv] _transferBothExcluded #
    - [Prv] _whitelistTransfer #
    - [Prv] _reflectFee #
    - [Prv] _getValues
    - [Prv] _getTValues
    - [Prv] _getBurnValues
    - [Prv] _getRValues
    - [Prv] _getRate
    - [Prv] _getCurrentSupply
    - [Int] _burn #