Function at 0x423090
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x214
mov eax, dword [0x4b1240]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor ebx, ebx
push esi
cmp byte [0x4b5534], bl
je 0x423335
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 5
mov esi, 0xf
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.Spark
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401c80
cmp eax, 1
je 0x42311a
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
push 5
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.Spark
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401a90
cmp eax, 1
jne 0x423335
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b5534], bl
push 5
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.Spark
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
push ebx
push ebx
push 0x36
call fcn.00409510
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b553d], bl
push esi
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.bird_attack_eff
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004019c0
mov eax, dword [0x4c5670]
dec dword [0x4a84e4]
cmp byte [eax + 0xf4], bl
jne 0x42328b
mov byte [eax + 0xf4], 1
mov eax, dword [0x4b5560]
fld dword [eax*8 + 0x4b0e6c]
mov ecx, dword [0x4c5670]
fadd qword [0x481fd8]
push 0x483
fstp dword [ebp - 0x210]
fld dword [eax*8 + 0x4b0e70]
fadd dword [0x4a8308]
fstp dword [ebp - 0x208]
fld dword [ebp - 0x210]
fstp dword [ebp - 0x214]
mov eax, dword [ebp - 0x214]
fld dword [ebp - 0x208]
mov dword [ecx + 0xc0], eax
mov eax, dword [0x4c5670]
fstp dword [ebp - 0x210]
mov edx, dword [ebp - 0x210]
fld dword [0x497edc]
mov dword [eax + 0xc4], edx
fst dword [ebp - 0x20c]
mov edx, dword [0x4c5670]
fstp dword [ebp - 0x208]
mov ecx, dword [ebp - 0x20c]
mov eax, dword [ebp - 0x208]
mov dword [edx + 0xe0], ecx
mov ecx, dword [0x4c5670]
mov dword [ecx + 0xe4], eax
mov edx, dword [0x4c5670]
mov dword [edx + 0xa4], ebx
mov eax, dword [0x4c5670]
mov dword [eax + 0xa0], 4
mov ecx, dword [0x4b5978]
push ecx
call dword [sym.imp.USER32.dll_KillTimer]
mov edx, dword [0x4b5978]
push ebx
push 0x1e
push 0x483
push edx
call dword [sym.imp.USER32.dll_SetTimer]
push ebx
push 1
push 0x13
call fcn.00409510
add esp, 0xc
cmp byte [0x4b5552], bl
jne 0x423335
push 1
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x208], esp
mov byte [0x4b5552], 1
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.ResultEff
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.004018e0
mov eax, dword [0x4b5560]
fld dword [eax*8 + 0x4b10bc]
sub esp, 0x24
fstp dword [esp + 0x20]
mov ecx, esp
fld dword [eax*8 + 0x4b10b8]
mov dword [ebp - 0x208], esp
fstp dword [esp + 0x1c]
push 9
mov dword [ecx + 0x14], esi
mov dword [ecx + 0x10], ebx
push str.ResultEff
mov byte [ecx], bl
call fcn.00414ba0
mov ecx, dword [0x4b290c]
call fcn.00401d70
push str.ResultEff__n
lea eax, [ebp - 0x204]
push 0x100
push eax
call fcn.004646a5
add esp, 0xc
lea ecx, [ebp - 0x204]
push ecx
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov ecx, dword [ebp - 4]
pop esi
xor ecx, ebp
pop ebx
call fcn.00463931
mov esp, ebp
pop ebp
ret