Contract: Unitroller
Etherscan label: idle-finance
Tag: Idle.finance: Controller
Malicious: no
Decompiled opcodes:
PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x0010 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x0726 CODESIZE SUB DUP1 PUSH2 0x0726 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x0033 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP MLOAD PUSH1 0x00 DUP1 SLOAD PUSH1 0x01 PUSH1 0x01 PUSH1 0xa0 SHL SUB NOT SWAP1 DUP2 AND CALLER OR SWAP1 SWAP2 SSTORE PUSH1 0x02 DUP1 SLOAD PUSH1 0x01 PUSH1 0x01 PUSH1 0xa0 SHL SUB SWAP1 SWAP4 AND SWAP3 SWAP1 SWAP2 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE PUSH2 0x06b4 DUP1 PUSH2 0x0072 PUSH1 0x00 CODECOPY PUSH1 0x00 RETURN UNKNOWN_0xfe PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x04 CALLDATASIZE LT PUSH2 0x007b JUMPI PUSH1 0x00 CALLDATALOAD PUSH1 0xe0 SHR DUP1 PUSH4 0xdcfbc0c7 GT PUSH2 0x004e JUMPI DUP1 PUSH4 0xdcfbc0c7 EQ PUSH2 0x01c5 JUMPI DUP1 PUSH4 0xe992a041 EQ PUSH2 0x01da JUMPI DUP1 PUSH4 0xe9c714f2 EQ PUSH2 0x021a JUMPI DUP1 PUSH4 0xf851a440 EQ PUSH2 0x022f JUMPI PUSH2 0x007b JUMP JUMPDEST DUP1 PUSH4 0x26782247 EQ PUSH2 0x010b JUMPI DUP1 PUSH4 0xb71d1a0c EQ PUSH2 0x0149 JUMPI DUP1 PUSH4 0xbb82aa5e EQ PUSH2 0x019b JUMPI DUP1 PUSH4 0xc1e80334 EQ PUSH2 0x01b0 JUMPI JUMPDEST PUSH1 0x02 SLOAD PUSH1 0x40 MLOAD PUSH1 0x00 SWAP2 PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND SWAP1 DUP3 SWAP1 CALLDATASIZE SWAP1 DUP1 DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH1 0x40 MLOAD SWAP3 ADD SWAP5 POP PUSH1 0x00 SWAP4 POP SWAP1 SWAP2 POP POP DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH1 0x00 DUP2 EQ PUSH2 0x00eb JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1f NOT PUSH1 0x3f RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH1 0x00 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x00f0 JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP POP SWAP1 POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x00 DUP3 RETURNDATACOPY DUP2 DUP1 ISZERO PUSH2 0x0107 JUMPI RETURNDATASIZE DUP3 RETURN JUMPDEST RETURNDATASIZE DUP3 REVERT JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x0117 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0120 PUSH2 0x0244 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff SWAP1 SWAP3 AND DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x0155 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0189 PUSH1 0x04 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x016c JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND PUSH2 0x0260 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x01a7 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0120 PUSH2 0x0317 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x01bc JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0189 PUSH2 0x0333 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x01d1 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0120 PUSH2 0x046f JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x01e6 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0189 PUSH1 0x04 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x01fd JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND PUSH2 0x048b JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x0226 JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0189 PUSH2 0x053f JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x023b JUMPI PUSH1 0x00 DUP1 REVERT JUMPDEST POP PUSH2 0x0120 PUSH2 0x0662 JUMP JUMPDEST PUSH1 0x01 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND DUP2 JUMP JUMPDEST PUSH1 0x00 DUP1 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND CALLER EQ PUSH2 0x0288 JUMPI POP PUSH1 0x01 PUSH2 0x0312 JUMP JUMPDEST PUSH1 0x01 DUP1 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP5 DUP2 AND PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 DUP4 AND DUP2 OR SWAP1 SWAP4 SSTORE PUSH1 0x40 DUP1 MLOAD SWAP2 SWAP1 SWAP3 AND DUP1 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP4 SWAP1 SWAP4 MSTORE DUP2 MLOAD PUSH32 0xca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9 SWAP3 SWAP2 DUP2 SWAP1 SUB SWAP1 SWAP2 ADD SWAP1 LOG1 PUSH1 0x00 SWAP2 POP POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x02 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND DUP2 JUMP JUMPDEST PUSH1 0x03 SLOAD PUSH1 0x00 SWAP1 PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND CALLER EQ ISZERO DUP1 PUSH2 0x0373 JUMPI POP PUSH1 0x03 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND ISZERO JUMPDEST ISZERO PUSH2 0x0380 JUMPI POP PUSH1 0x01 PUSH2 0x046c JUMP JUMPDEST PUSH1 0x02 DUP1 SLOAD PUSH1 0x03 DUP1 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP1 DUP3 AND PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 DUP1 DUP7 AND DUP3 OR SWAP7 DUP8 SWAP1 SSTORE SWAP1 SWAP3 AND SWAP1 SWAP3 SSTORE PUSH1 0x40 DUP1 MLOAD SWAP4 DUP4 AND DUP1 DUP6 MSTORE SWAP5 SWAP1 SWAP3 AND PUSH1 0x20 DUP5 ADD MSTORE DUP2 MLOAD SWAP1 SWAP3 PUSH32 0xd604de94d45953f9138079ec1b82d533cb2160c906d1076d1f7ed54befbca97a SWAP3 SWAP1 DUP3 SWAP1 SUB ADD SWAP1 LOG1 PUSH1 0x03 SLOAD PUSH1 0x40 DUP1 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP1 DUP6 AND DUP3 MSTORE SWAP1 SWAP3 AND PUSH1 0x20 DUP4 ADD MSTORE DUP1 MLOAD PUSH32 0xe945ccee5d701fc83f9b8aa8ca94ea4219ec1fcbd4f4cab4f0ea57c5c3e1d815 SWAP3 DUP2 SWAP1 SUB SWAP1 SWAP2 ADD SWAP1 LOG1 PUSH1 0x00 SWAP3 POP POP POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH1 0x03 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND DUP2 JUMP JUMPDEST PUSH1 0x00 DUP1 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND CALLER EQ PUSH2 0x04b3 JUMPI POP PUSH1 0x01 PUSH2 0x0312 JUMP JUMPDEST PUSH1 0x03 DUP1 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP5 DUP2 AND PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 DUP4 AND OR SWAP3 DUP4 SWAP1 SSTORE PUSH1 0x40 DUP1 MLOAD SWAP3 DUP3 AND DUP1 DUP5 MSTORE SWAP4 SWAP1 SWAP2 AND PUSH1 0x20 DUP4 ADD MSTORE DUP1 MLOAD PUSH32 0xe945ccee5d701fc83f9b8aa8ca94ea4219ec1fcbd4f4cab4f0ea57c5c3e1d815 SWAP3 DUP2 SWAP1 SUB SWAP1 SWAP2 ADD SWAP1 LOG1 POP PUSH1 0x00 SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x01 SLOAD PUSH1 0x00 SWAP1 PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND CALLER EQ ISZERO DUP1 PUSH2 0x0567 JUMPI POP CALLER ISZERO JUMPDEST ISZERO PUSH2 0x0574 JUMPI POP PUSH1 0x01 PUSH2 0x046c JUMP JUMPDEST PUSH1 0x00 DUP1 SLOAD PUSH1 0x01 DUP1 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP1 DUP3 AND PUSH32 0xffffffffffffffffffffffff0000000000000000000000000000000000000000 DUP1 DUP7 AND DUP3 OR SWAP7 DUP8 SWAP1 SSTORE SWAP1 SWAP3 AND SWAP1 SWAP3 SSTORE PUSH1 0x40 DUP1 MLOAD SWAP4 DUP4 AND DUP1 DUP6 MSTORE SWAP5 SWAP1 SWAP3 AND PUSH1 0x20 DUP5 ADD MSTORE DUP2 MLOAD SWAP1 SWAP3 PUSH32 0xf9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc SWAP3 SWAP1 DUP3 SWAP1 SUB ADD SWAP1 LOG1 PUSH1 0x01 SLOAD PUSH1 0x40 DUP1 MLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff DUP1 DUP6 AND DUP3 MSTORE SWAP1 SWAP3 AND PUSH1 0x20 DUP4 ADD MSTORE DUP1 MLOAD PUSH32 0xca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9 SWAP3 DUP2 SWAP1 SUB SWAP1 SWAP2 ADD SWAP1 LOG1 PUSH1 0x00 SWAP3 POP POP POP SWAP1 JUMP JUMPDEST PUSH1 0x00 SLOAD PUSH20 0xffffffffffffffffffffffffffffffffffffffff AND DUP2 JUMP UNKNOWN_0xfe LOG2 PUSH5 0x6970667358 UNKNOWN_0x22 SLT SHA3 MSTORE UNKNOWN_0xf8 SWAP2 UNOFFICIAL_DUP UNKNOWN_0xeb PUSH10 0x510524b6d64694fe5f12 NUMBER SWAP2 CALLDATALOAD JUMP COINBASE LOG3 SELFDESTRUCT UNKNOWN_0x5e PUSH11 0x80bdb8974ac50664736f6c PUSH4 0x4300060c STOP CALLER STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP UNKNOWN_0xf6 PUSH12 0x8c3d9933a8f9362b4d30f2b9 XOR UNKNOWN_0xcc SWAP8 UNKNOWN_0xe5 LOG3 UNKNOWN_0x1e