ETH Price: $2,712.55 (-3.35%)

Contract

0x09ae9660343d7Db25Ff3019b34DaB7E5b84dA348
 

Overview

ETH Balance

0.000000005830973631 ETH

Eth Value

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

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Sweep144049602022-03-17 15:53:421074 days ago1647532422IN
0x09ae9660...5b84dA348
0 ETH0.0094747127.52131563
Sweep140537532022-01-22 6:13:121129 days ago1642831992IN
0x09ae9660...5b84dA348
0 ETH0.01072589144.38454868
Sweep125417532021-05-31 11:04:401364 days ago1622459080IN
0x09ae9660...5b84dA348
0 ETH0.0019222530
Sweep119152902021-02-23 19:31:241461 days ago1614108684IN
0x09ae9660...5b84dA348
0 ETH0.01148575201.6
Transfer119137662021-02-23 14:09:381461 days ago1614089378IN
0x09ae9660...5b84dA348
0.1 ETH0.0126306600
Sweep119069992021-02-22 13:04:281462 days ago1613999068IN
0x09ae9660...5b84dA348
0 ETH0.0205146360
Transfer119069822021-02-22 13:00:351462 days ago1613998835IN
0x09ae9660...5b84dA348
0.47803935 ETH0.00629424299
Sweep115467152020-12-29 4:20:581518 days ago1609215658IN
0x09ae9660...5b84dA348
0 ETH0.00847936148.8
Transfer115466952020-12-29 4:17:061518 days ago1609215426IN
0x09ae9660...5b84dA348
0.0861 ETH0.00288988137.28
Sweep114019062020-12-06 22:35:111540 days ago1607294111IN
0x09ae9660...5b84dA348
0 ETH0.0017091930
Transfer114018852020-12-06 22:31:251540 days ago1607293885IN
0x09ae9660...5b84dA348
0.01004627 ETH0.000021051
Transfer113976712020-12-06 7:02:351541 days ago1607238155IN
0x09ae9660...5b84dA348
0.0423 ETH0.0006315330
Sweep112862802020-11-19 4:32:511558 days ago1605760371IN
0x09ae9660...5b84dA348
0 ETH0.0017847731.32
Transfer112862452020-11-19 4:27:391558 days ago1605760059IN
0x09ae9660...5b84dA348
0.2623 ETH0.0007578336.00000175
Transfer112548262020-11-14 8:44:231562 days ago1605343463IN
0x09ae9660...5b84dA348
0.01007091 ETH0.000021051
Transfer109443422020-09-27 11:26:361610 days ago1601205996IN
0x09ae9660...5b84dA348
0.01002184 ETH0.000021051
Sweep108248872020-09-09 2:37:491629 days ago1599619069IN
0x09ae9660...5b84dA348
0 ETH0.0048540985.2
Transfer108248662020-09-09 2:30:221629 days ago1599618622IN
0x09ae9660...5b84dA348
0.02199667 ETH0.000021051
Transfer107791302020-09-02 2:27:161636 days ago1599013636IN
0x09ae9660...5b84dA348
0.01000758 ETH0.000021051
Transfer106222842020-08-09 0:00:201660 days ago1596931220IN
0x09ae9660...5b84dA348
0.03475517 ETH0.000021051
Sweep105770042020-08-02 0:00:181667 days ago1596326418IN
0x09ae9660...5b84dA348
0 ETH0.0035038361.5
Transfer105769852020-08-01 23:57:151667 days ago1596326235IN
0x09ae9660...5b84dA348
0.05000197 ETH0.000021051
Sweep105473982020-07-28 10:05:131671 days ago1595930713IN
0x09ae9660...5b84dA348
0 ETH0.0052963792.96288524
Transfer105473802020-07-28 10:01:121671 days ago1595930472IN
0x09ae9660...5b84dA348
0.05002616 ETH0.000021051
Sweep105181672020-07-23 21:38:221676 days ago1595540302IN
0x09ae9660...5b84dA348
0 ETH0.0048711985.5
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
119152902021-02-23 19:31:241461 days ago1614108684
0x09ae9660...5b84dA348
0.1 ETH
119069992021-02-22 13:04:281462 days ago1613999068
0x09ae9660...5b84dA348
0.47803935 ETH
115467152020-12-29 4:20:581518 days ago1609215658
0x09ae9660...5b84dA348
0.0861 ETH
114019062020-12-06 22:35:111540 days ago1607294111
0x09ae9660...5b84dA348
0.05234628 ETH
112862802020-11-19 4:32:511558 days ago1605760371
0x09ae9660...5b84dA348
0.28239276 ETH
108248872020-09-09 2:37:491629 days ago1599619069
0x09ae9660...5b84dA348
0.06675943 ETH
105770042020-08-02 0:00:181667 days ago1596326418
0x09ae9660...5b84dA348
0.05000198 ETH
105473982020-07-28 10:05:131671 days ago1595930713
0x09ae9660...5b84dA348
0.05002617 ETH
105181672020-07-23 21:38:221676 days ago1595540302
0x09ae9660...5b84dA348
0.0500381 ETH
104842342020-07-18 15:23:341681 days ago1595085814
0x09ae9660...5b84dA348
0.05003519 ETH
104436492020-07-12 8:37:161687 days ago1594543036
0x09ae9660...5b84dA348
0.05002985 ETH
104022582020-07-05 23:00:361694 days ago1593990036
0x09ae9660...5b84dA348
0.05004749 ETH
103745172020-07-01 16:09:441698 days ago1593619784
0x09ae9660...5b84dA348
0.05003241 ETH
103310392020-06-24 21:58:381705 days ago1593035918
0x09ae9660...5b84dA348
0.05000642 ETH
102910112020-06-18 17:26:051711 days ago1592501165
0x09ae9660...5b84dA348
0.05006053 ETH
102631062020-06-14 9:37:401715 days ago1592127460
0x09ae9660...5b84dA348
0.05001689 ETH
102243762020-06-08 9:47:481721 days ago1591609668
0x09ae9660...5b84dA348
0.0500197 ETH
101803282020-06-01 13:45:581728 days ago1591019158
0x09ae9660...5b84dA348
0.05002361 ETH
101423642020-05-26 16:11:231734 days ago1590509483
0x09ae9660...5b84dA348
0.05002163 ETH
100980072020-05-19 18:33:421741 days ago1589913222
0x09ae9660...5b84dA348
0.05005028 ETH
100577172020-05-13 12:11:321747 days ago1589371892
0x09ae9660...5b84dA348
0.05002158 ETH
100173472020-05-07 5:55:021754 days ago1588830902
0x09ae9660...5b84dA348
0.09375516 ETH
99268942020-04-23 5:27:041768 days ago1587619624
0x09ae9660...5b84dA348
0.09255445 ETH
98374452020-04-09 10:16:321781 days ago1586427392
0x09ae9660...5b84dA348
0.05002365 ETH
98059632020-04-04 14:10:371786 days ago1586009437
0x09ae9660...5b84dA348
0.05000517 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.