ETH Price: $3,229.04 (-2.48%)

Contract

0x0fD2cC22B4f52b51AeF959331eF315A561B8679a
 

Overview

ETH Balance

0.000000006454515493 ETH

Eth Value

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

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep56247032018-05-16 17:32:022372 days ago1526491922IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer56246642018-05-16 17:22:402372 days ago1526491360IN
0x0fD2cC22...561B8679a
0.05004897 ETH0.000021051
Sweep55987322018-05-12 4:04:562376 days ago1526097896IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55986882018-05-12 3:55:242376 days ago1526097324IN
0x0fD2cC22...561B8679a
0.05006833 ETH0.000021051
Sweep55824302018-05-09 7:48:072379 days ago1525852087IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55823822018-05-09 7:34:392379 days ago1525851279IN
0x0fD2cC22...561B8679a
0.05000611 ETH0.000021051
Sweep55713992018-05-07 10:00:312381 days ago1525687231IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55713512018-05-07 9:47:572381 days ago1525686477IN
0x0fD2cC22...561B8679a
0.05010647 ETH0.000021051
Sweep55610492018-05-05 14:55:382383 days ago1525532138IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55610172018-05-05 14:48:532383 days ago1525531733IN
0x0fD2cC22...561B8679a
0.05001661 ETH0.000021051
Sweep55510382018-05-03 20:34:202385 days ago1525379660IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55510112018-05-03 20:28:072385 days ago1525379287IN
0x0fD2cC22...561B8679a
0.05009116 ETH0.000021051
Sweep55412472018-05-02 3:08:322386 days ago1525230512IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55412192018-05-02 3:01:302386 days ago1525230090IN
0x0fD2cC22...561B8679a
0.05018405 ETH0.000021051
Sweep55314142018-04-30 9:35:392388 days ago1525080939IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55313952018-04-30 9:29:532388 days ago1525080593IN
0x0fD2cC22...561B8679a
0.05007128 ETH0.000021051
Sweep55212872018-04-28 15:31:052390 days ago1524929465IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55212182018-04-28 15:12:582390 days ago1524928378IN
0x0fD2cC22...561B8679a
0.05007347 ETH0.000021051
Sweep55116282018-04-26 23:03:532392 days ago1524783833IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer55116102018-04-26 22:59:082392 days ago1524783548IN
0x0fD2cC22...561B8679a
0.05007547 ETH0.000021051
Sweep54914452018-04-23 11:23:162395 days ago1524482596IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer54914292018-04-23 11:19:422395 days ago1524482382IN
0x0fD2cC22...561B8679a
0.05004348 ETH0.000021051
Sweep54669392018-04-19 6:22:112399 days ago1524118931IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
Transfer54669012018-04-19 6:13:202399 days ago1524118400IN
0x0fD2cC22...561B8679a
0.05000623 ETH0.000021051
Sweep54419602018-04-15 0:18:232404 days ago1523751503IN
0x0fD2cC22...561B8679a
0 ETH0.0024996550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
56247032018-05-16 17:32:022372 days ago1526491922
0x0fD2cC22...561B8679a
0.05004898 ETH
55987322018-05-12 4:04:562376 days ago1526097896
0x0fD2cC22...561B8679a
0.05006833 ETH
55824302018-05-09 7:48:072379 days ago1525852087
0x0fD2cC22...561B8679a
0.05000611 ETH
55713992018-05-07 10:00:312381 days ago1525687231
0x0fD2cC22...561B8679a
0.05010648 ETH
55610492018-05-05 14:55:382383 days ago1525532138
0x0fD2cC22...561B8679a
0.05001661 ETH
55510382018-05-03 20:34:202385 days ago1525379660
0x0fD2cC22...561B8679a
0.05009116 ETH
55412472018-05-02 3:08:322386 days ago1525230512
0x0fD2cC22...561B8679a
0.05018405 ETH
55314142018-04-30 9:35:392388 days ago1525080939
0x0fD2cC22...561B8679a
0.05007129 ETH
55212872018-04-28 15:31:052390 days ago1524929465
0x0fD2cC22...561B8679a
0.05007348 ETH
55116282018-04-26 23:03:532392 days ago1524783833
0x0fD2cC22...561B8679a
0.05007547 ETH
54914452018-04-23 11:23:162395 days ago1524482596
0x0fD2cC22...561B8679a
0.05004349 ETH
54669392018-04-19 6:22:112399 days ago1524118931
0x0fD2cC22...561B8679a
0.05000623 ETH
54419602018-04-15 0:18:232404 days ago1523751503
0x0fD2cC22...561B8679a
0.05006037 ETH
54173932018-04-10 20:54:432408 days ago1523393683
0x0fD2cC22...561B8679a
0.05000814 ETH
53915432018-04-06 14:23:032412 days ago1523024583
0x0fD2cC22...561B8679a
0.05000009 ETH
53657702018-04-02 7:32:212416 days ago1522654341
0x0fD2cC22...561B8679a
0.05003567 ETH
53403412018-03-29 1:36:082421 days ago1522287368
0x0fD2cC22...561B8679a
0.05007612 ETH
53138892018-03-24 15:27:232425 days ago1521905243
0x0fD2cC22...561B8679a
0.05003339 ETH
52877692018-03-20 6:37:262429 days ago1521527846
0x0fD2cC22...561B8679a
0.05002453 ETH
52623822018-03-15 23:49:412434 days ago1521157781
0x0fD2cC22...561B8679a
0.05000088 ETH
52370072018-03-11 16:00:452438 days ago1520784045
0x0fD2cC22...561B8679a
0.05002913 ETH
52109982018-03-07 5:58:512442 days ago1520402331
0x0fD2cC22...561B8679a
0.05001657 ETH
51859052018-03-03 0:01:042447 days ago1520035264
0x0fD2cC22...561B8679a
0.05000981 ETH
51616272018-02-26 21:08:342451 days ago1519679314
0x0fD2cC22...561B8679a
0.05002346 ETH
51375172018-02-22 18:13:292455 days ago1519323209
0x0fD2cC22...561B8679a
0.07847285 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.