ETH Price: $3,200.91 (+5.02%)

Contract

0x54f268AeDEc5222063f75f22825D2D9731595609
 

Overview

ETH Balance

0.00000000886206146 ETH

Eth Value

Less Than $0.01 (@ $3,200.91/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep47408222017-12-16 4:53:082521 days ago1513399988IN
0x54f268Ae...731595609
0 ETH0.0040646281.2
Transfer47407752017-12-16 4:42:522521 days ago1513399372IN
0x54f268Ae...731595609
0.10905661 ETH0.0012209558
Sweep47357982017-12-15 8:04:322522 days ago1513325072IN
0x54f268Ae...731595609
0 ETH0.002552951
Transfer47357472017-12-15 7:51:402522 days ago1513324300IN
0x54f268Ae...731595609
0.14626273 ETH0.0012630660
Sweep47355782017-12-15 7:07:292522 days ago1513321649IN
0x54f268Ae...731595609
0 ETH0.0033708467.340098
Transfer47355422017-12-15 6:58:092522 days ago1513321089IN
0x54f268Ae...731595609
0.14786416 ETH0.0014335768.10007
Sweep47295282017-12-14 5:43:362523 days ago1513230216IN
0x54f268Ae...731595609
0 ETH0.002552951
Transfer47294362017-12-14 5:21:442523 days ago1513228904IN
0x54f268Ae...731595609
0.15294215 ETH0.0006738432.01
Sweep47180692017-12-12 5:28:062525 days ago1513056486IN
0x54f268Ae...731595609
0 ETH0.002552951
Transfer47179872017-12-12 5:04:042525 days ago1513055044IN
0x54f268Ae...731595609
0.15648372 ETH0.0005262725
Sweep47173242017-12-12 2:12:352525 days ago1513044755IN
0x54f268Ae...731595609
0 ETH0.002552951
Transfer47172842017-12-12 2:03:142525 days ago1513044194IN
0x54f268Ae...731595609
0.15233065 ETH0.0016419778
Sweep47120462017-12-11 4:00:272526 days ago1512964827IN
0x54f268Ae...731595609
0 ETH0.0028732757.4
Transfer47119672017-12-11 3:42:212526 days ago1512963741IN
0x54f268Ae...731595609
0.15354948 ETH0.0016419778
Sweep47064442017-12-10 4:51:562527 days ago1512881516IN
0x54f268Ae...731595609
0 ETH0.0028732757.4
Transfer47064062017-12-10 4:41:502527 days ago1512880910IN
0x54f268Ae...731595609
0.1564549 ETH0.0008630941
Sweep47058792017-12-10 2:27:402527 days ago1512872860IN
0x54f268Ae...731595609
0 ETH0.0028031956
Transfer47058472017-12-10 2:18:192527 days ago1512872299IN
0x54f268Ae...731595609
0.15293608 ETH0.0016419778
Sweep47000472017-12-09 2:25:062528 days ago1512786306IN
0x54f268Ae...731595609
0 ETH0.0039945479.8
Transfer47000002017-12-09 2:13:152528 days ago1512785595IN
0x54f268Ae...731595609
0.15315939 ETH0.0016419778
Sweep46950552017-12-08 5:48:232529 days ago1512712103IN
0x54f268Ae...731595609
0 ETH0.0035740671.4
Transfer46950152017-12-08 5:39:342529 days ago1512711574IN
0x54f268Ae...731595609
0.16269908 ETH0.001073651
Sweep46941402017-12-08 2:04:052529 days ago1512698645IN
0x54f268Ae...731595609
0 ETH0.0038544577.0014
Transfer46940872017-12-08 1:49:322529 days ago1512697772IN
0x54f268Ae...731595609
0.1628102 ETH0.0016419778
Sweep46884762017-12-07 2:37:112530 days ago1512614231IN
0x54f268Ae...731595609
0 ETH0.0035039970
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
47408222017-12-16 4:53:082521 days ago1513399988
0x54f268Ae...731595609
0.10905661 ETH
47357982017-12-15 8:04:322522 days ago1513325072
0x54f268Ae...731595609
0.14626273 ETH
47355782017-12-15 7:07:292522 days ago1513321649
0x54f268Ae...731595609
0.14786416 ETH
47295282017-12-14 5:43:362523 days ago1513230216
0x54f268Ae...731595609
0.15294215 ETH
47180692017-12-12 5:28:062525 days ago1513056486
0x54f268Ae...731595609
0.15648373 ETH
47173242017-12-12 2:12:352525 days ago1513044755
0x54f268Ae...731595609
0.15233065 ETH
47120462017-12-11 4:00:272526 days ago1512964827
0x54f268Ae...731595609
0.15354948 ETH
47064442017-12-10 4:51:562527 days ago1512881516
0x54f268Ae...731595609
0.1564549 ETH
47058792017-12-10 2:27:402527 days ago1512872860
0x54f268Ae...731595609
0.15293608 ETH
47000472017-12-09 2:25:062528 days ago1512786306
0x54f268Ae...731595609
0.15315939 ETH
46950552017-12-08 5:48:232529 days ago1512712103
0x54f268Ae...731595609
0.16269909 ETH
46941402017-12-08 2:04:052529 days ago1512698645
0x54f268Ae...731595609
0.1628102 ETH
46884762017-12-07 2:37:112530 days ago1512614231
0x54f268Ae...731595609
0.15951937 ETH
46844522017-12-06 9:04:102531 days ago1512551050
0x54f268Ae...731595609
0.1582119 ETH
46829912017-12-06 2:39:512531 days ago1512527991
0x54f268Ae...731595609
0.15968355 ETH
46772572017-12-05 1:51:072532 days ago1512438667
0x54f268Ae...731595609
0.15277884 ETH
46723202017-12-04 4:48:592533 days ago1512362939
0x54f268Ae...731595609
0.15182541 ETH
46716442017-12-04 2:09:332533 days ago1512353373
0x54f268Ae...731595609
0.15610498 ETH
46656622017-12-03 2:14:232534 days ago1512267263
0x54f268Ae...731595609
0.1496506 ETH
46600052017-12-02 3:46:262535 days ago1512186386
0x54f268Ae...731595609
0.14826821 ETH
46596522017-12-02 2:26:012535 days ago1512181561
0x54f268Ae...731595609
0.14732612 ETH
46534452017-12-01 1:57:492536 days ago1512093469
0x54f268Ae...731595609
0.13805773 ETH
46476862017-11-30 3:24:262537 days ago1512012266
0x54f268Ae...731595609
0.15954386 ETH
46474162017-11-30 2:26:402537 days ago1512008800
0x54f268Ae...731595609
0.15433575 ETH
46412572017-11-29 2:23:252538 days ago1511922205
0x54f268Ae...731595609
0.15484676 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.