ETH Price: $2,277.94 (-8.20%)

Contract

0xbBB04DBad6dC736Fe0f330D636Ce65DbFcc0e4C8
 

Overview

ETH Balance

0.000000005228044009 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep66540092018-11-06 12:22:562309 days ago1541506976IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0024996550
Transfer66539892018-11-06 12:18:142309 days ago1541506694IN
0xbBB04DBa...bFcc0e4C8
0.05518898 ETH0.0002336611.1
Sweep60764092018-08-02 18:46:252404 days ago1533235585IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0049993100
Transfer60763872018-08-02 18:40:502404 days ago1533235250IN
0xbBB04DBa...bFcc0e4C8
0.05637 ETH0.0006315330
Sweep60761862018-08-02 17:52:572405 days ago1533232377IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0050057100
Transfer60761672018-08-02 17:48:312405 days ago1533232111IN
0xbBB04DBa...bFcc0e4C8
0.05637 ETH0.0006315330
Transfer60678212018-08-01 7:41:082406 days ago1533109268IN
0xbBB04DBa...bFcc0e4C8
0.02637 ETH0.0006315330
Sweep60637732018-07-31 15:14:012407 days ago1533050041IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0050057100
Transfer60637532018-07-31 15:08:162407 days ago1533049696IN
0xbBB04DBa...bFcc0e4C8
0.09980106 ETH0.0012630660
Sweep60635602018-07-31 14:19:442407 days ago1533046784IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0049993100
Transfer60635352018-07-31 14:14:132407 days ago1533046453IN
0xbBB04DBa...bFcc0e4C8
0.06962399 ETH0.000105255
Sweep60062822018-07-21 22:02:032416 days ago1532210523IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0050057100
Transfer60062642018-07-21 21:57:532416 days ago1532210273IN
0xbBB04DBa...bFcc0e4C8
0.10952751 ETH0.00008424
Transfer59353142018-07-09 21:33:532428 days ago1531172033IN
0xbBB04DBa...bFcc0e4C8
0.04269842 ETH0.0006315330
Sweep59272132018-07-08 12:02:242430 days ago1531051344IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0050057100
Transfer59271912018-07-08 11:55:052430 days ago1531050905IN
0xbBB04DBa...bFcc0e4C8
0.10700094 ETH0.0006315330
Sweep58567902018-06-26 9:38:242442 days ago1530005904IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0025028550
Transfer58567532018-06-26 9:30:162442 days ago1530005416IN
0xbBB04DBa...bFcc0e4C8
0.10950369 ETH0.000172618.2
Sweep56929522018-05-28 19:17:592470 days ago1527535079IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0025028550
Transfer56929302018-05-28 19:12:362470 days ago1527534756IN
0xbBB04DBa...bFcc0e4C8
0.08419305 ETH0.0002736613
Sweep56754692018-05-25 17:24:422474 days ago1527269082IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0025028550
Transfer56754432018-05-25 17:18:252474 days ago1527268705IN
0xbBB04DBa...bFcc0e4C8
0.52935985 ETH0.0010925451.9
Sweep56015632018-05-12 15:59:222487 days ago1526140762IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0025028550
Transfer56015232018-05-12 15:50:302487 days ago1526140230IN
0xbBB04DBa...bFcc0e4C8
0.10950735 ETH0.0002105110
Sweep54918402018-04-23 13:00:192506 days ago1524488419IN
0xbBB04DBa...bFcc0e4C8
0 ETH0.0025028550
View all transactions

Latest 15 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
66540092018-11-06 12:22:562309 days ago1541506976
0xbBB04DBa...bFcc0e4C8
0.05518898 ETH
60764092018-08-02 18:46:252404 days ago1533235585
0xbBB04DBa...bFcc0e4C8
0.05637 ETH
60761862018-08-02 17:52:572405 days ago1533232377
0xbBB04DBa...bFcc0e4C8
0.08274 ETH
60637732018-07-31 15:14:012407 days ago1533050041
0xbBB04DBa...bFcc0e4C8
0.09980106 ETH
60635602018-07-31 14:19:442407 days ago1533046784
0xbBB04DBa...bFcc0e4C8
0.06962399 ETH
60062822018-07-21 22:02:032416 days ago1532210523
0xbBB04DBa...bFcc0e4C8
0.15222593 ETH
59272132018-07-08 12:02:242430 days ago1531051344
0xbBB04DBa...bFcc0e4C8
0.10700094 ETH
58567902018-06-26 9:38:242442 days ago1530005904
0xbBB04DBa...bFcc0e4C8
0.10950369 ETH
56929522018-05-28 19:17:592470 days ago1527535079
0xbBB04DBa...bFcc0e4C8
0.08419305 ETH
56754692018-05-25 17:24:422474 days ago1527269082
0xbBB04DBa...bFcc0e4C8
0.52935985 ETH
56015632018-05-12 15:59:222487 days ago1526140762
0xbBB04DBa...bFcc0e4C8
0.10950735 ETH
54918402018-04-23 13:00:192506 days ago1524488419
0xbBB04DBa...bFcc0e4C8
0.10954769 ETH
53833142018-04-05 5:33:492524 days ago1522906429
0xbBB04DBa...bFcc0e4C8
0.15421819 ETH
44201182017-10-24 10:22:352687 days ago1508840555
0xbBB04DBa...bFcc0e4C8
0.28469693 ETH
43929612017-10-20 2:07:172691 days ago1508465237  Contract Creation0 ETH
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

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"}]

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.