Silencer animation location

Does anyone know where the silencer animation is located inside the ROM?

I examined it properly.
but, I just did not understand the palette.

frame: E4842 (maybe) ???
img: 75B570 (lz77)
tsa: 77ACB4 (lz77)
or 75C65C or 75CA90 ??
pal: 77AC14 (?)

frame: DF546 (maybe)???
img: 72E998 (lz77)
tsa: 7457A8 (lz77)
or 72FA84 or 72FEB8 ??
pal: 745708 (?)

Although there are multiple TSAs, it is not an array.
I found a palette, but I do not know how this palette is set.
I identified the pallet number used by no$gba, searched with binary data, and found a place.

I think that a special program is created because there are routines that set the palette to zero for all the screens.

I did some digging of my own with the info you provided, I got the info for FE7:

Palette 2B3D9C
Image Number 424
Graphics 296F50
TSA 1 2B3E3C 2 29803C 3 298470

Couldn’t find the function or the frame data, however from what I can tell, the animation uses the same image three times each with a different TSA

img: 296F50
tsa: 2B3E3C
or 29803C or 298470
pal: 2B3D9C

img: 29CBC4
tsa: 2B9AB0
or 29DCB0 or 29E0E4
pal: 2B9A10

When searching for different versions, I think that you can easily search by using “tool” -> “pointer calculation tool” of FEBuilderGBA.
(Of course, it is not perfect, so it may be incorrect.)

It searches where the data in the current version is in other versions.
As a feature, since the pointer part is searched with a wildcard, even if the compiler generates different codes, it can be tracked.

For example, in FE8U the palette is 0x745708.
From this value, you can find the value of FE7U automatically by pressing a button.
the automatically detected value is 0x082B3D9C (2B3D9C).