This kind of super-cautious mindset can’t be modeled with any real valued money X (current state of the world) → utility type of mapping.
Yes it can: use the mapping U:money->utils such that U(x) is increasing for x<$100M (probably concave) and U(x) = C = const for x>=$100M. Then expected utility EU($100M@100%) = C*1 = C, and also EU($100B@90%) = C*0.9 < EU($100M@100%). But one of the consequences of expected utility representation is that now you must be indifferent between 20% chance at $100M and 20% chance at $100B.
Yes it can: use the mapping U:money->utils such that U(x) is increasing for x<$100M (probably concave) and U(x) = C = const for x>=$100M. Then expected utility EU($100M@100%) = C*1 = C, and also EU($100B@90%) = C*0.9 < EU($100M@100%). But one of the consequences of expected utility representation is that now you must be indifferent between 20% chance at $100M and 20% chance at $100B.
I also made the requirement that 101M@100% should be preferred to 100M@100%.
Your utility function of U(x)=C for x>100M can’t satisfy that.