ETH Price: $2,504.68 (+1.25%)
Gas: 6.24 Gwei
 

Overview

ETH Balance

0.000000002173412768 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep100495022020-05-12 5:27:281629 days ago1589261248IN
0xc164C68a...FFd810a87
0 ETH0.0012821622.5
Transfer100494672020-05-12 5:22:041629 days ago1589260924IN
0xc164C68a...FFd810a87
6.01055792 ETH0.0004420721
Sweep98954262020-04-18 8:34:261653 days ago1587198866IN
0xc164C68a...FFd810a87
0 ETH0.0012536722
Transfer98954052020-04-18 8:29:521653 days ago1587198592IN
0xc164C68a...FFd810a87
9.74970046 ETH0.00016848
Sweep94687092020-02-12 14:35:291719 days ago1581518129IN
0xc164C68a...FFd810a87
0 ETH0.0012536722
Transfer94686892020-02-12 14:30:151719 days ago1581517815IN
0xc164C68a...FFd810a87
10.01329563 ETH0.0003789118
Transfer80631362019-07-01 3:06:431945 days ago1561950403IN
0xc164C68a...FFd810a87
0.02732306 ETH0.000021051
Sweep80182372019-06-24 3:07:091952 days ago1561345629IN
0xc164C68a...FFd810a87
0 ETH0.0014997930
Transfer80182232019-06-24 3:03:491952 days ago1561345429IN
0xc164C68a...FFd810a87
0.05010435 ETH0.000021051
Sweep80030632019-06-21 18:27:071955 days ago1561141627IN
0xc164C68a...FFd810a87
0 ETH0.0014997930
Transfer80030472019-06-21 18:23:401955 days ago1561141420IN
0xc164C68a...FFd810a87
0.05015779 ETH0.000021051
Sweep79907092019-06-19 19:52:281957 days ago1560973948IN
0xc164C68a...FFd810a87
0 ETH0.0024996550
Transfer79906902019-06-19 19:49:201957 days ago1560973760IN
0xc164C68a...FFd810a87
0.05006918 ETH0.000021051
Sweep79747502019-06-17 8:02:341959 days ago1560758554IN
0xc164C68a...FFd810a87
0 ETH0.0024996550
Transfer79747362019-06-17 7:58:321959 days ago1560758312IN
0xc164C68a...FFd810a87
0.05003867 ETH0.000021051
Sweep79620592019-06-15 8:24:051961 days ago1560587045IN
0xc164C68a...FFd810a87
0 ETH0.0024996550
Transfer79620442019-06-15 8:19:161961 days ago1560586756IN
0xc164C68a...FFd810a87
0.05000159 ETH0.000021051
Sweep79495592019-06-13 9:29:481963 days ago1560418188IN
0xc164C68a...FFd810a87
0 ETH0.0024996550
Transfer79495372019-06-13 9:24:261963 days ago1560417866IN
0xc164C68a...FFd810a87
0.05000207 ETH0.000021051
Sweep79373882019-06-11 11:55:571965 days ago1560254157IN
0xc164C68a...FFd810a87
0 ETH0.0024996550
Transfer79373732019-06-11 11:51:181965 days ago1560253878IN
0xc164C68a...FFd810a87
0.05001533 ETH0.000021051
Sweep79248342019-06-09 12:46:571967 days ago1560084417IN
0xc164C68a...FFd810a87
0 ETH0.0024996550
Transfer79248132019-06-09 12:42:331967 days ago1560084153IN
0xc164C68a...FFd810a87
0.05012635 ETH0.000021051
Sweep79122232019-06-07 13:14:111969 days ago1559913251IN
0xc164C68a...FFd810a87
0 ETH0.0024996550
Transfer79122102019-06-07 13:10:291969 days ago1559913029IN
0xc164C68a...FFd810a87
0.05003251 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
100495022020-05-12 5:27:281629 days ago1589261248
0xc164C68a...FFd810a87
6.01055793 ETH
98954262020-04-18 8:34:261653 days ago1587198866
0xc164C68a...FFd810a87
9.74970046 ETH
94687092020-02-12 14:35:291719 days ago1581518129
0xc164C68a...FFd810a87
10.0406187 ETH
80182372019-06-24 3:07:091952 days ago1561345629
0xc164C68a...FFd810a87
0.05010435 ETH
80030632019-06-21 18:27:071955 days ago1561141627
0xc164C68a...FFd810a87
0.0501578 ETH
79907092019-06-19 19:52:281957 days ago1560973948
0xc164C68a...FFd810a87
0.05006918 ETH
79747502019-06-17 8:02:341959 days ago1560758554
0xc164C68a...FFd810a87
0.05003867 ETH
79620592019-06-15 8:24:051961 days ago1560587045
0xc164C68a...FFd810a87
0.0500016 ETH
79495592019-06-13 9:29:481963 days ago1560418188
0xc164C68a...FFd810a87
0.05000207 ETH
79373882019-06-11 11:55:571965 days ago1560254157
0xc164C68a...FFd810a87
0.05001534 ETH
79248342019-06-09 12:46:571967 days ago1560084417
0xc164C68a...FFd810a87
0.05012636 ETH
79122232019-06-07 13:14:111969 days ago1559913251
0xc164C68a...FFd810a87
0.05003251 ETH
78993042019-06-05 12:45:421971 days ago1559738742
0xc164C68a...FFd810a87
0.05005938 ETH
78864702019-06-03 12:35:501973 days ago1559565350
0xc164C68a...FFd810a87
0.05007127 ETH
78618082019-05-30 15:41:281977 days ago1559230888
0xc164C68a...FFd810a87
0.05000872 ETH
78483222019-05-28 13:37:161979 days ago1559050636
0xc164C68a...FFd810a87
0.05000304 ETH
78354792019-05-26 13:20:541981 days ago1558876854
0xc164C68a...FFd810a87
0.05004033 ETH
78230572019-05-24 15:04:461983 days ago1558710286
0xc164C68a...FFd810a87
0.05014356 ETH
78016152019-05-21 6:21:201986 days ago1558419680
0xc164C68a...FFd810a87
0.05002942 ETH
77877502019-05-19 2:03:391988 days ago1558231419
0xc164C68a...FFd810a87
0.05009016 ETH
77745072019-05-17 0:26:221990 days ago1558052782
0xc164C68a...FFd810a87
0.05000273 ETH
77615912019-05-15 0:02:451993 days ago1557878565
0xc164C68a...FFd810a87
0.05008428 ETH
77489232019-05-13 0:37:091994 days ago1557707829
0xc164C68a...FFd810a87
0.05002119 ETH
77363902019-05-11 1:55:271996 days ago1557539727
0xc164C68a...FFd810a87
0.05008636 ETH
77233702019-05-09 0:59:341998 days ago1557363574
0xc164C68a...FFd810a87
0.05008906 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.