Function at 0x45d140
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c575b
mov eax, dword fs:[0]
push eax
push ecx
push esi
mov eax, dword [0x507b40]
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.00434290
lea ecx, [esi + 0x108]
mov dword [ebp - 4], 0
mov dword [esi], vtable.BBOStatic.0
call fcn.0043ba40
mov dword [esi + 0x16c], 0xffffffff
mov dword [esi + 0x160], 0
mov dword [esi + 0x174], 0
mov byte [esi + 0x178], 0
mov eax, dword [0x50ab8c]
cmp eax, 1
jge 0x45dee0
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 1
test eax, eax
je 0x45d1e2
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d1e4
xor ecx, ecx
mov eax, dword [0x509420]
push str.datd_tree1.ase
mov dword [0x50ab30], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab30]
push 1
push 0x4cd8f8
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab30]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x45d273
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d275
xor ecx, ecx
mov eax, dword [0x509420]
push str.datd_tree2.ase
mov dword [0x50ab34], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab34]
push 1
push str.datd_trees.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab34]
mov dword [esp + 8], 0x3b449ba6
mov dword [esp + 4], 0x3b449ba6
mov dword [esp], 0x3b449ba6
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 3
test eax, eax
je 0x45d304
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d306
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_tree1.ase
mov dword [0x50ab38], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab38]
push 1
push 0x4cd938
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab38]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 4
test eax, eax
je 0x45d395
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d397
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_tree2.ase
mov dword [0x50ab3c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab3c]
push 1
push 0x4cd958
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab3c]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 5
test eax, eax
je 0x45d426
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d428
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_tree3.ase
mov dword [0x50ab40], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab40]
push 1
push 0x4cd978
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab40]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 6
test eax, eax
je 0x45d4b7
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d4b9
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_tree4.ase
mov dword [0x50ab44], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab44]
push 1
push str.dat_f_tree.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab44]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x45d548
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d54a
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_t_tree1.ase
mov dword [0x50ab48], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab48]
push 1
push str.dat_t_tree1.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab48]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 8
test eax, eax
je 0x45d5d9
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d5db
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_t_tree2.ase
mov dword [0x50ab4c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab4c]
push 1
push str.dat_t_tree2.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab4c]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 9
test eax, eax
je 0x45d66a
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d66c
xor ecx, ecx
mov eax, dword [0x509420]
push 0x4cd9e8
mov dword [0x50ab50], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab50]
push 1
push 0x4cd9f8
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab50]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xa
test eax, eax
je 0x45d6fb
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d6fd
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_s_tree2.ase
mov dword [0x50ab54], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab54]
push 1
push str.dat_s_tree2.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab54]
mov dword [esp + 8], 0x3c23d70a
mov dword [esp + 4], 0x3c23d70a
mov dword [esp], 0x3c23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xb
test eax, eax
je 0x45d78c
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d78e
xor ecx, ecx
mov eax, dword [0x509420]
push str.datpalm.ase
mov dword [0x50ab58], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab58]
push 1
push str.datpalm.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab58]
mov dword [esp + 8], 0x3ac49ba6
mov dword [esp + 4], 0x3ac49ba6
mov dword [esp], 0x3ac49ba6
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xc
test eax, eax
je 0x45d81d
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d81f
xor ecx, ecx
mov eax, dword [0x509420]
push str.datgmush.ase
mov dword [0x50ab5c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab5c]
push 1
push str.datgmush.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab5c]
mov dword [esp + 8], 0x3d23d70a
mov dword [esp + 4], 0x3d23d70a
mov dword [esp], 0x3d23d70a
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xd
test eax, eax
je 0x45d8ae
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d8b0
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_rocks.ase
mov dword [0x50ab60], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab60]
push 1
push str.dat_rocks.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab60]
mov dword [esp + 8], 0x3a83126f
mov dword [esp + 4], 0x3a83126f
mov dword [esp], 0x3a83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xe
test eax, eax
je 0x45d93f
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d941
xor ecx, ecx
mov eax, dword [0x509420]
push str.datcabin.ase
mov dword [0x50ab64], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab64]
push 1
push 0x4cda98
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab64]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0xf
test eax, eax
je 0x45d9d0
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45d9d2
xor ecx, ecx
mov eax, dword [0x509420]
push str.datcabin2.ase
mov dword [0x50ab68], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
mov ecx, dword [0x50ab68]
push 1
push str.datcabin.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab68]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x10
test eax, eax
je 0x45da61
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45da63
xor ecx, ecx
mov eax, dword [0x509420]
push str.datpetHeadStone1.MEC
mov dword [0x50ab6c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.004418b0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab6c]
mov dword [esp + 8], 0x3c343958
mov dword [esp + 4], 0x3c343958
mov dword [esp], 0x3c343958
push dword [eax + 0x2a3d8]
call fcn.00442a50
mov eax, dword [0x509420]
mov ecx, dword [0x50ab6c]
push 0
push str.datpetHeadStone1.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x11
test eax, eax
je 0x45daf2
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45daf4
xor ecx, ecx
mov eax, dword [0x509420]
push str.datpetHeadStone2.MEC
mov dword [0x50ab70], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.004418b0
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab70]
mov dword [esp + 8], 0x3c03126f
mov dword [esp + 4], 0x3c03126f
mov dword [esp], 0x3c03126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
mov eax, dword [0x509420]
mov ecx, dword [0x50ab70]
push 0
push str.datpetHeadStone2.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x45db83
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45db85
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_flower1.ASE
mov dword [0x50ab74], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab74]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
mov eax, dword [0x509420]
mov ecx, dword [0x50ab74]
push 0
push 0x4cdb38
push dword [eax + 0x2a3d8]
call fcn.004425d0
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x13
test eax, eax
je 0x45dc14
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45dc16
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_flower2.ASE
mov dword [0x50ab78], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab78]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
mov eax, dword [0x509420]
mov ecx, dword [0x50ab78]
push 0
push 0x4cdb60
push dword [eax + 0x2a3d8]
call fcn.004425d0
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x14
test eax, eax
je 0x45dca5
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45dca7
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_flower3.ASE
mov dword [0x50ab7c], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab7c]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
mov eax, dword [0x509420]
mov ecx, dword [0x50ab7c]
push 0
push 0x4cdb88
push dword [eax + 0x2a3d8]
call fcn.004425d0
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x15
test eax, eax
je 0x45dd36
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45dd38
xor ecx, ecx
mov eax, dword [0x509420]
push str.dat_flower4.ASE
mov dword [0x50ab80], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab80]
mov dword [esp + 8], 0x3b03126f
mov dword [esp + 4], 0x3a83126f
mov dword [esp], 0x3b03126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
mov eax, dword [0x509420]
mov ecx, dword [0x50ab80]
push 0
push str.datgrassTexture.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x16
test eax, eax
je 0x45ddc7
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45ddc9
xor ecx, ecx
mov eax, dword [0x509420]
push str.datmushroom.ASE
mov dword [0x50ab84], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab84]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
mov eax, dword [0x509420]
mov ecx, dword [0x50ab84]
push 0
push str.datmushroom.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
push 0x174
call fcn.00498854
add esp, 4
mov dword [ebp + 0xc], eax
mov byte [ebp - 4], 0x17
test eax, eax
je 0x45de58
mov ecx, eax
call fcn.00441270
mov ecx, eax
jmp 0x45de5a
xor ecx, ecx
mov eax, dword [0x509420]
push str.datgrass_hut.ASE
mov dword [0x50ab88], ecx
mov byte [ebp - 4], 0
push dword [eax + 0x2a3d8]
call fcn.00441d90
mov eax, dword [0x509420]
sub esp, 0xc
mov ecx, dword [0x50ab88]
mov dword [esp + 8], 0x3b83126f
mov dword [esp + 4], 0x3b83126f
mov dword [esp], 0x3b83126f
push dword [eax + 0x2a3d8]
call fcn.00442a50
mov eax, dword [0x509420]
mov ecx, dword [0x50ab88]
push 0
push str.datgrass_hut.png
push dword [eax + 0x2a3d8]
call fcn.004425d0
inc dword [0x50ab8c]
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 [0x50ab8c], 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