Function at 0x478bd0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x5436cb
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x5914c0]
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.004488a0
lea ecx, [esi + 0x108]
mov dword [ebp - 4], 0
mov dword [esi], vtable.BBOStatic.0
call fcn.00453160
mov dword [esi + 0x16c], 0xffffffff
mov dword [esi + 0x160], 0
mov dword [esi + 0x174], 0
mov byte [esi + 0x178], 0
mov eax, dword [0x5951d4]
cmp eax, 1
jge 0x479970
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x478c72
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x478c74
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datd_tree1.ase
mov dword [0x595178], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x595178]
push 1
push str.datd_trees.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x595178]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x478d03
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x478d05
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datd_tree2.ase
mov dword [0x59517c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x59517c]
push 1
push str.datd_trees.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x59517c]
mov dword [esp + 8], 0x3b449ba6
mov dword [esp + 4], 0x3b449ba6
mov dword [esp], 0x3b449ba6
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x478d94
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x478d96
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_tree1.ase
mov dword [0x595180], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x595180]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x595180]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x478e25
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x478e27
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_tree2.ase
mov dword [0x595184], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x595184]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x595184]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x478eb6
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x478eb8
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_tree3.ase
mov dword [0x595188], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x595188]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x595188]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x478f47
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x478f49
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_tree4.ase
mov dword [0x59518c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x59518c]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x59518c]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x478fd8
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x478fda
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_t_tree1.ase
mov dword [0x595190], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x595190]
push 1
push str.dat_t_tree1.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x595190]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x479069
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x47906b
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_t_tree2.ase
mov dword [0x595194], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x595194]
push 1
push str.dat_t_tree2.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x595194]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x4790fa
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x4790fc
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_s_tree1.ase
mov dword [0x595198], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x595198]
push 1
push str.dat_s_tree1.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x595198]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x47918b
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x47918d
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_s_tree2.ase
mov dword [0x59519c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x59519c]
push 1
push str.dat_s_tree2.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x59519c]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x47921c
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x47921e
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datpalm.ase
mov dword [0x5951a0], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951a0]
push 1
push str.datpalm.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951a0]
mov dword [esp + 8], 0x3ac49ba6
mov dword [esp + 4], 0x3ac49ba6
mov dword [esp], 0x3ac49ba6
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x4792ad
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x4792af
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datgmush.ase
mov dword [0x5951a4], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951a4]
push 1
push str.datgmush.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951a4]
mov dword [esp + 8], 0x3d23d70a
mov dword [esp + 4], 0x3d23d70a
mov dword [esp], 0x3d23d70a
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x47933e
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x479340
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_rocks.ase
mov dword [0x5951a8], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951a8]
push 1
push str.dat_rocks.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951a8]
mov dword [esp + 8], 0x3a83126f
mov dword [esp + 4], 0x3a83126f
mov dword [esp], 0x3a83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x4793cf
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x4793d1
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datcabin.ase
mov dword [0x5951ac], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951ac]
push 1
push str.datcabin.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951ac]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x479460
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x479462
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datcabin2.ase
mov dword [0x5951b0], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951b0]
push 1
push str.datcabin.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951b0]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x4794f1
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x4794f3
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datpetHeadStone1.MEC
mov dword [0x5951b4], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b430
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951b4]
mov dword [esp + 8], 0x3c343958
mov dword [esp + 4], 0x3c343958
mov dword [esp], 0x3c343958
push dword [eax + 0x2a3d8]
call fcn.0045d290
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951b4]
push 0
push str.datpetHeadStone1.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x479582
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x479584
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datpetHeadStone2.MEC
mov dword [0x5951b8], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b430
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951b8]
mov dword [esp + 8], 0x3c03126f
mov dword [esp + 4], 0x3c03126f
mov dword [esp], 0x3c03126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951b8]
push 0
push str.datpetHeadStone2.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x479613
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x479615
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_flower1.ASE
mov dword [0x5951bc], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951bc]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951bc]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x4796a4
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x4796a6
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_flower2.ASE
mov dword [0x5951c0], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951c0]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951c0]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x479735
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x479737
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_flower3.ASE
mov dword [0x5951c4], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951c4]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951c4]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x4797c6
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x4797c8
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.dat_flower4.ASE
mov dword [0x5951c8], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951c8]
mov dword [esp + 8], 0x3b03126f
mov dword [esp + 4], 0x3a83126f
mov dword [esp], 0x3b03126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951c8]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x479857
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x479859
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datmushroom.ASE
mov dword [0x5951cc], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951cc]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951cc]
push 0
push str.datmushroom.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
push 0x174
call fcn.004b31b9
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x4798e8
mov ecx, eax
call fcn.0045a070
mov ecx, eax
jmp 0x4798ea
xor ecx, ecx
mov eax, dword [0x5939d8]
push str.datgrass_hut.ASE
mov dword [0x5951d0], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.0045b960
mov eax, dword [0x5939d8]
sub esp, 0xc
mov ecx, dword [0x5951d0]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.0045d290
mov eax, dword [0x5939d8]
mov ecx, dword [0x5951d0]
push 0
push str.datgrass_hut.png
push dword [eax + 0x2a3d8]
call fcn.0045c410
inc dword [0x5951d4]
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 [0x5951d4], 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