ETH Price: $3,344.36 (-0.84%)

Contract

0x4DDCE0c73841Fb5C857f68814E6E383A3AFf4e42
 

Overview

ETH Balance

0.00000000276768432 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep90554682019-12-05 15:02:491869 days ago1575558169IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer90554492019-12-05 14:56:161869 days ago1575557776IN
0x4DDCE0c7...A3AFf4e42
0.05001376 ETH0.000021051
Transfer90310172019-12-01 6:25:421873 days ago1575181542IN
0x4DDCE0c7...A3AFf4e42
0.01803345 ETH0.000021051
Sweep89909552019-11-24 6:26:581880 days ago1574576818IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer89909322019-11-24 6:21:361880 days ago1574576496IN
0x4DDCE0c7...A3AFf4e42
0.05002985 ETH0.000021051
Sweep89638812019-11-19 18:33:371884 days ago1574188417IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer89638612019-11-19 18:26:011884 days ago1574187961IN
0x4DDCE0c7...A3AFf4e42
0.05001493 ETH0.000021051
Sweep89392462019-11-15 15:44:241889 days ago1573832664IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer89392252019-11-15 15:37:541889 days ago1573832274IN
0x4DDCE0c7...A3AFf4e42
0.05002427 ETH0.000021051
Sweep89188112019-11-12 6:10:571892 days ago1573539057IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer89187852019-11-12 6:05:531892 days ago1573538753IN
0x4DDCE0c7...A3AFf4e42
0.05001641 ETH0.000021051
Sweep89061542019-11-10 3:22:401894 days ago1573356160IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer89061292019-11-10 3:18:421894 days ago1573355922IN
0x4DDCE0c7...A3AFf4e42
0.05004219 ETH0.000021051
Sweep88935442019-11-08 2:07:081896 days ago1573178828IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer88935272019-11-08 2:01:291896 days ago1573178489IN
0x4DDCE0c7...A3AFf4e42
0.05012955 ETH0.000021051
Sweep88810172019-11-06 1:37:271898 days ago1573004247IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer88810022019-11-06 1:34:181898 days ago1573004058IN
0x4DDCE0c7...A3AFf4e42
0.05004638 ETH0.000021051
Sweep88686822019-11-04 2:00:221900 days ago1572832822IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer88686622019-11-04 1:55:511900 days ago1572832551IN
0x4DDCE0c7...A3AFf4e42
0.05008589 ETH0.000021051
Sweep88467502019-10-31 13:24:491904 days ago1572528289IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer88467382019-10-31 13:22:501904 days ago1572528170IN
0x4DDCE0c7...A3AFf4e42
0.0500158 ETH0.000021051
Sweep88334022019-10-29 9:55:511906 days ago1572342951IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer88333862019-10-29 9:51:471906 days ago1572342707IN
0x4DDCE0c7...A3AFf4e42
0.05000132 ETH0.000021051
Sweep88201952019-10-27 7:02:381908 days ago1572159758IN
0x4DDCE0c7...A3AFf4e42
0 ETH0.0010998422
Transfer88201762019-10-27 6:58:191908 days ago1572159499IN
0x4DDCE0c7...A3AFf4e42
0.05001471 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
90554682019-12-05 15:02:491869 days ago1575558169
0x4DDCE0c7...A3AFf4e42
0.06804722 ETH
89909552019-11-24 6:26:581880 days ago1574576818
0x4DDCE0c7...A3AFf4e42
0.05002986 ETH
89638812019-11-19 18:33:371884 days ago1574188417
0x4DDCE0c7...A3AFf4e42
0.05001493 ETH
89392462019-11-15 15:44:241889 days ago1573832664
0x4DDCE0c7...A3AFf4e42
0.05002427 ETH
89188112019-11-12 6:10:571892 days ago1573539057
0x4DDCE0c7...A3AFf4e42
0.05001641 ETH
89061542019-11-10 3:22:401894 days ago1573356160
0x4DDCE0c7...A3AFf4e42
0.0500422 ETH
88935442019-11-08 2:07:081896 days ago1573178828
0x4DDCE0c7...A3AFf4e42
0.05012955 ETH
88810172019-11-06 1:37:271898 days ago1573004247
0x4DDCE0c7...A3AFf4e42
0.05004638 ETH
88686822019-11-04 2:00:221900 days ago1572832822
0x4DDCE0c7...A3AFf4e42
0.0500859 ETH
88467502019-10-31 13:24:491904 days ago1572528289
0x4DDCE0c7...A3AFf4e42
0.0500158 ETH
88334022019-10-29 9:55:511906 days ago1572342951
0x4DDCE0c7...A3AFf4e42
0.05000133 ETH
88201952019-10-27 7:02:381908 days ago1572159758
0x4DDCE0c7...A3AFf4e42
0.05001471 ETH
88068662019-10-25 3:31:451910 days ago1571974305
0x4DDCE0c7...A3AFf4e42
0.0500872 ETH
87934982019-10-23 0:34:231912 days ago1571790863
0x4DDCE0c7...A3AFf4e42
0.05004852 ETH
87800252019-10-20 21:36:001914 days ago1571607360
0x4DDCE0c7...A3AFf4e42
0.05006975 ETH
87611242019-10-17 22:14:261917 days ago1571350466
0x4DDCE0c7...A3AFf4e42
0.05000831 ETH
87370692019-10-14 3:24:191921 days ago1571023459
0x4DDCE0c7...A3AFf4e42
0.05000818 ETH
87236952019-10-12 0:52:131923 days ago1570841533
0x4DDCE0c7...A3AFf4e42
0.05001572 ETH
87106072019-10-09 23:32:171925 days ago1570663937
0x4DDCE0c7...A3AFf4e42
0.05007027 ETH
86975872019-10-07 22:16:121927 days ago1570486572
0x4DDCE0c7...A3AFf4e42
0.05002144 ETH
86839332019-10-05 19:22:401929 days ago1570303360
0x4DDCE0c7...A3AFf4e42
0.05007656 ETH
86698222019-10-03 14:39:561932 days ago1570113596
0x4DDCE0c7...A3AFf4e42
0.05004451 ETH
86568202019-10-01 13:42:061934 days ago1569937326
0x4DDCE0c7...A3AFf4e42
0.0500141 ETH
86436122019-09-29 12:12:571936 days ago1569759177
0x4DDCE0c7...A3AFf4e42
0.05006608 ETH
86241592019-09-26 11:16:231939 days ago1569496583
0x4DDCE0c7...A3AFf4e42
0.05007546 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.