ETH Price: $1,858.92 (+1.04%)

Contract

0xD585f5F093B1fc5D4004D2780D013B067fbd0AE2
 

Overview

ETH Balance

0.026513606700026483 ETH

Eth Value

$49.29 (@ $1,858.92/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer75412752019-04-10 15:50:542182 days ago1554911454IN
0xD585f5F0...67fbd0AE2
0.0265136 ETH0.000021051
Sweep74962022019-04-03 15:57:132189 days ago1554307033IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer74961792019-04-03 15:51:502189 days ago1554306710IN
0xD585f5F0...67fbd0AE2
0.05019777 ETH0.000021051
Sweep74576492019-03-28 14:46:532195 days ago1553784413IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer74576332019-03-28 14:43:542195 days ago1553784234IN
0xD585f5F0...67fbd0AE2
0.05010222 ETH0.000021051
Sweep74301762019-03-24 7:54:102200 days ago1553414050IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer74301512019-03-24 7:50:342200 days ago1553413834IN
0xD585f5F0...67fbd0AE2
0.05027033 ETH0.000021051
Sweep74188792019-03-22 13:45:432202 days ago1553262343IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer74188632019-03-22 13:41:382202 days ago1553262098IN
0xD585f5F0...67fbd0AE2
0.05000073 ETH0.000021051
Sweep74053892019-03-20 11:06:512204 days ago1553080011IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer74053772019-03-20 11:03:252204 days ago1553079805IN
0xD585f5F0...67fbd0AE2
0.05005173 ETH0.000021051
Sweep73910772019-03-18 5:36:222206 days ago1552887382IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer73910622019-03-18 5:33:162206 days ago1552887196IN
0xD585f5F0...67fbd0AE2
0.05009014 ETH0.000021051
Sweep73801512019-03-16 12:44:382208 days ago1552740278IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer73801372019-03-16 12:40:022208 days ago1552740002IN
0xD585f5F0...67fbd0AE2
0.05013033 ETH0.000021051
Sweep73672012019-03-14 12:46:182210 days ago1552567578IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer73671732019-03-14 12:40:332210 days ago1552567233IN
0xD585f5F0...67fbd0AE2
0.05000235 ETH0.000021051
Sweep73557132019-03-12 17:44:462211 days ago1552412686IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer73556902019-03-12 17:40:512211 days ago1552412451IN
0xD585f5F0...67fbd0AE2
0.05006262 ETH0.000021051
Sweep73152712019-03-06 10:45:202218 days ago1551869120IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer73152502019-03-06 10:40:252218 days ago1551868825IN
0xD585f5F0...67fbd0AE2
0.05088299 ETH0.000021051
Sweep73088732019-03-05 10:37:502219 days ago1551782270IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer73088542019-03-05 10:35:152219 days ago1551782115IN
0xD585f5F0...67fbd0AE2
0.05017214 ETH0.000021051
Sweep73006022019-03-04 3:39:202220 days ago1551670760IN
0xD585f5F0...67fbd0AE2
0 ETH0.0024996550
Transfer73005792019-03-04 3:32:552220 days ago1551670375IN
0xD585f5F0...67fbd0AE2
0.05279598 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-74962022019-04-03 15:57:132189 days ago1554307033
0xD585f5F0...67fbd0AE2
0.05019777 ETH
-74576492019-03-28 14:46:532195 days ago1553784413
0xD585f5F0...67fbd0AE2
0.05010222 ETH
-74301762019-03-24 7:54:102200 days ago1553414050
0xD585f5F0...67fbd0AE2
0.05027033 ETH
-74188792019-03-22 13:45:432202 days ago1553262343
0xD585f5F0...67fbd0AE2
0.05000074 ETH
-74053892019-03-20 11:06:512204 days ago1553080011
0xD585f5F0...67fbd0AE2
0.05005173 ETH
-73910772019-03-18 5:36:222206 days ago1552887382
0xD585f5F0...67fbd0AE2
0.05009014 ETH
-73801512019-03-16 12:44:382208 days ago1552740278
0xD585f5F0...67fbd0AE2
0.05013034 ETH
-73672012019-03-14 12:46:182210 days ago1552567578
0xD585f5F0...67fbd0AE2
0.05000235 ETH
-73557132019-03-12 17:44:462211 days ago1552412686
0xD585f5F0...67fbd0AE2
0.05006263 ETH
-73152712019-03-06 10:45:202218 days ago1551869120
0xD585f5F0...67fbd0AE2
0.05088299 ETH
-73088732019-03-05 10:37:502219 days ago1551782270
0xD585f5F0...67fbd0AE2
0.05017214 ETH
-73006022019-03-04 3:39:202220 days ago1551670760
0xD585f5F0...67fbd0AE2
0.05279599 ETH
-72941542019-03-03 3:33:032221 days ago1551583983
0xD585f5F0...67fbd0AE2
0.05014553 ETH
-72860372019-03-01 20:53:202222 days ago1551473600
0xD585f5F0...67fbd0AE2
0.05002346 ETH
-72819242019-03-01 4:46:222223 days ago1551415582
0xD585f5F0...67fbd0AE2
0.05010536 ETH
-72721752019-02-26 23:47:592225 days ago1551224879
0xD585f5F0...67fbd0AE2
0.05021565 ETH
-72634982019-02-24 22:45:422227 days ago1551048342
0xD585f5F0...67fbd0AE2
0.05017136 ETH
-72519202019-02-22 5:56:402230 days ago1550815000
0xD585f5F0...67fbd0AE2
0.05008155 ETH
-72415052019-02-19 19:11:592232 days ago1550603519
0xD585f5F0...67fbd0AE2
0.05001396 ETH
-72357752019-02-18 10:50:062234 days ago1550487006
0xD585f5F0...67fbd0AE2
0.05009596 ETH
-72301642019-02-17 2:36:222235 days ago1550370982
0xD585f5F0...67fbd0AE2
0.05017502 ETH
-72218932019-02-15 3:19:182237 days ago1550200758
0xD585f5F0...67fbd0AE2
0.05004562 ETH
-72160262019-02-13 17:14:032238 days ago1550078043
0xD585f5F0...67fbd0AE2
0.0500249 ETH
-72090232019-02-12 1:37:392240 days ago1549935459
0xD585f5F0...67fbd0AE2
0.05015332 ETH
-72026442019-02-10 13:08:502242 days ago1549804130
0xD585f5F0...67fbd0AE2
0.05014407 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.