ETH Price: $2,059.34 (-3.70%)

Contract

0xa43e76f811dE281f4853eF23Cf4e14B3f1E90FEa
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep109030512020-09-21 2:21:531992 days ago1600654913IN
0xa43e76f8...3f1E90FEa
0 ETH0.0050602688.80000175
Transfer109030272020-09-21 2:17:291992 days ago1600654649IN
0xa43e76f8...3f1E90FEa
1.90160392 ETH0.0020208996
Sweep55110382018-04-26 20:40:392870 days ago1524775239IN
0xa43e76f8...3f1E90FEa
0 ETH0.0025028550
Transfer55110172018-04-26 20:35:022870 days ago1524774902IN
0xa43e76f8...3f1E90FEa
1.725 ETH0.0012630660
Sweep50565772018-02-09 2:47:432947 days ago1518144463IN
0xa43e76f8...3f1E90FEa
0 ETH0.0044993790
Transfer50565422018-02-09 2:39:392947 days ago1518143979IN
0xa43e76f8...3f1E90FEa
1.4 ETH0.000021051
Sweep49650612018-01-24 16:39:122962 days ago1516811952IN
0xa43e76f8...3f1E90FEa
0 ETH0.0045051390
Transfer49650372018-01-24 16:31:012962 days ago1516811461IN
0xa43e76f8...3f1E90FEa
0.641078 ETH0.0010104448
Transfer49650292018-01-24 16:28:272962 days ago1516811307IN
0xa43e76f8...3f1E90FEa
0.3287 ETH0.0010525550
Sweep49535442018-01-22 17:51:432964 days ago1516643503IN
0xa43e76f8...3f1E90FEa
0 ETH0.0045051390
Transfer49535102018-01-22 17:44:452964 days ago1516643085IN
0xa43e76f8...3f1E90FEa
0.44464313 ETH0.0005262725
Sweep48881152018-01-11 1:13:162976 days ago1515633196IN
0xa43e76f8...3f1E90FEa
0 ETH0.0044993790
Transfer48880712018-01-11 1:01:292976 days ago1515632489IN
0xa43e76f8...3f1E90FEa
0.67 ETH0.0016419778
Sweep48779232018-01-09 3:51:082978 days ago1515469868IN
0xa43e76f8...3f1E90FEa
0 ETH0.0027781655.5
Transfer48778942018-01-09 3:43:162978 days ago1515469396IN
0xa43e76f8...3f1E90FEa
0.70029299 ETH0.0018945990
Sweep48774612018-01-09 1:50:572978 days ago1515462657IN
0xa43e76f8...3f1E90FEa
0 ETH0.002552951
Transfer48774132018-01-09 1:39:222978 days ago1515461962IN
0xa43e76f8...3f1E90FEa
0.92577681 ETH0.0018945990
Sweep47788802017-12-22 21:42:152995 days ago1513978935IN
0xa43e76f8...3f1E90FEa
0 ETH0.0029995860
Transfer47783052017-12-22 19:18:002995 days ago1513970280IN
0xa43e76f8...3f1E90FEa
1.01 ETH0.0004420721
Sweep47688802017-12-21 2:56:122997 days ago1513824972IN
0xa43e76f8...3f1E90FEa
0 ETH0.002799656
Transfer47685472017-12-21 1:32:282997 days ago1513819948IN
0xa43e76f8...3f1E90FEa
1 ETH0.0004420721
Sweep47617762017-12-19 20:22:252998 days ago1513714945IN
0xa43e76f8...3f1E90FEa
0 ETH0.0025496451
Transfer47617472017-12-19 20:14:302998 days ago1513714470IN
0xa43e76f8...3f1E90FEa
0.9 ETH0.0004420721
Sweep47617232017-12-19 20:08:002998 days ago1513714080IN
0xa43e76f8...3f1E90FEa
0 ETH0.0025496451
Transfer47616572017-12-19 19:50:462998 days ago1513713046IN
0xa43e76f8...3f1E90FEa
0.12 ETH0.0004420721
View all transactions

Latest 15 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
-109030512020-09-21 2:21:531992 days ago1600654913
0xa43e76f8...3f1E90FEa
1.90160392 ETH
Transfer55110382018-04-26 20:40:392870 days ago1524775239
0xa43e76f8...3f1E90FEa
1.725 ETH
Transfer50565772018-02-09 2:47:432947 days ago1518144463
0xa43e76f8...3f1E90FEa
1.4 ETH
Transfer49650612018-01-24 16:39:122962 days ago1516811952
0xa43e76f8...3f1E90FEa
0.969778 ETH
Transfer49535442018-01-22 17:51:432964 days ago1516643503
0xa43e76f8...3f1E90FEa
0.44464313 ETH
Transfer48881152018-01-11 1:13:162976 days ago1515633196
0xa43e76f8...3f1E90FEa
0.67 ETH
Transfer48779232018-01-09 3:51:082978 days ago1515469868
0xa43e76f8...3f1E90FEa
0.70029299 ETH
Transfer48774612018-01-09 1:50:572978 days ago1515462657
0xa43e76f8...3f1E90FEa
0.92577681 ETH
Transfer47788802017-12-22 21:42:152995 days ago1513978935
0xa43e76f8...3f1E90FEa
1.01 ETH
Transfer47688802017-12-21 2:56:122997 days ago1513824972
0xa43e76f8...3f1E90FEa
1 ETH
Transfer47617762017-12-19 20:22:252998 days ago1513714945
0xa43e76f8...3f1E90FEa
0.9 ETH
Transfer47617232017-12-19 20:08:002998 days ago1513714080
0xa43e76f8...3f1E90FEa
0.12 ETH
Transfer42778742017-09-15 20:33:453093 days ago1505507625
0xa43e76f8...3f1E90FEa
0.54657 ETH
Transfer42635582017-09-11 20:43:213097 days ago1505162601
0xa43e76f8...3f1E90FEa
1.56689029 ETH
Transfer42585882017-09-10 11:16:413098 days ago1505042201  Contract Creation0 ETH
Loading...
Loading
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.