ICE is a block cipher operating on 64-bit data blocks (which is a bit dated, and less than perfectly safe in some usage scenario involving a huge amount of data). Depending on implementations, the key can be 64-bit (which is quite dated, and unsafe against a potent attacker), or some higher multiple (128-bit is fine for longer than I dare try making predictions).
The ICE home page is here. There is source, so no need for reverse-engineering.
I am not aware of any near-practical attack on the full cipher, or of any devastating attack even on the reduced version Thin-ICE (which uses 8 rounds instead of 16). And (as a consequence) I know no efficient method to recover the key or otherwise build an equivalent function from plaintext-ciphertext pairs alone, without any form of access to the key.
Best technique I know to recover the keys from plaintext-ciphertext pairs alone is brute force (trying all keys until finding one that fits 2 example pairs), which is conceivable for the 64-bit key version (only). But we are talking of thousands of CPU.years, or massive investment in ASICs or FPGAs.