ETH Price: $2,065.35 (-2.57%)

Contract

0xE7ffcDEe15F5251e7845baA164571D321bca52DB
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep77573092019-05-14 8:04:162487 days ago1557821056IN
0xE7ffcDEe...21bca52DB
0 ETH0.0059246550
Sweep77573002019-05-14 8:02:032487 days ago1557820923IN
0xE7ffcDEe...21bca52DB
0 ETH0.002332750
Sweep67080162018-11-15 8:34:092667 days ago1542270849IN
0xE7ffcDEe...21bca52DB
0 ETH0.0025060550
Transfer67080092018-11-15 8:32:392667 days ago1542270759IN
0xE7ffcDEe...21bca52DB
9.54385472 ETH0.0010925451.9
Transfer67080072018-11-15 8:32:132667 days ago1542270733IN
0xE7ffcDEe...21bca52DB
26.23532483 ETH0.0002315611
Transfer67079972018-11-15 8:29:342667 days ago1542270574IN
0xE7ffcDEe...21bca52DB
26.6018378 ETH0.0010525550
Sweep55271742018-04-29 15:53:392867 days ago1525017219IN
0xE7ffcDEe...21bca52DB
0 ETH0.0024996550
Transfer55271572018-04-29 15:50:212867 days ago1525017021IN
0xE7ffcDEe...21bca52DB
17.60224 ETH0.00221035105
Sweep55012882018-04-25 4:30:062872 days ago1524630606IN
0xE7ffcDEe...21bca52DB
0 ETH0.0024996550
Transfer55012712018-04-25 4:25:402872 days ago1524630340IN
0xE7ffcDEe...21bca52DB
6.99 ETH0.0010925451.9
Sweep54896992018-04-23 4:03:592874 days ago1524456239IN
0xE7ffcDEe...21bca52DB
0 ETH0.0024996550
Transfer54896782018-04-23 3:58:522874 days ago1524455932IN
0xE7ffcDEe...21bca52DB
6.99 ETH0.00004212
Sweep54836172018-04-22 3:23:292875 days ago1524367409IN
0xE7ffcDEe...21bca52DB
0 ETH0.0025028550
Transfer54835932018-04-22 3:17:232875 days ago1524367043IN
0xE7ffcDEe...21bca52DB
4.995 ETH0.0010525550
Sweep54801502018-04-21 13:19:552875 days ago1524316795IN
0xE7ffcDEe...21bca52DB
0 ETH0.0024996550
Transfer54801302018-04-21 13:16:182875 days ago1524316578IN
0xE7ffcDEe...21bca52DB
9.99 ETH0.0010925451.9
Sweep54334232018-04-13 13:40:022883 days ago1523626802IN
0xE7ffcDEe...21bca52DB
0 ETH0.0025028550
Transfer54333872018-04-13 13:32:222883 days ago1523626342IN
0xE7ffcDEe...21bca52DB
7.995 ETH0.0010525550
Sweep54309512018-04-13 3:36:022884 days ago1523590562IN
0xE7ffcDEe...21bca52DB
0 ETH0.0024996550
Transfer54309242018-04-13 3:27:362884 days ago1523590056IN
0xE7ffcDEe...21bca52DB
6.99 ETH0.00004212
Sweep54276832018-04-12 14:11:502884 days ago1523542310IN
0xE7ffcDEe...21bca52DB
0 ETH0.0024996550
Transfer54276512018-04-12 14:01:282884 days ago1523541688IN
0xE7ffcDEe...21bca52DB
8.99 ETH0.00004212
Sweep54188562018-04-11 2:35:012886 days ago1523414101IN
0xE7ffcDEe...21bca52DB
0 ETH0.0025028550
Transfer54188222018-04-11 2:26:522886 days ago1523413612IN
0xE7ffcDEe...21bca52DB
14.995 ETH0.0010525550
Sweep53825342018-04-05 2:26:122892 days ago1522895172IN
0xE7ffcDEe...21bca52DB
0 ETH0.0024996550
View all transactions

Latest 19 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer67080162018-11-15 8:34:092667 days ago1542270849
0xE7ffcDEe...21bca52DB
62.38101735 ETH
Transfer55271742018-04-29 15:53:392867 days ago1525017219
0xE7ffcDEe...21bca52DB
17.60224 ETH
Transfer55012882018-04-25 4:30:062872 days ago1524630606
0xE7ffcDEe...21bca52DB
6.99 ETH
Transfer54896992018-04-23 4:03:592874 days ago1524456239
0xE7ffcDEe...21bca52DB
6.99 ETH
Transfer54836172018-04-22 3:23:292875 days ago1524367409
0xE7ffcDEe...21bca52DB
4.995 ETH
Transfer54801502018-04-21 13:19:552875 days ago1524316795
0xE7ffcDEe...21bca52DB
9.99 ETH
Transfer54334232018-04-13 13:40:022883 days ago1523626802
0xE7ffcDEe...21bca52DB
7.995 ETH
Transfer54309512018-04-13 3:36:022884 days ago1523590562
0xE7ffcDEe...21bca52DB
6.99 ETH
Transfer54276832018-04-12 14:11:502884 days ago1523542310
0xE7ffcDEe...21bca52DB
8.99 ETH
Transfer54188562018-04-11 2:35:012886 days ago1523414101
0xE7ffcDEe...21bca52DB
14.995 ETH
Transfer53825342018-04-05 2:26:122892 days ago1522895172
0xE7ffcDEe...21bca52DB
8 ETH
Transfer52165052018-03-08 4:25:542920 days ago1520483154
0xE7ffcDEe...21bca52DB
5 ETH
Transfer51591922018-02-26 11:01:042929 days ago1519642864
0xE7ffcDEe...21bca52DB
6.995 ETH
Transfer51544792018-02-25 15:22:252930 days ago1519572145
0xE7ffcDEe...21bca52DB
3.99 ETH
Transfer51336632018-02-22 2:35:092934 days ago1519266909
0xE7ffcDEe...21bca52DB
10 ETH
Transfer51286642018-02-21 6:04:182934 days ago1519193058
0xE7ffcDEe...21bca52DB
9.995 ETH
Transfer51276662018-02-21 1:57:102935 days ago1519178230
0xE7ffcDEe...21bca52DB
10 ETH
Transfer51242192018-02-20 11:41:522935 days ago1519126912
0xE7ffcDEe...21bca52DB
9.995 ETH
Transfer48328192018-01-01 0:31:542986 days ago1514766714  Contract Creation0 ETH
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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

Contract Source Code (Solidity)

/**
 *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

API
[{"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"}]

0x6060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029000000000000000000000000a3c1e324ca1ce40db73ed6026c4a177f099b5770

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.