ETH Price: $2,287.29 (-5.56%)

Contract

0xB8ceaFF8a9A4dab660B3AB78C23181459a00cF52
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep99392822020-04-25 3:42:271768 days ago1587786147IN
0xB8ceaFF8...59a00cF52
0 ETH0.0013128522
Sweep97967012020-04-03 3:54:291790 days ago1585886069IN
0xB8ceaFF8...59a00cF52
0 ETH0.0012536722
Transfer97966852020-04-03 3:51:071790 days ago1585885867IN
0xB8ceaFF8...59a00cF52
20 ETH0.000115785.50000023
Sweep92963252020-01-17 3:37:301867 days ago1579232250IN
0xB8ceaFF8...59a00cF52
0 ETH0.001253422
Transfer92963082020-01-17 3:33:331867 days ago1579232013IN
0xB8ceaFF8...59a00cF52
2 ETH0.000105255
Sweep89509952019-11-17 14:42:191928 days ago1574001739IN
0xB8ceaFF8...59a00cF52
0 ETH0.0010541322
Sweep85101902019-09-08 15:50:371998 days ago1567957837IN
0xB8ceaFF8...59a00cF52
0 ETH0.0011012522
Transfer85101662019-09-08 15:45:011998 days ago1567957501IN
0xB8ceaFF8...59a00cF52
18.8 ETH0.000314.2513367
Sweep83500142019-08-14 17:32:372023 days ago1565803957IN
0xB8ceaFF8...59a00cF52
0 ETH0.0010998422
Transfer83499982019-08-14 17:27:592023 days ago1565803679IN
0xB8ceaFF8...59a00cF52
8 ETH0.0006131129.125
Sweep81753552019-07-18 14:57:082050 days ago1563461828IN
0xB8ceaFF8...59a00cF52
0 ETH0.0010998422
Transfer81753362019-07-18 14:50:342050 days ago1563461434IN
0xB8ceaFF8...59a00cF52
10 ETH0.000147357
Sweep81607662019-07-16 8:11:282052 days ago1563264688IN
0xB8ceaFF8...59a00cF52
0 ETH0.0014997930
Transfer81607512019-07-16 8:08:042052 days ago1563264484IN
0xB8ceaFF8...59a00cF52
6 ETH0.0004841723
Sweep81569022019-07-15 17:24:212053 days ago1563211461IN
0xB8ceaFF8...59a00cF52
0 ETH0.0010998422
Transfer81568842019-07-15 17:19:502053 days ago1563211190IN
0xB8ceaFF8...59a00cF52
5 ETH0.0004631222
Sweep81566902019-07-15 16:36:322053 days ago1563208592IN
0xB8ceaFF8...59a00cF52
0 ETH0.0010998422
Transfer81566642019-07-15 16:32:092053 days ago1563208329IN
0xB8ceaFF8...59a00cF52
5 ETH0.0004631222
Sweep81525812019-07-15 0:57:572053 days ago1563152277IN
0xB8ceaFF8...59a00cF52
0 ETH0.0010998422
Transfer81525552019-07-15 0:53:052053 days ago1563151985IN
0xB8ceaFF8...59a00cF52
3 ETH0.0002526112
Sweep81278882019-07-11 4:41:542057 days ago1562820114IN
0xB8ceaFF8...59a00cF52
0 ETH0.0010998422
Transfer81278702019-07-11 4:38:012057 days ago1562819881IN
0xB8ceaFF8...59a00cF52
15 ETH0.000178238.46702233
Sweep80455672019-06-28 9:35:242070 days ago1561714524IN
0xB8ceaFF8...59a00cF52
0 ETH0.0011012522
Transfer80455512019-06-28 9:31:262070 days ago1561714286IN
0xB8ceaFF8...59a00cF52
6.4514 ETH0.0008420440
Sweep80427742019-06-27 23:02:372070 days ago1561676557IN
0xB8ceaFF8...59a00cF52
0 ETH0.0010998422
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
97967012020-04-03 3:54:291790 days ago1585886069
0xB8ceaFF8...59a00cF52
20 ETH
92963252020-01-17 3:37:301867 days ago1579232250
0xB8ceaFF8...59a00cF52
2 ETH
85101902019-09-08 15:50:371998 days ago1567957837
0xB8ceaFF8...59a00cF52
18.8 ETH
83500142019-08-14 17:32:372023 days ago1565803957
0xB8ceaFF8...59a00cF52
8 ETH
81753552019-07-18 14:57:082050 days ago1563461828
0xB8ceaFF8...59a00cF52
10 ETH
81607662019-07-16 8:11:282052 days ago1563264688
0xB8ceaFF8...59a00cF52
6 ETH
81569022019-07-15 17:24:212053 days ago1563211461
0xB8ceaFF8...59a00cF52
5 ETH
81566902019-07-15 16:36:322053 days ago1563208592
0xB8ceaFF8...59a00cF52
5 ETH
81525812019-07-15 0:57:572053 days ago1563152277
0xB8ceaFF8...59a00cF52
3 ETH
81278882019-07-11 4:41:542057 days ago1562820114
0xB8ceaFF8...59a00cF52
15 ETH
80455672019-06-28 9:35:242070 days ago1561714524
0xB8ceaFF8...59a00cF52
6.4514 ETH
80427742019-06-27 23:02:372070 days ago1561676557
0xB8ceaFF8...59a00cF52
15 ETH
79000522019-06-05 15:33:152093 days ago1559748795
0xB8ceaFF8...59a00cF52
9.8 ETH
77724222019-05-16 16:41:222113 days ago1558024882
0xB8ceaFF8...59a00cF52
4.1 ETH
75820952019-04-17 0:18:062142 days ago1555460286
0xB8ceaFF8...59a00cF52
7 ETH
75191712019-04-07 5:37:092152 days ago1554615429
0xB8ceaFF8...59a00cF52
2.72 ETH
74224372019-03-23 2:52:482167 days ago1553309568
0xB8ceaFF8...59a00cF52
14.47 ETH
72726012019-02-27 2:13:462191 days ago1551233626
0xB8ceaFF8...59a00cF52
10 ETH
72049812019-02-11 2:38:562207 days ago1549852736
0xB8ceaFF8...59a00cF52
7.10296 ETH
70736592019-01-16 2:29:442233 days ago1547605784
0xB8ceaFF8...59a00cF52
20 ETH
69761902018-12-29 21:39:012250 days ago1546119541
0xB8ceaFF8...59a00cF52
45.6 ETH
62815372018-09-06 9:38:382365 days ago1536226718
0xB8ceaFF8...59a00cF52
11 ETH
62702122018-09-04 12:11:582367 days ago1536063118
0xB8ceaFF8...59a00cF52
6.4 ETH
60873292018-08-04 14:45:312398 days ago1533393931
0xB8ceaFF8...59a00cF52
0.4 ETH
60543732018-07-30 1:05:472403 days ago1532912747
0xB8ceaFF8...59a00cF52
0.40058 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.