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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x558600
mov eax, dword fs:[0]
push eax
sub esp, 0x6c
push ebx
push esi
push edi
mov eax, dword [0x58829c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x18], edi
mov ecx, dword [0x58d464]
mov esi, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov eax, dword [ecx + 0x14238]
mov dword [ebp - 0x10], eax
mov eax, dword [eax + 0xc3cc]
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 0x70]
cmp eax, 0x42c
je 0x477ec0
cmp eax, 0x42d
jne 0x47825a
mov ecx, dword [ecx + 0x14b90]
cmp eax, 0x42d
mov edx, 3
mov ebx, 0xf
push str.sm_rocket_start
cmove ebx, edx
call fcn.00535e30
test eax, eax
je 0x477f06
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x477f06
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x477f06
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov dword [ebp - 0x78], 0x56aaec
mov dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x68], 0xffffffff
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x64], 0
mov edx, dword [ebp - 0x10]
mov dword [ebp - 4], 0
mov eax, dword [edx + 0xc3cc]
mov eax, dword [eax + 0x170]
test eax, eax
je 0x477f66
mov eax, dword [eax + 4]
cmp eax, 2
je 0x477f57
cmp eax, 4
jne 0x477f66
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x78]
push ebx
push eax
call fcn.00508fe0
jmp 0x477f73
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x78]
push ebx
push eax
call fcn.00508bf0
xor ebx, ebx
cmp dword [ebp - 0x64], ebx
jle 0x478183
mov edi, edi
cmp dword [edi + 0x70], 0x42d
jne 0x477fd9
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x274]
mov eax, dword [ebp - 0x5c]
sub ecx, 5
mov edx, dword [eax + ebx*8]
cmp edx, 5
jge 0x477fa9
mov dword [eax + ebx*8], 5
jmp 0x477fb0
cmp edx, ecx
jle 0x477fb0
mov dword [eax + ebx*8], ecx
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax + ebx*8 + 4]
mov ecx, dword [ecx + 0x278]
sub ecx, 5
cmp edx, 5
jge 0x477fcf
mov dword [eax + ebx*8 + 4], 5
jmp 0x477fdc
cmp edx, ecx
jle 0x477fdc
mov dword [eax + ebx*8 + 4], ecx
jmp 0x477fdc
mov eax, dword [ebp - 0x5c]
push dword [eax + ebx*8 + 4]
mov ecx, dword [ebp - 0x14]
push dword [eax + ebx*8]
lea eax, [ebp - 0x40]
push eax
call fcn.004ef620
push 0x70
mov byte [ebp - 4], 1
call esi
mov esi, eax
add esp, 4
test esi, esi
je 0x478016
push edi
mov ecx, esi
call fcn.00474790
mov dword [esi], 0x56c314
mov word [esi + 0x6c], 0
jmp 0x478018
xor esi, esi
movss xmm0, dword [ebp - 0x3c]
movss dword [esi + 0x28], xmm0
movss xmm0, dword [ebp - 0x38]
movss dword [esi + 0x2c], xmm0
cmp dword [edi + 0x70], 0x42c
jne 0x47808d
push 0x6c
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x478084
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], 0
mov byte [eax], 0
push 0x1f
push str.textures_TileArmageddon.png.xml
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, dword [ebp - 0x1c]
push str.textures_TileArmageddon.png.xml
call fcn.00401620
mov eax, dword [ebp - 0x1c]
jmp 0x478086
xor eax, eax
mov byte [ebp - 4], 1
mov dword [esi + 0xc], eax
cmp dword [edi + 0x70], 0x42d
jne 0x4780ee
push 0x6c
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x4780e5
mov dword [eax + 0x14], 0xf
mov dword [eax + 0x10], 0
mov byte [eax], 0
push 0x25
push str.textures_TileArmageddonGolden.png.xml
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, dword [ebp - 0x1c]
push str.textures_TileArmageddonGolden.png.xml
call fcn.00401620
mov eax, dword [ebp - 0x1c]
jmp 0x4780e7
xor eax, eax
mov byte [ebp - 4], 1
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
test eax, eax
je 0x4780fc
mov dword [eax + 0x48], 1
mov ecx, dword [ebp - 0x5c]
lea edx, [edi + 0x78]
mov byte [esi + 0x5c], 0
mov eax, dword [ecx + ebx*8]
mov dword [esi + 0x54], eax
mov eax, dword [ecx + ebx*8 + 4]
mov dword [esi + 0x58], eax
mov eax, dword [edi + 0x70]
mov dword [esi + 8], eax
mov eax, dword [edx + 0x14]
cmp dword [edx + 0x10], eax
jne 0x47812f
add eax, 0xa
mov ecx, edx
push eax
call fcn.00436aa0
lea edx, [edi + 0x78]
mov ecx, dword [edx + 0x10]
mov eax, dword [edx + 0x18]
movd xmm1, ebx
cvtdq2ps xmm1, xmm1
mov dword [eax + ecx*4], esi
inc dword [edx + 0x10]
movaps xmm0, xmm1
mulss xmm0, dword [0x5774e8]
movss dword [esi + 0x50], xmm0
cmp dword [edi + 0x70], 0x42d
jne 0x478168
mulss xmm1, dword [0x577520]
movss dword [esi + 0x50], xmm1
mov byte [ebp - 4], 0
inc ebx
mov esi, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov dword [ebp - 0x40], vtable.phVector2d.0
cmp ebx, dword [ebp - 0x64]
jl 0x477f80
cmp dword [edi + 0x70], 0x42c
jne 0x4781e1
push 0x6c
call esi
mov ebx, eax
add esp, 4
mov dword [ebp - 0x24], ebx
test ebx, ebx
je 0x4781d5
mov dword [ebx + 0x14], 0xf
mov dword [ebx + 0x10], 0
mov byte [ebx], 0
push 0x32
push str.textures_TileBonusArmageddonActivated_anim.png.xml
mov ecx, ebx
mov byte [ebp - 4], 7
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, ebx
push str.textures_TileBonusArmageddonActivated_anim.png.xml
call fcn.00401620
jmp 0x4781d7
xor ebx, ebx
mov byte [ebp - 4], 0
mov dword [edi + 0x94], ebx
cmp dword [edi + 0x70], 0x42d
jne 0x47823b
push 0x6c
call esi
mov ebx, eax
add esp, 4
mov dword [ebp - 0x24], ebx
test ebx, ebx
je 0x478233
mov dword [ebx + 0x14], 0xf
mov dword [ebx + 0x10], 0
mov byte [ebx], 0
push 0x38
push str.textures_TileBonusArmageddonGoldenActivated_anim.png.xml
mov ecx, ebx
mov byte [ebp - 4], 9
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, ebx
push str.textures_TileBonusArmageddonGoldenActivated_anim.png.xml
call fcn.00401620
jmp 0x478235
xor ebx, ebx
mov dword [edi + 0x94], ebx
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x60], 0
je 0x478254
push dword [ebp - 0x5c]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov ecx, dword [0x58d464]
mov eax, dword [edi + 0x70]
cmp eax, 0x412
je 0x47826f
cmp eax, 0x428
jne 0x4787a6
mov ecx, dword [ecx + 0x14b90]
cmp eax, 0x428
mov edx, 9
mov ebx, 3
push str.sm_rocket_start
cmove ebx, edx
call fcn.00535e30
test eax, eax
je 0x4782b5
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x4782b5
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x4782b5
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov dword [ebp - 0x78], 0x56aaec
mov dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x68], 0xffffffff
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x10]
mov dword [ebp - 4], 0xa
mov eax, dword [eax + 0xc3cc]
mov eax, dword [eax + 0x170]
test eax, eax
je 0x478315
mov eax, dword [eax + 4]
cmp eax, 2
je 0x478306
cmp eax, 4
jne 0x478315
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x78]
push ebx
push eax
call fcn.00508fe0
jmp 0x478322
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x78]
push ebx
push eax
call fcn.00508bf0
xor ebx, ebx
cmp dword [ebp - 0x64], ebx
jle 0x4786c9
mov edx, dword [ebp - 0x5c]
jmp 0x478338
mov esi, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
push dword [edx + ebx*8 + 4]
mov ecx, dword [ebp - 0x14]
lea eax, [ebp - 0x4c]
push dword [edx + ebx*8]
push eax
call fcn.004ef620
push 0x6c
mov byte [ebp - 4], 0xb
call esi
mov esi, eax
add esp, 4
test esi, esi
je 0x4783ca
mov dword [esi], 0x56c320
mov dword [esi + 0x24], vtable.phVector2d.0
mov dword [esi + 0x30], vtable.phVector2d.0
mov dword [esi + 0x3c], vtable.phVector2d.0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x1c], 0x43960000
mov dword [esi + 0x20], 0
mov byte [esi + 0x5c], 1
mov byte [esi + 0x48], 0
mov dword [esi + 0x18], 0
mov dword [esi + 8], 0xffffffff
mov dword [esi + 0x4c], 0
mov dword [esi + 0x64], 0x3f800000
mov dword [esi + 0x50], 0
mov dword [esi + 0x68], edi
jmp 0x4783cc
xor esi, esi
movss xmm0, dword [ebp - 0x48]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x44]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov ecx, dword [0x588fe4]
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
push 0
push 0
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
push str.textures_RocketFlying.png
mov dword [esi + 0x2c], eax
call fcn.00542f20
mov ecx, dword [0x58d464]
push 0
push eax
mov dword [ebp - 0x1c], eax
mov ecx, dword [ecx + 0x154]
push ecx
mov edx, dword [ecx]
call dword [edx + 0x22c]
push 0
push dword [ebp - 0x1c]
movd xmm0, eax
mov eax, dword [0x58d464]
cvtdq2ps xmm0, xmm0
mov eax, dword [eax + 0x154]
push eax
movss dword [ebp - 0x24], xmm0
mov ecx, dword [eax]
call dword [ecx + 0x230]
push 0xf4
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x20], xmm0
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x4784d1
movss xmm0, dword [ebp - 0x20]
sub esp, 0x10
mov ecx, eax
movss dword [esp + 0xc], xmm0
movss xmm0, dword [ebp - 0x24]
movss dword [esp + 8], xmm0
mov dword [esp + 4], 0
mov dword [esp], 0
push dword [ebp - 0x1c]
call fcn.00541d40
jmp 0x4784d3
xor eax, eax
movss xmm0, dword [ebp - 0x20]
mulss xmm0, dword [0x577514]
mov dword [esi + 0x10], eax
movss xmm1, dword [ebp - 0x24]
mulss xmm1, dword [0x577514]
mov dword [ebp - 0x40], vtable.phVector2d.0
subss xmm0, dword [0x57777c]
movss dword [eax + 0xe0], xmm1
movss dword [eax + 0xe8], xmm1
movss dword [eax + 0xe4], xmm0
movss dword [eax + 0xec], xmm0
mov dword [ebp - 0x34], vtable.phVector2d.0
mov byte [ebp - 4], 0xe
mov ecx, dword [esi + 0x14]
cmp dword [ecx + 0x4c], 3
jle 0x47854a
mov eax, dword [ecx + 0x54]
movss xmm0, dword [eax + 0x28]
movss dword [ebp - 0x3c], xmm0
movss xmm0, dword [eax + 0x2c]
movss dword [ebp - 0x38], xmm0
cmp dword [ecx + 0x4c], 4
jle 0x478567
mov eax, dword [ecx + 0x54]
movss xmm0, dword [eax + 0x34]
movss dword [ebp - 0x30], xmm0
movss xmm0, dword [eax + 0x38]
movss dword [ebp - 0x2c], xmm0
lea eax, [ebp - 0x40]
push eax
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x34]
call fcn.00457080
movss xmm0, dword [eax + 8]
movss xmm1, dword [eax + 4]
mulss xmm1, xmm1
mov eax, dword [esi + 0x14]
mulss xmm0, xmm0
mov dword [ebp - 0x58], vtable.phVector2d.0
addss xmm1, xmm0
xorps xmm0, xmm0
sqrtss xmm0, xmm1
movss xmm1, dword [0x5777a4]
divss xmm1, xmm0
cvttss2si ecx, xmm1
movss dword [esi + 0x20], xmm1
mov eax, dword [eax + 0x74]
dec eax
test ecx, ecx
jns 0x4785bf
xor ecx, ecx
jmp 0x4785c4
cmp ecx, eax
cmovg ecx, eax
mov eax, dword [esi]
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
push ecx
mov ecx, esi
mov dword [esp], 0x358637bd
movss dword [esi + 0x20], xmm0
call dword [eax]
mov edx, dword [ebp - 0x5c]
mov byte [esi + 0x5c], 0
mov eax, dword [edx + ebx*8]
mov dword [esi + 0x54], eax
mov eax, dword [edx + ebx*8 + 4]
mov dword [esi + 0x58], eax
mov dword [esi + 8], 0x412
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x47866f
add eax, 0xa
xor ecx, ecx
mov dword [ebp - 0x24], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00551afc
xor edx, edx
mov dword [edi + 0x7c], eax
add esp, 4
cmp dword [edi + 0x8c], edx
jle 0x47864b
mov eax, dword [edi + 0x90]
mov ecx, dword [edi + 0x7c]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [edi + 0x8c]
jl 0x478633
push dword [edi + 0x90]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
mov eax, dword [edi + 0x7c]
add esp, 4
mov edx, dword [ebp - 0x5c]
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0x24]
mov dword [edi + 0x8c], eax
mov ecx, dword [edi + 0x88]
mov eax, dword [edi + 0x90]
movd xmm0, ebx
cvtdq2ps xmm0, xmm0
mov dword [eax + ecx*4], esi
inc dword [edi + 0x88]
mulss xmm0, dword [0x5774e8]
movss dword [esi + 0x50], xmm0
cmp dword [edi + 0x70], 0x428
jne 0x4786a6
movss dword [esi + 0x50], xmm0
mov byte [ebp - 4], 0xa
inc ebx
mov dword [ebp - 0x34], vtable.phVector2d.0
mov dword [ebp - 0x40], vtable.phVector2d.0
mov dword [ebp - 0x4c], vtable.phVector2d.0
cmp ebx, dword [ebp - 0x64]
jl 0x478332
cmp dword [edi + 0x70], 0x412
mov ebx, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
jne 0x47872d
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x478721
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x2e
push str.textures_TileBonusRocketActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x14
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusRocketActivated_anim.png.xml
call fcn.00401620
jmp 0x478723
xor esi, esi
mov byte [ebp - 4], 0xa
mov dword [edi + 0x94], esi
cmp dword [edi + 0x70], 0x428
jne 0x478787
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x47877f
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x34
push str.textures_TileBonusRocketGoldenActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x16
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusRocketGoldenActivated_anim.png.xml
call fcn.00401620
jmp 0x478781
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x60], 0
je 0x4787a0
push dword [ebp - 0x5c]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x413
jne 0x478af7
mov ecx, dword [ecx + 0x14b90]
push str.sm_anti_balls_start
call fcn.00535e30
test eax, eax
je 0x4787e7
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x4787e7
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x4787e7
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov esi, dword [ebp - 0x14]
lea eax, [edi + 0xbc]
push 5
push eax
mov ecx, esi
call fcn.005095d0
mov dword [ebp - 0x4c], vtable.phVector2d.0
mov dword [ebp - 4], 0x17
xor edx, edx
mov ebx, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov dword [ebp - 0x1c], edx
cmp dword [edi + 0xcc], edx
jle 0x478a97
nop
mov eax, dword [edi + 0xd4]
mov ecx, esi
mov eax, dword [eax + edx*4]
push dword [eax + 0x6c]
push dword [eax + 0x68]
lea eax, [ebp - 0x58]
push eax
call fcn.004ef620
push 0x6c
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 8]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
mov dword [ebp - 0x58], vtable.phVector2d.0
call ebx
mov esi, eax
add esp, 4
test esi, esi
je 0x4788da
mov dword [esi], 0x56c320
mov dword [esi + 0x24], vtable.phVector2d.0
mov dword [esi + 0x30], vtable.phVector2d.0
mov dword [esi + 0x3c], vtable.phVector2d.0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x1c], 0x43960000
mov dword [esi + 0x20], 0
mov byte [esi + 0x5c], 1
mov byte [esi + 0x48], 0
mov dword [esi + 0x18], 0
mov dword [esi + 8], 0xffffffff
mov dword [esi + 0x4c], 0
mov dword [esi + 0x64], 0x3f800000
mov dword [esi + 0x50], 0
mov dword [esi + 0x68], edi
jmp 0x4788dc
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x478979
mov edx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov ecx, dword [edx]
push 0
push edx
call dword [ecx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x47898c
mov ecx, dword [eax + 0x154]
push 4
push 1
push ecx
mov eax, dword [ecx]
call dword [eax + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call ebx
add esp, 4
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0x18
test eax, eax
je 0x4789c5
mov ecx, dword [0x58d464]
push 0
push dword [esi + 4]
mov ecx, dword [ecx + 0x14ba0]
call fcn.004c60f0
mov ecx, dword [ebp - 0x24]
push eax
call fcn.00541d10
jmp 0x4789c7
xor eax, eax
mov byte [ebp - 4], 0x17
mov edx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xd4]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x68]
mov dword [esi + 0x54], eax
mov eax, dword [edi + 0xd4]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x6c]
mov dword [esi + 0x58], eax
mov byte [esi + 0x5c], 0
mov eax, dword [edi + 0x70]
mov dword [esi + 8], eax
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x478a6f
add eax, 0xa
xor ecx, ecx
mov dword [ebp - 0x24], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00551afc
xor edx, edx
mov dword [edi + 0x7c], eax
add esp, 4
cmp dword [edi + 0x8c], edx
jle 0x478a4b
mov eax, dword [edi + 0x90]
mov ecx, dword [edi + 0x7c]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [edi + 0x8c]
jl 0x478a33
push dword [edi + 0x90]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
mov eax, dword [edi + 0x7c]
add esp, 4
mov edx, dword [ebp - 0x1c]
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0x24]
mov dword [edi + 0x8c], eax
mov ecx, dword [edi + 0x88]
inc edx
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x1c], edx
mov dword [eax + ecx*4], esi
inc dword [edi + 0x88]
mov esi, dword [ebp - 0x14]
cmp edx, dword [edi + 0xcc]
jl 0x478820
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x478ae0
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x33
push str.textures_TileAntibonusMarblesActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x1a
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileAntibonusMarblesActivated_anim.png.xml
call fcn.00401620
jmp 0x478ae2
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
jmp 0x478afd
mov ebx, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
cmp dword [edi + 0x70], 0x414
jne 0x478e62
mov ecx, dword [ecx + 0x14b90]
push str.sm_anti_lock_start
call fcn.00535e30
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x478b9c
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x478b9c
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x478b9c
mov esi, dword [eax + 0xc]
mov ecx, esi
call fcn.005332b0
mov eax, dword [ebp - 0x1c]
push 0
push dword [esi + 0x18]
push 0
push dword [eax]
call dword [sym.imp.Squall.dll_SQUALL_Sample_Play]
mov ecx, eax
add esp, 0x10
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x1c]
test ecx, ecx
jle 0x478b7c
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
call sub.msvcr120.dll___libm_sse2_log10f
mulss xmm0, dword [0x577790]
jmp 0x478b7f
xorps xmm0, xmm0
cvttss2si eax, xmm0
push eax
push dword [ebp - 0x24]
call dword [sym.imp.Squall.dll_SQUALL_Channel_SetVolume]
mov eax, dword [ebp - 0x1c]
push dword [eax + 4]
call dword [sym.imp.Squall.dll_SQUALL_Channel_Start]
add esp, 0xc
mov esi, dword [ebp - 0x14]
lea eax, [edi + 0x98]
push 3
push eax
mov ecx, esi
call fcn.00509990
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor edx, edx
mov dword [ebp - 4], 0x1b
mov dword [ebp - 0x1c], edx
cmp dword [edi + 0xa8], edx
jle 0x478e04
mov edi, edi
mov eax, dword [edi + 0xb0]
mov ecx, esi
mov eax, dword [eax + edx*4]
push dword [eax + 0x88]
push dword [eax + 0x80]
lea eax, [ebp - 0x58]
push eax
call fcn.004ef620
push 0x6c
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 8]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
mov dword [ebp - 0x58], vtable.phVector2d.0
call ebx
mov esi, eax
add esp, 4
test esi, esi
je 0x478c90
mov dword [esi], 0x56c320
mov dword [esi + 0x24], vtable.phVector2d.0
mov dword [esi + 0x30], vtable.phVector2d.0
mov dword [esi + 0x3c], vtable.phVector2d.0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x1c], 0x43960000
mov dword [esi + 0x20], 0
mov byte [esi + 0x5c], 1
mov byte [esi + 0x48], 0
mov dword [esi + 0x18], 0
mov dword [esi + 8], 0xffffffff
mov dword [esi + 0x4c], 0
mov dword [esi + 0x64], 0x3f800000
mov dword [esi + 0x50], 0
mov dword [esi + 0x68], edi
jmp 0x478c92
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
push 0xf4
mov dword [esi + 0x2c], eax
call ebx
add esp, 4
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0x1c
test eax, eax
je 0x478d24
mov ecx, dword [0x58d464]
push 0
push 0
push 0x40a
mov ecx, dword [ecx + 0x14ba0]
call fcn.004c6750
mov ecx, dword [ebp - 0x24]
push eax
call fcn.00541d10
jmp 0x478d26
xor eax, eax
mov byte [ebp - 4], 0x1b
mov edx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xb0]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x80]
mov dword [esi + 0x54], eax
mov eax, dword [edi + 0xb0]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x88]
mov dword [esi + 0x58], eax
mov byte [esi + 0x5c], 1
mov eax, dword [edi + 0x70]
mov dword [esi + 8], eax
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x478ddc
add eax, 0xa
xor ecx, ecx
mov dword [ebp - 0x24], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00551afc
xor edx, edx
mov dword [edi + 0x7c], eax
add esp, 4
cmp dword [edi + 0x8c], edx
jle 0x478db8
jmp 0x478da0
mov eax, dword [edi + 0x90]
mov ecx, dword [edi + 0x7c]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [edi + 0x8c]
jl 0x478da0
push dword [edi + 0x90]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
mov eax, dword [edi + 0x7c]
add esp, 4
mov edx, dword [ebp - 0x1c]
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0x24]
mov dword [edi + 0x8c], eax
mov ecx, dword [edi + 0x88]
inc edx
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x1c], edx
mov dword [eax + ecx*4], esi
inc dword [edi + 0x88]
mov esi, dword [ebp - 0x14]
cmp edx, dword [edi + 0xa8]
jl 0x478bd0
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x478e4d
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x30
push str.textures_TileAntibonusLockActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x1e
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileAntibonusLockActivated_anim.png.xml
call fcn.00401620
jmp 0x478e4f
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x423
jne 0x4791c2
mov ecx, dword [ecx + 0x14b90]
push str.sm_anti_lock_start
call fcn.00535e30
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x478f01
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x478f01
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x478f01
mov esi, dword [eax + 0xc]
mov ecx, esi
call fcn.005332b0
mov eax, dword [ebp - 0x1c]
push 0
push dword [esi + 0x18]
push 0
push dword [eax]
call dword [sym.imp.Squall.dll_SQUALL_Sample_Play]
mov ecx, eax
add esp, 0x10
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x1c]
test ecx, ecx
jle 0x478ee1
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
call sub.msvcr120.dll___libm_sse2_log10f
mulss xmm0, dword [0x577790]
jmp 0x478ee4
xorps xmm0, xmm0
cvttss2si eax, xmm0
push eax
push dword [ebp - 0x24]
call dword [sym.imp.Squall.dll_SQUALL_Channel_SetVolume]
mov eax, dword [ebp - 0x1c]
push dword [eax + 4]
call dword [sym.imp.Squall.dll_SQUALL_Channel_Start]
add esp, 0xc
mov esi, dword [ebp - 0x14]
lea eax, [edi + 0x98]
push 3
push eax
mov ecx, esi
call fcn.00509990
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor edx, edx
mov dword [ebp - 4], 0x1f
mov dword [ebp - 0x1c], edx
cmp dword [edi + 0xa8], edx
jle 0x479164
mov eax, dword [edi + 0xb0]
mov ecx, esi
mov eax, dword [eax + edx*4]
push dword [eax + 0x88]
push dword [eax + 0x80]
lea eax, [ebp - 0x58]
push eax
call fcn.004ef620
push 0x6c
movss xmm0, dword [eax + 4]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 8]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
mov dword [ebp - 0x58], vtable.phVector2d.0
call ebx
mov esi, eax
add esp, 4
test esi, esi
je 0x478ff3
mov dword [esi], 0x56c320
mov dword [esi + 0x24], vtable.phVector2d.0
mov dword [esi + 0x30], vtable.phVector2d.0
mov dword [esi + 0x3c], vtable.phVector2d.0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x1c], 0x43960000
mov dword [esi + 0x20], 0
mov byte [esi + 0x5c], 1
mov byte [esi + 0x48], 0
mov dword [esi + 0x18], 0
mov dword [esi + 8], 0xffffffff
mov dword [esi + 0x4c], 0
mov dword [esi + 0x64], 0x3f800000
mov dword [esi + 0x50], 0
mov dword [esi + 0x68], edi
jmp 0x478ff5
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
push 0xf4
mov dword [esi + 0x2c], eax
call ebx
add esp, 4
mov dword [ebp - 0x24], eax
mov byte [ebp - 4], 0x20
test eax, eax
je 0x479087
mov ecx, dword [0x58d464]
push 0
push 0
push 0x421
mov ecx, dword [ecx + 0x14ba0]
call fcn.004c6750
mov ecx, dword [ebp - 0x24]
push eax
call fcn.00541d10
jmp 0x479089
xor eax, eax
mov byte [ebp - 4], 0x1f
mov edx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xb0]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x80]
mov dword [esi + 0x54], eax
mov eax, dword [edi + 0xb0]
mov eax, dword [eax + edx*4]
mov eax, dword [eax + 0x88]
mov dword [esi + 0x58], eax
mov byte [esi + 0x5c], 1
mov eax, dword [edi + 0x70]
mov dword [esi + 8], eax
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x47913c
add eax, 0xa
xor ecx, ecx
mov dword [ebp - 0x24], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00551afc
xor edx, edx
mov dword [edi + 0x7c], eax
add esp, 4
cmp dword [edi + 0x8c], edx
jle 0x479118
jmp 0x479100
mov eax, dword [edi + 0x90]
mov ecx, dword [edi + 0x7c]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [edi + 0x8c]
jl 0x479100
push dword [edi + 0x90]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
mov eax, dword [edi + 0x7c]
add esp, 4
mov edx, dword [ebp - 0x1c]
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0x24]
mov dword [edi + 0x8c], eax
mov ecx, dword [edi + 0x88]
inc edx
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x1c], edx
mov dword [eax + ecx*4], esi
inc dword [edi + 0x88]
mov esi, dword [ebp - 0x14]
cmp edx, dword [edi + 0xa8]
jl 0x478f33
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x4791ad
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x31
push str.textures_TileAntibonusChainActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x22
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileAntibonusChainActivated_anim.png.xml
call fcn.00401620
jmp 0x4791af
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x417
jne 0x47954f
mov ecx, dword [ecx + 0x14b90]
push str.sm_anti_balls_start
call fcn.00535e30
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x479265
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x479265
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x479265
mov esi, dword [eax + 0xc]
mov ecx, esi
call fcn.005332b0
mov eax, dword [ebp - 0x1c]
push 0
push dword [esi + 0x18]
push 0
push dword [eax]
call dword [sym.imp.Squall.dll_SQUALL_Sample_Play]
mov ecx, eax
add esp, 0x10
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], ecx
mov dword [eax + 4], ecx
mov ecx, dword [esi + 0x1c]
test ecx, ecx
jle 0x479245
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
call sub.msvcr120.dll___libm_sse2_log10f
mulss xmm0, dword [0x577790]
jmp 0x479248
xorps xmm0, xmm0
cvttss2si eax, xmm0
push eax
push dword [ebp - 0x24]
call dword [sym.imp.Squall.dll_SQUALL_Channel_SetVolume]
mov eax, dword [ebp - 0x1c]
push dword [eax + 4]
call dword [sym.imp.Squall.dll_SQUALL_Channel_Start]
add esp, 0xc
mov ecx, dword [ebp - 0x14]
lea eax, [edi + 0xd8]
push 0x41c
push 5
push eax
call fcn.0050bbf0
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor ecx, ecx
mov dword [ebp - 4], 0x23
mov dword [ebp - 0x1c], ecx
cmp dword [edi + 0xe8], ecx
jle 0x4794f1
lea ebx, [ebx]
mov eax, dword [edi + 0xf0]
push 0x6c
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
call ebx
mov esi, eax
add esp, 4
test esi, esi
je 0x47934a
mov dword [esi], 0x56c320
mov dword [esi + 0x24], vtable.phVector2d.0
mov dword [esi + 0x30], vtable.phVector2d.0
mov dword [esi + 0x3c], vtable.phVector2d.0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x1c], 0x43960000
mov dword [esi + 0x20], 0
mov byte [esi + 0x5c], 1
mov byte [esi + 0x48], 0
mov dword [esi + 0x18], 0
mov dword [esi + 8], 0xffffffff
mov dword [esi + 0x4c], 0
mov dword [esi + 0x64], 0x3f800000
mov dword [esi + 0x50], 0
mov dword [esi + 0x68], edi
jmp 0x47934c
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x4793e9
mov ecx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov edx, dword [ecx]
push 0
push ecx
call dword [edx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x4793fc
mov eax, dword [eax + 0x154]
push 4
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call ebx
mov edx, eax
add esp, 4
mov dword [ebp - 0x28], edx
mov byte [ebp - 4], 0x24
test edx, edx
je 0x479436
mov ecx, dword [0x58d464]
mov ecx, dword [ecx + 0x14ba0]
mov ecx, dword [ecx + 0x138]
mov eax, dword [ecx + 0x18]
mov ecx, edx
push dword [eax]
call fcn.00541d10
jmp 0x479438
xor eax, eax
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x60], eax
mov eax, dword [edi + 0x70]
mov dword [esi + 8], eax
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x4794c9
add eax, 0xa
xor ecx, ecx
mov dword [ebp - 0x24], eax
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00551afc
xor edx, edx
mov dword [edi + 0x7c], eax
add esp, 4
cmp dword [edi + 0x8c], edx
jle 0x4794a8
mov edi, edi
mov eax, dword [edi + 0x90]
mov ecx, dword [edi + 0x7c]
mov eax, dword [eax + edx*4]
mov dword [ecx + edx*4], eax
inc edx
cmp edx, dword [edi + 0x8c]
jl 0x479490
push dword [edi + 0x90]
call dword [sym.imp.msvcr120.dll_void___cdecl_operator_delete___void__]
mov eax, dword [edi + 0x7c]
add esp, 4
mov dword [edi + 0x90], eax
mov eax, dword [ebp - 0x24]
mov dword [edi + 0x8c], eax
mov ecx, dword [edi + 0x88]
mov eax, dword [edi + 0x90]
mov dword [eax + ecx*4], esi
mov ecx, dword [ebp - 0x1c]
inc dword [edi + 0x88]
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, dword [edi + 0xe8]
jl 0x4792a0
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x47953a
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x2c
push str.textures_TileBonusBombActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x26
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusBombActivated_anim.png.xml
call fcn.00401620
jmp 0x47953c
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x41f
jne 0x4798a8
mov ecx, dword [ecx + 0x14b90]
push str.sm_BonusGolden
call fcn.00535e30
mov dword [ebp - 0x1c], eax
test eax, eax
je 0x4795f3
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x4795f3
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x4795f3
mov esi, dword [eax + 0xc]
mov ecx, esi
call fcn.005332b0
mov eax, dword [ebp - 0x1c]
push 0
push dword [esi + 0x18]
push 0
push dword [eax]
call dword [sym.imp.Squall.dll_SQUALL_Sample_Play]
mov ecx, eax
add esp, 0x10
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x24], ecx
mov dword [eax + 4], ecx
mov eax, dword [esi + 0x1c]
test eax, eax
jle 0x4795d5
movd xmm0, eax
cvtdq2ps xmm0, xmm0
call sub.msvcr120.dll___libm_sse2_log10f
mulss xmm0, dword [0x577790]
mov ecx, dword [ebp - 0x24]
jmp 0x4795d8
xorps xmm0, xmm0
cvttss2si eax, xmm0
push eax
push ecx
call dword [sym.imp.Squall.dll_SQUALL_Channel_SetVolume]
mov eax, dword [ebp - 0x1c]
push dword [eax + 4]
call dword [sym.imp.Squall.dll_SQUALL_Channel_Start]
add esp, 0xc
mov esi, dword [ebp - 0x14]
push 0x41c
mov eax, dword [esi + 0x278]
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esi + 0x274]
cdq
sub eax, edx
sar ecx, 1
sar eax, 1
add ecx, eax
lea eax, [edi + 0xd8]
add ecx, ecx
push ecx
push eax
mov ecx, esi
call fcn.0050bbf0
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor ecx, ecx
mov dword [ebp - 4], 0x27
mov dword [ebp - 0x1c], ecx
cmp dword [edi + 0xe8], ecx
jle 0x47984a
mov eax, dword [edi + 0xf0]
push 0x6c
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov esi, eax
add esp, 4
test esi, esi
je 0x4796f3
mov dword [esi], 0x56c320
mov dword [esi + 0x24], vtable.phVector2d.0
mov dword [esi + 0x30], vtable.phVector2d.0
mov dword [esi + 0x3c], vtable.phVector2d.0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0xc], 0
mov dword [esi + 0x1c], 0x43960000
mov dword [esi + 0x20], 0
mov byte [esi + 0x5c], 1
mov byte [esi + 0x48], 0
mov dword [esi + 0x18], 0
mov dword [esi + 8], 0xffffffff
mov dword [esi + 0x4c], 0
mov dword [esi + 0x64], 0x3f800000
mov dword [esi + 0x50], 0
mov dword [esi + 0x68], edi
jmp 0x4796f5
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x479792
mov ecx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov edx, dword [ecx]
push 0
push ecx
call dword [edx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x4797a5
mov eax, dword [eax + 0x154]
push 4
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
mov dword [ebp - 0x28], edx
mov byte [ebp - 4], 0x28
test edx, edx
je 0x4797e3
mov ecx, dword [0x58d464]
mov ecx, dword [ecx + 0x14ba0]
mov ecx, dword [ecx + 0x138]
mov eax, dword [ecx + 0x18]
mov ecx, edx
push dword [eax]
call fcn.00541d10
jmp 0x4797e5
xor eax, eax
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x60], eax
mov dword [esi + 8], 0x417
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x47981c
add eax, 0xa
lea ecx, [edi + 0x78]
push eax
call fcn.00436aa0
mov ecx, dword [edi + 0x88]
mov eax, dword [edi + 0x90]
mov dword [eax + ecx*4], esi
mov ecx, dword [ebp - 0x1c]
inc dword [edi + 0x88]
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, dword [edi + 0xe8]
jl 0x479645
mov ebx, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x479893
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x32
push str.textures_TileBonusBombGoldenActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x2a
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusBombGoldenActivated_anim.png.xml
call fcn.00401620
jmp 0x479895
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x432
jne 0x479b1f
mov ecx, dword [ecx + 0x14b90]
push str.sm_anti_balls_start
call fcn.00535e30
test eax, eax
je 0x4798e9
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x4798e9
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x4798e9
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov ecx, dword [ebp - 0x14]
lea eax, [edi + 0xd8]
push 0x431
push 5
push eax
call fcn.0050bbf0
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor ecx, ecx
mov dword [ebp - 4], 0x2b
mov dword [ebp - 0x1c], ecx
cmp dword [edi + 0xe8], ecx
jle 0x479ac1
mov edi, edi
mov eax, dword [edi + 0xf0]
push 0x6c
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x47996a
push edi
mov ecx, eax
call fcn.00474790
mov esi, eax
jmp 0x47996c
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x479a09
mov ecx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov edx, dword [ecx]
push 0
push ecx
call dword [edx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x479a1c
mov eax, dword [eax + 0x154]
push 4
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
mov dword [ebp - 0x28], edx
mov byte [ebp - 4], 0x2c
test edx, edx
je 0x479a5a
mov ecx, dword [0x58d464]
mov ecx, dword [ecx + 0x14ba0]
mov ecx, dword [ecx + 0x174]
mov eax, dword [ecx + 0x18]
mov ecx, edx
push dword [eax]
call fcn.00541d10
jmp 0x479a5c
xor eax, eax
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x60], eax
mov dword [esi + 8], 0x432
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x479a93
add eax, 0xa
lea ecx, [edi + 0x78]
push eax
call fcn.00436aa0
mov ecx, dword [edi + 0x88]
mov eax, dword [edi + 0x90]
mov dword [eax + ecx*4], esi
mov ecx, dword [ebp - 0x1c]
inc dword [edi + 0x88]
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, dword [edi + 0xe8]
jl 0x479920
mov ebx, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x479b0a
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x2c
push str.textures_TileBonusBombActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x2e
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusBombActivated_anim.png.xml
call fcn.00401620
jmp 0x479b0c
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x433
jne 0x479db1
mov ecx, dword [ecx + 0x14b90]
push str.sm_BonusGolden
call fcn.00535e30
test eax, eax
je 0x479b60
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x479b60
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x479b60
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov esi, dword [ebp - 0x14]
push 0x431
mov eax, dword [esi + 0x278]
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esi + 0x274]
cdq
sub eax, edx
sar ecx, 1
sar eax, 1
add ecx, eax
lea eax, [edi + 0xd8]
add ecx, ecx
push ecx
push eax
mov ecx, esi
call fcn.0050bbf0
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor ecx, ecx
mov dword [ebp - 4], 0x2f
mov dword [ebp - 0x1c], ecx
cmp dword [edi + 0xe8], ecx
jle 0x479d53
mov eax, dword [edi + 0xf0]
push 0x6c
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x479bfc
push edi
mov ecx, eax
call fcn.00474790
mov esi, eax
jmp 0x479bfe
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x479c9b
mov ecx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov edx, dword [ecx]
push 0
push ecx
call dword [edx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x479cae
mov eax, dword [eax + 0x154]
push 4
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
mov dword [ebp - 0x28], edx
mov byte [ebp - 4], 0x30
test edx, edx
je 0x479cec
mov ecx, dword [0x58d464]
mov ecx, dword [ecx + 0x14ba0]
mov ecx, dword [ecx + 0x174]
mov eax, dword [ecx + 0x18]
mov ecx, edx
push dword [eax]
call fcn.00541d10
jmp 0x479cee
xor eax, eax
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x60], eax
mov dword [esi + 8], 0x432
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x479d25
add eax, 0xa
lea ecx, [edi + 0x78]
push eax
call fcn.00436aa0
mov ecx, dword [edi + 0x88]
mov eax, dword [edi + 0x90]
mov dword [eax + ecx*4], esi
mov ecx, dword [ebp - 0x1c]
inc dword [edi + 0x88]
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, dword [edi + 0xe8]
jl 0x479bb2
mov ebx, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x479d9c
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x32
push str.textures_TileBonusBombGoldenActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x32
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusBombGoldenActivated_anim.png.xml
call fcn.00401620
jmp 0x479d9e
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x420
jne 0x47a02f
mov ecx, dword [ecx + 0x14b90]
push str.sm_TileMulti
call fcn.00535e30
test eax, eax
je 0x479df2
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x479df2
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x479df2
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov ecx, dword [ebp - 0x14]
lea eax, [edi + 0xd8]
push 0xd9
push 7
push eax
call fcn.0050bbf0
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor ecx, ecx
mov dword [ebp - 4], 0x33
mov dword [ebp - 0x1c], ecx
cmp dword [edi + 0xe8], ecx
jle 0x479fd1
jmp 0x479e30
mov eax, dword [edi + 0xf0]
push 0x6c
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x479e7a
push edi
mov ecx, eax
call fcn.00474790
mov esi, eax
jmp 0x479e7c
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x479f19
mov ecx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov edx, dword [ecx]
push 0
push ecx
call dword [edx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x479f2c
mov eax, dword [eax + 0x154]
push 4
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
mov dword [ebp - 0x28], edx
mov byte [ebp - 4], 0x34
test edx, edx
je 0x479f6a
mov ecx, dword [0x58d464]
mov ecx, dword [ecx + 0x14ba0]
mov ecx, dword [ecx + 0x19c]
mov eax, dword [ecx + 0x18]
mov ecx, edx
push dword [eax]
call fcn.00541d10
jmp 0x479f6c
xor eax, eax
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x60], eax
mov dword [esi + 8], 0x420
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x479fa3
add eax, 0xa
lea ecx, [edi + 0x78]
push eax
call fcn.00436aa0
mov ecx, dword [edi + 0x88]
mov eax, dword [edi + 0x90]
mov dword [eax + ecx*4], esi
mov ecx, dword [ebp - 0x1c]
inc dword [edi + 0x88]
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, dword [edi + 0xe8]
jl 0x479e30
mov ebx, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x47a01a
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x2d
push str.textures_TileBonusMultiActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x36
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusMultiActivated_anim.png.xml
call fcn.00401620
jmp 0x47a01c
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x424
jne 0x47a2c1
mov ecx, dword [ecx + 0x14b90]
push str.sm_BonusGolden
call fcn.00535e30
test eax, eax
je 0x47a070
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x47a070
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x47a070
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov esi, dword [ebp - 0x14]
push 0xd9
mov eax, dword [esi + 0x278]
cdq
sub eax, edx
mov ecx, eax
mov eax, dword [esi + 0x274]
cdq
sub eax, edx
sar ecx, 1
sar eax, 1
add ecx, eax
lea eax, [edi + 0xd8]
add ecx, ecx
push ecx
push eax
mov ecx, esi
call fcn.0050bbf0
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor ecx, ecx
mov dword [ebp - 4], 0x37
mov dword [ebp - 0x1c], ecx
cmp dword [edi + 0xe8], ecx
jle 0x47a263
mov eax, dword [edi + 0xf0]
push 0x6c
mov eax, dword [eax + ecx*4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x47a10c
push edi
mov ecx, eax
call fcn.00474790
mov esi, eax
jmp 0x47a10e
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x47a1ab
mov ecx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov edx, dword [ecx]
push 0
push ecx
call dword [edx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x47a1be
mov eax, dword [eax + 0x154]
push 4
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov edx, eax
add esp, 4
mov dword [ebp - 0x28], edx
mov byte [ebp - 4], 0x38
test edx, edx
je 0x47a1fc
mov ecx, dword [0x58d464]
mov ecx, dword [ecx + 0x14ba0]
mov ecx, dword [ecx + 0x19c]
mov eax, dword [ecx + 0x18]
mov ecx, edx
push dword [eax]
call fcn.00541d10
jmp 0x47a1fe
xor eax, eax
mov byte [ebp - 4], 0x37
mov ecx, dword [ebp - 0x1c]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x60], eax
mov dword [esi + 8], 0x420
mov eax, dword [edi + 0x8c]
cmp dword [edi + 0x88], eax
jne 0x47a235
add eax, 0xa
lea ecx, [edi + 0x78]
push eax
call fcn.00436aa0
mov ecx, dword [edi + 0x88]
mov eax, dword [edi + 0x90]
mov dword [eax + ecx*4], esi
mov ecx, dword [ebp - 0x1c]
inc dword [edi + 0x88]
inc ecx
mov dword [ebp - 0x1c], ecx
cmp ecx, dword [edi + 0xe8]
jl 0x47a0c2
mov ebx, dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x47a2ac
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x33
push str.textures_TileBonusMultiGoldenActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x3a
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusMultiGoldenActivated_anim.png.xml
call fcn.00401620
jmp 0x47a2ae
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x419
jne 0x47a3f6
push 0x6c
call ebx
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
mov dword [ebp - 4], 0x3b
test esi, esi
je 0x47a31e
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x34
push str.textures_TileAntibonusWallBallActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x3c
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileAntibonusWallBallActivated_anim.png.xml
call fcn.00401620
jmp 0x47a320
xor esi, esi
mov dword [ebp - 4], 0xffffffff
mov dword [edi + 0x94], esi
mov eax, dword [0x58d464]
push 3
push 0
mov eax, dword [eax + 0x154]
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
mov ecx, dword [0x58d464]
test eax, eax
jne 0x47a360
mov eax, dword [ecx + 0x14238]
mov esi, dword [eax + 0xc648]
add esi, 0x54
jmp 0x47a3a2
cmp eax, 1
jne 0x47a376
mov eax, dword [ecx + 0x14238]
mov esi, dword [eax + 0xc648]
add esi, 0x1c
jmp 0x47a3a2
cmp eax, 2
jne 0x47a389
mov eax, dword [ecx + 0x14238]
mov esi, dword [eax + 0xc648]
jmp 0x47a3a2
cmp eax, 3
jne 0x47a39f
mov eax, dword [ecx + 0x14238]
mov esi, dword [eax + 0xc648]
add esi, 0x38
jmp 0x47a3a2
mov esi, dword [ebp - 0x28]
mov eax, dword [ecx + 0x14238]
mov eax, dword [eax + 0xc648]
cmp dword [eax + 0xb4], 0
jne 0x47a3f6
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
cmp dword [eax + 0x98], 0
je 0x47a3f6
xor ebx, ebx
cmp dword [esi + 0x10], ebx
jle 0x47a3f6
lea esp, [esp]
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx + ebx*4]
call fcn.0051b6a0
test al, al
je 0x47a3ea
mov ecx, dword [esi + 0x18]
mov ecx, dword [ecx + ebx*4]
call fcn.0051ab00
inc ebx
cmp ebx, dword [esi + 0x10]
jl 0x47a3d0
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x42a
jne 0x47a76c
mov ecx, dword [ecx + 0x14b90]
push str.sm_TileBonusPhoenix
call fcn.00535e30
test eax, eax
je 0x47a437
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x47a437
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x47a437
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov ecx, dword [ebp - 0x14]
lea esi, [edi + 0xd8]
sub esp, 8
push esi
call fcn.0050b340
mov ecx, dword [ebp - 0x14]
sub esp, 8
push esi
call fcn.0050b540
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor ebx, ebx
mov dword [ebp - 4], 0x3d
cmp dword [edi + 0xe8], ebx
jle 0x47a70a
mov eax, dword [edi + 0xf0]
push 0x6c
mov eax, dword [eax + ebx*4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x47a4bb
push edi
mov ecx, eax
call fcn.00474790
mov esi, eax
jmp 0x47a4bd
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x47a55a
mov ecx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov edx, dword [ecx]
push 0
push ecx
call dword [edx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x47a56d
mov eax, dword [eax + 0x154]
push 4
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0x3e
test eax, eax
je 0x47a5a4
mov ecx, dword [0x58d464]
mov ecx, dword [ecx + 0x14ba0]
push dword [ecx + 0x2a4]
mov ecx, eax
call fcn.00541d10
jmp 0x47a5a6
xor eax, eax
mov byte [ebp - 4], 0x3d
lea edx, [edi + 0x78]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ebx*4]
mov dword [esi + 0x60], eax
mov eax, dword [edi + 0x70]
mov dword [esi + 8], eax
mov eax, dword [edx + 0x14]
cmp dword [edx + 0x10], eax
jne 0x47a5d8
add eax, 0xa
mov ecx, edx
push eax
call fcn.00436aa0
lea edx, [edi + 0x78]
mov ecx, dword [edx + 0x10]
mov eax, dword [edx + 0x18]
mov dword [eax + ecx*4], esi
xor ecx, ecx
inc dword [edx + 0x10]
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0xc648]
mov eax, dword [edx + 0x18]
mov dword [edx + 4], eax
cmp dword [edx + 0x10], ecx
jle 0x47a623
mov eax, dword [edx + 4]
mov edi, dword [ebp - 0x24]
cmp edi, dword [eax]
mov edi, dword [ebp - 0x18]
je 0x47a6db
add eax, 4
inc ecx
mov dword [edx + 4], eax
cmp ecx, dword [edx + 0x10]
jl 0x47a606
mov eax, dword [edi + 0xf0]
xor edx, edx
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0xc648]
mov eax, dword [ecx + 0x50]
mov dword [ecx + 0x3c], eax
cmp dword [ecx + 0x48], edx
jle 0x47a662
mov eax, dword [ecx + 0x3c]
mov edi, dword [ebp - 0x24]
cmp edi, dword [eax]
mov edi, dword [ebp - 0x18]
je 0x47a6e4
add eax, 4
inc edx
mov dword [ecx + 0x3c], eax
cmp edx, dword [ecx + 0x48]
jl 0x47a645
mov eax, dword [edi + 0xf0]
xor edx, edx
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0xc648]
mov eax, dword [ecx + 0x6c]
mov dword [ecx + 0x58], eax
cmp dword [ecx + 0x64], edx
jle 0x47a69d
mov eax, dword [ecx + 0x58]
mov edi, dword [ebp - 0x24]
cmp edi, dword [eax]
mov edi, dword [ebp - 0x18]
je 0x47a6ed
add eax, 4
inc edx
mov dword [ecx + 0x58], eax
cmp edx, dword [ecx + 0x64]
jl 0x47a684
mov eax, dword [edi + 0xf0]
xor edx, edx
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0xc648]
mov eax, dword [ecx + 0x34]
mov dword [ecx + 0x20], eax
cmp dword [ecx + 0x2c], edx
jle 0x47a6fd
nop
mov eax, dword [ecx + 0x20]
mov edi, dword [ebp - 0x24]
cmp edi, dword [eax]
mov edi, dword [ebp - 0x18]
je 0x47a6f6
add eax, 4
inc edx
mov dword [ecx + 0x20], eax
cmp edx, dword [ecx + 0x2c]
jl 0x47a6c0
jmp 0x47a6fd
mov dword [esi + 0x18], 0x3fc90fdb
jmp 0x47a6fd
mov dword [esi + 0x18], 0xbfc90fdb
jmp 0x47a6fd
mov dword [esi + 0x18], 0
jmp 0x47a6fd
mov dword [esi + 0x18], 0x40490fdb
inc ebx
cmp ebx, dword [edi + 0xe8]
jl 0x47a471
push 0x6c
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
test esi, esi
je 0x47a757
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x2f
push str.textures_TileBonusPhoenixActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x40
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusPhoenixActivated_anim.png.xml
call fcn.00401620
jmp 0x47a759
xor esi, esi
mov dword [edi + 0x94], esi
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [0x58d464]
cmp dword [edi + 0x70], 0x42b
jne 0x47aae5
mov ecx, dword [ecx + 0x14b90]
push str.sm_BonusGolden
call fcn.00535e30
test eax, eax
je 0x47a7ad
mov ecx, dword [eax + 0x14]
test ecx, ecx
jg 0x47a7ad
inc ecx
cmp byte [0x58d45c], 0
mov dword [eax + 0x14], ecx
je 0x47a7ad
push 0
push ecx
mov ecx, dword [eax + 0xc]
push eax
call fcn.00533230
mov ecx, dword [ebp - 0x14]
lea esi, [edi + 0xd8]
sub esp, 8
push esi
call fcn.0050b730
mov ecx, dword [ebp - 0x14]
sub esp, 8
push esi
call fcn.0050b930
mov dword [ebp - 0x4c], vtable.phVector2d.0
xor ebx, ebx
mov dword [ebp - 4], 0x41
cmp dword [edi + 0xe8], ebx
jle 0x47aa8c
jmp 0x47a7f0
mov eax, dword [edi + 0xf0]
push 0x6c
mov eax, dword [eax + ebx*4]
mov eax, dword [eax + 0xa0]
mov eax, dword [eax]
movss xmm0, dword [eax + 0xc]
movss dword [ebp - 0x24], xmm0
movss dword [ebp - 0x48], xmm0
movss xmm0, dword [eax + 0x10]
movss dword [ebp - 0x20], xmm0
movss dword [ebp - 0x44], xmm0
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
test eax, eax
je 0x47a83a
push edi
mov ecx, eax
call fcn.00474790
mov esi, eax
jmp 0x47a83c
xor esi, esi
movss xmm0, dword [ebp - 0x24]
sub esp, 0xc
mov eax, esp
sub esp, 0xc
mov ecx, esp
movss dword [eax + 4], xmm0
movss xmm0, dword [ebp - 0x20]
mov dword [eax], vtable.phVector2d.0
movss dword [eax + 8], xmm0
mov dword [ecx], vtable.phVector2d.0
mov eax, dword [edi + 0xf8]
mov dword [ecx + 4], eax
mov eax, dword [edi + 0xfc]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.004748d0
mov dword [esi + 0x14], eax
mov eax, dword [edi + 0xf8]
mov dword [esi + 0x28], eax
mov eax, dword [edi + 0xfc]
mov dword [esi + 0x2c], eax
mov eax, dword [ebp - 0x10]
mov eax, dword [eax + 0xc648]
mov eax, dword [eax + 0xa0]
test eax, eax
mov dword [ebp - 0x24], eax
mov eax, dword [0x58d464]
je 0x47a8d9
mov ecx, dword [eax + 0x154]
mov eax, dword [ebp - 0x24]
dec eax
push eax
mov edx, dword [ecx]
push 0
push ecx
call dword [edx + 0xb4]
mov edx, dword [ebp - 0x10]
mov ecx, dword [edx + 0xc648]
mov ecx, dword [ecx + 0xa8]
mov eax, dword [ecx + eax*4]
jmp 0x47a8ec
mov eax, dword [eax + 0x154]
push 4
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
push 0xf4
mov dword [esi + 4], eax
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x28], eax
mov byte [ebp - 4], 0x42
test eax, eax
je 0x47a923
mov ecx, dword [0x58d464]
mov ecx, dword [ecx + 0x14ba0]
push dword [ecx + 0x2a8]
mov ecx, eax
call fcn.00541d10
jmp 0x47a925
xor eax, eax
mov byte [ebp - 4], 0x41
lea edx, [edi + 0x78]
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ebx*4]
mov dword [esi + 0x60], eax
mov eax, dword [edi + 0x70]
mov dword [esi + 8], eax
mov eax, dword [edx + 0x14]
cmp dword [edx + 0x10], eax
jne 0x47a957
add eax, 0xa
mov ecx, edx
push eax
call fcn.00436aa0
lea edx, [edi + 0x78]
mov ecx, dword [edx + 0x10]
mov eax, dword [edx + 0x18]
mov dword [eax + ecx*4], esi
xor ecx, ecx
inc dword [edx + 0x10]
mov eax, dword [edi + 0xf0]
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov edx, dword [eax + 0xc648]
mov eax, dword [edx + 0x18]
mov dword [edx + 4], eax
cmp dword [edx + 0x10], ecx
jle 0x47a9a2
mov eax, dword [edx + 4]
mov edi, dword [ebp - 0x24]
cmp edi, dword [eax]
mov edi, dword [ebp - 0x18]
je 0x47aa5d
add eax, 4
inc ecx
mov dword [edx + 4], eax
cmp ecx, dword [edx + 0x10]
jl 0x47a985
mov eax, dword [edi + 0xf0]
xor edx, edx
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0xc648]
mov eax, dword [ecx + 0x50]
mov dword [ecx + 0x3c], eax
cmp dword [ecx + 0x48], edx
jle 0x47a9e1
mov eax, dword [ecx + 0x3c]
mov edi, dword [ebp - 0x24]
cmp edi, dword [eax]
mov edi, dword [ebp - 0x18]
je 0x47aa66
add eax, 4
inc edx
mov dword [ecx + 0x3c], eax
cmp edx, dword [ecx + 0x48]
jl 0x47a9c4
mov eax, dword [edi + 0xf0]
xor edx, edx
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0xc648]
mov eax, dword [ecx + 0x6c]
mov dword [ecx + 0x58], eax
cmp dword [ecx + 0x64], edx
jle 0x47aa20
mov eax, dword [ecx + 0x58]
mov edi, dword [ebp - 0x24]
cmp edi, dword [eax]
mov edi, dword [ebp - 0x18]
je 0x47aa6f
add eax, 4
inc edx
mov dword [ecx + 0x58], eax
cmp edx, dword [ecx + 0x64]
jl 0x47aa03
mov eax, dword [edi + 0xf0]
xor edx, edx
mov eax, dword [eax + ebx*4]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x10]
mov ecx, dword [eax + 0xc648]
mov eax, dword [ecx + 0x34]
mov dword [ecx + 0x20], eax
cmp dword [ecx + 0x2c], edx
jle 0x47aa7f
mov eax, dword [ecx + 0x20]
mov edi, dword [ebp - 0x24]
cmp edi, dword [eax]
mov edi, dword [ebp - 0x18]
je 0x47aa78
add eax, 4
inc edx
mov dword [ecx + 0x20], eax
cmp edx, dword [ecx + 0x2c]
jl 0x47aa42
jmp 0x47aa7f
mov dword [esi + 0x18], 0x3fc90fdb
jmp 0x47aa7f
mov dword [esi + 0x18], 0xbfc90fdb
jmp 0x47aa7f
mov dword [esi + 0x18], 0
jmp 0x47aa7f
mov dword [esi + 0x18], 0x40490fdb
inc ebx
cmp ebx, dword [edi + 0xe8]
jl 0x47a7f0
push 0x6c
call dword [sym.imp.msvcr120.dll_void____cdecl_operator_new_unsigned_int_]
mov esi, eax
add esp, 4
mov dword [ebp - 0x28], esi
mov byte [ebp - 4], 0x43
test esi, esi
je 0x47aadd
mov dword [esi + 0x14], 0xf
mov dword [esi + 0x10], 0
mov byte [esi], 0
push 0x35
push str.textures_TileBonusPhoenixGoldenActivated_anim.png.xml
mov ecx, esi
mov byte [ebp - 4], 0x44
call fcn.00401ea0
movss xmm2, dword [0x577c44]
mov ecx, esi
push str.textures_TileBonusPhoenixGoldenActivated_anim.png.xml
call fcn.00401620
jmp 0x47aadf
xor esi, esi
mov dword [edi + 0x94], esi
mov eax, dword [edi + 0x94]
test eax, eax
je 0x47aaf6
mov dword [eax + 0x48], 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret