ETH Price: $3,398.33 (+2.26%)

Contract

0x58e157769F1A0B14872971b7f5e3C39F6F2be8Ee
 

Overview

ETH Balance

0.028976354980428716 ETH

Eth Value

$98.47 (@ $3,398.33/ETH)

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer101634082020-05-29 22:39:201986 days ago1590791960IN
0x58e15776...F6F2be8Ee
0.02897634 ETH0.000021051
Sweep101183852020-05-22 22:41:071993 days ago1590187267IN
0x58e15776...F6F2be8Ee
0 ETH0.001253422
Transfer101183652020-05-22 22:37:041993 days ago1590187024IN
0x58e15776...F6F2be8Ee
0.06827984 ETH0.000021051
Sweep101119762020-05-21 22:37:121994 days ago1590100632IN
0x58e15776...F6F2be8Ee
0 ETH0.0019659834.5
Transfer101119532020-05-21 22:33:381994 days ago1590100418IN
0x58e15776...F6F2be8Ee
0.07312117 ETH0.000021051
Sweep101055222020-05-20 22:31:261995 days ago1590013886IN
0x58e15776...F6F2be8Ee
0 ETH0.001253422
Transfer101055092020-05-20 22:29:171995 days ago1590013757IN
0x58e15776...F6F2be8Ee
0.06727773 ETH0.000021051
Sweep100990672020-05-19 22:26:531996 days ago1589927213IN
0x58e15776...F6F2be8Ee
0 ETH0.001253422
Transfer100990432020-05-19 22:21:551996 days ago1589926915IN
0x58e15776...F6F2be8Ee
0.05017086 ETH0.000021051
Sweep100794972020-05-16 21:18:361999 days ago1589663916IN
0x58e15776...F6F2be8Ee
0 ETH0.001253422
Transfer100794732020-05-16 21:13:241999 days ago1589663604IN
0x58e15776...F6F2be8Ee
0.05341801 ETH0.000021051
Sweep100737502020-05-15 23:50:272000 days ago1589586627IN
0x58e15776...F6F2be8Ee
0 ETH0.0012818922.5
Transfer100730212020-05-15 21:08:442000 days ago1589576924IN
0x58e15776...F6F2be8Ee
0.05930696 ETH0.000021051
Sweep100665682020-05-14 21:13:182001 days ago1589490798IN
0x58e15776...F6F2be8Ee
0 ETH0.0017091930
Transfer100665422020-05-14 21:07:302001 days ago1589490450IN
0x58e15776...F6F2be8Ee
0.05958786 ETH0.000021051
Sweep100601752020-05-13 21:07:532002 days ago1589404073IN
0x58e15776...F6F2be8Ee
0 ETH0.0013029122.86900023
Transfer100601492020-05-13 21:00:372002 days ago1589403637IN
0x58e15776...F6F2be8Ee
0.05890415 ETH0.000021051
Sweep100536592020-05-12 21:03:462003 days ago1589317426IN
0x58e15776...F6F2be8Ee
0 ETH0.001253422
Transfer100536392020-05-12 20:59:592003 days ago1589317199IN
0x58e15776...F6F2be8Ee
0.05194169 ETH0.000021051
Sweep100472252020-05-11 21:00:092004 days ago1589230809IN
0x58e15776...F6F2be8Ee
0 ETH0.001253422
Transfer100471962020-05-11 20:52:582004 days ago1589230378IN
0x58e15776...F6F2be8Ee
0.05706363 ETH0.000021051
Sweep100407422020-05-10 20:52:122005 days ago1589143932IN
0x58e15776...F6F2be8Ee
0 ETH0.001253422
Transfer100407262020-05-10 20:50:062005 days ago1589143806IN
0x58e15776...F6F2be8Ee
0.060255 ETH0.000021051
Sweep100342562020-05-09 20:49:142006 days ago1589057354IN
0x58e15776...F6F2be8Ee
0 ETH0.001253422
Transfer100342272020-05-09 20:42:592006 days ago1589056979IN
0x58e15776...F6F2be8Ee
0.06073411 ETH0.000021051
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-101183852020-05-22 22:41:071993 days ago1590187267
0x58e15776...F6F2be8Ee
0.06827984 ETH
-101119762020-05-21 22:37:121994 days ago1590100632
0x58e15776...F6F2be8Ee
0.07312117 ETH
-101055222020-05-20 22:31:261995 days ago1590013886
0x58e15776...F6F2be8Ee
0.06727774 ETH
-100990672020-05-19 22:26:531996 days ago1589927213
0x58e15776...F6F2be8Ee
0.05017086 ETH
-100794972020-05-16 21:18:361999 days ago1589663916
0x58e15776...F6F2be8Ee
0.05341802 ETH
-100737502020-05-15 23:50:272000 days ago1589586627
0x58e15776...F6F2be8Ee
0.05930696 ETH
-100665682020-05-14 21:13:182001 days ago1589490798
0x58e15776...F6F2be8Ee
0.05958786 ETH
-100601752020-05-13 21:07:532002 days ago1589404073
0x58e15776...F6F2be8Ee
0.05890415 ETH
-100536592020-05-12 21:03:462003 days ago1589317426
0x58e15776...F6F2be8Ee
0.0519417 ETH
-100472252020-05-11 21:00:092004 days ago1589230809
0x58e15776...F6F2be8Ee
0.05706364 ETH
-100407422020-05-10 20:52:122005 days ago1589143932
0x58e15776...F6F2be8Ee
0.06025501 ETH
-100342562020-05-09 20:49:142006 days ago1589057354
0x58e15776...F6F2be8Ee
0.06073411 ETH
-100278572020-05-08 20:49:112007 days ago1588970951
0x58e15776...F6F2be8Ee
0.05168894 ETH
-100213592020-05-07 20:43:532008 days ago1588884233
0x58e15776...F6F2be8Ee
0.05027341 ETH
-100157512020-05-06 23:55:492009 days ago1588809349
0x58e15776...F6F2be8Ee
0.05773294 ETH
-100075912020-05-05 17:39:262010 days ago1588700366
0x58e15776...F6F2be8Ee
0.06488055 ETH
-100011192020-05-04 17:35:482011 days ago1588613748
0x58e15776...F6F2be8Ee
0.0617838 ETH
-99945702020-05-03 17:30:252012 days ago1588527025
0x58e15776...F6F2be8Ee
0.06709455 ETH
-99881362020-05-02 17:29:072013 days ago1588440547
0x58e15776...F6F2be8Ee
0.06270252 ETH
-99816502020-05-01 17:20:172014 days ago1588353617
0x58e15776...F6F2be8Ee
0.06390508 ETH
-99752342020-04-30 17:18:582015 days ago1588267138
0x58e15776...F6F2be8Ee
0.06793033 ETH
-99687312020-04-29 17:15:092016 days ago1588180509
0x58e15776...F6F2be8Ee
0.06571476 ETH
-99622482020-04-28 17:08:272017 days ago1588093707
0x58e15776...F6F2be8Ee
0.06955653 ETH
-99557282020-04-27 17:01:192018 days ago1588006879
0x58e15776...F6F2be8Ee
0.05372203 ETH
-99492952020-04-26 16:54:562019 days ago1587920096
0x58e15776...F6F2be8Ee
0.05015847 ETH
View All Internal Transactions
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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

Contract Source Code (Solidity)

/**
 *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

API
[{"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"}]

0x6060604052341561000c57fe5b60405160208061026c83398101604052515b60008054600160a060020a031916600160a060020a0383161790555b505b6102218061004b6000396000f300606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029000000000000000000000000a3c1e324ca1ce40db73ed6026c4a177f099b5770

Deployed Bytecode

0x606060405236156100495763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416636ea056a98114610052578063c0ee0b8a14610092575b6100505b5b565b005b341561005a57fe5b61007e73ffffffffffffffffffffffffffffffffffffffff60043516602435610104565b604080519115158252519081900360200190f35b341561009a57fe5b604080516020600460443581810135601f810184900484028501840190955284845261005094823573ffffffffffffffffffffffffffffffffffffffff169460248035956064949293919092019181908401838280828437509496506101ef95505050505050565b005b6000805460408051602090810184905281517f3c18d31800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff878116600483015292519290931692633c18d318926024808301939282900301818787803b151561017b57fe5b6102c65a03f1151561018957fe5b5050506040518051905073ffffffffffffffffffffffffffffffffffffffff1660003660006040516020015260405180838380828437820191505092505050602060405180830381856102c65a03f415156101e057fe5b50506040515190505b92915050565b5b5050505600a165627a7a723058204cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd10029

Swarm Source

bzzr://4cdd69fdcf3cf6cbee9677fe380fa5f044048aa9e060ec5619a21ca5a5bd4cd1

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.