ETH Price: $2,183.84 (+1.68%)

Contract

0xD459928D79976427e7b41E9a99443C1c119897c7
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep59647962018-07-14 20:46:232425 days ago1531601183IN
0xD459928D...c119897c7
0 ETH0.0049993100
Transfer59647692018-07-14 20:39:532425 days ago1531600793IN
0xD459928D...c119897c7
1 ETH0.0005473226
Sweep59637422018-07-14 16:19:282426 days ago1531585168IN
0xD459928D...c119897c7
0 ETH0.0049993100
Transfer59636012018-07-14 15:46:472426 days ago1531583207IN
0xD459928D...c119897c7
1 ETH0.0021051100
Sweep50312702018-02-04 20:55:282585 days ago1517777728IN
0xD459928D...c119897c7
0 ETH0.0044993790
Transfer50312342018-02-04 20:47:292585 days ago1517777249IN
0xD459928D...c119897c7
2 ETH0.00008424
Sweep50198062018-02-02 22:58:292587 days ago1517612309IN
0xD459928D...c119897c7
0 ETH0.0045051390
Transfer50197722018-02-02 22:50:392587 days ago1517611839IN
0xD459928D...c119897c7
1.8191 ETH0.00008424
Sweep49877212018-01-28 11:58:212593 days ago1517140701IN
0xD459928D...c119897c7
0 ETH0.0044993790
Transfer49876952018-01-28 11:52:152593 days ago1517140335IN
0xD459928D...c119897c7
1 ETH0.00008424
Sweep49657412018-01-24 19:29:102596 days ago1516822150IN
0xD459928D...c119897c7
0 ETH0.0044993790
Transfer49656982018-01-24 19:20:342596 days ago1516821634IN
0xD459928D...c119897c7
1 ETH0.00008424
Sweep49259792018-01-17 22:52:192603 days ago1516229539IN
0xD459928D...c119897c7
0 ETH0.0044993790
Transfer49259432018-01-17 22:41:322603 days ago1516228892IN
0xD459928D...c119897c7
2 ETH0.001073651
Sweep48860882018-01-10 16:13:582611 days ago1515600838IN
0xD459928D...c119897c7
0 ETH0.0044993790
Transfer48860532018-01-10 16:04:272611 days ago1515600267IN
0xD459928D...c119897c7
1 ETH0.0012841161
Sweep46848712017-12-06 10:59:132646 days ago1512557953IN
0xD459928D...c119897c7
0 ETH0.0025496451
Transfer46848332017-12-06 10:49:532646 days ago1512557393IN
0xD459928D...c119897c7
1 ETH0.0010525550
Sweep46815482017-12-05 20:33:242646 days ago1512506004IN
0xD459928D...c119897c7
0 ETH0.0017497535
Transfer46812722017-12-05 19:21:372646 days ago1512501697IN
0xD459928D...c119897c7
1 ETH0.0005473226
Sweep46504832017-11-30 14:26:002652 days ago1512051960IN
0xD459928D...c119897c7
0 ETH0.0009998620
Transfer46504682017-11-30 14:21:552652 days ago1512051715IN
0xD459928D...c119897c7
2 ETH0.00008424
Sweep46504622017-11-30 14:20:492652 days ago1512051649IN
0xD459928D...c119897c7
0 ETH0.0009998620
Transfer46504442017-11-30 14:17:102652 days ago1512051430IN
0xD459928D...c119897c7
1 ETH0.00008424
Sweep46321062017-11-27 14:09:582655 days ago1511791798IN
0xD459928D...c119897c7
0 ETH0.0009998620
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
59647962018-07-14 20:46:232425 days ago1531601183
0xD459928D...c119897c7
1 ETH
59637422018-07-14 16:19:282426 days ago1531585168
0xD459928D...c119897c7
1 ETH
50312702018-02-04 20:55:282585 days ago1517777728
0xD459928D...c119897c7
2 ETH
50198062018-02-02 22:58:292587 days ago1517612309
0xD459928D...c119897c7
1.8191 ETH
49877212018-01-28 11:58:212593 days ago1517140701
0xD459928D...c119897c7
1 ETH
49657412018-01-24 19:29:102596 days ago1516822150
0xD459928D...c119897c7
1 ETH
49259792018-01-17 22:52:192603 days ago1516229539
0xD459928D...c119897c7
2 ETH
48860882018-01-10 16:13:582611 days ago1515600838
0xD459928D...c119897c7
1 ETH
46848712017-12-06 10:59:132646 days ago1512557953
0xD459928D...c119897c7
1 ETH
46815482017-12-05 20:33:242646 days ago1512506004
0xD459928D...c119897c7
1 ETH
46504832017-11-30 14:26:002652 days ago1512051960
0xD459928D...c119897c7
2 ETH
46504622017-11-30 14:20:492652 days ago1512051649
0xD459928D...c119897c7
1 ETH
46321062017-11-27 14:09:582655 days ago1511791798
0xD459928D...c119897c7
1 ETH
46193212017-11-25 12:24:432657 days ago1511612683
0xD459928D...c119897c7
2 ETH
46192962017-11-25 12:19:032657 days ago1511612343
0xD459928D...c119897c7
1 ETH
46019222017-11-22 17:15:352660 days ago1511370935
0xD459928D...c119897c7
1 ETH
46019142017-11-22 17:13:222660 days ago1511370802
0xD459928D...c119897c7
1 ETH
46018992017-11-22 17:10:152660 days ago1511370615
0xD459928D...c119897c7
1 ETH
45962932017-11-21 19:27:102660 days ago1511292430
0xD459928D...c119897c7
1 ETH
45962702017-11-21 19:23:032660 days ago1511292183
0xD459928D...c119897c7
1 ETH
45961802017-11-21 19:01:582660 days ago1511290918
0xD459928D...c119897c7
1 ETH
45961562017-11-21 18:56:592660 days ago1511290619
0xD459928D...c119897c7
1 ETH
45898652017-11-20 18:17:332661 days ago1511201853
0xD459928D...c119897c7
2 ETH
45516992017-11-14 14:53:512668 days ago1510671231
0xD459928D...c119897c7
5 ETH
45515772017-11-14 14:23:472668 days ago1510669427
0xD459928D...c119897c7
1 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

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.