ETH Price: $2,165.68 (+0.23%)

Contract

0x5F1e8E9C20EEa8D503b7e99EB34E9c04eBcc67e0
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep63882312018-09-24 2:31:252739 days ago1537756285IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0024996550
Transfer63882002018-09-24 2:23:222739 days ago1537755802IN
0x5F1e8E9C...4eBcc67e0
0.05002402 ETH0.00012636
Sweep63640212018-09-20 2:34:002743 days ago1537410840IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0024996550
Transfer63639842018-09-20 2:25:482743 days ago1537410348IN
0x5F1e8E9C...4eBcc67e0
0.0507154 ETH0.00012636
Sweep63384502018-09-15 21:26:312748 days ago1537046791IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0024996550
Transfer63384292018-09-15 21:19:542748 days ago1537046394IN
0x5F1e8E9C...4eBcc67e0
0.05031465 ETH0.000105255
Sweep63138462018-09-11 19:50:032752 days ago1536695403IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0024996550
Transfer63138302018-09-11 19:46:362752 days ago1536695196IN
0x5F1e8E9C...4eBcc67e0
0.05001644 ETH0.000105255
Sweep62864472018-09-07 5:20:082756 days ago1536297608IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0024996550
Transfer62864302018-09-07 5:16:222756 days ago1536297382IN
0x5F1e8E9C...4eBcc67e0
0.05000206 ETH0.000105255
Sweep62609992018-09-02 22:48:032761 days ago1535928483IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0024996550
Transfer62609822018-09-02 22:42:542761 days ago1535928174IN
0x5F1e8E9C...4eBcc67e0
0.05057585 ETH0.000105255
Sweep62362002018-08-29 18:32:502765 days ago1535567570IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0024996550
Transfer62361782018-08-29 18:29:332765 days ago1535567373IN
0x5F1e8E9C...4eBcc67e0
0.05015224 ETH0.000105255
Sweep62086122018-08-25 2:42:372769 days ago1535164957IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0024996550
Transfer62085862018-08-25 2:35:352769 days ago1535164535IN
0x5F1e8E9C...4eBcc67e0
0.05118477 ETH0.000105255
Sweep61826472018-08-20 17:42:012774 days ago1534786921IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0049993100
Transfer61804242018-08-20 8:39:352774 days ago1534754375IN
0x5F1e8E9C...4eBcc67e0
0.05011658 ETH0.00004212
Sweep61560972018-08-16 5:38:582778 days ago1534397938IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0049993100
Transfer61560782018-08-16 5:34:182778 days ago1534397658IN
0x5F1e8E9C...4eBcc67e0
0.05029228 ETH0.0002947114
Sweep61225652018-08-10 13:36:082784 days ago1533908168IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0049993100
Transfer61225462018-08-10 13:31:072784 days ago1533907867IN
0x5F1e8E9C...4eBcc67e0
0.05185275 ETH0.0002947114
Sweep60920442018-08-05 9:54:592789 days ago1533462899IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0049993100
Transfer60920202018-08-05 9:49:272789 days ago1533462567IN
0x5F1e8E9C...4eBcc67e0
0.050204 ETH0.00008424
Sweep60647682018-07-31 19:08:332794 days ago1533064113IN
0x5F1e8E9C...4eBcc67e0
0 ETH0.0049993100
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer63882312018-09-24 2:31:252739 days ago1537756285
0x5F1e8E9C...4eBcc67e0
0.05002402 ETH
Transfer63640212018-09-20 2:34:002743 days ago1537410840
0x5F1e8E9C...4eBcc67e0
0.0507154 ETH
Transfer63384502018-09-15 21:26:312748 days ago1537046791
0x5F1e8E9C...4eBcc67e0
0.05031465 ETH
Transfer63138462018-09-11 19:50:032752 days ago1536695403
0x5F1e8E9C...4eBcc67e0
0.05001644 ETH
Transfer62864472018-09-07 5:20:082756 days ago1536297608
0x5F1e8E9C...4eBcc67e0
0.05000206 ETH
Transfer62609992018-09-02 22:48:032761 days ago1535928483
0x5F1e8E9C...4eBcc67e0
0.05057585 ETH
Transfer62362002018-08-29 18:32:502765 days ago1535567570
0x5F1e8E9C...4eBcc67e0
0.05015224 ETH
Transfer62086122018-08-25 2:42:372769 days ago1535164957
0x5F1e8E9C...4eBcc67e0
0.05118477 ETH
Transfer61826472018-08-20 17:42:012774 days ago1534786921
0x5F1e8E9C...4eBcc67e0
0.05011658 ETH
Transfer61560972018-08-16 5:38:582778 days ago1534397938
0x5F1e8E9C...4eBcc67e0
0.05029228 ETH
Transfer61225652018-08-10 13:36:082784 days ago1533908168
0x5F1e8E9C...4eBcc67e0
0.05185275 ETH
Transfer60920442018-08-05 9:54:592789 days ago1533462899
0x5F1e8E9C...4eBcc67e0
0.050204 ETH
Transfer60647682018-07-31 19:08:332794 days ago1533064113
0x5F1e8E9C...4eBcc67e0
0.05438084 ETH
Transfer60346012018-07-26 17:31:382799 days ago1532626298
0x5F1e8E9C...4eBcc67e0
0.05051157 ETH
Transfer60092282018-07-22 10:01:042803 days ago1532253664
0x5F1e8E9C...4eBcc67e0
0.05012331 ETH
Transfer59709622018-07-15 21:16:412810 days ago1531689401
0x5F1e8E9C...4eBcc67e0
0.06191506 ETH
Transfer59269902018-07-08 11:06:282817 days ago1531047988
0x5F1e8E9C...4eBcc67e0
0.14483711 ETH
Transfer58587362018-06-26 17:46:432829 days ago1530035203
0x5F1e8E9C...4eBcc67e0
0.05006651 ETH
Transfer58335052018-06-22 9:35:532833 days ago1529660153
0x5F1e8E9C...4eBcc67e0
0.05004568 ETH
Transfer58099272018-06-18 8:41:242837 days ago1529311284
0x5F1e8E9C...4eBcc67e0
0.05066965 ETH
Transfer57832792018-06-13 19:27:402842 days ago1528918060
0x5F1e8E9C...4eBcc67e0
0.05034324 ETH
Transfer57597382018-06-09 15:44:522846 days ago1528559092
0x5F1e8E9C...4eBcc67e0
0.05011378 ETH
Transfer57371462018-06-05 15:29:462850 days ago1528212586
0x5F1e8E9C...4eBcc67e0
0.05031082 ETH
Transfer57135212018-06-01 11:01:072854 days ago1527850867
0x5F1e8E9C...4eBcc67e0
0.05017567 ETH
Transfer56893212018-05-28 3:53:172858 days ago1527479597
0x5F1e8E9C...4eBcc67e0
0.05042913 ETH
View All Internal Transactions
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.