View attachment 312840
[coin]
580F0000 003DBF40
780F0000 0000962C
640F0000 00000000 3F420F00
Your problem may be you started your search too late, when you have more than 255 coins. You may want to check this out
https://en.wikipedia.org/wiki/Endianness. I am no historian but it looks like the endianness is different for the original CPU for this game. So instead of 0xF423F being 999999 you have 0x3F420F00. When you have more than 255 coins your search would be wrong unless you make the conversion first.
You probably don't need to use pointer, there is a good chance that the address will remain static as it is in main.
The code that access the memory is like this
main:000000000003CEF4 01 69 29 38 STRB W1, [X8,X9]
My speculation is X8 is the pointer pointing to the emulated memory base address and X9 is the offset from that base.