Smart contracts are blocks of code that define behaviors of tokens, NFTs or other commodities tracked on a block chain.
Every contract can be different, but there are some general functions that are common across contracts.
Good Video here:
Audit: A third-party provider, reviews the smart-contract in question and provides positives/negatives in the form of an audit document.
Blacklist allows the contract owner to stop individual wallet addresses from transaction.
ExcludeFromFee allows the contract owner to exclude any wallet address from paying “taxes” on transactions. This is commonly used to allow exchanges to deposit/withdraw without loss of liquidity to the project. This function may also be misused by Developers, to grant privileges to personal addresses.
GetUnlock allows an owner address to reclaim ownership of a renounced contract after a set period of time. One of the most commonly used unlock times is seven days.
Miner – This may signify a mint function in many contracts. This should be considered a major red flag for investors in certain circumstances. To verify a mint function is in fact callable by the contract owner, verify the callable functions under the ‘write’ section of the contract tab on BSCscan.
Mint Function: A mint function is a (typically) nefarious piece of code, which allows developers to create new tokens for free, after launch. When these tokens are created, the developer can sell-off for the entire liquidity pool, taking money from investors.
Pause allows the contract owner to halt trading at will for all transactions.
Rebase – This function allows the Developer, or present contract owner, to change the circulating supply of the token in question. This change includes for tokens already held in private wallets. While holding a rebase token, you will see the number of tokens in your wallet fluctuate each time the rebase function is utilized.
SetLiquidityFeePercent allows the contract owner to change the liquidity fee on the contract at will. For information purposes only, Developers have abused this privilege at times to redirect 100% of all buys and sells the investor community transact, to the liquidity pool, prior to removing liquidity.
SetMaxWalletExempt – This function allows the Developer, or present contract owner, to exclude individual wallets from the maximum wallet limitation.
SetMaxTxPercent is typically referred to as an “anti-whale” mechanism, which is set at a standard amount to prevent “dumps” of the token. For information purposes only, a Developer may utilize this function to halt trading, by setting the maximum transaction to 0%, if he or she wishes.
SetTaxFeePercent allows the contract owner to change the tax fees on the contract at will. In certain circumstances, Developers may change the fees to be lower, or higher, in accordance with the white paper and/or wishes of the investor community. For information purposes only, Developers have abused this privilege at times to recoup 100% of all buys and sells the investor community transact.
SwapAndLiquify awards the contract owner with LP tokens, which can be exchanged directly against the liquidity pool balance by the owner. By exchanging the LP tokens, the contract owner is returned both the project’s tokens and paired BNB, directly from the liquidity pool, without purchasing them.