contract Contract {
function main() {
memory[0x40:0x60] = 0x80;
if (msg.data.length >= 0x04) {
var0 = msg.data[0x00:0x20] >> 0xe0;
if (var0 != 0x5c60da1b) { goto label_0031; }
var1 = msg.value;
if (var1) { revert(memory[0x00:0x00]); }
var1 = 0x004e;
var1 =
func_00A5();
var temp3 = memory[0x40:0x60];
memory[temp3:temp3 + 0x20] = var1 & (0x01 << 0xa0) - 0x01;
var temp4 = memory[0x40:0x60];
return memory[temp4:temp4 + (temp3 + 0x20) - temp4];
} else if (msg.data.length) {
label_0031:
var var0 = 0x002f;
label_006A:
var var1 = 0x00a3;
var var2 = storage[0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc] & (0x01 << 0xa0) - 0x01;
var temp0 = msg.data.length;
memory[0x00:0x00 + temp0] = msg.data[0x00:0x00 + temp0];
var temp1;
temp1, memory[0x00:0x00] = address(var2).delegatecall.gas(msg.gas)(memory[0x00:0x00 + msg.data.length]);
var temp2 = returndata.length;
memory[0x00:0x00 + temp2] = returndata[0x00:0x00 + temp2];
if (!temp1) { revert(memory[0x00:0x00 + returndata.length]); }
else { return memory[0x00:0x00 + returndata.length]; }
} else {
var0 = 0x002f;
goto label_006A;
}
}
function func_00A5() returns (var r0) {
var var0 = 0x00;
var var1 = storage[0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc] & (0x01 << 0xa0) - 0x01;
return var1;
}
}
label_0000:
0000 60 PUSH1 0x80
0002 60 PUSH1 0x40
0004 52 MSTORE
0005 60 PUSH1 0x04
0007 36 CALLDATASIZE
0008 10 LT
0009 61 PUSH2 0x0022
000C 57 *JUMPI
label_000D:
000D 60 PUSH1 0x00
000F 35 CALLDATALOAD
0010 60 PUSH1 0xe0
0012 1C SHR
0013 80 DUP1
0014 63 PUSH4 0x5c60da1b
0019 14 EQ
001A 61 PUSH2 0x0039
001D 57 *JUMPI
label_001E:
001E 61 PUSH2 0x0031
0021 56 *JUMP
label_0022:
0022 5B JUMPDEST
0023 36 CALLDATASIZE
0024 61 PUSH2 0x0031
0027 57 *JUMPI
label_0028:
0028 61 PUSH2 0x002f
002B 61 PUSH2 0x006a
002E 56 *JUMP
002F 5B JUMPDEST
0030 00 *STOP
label_0031:
0031 5B JUMPDEST
0032 61 PUSH2 0x002f
0035 61 PUSH2 0x006a
0038 56 *JUMP
label_0039:
0039 5B JUMPDEST
003A 34 CALLVALUE
003B 80 DUP1
003C 15 ISZERO
003D 61 PUSH2 0x0045
0040 57 *JUMPI
label_0041:
0041 60 PUSH1 0x00
0043 80 DUP1
0044 FD *REVERT
label_0045:
0045 5B JUMPDEST
0046 50 POP
0047 61 PUSH2 0x004e
004A 61 PUSH2 0x00a5
004D 56 *JUMP
label_004E:
004E 5B JUMPDEST
004F 60 PUSH1 0x40
0051 51 MLOAD
0052 60 PUSH1 0x01
0054 60 PUSH1 0x01
0056 60 PUSH1 0xa0
0058 1B SHL
0059 03 SUB
005A 90 SWAP1
005B 91 SWAP2
005C 16 AND
005D 81 DUP2
005E 52 MSTORE
005F 60 PUSH1 0x20
0061 01 ADD
0062 60 PUSH1 0x40
0064 51 MLOAD
0065 80 DUP1
0066 91 SWAP2
0067 03 SUB
0068 90 SWAP1
0069 F3 *RETURN
label_006A:
006A 5B JUMPDEST
006B 61 PUSH2 0x00a3
006E 61 PUSH2 0x009e
0071 7F PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
0092 54 SLOAD
0093 60 PUSH1 0x01
0095 60 PUSH1 0x01
0097 60 PUSH1 0xa0
0099 1B SHL
009A 03 SUB
009B 16 AND
009C 90 SWAP1
009D 56 *JUMP
label_009E:
009E 5B JUMPDEST
009F 61 PUSH2 0x010c
00A2 56 *JUMP
00A3 5B JUMPDEST
00A4 56 *JUMP
label_00A5:
00A5 5B JUMPDEST
00A6 60 PUSH1 0x00
00A8 61 PUSH2 0x00d8
00AB 7F PUSH32 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc
00CC 54 SLOAD
00CD 60 PUSH1 0x01
00CF 60 PUSH1 0x01
00D1 60 PUSH1 0xa0
00D3 1B SHL
00D4 03 SUB
00D5 16 AND
00D6 90 SWAP1
00D7 56 *JUMP
label_00D8:
00D8 5B JUMPDEST
00D9 90 SWAP1
00DA 50 POP
00DB 90 SWAP1
00DC 56 *JUMP
00DD 5B JUMPDEST
00DE 90 SWAP1
00DF 56 *JUMP
00E0 5B JUMPDEST
00E1 60 PUSH1 0x60
00E3 61 PUSH2 0x0105
00E6 83 DUP4
00E7 83 DUP4
00E8 60 PUSH1 0x40
00EA 51 MLOAD
00EB 80 DUP1
00EC 60 PUSH1 0x60
00EE 01 ADD
00EF 60 PUSH1 0x40
00F1 52 MSTORE
00F2 80 DUP1
00F3 60 PUSH1 0x27
00F5 81 DUP2
00F6 52 MSTORE
00F7 60 PUSH1 0x20
00F9 01 ADD
00FA 61 PUSH2 0x02c2
00FD 60 PUSH1 0x27
00FF 91 SWAP2
0100 39 CODECOPY
0101 61 PUSH2 0x0130
0104 56 *JUMP
0105 5B JUMPDEST
0106 93 SWAP4
0107 92 SWAP3
0108 50 POP
0109 50 POP
010A 50 POP
010B 56 *JUMP
label_010C:
010C 5B JUMPDEST
010D 36 CALLDATASIZE
010E 60 PUSH1 0x00
0110 80 DUP1
0111 37 CALLDATACOPY
0112 60 PUSH1 0x00
0114 80 DUP1
0115 36 CALLDATASIZE
0116 60 PUSH1 0x00
0118 84 DUP5
0119 5A GAS
011A F4 DELEGATECALL
011B 3D RETURNDATASIZE
011C 60 PUSH1 0x00
011E 80 DUP1
011F 3E RETURNDATACOPY
0120 80 DUP1
0121 80 DUP1
0122 15 ISZERO
0123 61 PUSH2 0x012b
0126 57 *JUMPI
label_0127:
0127 3D RETURNDATASIZE
0128 60 PUSH1 0x00
012A F3 *RETURN
label_012B:
012B 5B JUMPDEST
012C 3D RETURNDATASIZE
012D 60 PUSH1 0x00
012F FD *REVERT
0130 5B JUMPDEST
0131 60 PUSH1 0x60
0133 83 DUP4
0134 3B EXTCODESIZE
0135 61 PUSH2 0x0194
0138 57 *JUMPI
0139 60 PUSH1 0x40
013B 51 MLOAD
013C 62 PUSH3 0x461bcd
0140 60 PUSH1 0xe5
0142 1B SHL
0143 81 DUP2
0144 52 MSTORE
0145 60 PUSH1 0x20
0147 60 PUSH1 0x04
0149 82 DUP3
014A 01 ADD
014B 52 MSTORE
014C 60 PUSH1 0x26
014E 60 PUSH1 0x24
0150 82 DUP3
0151 01 ADD
0152 52 MSTORE
0153 7F PUSH32 0x416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f
0174 60 PUSH1 0x44
0176 82 DUP3
0177 01 ADD
0178 52 MSTORE
0179 65 PUSH6 0x1b9d1c9858dd
0180 60 PUSH1 0xd2
0182 1B SHL
0183 60 PUSH1 0x64
0185 82 DUP3
0186 01 ADD
0187 52 MSTORE
0188 60 PUSH1 0x84
018A 01 ADD
018B 5B JUMPDEST
018C 60 PUSH1 0x40
018E 51 MLOAD
018F 80 DUP1
0190 91 SWAP2
0191 03 SUB
0192 90 SWAP1
0193 FD *REVERT
0194 5B JUMPDEST
0195 60 PUSH1 0x00
0197 80 DUP1
0198 85 DUP6
0199 60 PUSH1 0x01
019B 60 PUSH1 0x01
019D 60 PUSH1 0xa0
019F 1B SHL
01A0 03 SUB
01A1 16 AND
01A2 85 DUP6
01A3 60 PUSH1 0x40
01A5 51 MLOAD
01A6 61 PUSH2 0x01af
01A9 91 SWAP2
01AA 90 SWAP1
01AB 61 PUSH2 0x0242
01AE 56 *JUMP
01AF 5B JUMPDEST
01B0 60 PUSH1 0x00
01B2 60 PUSH1 0x40
01B4 51 MLOAD
01B5 80 DUP1
01B6 83 DUP4
01B7 03 SUB
01B8 81 DUP2
01B9 85 DUP6
01BA 5A GAS
01BB F4 DELEGATECALL
01BC 91 SWAP2
01BD 50 POP
01BE 50 POP
01BF 3D RETURNDATASIZE
01C0 80 DUP1
01C1 60 PUSH1 0x00
01C3 81 DUP2
01C4 14 EQ
01C5 61 PUSH2 0x01ea
01C8 57 *JUMPI
01C9 60 PUSH1 0x40
01CB 51 MLOAD
01CC 91 SWAP2
01CD 50 POP
01CE 60 PUSH1 0x1f
01D0 19 NOT
01D1 60 PUSH1 0x3f
01D3 3D RETURNDATASIZE
01D4 01 ADD
01D5 16 AND
01D6 82 DUP3
01D7 01 ADD
01D8 60 PUSH1 0x40
01DA 52 MSTORE
01DB 3D RETURNDATASIZE
01DC 82 DUP3
01DD 52 MSTORE
01DE 3D RETURNDATASIZE
01DF 60 PUSH1 0x00
01E1 60 PUSH1 0x20
01E3 84 DUP5
01E4 01 ADD
01E5 3E RETURNDATACOPY
01E6 61 PUSH2 0x01ef
01E9 56 *JUMP
01EA 5B JUMPDEST
01EB 60 PUSH1 0x60
01ED 91 SWAP2
01EE 50 POP
01EF 5B JUMPDEST
01F0 50 POP
01F1 91 SWAP2
01F2 50 POP
01F3 91 SWAP2
01F4 50 POP
01F5 61 PUSH2 0x01ff
01F8 82 DUP3
01F9 82 DUP3
01FA 86 DUP7
01FB 61 PUSH2 0x0209
01FE 56 *JUMP
01FF 5B JUMPDEST
0200 96 SWAP7
0201 95 SWAP6
0202 50 POP
0203 50 POP
0204 50 POP
0205 50 POP
0206 50 POP
0207 50 POP
0208 56 *JUMP
0209 5B JUMPDEST
020A 60 PUSH1 0x60
020C 83 DUP4
020D 15 ISZERO
020E 61 PUSH2 0x0218
0211 57 *JUMPI
0212 50 POP
0213 81 DUP2
0214 61 PUSH2 0x0105
0217 56 *JUMP
0218 5B JUMPDEST
0219 82 DUP3
021A 51 MLOAD
021B 15 ISZERO
021C 61 PUSH2 0x0228
021F 57 *JUMPI
0220 82 DUP3
0221 51 MLOAD
0222 80 DUP1
0223 84 DUP5
0224 60 PUSH1 0x20
0226 01 ADD
0227 FD *REVERT
0228 5B JUMPDEST
0229 81 DUP2
022A 60 PUSH1 0x40
022C 51 MLOAD
022D 62 PUSH3 0x461bcd
0231 60 PUSH1 0xe5
0233 1B SHL
0234 81 DUP2
0235 52 MSTORE
0236 60 PUSH1 0x04
0238 01 ADD
0239 61 PUSH2 0x018b
023C 91 SWAP2
023D 90 SWAP1
023E 61 PUSH2 0x025e
0241 56 *JUMP
0242 5B JUMPDEST
0243 60 PUSH1 0x00
0245 82 DUP3
0246 51 MLOAD
0247 61 PUSH2 0x0254
024A 81 DUP2
024B 84 DUP5
024C 60 PUSH1 0x20
024E 87 DUP8
024F 01 ADD
0250 61 PUSH2 0x0291
0253 56 *JUMP
0254 5B JUMPDEST
0255 91 SWAP2
0256 90 SWAP1
0257 91 SWAP2
0258 01 ADD
0259 92 SWAP3
025A 91 SWAP2
025B 50 POP
025C 50 POP
025D 56 *JUMP
025E 5B JUMPDEST
025F 60 PUSH1 0x00
0261 60 PUSH1 0x20
0263 82 DUP3
0264 52 MSTORE
0265 82 DUP3
0266 51 MLOAD
0267 80 DUP1
0268 60 PUSH1 0x20
026A 84 DUP5
026B 01 ADD
026C 52 MSTORE
026D 61 PUSH2 0x027d
0270 81 DUP2
0271 60 PUSH1 0x40
0273 85 DUP6
0274 01 ADD
0275 60 PUSH1 0x20
0277 87 DUP8
0278 01 ADD
0279 61 PUSH2 0x0291
027C 56 *JUMP
027D 5B JUMPDEST
027E 60 PUSH1 0x1f
0280 01 ADD
0281 60 PUSH1 0x1f
0283 19 NOT
0284 16 AND
0285 91 SWAP2
0286 90 SWAP1
0287 91 SWAP2
0288 01 ADD
0289 60 PUSH1 0x40
028B 01 ADD
028C 92 SWAP3
028D 91 SWAP2
028E 50 POP
028F 50 POP
0290 56 *JUMP
0291 5B JUMPDEST
0292 60 PUSH1 0x00
0294 5B JUMPDEST
0295 83 DUP4
0296 81 DUP2
0297 10 LT
0298 15 ISZERO
0299 61 PUSH2 0x02ac
029C 57 *JUMPI
029D 81 DUP2
029E 81 DUP2
029F 01 ADD
02A0 51 MLOAD
02A1 83 DUP4
02A2 82 DUP3
02A3 01 ADD
02A4 52 MSTORE
02A5 60 PUSH1 0x20
02A7 01 ADD
02A8 61 PUSH2 0x0294
02AB 56 *JUMP
02AC 5B JUMPDEST
02AD 83 DUP4
02AE 81 DUP2
02AF 11 GT
02B0 15 ISZERO
02B1 61 PUSH2 0x02bb
02B4 57 *JUMPI
02B5 60 PUSH1 0x00
02B7 84 DUP5
02B8 84 DUP5
02B9 01 ADD
02BA 52 MSTORE
02BB 5B JUMPDEST
02BC 50 POP
02BD 50 POP
02BE 50 POP
02BF 50 POP
02C0 56 *JUMP
02C1 FE *ASSERT
02C2 41 COINBASE
02C3 64 PUSH5 0x6472657373
02C9 3A GASPRICE
02CA 20 SHA3
02CB 6C PUSH13 0x6f772d6c6576656c2064656c65
02D9 67 PUSH8 0x6174652063616c6c
02E2 20 SHA3
02E3 66 PUSH7 0x61696c6564a264
02EB 69 PUSH10 0x706673582212204148f0
02F6 D0 D0
02F7 2F 2F
02F8 9A SWAP11
02F9 EC EC
02FA 37 CALLDATACOPY
02FB 46 CHAINID
02FC 44 DIFFICULTY
02FD 9B SWAP12
02FE 4F 4F
02FF C5 C5
0300 25 25
0301 33 CALLER
0302 78 PUSH25 0x761e013a9a5ba053423a5811b29a77ab64736f6c6343000802
031C 00 *STOP
031D 33 CALLER