ETH Price: $2,551.08 (+4.72%)

Contract

0x40eec8feFC5FdFB0b729047779ecF0E9d132E94e
 

Overview

ETH Balance

0.03060243866201918 ETH

Eth Value

$78.07 (@ $2,551.08/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer108832642020-09-18 1:32:151463 days ago1600392735IN
0x40eec8fe...9d132E94e
0.03060243 ETH0.000021051
Sweep108375992020-09-11 1:33:571470 days ago1599788037IN
0x40eec8fe...9d132E94e
0 ETH0.00633101111.09960127
Transfer108375782020-09-11 1:29:191470 days ago1599787759IN
0x40eec8fe...9d132E94e
0.15351893 ETH0.000021051
Sweep108021442020-09-05 15:10:441475 days ago1599318644IN
0x40eec8fe...9d132E94e
0 ETH0.01582302265.1
Sweep107918172020-09-04 1:26:331477 days ago1599182793IN
0x40eec8fe...9d132E94e
0 ETH0.01667029292.6
Transfer107917982020-09-04 1:22:311477 days ago1599182551IN
0x40eec8fe...9d132E94e
0.64085915 ETH0.000021051
Transfer107767672020-09-01 17:53:521479 days ago1598982832IN
0x40eec8fe...9d132E94e
2.3 ETH0.01019592485.52
Transfer107766652020-09-01 17:30:111479 days ago1598981411IN
0x40eec8fe...9d132E94e
2.37839418 ETH0.01019592485.52
Sweep107461432020-08-28 1:20:001484 days ago1598577600IN
0x40eec8fe...9d132E94e
0 ETH0.0029461251.7
Transfer107461272020-08-28 1:16:141484 days ago1598577374IN
0x40eec8fe...9d132E94e
0.4185859 ETH0.000021051
Sweep107374902020-08-26 17:30:131485 days ago1598463013IN
0x40eec8fe...9d132E94e
0 ETH0.00833827139.7000016
Sweep107284642020-08-25 8:19:371487 days ago1598343577IN
0x40eec8fe...9d132E94e
0 ETH0.004306872.17099852
Sweep107005822020-08-21 1:16:031491 days ago1597972563IN
0x40eec8fe...9d132E94e
0 ETH0.0055788397.9
Transfer107005632020-08-21 1:12:281491 days ago1597972348IN
0x40eec8fe...9d132E94e
0.26202366 ETH0.000021051
Sweep106946142020-08-20 3:25:091492 days ago1597893909IN
0x40eec8fe...9d132E94e
0 ETH0.00682682114.4
Sweep106887192020-08-19 5:34:301493 days ago1597815270IN
0x40eec8fe...9d132E94e
0 ETH0.00771007135.3
Sweep106886882020-08-19 5:29:151493 days ago1597814955IN
0x40eec8fe...9d132E94e
0 ETH0.00879609147.4
Sweep106821372020-08-18 5:38:241494 days ago1597729104IN
0x40eec8fe...9d132E94e
0 ETH0.00807402135.3
Sweep106784352020-08-17 15:50:101494 days ago1597679410IN
0x40eec8fe...9d132E94e
0 ETH0.0103736173.8
Transfer106550362020-08-14 1:06:471498 days ago1597367207IN
0x40eec8fe...9d132E94e
0.40700546 ETH0.000021051
Transfer106390692020-08-11 14:10:321500 days ago1597155032IN
0x40eec8fe...9d132E94e
3 ETH0.00323442154.02
Transfer106389112020-08-11 13:32:381500 days ago1597152758IN
0x40eec8fe...9d132E94e
3 ETH0.00284886135.66
Sweep106096302020-08-07 1:05:431505 days ago1596762343IN
0x40eec8fe...9d132E94e
0 ETH0.0038464867.5
Transfer106096182020-08-07 1:01:441505 days ago1596762104IN
0x40eec8fe...9d132E94e
0.465277 ETH0.000021051
Sweep105998112020-08-05 12:47:071506 days ago1596631627IN
0x40eec8fe...9d132E94e
0 ETH0.0051275790
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
108375992020-09-11 1:33:571470 days ago1599788037
0x40eec8fe...9d132E94e
0.15351893 ETH
107918172020-09-04 1:26:331477 days ago1599182793
0x40eec8fe...9d132E94e
0.64085915 ETH
107461432020-08-28 1:20:001484 days ago1598577600
0x40eec8fe...9d132E94e
0.41858591 ETH
107005822020-08-21 1:16:031491 days ago1597972563
0x40eec8fe...9d132E94e
0.26202366 ETH
106887192020-08-19 5:34:301493 days ago1597815270
0x40eec8fe...9d132E94e
0.40700547 ETH
106096302020-08-07 1:05:431505 days ago1596762343
0x40eec8fe...9d132E94e
0.465277 ETH
105998112020-08-05 12:47:071506 days ago1596631627
0x40eec8fe...9d132E94e
12 ETH
105642352020-07-31 0:55:421512 days ago1596156942
0x40eec8fe...9d132E94e
0.45085203 ETH
105190862020-07-24 0:51:511519 days ago1595551911
0x40eec8fe...9d132E94e
0.43809191 ETH
104738132020-07-17 0:47:031526 days ago1594946823
0x40eec8fe...9d132E94e
0.42043206 ETH
104649132020-07-15 15:37:441527 days ago1594827464
0x40eec8fe...9d132E94e
4 ETH
104286062020-07-10 0:48:451533 days ago1594342125
0x40eec8fe...9d132E94e
0.43598832 ETH
103833022020-07-03 0:37:061540 days ago1593736626
0x40eec8fe...9d132E94e
0.53045416 ETH
103382302020-06-26 0:36:241547 days ago1593131784
0x40eec8fe...9d132E94e
0.47444256 ETH
102929462020-06-19 0:37:281554 days ago1592527048
0x40eec8fe...9d132E94e
0.74524151 ETH
102476152020-06-12 0:29:411561 days ago1591921781
0x40eec8fe...9d132E94e
0.52552471 ETH
102024842020-06-05 0:24:421568 days ago1591316682
0x40eec8fe...9d132E94e
0.59079224 ETH
101674062020-05-30 13:29:061573 days ago1590845346
0x40eec8fe...9d132E94e
5 ETH
101574202020-05-29 0:14:571575 days ago1590711297
0x40eec8fe...9d132E94e
0.58837037 ETH
101124132020-05-22 0:07:211582 days ago1590106041
0x40eec8fe...9d132E94e
0.49581019 ETH
100674022020-05-15 0:05:461589 days ago1589501146
0x40eec8fe...9d132E94e
0.48824477 ETH
100222372020-05-08 0:04:121596 days ago1588896252
0x40eec8fe...9d132E94e
0.48751627 ETH
99769872020-05-01 0:05:131603 days ago1588291513
0x40eec8fe...9d132E94e
0.54990005 ETH
99318552020-04-24 0:03:371610 days ago1587686617
0x40eec8fe...9d132E94e
0.54624195 ETH
98866032020-04-17 0:01:551617 days ago1587081715
0x40eec8fe...9d132E94e
0.58460682 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.