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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x60
push ebx
push esi
push edi
push 0x71fd2c
mov ebx, edx
mov dword [ebp - 0x14], ecx
mov ecx, dword [ebp + 8]
push str.user
mov dword [ebp - 0xc], ebx
mov dword [ebp - 0x10], 0
call fcn.00466230
mov edi, eax
test edi, edi
jne 0x528bc7
call fcn.00464440
mov edi, eax
movzx eax, byte [edi + 8]
cmp eax, 4
jne 0x528ca7
push pe_nt_image_headers32
call fcn.005ab82c
mov ecx, dword [ebp - 0xc]
mov esi, eax
lea ebx, [esi + 0x10]
xorps xmm0, xmm0
add esp, 4
mov dword [esi + 0x20], 0
mov dword [esi + 0x24], 0
mov dword [esi + 0x38], 0
mov dword [esi + 0x3c], 0
mov dword [esi + 4], 0
mov dword [esi + 8], 0
mov dword [esi], 0x734e5c
mov dword [esi + 0xc], 0
movups xmmword [ebx], xmm0
mov dword [ebx + 0x10], 0
mov dword [ebx + 0x14], 0xf
mov byte [ebx], 0
movups xmmword [esi + 0x28], xmm0
mov dword [esi + 0x38], 0
mov dword [esi + 0x3c], 0xf
mov byte [esi + 0x28], 0
mov eax, dword [ecx + 4]
mov ecx, edi
mov dword [esi + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [esi + 8], eax
lea eax, [ebp - 0x3c]
push eax
call fcn.00465130
mov edi, eax
cmp ebx, edi
je 0x528c8f
mov ecx, ebx
call fcn.004143d0
movups xmm0, xmmword [edi]
movups xmmword [ebx], xmm0
movq xmm0, qword [edi + 0x10]
movq qword [ebx + 0x10], xmm0
mov dword [edi + 0x10], 0
mov dword [edi + 0x14], 0xf
mov byte [edi], 0
lea ecx, [ebp - 0x3c]
call fcn.004143d0
mov ebx, dword [ebp - 0xc]
push esi
mov ecx, dword [ebx]
call fcn.0050d900
jmp 0x528df6
cmp eax, 7
jne 0x528df6
push 0x720af0
push str.name
mov ecx, edi
call fcn.00466230
mov ebx, eax
test ebx, ebx
jne 0x528cce
call fcn.00464440
mov ebx, eax
push 0x720c69
push str.condition
mov ecx, edi
call fcn.00466230
mov esi, eax
mov dword [ebp - 0x18], esi
test esi, esi
jne 0x528cf0
call fcn.00464440
mov dword [ebp - 0x18], eax
push 0x721030
push str.type
mov ecx, edi
call fcn.00466230
mov edi, eax
test edi, edi
jne 0x528d0e
call fcn.00464440
mov edi, eax
cmp byte [ebx + 8], 4
jne 0x528df3
push pe_nt_image_headers32
call fcn.005ab82c
add esp, 4
mov esi, eax
push pe_nt_image_headers32
push 0
push esi
call fcn.005c3040
add esp, 0xc
mov ecx, esi
call fcn.004f90c0
mov ecx, dword [ebp - 0xc]
mov esi, eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ecx + 4]
mov dword [esi + 8], eax
lea eax, [ebp - 0x3c]
mov dword [esi + 4], ecx
mov ecx, ebx
push eax
call fcn.00465130
push eax
lea ecx, [esi + 0x10]
call fcn.0040c1c0
lea ecx, [ebp - 0x3c]
call fcn.004143d0
mov eax, dword [ebp - 0x18]
cmp byte [eax + 8], 4
jne 0x528d8a
lea ecx, [ebp - 0x3c]
push ecx
mov ecx, eax
call fcn.00465130
push eax
lea ecx, [esi + 0x28]
call fcn.0040c1c0
lea ecx, [ebp - 0x3c]
call fcn.004143d0
cmp byte [edi + 8], 4
jne 0x528dc5
lea eax, [ebp - 0x3c]
mov ecx, edi
push eax
mov ebx, 1
call fcn.00465130
cmp dword [eax + 0x14], 0xf
mov edx, dword [eax + 0x10]
jbe 0x528dab
mov eax, dword [eax]
push 6
push str.system
mov ecx, eax
call fcn.004108e0
add esp, 8
test al, al
je 0x528dc8
mov byte [ebp - 5], bl
jmp 0x528dcc
mov ebx, dword [ebp - 0x10]
mov byte [ebp - 5], 0
test bl, 1
je 0x528dd9
lea ecx, [ebp - 0x3c]
call fcn.004143d0
cmp byte [ebp - 5], 0
je 0x528de6
mov dword [esi + 0xc], 1
mov ebx, dword [ebp - 0xc]
push esi
mov ecx, dword [ebx]
call fcn.0050d900
jmp 0x528df6
mov ebx, dword [ebp - 0xc]
mov edi, dword [ebp + 8]
mov ecx, edi
push 0x737895
push str.animation
call fcn.00466230
mov esi, eax
test esi, esi
jne 0x528e17
call fcn.00464440
mov esi, eax
cmp byte [esi + 8], 7
jne 0x5291bb
push 0xa0
call fcn.005ab82c
add esp, 4
mov dword [ebp - 0x10], eax
push 0xa0
push 0
push eax
call fcn.005c3040
mov eax, dword [ebp - 0x10]
xorps xmm0, xmm0
mov dword [eax + 0x14], 0
lea ecx, [eax + 0x10]
mov dword [ecx + 8], 0
add esp, 0xc
mov dword [eax + 0x1c], 0
mov dword [eax + 0x20], 0
mov dword [eax + 0x24], 0
mov dword [eax + 0x28], 0
mov dword [eax + 0x2c], 0
mov dword [eax + 0x30], 0
mov dword [eax + 0x34], 0
mov dword [eax + 0x38], 0
mov dword [eax], 0x736e84
movups xmmword [eax + 0x3c], xmm0
mov dword [eax + 0x4c], 0
mov dword [eax + 0x50], 0xf
mov dword [ebp - 0x40], ecx
lea ecx, [eax + 0x1c]
mov byte [eax + 0x3c], 0
mov dword [ebp - 0x44], ecx
lea ecx, [eax + 0x3c]
mov dword [eax + 0x54], 0
movups xmmword [eax + 0x58], xmm0
mov dword [ebp - 0x28], ecx
lea ecx, [eax + 0x58]
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0xf
mov byte [ecx], 0
mov dword [eax + 0x70], 0
mov dword [eax + 0x74], 0
push 0xc
mov dword [ebp - 0x20], ecx
mov dword [eax + 0x78], 0
mov dword [eax + 0x7c], 0
call fcn.005ab82c
mov edx, dword [ebp - 0x10]
add esp, 4
lea ecx, [edx + 0x80]
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [edx + 0x78], eax
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], 0
mov dword [edx + 0x8c], 7
mov dword [edx + 0x90], 8
mov dword [edx + 0x74], 0x3f800000
push dword [edx + 0x78]
push 0x10
call fcn.004299f0
mov ecx, dword [ebp - 0x10]
push str.options
mov dword [ecx + 0x94], 0
mov dword [ecx + 0x98], 0
mov dword [ecx + 0x9c], 0
mov eax, dword [ebx + 4]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x14]
mov dword [ecx + 8], eax
mov ecx, esi
call fcn.00466320
push 0x73788a
push str.parent
mov ecx, eax
mov dword [ebp - 0x18], eax
call fcn.00466230
test eax, eax
je 0x529014
mov ecx, dword [ebp - 0x18]
push 0x73788a
push str.parent
call fcn.00466230
test eax, eax
jne 0x528fb9
call fcn.00464440
cmp byte [eax + 8], 7
jne 0x529014
push 0x7236eb
push 0x7236e8
mov ecx, eax
call fcn.00466230
mov ecx, eax
test ecx, ecx
jne 0x528fdd
call fcn.00464440
mov ecx, eax
mov eax, dword [ecx + 8]
cmp al, 4
jne 0x529014
mov ecx, dword [ecx]
test ecx, ecx
je 0x528ff4
shr eax, 8
test al, 1
je 0x528ff4
add ecx, 4
mov edx, ecx
lea eax, [edx + 1]
mov dword [ebp - 0x1c], eax
nop dword [eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x529000
sub edx, dword [ebp - 0x1c]
push edx
push ecx
mov ecx, dword [ebp - 0x20]
call fcn.0040c060
mov ecx, dword [ebp - 0x18]
push 0x720af0
push str.name
call fcn.00466230
test eax, eax
je 0x529067
mov ecx, dword [ebp - 0x18]
push 0x720af0
push str.name
call fcn.00466230
test eax, eax
jne 0x529045
call fcn.00464440
cmp byte [eax + 8], 4
jne 0x529067
lea ecx, [ebp - 0x5c]
push ecx
mov ecx, eax
call fcn.00465130
mov ecx, dword [ebp - 0x28]
push eax
call fcn.0040c1c0
lea ecx, [ebp - 0x5c]
call fcn.004143d0
push 0x7378a8
push str.relative
mov ecx, esi
call fcn.00466230
test eax, eax
je 0x5291a0
push 0x7207d1
push str.value
mov ecx, edi
call fcn.00466230
test eax, eax
jne 0x52909a
call fcn.00464440
cmp byte [eax + 8], 4
jne 0x5291a0
push 0x7207d1
push str.value
mov ecx, edi
call fcn.00466230
test eax, eax
jne 0x5290be
call fcn.00464440
mov ecx, dword [eax]
test ecx, ecx
je 0x5290d1
mov eax, dword [eax + 8]
shr eax, 8
test al, 1
je 0x5290d1
add ecx, 4
lea edx, [ebp - 0x30]
call fcn.00527ef0
test al, al
je 0x5291a0
cmp byte [esi + 8], 7
jne 0x5291a0
push 0x73797a
push 0x737978
mov ecx, esi
call fcn.00466230
test eax, eax
je 0x52911d
push 0x73797a
push 0x737978
mov ecx, esi
call fcn.00465fd0
movss xmm0, dword [ebp - 0x30]
mov ecx, eax
call fcn.0052b4d0
push 0x73798e
push 0x73798c
mov ecx, esi
call fcn.00466230
test eax, eax
je 0x52914f
push 0x73798e
push 0x73798c
mov ecx, esi
call fcn.00465fd0
movss xmm0, dword [ebp - 0x2c]
mov ecx, eax
call fcn.0052b4d0
push 0x73798a
push 0x737988
mov ecx, esi
call fcn.00466230
test eax, eax
je 0x529181
push 0x73798a
push 0x737988
mov ecx, esi
call fcn.00465fd0
movss xmm0, dword [ebp - 0x28]
mov ecx, eax
call fcn.0052b4d0
cmp byte [esi + 8], 0
je 0x5291a0
mov ecx, dword [esi]
lea eax, [ebp - 0x2c]
push eax
mov dword [ebp - 0x2c], str.relative
mov dword [ebp - 0x28], 0x20
call fcn.00467050
push dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
mov ecx, esi
call fcn.0052bf90
mov eax, dword [ebp - 0x10]
add esp, 4
mov ecx, dword [ebx]
push eax
call fcn.0050d900
push 0x73789e
push str.script
mov ecx, edi
call fcn.00466230
mov ebx, eax
test ebx, ebx
jne 0x5291d9
call fcn.00464440
mov ebx, eax
push 0x7378bc
push str.scriptproperties
mov ecx, edi
call fcn.00466230
mov dword [ebp - 0x18], eax
test eax, eax
jne 0x5291f9
call fcn.00464440
mov dword [ebp - 0x18], eax
cmp byte [ebx + 8], 4
jne 0x5292bc
push 0x88
call fcn.005ab82c
add esp, 4
mov esi, eax
push 0x88
push 0
push esi
call fcn.005c3040
add esp, 0xc
mov ecx, esi
call fcn.005292d0
mov ecx, dword [ebp - 0xc]
mov edi, eax
mov eax, dword [ebp - 0x14]
mov ecx, dword [ecx + 4]
mov dword [edi + 8], eax
lea eax, [ebp - 0x5c]
mov dword [edi + 4], ecx
mov ecx, ebx
push eax
call fcn.00465130
mov esi, eax
lea ebx, [edi + 0xc]
cmp ebx, esi
je 0x529276
mov ecx, ebx
call fcn.004143d0
movups xmm0, xmmword [esi]
movups xmmword [ebx], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebx + 0x10], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0xf
mov byte [esi], 0
lea ecx, [ebp - 0x5c]
call fcn.004143d0
push dword [ebp - 0x18]
lea ecx, [ebp - 0x3c]
call fcn.00464b00
lea ecx, [edi + 0x50]
push ecx
mov ecx, eax
call fcn.00464cb0
lea ecx, [ebp - 0x3c]
call fcn.00465f40
mov eax, dword [ebp - 0x30]
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
test eax, eax
je 0x5292b1
push eax
call fcn.004672a0
mov eax, dword [ebp - 0xc]
push edi
mov ecx, dword [eax]
call fcn.0050d900
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret