ETH Price: $2,712.00 (+4.24%)

Contract

0xf649Dd6c106401A879521B67C72Ba06cD5452e0F
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep105505292020-07-28 21:49:121660 days ago1595972952IN
0xf649Dd6c...cD5452e0F
0 ETH0.0032638260
Sweep91021992019-12-13 22:09:221888 days ago1576274962IN
0xf649Dd6c...cD5452e0F
0 ETH0.0012536722
Transfer91021862019-12-13 22:05:511888 days ago1576274751IN
0xf649Dd6c...cD5452e0F
1.40163837 ETH0.000063153
Sweep90283952019-11-30 19:31:541901 days ago1575142314IN
0xf649Dd6c...cD5452e0F
0 ETH0.0011012522
Transfer90283702019-11-30 19:27:041901 days ago1575142024IN
0xf649Dd6c...cD5452e0F
1.33529489 ETH0.00008424
Sweep89452182019-11-16 15:37:041915 days ago1573918624IN
0xf649Dd6c...cD5452e0F
0 ETH0.0011012522
Transfer89451932019-11-16 15:31:201915 days ago1573918280IN
0xf649Dd6c...cD5452e0F
1.10803292 ETH0.000147357
Sweep88923652019-11-07 21:31:581924 days ago1573162318IN
0xf649Dd6c...cD5452e0F
0 ETH0.0011012522
Transfer88923512019-11-07 21:29:101924 days ago1573162150IN
0xf649Dd6c...cD5452e0F
1.12735486 ETH0.00012636
Sweep87981612019-10-23 18:04:231939 days ago1571853863IN
0xf649Dd6c...cD5452e0F
0 ETH0.0011012522
Transfer87981482019-10-23 18:00:351939 days ago1571853635IN
0xf649Dd6c...cD5452e0F
1.30670517 ETH0.0003368116
Sweep87531912019-10-16 16:13:261946 days ago1571242406IN
0xf649Dd6c...cD5452e0F
0 ETH0.0011012522
Transfer87531602019-10-16 16:09:041946 days ago1571242144IN
0xf649Dd6c...cD5452e0F
1.20096112 ETH0.000189459
Sweep86651192019-10-02 20:57:001960 days ago1570049820IN
0xf649Dd6c...cD5452e0F
0 ETH0.0011012522
Transfer86651042019-10-02 20:53:341960 days ago1570049614IN
0xf649Dd6c...cD5452e0F
1.14515544 ETH0.0002105110
Sweep86135882019-09-24 19:20:321968 days ago1569352832IN
0xf649Dd6c...cD5452e0F
0 ETH0.0023276546.5
Transfer86135702019-09-24 19:15:431968 days ago1569352543IN
0xf649Dd6c...cD5452e0F
1.21092058 ETH0.0005473226
Sweep63195812018-09-12 18:32:022345 days ago1536777122IN
0xf649Dd6c...cD5452e0F
0 ETH0.0025028550
Transfer63195602018-09-12 18:27:142345 days ago1536776834IN
0xf649Dd6c...cD5452e0F
0.57480659 ETH0.0002105110
Sweep61082682018-08-08 3:38:202381 days ago1533699500IN
0xf649Dd6c...cD5452e0F
0 ETH0.0066012100
Sweep61081852018-08-08 3:19:232381 days ago1533698363IN
0xf649Dd6c...cD5452e0F
0 ETH0.0065948100
Sweep60638442018-07-31 15:31:302388 days ago1533051090IN
0xf649Dd6c...cD5452e0F
0 ETH0.0050057100
Transfer60638232018-07-31 15:27:362388 days ago1533050856IN
0xf649Dd6c...cD5452e0F
1.39418162 ETH0.000063153
Sweep59745752018-07-16 11:58:232403 days ago1531742303IN
0xf649Dd6c...cD5452e0F
0 ETH0.0050057100
Transfer59745392018-07-16 11:49:492403 days ago1531741789IN
0xf649Dd6c...cD5452e0F
0.63203135 ETH0.0002315611
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
91021992019-12-13 22:09:221888 days ago1576274962
0xf649Dd6c...cD5452e0F
1.40163837 ETH
90283952019-11-30 19:31:541901 days ago1575142314
0xf649Dd6c...cD5452e0F
1.33529489 ETH
89452182019-11-16 15:37:041915 days ago1573918624
0xf649Dd6c...cD5452e0F
1.10803292 ETH
88923652019-11-07 21:31:581924 days ago1573162318
0xf649Dd6c...cD5452e0F
1.12735486 ETH
87981612019-10-23 18:04:231939 days ago1571853863
0xf649Dd6c...cD5452e0F
1.30670517 ETH
87531912019-10-16 16:13:261946 days ago1571242406
0xf649Dd6c...cD5452e0F
1.20096112 ETH
86651192019-10-02 20:57:001960 days ago1570049820
0xf649Dd6c...cD5452e0F
1.14515544 ETH
86135882019-09-24 19:20:321968 days ago1569352832
0xf649Dd6c...cD5452e0F
1.21092058 ETH
63195812018-09-12 18:32:022345 days ago1536777122
0xf649Dd6c...cD5452e0F
0.57480659 ETH
60638442018-07-31 15:31:302388 days ago1533051090
0xf649Dd6c...cD5452e0F
1.39418162 ETH
59745752018-07-16 11:58:232403 days ago1531742303
0xf649Dd6c...cD5452e0F
0.63203135 ETH
59121592018-07-05 21:44:072414 days ago1530827047
0xf649Dd6c...cD5452e0F
0.64708166 ETH
58707012018-06-28 19:21:232421 days ago1530213683
0xf649Dd6c...cD5452e0F
0.68572996 ETH
58364742018-06-22 21:38:292427 days ago1529703509
0xf649Dd6c...cD5452e0F
0.66225166 ETH
57888382018-06-14 18:23:492435 days ago1529000629
0xf649Dd6c...cD5452e0F
0.57549638 ETH
54376022018-04-14 6:35:422496 days ago1523687742
0xf649Dd6c...cD5452e0F
1.19337 ETH
54188412018-04-11 2:30:492500 days ago1523413849
0xf649Dd6c...cD5452e0F
0.9595 ETH
54061692018-04-09 0:14:112502 days ago1523232851
0xf649Dd6c...cD5452e0F
1.50007 ETH
53754482018-04-03 22:10:322507 days ago1522793432
0xf649Dd6c...cD5452e0F
2.88354285 ETH
53501552018-03-30 17:34:372511 days ago1522431277
0xf649Dd6c...cD5452e0F
1.07382 ETH
52537072018-03-14 12:12:072527 days ago1521029527
0xf649Dd6c...cD5452e0F
0.75509 ETH
52474982018-03-13 10:46:442528 days ago1520938004
0xf649Dd6c...cD5452e0F
0.14245 ETH
52301162018-03-10 12:01:212531 days ago1520683281
0xf649Dd6c...cD5452e0F
0.13624 ETH
52246502018-03-09 13:39:522532 days ago1520602792
0xf649Dd6c...cD5452e0F
0.14472 ETH
49652722018-01-24 17:34:172576 days ago1516815257  Contract Creation0 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.