On this transaction: https://etherscan.io/tx/0xae2630cdfbd0ca5292d272343c35dc8094365f2ecdc5c262c5639e79683f74dc, the input data is parsed and displayed as 'fund'.
This is both correct and incorrect.
It is incorrect because there is no function in the 'to' contract (singularDTVToken) called 'fund.' (https://etherscan.io/address/0xaec2e87e0a235266d9c5adc9deb4b2e29b54d009#code).
But there is a function called 'fund' in a related contract, and the 4byte encoding for 'fund()' is 0xb60d4288, which is the value of the input data. (Related contract is called SNGLSCrowdFund: https://etherscan.io/address/0xbdf5c4f1c1a9d7335a6a68d9aa011d5f40cf5520#code.)
I think it's misleading to say that the input data resolves to 'fund' in this case. This suggests that a function called 'fund' was invoked on the contract, when in fact, it was not.
My question is this: Is it correct to report 'fund' in the context of a contract that has no 'fund' function. Wouldn't it be more accurate to indicate that the default function had actually been called? (And is it true that the default function would have been called in this case?)