ETH Price: $2,145.89 (-1.99%)

Contract

0xbF7DDdCbA3FB7A09C7f5d4fdbb4F9552Cc85b4ae
 

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
Sweep71606312019-02-01 22:08:432603 days ago1549058923IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer71606132019-02-01 22:04:122603 days ago1549058652IN
0xbF7DDdCb...2Cc85b4ae
2.34620618 ETH0.00012636
Sweep71375202019-01-28 4:46:242608 days ago1548650784IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer71375022019-01-28 4:40:032608 days ago1548650403IN
0xbF7DDdCb...2Cc85b4ae
2.08420175 ETH0.00016848
Sweep70637212019-01-14 8:01:252622 days ago1547452885IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer70637042019-01-14 7:56:002622 days ago1547452560IN
0xbF7DDdCb...2Cc85b4ae
0.39137278 ETH0.0002526112
Sweep70625482019-01-14 3:05:192622 days ago1547435119IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer70625322019-01-14 3:01:502622 days ago1547434910IN
0xbF7DDdCb...2Cc85b4ae
4.78939491 ETH0.000189459
Sweep70473872019-01-11 9:57:472624 days ago1547200667IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer70473732019-01-11 9:54:442624 days ago1547200484IN
0xbF7DDdCb...2Cc85b4ae
1.89941039 ETH0.0002105110
Sweep70315452019-01-08 13:35:012627 days ago1546954501IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0024996550
Transfer70315322019-01-08 13:31:482627 days ago1546954308IN
0xbF7DDdCb...2Cc85b4ae
0.0693825 ETH0.0002105110
Sweep69121892018-12-19 1:19:202648 days ago1545182360IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer69121732018-12-19 1:16:332648 days ago1545182193IN
0xbF7DDdCb...2Cc85b4ae
2.42418246 ETH0.0002105110
Sweep68991322018-12-16 20:06:372650 days ago1544990797IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer68991182018-12-16 20:03:202650 days ago1544990600IN
0xbF7DDdCb...2Cc85b4ae
2.90849863 ETH0.000063153
Sweep68378042018-12-06 17:17:392660 days ago1544116659IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025060550
Transfer68377872018-12-06 17:13:422660 days ago1544116422IN
0xbF7DDdCb...2Cc85b4ae
26.71835708 ETH0.0002105110
Sweep67962002018-11-29 20:06:472667 days ago1543522007IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer67961832018-11-29 20:03:422667 days ago1543521822IN
0xbF7DDdCb...2Cc85b4ae
0.86650652 ETH0.0002315611
Sweep67906042018-11-28 22:05:052668 days ago1543442705IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer67905892018-11-28 22:00:592668 days ago1543442459IN
0xbF7DDdCb...2Cc85b4ae
12.77297075 ETH0.0002105110
Sweep67725142018-11-25 22:11:062671 days ago1543183866IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
Transfer67724942018-11-25 22:06:222671 days ago1543183582IN
0xbF7DDdCb...2Cc85b4ae
2.20871501 ETH0.00016848
Sweep67678052018-11-25 3:42:042672 days ago1543117324IN
0xbF7DDdCb...2Cc85b4ae
0 ETH0.0025028550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-71606312019-02-01 22:08:432603 days ago1549058923
0xbF7DDdCb...2Cc85b4ae
2.34620618 ETH
-71375202019-01-28 4:46:242608 days ago1548650784
0xbF7DDdCb...2Cc85b4ae
2.08420175 ETH
-70637212019-01-14 8:01:252622 days ago1547452885
0xbF7DDdCb...2Cc85b4ae
0.39137278 ETH
-70625482019-01-14 3:05:192622 days ago1547435119
0xbF7DDdCb...2Cc85b4ae
4.78939491 ETH
-70473872019-01-11 9:57:472624 days ago1547200667
0xbF7DDdCb...2Cc85b4ae
1.89941039 ETH
-70315452019-01-08 13:35:012627 days ago1546954501
0xbF7DDdCb...2Cc85b4ae
0.0693825 ETH
-69121892018-12-19 1:19:202648 days ago1545182360
0xbF7DDdCb...2Cc85b4ae
2.42418246 ETH
-68991322018-12-16 20:06:372650 days ago1544990797
0xbF7DDdCb...2Cc85b4ae
2.90849863 ETH
-68378042018-12-06 17:17:392660 days ago1544116659
0xbF7DDdCb...2Cc85b4ae
26.71835708 ETH
Transfer67962002018-11-29 20:06:472667 days ago1543522007
0xbF7DDdCb...2Cc85b4ae
0.86650652 ETH
Transfer67906042018-11-28 22:05:052668 days ago1543442705
0xbF7DDdCb...2Cc85b4ae
12.77297075 ETH
Transfer67725142018-11-25 22:11:062671 days ago1543183866
0xbF7DDdCb...2Cc85b4ae
2.20871501 ETH
Transfer67678052018-11-25 3:42:042672 days ago1543117324
0xbF7DDdCb...2Cc85b4ae
0.61378659 ETH
Transfer67231742018-11-17 20:02:342679 days ago1542484954
0xbF7DDdCb...2Cc85b4ae
0.23780523 ETH
Transfer67088492018-11-15 11:51:532681 days ago1542282713
0xbF7DDdCb...2Cc85b4ae
0.72317038 ETH
Transfer66867882018-11-11 21:02:252685 days ago1541970145
0xbF7DDdCb...2Cc85b4ae
0.72053031 ETH
Transfer66504612018-11-05 22:16:062691 days ago1541456166
0xbF7DDdCb...2Cc85b4ae
1.69368497 ETH
Transfer66300632018-11-02 14:00:182694 days ago1541167218
0xbF7DDdCb...2Cc85b4ae
17.54210104 ETH
Transfer63940002018-09-25 1:20:032733 days ago1537838403
0xbF7DDdCb...2Cc85b4ae
1.12027245 ETH
Transfer63935312018-09-24 23:32:082733 days ago1537831928
0xbF7DDdCb...2Cc85b4ae
0.46318761 ETH
Transfer63887712018-09-24 4:40:322734 days ago1537764032
0xbF7DDdCb...2Cc85b4ae
2.04540806 ETH
Transfer63752542018-09-21 23:12:482736 days ago1537571568
0xbF7DDdCb...2Cc85b4ae
7.34966592 ETH
Transfer63747162018-09-21 21:14:402736 days ago1537564480
0xbF7DDdCb...2Cc85b4ae
0.23873278 ETH
Transfer63416622018-09-16 10:13:502741 days ago1537092830
0xbF7DDdCb...2Cc85b4ae
0.41316623 ETH
Transfer52792712018-03-18 20:29:272923 days ago1521404967
0xbF7DDdCb...2Cc85b4ae
0.20354162 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.