ETH Price: $1,984.87 (-2.49%)
 

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
Sweep58036692018-06-17 7:33:142816 days ago1529220794IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer58036432018-06-17 7:26:232816 days ago1529220383IN
0xcBc3deD6...d60dbcfD9
0.10080229 ETH0.00016848
Sweep57514162018-06-08 4:27:592825 days ago1528432079IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer57514032018-06-08 4:24:432825 days ago1528431883IN
0xcBc3deD6...d60dbcfD9
0.10029538 ETH0.0002526112
Sweep56900542018-05-28 7:05:002836 days ago1527491100IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer56900332018-05-28 6:59:522836 days ago1527490792IN
0xcBc3deD6...d60dbcfD9
0.10097425 ETH0.00016848
Sweep56317352018-05-17 22:56:362847 days ago1526597796IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer56317152018-05-17 22:51:292847 days ago1526597489IN
0xcBc3deD6...d60dbcfD9
0.10016612 ETH0.00016848
Sweep55506042018-05-03 18:43:532861 days ago1525373033IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer55505652018-05-03 18:32:532861 days ago1525372373IN
0xcBc3deD6...d60dbcfD9
0.10011785 ETH0.00008424
Sweep54526282018-04-16 19:39:532878 days ago1523907593IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer54525992018-04-16 19:33:192878 days ago1523907199IN
0xcBc3deD6...d60dbcfD9
0.10087236 ETH0.00004212
Sweep54007592018-04-08 2:38:082886 days ago1523155088IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0024996550
Transfer54007272018-04-08 2:31:302886 days ago1523154690IN
0xcBc3deD6...d60dbcfD9
0.10007897 ETH0.00008424
Sweep53519822018-03-31 1:03:512894 days ago1522458231IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer53519552018-03-31 0:53:562894 days ago1522457636IN
0xcBc3deD6...d60dbcfD9
0.10369047 ETH0.00008424
Sweep53011452018-03-22 12:34:042903 days ago1521722044IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer53011172018-03-22 12:27:292903 days ago1521721649IN
0xcBc3deD6...d60dbcfD9
0.10066504 ETH0.00008424
Sweep52314312018-03-10 17:09:052915 days ago1520701745IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer52313992018-03-10 16:58:412915 days ago1520701121IN
0xcBc3deD6...d60dbcfD9
0.10305297 ETH0.00008424
Sweep51574772018-02-26 3:45:142927 days ago1519616714IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer51574242018-02-26 3:30:532927 days ago1519615853IN
0xcBc3deD6...d60dbcfD9
0.10187275 ETH0.00008424
Sweep51139182018-02-18 17:45:252935 days ago1518975925IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0025028550
Transfer51138582018-02-18 17:30:232935 days ago1518975023IN
0xcBc3deD6...d60dbcfD9
0.10043852 ETH0.0004210220
Sweep50704522018-02-11 10:38:502942 days ago1518345530IN
0xcBc3deD6...d60dbcfD9
0 ETH0.0045051390
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
Transfer58036692018-06-17 7:33:142816 days ago1529220794
0xcBc3deD6...d60dbcfD9
0.10080229 ETH
Transfer57514162018-06-08 4:27:592825 days ago1528432079
0xcBc3deD6...d60dbcfD9
0.10029538 ETH
Transfer56900542018-05-28 7:05:002836 days ago1527491100
0xcBc3deD6...d60dbcfD9
0.10097425 ETH
Transfer56317352018-05-17 22:56:362847 days ago1526597796
0xcBc3deD6...d60dbcfD9
0.10016612 ETH
Transfer55506042018-05-03 18:43:532861 days ago1525373033
0xcBc3deD6...d60dbcfD9
0.10011785 ETH
Transfer54526282018-04-16 19:39:532878 days ago1523907593
0xcBc3deD6...d60dbcfD9
0.10087236 ETH
Transfer54007592018-04-08 2:38:082886 days ago1523155088
0xcBc3deD6...d60dbcfD9
0.10007897 ETH
Transfer53519822018-03-31 1:03:512894 days ago1522458231
0xcBc3deD6...d60dbcfD9
0.10369047 ETH
Transfer53011452018-03-22 12:34:042903 days ago1521722044
0xcBc3deD6...d60dbcfD9
0.10066504 ETH
Transfer52314312018-03-10 17:09:052915 days ago1520701745
0xcBc3deD6...d60dbcfD9
0.10305297 ETH
Transfer51574772018-02-26 3:45:142927 days ago1519616714
0xcBc3deD6...d60dbcfD9
0.10187275 ETH
Transfer51139182018-02-18 17:45:252935 days ago1518975925
0xcBc3deD6...d60dbcfD9
0.10043852 ETH
Transfer50704522018-02-11 10:38:502942 days ago1518345530
0xcBc3deD6...d60dbcfD9
0.1004554 ETH
Transfer50090792018-02-01 2:41:472952 days ago1517452907
0xcBc3deD6...d60dbcfD9
0.10056649 ETH
Transfer49403112018-01-20 11:43:422964 days ago1516448622
0xcBc3deD6...d60dbcfD9
0.10019522 ETH
Transfer49002302018-01-13 6:47:462971 days ago1515826066
0xcBc3deD6...d60dbcfD9
0.10005949 ETH
Transfer48813702018-01-09 19:11:242975 days ago1515525084
0xcBc3deD6...d60dbcfD9
0.34 ETH
Transfer48561142018-01-05 3:33:472979 days ago1515123227
0xcBc3deD6...d60dbcfD9
0.10547931 ETH
Transfer48184692017-12-29 13:22:492986 days ago1514553769
0xcBc3deD6...d60dbcfD9
0.10086123 ETH
Transfer47833532017-12-23 15:52:552992 days ago1514044375
0xcBc3deD6...d60dbcfD9
0.10022253 ETH
Transfer47386252017-12-15 19:46:233000 days ago1513367183
0xcBc3deD6...d60dbcfD9
0.10615234 ETH
Transfer47128682017-12-11 7:25:053004 days ago1512977105
0xcBc3deD6...d60dbcfD9
0.10103547 ETH
Transfer46877552017-12-06 23:30:243009 days ago1512603024
0xcBc3deD6...d60dbcfD9
0.10132531 ETH
Transfer46586822017-12-01 22:34:543014 days ago1512167694
0xcBc3deD6...d60dbcfD9
0.10055455 ETH
Transfer46479802017-11-30 4:37:093015 days ago1512016629
0xcBc3deD6...d60dbcfD9
0.10321838 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.