ETH Price: $3,260.50 (-5.08%)

Contract

0xe2ED9E4756C89cDDd1542d4b9d94751cc0936E98
 

Overview

ETH Balance

0.000000001932106667 ETH

Eth Value

Less Than $0.01 (@ $3,260.50/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep115485552020-12-29 11:06:271481 days ago1609239987IN
0xe2ED9E47...cc0936E98
0 ETH0.0039630566.39731999
Sweep113265772020-11-25 8:52:281515 days ago1606294348IN
0xe2ED9E47...cc0936E98
0 ETH0.0034874861.2
Transfer113265592020-11-25 8:48:091515 days ago1606294089IN
0xe2ED9E47...cc0936E98
1.67877314 ETH0.0013337963.36
Sweep65065112018-10-13 9:19:072289 days ago1539422347IN
0xe2ED9E47...cc0936E98
0 ETH0.0025028550
Transfer65064902018-10-13 9:14:592289 days ago1539422099IN
0xe2ED9E47...cc0936E98
0.10755207 ETH0.000021051
Sweep64632682018-10-06 9:13:572296 days ago1538817237IN
0xe2ED9E47...cc0936E98
0 ETH0.0025028550
Transfer64632502018-10-06 9:10:052296 days ago1538817005IN
0xe2ED9E47...cc0936E98
0.12001424 ETH0.000021051
Sweep64305942018-10-01 1:20:472301 days ago1538356847IN
0xe2ED9E47...cc0936E98
0 ETH0.0025028550
Transfer64305672018-10-01 1:14:382301 days ago1538356478IN
0xe2ED9E47...cc0936E98
0.12001658 ETH0.000021051
Transfer64031162018-09-26 13:02:322306 days ago1537966952IN
0xe2ED9E47...cc0936E98
0.02233143 ETH0.000021051
Transfer63605952018-09-19 13:03:412313 days ago1537362221IN
0xe2ED9E47...cc0936E98
0.01104894 ETH0.000021051
Sweep63182542018-09-12 13:06:182320 days ago1536757578IN
0xe2ED9E47...cc0936E98
0 ETH0.0025028550
Transfer63182262018-09-12 13:01:062320 days ago1536757266IN
0xe2ED9E47...cc0936E98
0.12013131 ETH0.000021051
Sweep62907332018-09-07 22:35:352324 days ago1536359735IN
0xe2ED9E47...cc0936E98
0 ETH0.0025028550
Transfer62907172018-09-07 22:31:352324 days ago1536359495IN
0xe2ED9E47...cc0936E98
0.12010605 ETH0.000021051
Sweep62616462018-09-03 1:25:022329 days ago1535937902IN
0xe2ED9E47...cc0936E98
0 ETH0.0025028550
Transfer62616292018-09-03 1:19:212329 days ago1535937561IN
0xe2ED9E47...cc0936E98
0.12003086 ETH0.000021051
Sweep62335892018-08-29 7:57:272334 days ago1535529447IN
0xe2ED9E47...cc0936E98
0 ETH0.0025028550
Transfer62335712018-08-29 7:53:252334 days ago1535529205IN
0xe2ED9E47...cc0936E98
0.12003932 ETH0.000021051
Sweep62045812018-08-24 10:37:122339 days ago1535107032IN
0xe2ED9E47...cc0936E98
0 ETH0.0025028550
Transfer62045492018-08-24 10:29:512339 days ago1535106591IN
0xe2ED9E47...cc0936E98
0.12013625 ETH0.000021051
Sweep61766632018-08-19 17:21:592344 days ago1534699319IN
0xe2ED9E47...cc0936E98
0 ETH0.0050057100
Transfer61766422018-08-19 17:16:562344 days ago1534699016IN
0xe2ED9E47...cc0936E98
0.1200307 ETH0.000021051
Sweep61491352018-08-15 1:28:322348 days ago1534296512IN
0xe2ED9E47...cc0936E98
0 ETH0.0050057100
Transfer61491192018-08-15 1:24:562348 days ago1534296296IN
0xe2ED9E47...cc0936E98
0.12011978 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
113265772020-11-25 8:52:281515 days ago1606294348
0xe2ED9E47...cc0936E98
1.67877314 ETH
65065112018-10-13 9:19:072289 days ago1539422347
0xe2ED9E47...cc0936E98
0.10755208 ETH
64632682018-10-06 9:13:572296 days ago1538817237
0xe2ED9E47...cc0936E98
0.12001425 ETH
64305942018-10-01 1:20:472301 days ago1538356847
0xe2ED9E47...cc0936E98
0.15339697 ETH
63182542018-09-12 13:06:182320 days ago1536757578
0xe2ED9E47...cc0936E98
0.12013131 ETH
62907332018-09-07 22:35:352324 days ago1536359735
0xe2ED9E47...cc0936E98
0.12010606 ETH
62616462018-09-03 1:25:022329 days ago1535937902
0xe2ED9E47...cc0936E98
0.12003086 ETH
62335892018-08-29 7:57:272334 days ago1535529447
0xe2ED9E47...cc0936E98
0.12003933 ETH
62045812018-08-24 10:37:122339 days ago1535107032
0xe2ED9E47...cc0936E98
0.12013625 ETH
61766632018-08-19 17:21:592344 days ago1534699319
0xe2ED9E47...cc0936E98
0.12003071 ETH
61491352018-08-15 1:28:322348 days ago1534296512
0xe2ED9E47...cc0936E98
0.12011978 ETH
61201252018-08-10 3:41:382353 days ago1533872498
0xe2ED9E47...cc0936E98
0.12001524 ETH
60934122018-08-05 15:25:562358 days ago1533482756
0xe2ED9E47...cc0936E98
0.12005273 ETH
60648382018-07-31 19:25:022362 days ago1533065102
0xe2ED9E47...cc0936E98
0.12001167 ETH
60289712018-07-25 18:36:052369 days ago1532543765
0xe2ED9E47...cc0936E98
0.06964611 ETH
59878332018-07-18 18:36:082376 days ago1531938968
0xe2ED9E47...cc0936E98
0.09150472 ETH
59461732018-07-11 18:17:482383 days ago1531333068
0xe2ED9E47...cc0936E98
0.08988725 ETH
59054872018-07-04 18:12:032390 days ago1530727923
0xe2ED9E47...cc0936E98
0.0949434 ETH
58646092018-06-27 18:10:272397 days ago1530123027
0xe2ED9E47...cc0936E98
0.10252215 ETH
57829032018-06-13 17:58:072411 days ago1528912687
0xe2ED9E47...cc0936E98
0.09332558 ETH
57433142018-06-06 17:51:562418 days ago1528307516
0xe2ED9E47...cc0936E98
0.1200358 ETH
57091032018-05-31 16:03:572424 days ago1527782637
0xe2ED9E47...cc0936E98
0.16413141 ETH
56301282018-05-17 16:14:112438 days ago1526573651
0xe2ED9E47...cc0936E98
0.11615548 ETH
55901432018-05-10 16:14:162445 days ago1525968856
0xe2ED9E47...cc0936E98
0.12006018 ETH
55630312018-05-05 23:09:072449 days ago1525561747
0xe2ED9E47...cc0936E98
0.12012869 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.