InsufficientDataBytes error when decoding ethereum transaction input data

Viewed 13

I'm getting an InsufficientDataBytes error when trying to decode transaction input data which seems to be fine on EVM.

Here is the transaction in question https://etherscan.io/tx/0x0a80cc2e457962b40ee74b961f0c1d5ec4578cffc204eb426d51456f2b25f68e

You can see the input data in the traces Action [4] https://etherscan.io/vmtrace?txhash=0x0a80cc2e457962b40ee74b961f0c1d5ec4578cffc204eb426d51456f2b25f68e&type=parity

This is the input data that is returned from the transaction

0xfb0f3ee100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1c41d53dd380000000000000000000000000032af2682d1e89af4aef8203e5050191bf17842cc000000000000000000000000004c00500000ad104d7dbd00e3ae0a5c00560c00000000000000000000000000a49a0e5ef83cf89ac8aae182f22e6464b229efc80000000000000000000000000000000000000000000000000000000000000048000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000063120e2500000000000000000000000000000000000000000000000000000000631602a500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060645ee7d499370000007b02230091a7ed01230072f7006a004d60a8d4e71d599b8104250f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002e0000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000061a0ea166d8000000000000000000000000000000a26b00c1f0df003000390027140000faa719000000000000000000000000000000000000000000000000000c341d42cdb000000000000000000000000000210d4c84c9d29b0ded22b19bd6d6562c696d6de100000000000000000000000000000000000000000000000000000000000000410ceaf14d2fd6e9152e320017969785cd9a61b05fa045581226c01189c0c3831d74330b0eab1ad061f4e564cb576759ffddcd39f9dd7569b783fef00ecffe15791c

I also have the correct contract ABI.

web3_contract = Web3.eth.contract(
  Web3.toChecksumAddress(contract_address), abi=abi
)
res = web3_contract.decode_function_input(input_data)

Error:

InsufficientDataBytes: Tried to read 96 bytes.  Only got 65 bytes
1 Answers

you are saying inner transaction, what is function. and what do you want from it? you need to put more

Related