ETH Price: $2,670.07 (-0.28%)

Contract

0x60153045125eEC4F80672e6Ff9c065eaB13514DA
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep49666342018-01-24 22:55:232582 days ago1516834523IN
0x60153045...aB13514DA
0 ETH0.0045051390
Transfer49666032018-01-24 22:47:492582 days ago1516834069IN
0x60153045...aB13514DA
0.7517659 ETH0.0008420440
Sweep49313432018-01-18 22:07:032588 days ago1516313223IN
0x60153045...aB13514DA
0 ETH0.0045051390
Transfer49313152018-01-18 22:00:342588 days ago1516312834IN
0x60153045...aB13514DA
1.47799923 ETH0.0014104167
Sweep49295002018-01-18 14:10:252588 days ago1516284625IN
0x60153045...aB13514DA
0 ETH0.0045051390
Transfer49294582018-01-18 14:00:442588 days ago1516284044IN
0x60153045...aB13514DA
3.58489586 ETH0.0012630660
Sweep49260782018-01-17 23:19:282589 days ago1516231168IN
0x60153045...aB13514DA
0 ETH0.0045051390
Transfer49260562018-01-17 23:11:272589 days ago1516230687IN
0x60153045...aB13514DA
0.24225804 ETH0.0018945990
Sweep49260452018-01-17 23:09:172589 days ago1516230557IN
0x60153045...aB13514DA
0 ETH0.0045051390
Transfer49260152018-01-17 23:01:312589 days ago1516230091IN
0x60153045...aB13514DA
7.24936416 ETH0.0014314668
Sweep48827082018-01-10 1:11:232597 days ago1515546683IN
0x60153045...aB13514DA
0 ETH0.00555632111
Transfer48826362018-01-10 0:50:542597 days ago1515545454IN
0x60153045...aB13514DA
1.155 ETH0.0019156491
Sweep48763702018-01-08 20:54:402598 days ago1515444880IN
0x60153045...aB13514DA
0 ETH0.0066826133.5
Transfer48763322018-01-08 20:44:552598 days ago1515444295IN
0x60153045...aB13514DA
0.07753329 ETH0.0019787994
Sweep48610902018-01-06 1:48:352601 days ago1515203315IN
0x60153045...aB13514DA
0 ETH0.00908534181.5
Transfer48610582018-01-06 1:40:482601 days ago1515202848IN
0x60153045...aB13514DA
0.80040053 ETH0.00280188133.1
Sweep48392572018-01-02 2:38:022605 days ago1514860682IN
0x60153045...aB13514DA
0 ETH0.002552951
Transfer48392292018-01-02 2:29:512605 days ago1514860191IN
0x60153045...aB13514DA
0.23363855 ETH0.0004210220
Sweep47629792017-12-20 1:36:022618 days ago1513733762IN
0x60153045...aB13514DA
0 ETH0.002552951
Transfer47629712017-12-20 1:34:042618 days ago1513733644IN
0x60153045...aB13514DA
0.08819472 ETH0.0007115233.8
Transfer47629072017-12-20 1:17:512618 days ago1513732671IN
0x60153045...aB13514DA
0.02259472 ETH0.0007115233.8
Sweep47501692017-12-17 19:37:272620 days ago1513539447IN
0x60153045...aB13514DA
0 ETH0.002552951
Transfer47501122017-12-17 19:23:492620 days ago1513538629IN
0x60153045...aB13514DA
0.25071428 ETH0.0004420721
Sweep47352572017-12-15 5:41:362622 days ago1513316496IN
0x60153045...aB13514DA
0 ETH0.0033708467.340098
Transfer47352142017-12-15 5:32:022622 days ago1513315922IN
0x60153045...aB13514DA
0.56750428 ETH0.0010125548.10007
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
49666342018-01-24 22:55:232582 days ago1516834523
0x60153045...aB13514DA
0.7517659 ETH
49313432018-01-18 22:07:032588 days ago1516313223
0x60153045...aB13514DA
1.47799923 ETH
49295002018-01-18 14:10:252588 days ago1516284625
0x60153045...aB13514DA
3.58489586 ETH
49260782018-01-17 23:19:282589 days ago1516231168
0x60153045...aB13514DA
0.24225804 ETH
49260452018-01-17 23:09:172589 days ago1516230557
0x60153045...aB13514DA
7.24936416 ETH
48827082018-01-10 1:11:232597 days ago1515546683
0x60153045...aB13514DA
1.155 ETH
48763702018-01-08 20:54:402598 days ago1515444880
0x60153045...aB13514DA
0.07753329 ETH
48610902018-01-06 1:48:352601 days ago1515203315
0x60153045...aB13514DA
0.80040053 ETH
48392572018-01-02 2:38:022605 days ago1514860682
0x60153045...aB13514DA
0.23363855 ETH
47629792017-12-20 1:36:022618 days ago1513733762
0x60153045...aB13514DA
0.11078944 ETH
47501692017-12-17 19:37:272620 days ago1513539447
0x60153045...aB13514DA
0.25071428 ETH
47352572017-12-15 5:41:362622 days ago1513316496
0x60153045...aB13514DA
0.56750428 ETH
47056452017-12-10 1:32:412628 days ago1512869561
0x60153045...aB13514DA
0.39460128 ETH
46290042017-11-27 2:05:112641 days ago1511748311
0x60153045...aB13514DA
1.26620624 ETH
45912272017-11-20 23:48:572647 days ago1511221737
0x60153045...aB13514DA
2.01561419 ETH
45278092017-11-10 19:05:502657 days ago1510340750
0x60153045...aB13514DA
0.25645749 ETH
45174252017-11-09 2:57:232659 days ago1510196243
0x60153045...aB13514DA
1.845 ETH
45171262017-11-09 1:49:182659 days ago1510192158
0x60153045...aB13514DA
6.32315 ETH
45169802017-11-09 1:16:402659 days ago1510190200
0x60153045...aB13514DA
0.725 ETH
44725982017-11-01 21:54:242666 days ago1509573264
0x60153045...aB13514DA
2.27 ETH
44724972017-11-01 21:32:092666 days ago1509571929
0x60153045...aB13514DA
0.16 ETH
44004652017-10-21 6:58:262677 days ago1508569106
0x60153045...aB13514DA
0.63126595 ETH
43808892017-10-18 3:37:102681 days ago1508297830
0x60153045...aB13514DA
0.64252197 ETH
43635612017-10-14 0:16:282685 days ago1507940188
0x60153045...aB13514DA
0.78070262 ETH
43603652017-10-12 21:56:202686 days ago1507845380
0x60153045...aB13514DA
0.37795981 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.