ETH Price: $2,615.57 (-6.08%)

Contract

0x87d44D5460DC8045759483A87a12248b76530406
 

Overview

ETH Balance

0.000000009662898912 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep155453452022-09-16 9:39:35876 days ago1663321175IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer155453292022-09-16 9:36:11876 days ago1663320971IN
0x87d44D54...b76530406
0.15307488 ETH0.000141776.73480868
Sweep155248752022-09-13 4:15:31879 days ago1663042531IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer155248582022-09-13 4:12:22879 days ago1663042342IN
0x87d44D54...b76530406
0.20085358 ETH0.000125825.97695764
Sweep155082102022-09-10 10:04:06882 days ago1662804246IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer155081922022-09-10 10:00:23882 days ago1662804023IN
0x87d44D54...b76530406
0.20100933 ETH0.000113145.3749249
Sweep154922922022-09-07 20:05:22884 days ago1662581122IN
0x87d44D54...b76530406
0 ETH0.0024971144.13026048
Transfer154922732022-09-07 20:00:32884 days ago1662580832IN
0x87d44D54...b76530406
0.20027162 ETH0.0007625436.2237291
Sweep154769192022-09-05 9:03:24887 days ago1662368604IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer154769032022-09-05 8:59:02887 days ago1662368342IN
0x87d44D54...b76530406
0.20033242 ETH0.000143726.82752294
Sweep154610322022-09-02 19:36:57889 days ago1662147417IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer154610132022-09-02 19:33:36889 days ago1662147216IN
0x87d44D54...b76530406
0.20023801 ETH0.0006829932.44464883
Sweep154448242022-08-31 5:39:48892 days ago1661924388IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer154448042022-08-31 5:34:43892 days ago1661924083IN
0x87d44D54...b76530406
0.20080767 ETH0.0002409211.44467197
Sweep154273822022-08-28 10:57:09895 days ago1661684229IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer154273692022-08-28 10:54:46895 days ago1661684086IN
0x87d44D54...b76530406
0.20039786 ETH0.000181368.61551946
Sweep154092912022-08-25 13:15:36898 days ago1661433336IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer154092792022-08-25 13:12:52898 days ago1661433172IN
0x87d44D54...b76530406
0.20043044 ETH0.0002509711.92217747
Sweep153912452022-08-22 16:09:28900 days ago1661184568IN
0x87d44D54...b76530406
0 ETH0.0020346235.9568977
Transfer153912222022-08-22 16:04:23900 days ago1661184263IN
0x87d44D54...b76530406
0.20061976 ETH0.0008997942.74346784
Sweep153754952022-08-20 4:23:44903 days ago1660969424IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer153754752022-08-20 4:20:08903 days ago1660969208IN
0x87d44D54...b76530406
0.20034229 ETH0.000158897.54816001
Sweep153595082022-08-17 15:26:15905 days ago1660749975IN
0x87d44D54...b76530406
0 ETH0.0016975530
Transfer153594872022-08-17 15:22:41905 days ago1660749761IN
0x87d44D54...b76530406
0.20063357 ETH0.000272312.93532608
Sweep153433182022-08-15 2:03:22908 days ago1660529002IN
0x87d44D54...b76530406
0 ETH0.0016975530
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
155453452022-09-16 9:39:35876 days ago1663321175
0x87d44D54...b76530406
0.15307488 ETH
155248752022-09-13 4:15:31879 days ago1663042531
0x87d44D54...b76530406
0.20085359 ETH
155082102022-09-10 10:04:06882 days ago1662804246
0x87d44D54...b76530406
0.20100933 ETH
154922922022-09-07 20:05:22884 days ago1662581122
0x87d44D54...b76530406
0.20027162 ETH
154769192022-09-05 9:03:24887 days ago1662368604
0x87d44D54...b76530406
0.20033243 ETH
154610322022-09-02 19:36:57889 days ago1662147417
0x87d44D54...b76530406
0.20023802 ETH
154448242022-08-31 5:39:48892 days ago1661924388
0x87d44D54...b76530406
0.20080767 ETH
154273822022-08-28 10:57:09895 days ago1661684229
0x87d44D54...b76530406
0.20039787 ETH
154092912022-08-25 13:15:36898 days ago1661433336
0x87d44D54...b76530406
0.20043045 ETH
153912452022-08-22 16:09:28900 days ago1661184568
0x87d44D54...b76530406
0.20061976 ETH
153754952022-08-20 4:23:44903 days ago1660969424
0x87d44D54...b76530406
0.20034229 ETH
153595082022-08-17 15:26:15905 days ago1660749975
0x87d44D54...b76530406
0.20063358 ETH
153433182022-08-15 2:03:22908 days ago1660529002
0x87d44D54...b76530406
0.20075637 ETH
153272272022-08-12 13:24:56911 days ago1660310696
0x87d44D54...b76530406
0.20077524 ETH
153110912022-08-10 0:08:36913 days ago1660090116
0x87d44D54...b76530406
0.20027688 ETH
152958122022-08-07 14:52:13915 days ago1659883933
0x87d44D54...b76530406
0.20002146 ETH
152795822022-08-05 2:18:30918 days ago1659665910
0x87d44D54...b76530406
0.20032734 ETH
152642852022-08-02 16:56:20920 days ago1659459380
0x87d44D54...b76530406
0.20011832 ETH
152497642022-07-31 10:43:37923 days ago1659264217
0x87d44D54...b76530406
0.20042045 ETH
152333972022-07-28 21:30:09925 days ago1659043809
0x87d44D54...b76530406
0.20043639 ETH
152176952022-07-26 10:56:05928 days ago1658832965
0x87d44D54...b76530406
0.20170884 ETH
152015062022-07-23 21:57:36930 days ago1658613456
0x87d44D54...b76530406
0.20025715 ETH
151845942022-07-21 7:31:27933 days ago1658388687
0x87d44D54...b76530406
0.20008147 ETH
151683312022-07-18 18:45:02935 days ago1658169902
0x87d44D54...b76530406
0.2004384 ETH
151507242022-07-16 1:23:30938 days ago1657934610
0x87d44D54...b76530406
0.20007888 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.