ETH Price: $2,738.96 (+2.62%)

Contract

0x9C50651e0a284a73c0C5DE0c05574BCDa7744691
 

Overview

ETH Balance

0.024839916641022173 ETH

Eth Value

$68.04 (@ $2,738.96/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer54102052018-04-09 16:35:472503 days ago1523291747IN
0x9C50651e...Da7744691
0.02483991 ETH0.000021051
Sweep53680492018-04-02 16:43:022510 days ago1522687382IN
0x9C50651e...Da7744691
0 ETH0.0024996550
Transfer53680122018-04-02 16:32:002510 days ago1522686720IN
0x9C50651e...Da7744691
0.06800759 ETH0.000021051
Sweep53262282018-03-26 16:38:452517 days ago1522082325IN
0x9C50651e...Da7744691
0 ETH0.0024996550
Transfer53261982018-03-26 16:31:212517 days ago1522081881IN
0x9C50651e...Da7744691
0.06356862 ETH0.000021051
Sweep52844882018-03-19 17:35:142524 days ago1521480914IN
0x9C50651e...Da7744691
0 ETH0.0024996550
Transfer52844532018-03-19 17:24:492524 days ago1521480289IN
0x9C50651e...Da7744691
0.02950882 ETH0.000021051
Transfer52432262018-03-12 17:19:502531 days ago1520875190IN
0x9C50651e...Da7744691
0.03858249 ETH0.000021051
Sweep52019662018-03-05 17:20:292538 days ago1520270429IN
0x9C50651e...Da7744691
0 ETH0.0024996550
Transfer52019322018-03-05 17:11:382538 days ago1520269898IN
0x9C50651e...Da7744691
0.06996928 ETH0.000021051
Sweep51952812018-03-04 13:58:432539 days ago1520171923IN
0x9C50651e...Da7744691
0 ETH0.0025028550
Transfer51952562018-03-04 13:53:402539 days ago1520171620IN
0x9C50651e...Da7744691
1.5833 ETH0.0002105110
Sweep51607022018-02-26 17:25:132545 days ago1519665913IN
0x9C50651e...Da7744691
0 ETH0.0024996550
Transfer51606532018-02-26 17:10:292545 days ago1519665029IN
0x9C50651e...Da7744691
0.07001891 ETH0.000021051
Sweep51197352018-02-19 17:14:462552 days ago1519060486IN
0x9C50651e...Da7744691
0 ETH0.0024996550
Transfer51196802018-02-19 17:01:432552 days ago1519059703IN
0x9C50651e...Da7744691
0.07150431 ETH0.000021051
Sweep50780102018-02-12 17:04:322559 days ago1518455072IN
0x9C50651e...Da7744691
0 ETH0.0044993790
Transfer50779812018-02-12 16:58:082559 days ago1518454688IN
0x9C50651e...Da7744691
0.05616314 ETH0.000021051
Sweep50406162018-02-06 10:36:062565 days ago1517913366IN
0x9C50651e...Da7744691
0 ETH0.0045051390
Transfer50405802018-02-06 10:26:252565 days ago1517912785IN
0x9C50651e...Da7744691
1.9973 ETH0.0004210220
Sweep50362852018-02-05 17:00:412566 days ago1517850041IN
0x9C50651e...Da7744691
0 ETH0.0044993790
Transfer50362582018-02-05 16:53:482566 days ago1517849628IN
0x9C50651e...Da7744691
0.05107249 ETH0.000021051
Sweep49949122018-01-29 16:54:322573 days ago1517244872IN
0x9C50651e...Da7744691
0 ETH0.0045051390
Transfer49948802018-01-29 16:45:512573 days ago1517244351IN
0x9C50651e...Da7744691
0.09069568 ETH0.000021051
Sweep49532852018-01-22 16:46:112580 days ago1516639571IN
0x9C50651e...Da7744691
0 ETH0.0045051390
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
53680492018-04-02 16:43:022510 days ago1522687382
0x9C50651e...Da7744691
0.0680076 ETH
53262282018-03-26 16:38:452517 days ago1522082325
0x9C50651e...Da7744691
0.06356862 ETH
52844882018-03-19 17:35:142524 days ago1521480914
0x9C50651e...Da7744691
0.06809132 ETH
52019662018-03-05 17:20:292538 days ago1520270429
0x9C50651e...Da7744691
0.06996929 ETH
51952812018-03-04 13:58:432539 days ago1520171923
0x9C50651e...Da7744691
1.5833 ETH
51607022018-02-26 17:25:132545 days ago1519665913
0x9C50651e...Da7744691
0.07001891 ETH
51197352018-02-19 17:14:462552 days ago1519060486
0x9C50651e...Da7744691
0.07150432 ETH
50780102018-02-12 17:04:322559 days ago1518455072
0x9C50651e...Da7744691
0.05616314 ETH
50406162018-02-06 10:36:062565 days ago1517913366
0x9C50651e...Da7744691
1.9973 ETH
50362852018-02-05 17:00:412566 days ago1517850041
0x9C50651e...Da7744691
0.05107249 ETH
49949122018-01-29 16:54:322573 days ago1517244872
0x9C50651e...Da7744691
0.09069569 ETH
49532852018-01-22 16:46:112580 days ago1516639571
0x9C50651e...Da7744691
0.09195342 ETH
49134502018-01-15 16:42:242587 days ago1516034544
0x9C50651e...Da7744691
0.11448129 ETH
48753562018-01-08 16:35:422594 days ago1515429342
0x9C50651e...Da7744691
0.11288265 ETH
48367842018-01-01 16:31:532601 days ago1514824313
0x9C50651e...Da7744691
0.11788378 ETH
47954762017-12-25 16:27:272608 days ago1514219247
0x9C50651e...Da7744691
0.11042826 ETH
47555472017-12-18 17:39:252615 days ago1513618765
0x9C50651e...Da7744691
0.08881141 ETH
47150752017-12-11 16:35:362622 days ago1513010136
0x9C50651e...Da7744691
0.15154454 ETH
46683042017-12-03 12:43:022630 days ago1512304982
0x9C50651e...Da7744691
0.17867974 ETH
46115932017-11-24 6:27:422639 days ago1511504862
0x9C50651e...Da7744691
0.20000784 ETH
45509282017-11-14 11:53:462649 days ago1510660426
0x9C50651e...Da7744691
0.20003093 ETH
44885012017-11-04 11:37:482659 days ago1509795468
0x9C50651e...Da7744691
0.19909514 ETH
44277302017-10-25 15:56:362669 days ago1508946996
0x9C50651e...Da7744691
0.19903345 ETH
43681632017-10-15 14:13:152679 days ago1508076795
0x9C50651e...Da7744691
0.199044 ETH
43339892017-10-03 18:41:042691 days ago1507056064
0x9C50651e...Da7744691
0.19908552 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.