ETH Price: $2,345.24 (-5.57%)
Gas: 0.63 Gwei

Contract

0xEE9583D30b3BF70e0Da72D8560B6Bc1aDDAD13A4
 

Overview

ETH Balance

0.000000006565991286 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep63127102018-09-11 15:26:252360 days ago1536679585IN
0xEE9583D3...aDDAD13A4
0 ETH0.0025028550
Transfer63126832018-09-11 15:20:202360 days ago1536679220IN
0xEE9583D3...aDDAD13A4
0.30251485 ETH0.000021051
Sweep62709992018-09-04 15:20:452367 days ago1536074445IN
0xEE9583D3...aDDAD13A4
0 ETH0.0025028550
Transfer62709842018-09-04 15:16:192367 days ago1536074179IN
0xEE9583D3...aDDAD13A4
1.0003707 ETH0.000021051
Sweep62376772018-08-30 0:33:452373 days ago1535589225IN
0xEE9583D3...aDDAD13A4
0 ETH0.0025028550
Transfer62376592018-08-30 0:29:012373 days ago1535588941IN
0xEE9583D3...aDDAD13A4
1.0013936 ETH0.000021051
Sweep62036292018-08-24 6:45:442378 days ago1535093144IN
0xEE9583D3...aDDAD13A4
0 ETH0.0025028550
Transfer62035942018-08-24 6:36:342378 days ago1535092594IN
0xEE9583D3...aDDAD13A4
1.00028842 ETH0.000021051
Sweep61702882018-08-18 15:43:212384 days ago1534607001IN
0xEE9583D3...aDDAD13A4
0 ETH0.0050057100
Transfer61702592018-08-18 15:36:452384 days ago1534606605IN
0xEE9583D3...aDDAD13A4
1.00010232 ETH0.000021051
Sweep61322982018-08-12 5:06:422390 days ago1534050402IN
0xEE9583D3...aDDAD13A4
0 ETH0.0050057100
Transfer61322842018-08-12 5:03:112390 days ago1534050191IN
0xEE9583D3...aDDAD13A4
1.00061017 ETH0.000021051
Sweep60993922018-08-06 15:39:172396 days ago1533569957IN
0xEE9583D3...aDDAD13A4
0 ETH0.0050057100
Transfer60993652018-08-06 15:32:372396 days ago1533569557IN
0xEE9583D3...aDDAD13A4
1.00006607 ETH0.000021051
Sweep60637002018-07-31 14:53:042402 days ago1533048784IN
0xEE9583D3...aDDAD13A4
0 ETH0.0049993100
Transfer60636762018-07-31 14:48:452402 days ago1533048525IN
0xEE9583D3...aDDAD13A4
1.00031479 ETH0.000021051
Sweep60301772018-07-25 23:23:422408 days ago1532561022IN
0xEE9583D3...aDDAD13A4
0 ETH0.0050057100
Transfer60301552018-07-25 23:17:142408 days ago1532560634IN
0xEE9583D3...aDDAD13A4
1.00109753 ETH0.000021051
Sweep60028612018-07-21 8:23:162412 days ago1532161396IN
0xEE9583D3...aDDAD13A4
0 ETH0.0050057100
Transfer60028392018-07-21 8:17:522412 days ago1532161072IN
0xEE9583D3...aDDAD13A4
1.00123139 ETH0.000021051
Sweep59740422018-07-16 9:40:552417 days ago1531734055IN
0xEE9583D3...aDDAD13A4
0 ETH0.0050057100
Transfer59739522018-07-16 9:18:552417 days ago1531732735IN
0xEE9583D3...aDDAD13A4
1.00105059 ETH0.000021051
Sweep59485062018-07-12 3:27:562421 days ago1531366076IN
0xEE9583D3...aDDAD13A4
0 ETH0.0050057100
Transfer59484832018-07-12 3:22:152421 days ago1531365735IN
0xEE9583D3...aDDAD13A4
1.00041879 ETH0.000021051
Sweep59205112018-07-07 8:04:552426 days ago1530950695IN
0xEE9583D3...aDDAD13A4
0 ETH0.00525598105
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
63127102018-09-11 15:26:252360 days ago1536679585
0xEE9583D3...aDDAD13A4
0.30251485 ETH
62709992018-09-04 15:20:452367 days ago1536074445
0xEE9583D3...aDDAD13A4
1.00037071 ETH
62376772018-08-30 0:33:452373 days ago1535589225
0xEE9583D3...aDDAD13A4
1.0013936 ETH
62036292018-08-24 6:45:442378 days ago1535093144
0xEE9583D3...aDDAD13A4
1.00028842 ETH
61702882018-08-18 15:43:212384 days ago1534607001
0xEE9583D3...aDDAD13A4
1.00010232 ETH
61322982018-08-12 5:06:422390 days ago1534050402
0xEE9583D3...aDDAD13A4
1.00061018 ETH
60993922018-08-06 15:39:172396 days ago1533569957
0xEE9583D3...aDDAD13A4
1.00006608 ETH
60637002018-07-31 14:53:042402 days ago1533048784
0xEE9583D3...aDDAD13A4
1.00031479 ETH
60301772018-07-25 23:23:422408 days ago1532561022
0xEE9583D3...aDDAD13A4
1.00109754 ETH
60028612018-07-21 8:23:162412 days ago1532161396
0xEE9583D3...aDDAD13A4
1.00123139 ETH
59740422018-07-16 9:40:552417 days ago1531734055
0xEE9583D3...aDDAD13A4
1.0010506 ETH
59485062018-07-12 3:27:562421 days ago1531366076
0xEE9583D3...aDDAD13A4
1.00041879 ETH
59205112018-07-07 8:04:552426 days ago1530950695
0xEE9583D3...aDDAD13A4
1.0002298 ETH
58954532018-07-03 0:47:032431 days ago1530578823
0xEE9583D3...aDDAD13A4
1.00084044 ETH
58617202018-06-27 6:14:562436 days ago1530080096
0xEE9583D3...aDDAD13A4
1.00069186 ETH
58289792018-06-21 14:52:052442 days ago1529592725
0xEE9583D3...aDDAD13A4
1.00033998 ETH
57963432018-06-16 1:33:342448 days ago1529112814
0xEE9583D3...aDDAD13A4
1.00072676 ETH
57670912018-06-10 23:02:282453 days ago1528671748
0xEE9583D3...aDDAD13A4
1.00125068 ETH
57403712018-06-06 5:23:352457 days ago1528262615
0xEE9583D3...aDDAD13A4
1.00154852 ETH
57138642018-06-01 12:30:352462 days ago1527856235
0xEE9583D3...aDDAD13A4
1.00138705 ETH
56885512018-05-28 0:45:412467 days ago1527468341
0xEE9583D3...aDDAD13A4
1.00068821 ETH
56622242018-05-23 9:07:012471 days ago1527066421
0xEE9583D3...aDDAD13A4
1.00055394 ETH
56387072018-05-19 4:35:532475 days ago1526704553
0xEE9583D3...aDDAD13A4
1.00030393 ETH
56140452018-05-14 20:23:562480 days ago1526329436
0xEE9583D3...aDDAD13A4
1.00034587 ETH
55857032018-05-09 21:23:322485 days ago1525901012
0xEE9583D3...aDDAD13A4
1.00091154 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.