ETH Price: $3,136.83 (+1.98%)
Gas: 3.29 Gwei
 

Overview

ETH Balance

0.000000008286054679 ETH

Eth Value

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

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep106761382020-08-17 7:12:231626 days ago1597648343IN
0x81ab2adE...E35F7AC87
0 ETH0.00626767109.9881668
Transfer106761192020-08-17 7:07:111626 days ago1597648031IN
0x81ab2adE...E35F7AC87
0.22159281 ETH0.0020419497
Transfer106630162020-08-15 6:23:001628 days ago1597472580IN
0x81ab2adE...E35F7AC87
0.31973525 ETH0.0018945990
Sweep106551612020-08-14 1:29:551629 days ago1597368595IN
0x81ab2adE...E35F7AC87
0 ETH0.00982991172.50000185
Transfer106551392020-08-14 1:26:261629 days ago1597368386IN
0x81ab2adE...E35F7AC87
0.59638458 ETH0.00239981114
Sweep106189592020-08-08 11:39:071635 days ago1596886747IN
0x81ab2adE...E35F7AC87
0 ETH0.0029917152.5
Transfer106189402020-08-08 11:34:581635 days ago1596886498IN
0x81ab2adE...E35F7AC87
0.26760768 ETH0.0009262444
Sweep106142622020-08-07 18:10:551636 days ago1596823855IN
0x81ab2adE...E35F7AC87
0 ETH0.00752202132
Transfer106142342020-08-07 18:05:521636 days ago1596823552IN
0x81ab2adE...E35F7AC87
0.27202197 ETH0.0018945990
Sweep105778142020-08-02 2:56:181641 days ago1596336978IN
0x81ab2adE...E35F7AC87
0 ETH0.0035045761.5000023
Transfer105777922020-08-02 2:53:011641 days ago1596336781IN
0x81ab2adE...E35F7AC87
0.29587293 ETH0.0009051943
Sweep105591692020-07-30 5:41:401644 days ago1596087700IN
0x81ab2adE...E35F7AC87
0 ETH0.0054278295.25
Transfer105591472020-07-30 5:35:541644 days ago1596087354IN
0x81ab2adE...E35F7AC87
0.19895052 ETH0.0012841161
Sweep105473572020-07-28 9:57:271646 days ago1595930247IN
0x81ab2adE...E35F7AC87
0 ETH0.0053291293.53773584
Transfer105473412020-07-28 9:53:211646 days ago1595930001IN
0x81ab2adE...E35F7AC87
0.19977535 ETH0.0013683165
Sweep105352072020-07-26 12:53:481648 days ago1595768028IN
0x81ab2adE...E35F7AC87
0 ETH0.00854775150
Transfer105351852020-07-26 12:48:571648 days ago1595767737IN
0x81ab2adE...E35F7AC87
4.11979305 ETH0.0020419497
Sweep105350532020-07-26 12:17:351648 days ago1595765855IN
0x81ab2adE...E35F7AC87
0 ETH0.00811865142.5
Transfer105350282020-07-26 12:11:351648 days ago1595765495IN
0x81ab2adE...E35F7AC87
1 ETH0.0019787994
Sweep105324172020-07-26 2:44:421648 days ago1595731482IN
0x81ab2adE...E35F7AC87
0 ETH0.0044448378.00000218
Transfer105324012020-07-26 2:41:281648 days ago1595731288IN
0x81ab2adE...E35F7AC87
0.19927603 ETH0.001073651
Sweep105249872020-07-24 22:40:231650 days ago1595630423IN
0x81ab2adE...E35F7AC87
0 ETH0.0044448378
Transfer105249722020-07-24 22:35:461650 days ago1595630146IN
0x81ab2adE...E35F7AC87
0.19874543 ETH0.0013051662
Sweep105136282020-07-23 4:39:331651 days ago1595479173IN
0x81ab2adE...E35F7AC87
0 ETH0.0041883973.5
Transfer105136092020-07-23 4:35:131651 days ago1595478913IN
0x81ab2adE...E35F7AC87
0.19887023 ETH0.0012630660
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
106761382020-08-17 7:12:231626 days ago1597648343
0x81ab2adE...E35F7AC87
0.54132807 ETH
106551612020-08-14 1:29:551629 days ago1597368595
0x81ab2adE...E35F7AC87
0.59638458 ETH
106189592020-08-08 11:39:071635 days ago1596886747
0x81ab2adE...E35F7AC87
0.26760769 ETH
106142622020-08-07 18:10:551636 days ago1596823855
0x81ab2adE...E35F7AC87
0.27202197 ETH
105778142020-08-02 2:56:181641 days ago1596336978
0x81ab2adE...E35F7AC87
0.29587294 ETH
105591692020-07-30 5:41:401644 days ago1596087700
0x81ab2adE...E35F7AC87
0.19895052 ETH
105473572020-07-28 9:57:271646 days ago1595930247
0x81ab2adE...E35F7AC87
0.19977536 ETH
105352072020-07-26 12:53:481648 days ago1595768028
0x81ab2adE...E35F7AC87
4.11979305 ETH
105350532020-07-26 12:17:351648 days ago1595765855
0x81ab2adE...E35F7AC87
1 ETH
105324172020-07-26 2:44:421648 days ago1595731482
0x81ab2adE...E35F7AC87
0.19927604 ETH
105249872020-07-24 22:40:231650 days ago1595630423
0x81ab2adE...E35F7AC87
0.19874543 ETH
105136282020-07-23 4:39:331651 days ago1595479173
0x81ab2adE...E35F7AC87
0.19887024 ETH
104983572020-07-20 19:51:481654 days ago1595274708
0x81ab2adE...E35F7AC87
0.19928265 ETH
104885542020-07-19 7:24:181655 days ago1595143458
0x81ab2adE...E35F7AC87
0.19941646 ETH
104770772020-07-17 12:51:081657 days ago1594990268
0x81ab2adE...E35F7AC87
0.39059295 ETH
104490562020-07-13 4:30:301661 days ago1594614630
0x81ab2adE...E35F7AC87
0.40075954 ETH
104233742020-07-09 5:17:041665 days ago1594271824
0x81ab2adE...E35F7AC87
0.19982806 ETH
104143942020-07-07 20:04:331667 days ago1594152273
0x81ab2adE...E35F7AC87
0.20024349 ETH
103977762020-07-05 6:27:101669 days ago1593930430
0x81ab2adE...E35F7AC87
0.80082833 ETH
103523422020-06-28 5:22:461676 days ago1593321766
0x81ab2adE...E35F7AC87
0.19975218 ETH
103259282020-06-24 3:00:331680 days ago1592967633
0x81ab2adE...E35F7AC87
0.20348597 ETH
103132642020-06-22 3:51:201682 days ago1592797880
0x81ab2adE...E35F7AC87
0.29126696 ETH
102705962020-06-15 13:32:241689 days ago1592227944
0x81ab2adE...E35F7AC87
1.46107708 ETH
101326342020-05-25 3:53:081710 days ago1590378788
0x81ab2adE...E35F7AC87
0.49610557 ETH
70133382019-01-05 7:45:292216 days ago1546674329
0x81ab2adE...E35F7AC87
0.05130804 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.