ETH Price: $2,765.75 (+4.78%)

Contract

0x177BF8FC97997aeE9C12AB5a14D786dBDEF47066
 

Overview

ETH Balance

0.000000007195988192 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep97397252020-03-25 9:32:381795 days ago1585128758IN
0x177BF8FC...BDEF47066
0 ETH0.0012536722
Transfer97397012020-03-25 9:27:411795 days ago1585128461IN
0x177BF8FC...BDEF47066
0.0822831 ETH0.0002105110
Transfer96070552020-03-04 21:12:151815 days ago1583356335IN
0x177BF8FC...BDEF47066
0.00418496 ETH0.000021051
Transfer92433262020-01-09 0:47:391871 days ago1578530859IN
0x177BF8FC...BDEF47066
0.01235068 ETH0.000021051
Sweep91294532019-12-19 6:52:561892 days ago1576738376IN
0x177BF8FC...BDEF47066
0 ETH0.0012536722
Transfer91294362019-12-19 6:49:201892 days ago1576738160IN
0x177BF8FC...BDEF47066
0.80069168 ETH0.000021051
Sweep90067392019-11-26 23:17:301914 days ago1574810250IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
Transfer90067222019-11-26 23:13:031914 days ago1574809983IN
0x177BF8FC...BDEF47066
1.01202318 ETH0.000021051
Sweep89806612019-11-22 13:28:571919 days ago1574429337IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
Transfer89806452019-11-22 13:25:491919 days ago1574429149IN
0x177BF8FC...BDEF47066
1.01548772 ETH0.000021051
Sweep89517012019-11-17 17:25:141924 days ago1574011514IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
Transfer89516842019-11-17 17:21:081924 days ago1574011268IN
0x177BF8FC...BDEF47066
1.01353488 ETH0.000021051
Sweep89232272019-11-12 23:40:441928 days ago1573602044IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
Transfer89232142019-11-12 23:37:251928 days ago1573601845IN
0x177BF8FC...BDEF47066
1.0108465 ETH0.000021051
Sweep88898352019-11-07 11:47:001934 days ago1573127220IN
0x177BF8FC...BDEF47066
0 ETH0.0015017130
Transfer88898132019-11-07 11:42:151934 days ago1573126935IN
0x177BF8FC...BDEF47066
1.0142221 ETH0.000021051
Sweep88593962019-11-02 14:26:521939 days ago1572704812IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
Transfer88593802019-11-02 14:22:211939 days ago1572704541IN
0x177BF8FC...BDEF47066
1.02270979 ETH0.000021051
Sweep88286082019-10-28 15:25:031944 days ago1572276303IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
Transfer88285882019-10-28 15:20:561944 days ago1572276056IN
0x177BF8FC...BDEF47066
1.01758609 ETH0.000021051
Sweep88012132019-10-24 5:40:321948 days ago1571895632IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
Transfer88011932019-10-24 5:37:031948 days ago1571895423IN
0x177BF8FC...BDEF47066
1.12418011 ETH0.000021051
Sweep87702072019-10-19 8:27:221953 days ago1571473642IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
Transfer87701902019-10-19 8:22:471953 days ago1571473367IN
0x177BF8FC...BDEF47066
1.0180571 ETH0.000021051
Sweep87450652019-10-15 9:27:131957 days ago1571131633IN
0x177BF8FC...BDEF47066
0 ETH0.0011012522
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
97397252020-03-25 9:32:381795 days ago1585128758
0x177BF8FC...BDEF47066
0.09881874 ETH
91294532019-12-19 6:52:561892 days ago1576738376
0x177BF8FC...BDEF47066
0.80069168 ETH
90067392019-11-26 23:17:301914 days ago1574810250
0x177BF8FC...BDEF47066
1.01202318 ETH
89806612019-11-22 13:28:571919 days ago1574429337
0x177BF8FC...BDEF47066
1.01548772 ETH
89517012019-11-17 17:25:141924 days ago1574011514
0x177BF8FC...BDEF47066
1.01353488 ETH
89232272019-11-12 23:40:441928 days ago1573602044
0x177BF8FC...BDEF47066
1.0108465 ETH
88898352019-11-07 11:47:001934 days ago1573127220
0x177BF8FC...BDEF47066
1.0142221 ETH
88593962019-11-02 14:26:521939 days ago1572704812
0x177BF8FC...BDEF47066
1.02270979 ETH
88286082019-10-28 15:25:031944 days ago1572276303
0x177BF8FC...BDEF47066
1.01758609 ETH
88012132019-10-24 5:40:321948 days ago1571895632
0x177BF8FC...BDEF47066
1.12418011 ETH
87702072019-10-19 8:27:221953 days ago1571473642
0x177BF8FC...BDEF47066
1.0180571 ETH
87450652019-10-15 9:27:131957 days ago1571131633
0x177BF8FC...BDEF47066
1.02469058 ETH
87114002019-10-10 2:35:461962 days ago1570674946
0x177BF8FC...BDEF47066
1.01504957 ETH
86791782019-10-05 1:25:441967 days ago1570238744
0x177BF8FC...BDEF47066
1.0141585 ETH
86472462019-09-30 1:37:311972 days ago1569807451
0x177BF8FC...BDEF47066
1.02257542 ETH
86152682019-09-25 1:44:521977 days ago1569375892
0x177BF8FC...BDEF47066
1.01487979 ETH
85849122019-09-20 7:49:001982 days ago1568965740
0x177BF8FC...BDEF47066
1.22169977 ETH
85463962019-09-14 7:35:281988 days ago1568446528
0x177BF8FC...BDEF47066
1.01071653 ETH
85154312019-09-09 11:39:421993 days ago1568029182
0x177BF8FC...BDEF47066
1.28864986 ETH
84817522019-09-04 5:30:401998 days ago1567575040
0x177BF8FC...BDEF47066
1.01895539 ETH
84523642019-08-30 15:28:372003 days ago1567178917
0x177BF8FC...BDEF47066
1.02108159 ETH
84264162019-08-26 14:32:542007 days ago1566829974
0x177BF8FC...BDEF47066
1.01204662 ETH
83969572019-08-22 0:43:352011 days ago1566434615
0x177BF8FC...BDEF47066
1.01260903 ETH
83622892019-08-16 15:23:262017 days ago1565969006
0x177BF8FC...BDEF47066
1.01608916 ETH
83349292019-08-12 9:28:332021 days ago1565602113
0x177BF8FC...BDEF47066
1.01177381 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.