ETH Price: $3,229.83 (-2.45%)

Contract

0xcFcF7c969532c5d73dfeACFe6dC1D61134A5042c
 

Overview

ETH Balance

0.000000005 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep79434302019-06-12 10:32:531980 days ago1560335573IN
0xcFcF7c96...134A5042c
0 ETH0.0025028550
Transfer79434092019-06-12 10:28:261980 days ago1560335306IN
0xcFcF7c96...134A5042c
0.489747 ETH0.00016848
Sweep79307952019-06-10 11:00:041982 days ago1560164404IN
0xcFcF7c96...134A5042c
0 ETH0.0025028550
Transfer79307692019-06-10 10:53:371982 days ago1560164017IN
0xcFcF7c96...134A5042c
0.49584548 ETH0.0002105110
Sweep79110392019-06-07 8:44:511985 days ago1559897091IN
0xcFcF7c96...134A5042c
0 ETH0.0024996550
Transfer79110182019-06-07 8:41:171985 days ago1559896877IN
0xcFcF7c96...134A5042c
0.6 ETH0.0002105110
Sweep78227192019-05-24 13:56:141999 days ago1558706174IN
0xcFcF7c96...134A5042c
0 ETH0.0024996550
Transfer78226982019-05-24 13:52:101999 days ago1558705930IN
0xcFcF7c96...134A5042c
1 ETH0.0002105110
Sweep78215922019-05-24 9:35:391999 days ago1558690539IN
0xcFcF7c96...134A5042c
0 ETH0.0024996550
Transfer78215732019-05-24 9:31:521999 days ago1558690312IN
0xcFcF7c96...134A5042c
0.4 ETH0.0002105110
Sweep78082632019-05-22 7:22:392001 days ago1558509759IN
0xcFcF7c96...134A5042c
0 ETH0.0025028550
Transfer78082452019-05-22 7:17:012001 days ago1558509421IN
0xcFcF7c96...134A5042c
0.37810923 ETH0.00016848
Sweep78020842019-05-21 8:07:312002 days ago1558426051IN
0xcFcF7c96...134A5042c
0 ETH0.0024996550
Transfer78020662019-05-21 8:03:582002 days ago1558425838IN
0xcFcF7c96...134A5042c
0.5 ETH0.00016848
Sweep77969872019-05-20 12:54:332003 days ago1558356873IN
0xcFcF7c96...134A5042c
0 ETH0.0024996550
Transfer77969672019-05-20 12:51:462003 days ago1558356706IN
0xcFcF7c96...134A5042c
1 ETH0.0002105110
Sweep67884882018-11-28 13:44:022176 days ago1543412642IN
0xcFcF7c96...134A5042c
0 ETH0.0025028550
Transfer67884642018-11-28 13:40:482176 days ago1543412448IN
0xcFcF7c96...134A5042c
0.999 ETH0.0002315611
Sweep67467282018-11-21 17:00:062183 days ago1542819606IN
0xcFcF7c96...134A5042c
0 ETH0.0025028550
Transfer67467092018-11-21 16:55:252183 days ago1542819325IN
0xcFcF7c96...134A5042c
0.322353 ETH0.000146996.98304118
Sweep65015352018-10-12 13:49:002223 days ago1539352140IN
0xcFcF7c96...134A5042c
0 ETH0.0025028550
Transfer65015202018-10-12 13:45:002223 days ago1539351900IN
0xcFcF7c96...134A5042c
0.38400069 ETH0.00008424
Sweep48116112017-12-28 9:10:482511 days ago1514452248IN
0xcFcF7c96...134A5042c
0 ETH0.002552951
Transfer48115662017-12-28 9:01:312511 days ago1514451691IN
0xcFcF7c96...134A5042c
0.499538 ETH0.0004619921.94670086
Sweep47775322017-12-22 16:02:152517 days ago1513958535IN
0xcFcF7c96...134A5042c
0 ETH0.0030034260
View all transactions

Latest 15 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
79434302019-06-12 10:32:531980 days ago1560335573
0xcFcF7c96...134A5042c
0.489747 ETH
79307952019-06-10 11:00:041982 days ago1560164404
0xcFcF7c96...134A5042c
0.49584548 ETH
79110392019-06-07 8:44:511985 days ago1559897091
0xcFcF7c96...134A5042c
0.6 ETH
78227192019-05-24 13:56:141999 days ago1558706174
0xcFcF7c96...134A5042c
1 ETH
78215922019-05-24 9:35:391999 days ago1558690539
0xcFcF7c96...134A5042c
0.4 ETH
78082632019-05-22 7:22:392001 days ago1558509759
0xcFcF7c96...134A5042c
0.37810924 ETH
78020842019-05-21 8:07:312002 days ago1558426051
0xcFcF7c96...134A5042c
0.5 ETH
77969872019-05-20 12:54:332003 days ago1558356873
0xcFcF7c96...134A5042c
1 ETH
67884882018-11-28 13:44:022176 days ago1543412642
0xcFcF7c96...134A5042c
0.999 ETH
67467282018-11-21 17:00:062183 days ago1542819606
0xcFcF7c96...134A5042c
0.322353 ETH
65015352018-10-12 13:49:002223 days ago1539352140
0xcFcF7c96...134A5042c
0.38400069 ETH
48116112017-12-28 9:10:482511 days ago1514452248
0xcFcF7c96...134A5042c
0.499538 ETH
47775322017-12-22 16:02:152517 days ago1513958535
0xcFcF7c96...134A5042c
0.338152 ETH
42484182017-09-07 14:59:552623 days ago1504796395
0xcFcF7c96...134A5042c
0.728 ETH
42482322017-09-07 13:47:332623 days ago1504792053  Contract Creation0 ETH
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.