Just adding to the previous answer to help people understand how to interpret the encoding.
The call data is composed of 2 parts :
- Function selector (4 first bytes)
- Parameters (everything after the 4 first bytes)
The function selector is the 4 first bytes of the keccack-256 of the function signature hash:
withdraw(uint256 _amount) signature is
withdraw(uint256) is :
The first 4 bytes are :
2e1a7d4d matching the first 4 bytes of your calldata.
Next, we know from the signature that this function accepts one parameter of type uint256 (so 32 bytes).
This parameter is encoded in the call data as :
converting this Hex representation to decimals we get :
So we can conclude that the calldata targetted the withdraw function with an amount of
20000000000000000000 as parameter.