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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff0
sub esp, 0x74
push ebx
push esi
mov esi, ecx
mov eax, dword [esi + 0x34]
mov ecx, dword [eax + 0x3c]
mov al, byte [ecx + 0x18]
test al, al
push edi
jg 0x5a3023
mov edx, dword [esi + 4]
fld dword [edx + 0x1f0]
xor cl, cl
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x44
jnp 0x5a2cce
fld dword [edx + 0x1ec]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x44
jnp 0x5a2cce
mov cl, 0xc
jmp 0x5a2d46
fld dword [edx + 0x1f4]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x44
jnp 0x5a2cf8
fld dword [edx + 0x1f8]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x44
jnp 0x5a2cf8
mov cl, 3
jmp 0x5a2d46
fld dword [edx + 0x1f4]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x44
jnp 0x5a2d1e
fld dword [edx + 0x1f0]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x44
jp 0x5a2d44
fld dword [edx + 0x1f8]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x44
jnp 0x5a2d46
fld dword [edx + 0x1ec]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x44
jnp 0x5a2d46
mov cl, 0x20
test cl, cl
movsx edx, cl
mov eax, 0x1b4
setne byte [esp + 0xf]
sub eax, esi
mov dword [esp + 0x10], 0
mov dword [esp + 0x1c], edx
mov ebx, 0x3b8
mov dword [esp + 0x18], eax
jmp 0x5a2d72
mov eax, dword [esp + 0x18]
mov ecx, dword [esi + 4]
lea edx, [esi + ebx - 0x370]
add eax, edx
fld dword [eax + ecx]
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x1c]
mov edi, 1
shl edi, cl
fmul dword [0x7fc09c]
mov dword [edx], 0
and edi, eax
je 0x5a2db5
fcom dword [0x7fc08c]
fnstsw ax
test ah, 0x41
je 0x5a2db5
fstp st(0)
fld dword [0x7fc08c]
mov eax, dword [esi + 0x30]
fcom dword [ebx + eax]
lea ecx, [ebx + eax]
fnstsw ax
test ah, 0x41
jne 0x5a2df2
fld dword [0x7fc800]
fmul dword [0x7fc098]
fadd dword [ecx]
fstp dword [esp + 0x14]
fcom dword [esp + 0x14]
fnstsw ax
test ah, 5
jnp 0x5a2de8
fstp st(0)
fld dword [esp + 0x14]
fstp dword [ecx]
mov dword [edx], 2
jmp 0x5a2e30
fcomp dword [ecx]
fnstsw ax
test ah, 5
jp 0x5a2e2a
fld dword [0x7fc800]
fmul dword [0x7fc098]
fsubr dword [ecx]
fld dword [0x7d7d3c]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x5a2e20
fstp st(0)
fld dword [0x7d7d3c]
fstp dword [ecx]
mov dword [edx], 3
jmp 0x5a2e30
mov dword [edx], 1
test edi, edi
je 0x5a2e4c
mov ecx, dword [esi + 0x30]
fld dword [ebx + ecx]
fcomp dword [0x7fc08c]
fnstsw ax
test ah, 5
jp 0x5a2e4c
mov byte [esp + 0xf], 0
mov edx, dword [esp + 0x10]
inc edx
add ebx, 4
cmp ebx, 0x3c8
mov dword [esp + 0x10], edx
jl 0x5a2d6e
mov edx, dword [esi + 4]
mov ecx, 0x30
add edx, 0x1ec
fld dword [edx]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x41
jne 0x5a2e98
mov eax, dword [esi + 0x24]
fld dword [eax + ecx]
fcomp dword [0x7fc090]
fnstsw ax
test ah, 5
jnp 0x5a3023
add ecx, 4
add edx, 4
cmp ecx, 0x40
jl 0x5a2e72
mov al, byte [esp + 0xf]
test al, al
je 0x5a3023
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov ebx, 0x1ec
mov edi, 0xe0
mov ecx, dword [esi + 4]
fld dword [ecx + ebx]
fcomp dword [0x7d7d3c]
fnstsw ax
test ah, 0x41
jne 0x5a3002
mov eax, dword [esi + 0x20]
fld dword [eax + 0x1f0]
mov edx, dword [esi + 0x2c]
fchs
mov ecx, dword [esp + 0x14]
fld dword [eax + 0x1f4]
lea ecx, [edx + ecx + 0x10]
fchs
fstp dword [esp + 0x34]
add eax, 0x30
fld dword [eax + 0x1c8]
fchs
fstp dword [esp + 0x38]
fadd dword [ecx]
fld dword [ecx + 4]
fadd dword [esp + 0x34]
fld dword [ecx + 8]
mov ecx, dword [esi + 0x24]
fadd dword [esp + 0x38]
fstp dword [esp + 0x78]
mov edx, dword [esp + 0x78]
fxch st(1)
fstp dword [esp + 0x20]
mov dword [esp + 0x28], edx
lea edx, [esp + 0x20]
fstp dword [esp + 0x24]
push edx
fld dword [ecx + ebx - 0x1bc]
push eax
fadd dword [esp + 0x30]
lea eax, [esp + 0x68]
push eax
fstp dword [esp + 0x34]
call fcn.0043ca20
mov eax, dword [esi + 0x20]
lea ecx, [esp + 0x6c]
push ecx
lea edx, [eax + 0xc0]
push edx
add eax, 0xa0
push eax
lea eax, [esp + 0x58]
push eax
call fcn.0059de10
fld dword [esp + 0x60]
mov edx, dword [esi + 0x24]
fmul dword [edx + edi + 4]
add edx, edi
fld dword [esp + 0x64]
add esp, 0x1c
fmul dword [edx + 8]
faddp st(1)
fld dword [esp + 0x40]
fmul dword [edx]
faddp st(1)
fcom dword [0x7d7d3c]
fnstsw ax
test ah, 1
jne 0x5a3000
fmul dword [0x7fc088]
mov ecx, dword [esi + 4]
fsubr dword [0x7fc094]
fmul dword [ecx + ebx]
fcom dword [0x7d7d3c]
fnstsw ax
test ah, 0x41
jne 0x5a3000
mov ecx, dword [esi + 0x20]
fmul dword [ecx + 0x164]
lea eax, [esp + 0x50]
fld st(0)
fmul dword [edx]
fstp dword [esp + 0x50]
fld st(0)
fmul dword [edx + 4]
fstp dword [esp + 0x54]
fmul dword [edx + 8]
lea edx, [esp + 0x60]
push edx
push eax
fstp dword [esp + 0x60]
call fcn.0059b920
mov ecx, dword [esi + 0x30]
mov edx, dword [esp + 0x10]
mov byte [ecx + edx + 0x3c8], 1
jmp 0x5a3002
fstp st(0)
inc dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
add edi, 0x10
add ecx, 0x30
add ebx, 4
cmp edi, 0x120
mov dword [esp + 0x14], ecx
jl 0x5a2ec3
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret