Function at 0x45f410
Capabilities:
Print debug messages

Disassembly:
mov eax, dword [0x6d7ea0]
push esi
mov esi, ecx
test eax, eax
je 0x45f41f
pop esi
jmp eax
cmp dword [esi + 0x55e74], 0
jne 0x45f4de
push ebx
push edi
push 0
mov dword [0x6d7e78], 0
call dword [sym.imp.PAL.dll_PalTaskGetTaskData]
add esp, 4
mov edi, 1
lea ebx, [eax + 0x338]
nop
test dword [esi + 0x55f7c], edi
je case.0x45f46f.3
lea eax, [edi - 1]
cmp eax, 0xf
ja case.0x45f46f.3
movzx eax, byte [eax + 0x45f7d8]
jmp dword [eax*4 + 0x45f7c0]
mov ecx, ebx
call fcn.0041f220
test eax, eax
je case.0x45f46f.3
and dword [esi + 0x55f7c], 0xfffffffe
jmp case.0x45f46f.3
call dword [sym.imp.PAL.dll_PaltimeGetTime]
sub eax, dword [ebx + 0x55fa4]
cmp eax, dword [ebx + 0x55fa8]
jb case.0x45f46f.3
push dword [ebx + 0x55f9c]
call dword [sym.imp.PAL.dll_PalRenderGetActive]
push eax
call dword [sym.imp.PAL.dll_PalSpriteRelease]
add esp, 8
xorps xmm0, xmm0
movups xmmword [ebx + 0x55f9c], xmm0
and dword [ebx + 0x55f78], 0xfffffffd
call fcn.00464620
and dword [esi + 0x55f7c], 0xfffffffd
pop edi
pop ebx
pop esi
ret
mov ecx, ebx
call fcn.0041efc0
test eax, eax
je case.0x45f46f.3
and dword [esi + 0x55f7c], 0xfffffffb
jmp case.0x45f46f.3
mov ecx, ebx
call fcn.0041ed80
test eax, eax
je case.0x45f46f.3
and dword [esi + 0x55f7c], 0xfffffff7
jmp case.0x45f46f.3
cmp dword [ebx + 0x5959c], 2
jne case.0x45f46f.3
push 0x1fffffff
push 0
call dword [sym.imp.PAL.dll_PalGetFxEffectState]
add esp, 8
test eax, eax
jne case.0x45f46f.3
push 0x1fffffff
push eax
call dword [sym.imp.PAL.dll_PalReleaseFxEffect]
add esp, 8
and dword [esi + 0x55f7c], 0xffffffef
add edi, edi
jne 0x45f450
xor ecx, ecx
lea eax, [esi + 0x59634]
nop dword [eax + eax]
cmp dword [eax], 0
je 0x45f55f
cmp dword [eax + 0x18], 2
je 0x45f625
inc ecx
add eax, 0x7edcc
cmp ecx, 0x10
jl 0x45f550
call dword [sym.imp.PAL.dll_PalEffectIs]
test eax, eax
jne 0x45f4dc
cmp dword [esi + 0x3290], eax
jbe 0x45f59e
call dword [sym.imp.PAL.dll_PaltimeGetTime]
sub eax, dword [esi + 0x328c]
cmp eax, dword [esi + 0x3290]
jb 0x45f59e
mov dword [esi + 0x3290], 0
push 0
call dword [sym.imp.PAL.dll_PalTaskGetTaskData]
add esp, 4
cmp dword [eax + 0x84763c], 0
lea edi, [eax + 0x338]
je 0x45f6e9
cmp dword [edi + 0x847308], 0
je 0x45f6e9
cmp dword [edi + 0x84730c], 0
jne 0x45f601
push 3
push dword [edi + 0x55e58]
mov edx, 2
mov ecx, edi
call fcn.00466120
mov eax, dword [edi + 0x847310]
add esp, 8
add eax, dword [edi + 0x55e5c]
mov dword [edi + 0x55e58], eax
inc dword [edi + 0x84730c]
lea edi, [esi + 0x55e50]
mov dword [0x6d7e78], 1
mov ecx, edi
call fcn.00464d50
test eax, eax
je 0x45f4dc
jmp 0x45f6ef
call dword [sym.imp.PAL.dll_PalEffectIs]
test eax, eax
jne 0x45f4dc
cmp dword [esi + 0x3294], eax
jne 0x45f4dc
lea ecx, [esi + 0x3288]
call fcn.00417920
test eax, eax
je 0x45f692
pop edi
pop ebx
lea ecx, [esi + 0x55e50]
mov dword [0x4d0518], 0
mov dword [0x4d051c], 0
mov dword [0x4d0520], 1
mov byte [0x6d7c6f], 0
mov byte [0x6d7c6e], 0
mov dword [0x6d7e78], 2
pop esi
jmp fcn.00464d50
lea ecx, [esi + 0x3288]
call fcn.0044fdc0
test eax, eax
je 0x45f7ab
pop edi
pop ebx
lea ecx, [esi + 0x55e50]
mov dword [0x4d0518], 0
mov dword [0x4d051c], 0
mov dword [0x4d0520], 1
mov byte [0x6d7c6f], 0
mov byte [0x6d7c6e], 0
mov dword [0x6d7e78], 3
pop esi
jmp fcn.00464d50
lea edi, [esi + 0x55e50]
cmp dword [esi + 0x3294], 0
jne 0x45f79a
lea ecx, [esi + 0x3288]
call fcn.00417920
test eax, eax
je 0x45f74b
mov ecx, edi
mov dword [0x4d0518], 0
pop edi
pop ebx
mov dword [0x4d051c], 0
mov dword [0x4d0520], 1
mov byte [0x6d7c6f], 0
mov byte [0x6d7c6e], 0
mov dword [0x6d7e78], 2
pop esi
jmp fcn.00464d50
lea ecx, [esi + 0x3288]
call fcn.0044fdc0
test eax, eax
je 0x45f79a
mov ecx, edi
mov dword [0x4d0518], 0
pop edi
pop ebx
mov dword [0x4d051c], 0
mov dword [0x4d0520], 1
mov byte [0x6d7c6f], 0
mov byte [0x6d7c6e], 0
mov dword [0x6d7e78], 3
pop esi
jmp fcn.00464d50
mov ecx, edi
mov dword [0x6d7e78], 0
call fcn.00464d50
pop edi
pop ebx
lea ecx, [esi + 4]
mov dword [0x6d7e78], 0
pop esi
jmp fcn.00454b70