Function at 0x4123b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x30
push ebx
push edi
lea edi, [esi + 8]
call dword [sym.imp.PAL.dll_PalRenderGetActive]
mov ecx, dword [esi + 0x6d550]
mov ebx, eax
push ecx
lea eax, [esi + 0x6d364]
push eax
push ebx
mov dword [esp + 0x28], ebx
call dword [sym.imp.PAL.dll_PalSpriteReleaseArray]
mov edx, dword [esi + 0x6d550]
push edx
lea eax, [esi + 0x6d3e4]
push eax
push ebx
call dword [sym.imp.PAL.dll_PalSpriteReleaseArray]
mov ecx, dword [esi + 0x6d550]
push ecx
lea eax, [esi + 0x6d464]
push eax
push ebx
call dword [sym.imp.PAL.dll_PalSpriteReleaseArray]
push 0x80
lea eax, [esi + 0x6d464]
push 0
push eax
call fcn.00422b50
push 0x80
push 0
lea ebx, [esi + 0x6d3e4]
push ebx
call fcn.00422b50
push 0x80
lea eax, [esi + 0x6d364]
push 0
push eax
call fcn.00422b50
add esp, 0x48
push 0x80
lea edx, [esi + 0x6d2e4]
push 0
push edx
call fcn.00422b50
mov eax, dword [ebp + 8]
add esp, 0xc
cmp eax, dword [esi + 0x6d554]
jle 0x41246e
xor eax, eax
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [esi + 0x6d518]
mov dword [esp + 0x10], ecx
mov dword [esi + 0x6d528], eax
mov ecx, dword [esi + 0xc5dc8]
add ecx, 0x1303
cmp eax, dword [esi + 0x6d554]
mov dword [esp + 0xc], 0
mov dword [esp + 0x14], ecx
mov dword [esp + 0x20], eax
jge 0x412703
imul eax, eax, 0x21e
lea edx, [eax + esi + 0x6d558]
mov dword [esp + 8], edx
jmp 0x4124c0
lea eax, [edi + 0x1f0]
push eax
lea eax, [edi + 0x1ec]
push eax
call dword [sym.imp.PAL.dll_PalFontGetColor]
mov edx, dword [esp + 0x10]
mov eax, dword [edi + 0x1ec]
mov ecx, dword [edi + 0x1f0]
push edx
push edi
mov dword [edi + 0x1e4], eax
mov dword [edi + 0x1e8], ecx
call fcn.004185f0
mov eax, dword [esp + 0x18]
add eax, 0x1fe
mov dword [ebx - 0x100], eax
mov eax, dword [esp + 0x24]
mov edx, dword [edi + 0x74]
mov ecx, dword [edi + 0x78]
add edx, dword [edi + 0x64]
push eax
mov eax, dword [esp + 0x30]
push ecx
push edx
push eax
call dword [sym.imp.PAL.dll_PalSpriteCreate]
push 0
mov dword [ebx], eax
mov ecx, dword [edi + 0x68]
mov edx, dword [edi + 0x64]
push ecx
mov ecx, dword [edi + 0x78]
push edx
mov edx, dword [edi + 0x74]
push ecx
mov ecx, dword [esp + 0x38]
push edx
add ecx, 0xff
push 0
push ecx
push eax
lea edx, [edi + 0x1e4]
xor ecx, ecx
call fcn.00419c10
mov ecx, dword [ebx]
add esp, 0x40
lea eax, [esp + 0x28]
push eax
push ecx
call dword [sym.imp.PAL.dll_PalSpriteGetRect]
mov edx, dword [esp + 0x3c]
sub dword [esp + 0x18], edx
fild dword [esp + 0x18]
mov eax, dword [ebx]
fstp dword [esp + 0x20]
fild dword [esi + 0x6d4fc]
fadd dword [esp + 0x20]
fstp dword [esp + 0x2c]
fld dword [esp + 0x2c]
fstp dword [esp + 4]
fild dword [esi + 0x6d4f8]
fstp dword [esp]
push eax
call dword [sym.imp.PAL.dll_PalSpriteSetPos]
mov ecx, dword [esi + 0x6d4e8]
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x14]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ecx
call dword [sym.imp.PAL.dll_PalSpriteCreateText]
mov dword [ebx - 0x80], eax
fild dword [esi + 0x6d4f4]
add esp, 0x14
fadd dword [esp + 0x20]
fstp dword [esp + 0x2c]
fld dword [esp + 0x2c]
fstp dword [esp + 4]
fild dword [esi + 0x6d4f0]
fstp dword [esp]
push eax
call dword [sym.imp.PAL.dll_PalSpriteSetPos]
mov edx, dword [ebx - 0x100]
add esp, 0xc
cmp byte [edx], 0
je 0x41263e
cmp dword [esi + 0x6d52c], 0
je 0x41263e
mov eax, dword [esp + 0x14]
push eax
push 0
push 0
lea ecx, [esi + 0x6d530]
call fcn.0040e6a0
mov dword [ebx + 0x80], eax
fild dword [esi + 0x6d504]
add esp, 4
fadd dword [esp + 0x20]
fstp dword [esp + 0x2c]
fld dword [esp + 0x2c]
fstp dword [esp + 4]
fild dword [esi + 0x6d500]
fstp dword [esp]
push eax
call dword [sym.imp.PAL.dll_PalSpriteSetPos]
add esp, 0xc
mov edx, dword [edi + 0x1f0]
mov ecx, dword [edi + 0x1ec]
mov eax, edx
push eax
push ecx
mov dword [edi + 0x1e4], ecx
mov dword [edi + 0x1e8], edx
call dword [sym.imp.PAL.dll_PalFontSetColor]
mov eax, dword [esp + 0x18]
sub eax, dword [esi + 0x6d508]
add dword [esp + 0x14], 1
add esp, 8
add ebx, 4
cmp eax, dword [esi + 0x6d510]
mov dword [esp + 0x10], eax
jl 0x4126b5
mov eax, dword [esp + 0x20]
add dword [esp + 8], 0x21e
add eax, 1
cmp eax, dword [esi + 0x6d554]
mov dword [esp + 0x20], eax
jl 0x4124c0
mov edx, dword [esp + 0xc]
mov dword [esi + 0x6d550], edx
mov eax, 1
pop edi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esp + 0xc]
mov edx, dword [esi + eax*4 + 0x6d360]
mov ebx, dword [esp + 0x1c]
sub eax, 1
push edx
push ebx
mov dword [esp + 0x14], eax
call dword [sym.imp.PAL.dll_PalSpriteRelease]
mov edi, dword [esp + 0x14]
mov eax, dword [esi + edi*4 + 0x6d3e4]
push eax
push ebx
call dword [sym.imp.PAL.dll_PalSpriteRelease]
mov ecx, dword [esi + edi*4 + 0x6d464]
push ecx
push ebx
call dword [sym.imp.PAL.dll_PalSpriteRelease]
add esp, 0x18
mov dword [esi + edi*4 + 0x6d2e4], 0
mov edx, dword [esp + 0xc]
pop edi
mov dword [esi + 0x6d550], edx
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret