contract Contract {
function main() {
memory[0x40:0x60] = 0x80;
var var0 = 0x00;
var var1 = msg.data.length;
var var2 = 0x60;
var var3 = 0x00;
var var4 = var3;
var var5 = 0xffffffffffffffffffffffffffffffffffffffff & 0x9de3af976f8a0b2de6833a0c2dedf39ff16e41ce;
var var6 = 0x45;
var var7 = var0;
var var9 = memory[0x40:0x60];
var var8 = var1;
var6 =
func_00DC(var7, var8, var9);
var temp0 = memory[0x40:0x60];
var temp1;
temp1, memory[temp0:temp0 + 0x00] = address(var5).delegatecall.gas(msg.gas)(memory[temp0:temp0 + var6 - temp0]);
var6 = returndata.length;
var7 = var6;
if (var7 == 0x00) {
var4 = 0x60;
var3 = var5;
if (!var3) { revert(memory[0x00:0x00]); }
label_0091:
var temp2 = var4;
return memory[temp2 + 0x20:temp2 + 0x20 + memory[temp2:temp2 + 0x20]];
} else {
var temp3 = memory[0x40:0x60];
var6 = temp3;
memory[0x40:0x60] = var6 + (returndata.length + 0x3f & ~0x1f);
memory[var6:var6 + 0x20] = returndata.length;
var temp4 = returndata.length;
memory[var6 + 0x20:var6 + 0x20 + temp4] = returndata[0x00:0x00 + temp4];
var4 = var6;
var3 = var5;
if (var3) { goto label_0091; }
else { revert(memory[0x00:0x00]); }
}
}
function func_00A1(var arg0, var arg1) returns (var r0) { return arg1; }
function func_00AC(var arg0, var arg1, var arg2) {
var temp0 = arg0;
var temp1 = arg1;
memory[temp1:temp1 + temp0] = msg.data[arg2:arg2 + temp0];
memory[temp1 + temp0:temp1 + temp0 + 0x20] = 0x00;
}
function func_00BB(var arg0, var arg1, var arg2) returns (var r0) {
var var0 = 0x00;
var var1 = 0xc5;
var var2 = arg1;
var var3 = arg0;
var1 =
func_00A1(var2, var3);
var temp0 = var1;
arg0 = temp0;
var1 = 0xd0;
var2 = arg1;
var3 = arg0;
var var4 = arg2;
func_00AC(var2, var3, var4);
return arg0 + arg1;
}
function func_00DC(var arg0, var arg1, var arg2) returns (var r0) {
var var0 = 0x00;
var var1 = 0xe7;
var var2 = arg2;
var var3 = arg1;
var var4 = arg0;
return
func_00BB(var2, var3, var4);
}
}
label_0000:
0000 60 PUSH1 0x80
0002 60 PUSH1 0x40
0004 52 MSTORE
0005 60 PUSH1 0x00
0007 36 CALLDATASIZE
0008 60 PUSH1 0x60
000A 60 PUSH1 0x00
000C 80 DUP1
000D 73 PUSH20 0x9de3af976f8a0b2de6833a0c2dedf39ff16e41ce
0022 73 PUSH20 0xffffffffffffffffffffffffffffffffffffffff
0037 16 AND
0038 85 DUP6
0039 85 DUP6
003A 60 PUSH1 0x40
003C 51 MLOAD
003D 60 PUSH1 0x45
003F 92 SWAP3
0040 91 SWAP2
0041 90 SWAP1
0042 60 PUSH1 0xdc
0044 56 *JUMP
label_0045:
0045 5B JUMPDEST
0046 60 PUSH1 0x00
0048 60 PUSH1 0x40
004A 51 MLOAD
004B 80 DUP1
004C 83 DUP4
004D 03 SUB
004E 81 DUP2
004F 85 DUP6
0050 5A GAS
0051 F4 DELEGATECALL
0052 91 SWAP2
0053 50 POP
0054 50 POP
0055 3D RETURNDATASIZE
0056 80 DUP1
0057 60 PUSH1 0x00
0059 81 DUP2
005A 14 EQ
005B 60 PUSH1 0x7e
005D 57 *JUMPI
label_005E:
005E 60 PUSH1 0x40
0060 51 MLOAD
0061 91 SWAP2
0062 50 POP
0063 60 PUSH1 0x1f
0065 19 NOT
0066 60 PUSH1 0x3f
0068 3D RETURNDATASIZE
0069 01 ADD
006A 16 AND
006B 82 DUP3
006C 01 ADD
006D 60 PUSH1 0x40
006F 52 MSTORE
0070 3D RETURNDATASIZE
0071 82 DUP3
0072 52 MSTORE
0073 3D RETURNDATASIZE
0074 60 PUSH1 0x00
0076 60 PUSH1 0x20
0078 84 DUP5
0079 01 ADD
007A 3E RETURNDATACOPY
007B 60 PUSH1 0x83
007D 56 *JUMP
label_007E:
007E 5B JUMPDEST
007F 60 PUSH1 0x60
0081 91 SWAP2
0082 50 POP
0083 5B JUMPDEST
0084 50 POP
0085 91 SWAP2
0086 50 POP
0087 91 SWAP2
0088 50 POP
0089 81 DUP2
008A 60 PUSH1 0x91
008C 57 *JUMPI
label_008D:
008D 60 PUSH1 0x00
008F 80 DUP1
0090 FD *REVERT
label_0091:
0091 5B JUMPDEST
0092 80 DUP1
0093 92 SWAP3
0094 50 POP
0095 50 POP
0096 50 POP
0097 91 SWAP2
0098 50 POP
0099 50 POP
009A 80 DUP1
009B 51 MLOAD
009C 90 SWAP1
009D 60 PUSH1 0x20
009F 01 ADD
00A0 F3 *RETURN
label_00A1:
00A1 5B JUMPDEST
00A2 60 PUSH1 0x00
00A4 81 DUP2
00A5 90 SWAP1
00A6 50 POP
00A7 92 SWAP3
00A8 91 SWAP2
00A9 50 POP
00AA 50 POP
00AB 56 *JUMP
label_00AC:
00AC 5B JUMPDEST
00AD 82 DUP3
00AE 81 DUP2
00AF 83 DUP4
00B0 37 CALLDATACOPY
00B1 60 PUSH1 0x00
00B3 83 DUP4
00B4 83 DUP4
00B5 01 ADD
00B6 52 MSTORE
00B7 50 POP
00B8 50 POP
00B9 50 POP
00BA 56 *JUMP
label_00BB:
00BB 5B JUMPDEST
00BC 60 PUSH1 0x00
00BE 60 PUSH1 0xc5
00C0 83 DUP4
00C1 85 DUP6
00C2 60 PUSH1 0xa1
00C4 56 *JUMP
label_00C5:
00C5 5B JUMPDEST
00C6 93 SWAP4
00C7 50 POP
00C8 60 PUSH1 0xd0
00CA 83 DUP4
00CB 85 DUP6
00CC 84 DUP5
00CD 60 PUSH1 0xac
00CF 56 *JUMP
label_00D0:
00D0 5B JUMPDEST
00D1 82 DUP3
00D2 84 DUP5
00D3 01 ADD
00D4 90 SWAP1
00D5 50 POP
00D6 93 SWAP4
00D7 92 SWAP3
00D8 50 POP
00D9 50 POP
00DA 50 POP
00DB 56 *JUMP
label_00DC:
00DC 5B JUMPDEST
00DD 60 PUSH1 0x00
00DF 60 PUSH1 0xe7
00E1 82 DUP3
00E2 84 DUP5
00E3 86 DUP7
00E4 60 PUSH1 0xbb
00E6 56 *JUMP
label_00E7:
00E7 5B JUMPDEST
00E8 91 SWAP2
00E9 50 POP
00EA 81 DUP2
00EB 90 SWAP1
00EC 50 POP
00ED 93 SWAP4
00EE 92 SWAP3
00EF 50 POP
00F0 50 POP
00F1 50 POP
00F2 56 *JUMP
00F3 FE *ASSERT
00F4 A2 LOG2
00F5 64 PUSH5 0x6970667358
00FB 22 22
00FC 12 SLT
00FD 20 SHA3
00FE EA EA
00FF 49 49
0100 73 PUSH20 0x6c06f06bdc95fdf74c90c5c30c1508eb579bc931
0115 03 SUB
0116 AA AA
0117 6F PUSH16 0xad38ea66efed64736f6c634300080d00
0128 33 CALLER