ETH Price: $2,116.76 (+1.76%)

Contract

0x9E656662f604Fd2ec39559b7Ea5d8eF52ebf7Db2
 

Overview

ETH Balance

0.000000004250005264 ETH

Eth Value

Less Than $0.01 (@ $2,116.76/ETH)

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep84429962019-08-29 4:48:322380 days ago1567054112IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer84429802019-08-29 4:44:022380 days ago1567053842IN
0x9E656662...52ebf7Db2
0.25009446 ETH0.0002105110
Sweep84146292019-08-24 18:44:402384 days ago1566672280IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer84146072019-08-24 18:40:252384 days ago1566672025IN
0x9E656662...52ebf7Db2
0.25044327 ETH0.0002105110
Sweep83948472019-08-21 16:58:372387 days ago1566406717IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer83948292019-08-21 16:54:062387 days ago1566406446IN
0x9E656662...52ebf7Db2
0.25033636 ETH0.0002105110
Sweep83773592019-08-18 23:22:282390 days ago1566170548IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer83773392019-08-18 23:19:152390 days ago1566170355IN
0x9E656662...52ebf7Db2
0.25021578 ETH0.0002105110
Sweep83569572019-08-15 19:31:072393 days ago1565897467IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer83569382019-08-15 19:28:062393 days ago1565897286IN
0x9E656662...52ebf7Db2
0.25045603 ETH0.0002105110
Sweep83389622019-08-13 0:25:232396 days ago1565655923IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer83389432019-08-13 0:19:462396 days ago1565655586IN
0x9E656662...52ebf7Db2
0.25008734 ETH0.0002105110
Sweep83239302019-08-10 16:26:562398 days ago1565454416IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer83239052019-08-10 16:22:562398 days ago1565454176IN
0x9E656662...52ebf7Db2
0.25119971 ETH0.0002105110
Sweep83081852019-08-08 5:56:532401 days ago1565243813IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer83081692019-08-08 5:53:312401 days ago1565243611IN
0x9E656662...52ebf7Db2
0.25001503 ETH0.0002105110
Sweep82890452019-08-05 6:25:552404 days ago1564986355IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer82890312019-08-05 6:23:202404 days ago1564986200IN
0x9E656662...52ebf7Db2
0.25029698 ETH0.0002105110
Sweep82691462019-08-02 4:37:072407 days ago1564720627IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer82691212019-08-02 4:31:412407 days ago1564720301IN
0x9E656662...52ebf7Db2
0.25097358 ETH0.0002105110
Sweep82509862019-07-30 8:45:212410 days ago1564476321IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer82509602019-07-30 8:39:462410 days ago1564475986IN
0x9E656662...52ebf7Db2
0.2503523 ETH0.0002105110
Sweep82323972019-07-27 11:39:192413 days ago1564227559IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
Transfer82323832019-07-27 11:35:432413 days ago1564227343IN
0x9E656662...52ebf7Db2
0.25033238 ETH0.0002105110
Sweep82079232019-07-23 16:12:462416 days ago1563898366IN
0x9E656662...52ebf7Db2
0 ETH0.0011012522
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-84429962019-08-29 4:48:322380 days ago1567054112
0x9E656662...52ebf7Db2
0.25009447 ETH
-84146292019-08-24 18:44:402384 days ago1566672280
0x9E656662...52ebf7Db2
0.25044327 ETH
-83948472019-08-21 16:58:372387 days ago1566406717
0x9E656662...52ebf7Db2
0.25033636 ETH
-83773592019-08-18 23:22:282390 days ago1566170548
0x9E656662...52ebf7Db2
0.25021579 ETH
-83569572019-08-15 19:31:072393 days ago1565897467
0x9E656662...52ebf7Db2
0.25045603 ETH
-83389622019-08-13 0:25:232396 days ago1565655923
0x9E656662...52ebf7Db2
0.25008735 ETH
-83239302019-08-10 16:26:562398 days ago1565454416
0x9E656662...52ebf7Db2
0.25119971 ETH
-83081852019-08-08 5:56:532401 days ago1565243813
0x9E656662...52ebf7Db2
0.25001504 ETH
-82890452019-08-05 6:25:552404 days ago1564986355
0x9E656662...52ebf7Db2
0.25029698 ETH
-82691462019-08-02 4:37:072407 days ago1564720627
0x9E656662...52ebf7Db2
0.25097359 ETH
-82509862019-07-30 8:45:212410 days ago1564476321
0x9E656662...52ebf7Db2
0.25035231 ETH
-82323972019-07-27 11:39:192413 days ago1564227559
0x9E656662...52ebf7Db2
0.25033238 ETH
-82079232019-07-23 16:12:462416 days ago1563898366
0x9E656662...52ebf7Db2
0.25081884 ETH
-81863062019-07-20 7:47:372420 days ago1563608857
0x9E656662...52ebf7Db2
0.2505192 ETH
-81730892019-07-18 6:39:332422 days ago1563431973
0x9E656662...52ebf7Db2
0.25062031 ETH
-81593852019-07-16 2:47:522424 days ago1563245272
0x9E656662...52ebf7Db2
0.25035816 ETH
-81352652019-07-12 8:36:102428 days ago1562920570
0x9E656662...52ebf7Db2
0.25045181 ETH
-81175732019-07-09 14:21:112430 days ago1562682071
0x9E656662...52ebf7Db2
0.25042186 ETH
-81045792019-07-07 13:58:572433 days ago1562507937
0x9E656662...52ebf7Db2
0.25083769 ETH
-80905962019-07-05 9:43:512435 days ago1562319831
0x9E656662...52ebf7Db2
0.25055749 ETH
-80682012019-07-01 22:01:482438 days ago1562018508
0x9E656662...52ebf7Db2
0.25026421 ETH
-80549752019-06-29 20:40:042440 days ago1561840804
0x9E656662...52ebf7Db2
0.25032711 ETH
-80432862019-06-28 0:54:082442 days ago1561683248
0x9E656662...52ebf7Db2
0.25044678 ETH
-80331442019-06-26 10:47:342444 days ago1561546054
0x9E656662...52ebf7Db2
0.25042531 ETH
-80228112019-06-24 20:11:482445 days ago1561407108
0x9E656662...52ebf7Db2
0.25082566 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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

Contract Source Code (Solidity)

/**
 *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"}]

0x6060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029000000000000000000000000a3c1e324ca1ce40db73ed6026c4a177f099b5770

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.