ETH Price: $2,362.58 (+8.15%)

Contract

0xbF0C65E119Cb48Ec74d1F79853dfD3A9e3066Dfd
 

Overview

ETH Balance

0.000000004847524115 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep89458932019-11-16 18:22:252312 days ago1573928545IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer89458762019-11-16 18:16:252312 days ago1573928185IN
0xbF0C65E1...9e3066Dfd
0.09214924 ETH0.000021051
Sweep89038362019-11-09 18:19:482319 days ago1573323588IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer89038092019-11-09 18:14:302319 days ago1573323270IN
0xbF0C65E1...9e3066Dfd
0.05814448 ETH0.000021051
Transfer88603942019-11-02 18:13:292326 days ago1572718409IN
0xbF0C65E1...9e3066Dfd
0.04031562 ETH0.000021051
Sweep88168602019-10-26 18:13:292333 days ago1572113609IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0010998422
Transfer88168462019-10-26 18:08:482333 days ago1572113328IN
0xbF0C65E1...9e3066Dfd
0.06028926 ETH0.000021051
Sweep87727322019-10-19 18:10:272340 days ago1571508627IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer87727112019-10-19 18:06:232340 days ago1571508383IN
0xbF0C65E1...9e3066Dfd
0.07770785 ETH0.000021051
Sweep87282442019-10-12 18:09:062347 days ago1570903746IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer87282192019-10-12 18:05:022347 days ago1570903502IN
0xbF0C65E1...9e3066Dfd
0.12763208 ETH0.000021051
Sweep86835942019-10-05 18:05:592354 days ago1570298759IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer86835772019-10-05 18:02:542354 days ago1570298574IN
0xbF0C65E1...9e3066Dfd
0.15337743 ETH0.000021051
Sweep86387882019-09-28 18:02:432361 days ago1569693763IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer86387712019-09-28 17:57:482361 days ago1569693468IN
0xbF0C65E1...9e3066Dfd
0.14695896 ETH0.000021051
Sweep85941152019-09-21 18:02:242368 days ago1569088944IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer85940922019-09-21 17:58:222368 days ago1569088702IN
0xbF0C65E1...9e3066Dfd
0.13617306 ETH0.000021051
Sweep85491992019-09-14 18:01:542375 days ago1568484114IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer85491792019-09-14 17:57:522375 days ago1568483872IN
0xbF0C65E1...9e3066Dfd
0.16883641 ETH0.000021051
Sweep85043142019-09-07 17:59:132382 days ago1567879153IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer85042892019-09-07 17:53:182382 days ago1567878798IN
0xbF0C65E1...9e3066Dfd
0.16175541 ETH0.000021051
Sweep84594402019-08-31 17:56:042389 days ago1567274164IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer84594252019-08-31 17:51:392389 days ago1567273899IN
0xbF0C65E1...9e3066Dfd
0.16055138 ETH0.000021051
Sweep84143962019-08-24 17:50:392396 days ago1566669039IN
0xbF0C65E1...9e3066Dfd
0 ETH0.0011012522
Transfer84143812019-08-24 17:46:512396 days ago1566668811IN
0xbF0C65E1...9e3066Dfd
0.17166182 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-89458932019-11-16 18:22:252312 days ago1573928545
0xbF0C65E1...9e3066Dfd
0.09214925 ETH
-89038362019-11-09 18:19:482319 days ago1573323588
0xbF0C65E1...9e3066Dfd
0.09846011 ETH
-88168602019-10-26 18:13:292333 days ago1572113609
0xbF0C65E1...9e3066Dfd
0.06028927 ETH
-87727322019-10-19 18:10:272340 days ago1571508627
0xbF0C65E1...9e3066Dfd
0.07770785 ETH
-87282442019-10-12 18:09:062347 days ago1570903746
0xbF0C65E1...9e3066Dfd
0.12763209 ETH
-86835942019-10-05 18:05:592354 days ago1570298759
0xbF0C65E1...9e3066Dfd
0.15337743 ETH
-86387882019-09-28 18:02:432361 days ago1569693763
0xbF0C65E1...9e3066Dfd
0.14695896 ETH
-85941152019-09-21 18:02:242368 days ago1569088944
0xbF0C65E1...9e3066Dfd
0.13617307 ETH
-85491992019-09-14 18:01:542375 days ago1568484114
0xbF0C65E1...9e3066Dfd
0.16883642 ETH
-85043142019-09-07 17:59:132382 days ago1567879153
0xbF0C65E1...9e3066Dfd
0.16175541 ETH
-84594402019-08-31 17:56:042389 days ago1567274164
0xbF0C65E1...9e3066Dfd
0.16055139 ETH
-84143962019-08-24 17:50:392396 days ago1566669039
0xbF0C65E1...9e3066Dfd
0.17166182 ETH
-83694372019-08-17 17:49:112403 days ago1566064151
0xbF0C65E1...9e3066Dfd
0.15685554 ETH
-83242772019-08-10 17:45:312410 days ago1565459131
0xbF0C65E1...9e3066Dfd
0.15866995 ETH
-82791062019-08-03 17:42:422417 days ago1564854162
0xbF0C65E1...9e3066Dfd
0.15318304 ETH
-82340642019-07-27 17:39:042424 days ago1564249144
0xbF0C65E1...9e3066Dfd
0.17057957 ETH
-81889682019-07-20 17:37:452431 days ago1563644265
0xbF0C65E1...9e3066Dfd
0.17219795 ETH
-81440492019-07-13 17:32:322438 days ago1563039152
0xbF0C65E1...9e3066Dfd
0.17980889 ETH
-80990742019-07-06 17:34:072445 days ago1562434447
0xbF0C65E1...9e3066Dfd
0.18329357 ETH
-80541092019-06-29 17:29:382452 days ago1561829378
0xbF0C65E1...9e3066Dfd
0.19252317 ETH
-80092692019-06-22 17:32:102459 days ago1561224730
0xbF0C65E1...9e3066Dfd
0.19060817 ETH
-79644762019-06-15 17:27:302466 days ago1560619650
0xbF0C65E1...9e3066Dfd
0.13295948 ETH
-79197062019-06-08 17:27:572473 days ago1560014877
0xbF0C65E1...9e3066Dfd
0.11682773 ETH
-78749992019-06-01 17:24:432480 days ago1559409883
0xbF0C65E1...9e3066Dfd
0.17420111 ETH
-74552192019-03-28 5:44:412545 days ago1553751881
0xbF0C65E1...9e3066Dfd
0.14242398 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.