ETH Price: $2,638.53 (+0.66%)

Contract

0x4fc654887551961c82BA48BEe3985Ef22634738D
 

Overview

ETH Balance

0.000000005593611407 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep155066182022-09-10 3:48:18770 days ago1662781698IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer155065972022-09-10 3:43:48770 days ago1662781428IN
0x4fc65488...22634738D
0.19965755 ETH0.000165067.84099978
Sweep154630772022-09-03 3:38:27777 days ago1662176307IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer154630652022-09-03 3:36:14777 days ago1662176174IN
0x4fc65488...22634738D
0.199853 ETH0.000153357.28486442
Sweep154191922022-08-27 3:15:59784 days ago1661570159IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer154191792022-08-27 3:13:39784 days ago1661570019IN
0x4fc65488...22634738D
0.21614375 ETH0.0003456816.42146456
Sweep153752042022-08-20 3:17:14791 days ago1660965434IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer153751882022-08-20 3:13:37791 days ago1660965217IN
0x4fc65488...22634738D
0.21122335 ETH0.000110765.26172756
Sweep153309602022-08-13 3:16:28798 days ago1660360588IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer153309472022-08-13 3:12:40798 days ago1660360360IN
0x4fc65488...22634738D
0.21300131 ETH0.000115245.47477413
Sweep152863672022-08-06 3:33:55805 days ago1659756835IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer152863512022-08-06 3:30:36805 days ago1659756636IN
0x4fc65488...22634738D
0.20775507 ETH0.000208739.91554307
Sweep152413332022-07-30 3:09:15812 days ago1659150555IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer152413132022-07-30 3:03:48812 days ago1659150228IN
0x4fc65488...22634738D
0.21964816 ETH0.000104594.96880283
Sweep151964462022-07-23 3:12:39819 days ago1658545959IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer151964222022-07-23 3:08:52819 days ago1658545732IN
0x4fc65488...22634738D
0.20883055 ETH0.000280813.33905128
Sweep151512832022-07-16 3:21:46826 days ago1657941706IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer151512712022-07-16 3:19:51826 days ago1657941591IN
0x4fc65488...22634738D
0.20119162 ETH0.000157067.46112485
Sweep150993772022-07-08 2:55:53834 days ago1657248953IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer150993612022-07-08 2:52:46834 days ago1657248766IN
0x4fc65488...22634738D
0.21387129 ETH0.0003706817.6087264
Sweep150541072022-07-01 3:11:59841 days ago1656645119IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer150540892022-07-01 3:09:02841 days ago1656644942IN
0x4fc65488...22634738D
0.20750671 ETH0.0003598717.09538788
Sweep150055652022-06-22 3:14:55850 days ago1655867695IN
0x4fc65488...22634738D
0 ETH0.0016975530
Transfer150055522022-06-22 3:11:24850 days ago1655867484IN
0x4fc65488...22634738D
0.20780143 ETH0.000449221.33879965
Sweep149598102022-06-14 4:17:50858 days ago1655180270IN
0x4fc65488...22634738D
0 ETH0.0039094569.08998413
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
155066182022-09-10 3:48:18770 days ago1662781698
0x4fc65488...22634738D
0.19965755 ETH
154630772022-09-03 3:38:27777 days ago1662176307
0x4fc65488...22634738D
0.19985301 ETH
154191922022-08-27 3:15:59784 days ago1661570159
0x4fc65488...22634738D
0.21614375 ETH
153752042022-08-20 3:17:14791 days ago1660965434
0x4fc65488...22634738D
0.21122336 ETH
153309602022-08-13 3:16:28798 days ago1660360588
0x4fc65488...22634738D
0.21300132 ETH
152863672022-08-06 3:33:55805 days ago1659756835
0x4fc65488...22634738D
0.20775507 ETH
152413332022-07-30 3:09:15812 days ago1659150555
0x4fc65488...22634738D
0.21964817 ETH
151964462022-07-23 3:12:39819 days ago1658545959
0x4fc65488...22634738D
0.20883055 ETH
151512832022-07-16 3:21:46826 days ago1657941706
0x4fc65488...22634738D
0.20119163 ETH
150993772022-07-08 2:55:53834 days ago1657248953
0x4fc65488...22634738D
0.2138713 ETH
150541072022-07-01 3:11:59841 days ago1656645119
0x4fc65488...22634738D
0.20750672 ETH
150055652022-06-22 3:14:55850 days ago1655867695
0x4fc65488...22634738D
0.20780143 ETH
149598102022-06-14 4:17:50858 days ago1655180270
0x4fc65488...22634738D
0.21041353 ETH
149068462022-06-05 3:27:45867 days ago1654399665
0x4fc65488...22634738D
0.20652096 ETH
148579582022-05-28 3:32:08875 days ago1653708728
0x4fc65488...22634738D
0.22072811 ETH
148028412022-05-19 4:07:35884 days ago1652933255
0x4fc65488...22634738D
0.22175473 ETH
147524332022-05-11 3:19:33892 days ago1652239173
0x4fc65488...22634738D
0.10574774 ETH
147278742022-05-07 5:07:51896 days ago1651900071
0x4fc65488...22634738D
0.10386693 ETH
147023482022-05-03 3:46:42900 days ago1651549602
0x4fc65488...22634738D
0.10259535 ETH
146767312022-04-29 3:10:14904 days ago1651201814
0x4fc65488...22634738D
0.11090184 ETH
146518072022-04-25 4:55:31908 days ago1650862531
0x4fc65488...22634738D
0.1090067 ETH
146261772022-04-21 4:24:04912 days ago1650515044
0x4fc65488...22634738D
0.11188618 ETH
146007462022-04-17 4:42:10916 days ago1650170530
0x4fc65488...22634738D
0.11297167 ETH
145752542022-04-13 5:09:22920 days ago1649826562
0x4fc65488...22634738D
0.11325135 ETH
145502202022-04-09 7:38:02924 days ago1649489882
0x4fc65488...22634738D
0.1245665 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.