ETH Price: $3,206.40 (+1.10%)
Gas: 28.5 Gwei

Contract

0x41E933DD9D4802Ba388F689Ae1c7767E62861bd6
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep54319112018-04-13 7:25:402407 days ago1523604340IN
0x41E933DD...E62861bd6
0 ETH0.003300650
Sweep54170012018-04-10 19:21:592409 days ago1523388119IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer54169712018-04-10 19:15:182409 days ago1523387718IN
0x41E933DD...E62861bd6
2.01520582 ETH0.0010525550
Sweep54167922018-04-10 18:31:352409 days ago1523385095IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer54167612018-04-10 18:24:382409 days ago1523384678IN
0x41E933DD...E62861bd6
1.97776068 ETH0.0010525550
Sweep54160242018-04-10 15:24:222409 days ago1523373862IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer54159842018-04-10 15:16:362409 days ago1523373396IN
0x41E933DD...E62861bd6
1.94334325 ETH0.0010525550
Sweep54104812018-04-09 17:36:152410 days ago1523295375IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer54104162018-04-09 17:23:112410 days ago1523294591IN
0x41E933DD...E62861bd6
2.37143402 ETH0.0010525550
Sweep54025352018-04-08 9:43:412412 days ago1523180621IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer54024952018-04-08 9:34:402412 days ago1523180080IN
0x41E933DD...E62861bd6
2.48050467 ETH0.0010525550
Sweep53966312018-04-07 10:25:472413 days ago1523096747IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer53965992018-04-07 10:18:052413 days ago1523096285IN
0x41E933DD...E62861bd6
2.08749764 ETH0.0010525550
Sweep53957052018-04-07 6:52:462413 days ago1523083966IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer53956602018-04-07 6:39:112413 days ago1523083151IN
0x41E933DD...E62861bd6
2.06946584 ETH0.0010525550
Sweep53856272018-04-05 14:54:132414 days ago1522940053IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer53855642018-04-05 14:36:262414 days ago1522938986IN
0x41E933DD...E62861bd6
2.04240257 ETH0.0010525550
Sweep53750672018-04-03 20:45:322416 days ago1522788332IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer53750352018-04-03 20:35:102416 days ago1522787710IN
0x41E933DD...E62861bd6
2.58052798 ETH0.0010525550
Sweep53738272018-04-03 15:44:412416 days ago1522770281IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer53737932018-04-03 15:34:442416 days ago1522769684IN
0x41E933DD...E62861bd6
2.66787905 ETH0.0010525550
Sweep53726832018-04-03 11:05:512416 days ago1522753551IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer53726292018-04-03 10:54:142416 days ago1522752854IN
0x41E933DD...E62861bd6
2.63914108 ETH0.0010525550
Sweep53719832018-04-03 8:20:212417 days ago1522743621IN
0x41E933DD...E62861bd6
0 ETH0.0025028550
Transfer53719222018-04-03 8:06:392417 days ago1522742799IN
0x41E933DD...E62861bd6
2.59730095 ETH0.0010525550
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
54170012018-04-10 19:21:592409 days ago1523388119
0x41E933DD...E62861bd6
2.01520582 ETH
54167922018-04-10 18:31:352409 days ago1523385095
0x41E933DD...E62861bd6
1.97776068 ETH
54160242018-04-10 15:24:222409 days ago1523373862
0x41E933DD...E62861bd6
1.94334325 ETH
54104812018-04-09 17:36:152410 days ago1523295375
0x41E933DD...E62861bd6
2.37143402 ETH
54025352018-04-08 9:43:412412 days ago1523180621
0x41E933DD...E62861bd6
2.48050467 ETH
53966312018-04-07 10:25:472413 days ago1523096747
0x41E933DD...E62861bd6
2.08749764 ETH
53957052018-04-07 6:52:462413 days ago1523083966
0x41E933DD...E62861bd6
2.06946584 ETH
53856272018-04-05 14:54:132414 days ago1522940053
0x41E933DD...E62861bd6
2.04240257 ETH
53750672018-04-03 20:45:322416 days ago1522788332
0x41E933DD...E62861bd6
2.58052798 ETH
53738272018-04-03 15:44:412416 days ago1522770281
0x41E933DD...E62861bd6
2.66787905 ETH
53726832018-04-03 11:05:512416 days ago1522753551
0x41E933DD...E62861bd6
2.63914108 ETH
53719832018-04-03 8:20:212417 days ago1522743621
0x41E933DD...E62861bd6
2.59730095 ETH
50637382018-02-10 7:51:442469 days ago1518249104
0x41E933DD...E62861bd6
0.57038687 ETH
50517292018-02-08 7:31:182471 days ago1518075078
0x41E933DD...E62861bd6
0.5634962 ETH
50479942018-02-07 16:23:542471 days ago1518020634
0x41E933DD...E62861bd6
0.57073636 ETH
49395672018-01-20 8:45:352490 days ago1516437935
0x41E933DD...E62861bd6
0.35943211 ETH
49229032018-01-17 9:38:132493 days ago1516181893
0x41E933DD...E62861bd6
0.30669827 ETH
49068942018-01-14 11:59:302495 days ago1515931170
0x41E933DD...E62861bd6
0.34537334 ETH
49063582018-01-14 9:36:582496 days ago1515922618
0x41E933DD...E62861bd6
0.35335633 ETH
49057942018-01-14 7:17:502496 days ago1515914270
0x41E933DD...E62861bd6
0.33669908 ETH
48845542018-01-10 9:36:252500 days ago1515576985
0x41E933DD...E62861bd6
0.39521335 ETH
48799182018-01-09 12:42:352500 days ago1515501755
0x41E933DD...E62861bd6
0.3868454 ETH
48740772018-01-08 10:44:392501 days ago1515408279
0x41E933DD...E62861bd6
0.41446815 ETH
48597112018-01-05 19:31:482504 days ago1515180708
0x41E933DD...E62861bd6
0.47106015 ETH
48543172018-01-04 19:19:262505 days ago1515093566
0x41E933DD...E62861bd6
0.50618032 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.