Function at 0x47f540
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x54888b
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x597f2c]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x10], esi
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0044f290
lea ecx, [esi + 0x108]
mov dword [ebp - 4], 0
mov dword [esi], vtable.BBOStatic.0
call fcn.00459ec0
mov dword [esi + 0x16c], 0xffffffff
mov dword [esi + 0x160], 0
mov dword [esi + 0x174], 0
mov byte [esi + 0x178], 0
mov eax, dword [0x59bcb4]
cmp eax, 1
jge 0x4802e0
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x47f5e2
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47f5e4
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datd_tree1.ase
mov dword [0x59bc58], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc58]
push 1
push str.datd_trees.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc58]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x47f673
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47f675
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datd_tree2.ase
mov dword [0x59bc5c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc5c]
push 1
push str.datd_trees.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc5c]
mov dword [esp + 8], 0x3b449ba6
mov dword [esp + 4], 0x3b449ba6
mov dword [esp], 0x3b449ba6
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x47f704
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47f706
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_tree1.ase
mov dword [0x59bc60], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc60]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc60]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x47f795
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47f797
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_tree2.ase
mov dword [0x59bc64], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc64]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc64]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x47f826
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47f828
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_tree3.ase
mov dword [0x59bc68], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc68]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc68]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x47f8b7
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47f8b9
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_tree4.ase
mov dword [0x59bc6c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc6c]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc6c]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x47f948
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47f94a
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_t_tree1.ase
mov dword [0x59bc70], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc70]
push 1
push str.dat_t_tree1.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc70]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x47f9d9
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47f9db
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_t_tree2.ase
mov dword [0x59bc74], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc74]
push 1
push str.dat_t_tree2.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc74]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x47fa6a
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fa6c
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_s_tree1.ase
mov dword [0x59bc78], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc78]
push 1
push str.dat_s_tree1.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc78]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x47fafb
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fafd
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_s_tree2.ase
mov dword [0x59bc7c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc7c]
push 1
push str.dat_s_tree2.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc7c]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x47fb8c
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fb8e
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datpalm.ase
mov dword [0x59bc80], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc80]
push 1
push str.datpalm.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc80]
mov dword [esp + 8], 0x3ac49ba6
mov dword [esp + 4], 0x3ac49ba6
mov dword [esp], 0x3ac49ba6
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x47fc1d
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fc1f
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datgmush.ase
mov dword [0x59bc84], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc84]
push 1
push str.datgmush.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc84]
mov dword [esp + 8], 0x3d23d70a
mov dword [esp + 4], 0x3d23d70a
mov dword [esp], 0x3d23d70a
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x47fcae
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fcb0
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_rocks.ase
mov dword [0x59bc88], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc88]
push 1
push str.dat_rocks.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc88]
mov dword [esp + 8], 0x3a83126f
mov dword [esp + 4], 0x3a83126f
mov dword [esp], 0x3a83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x47fd3f
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fd41
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datcabin.ase
mov dword [0x59bc8c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc8c]
push 1
push str.datcabin.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc8c]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x47fdd0
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fdd2
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datcabin2.ase
mov dword [0x59bc90], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc90]
push 1
push str.datcabin.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc90]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x47fe61
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fe63
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datpetHeadStone1.MEC
mov dword [0x59bc94], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462120
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc94]
mov dword [esp + 8], 0x3c343958
mov dword [esp + 4], 0x3c343958
mov dword [esp], 0x3c343958
push dword [eax + 0x2a3d8]
call fcn.00463f40
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc94]
push 0
push str.datpetHeadStone1.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x47fef2
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47fef4
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datpetHeadStone2.MEC
mov dword [0x59bc98], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462120
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc98]
mov dword [esp + 8], 0x3c03126f
mov dword [esp + 4], 0x3c03126f
mov dword [esp], 0x3c03126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc98]
push 0
push str.datpetHeadStone2.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x47ff83
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x47ff85
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_flower1.ASE
mov dword [0x59bc9c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bc9c]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bc9c]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x480014
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x480016
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_flower2.ASE
mov dword [0x59bca0], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bca0]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bca0]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x4800a5
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x4800a7
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_flower3.ASE
mov dword [0x59bca4], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bca4]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bca4]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x480136
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x480138
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.dat_flower4.ASE
mov dword [0x59bca8], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bca8]
mov dword [esp + 8], 0x3b03126f
mov dword [esp + 4], 0x3a83126f
mov dword [esp], 0x3b03126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bca8]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x4801c7
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x4801c9
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datmushroom.ASE
mov dword [0x59bcac], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bcac]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bcac]
push 0
push str.datmushroom.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
push 0x174
call fcn.004de236
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x480258
mov ecx, eax
call fcn.00460d50
mov ecx, eax
jmp 0x48025a
xor ecx, ecx
mov eax, dword [0x59a4b8]
push str.datgrass_hut.ASE
mov dword [0x59bcb0], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00462650
mov eax, dword [0x59a4b8]
sub esp, 0xc
mov ecx, dword [0x59bcb0]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00463f40
mov eax, dword [0x59a4b8]
mov ecx, dword [0x59bcb0]
push 0
push str.datgrass_hut.png
push dword [eax + 0x2a3d8]
call fcn.004630b0
inc dword [0x59bcb4]
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret 8
inc eax
mov dword [0x59bcb4], eax
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov esp, ebp
pop ebp
ret 8