ETH Price: $3,425.28 (-5.50%)

Contract

0x8149070a5Ee3630076Ad6FD6B39EfdCea725AC3d
 

Overview

ETH Balance

0.000000009440124856 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep121653362021-04-03 7:38:571356 days ago1617435537IN
0x8149070a...ea725AC3d
0 ETH0.00646757113.52
Transfer121653122021-04-03 7:33:211356 days ago1617435201IN
0x8149070a...ea725AC3d
0.0601816 ETH0.0006336330.1
Sweep120671292021-03-19 4:52:331371 days ago1616129553IN
0x8149070a...ea725AC3d
0 ETH0.0072086126.5
Transfer120671052021-03-19 4:48:091371 days ago1616129289IN
0x8149070a...ea725AC3d
0.10011487 ETH0.0006336330.1
Sweep120479052021-03-16 5:55:231374 days ago1615874123IN
0x8149070a...ea725AC3d
0 ETH0.00788021138.28571428
Transfer120478812021-03-16 5:49:321374 days ago1615873772IN
0x8149070a...ea725AC3d
14.29000295 ETH0.00357867170
Sweep120126012021-03-10 19:06:461380 days ago1615403206IN
0x8149070a...ea725AC3d
0 ETH0.0112078196.68
Transfer120125632021-03-10 19:00:181380 days ago1615402818IN
0x8149070a...ea725AC3d
0.30109734 ETH0.0006336330.1
Sweep119300152021-02-26 2:04:081392 days ago1614305048IN
0x8149070a...ea725AC3d
0 ETH0.00827422145.2
Transfer119299922021-02-26 1:59:561392 days ago1614304796IN
0x8149070a...ea725AC3d
0.30019893 ETH0.0006336330.1
Sweep118968532021-02-20 23:31:591398 days ago1613863919IN
0x8149070a...ea725AC3d
0 ETH0.01316353231
Transfer118968312021-02-20 23:26:431398 days ago1613863603IN
0x8149070a...ea725AC3d
4.80626 ETH0.00680789323.4
Sweep118650272021-02-16 2:10:461402 days ago1613441446IN
0x8149070a...ea725AC3d
0 ETH0.01210361212.4
Transfer118650062021-02-16 2:05:521402 days ago1613441152IN
0x8149070a...ea725AC3d
0.30060469 ETH0.0006336330.1
Sweep117994452021-02-06 0:18:121412 days ago1612570692IN
0x8149070a...ea725AC3d
0 ETH0.01947027341.6736
Transfer117993482021-02-05 23:55:541412 days ago1612569354IN
0x8149070a...ea725AC3d
0.30067432 ETH0.0006336330.1
Sweep117379922021-01-27 13:02:001422 days ago1611752520IN
0x8149070a...ea725AC3d
0 ETH0.0054021794.80000175
Transfer117379752021-01-27 12:56:311422 days ago1611752191IN
0x8149070a...ea725AC3d
0.30024031 ETH0.0006336330.1
Sweep116637352021-01-16 3:04:151433 days ago1610766255IN
0x8149070a...ea725AC3d
0 ETH0.0036956364.8528
Transfer116637192021-01-16 3:00:411433 days ago1610766041IN
0x8149070a...ea725AC3d
0.1007335 ETH0.0006336330.1
Sweep116386822021-01-12 7:01:441437 days ago1610434904IN
0x8149070a...ea725AC3d
0 ETH0.0045419379.704
Transfer116386542021-01-12 6:56:311437 days ago1610434591IN
0x8149070a...ea725AC3d
0.10068014 ETH0.0006336330.1
Sweep116179222021-01-09 2:31:391440 days ago1610159499IN
0x8149070a...ea725AC3d
0 ETH0.00635952111.6
Transfer116179042021-01-09 2:27:241440 days ago1610159244IN
0x8149070a...ea725AC3d
0.1005286 ETH0.0006336330.1
Sweep115963752021-01-05 19:16:141444 days ago1609874174IN
0x8149070a...ea725AC3d
0 ETH0.00802599140.844
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
121653362021-04-03 7:38:571356 days ago1617435537
0x8149070a...ea725AC3d
0.0601816 ETH
120671292021-03-19 4:52:331371 days ago1616129553
0x8149070a...ea725AC3d
0.10011488 ETH
120479052021-03-16 5:55:231374 days ago1615874123
0x8149070a...ea725AC3d
14.29000295 ETH
120126012021-03-10 19:06:461380 days ago1615403206
0x8149070a...ea725AC3d
0.30109735 ETH
119300152021-02-26 2:04:081392 days ago1614305048
0x8149070a...ea725AC3d
0.30019893 ETH
118968532021-02-20 23:31:591398 days ago1613863919
0x8149070a...ea725AC3d
4.80626 ETH
118650272021-02-16 2:10:461402 days ago1613441446
0x8149070a...ea725AC3d
0.3006047 ETH
117994452021-02-06 0:18:121412 days ago1612570692
0x8149070a...ea725AC3d
0.30067432 ETH
117379922021-01-27 13:02:001422 days ago1611752520
0x8149070a...ea725AC3d
0.30024032 ETH
116637352021-01-16 3:04:151433 days ago1610766255
0x8149070a...ea725AC3d
0.1007335 ETH
116386822021-01-12 7:01:441437 days ago1610434904
0x8149070a...ea725AC3d
0.10068015 ETH
116179222021-01-09 2:31:391440 days ago1610159499
0x8149070a...ea725AC3d
0.1005286 ETH
115963752021-01-05 19:16:141444 days ago1609874174
0x8149070a...ea725AC3d
0.1001236 ETH
115787902021-01-03 2:27:401446 days ago1609640860
0x8149070a...ea725AC3d
0.10014904 ETH
115526932020-12-30 2:41:021450 days ago1609296062
0x8149070a...ea725AC3d
0.100413 ETH
115234412020-12-25 14:52:451455 days ago1608907965
0x8149070a...ea725AC3d
0.10011379 ETH
114971592020-12-21 13:53:091459 days ago1608558789
0x8149070a...ea725AC3d
0.10068429 ETH
114732272020-12-17 22:01:471463 days ago1608242507
0x8149070a...ea725AC3d
0.10068968 ETH
114519232020-12-14 15:25:141466 days ago1607959514
0x8149070a...ea725AC3d
0.10060462 ETH
114256472020-12-10 14:16:341470 days ago1607609794
0x8149070a...ea725AC3d
0.10008521 ETH
113986062020-12-06 10:28:371474 days ago1607250517
0x8149070a...ea725AC3d
0.10007819 ETH
113713002020-12-02 5:59:471478 days ago1606888787
0x8149070a...ea725AC3d
0.10008326 ETH
113445062020-11-28 3:14:041482 days ago1606533244
0x8149070a...ea725AC3d
0.10022172 ETH
113212622020-11-24 13:23:021486 days ago1606224182
0x8149070a...ea725AC3d
0.10017659 ETH
112970522020-11-20 20:16:121490 days ago1605903372
0x8149070a...ea725AC3d
0.10001574 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.