ETH Price: $2,742.35 (+6.03%)

Contract

0xf672e333ac8729587d0e42fFA2D029946058d7a6
 

Overview

ETH Balance

0.013912410632243465 ETH

Eth Value

$38.15 (@ $2,742.35/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer60236842018-07-24 20:51:172395 days ago1532465477IN
0xf672e333...46058d7a6
0.0139124 ETH0.000021051
Sweep59826342018-07-17 21:02:222402 days ago1531861342IN
0xf672e333...46058d7a6
0 ETH0.0050057100
Transfer59826072018-07-17 20:55:232402 days ago1531860923IN
0xf672e333...46058d7a6
0.17878137 ETH0.000021051
Sweep59409812018-07-10 20:53:312409 days ago1531256011IN
0xf672e333...46058d7a6
0 ETH0.0050057100
Transfer59409522018-07-10 20:45:042409 days ago1531255504IN
0xf672e333...46058d7a6
0.19769276 ETH0.000021051
Sweep59003182018-07-03 20:53:212416 days ago1530651201IN
0xf672e333...46058d7a6
0 ETH0.0050057100
Transfer59002962018-07-03 20:46:592416 days ago1530650819IN
0xf672e333...46058d7a6
0.20006658 ETH0.000021051
Sweep58605662018-06-27 1:17:082423 days ago1530062228IN
0xf672e333...46058d7a6
0 ETH0.0025028550
Transfer58605282018-06-27 1:08:212423 days ago1530061701IN
0xf672e333...46058d7a6
0.19227132 ETH0.000021051
Sweep58198142018-06-20 1:14:222430 days ago1529457262IN
0xf672e333...46058d7a6
0 ETH0.0025028550
Transfer58197912018-06-20 1:08:572430 days ago1529456937IN
0xf672e333...46058d7a6
0.18504632 ETH0.000021051
Sweep57789582018-06-13 1:09:002437 days ago1528852140IN
0xf672e333...46058d7a6
0 ETH0.0025028550
Transfer57789372018-06-13 1:03:422437 days ago1528851822IN
0xf672e333...46058d7a6
0.2000784 ETH0.000021051
Sweep57397862018-06-06 2:52:122444 days ago1528253532IN
0xf672e333...46058d7a6
0 ETH0.0024996550
Transfer57397652018-06-06 2:45:352444 days ago1528253135IN
0xf672e333...46058d7a6
0.19472158 ETH0.000021051
Sweep57003672018-05-30 2:47:122451 days ago1527648432IN
0xf672e333...46058d7a6
0 ETH0.0025028550
Transfer57003472018-05-30 2:40:522451 days ago1527648052IN
0xf672e333...46058d7a6
0.14615558 ETH0.000021051
Sweep56607922018-05-23 2:45:312458 days ago1527043531IN
0xf672e333...46058d7a6
0 ETH0.0025028550
Transfer56607452018-05-23 2:32:382458 days ago1527042758IN
0xf672e333...46058d7a6
0.14475548 ETH0.000021051
Sweep56212312018-05-16 2:38:022465 days ago1526438282IN
0xf672e333...46058d7a6
0 ETH0.0025028550
Transfer56212092018-05-16 2:31:542465 days ago1526437914IN
0xf672e333...46058d7a6
0.20003082 ETH0.000021051
Sweep55817202018-05-09 4:41:092471 days ago1525840869IN
0xf672e333...46058d7a6
0 ETH0.0025028550
Transfer55816732018-05-09 4:29:462471 days ago1525840186IN
0xf672e333...46058d7a6
0.20016364 ETH0.000021051
Sweep55428292018-05-02 9:49:382478 days ago1525254578IN
0xf672e333...46058d7a6
0 ETH0.0025028550
Transfer55428062018-05-02 9:44:182478 days ago1525254258IN
0xf672e333...46058d7a6
0.17960661 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
59826342018-07-17 21:02:222402 days ago1531861342
0xf672e333...46058d7a6
0.17878137 ETH
59409812018-07-10 20:53:312409 days ago1531256011
0xf672e333...46058d7a6
0.19769277 ETH
59003182018-07-03 20:53:212416 days ago1530651201
0xf672e333...46058d7a6
0.20006658 ETH
58605662018-06-27 1:17:082423 days ago1530062228
0xf672e333...46058d7a6
0.19227132 ETH
58198142018-06-20 1:14:222430 days ago1529457262
0xf672e333...46058d7a6
0.18504633 ETH
57789582018-06-13 1:09:002437 days ago1528852140
0xf672e333...46058d7a6
0.2000784 ETH
57397862018-06-06 2:52:122444 days ago1528253532
0xf672e333...46058d7a6
0.19472158 ETH
57003672018-05-30 2:47:122451 days ago1527648432
0xf672e333...46058d7a6
0.14615558 ETH
56607922018-05-23 2:45:312458 days ago1527043531
0xf672e333...46058d7a6
0.14475549 ETH
56212312018-05-16 2:38:022465 days ago1526438282
0xf672e333...46058d7a6
0.20003082 ETH
55817202018-05-09 4:41:092471 days ago1525840869
0xf672e333...46058d7a6
0.20016364 ETH
55428292018-05-02 9:49:382478 days ago1525254578
0xf672e333...46058d7a6
0.17960662 ETH
55025652018-04-25 9:44:372485 days ago1524649477
0xf672e333...46058d7a6
0.1401111 ETH
54619242018-04-18 9:44:372492 days ago1524044677
0xf672e333...46058d7a6
0.09543263 ETH
54206042018-04-11 9:47:412499 days ago1523440061
0xf672e333...46058d7a6
0.08230811 ETH
53783492018-04-04 9:36:172506 days ago1522834577
0xf672e333...46058d7a6
0.1180152 ETH
53362772018-03-28 9:31:322513 days ago1522229492
0xf672e333...46058d7a6
0.146644 ETH
52944352018-03-21 9:35:532520 days ago1521624953
0xf672e333...46058d7a6
0.17812767 ETH
52530782018-03-14 9:32:492527 days ago1521019969
0xf672e333...46058d7a6
0.17754116 ETH
52118132018-03-07 9:25:052534 days ago1520414705
0xf672e333...46058d7a6
0.18979127 ETH
51706122018-02-28 9:33:292541 days ago1519810409
0xf672e333...46058d7a6
0.20008767 ETH
51351032018-02-22 8:16:322547 days ago1519287392
0xf672e333...46058d7a6
0.20004541 ETH
51002782018-02-16 11:00:052553 days ago1518778805
0xf672e333...46058d7a6
0.20015625 ETH
50660882018-02-10 17:10:482559 days ago1518282648
0xf672e333...46058d7a6
0.2000418 ETH
50326072018-02-05 2:21:042565 days ago1517797264
0xf672e333...46058d7a6
0.20002812 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.