ETH Price: $2,035.85 (+0.81%)

Contract

0xcD582C4B98d0D71dFd42f6D965718b8E8d92F5a4
 

Overview

ETH Balance

0.000000009684601741 ETH

Eth Value

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

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep89731382019-11-21 7:32:382301 days ago1574321558IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer89731212019-11-21 7:28:502301 days ago1574321330IN
0xcD582C4B...E8d92F5a4
0.08478442 ETH0.000021051
Sweep89311882019-11-14 7:32:232308 days ago1573716743IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer89311742019-11-14 7:25:432308 days ago1573716343IN
0xcD582C4B...E8d92F5a4
0.08654837 ETH0.000021051
Sweep88887642019-11-07 7:30:312315 days ago1573111831IN
0xcD582C4B...E8d92F5a4
0 ETH0.0010998422
Transfer88887442019-11-07 7:25:232315 days ago1573111523IN
0xcD582C4B...E8d92F5a4
0.01001272 ETH0.000021051
Transfer87554962019-10-17 0:47:302337 days ago1571273250IN
0xcD582C4B...E8d92F5a4
0.04360289 ETH0.000021051
Sweep87109592019-10-10 0:52:142344 days ago1570668734IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer87109352019-10-10 0:48:042344 days ago1570668484IN
0xcD582C4B...E8d92F5a4
0.08621476 ETH0.000021051
Sweep86661612019-10-03 0:47:452351 days ago1570063665IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer86661392019-10-03 0:42:512351 days ago1570063371IN
0xcD582C4B...E8d92F5a4
0.0881822 ETH0.000021051
Sweep86213962019-09-26 0:43:442358 days ago1569458624IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer86213762019-09-26 0:41:262358 days ago1569458486IN
0xcD582C4B...E8d92F5a4
0.07453241 ETH0.000021051
Sweep85767342019-09-19 0:44:512365 days ago1568853891IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer85767062019-09-19 0:37:402365 days ago1568853460IN
0xcD582C4B...E8d92F5a4
0.0757388 ETH0.000021051
Sweep85317632019-09-12 0:34:522372 days ago1568248492IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer85317472019-09-12 0:32:162372 days ago1568248336IN
0xcD582C4B...E8d92F5a4
0.09529479 ETH0.000021051
Sweep84868172019-09-05 0:33:132379 days ago1567643593IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer84867892019-09-05 0:27:542379 days ago1567643274IN
0xcD582C4B...E8d92F5a4
0.08959523 ETH0.000021051
Sweep84419002019-08-29 0:34:082386 days ago1567038848IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer84418742019-08-29 0:29:412386 days ago1567038581IN
0xcD582C4B...E8d92F5a4
0.09370982 ETH0.000021051
Sweep83969042019-08-22 0:30:052393 days ago1566433805IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer83968912019-08-22 0:27:042393 days ago1566433624IN
0xcD582C4B...E8d92F5a4
0.09212403 ETH0.000021051
Sweep83518652019-08-15 0:26:512400 days ago1565828811IN
0xcD582C4B...E8d92F5a4
0 ETH0.0011012522
Transfer83518512019-08-15 0:23:482400 days ago1565828628IN
0xcD582C4B...E8d92F5a4
0.09131727 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-89731382019-11-21 7:32:382301 days ago1574321558
0xcD582C4B...E8d92F5a4
0.08478442 ETH
-89311882019-11-14 7:32:232308 days ago1573716743
0xcD582C4B...E8d92F5a4
0.08654838 ETH
-88887642019-11-07 7:30:312315 days ago1573111831
0xcD582C4B...E8d92F5a4
0.05361561 ETH
-87109592019-10-10 0:52:142344 days ago1570668734
0xcD582C4B...E8d92F5a4
0.08621477 ETH
-86661612019-10-03 0:47:452351 days ago1570063665
0xcD582C4B...E8d92F5a4
0.0881822 ETH
-86213962019-09-26 0:43:442358 days ago1569458624
0xcD582C4B...E8d92F5a4
0.07453242 ETH
-85767342019-09-19 0:44:512365 days ago1568853891
0xcD582C4B...E8d92F5a4
0.0757388 ETH
-85317632019-09-12 0:34:522372 days ago1568248492
0xcD582C4B...E8d92F5a4
0.0952948 ETH
-84868172019-09-05 0:33:132379 days ago1567643593
0xcD582C4B...E8d92F5a4
0.08959523 ETH
-84419002019-08-29 0:34:082386 days ago1567038848
0xcD582C4B...E8d92F5a4
0.09370983 ETH
-83969042019-08-22 0:30:052393 days ago1566433805
0xcD582C4B...E8d92F5a4
0.09212404 ETH
-83518652019-08-15 0:26:512400 days ago1565828811
0xcD582C4B...E8d92F5a4
0.09131728 ETH
-83067592019-08-08 0:23:472407 days ago1565223827
0xcD582C4B...E8d92F5a4
0.11526435 ETH
-82165482019-07-25 0:14:522421 days ago1564013692
0xcD582C4B...E8d92F5a4
0.07942215 ETH
-81713842019-07-18 0:12:232428 days ago1563408743
0xcD582C4B...E8d92F5a4
0.0936386 ETH
-81265922019-07-11 0:07:492435 days ago1562803669
0xcD582C4B...E8d92F5a4
0.08886688 ETH
-80815432019-07-04 0:03:162442 days ago1562198596
0xcD582C4B...E8d92F5a4
0.09735 ETH
-80366602019-06-27 0:01:302449 days ago1561593690
0xcD582C4B...E8d92F5a4
0.09993251 ETH
-79917782019-06-19 23:58:102456 days ago1560988690
0xcD582C4B...E8d92F5a4
0.10474551 ETH
-79470002019-06-12 23:57:552463 days ago1560383875
0xcD582C4B...E8d92F5a4
0.10358389 ETH
-79022692019-06-05 23:55:022470 days ago1559778902
0xcD582C4B...E8d92F5a4
0.10037346 ETH
-78575882019-05-29 23:50:092477 days ago1559173809
0xcD582C4B...E8d92F5a4
0.08139564 ETH
-78126762019-05-22 23:53:412484 days ago1558569221
0xcD582C4B...E8d92F5a4
0.08240165 ETH
-77679832019-05-15 23:44:062491 days ago1557963846
0xcD582C4B...E8d92F5a4
0.10355084 ETH
-77230222019-05-08 23:41:432498 days ago1557358903
0xcD582C4B...E8d92F5a4
0.10665342 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.