ETH Price: $3,469.97 (-1.04%)
Gas: 3 Gwei

Contract

0x8E103E9331E4E18f0B6ec4833efC98a7018e9210
 

Overview

ETH Balance

0.000000007781242391 ETH

Eth Value

Less Than $0.01 (@ $3,469.97/ETH)

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep155396972022-09-15 14:29:47677 days ago1663252187IN
0x8E103E93...7018e9210
0 ETH0.0016975530
Transfer155396752022-09-15 14:25:23677 days ago1663251923IN
0x8E103E93...7018e9210
0.0854198 ETH0.0002363311.22661501
Sweep155212532022-09-12 14:04:57680 days ago1662991497IN
0x8E103E93...7018e9210
0 ETH0.0016975530
Transfer155212322022-09-12 14:00:55680 days ago1662991255IN
0x8E103E93...7018e9210
0.09968599 ETH0.000359317.06832
Sweep153755712022-08-20 4:43:13704 days ago1660970593IN
0x8E103E93...7018e9210
0 ETH0.0016975530
Transfer153755502022-08-20 4:39:19704 days ago1660970359IN
0x8E103E93...7018e9210
0.09983158 ETH0.000191069.07625104
Sweep153375012022-08-14 4:00:47710 days ago1660449647IN
0x8E103E93...7018e9210
0 ETH0.0021050637.2017508
Transfer153374822022-08-14 3:58:07710 days ago1660449487IN
0x8E103E93...7018e9210
0.09954643 ETH0.0003181415.11310482
Sweep152969802022-08-07 19:01:27716 days ago1659898887IN
0x8E103E93...7018e9210
0 ETH0.0016975530
Transfer152969612022-08-07 18:57:25716 days ago1659898645IN
0x8E103E93...7018e9210
0.09990518 ETH0.000124315.90528364
Sweep152471972022-07-31 1:07:11724 days ago1659229631IN
0x8E103E93...7018e9210
0 ETH0.0016975530
Transfer152471812022-07-31 1:04:04724 days ago1659229444IN
0x8E103E93...7018e9210
0.0999696 ETH0.000109125.18392685
Sweep151982932022-07-23 10:12:16732 days ago1658571136IN
0x8E103E93...7018e9210
0 ETH0.0016975530
Transfer151982792022-07-23 10:09:04732 days ago1658570944IN
0x8E103E93...7018e9210
0.099869 ETH0.000146716.96933285
Sweep151670602022-07-18 14:01:09736 days ago1658152869IN
0x8E103E93...7018e9210
0 ETH0.0026630647.06306646
Transfer151670462022-07-18 13:56:05736 days ago1658152565IN
0x8E103E93...7018e9210
0.09967565 ETH0.0004374920.78284724
Sweep151250792022-07-12 2:10:44743 days ago1657591844IN
0x8E103E93...7018e9210
0 ETH0.0016975530
Transfer151250582022-07-12 2:06:49743 days ago1657591609IN
0x8E103E93...7018e9210
0.09954485 ETH0.0004643422.05809947
Sweep150924872022-07-07 1:28:07748 days ago1657157287IN
0x8E103E93...7018e9210
0 ETH0.0017319230.6075538
Transfer150924692022-07-07 1:23:58748 days ago1657157038IN
0x8E103E93...7018e9210
0.09961457 ETH0.0004218620.03998398
Sweep150602422022-07-02 2:04:23753 days ago1656727463IN
0x8E103E93...7018e9210
0 ETH0.0016975530
Transfer150602162022-07-02 1:59:27753 days ago1656727167IN
0x8E103E93...7018e9210
0.09970888 ETH0.0003062914.54996213
Sweep150131102022-06-23 13:10:30761 days ago1655989830IN
0x8E103E93...7018e9210
0 ETH0.0017739631.35042246
Transfer150130902022-06-23 13:07:35761 days ago1655989655IN
0x8E103E93...7018e9210
0.09925616 ETH0.0008528240.51235832
Sweep149798692022-06-17 15:15:45767 days ago1655478945IN
0x8E103E93...7018e9210
0 ETH0.00988087174.62010181
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
155396972022-09-15 14:29:47677 days ago1663252187
0x8E103E93...7018e9210
0.0854198 ETH
155212532022-09-12 14:04:57680 days ago1662991497
0x8E103E93...7018e9210
0.099686 ETH
153755712022-08-20 4:43:13704 days ago1660970593
0x8E103E93...7018e9210
0.09983158 ETH
153375012022-08-14 4:00:47710 days ago1660449647
0x8E103E93...7018e9210
0.09954644 ETH
152969802022-08-07 19:01:27716 days ago1659898887
0x8E103E93...7018e9210
0.09990518 ETH
152471972022-07-31 1:07:11724 days ago1659229631
0x8E103E93...7018e9210
0.09996961 ETH
151982932022-07-23 10:12:16732 days ago1658571136
0x8E103E93...7018e9210
0.099869 ETH
151670602022-07-18 14:01:09736 days ago1658152869
0x8E103E93...7018e9210
0.09967566 ETH
151250792022-07-12 2:10:44743 days ago1657591844
0x8E103E93...7018e9210
0.09954485 ETH
150924872022-07-07 1:28:07748 days ago1657157287
0x8E103E93...7018e9210
0.09961457 ETH
150602422022-07-02 2:04:23753 days ago1656727463
0x8E103E93...7018e9210
0.09970889 ETH
150131102022-06-23 13:10:30761 days ago1655989830
0x8E103E93...7018e9210
0.09925616 ETH
149798692022-06-17 15:15:45767 days ago1655478945
0x8E103E93...7018e9210
0.09704036 ETH
149539952022-06-13 4:13:35772 days ago1655093615
0x8E103E93...7018e9210
0.1038018 ETH
149214122022-06-07 14:44:27777 days ago1654613067
0x8E103E93...7018e9210
0.09848008 ETH
148928382022-06-02 19:47:19782 days ago1654199239
0x8E103E93...7018e9210
0.09707048 ETH
148573932022-05-28 1:15:37788 days ago1653700537
0x8E103E93...7018e9210
0.09907517 ETH
148195062022-05-21 21:08:44794 days ago1653167324
0x8E103E93...7018e9210
0.09948532 ETH
147837232022-05-16 2:44:40800 days ago1652669080
0x8E103E93...7018e9210
0.0995906 ETH
147562702022-05-11 17:48:49804 days ago1652291329
0x8E103E93...7018e9210
0.09768546 ETH
147310942022-05-07 17:23:42808 days ago1651944222
0x8E103E93...7018e9210
0.09959633 ETH
147023722022-05-03 3:53:17813 days ago1651549997
0x8E103E93...7018e9210
0.09855864 ETH
146780612022-04-29 8:13:12817 days ago1651219992
0x8E103E93...7018e9210
0.09935113 ETH
146489162022-04-24 18:03:40821 days ago1650823420
0x8E103E93...7018e9210
0.09863028 ETH
146198412022-04-20 4:48:00826 days ago1650430080
0x8E103E93...7018e9210
0.09905099 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.