ETH Price: $2,705.43 (-1.23%)

Contract

0xCb1BCec907de9729EB7CD9275ead9F8e865F4d19
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer56292042018-05-17 12:26:442466 days ago1526560004IN
0xCb1BCec9...e865F4d19
3 ETH0.00031515
Sweep54175522018-04-10 21:36:442502 days ago1523396204IN
0xCb1BCec9...e865F4d19
0 ETH0.0025028550
Transfer54175052018-04-10 21:24:322502 days ago1523395472IN
0xCb1BCec9...e865F4d19
0.61841376 ETH0.00008424
Sweep49216222018-01-17 4:13:012586 days ago1516162381IN
0xCb1BCec9...e865F4d19
0 ETH0.0045051390
Transfer49215792018-01-17 4:01:532586 days ago1516161713IN
0xCb1BCec9...e865F4d19
0.09552536 ETH0.001073651
Sweep48680232018-01-07 8:26:532596 days ago1515313613IN
0xCb1BCec9...e865F4d19
0 ETH0.0029995860
Transfer48679872018-01-07 8:19:012596 days ago1515313141IN
0xCb1BCec9...e865F4d19
1 ETH0.0004420721
Transfer48678512018-01-07 7:43:082596 days ago1515310988IN
0xCb1BCec9...e865F4d19
1 ETH0.0012660
Sweep48626072018-01-06 8:38:152597 days ago1515227895IN
0xCb1BCec9...e865F4d19
0 ETH0.00750855150
Transfer48625712018-01-06 8:27:142597 days ago1515227234IN
0xCb1BCec9...e865F4d19
0.0992364 ETH0.001273960.5154
Sweep48322512017-12-31 22:06:552602 days ago1514758015IN
0xCb1BCec9...e865F4d19
0 ETH0.002552951
Transfer48322162017-12-31 21:58:532602 days ago1514757533IN
0xCb1BCec9...e865F4d19
0.64115607 ETH0.0004420721
Sweep45151522017-11-08 18:04:052656 days ago1510164245IN
0xCb1BCec9...e865F4d19
0 ETH0.0010011420
Transfer45151462017-11-08 18:02:312656 days ago1510164151IN
0xCb1BCec9...e865F4d19
0.0795232 ETH0.0004210220
Transfer45149582017-11-08 17:22:032656 days ago1510161723IN
0xCb1BCec9...e865F4d19
0.034457 ETH0.0004210220
Sweep42962812017-09-20 22:57:342704 days ago1505948254IN
0xCb1BCec9...e865F4d19
0 ETH0.0025496451
Transfer42962642017-09-20 22:53:062704 days ago1505947986IN
0xCb1BCec9...e865F4d19
0.06854046 ETH0.0004420721
Sweep42769812017-09-15 14:30:282710 days ago1505485828IN
0xCb1BCec9...e865F4d19
0 ETH0.002552951
Transfer42769552017-09-15 14:22:232710 days ago1505485343IN
0xCb1BCec9...e865F4d19
0.17059517 ETH0.0006315330
Sweep42735922017-09-14 16:02:582711 days ago1505404978IN
0xCb1BCec9...e865F4d19
0 ETH0.0025496451
Transfer42735852017-09-14 16:00:302711 days ago1505404830IN
0xCb1BCec9...e865F4d19
1 ETH0.0005262725
Sweep42735602017-09-14 15:51:332711 days ago1505404293IN
0xCb1BCec9...e865F4d19
0 ETH0.002552951
Transfer42735512017-09-14 15:49:052711 days ago1505404145IN
0xCb1BCec9...e865F4d19
0.08392406 ETH0.0005262725
Sweep42700232017-09-13 16:01:202712 days ago1505318480IN
0xCb1BCec9...e865F4d19
0 ETH0.002552951
Transfer42700142017-09-13 15:56:382712 days ago1505318198IN
0xCb1BCec9...e865F4d19
0.18555839 ETH0.0004728722.4632305
View all transactions

Latest 17 internal transactions

Advanced mode:
Parent Transaction Hash Block
From
To
54175522018-04-10 21:36:442502 days ago1523396204
0xCb1BCec9...e865F4d19
0.61841376 ETH
49216222018-01-17 4:13:012586 days ago1516162381
0xCb1BCec9...e865F4d19
0.09552536 ETH
48680232018-01-07 8:26:532596 days ago1515313613
0xCb1BCec9...e865F4d19
1 ETH
48626072018-01-06 8:38:152597 days ago1515227895
0xCb1BCec9...e865F4d19
0.0992364 ETH
48322512017-12-31 22:06:552602 days ago1514758015
0xCb1BCec9...e865F4d19
0.64115607 ETH
45151522017-11-08 18:04:052656 days ago1510164245
0xCb1BCec9...e865F4d19
0.1139802 ETH
42962812017-09-20 22:57:342704 days ago1505948254
0xCb1BCec9...e865F4d19
0.06854046 ETH
42769812017-09-15 14:30:282710 days ago1505485828
0xCb1BCec9...e865F4d19
0.17059517 ETH
42735922017-09-14 16:02:582711 days ago1505404978
0xCb1BCec9...e865F4d19
1 ETH
42735602017-09-14 15:51:332711 days ago1505404293
0xCb1BCec9...e865F4d19
0.08392406 ETH
42700232017-09-13 16:01:202712 days ago1505318480
0xCb1BCec9...e865F4d19
0.18555839 ETH
42414942017-09-05 15:56:242720 days ago1504626984
0xCb1BCec9...e865F4d19
1.68492464 ETH
42204982017-08-30 17:00:222726 days ago1504112422
0xCb1BCec9...e865F4d19
1 ETH
42176982017-08-29 21:48:122726 days ago1504043292
0xCb1BCec9...e865F4d19
1 ETH
42136202017-08-28 18:02:502728 days ago1503943370
0xCb1BCec9...e865F4d19
1 ETH
41581872017-08-14 20:53:402741 days ago1502744020
0xCb1BCec9...e865F4d19
0.1 ETH
41570762017-08-14 14:28:252742 days ago1502720905  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

[{"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.