ETH Price: $2,658.24 (+1.97%)
Gas: 1 Gwei

Contract

0x2ed7b09BC4b03B519BBf63fC3DD607a891bf3538
 

Overview

ETH Balance

0.000000003570836365 ETH

Eth Value

Less Than $0.01 (@ $2,658.24/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep155442782022-09-16 6:01:23694 days ago1663308083IN
0x2ed7b09B...891bf3538
0 ETH0.0016971930
Transfer155442562022-09-16 5:56:59694 days ago1663307819IN
0x2ed7b09B...891bf3538
0.06496236 ETH0.000104254.95227786
Sweep155215892022-09-12 15:24:28698 days ago1662996268IN
0x2ed7b09B...891bf3538
0 ETH0.0033655659.49072141
Transfer155215622022-09-12 15:19:37698 days ago1662995977IN
0x2ed7b09B...891bf3538
0.09896625 ETH0.0011133152.88667664
Sweep154946482022-09-08 5:02:38703 days ago1662613358IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer154946322022-09-08 4:58:59703 days ago1662613139IN
0x2ed7b09B...891bf3538
0.0998332 ETH0.0003315515.75003019
Sweep154645682022-09-03 9:28:41707 days ago1662197321IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer154645552022-09-03 9:26:42707 days ago1662197202IN
0x2ed7b09B...891bf3538
0.09993781 ETH0.000122275.8084422
Sweep154356032022-08-29 18:10:26712 days ago1661796626IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer154355862022-08-29 18:06:17712 days ago1661796377IN
0x2ed7b09B...891bf3538
0.09982587 ETH0.0003388916.09893356
Sweep154077852022-08-25 7:24:23716 days ago1661412263IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer154077732022-08-25 7:21:21716 days ago1661412081IN
0x2ed7b09B...891bf3538
0.09994402 ETH0.000138966.60152792
Sweep153813662022-08-21 2:35:12721 days ago1661049312IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer153813482022-08-21 2:30:30721 days ago1661049030IN
0x2ed7b09B...891bf3538
0.10008286 ETH0.000104094.9448898
Sweep153539942022-08-16 18:42:42725 days ago1660675362IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer153539762022-08-16 18:39:03725 days ago1660675143IN
0x2ed7b09B...891bf3538
0.0999289 ETH0.0002319211.0174751
Sweep153269122022-08-12 12:12:46729 days ago1660306366IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer153268912022-08-12 12:07:56729 days ago1660306076IN
0x2ed7b09B...891bf3538
0.09983357 ETH0.000193679.20028232
Sweep153001852022-08-08 7:21:58733 days ago1659943318IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer153001672022-08-08 7:16:58733 days ago1659943018IN
0x2ed7b09B...891bf3538
0.09985081 ETH0.0002171110.31360474
Sweep152704692022-08-03 16:17:46738 days ago1659543466IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer152704562022-08-03 16:15:29738 days ago1659543329IN
0x2ed7b09B...891bf3538
0.0997942 ETH0.0003433316.30964392
Sweep152426552022-07-30 8:17:00742 days ago1659169020IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
Transfer152426422022-07-30 8:13:46742 days ago1659168826IN
0x2ed7b09B...891bf3538
0.09988511 ETH0.000155157.3702107
Sweep152039122022-07-24 7:13:01748 days ago1658646781IN
0x2ed7b09B...891bf3538
0 ETH0.0016975530
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
155442782022-09-16 6:01:23694 days ago1663308083
0x2ed7b09B...891bf3538
0.06496236 ETH
155215892022-09-12 15:24:28698 days ago1662996268
0x2ed7b09B...891bf3538
0.09896625 ETH
154946482022-09-08 5:02:38703 days ago1662613358
0x2ed7b09B...891bf3538
0.09983321 ETH
154645682022-09-03 9:28:41707 days ago1662197321
0x2ed7b09B...891bf3538
0.09993781 ETH
154356032022-08-29 18:10:26712 days ago1661796626
0x2ed7b09B...891bf3538
0.09982588 ETH
154077852022-08-25 7:24:23716 days ago1661412263
0x2ed7b09B...891bf3538
0.09994403 ETH
153813662022-08-21 2:35:12721 days ago1661049312
0x2ed7b09B...891bf3538
0.10008286 ETH
153539942022-08-16 18:42:42725 days ago1660675362
0x2ed7b09B...891bf3538
0.0999289 ETH
153269122022-08-12 12:12:46729 days ago1660306366
0x2ed7b09B...891bf3538
0.09983358 ETH
153001852022-08-08 7:21:58733 days ago1659943318
0x2ed7b09B...891bf3538
0.09985081 ETH
152704692022-08-03 16:17:46738 days ago1659543466
0x2ed7b09B...891bf3538
0.09979421 ETH
152426552022-07-30 8:17:00742 days ago1659169020
0x2ed7b09B...891bf3538
0.09988511 ETH
152039122022-07-24 7:13:01748 days ago1658646781
0x2ed7b09B...891bf3538
0.09997985 ETH
151670012022-07-18 13:48:05754 days ago1658152085
0x2ed7b09B...891bf3538
0.09958645 ETH
149653792022-06-15 3:32:20788 days ago1655263940
0x2ed7b09B...891bf3538
0.0992957 ETH
149343472022-06-09 19:41:43793 days ago1654803703
0x2ed7b09B...891bf3538
0.09866864 ETH
148918732022-06-02 15:49:18800 days ago1654184958
0x2ed7b09B...891bf3538
0.09880164 ETH
148539002022-05-27 11:28:48806 days ago1653650928
0x2ed7b09B...891bf3538
0.09959279 ETH
148162972022-05-21 8:45:05812 days ago1653122705
0x2ed7b09B...891bf3538
0.09978581 ETH
147795062022-05-15 10:44:35818 days ago1652611475
0x2ed7b09B...891bf3538
0.09976082 ETH
147535482022-05-11 7:30:34822 days ago1652254234
0x2ed7b09B...891bf3538
0.09823458 ETH
147036702022-05-03 8:44:25830 days ago1651567465
0x2ed7b09B...891bf3538
0.09919407 ETH
146545082022-04-25 15:12:03838 days ago1650899523
0x2ed7b09B...891bf3538
0.09863512 ETH
145982262022-04-16 19:20:27847 days ago1650136827
0x2ed7b09B...891bf3538
0.09954397 ETH
145636612022-04-11 9:43:08852 days ago1649670188
0x2ed7b09B...891bf3538
0.09892627 ETH
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xd1DD82d1...18D918504
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
UserWallet

Compiler Version
v0.4.11+commit.68ef5810

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2017-08-15
*/

pragma solidity ^0.4.10;

// Copyright 2017 Bittrex

contract AbstractSweeper {
    function sweep(address token, uint amount) returns (bool);

    function () { throw; }

    Controller controller;

    function AbstractSweeper(address _controller) {
        controller = Controller(_controller);
    }

    modifier canSweep() {
        if (msg.sender != controller.authorizedCaller() && msg.sender != controller.owner()) throw;
        if (controller.halted()) throw;
        _;
    }
}

contract Token {
    function balanceOf(address a) returns (uint) {
        (a);
        return 0;
    }

    function transfer(address a, uint val) returns (bool) {
        (a);
        (val);
        return false;
    }
}

contract DefaultSweeper is AbstractSweeper {
    function DefaultSweeper(address controller)
             AbstractSweeper(controller) {}

    function sweep(address _token, uint _amount)
    canSweep
    returns (bool) {
        bool success = false;
        address destination = controller.destination();

        if (_token != address(0)) {
            Token token = Token(_token);
            uint amount = _amount;
            if (amount > token.balanceOf(this)) {
                return false;
            }

            success = token.transfer(destination, amount);
        }
        else {
            uint amountInWei = _amount;
            if (amountInWei > this.balance) {
                return false;
            }

            success = destination.send(amountInWei);
        }

        if (success) {
            controller.logSweep(this, destination, _token, _amount);
        }
        return success;
    }
}

contract UserWallet {
    AbstractSweeperList sweeperList;
    function UserWallet(address _sweeperlist) {
        sweeperList = AbstractSweeperList(_sweeperlist);
    }

    function () public payable { }

    function tokenFallback(address _from, uint _value, bytes _data) {
        (_from);
        (_value);
        (_data);
     }

    function sweep(address _token, uint _amount)
    returns (bool) {
        (_amount);
        return sweeperList.sweeperOf(_token).delegatecall(msg.data);
    }
}

contract AbstractSweeperList {
    function sweeperOf(address _token) returns (address);
}

contract Controller is AbstractSweeperList {
    address public owner;
    address public authorizedCaller;

    address public destination;

    bool public halted;

    event LogNewWallet(address receiver);
    event LogSweep(address indexed from, address indexed to, address indexed token, uint amount);
    
    modifier onlyOwner() {
        if (msg.sender != owner) throw; 
        _;
    }

    modifier onlyAuthorizedCaller() {
        if (msg.sender != authorizedCaller) throw; 
        _;
    }

    modifier onlyAdmins() {
        if (msg.sender != authorizedCaller && msg.sender != owner) throw; 
        _;
    }

    function Controller() 
    {
        owner = msg.sender;
        destination = msg.sender;
        authorizedCaller = msg.sender;
    }

    function changeAuthorizedCaller(address _newCaller) onlyOwner {
        authorizedCaller = _newCaller;
    }

    function changeDestination(address _dest) onlyOwner {
        destination = _dest;
    }

    function changeOwner(address _owner) onlyOwner {
        owner = _owner;
    }

    function makeWallet() onlyAdmins returns (address wallet)  {
        wallet = address(new UserWallet(this));
        LogNewWallet(wallet);
    }

    function halt() onlyAdmins {
        halted = true;
    }

    function start() onlyOwner {
        halted = false;
    }

    address public defaultSweeper = address(new DefaultSweeper(this));
    mapping (address => address) sweepers;

    function addSweeper(address _token, address _sweeper) onlyOwner {
        sweepers[_token] = _sweeper;
    }

    function sweeperOf(address _token) returns (address) {
        address sweeper = sweepers[_token];
        if (sweeper == 0) sweeper = defaultSweeper;
        return sweeper;
    }

    function logSweep(address from, address to, address token, uint amount) {
        LogSweep(from, to, token, amount);
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"_token","type":"address"},{"name":"_amount","type":"uint256"}],"name":"sweep","outputs":[{"name":"","type":"bool"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_data","type":"bytes"}],"name":"tokenFallback","outputs":[],"payable":false,"type":"function"},{"inputs":[{"name":"_sweeperlist","type":"address"}],"payable":false,"type":"constructor"},{"payable":true,"type":"fallback"}]

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.