ETH Price: $1,999.82 (-0.19%)

Contract

0x23c8d9ed42b61b7F0B54aB1D46f3bB2b56E39Ca2
 

Overview

ETH Balance

0.000000004837524782 ETH

Eth Value

Less Than $0.01 (@ $1,999.82/ETH)

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep118239742021-02-09 18:42:221874 days ago1612896142IN
0x23c8d9ed...b56E39Ca2
0 ETH0.01495514262.44
Transfer118239472021-02-09 18:36:241874 days ago1612895784IN
0x23c8d9ed...b56E39Ca2
0.05494613 ETH0.000021051
Transfer117784662021-02-02 18:34:571881 days ago1612290897IN
0x23c8d9ed...b56E39Ca2
0.04927601 ETH0.000021051
Sweep117329982021-01-26 18:29:411888 days ago1611685781IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0047857384
Transfer117329822021-01-26 18:26:061888 days ago1611685566IN
0x23c8d9ed...b56E39Ca2
0.0518719 ETH0.000021051
Sweep116873702021-01-19 18:30:111895 days ago1611081011IN
0x23c8d9ed...b56E39Ca2
0 ETH0.00649492114.00000175
Transfer116873542021-01-19 18:26:121895 days ago1611080772IN
0x23c8d9ed...b56E39Ca2
0.0546076 ETH0.000021051
Sweep116417802021-01-12 18:24:371902 days ago1610475877IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0045508279.86
Transfer116417612021-01-12 18:19:281902 days ago1610475568IN
0x23c8d9ed...b56E39Ca2
0.07766673 ETH0.000021051
Sweep115961172021-01-05 18:18:091909 days ago1609870689IN
0x23c8d9ed...b56E39Ca2
0 ETH0.00676981118.8
Transfer115961002021-01-05 18:15:231909 days ago1609870523IN
0x23c8d9ed...b56E39Ca2
0.09053277 ETH0.000021051
Sweep115511102020-12-29 20:39:231916 days ago1609274363IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0032230954.00000175
Sweep115504592020-12-29 18:12:071916 days ago1609265527IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0052654192.4
Transfer115504432020-12-29 18:09:141916 days ago1609265354IN
0x23c8d9ed...b56E39Ca2
0.09409025 ETH0.000021051
Sweep115048292020-12-22 18:12:251923 days ago1608660745IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0032344656.76
Transfer115048052020-12-22 18:06:081923 days ago1608660368IN
0x23c8d9ed...b56E39Ca2
0.09842646 ETH0.000021051
Sweep114591672020-12-15 18:10:281930 days ago1608055828IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0048188784.564
Transfer114591512020-12-15 18:06:511930 days ago1608055611IN
0x23c8d9ed...b56E39Ca2
0.09143466 ETH0.000021051
Sweep114136132020-12-08 18:04:381937 days ago1607450678IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0029404251.6
Transfer114135922020-12-08 18:00:551937 days ago1607450455IN
0x23c8d9ed...b56E39Ca2
0.09862747 ETH0.000021051
Sweep113681142020-12-01 18:00:261944 days ago1606845626IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0028802450.544
Transfer113680882020-12-01 17:54:371944 days ago1606845277IN
0x23c8d9ed...b56E39Ca2
0.10823532 ETH0.000021051
Sweep113224802020-11-24 17:52:061951 days ago1606240326IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0038293967.2
Transfer113224562020-11-24 17:47:191951 days ago1606240039IN
0x23c8d9ed...b56E39Ca2
0.11003111 ETH0.000021051
Sweep112781982020-11-17 22:39:491958 days ago1605652789IN
0x23c8d9ed...b56E39Ca2
0 ETH0.0032139556.40000148
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-118239742021-02-09 18:42:221874 days ago1612896142
0x23c8d9ed...b56E39Ca2
0.10422215 ETH
-117329982021-01-26 18:29:411888 days ago1611685781
0x23c8d9ed...b56E39Ca2
0.0518719 ETH
-116873702021-01-19 18:30:111895 days ago1611081011
0x23c8d9ed...b56E39Ca2
0.0546076 ETH
-116417802021-01-12 18:24:371902 days ago1610475877
0x23c8d9ed...b56E39Ca2
0.07766674 ETH
-115961172021-01-05 18:18:091909 days ago1609870689
0x23c8d9ed...b56E39Ca2
0.09053277 ETH
-115504592020-12-29 18:12:071916 days ago1609265527
0x23c8d9ed...b56E39Ca2
0.09409026 ETH
-115048292020-12-22 18:12:251923 days ago1608660745
0x23c8d9ed...b56E39Ca2
0.09842646 ETH
-114591672020-12-15 18:10:281930 days ago1608055828
0x23c8d9ed...b56E39Ca2
0.09143467 ETH
-114136132020-12-08 18:04:381937 days ago1607450678
0x23c8d9ed...b56E39Ca2
0.09862748 ETH
-113681142020-12-01 18:00:261944 days ago1606845626
0x23c8d9ed...b56E39Ca2
0.10823532 ETH
-113224802020-11-24 17:52:061951 days ago1606240326
0x23c8d9ed...b56E39Ca2
0.11003111 ETH
-112781982020-11-17 22:39:491958 days ago1605652789
0x23c8d9ed...b56E39Ca2
0.12537992 ETH
-108439352020-09-12 0:44:092025 days ago1599871449
0x23c8d9ed...b56E39Ca2
1 ETH
-103360712020-06-25 16:42:102103 days ago1593103330
0x23c8d9ed...b56E39Ca2
0.12544435 ETH
-102805672020-06-17 2:24:562111 days ago1592360696
0x23c8d9ed...b56E39Ca2
0.12500628 ETH
-102251452020-06-08 12:41:362120 days ago1591620096
0x23c8d9ed...b56E39Ca2
0.12533197 ETH
-101744382020-05-31 15:41:042128 days ago1590939664
0x23c8d9ed...b56E39Ca2
0.12505752 ETH
-101239632020-05-23 19:21:362136 days ago1590261696
0x23c8d9ed...b56E39Ca2
0.12527823 ETH
-100708862020-05-15 13:00:352144 days ago1589547635
0x23c8d9ed...b56E39Ca2
0.14210484 ETH
-100128692020-05-06 13:08:052153 days ago1588770485
0x23c8d9ed...b56E39Ca2
0.12521086 ETH
-99569022020-04-27 21:17:282162 days ago1588022248
0x23c8d9ed...b56E39Ca2
0.12514895 ETH
-99040512020-04-19 16:49:292170 days ago1587314969
0x23c8d9ed...b56E39Ca2
0.12509933 ETH
-98494502020-04-11 6:55:522178 days ago1586588152
0x23c8d9ed...b56E39Ca2
0.12536692 ETH
-97959672020-04-03 1:14:292187 days ago1585876469
0x23c8d9ed...b56E39Ca2
0.12508934 ETH
-97417742020-03-25 17:18:162195 days ago1585156696
0x23c8d9ed...b56E39Ca2
0.1251546 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.