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

Disassembly:
sub esp, 0x5c
push ebx
push ebp
push esi
push edi
mov esi, ecx
call fcn.00578540
push 0x20
push 0x3f800000
mov ecx, esi
mov ebp, eax
call fcn.004d67b0
fstp dword [esp + 0x14]
push 0x20
push 0x3f800000
mov ecx, esi
call fcn.004d67b0
fstp dword [esp + 0x18]
push 0x20
push 0x3f800000
mov ecx, esi
call fcn.004d67b0
fstp dword [esp + 0x1c]
push 8
mov ecx, esi
call fcn.004d6720
movzx ebx, al
mov ecx, esi
mov dword [esp + 0x20], ebx
call fcn.004d66f0
mov ecx, esi
mov dword [esp + 0x28], eax
call fcn.004d66f0
push 8
mov ecx, esi
mov dword [esp + 0x28], eax
call fcn.004d6720
mov ecx, esi
mov byte [esp + 0x13], al
call fcn.00578540
push 1
mov ecx, esi
mov dword [esp + 0x30], eax
call fcn.004d6230
test eax, eax
jne 0x523b0a
push 1
mov ecx, esi
call fcn.004d6240
test eax, eax
jne 0x523b0a
mov edi, dword [esp + 0x70]
mov ecx, edi
call fcn.00561080
mov ecx, edi
mov esi, eax
call fcn.00561080
test eax, eax
je 0x523b0a
test esi, esi
je 0x523b0a
mov ecx, esi
call fcn.004cb120
test eax, eax
je 0x523b0a
mov ecx, edi
call fcn.00561080
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x30]
test eax, eax
je 0x5237ac
mov ecx, edi
call fcn.00561080
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x30]
mov ecx, dword [eax + 0x9dc]
test ecx, ecx
jne 0x523b0a
mov ecx, edi
call fcn.00561080
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x30]
mov edi, dword [eax + 0x340]
mov eax, dword [edi + 0x84]
test eax, eax
jne 0x523709
fld dword [edi + 0x60]
mov eax, dword [edi + 0x5c]
fstp dword [esp + 0x34]
fld dword [edi + 0x64]
mov edx, dword [esp + 0x34]
mov ecx, eax
mov dword [esp + 0x30], eax
fstp dword [esp + 0x38]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x44], eax
mov eax, dword [edi + 0x70]
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x40], edx
jmp 0x52373a
fld dword [edi + 0x78]
mov ecx, dword [edi + 0x74]
fstp dword [esp + 0x34]
fld dword [edi + 0x7c]
mov eax, dword [esp + 0x34]
fstp dword [esp + 0x38]
mov edx, ecx
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x40], eax
mov eax, dword [edi + 0x80]
mov dword [esp + 0x3c], edx
mov dword [esp + 0x44], ecx
cmp eax, ebp
fld dword [esp + 0x14]
fsub dword [esp + 0x3c]
fld dword [esp + 0x18]
fsub dword [esp + 0x40]
fld dword [esp + 0x1c]
fsub dword [esp + 0x44]
jne 0x52378e
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fcomp dword [0x73dfec]
fstp st(0)
fnstsw ax
fstp st(0)
test ah, 5
fstp st(0)
jp 0x523794
movzx edx, bl
mov dword [edi + 0x28], edx
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x5c
ret 4
fstp st(0)
fstp st(0)
fstp st(0)
mov ecx, edi
call fcn.005d0ec0
cmp byte [esp + 0x13], 1
jne 0x5237ac
mov dword [edi + 0x194], 1
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x30]
test eax, eax
je 0x523a12
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], edx
mov edx, dword [esi]
mov ecx, esi
mov dword [esp + 0x50], eax
call dword [edx + 0x30]
mov edi, eax
lea eax, [esp + 0x48]
push eax
lea ebx, [edi + 0x90]
lea ecx, [esp + 0x40]
push ebx
push ecx
call fcn.00423bc0
fld dword [esp + 0x50]
fmul dword [esp + 0x50]
add esp, 0xc
fld dword [esp + 0x40]
fmul dword [esp + 0x40]
faddp st(1)
fld dword [esp + 0x3c]
fmul dword [esp + 0x3c]
faddp st(1)
fcomp dword [0x747d7c]
fnstsw ax
test ah, 5
jp 0x523a12
cmp byte [edi + 0x9f2], 2
jne 0x523a12
mov ebp, dword [edi + 0x9f4]
mov edx, dword [0x7a39fc]
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x30], 0
mov dword [esp + 0x34], 0
mov dword [esp + 0x38], 0
mov ecx, dword [edx + 8]
push ebp
call fcn.004ae750
mov esi, eax
test esi, esi
je 0x523afb
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x10]
test eax, eax
je 0x523afb
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x10]
mov esi, eax
test esi, esi
je 0x523afb
mov eax, dword [edi + 4]
mov ecx, dword [edi + 0x9c8]
push eax
push 1
call fcn.004d28f0
mov ecx, dword [edi + 0x9c8]
push 0
push 0x1f4
call fcn.004d2920
push ebx
add esi, 0x90
lea ecx, [esp + 0x58]
push esi
push ecx
call fcn.00423bc0
push eax
lea edx, [esp + 0x70]
push edx
call fcn.004ab180
mov ecx, dword [eax]
mov dword [esp + 0x44], ecx
mov edx, dword [eax + 4]
mov dword [esp + 0x48], edx
mov eax, dword [eax + 8]
push ebx
lea ecx, [esp + 0x60]
push ecx
lea edx, [esp + 0x7c]
push edx
mov dword [esp + 0x58], eax
call fcn.00423bc0
push eax
lea eax, [esp + 0x78]
push eax
call fcn.004ab180
fld dword [esp + 0x5c]
mov ecx, dword [eax]
mov dword [esp + 0x64], ecx
mov edx, dword [eax + 4]
mov ecx, dword [esp + 0x60]
mov dword [esp + 0x68], edx
fmul dword [esp + 0x68]
fld dword [esp + 0x58]
mov eax, dword [eax + 8]
fmul dword [esp + 0x64]
mov dword [esp + 0x6c], eax
add esp, 0x28
mov dword [esp + 0x44], ecx
faddp st(1)
fld dword [esp + 0x38]
fmul dword [esp + 0x38]
faddp st(1)
fcom dword [0x748024]
fnstsw ax
test ah, 1
jne 0x523975
push ebp
fstp st(0)
push 0x1f4
push 2
mov ecx, edi
call fcn.005b56e0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x5c
ret 4
fcomp dword [0x746ffc]
fnstsw ax
test ah, 0x41
jp 0x5239a0
push ebp
push 0x1f4
push 3
mov ecx, edi
call fcn.005b56e0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x5c
ret 4
lea edx, [esp + 0x3c]
push edx
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x68]
push ecx
call fcn.004ab210
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov dword [esp + 0x54], edx
mov edx, dword [eax + 8]
mov dword [esp + 0x5c], edx
fld dword [esp + 0x5c]
fcomp dword [0x73d700]
add esp, 0xc
push ebp
mov dword [esp + 0x50], ecx
push 0x1f4
fnstsw ax
test ah, 1
jne 0x5239fa
push 4
mov ecx, edi
call fcn.005b56e0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x5c
ret 4
push 5
mov ecx, edi
call fcn.005b56e0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x5c
ret 4
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x30]
mov ebx, eax
test ebx, ebx
je 0x523afb
cmp dword [ebx + 0xe8], 1
jne 0x523afb
mov ecx, ebx
mov edi, 0xffff
call fcn.004f1460
cmp byte [ebx + 0x9f2], 1
jne 0x523a4a
mov edi, 0xfffe
mov edx, dword [esi]
push 1
push 0
mov ecx, esi
call dword [edx + 0x30]
mov ecx, eax
call fcn.0050ee80
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x30]
mov ecx, dword [eax + 0x9c8]
call fcn.004d4f60
mov edx, dword [esi]
push 8
mov ecx, esi
call dword [edx + 0x30]
mov ecx, eax
call fcn.004f8770
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
push 0
push 0
push 0
mov dword [esp + 0x48], eax
lea eax, [esp + 0x54]
push eax
mov eax, dword [esp + 0x34]
push 0
push 0
mov dword [esp + 0x58], ecx
movzx ecx, byte [esp + 0x2b]
push ecx
mov ecx, dword [esp + 0x44]
push 0
mov dword [esp + 0x64], edx
mov edx, dword [esp + 0x40]
push edx
mov edx, dword [esp + 0x50]
push eax
push 0
push 0
push ecx
push edx
mov edx, dword [esi]
push ebp
lea eax, [esp + 0x78]
push eax
push edi
mov ecx, esi
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
call dword [edx + 0x30]
mov ecx, eax
call fcn.004f8b60
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x5c
ret 4
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x5c
ret 4