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

Disassembly:
push ebx
push esi
mov ebx, ecx
push edi
push ebp
sub esp, 0x90
cmp dword [ebx + 0x33c], 0
jne 0x51435c
mov al, byte [ebx + 0x14f]
shr al, 5
and al, 1
je 0x51435c
mov dword [esp + 0x10], ebx
add dword [esp + 0x10], 4
add dword [esp + 0x10], 0x30
mov eax, dword [esp + 0x10]
mov ecx, 0x9b6e64
push 0
push 0
push 0
push 0
push dword [0x692814]
push 1
push dword [eax + 8]
push dword [eax + 4]
push dword [eax]
call fcn.00437150
fld dword [ebx + 0x398]
fstp dword [esp + 0x6c]
fld dword [ebx + 0x39c]
fstp dword [esp + 0x70]
fld dword [0x6927b0]
fadd dword [ebx + 0x3a0]
mov edi, eax
lea eax, [esp + 0x6c]
push 0
fstp dword [esp + 0x78]
push 0
push 0
push 1
push 0
push 0
push 1
push eax
push dword [esp + 0x30]
call fcn.004da580
add esp, 0x24
test al, al
fldz
fldz
fldz
fldz
je 0x513ed2
fcompp
fcompp
xor al, al
add esp, 0x90
pop ebp
pop edi
pop esi
pop ebx
ret 0x10
lea edi, [edi + edi*4]
lea edi, [edi*4]
mov dword [ebx + 0x33c], 0
fld dword [ebx + 0x39c]
fstp st(3)
mov eax, dword [esp + 0x10]
add edi, 0x9b6e64
fld st(2)
fsub dword [eax + 4]
mov dword [esp + 0xc], 0
fstp dword [esp + 0x5c]
fld dword [ebx + 0x398]
fstp st(2)
fld st(1)
fsub dword [eax]
mov eax, dword [esp + 0x5c]
fstp dword [esp + 0x58]
fld dword [esp + 0x58]
mov dword [esp + 0x14], eax
movsx eax, word [edi + 4]
fstp st(4)
mov dword [esp + 0x60], eax
fild dword [esp + 0x60]
fmul dword [0x692818]
fsubr st(2)
fstp dword [esp + 0x18]
movsx eax, word [edi + 6]
mov dword [esp + 0x60], eax
fild dword [esp + 0x60]
fmul dword [0x692818]
fsubr st(3)
fstp dword [esp + 0x1c]
jmp 0x514273
movsx edx, word [edi + 0xc]
add edx, dword [esp + 0xc]
movzx eax, word [edx*2 + 0x9f17e4]
and eax, 0x3fff
movsx ecx, ax
lea ecx, [ecx + ecx*4]
lea ecx, [ecx*4]
add ecx, 0x9b6e64
test ecx, ecx
je 0x51426f
movsx eax, word [ecx + 6]
mov dword [esp + 0x60], eax
fild dword [esp + 0x60]
fmul dword [0x692818]
fstp dword [esp + 0x44]
mov eax, dword [esp + 0x44]
mov dword [esp + 0x54], eax
movsx ebp, word [ecx + 4]
mov dword [esp + 0x60], ebp
fild dword [esp + 0x60]
fmul dword [0x692818]
fstp dword [esp + 0x48]
mov eax, dword [esp + 0x48]
mov dword [esp + 0x50], eax
fld dword [ebx + 0x39c]
fsub dword [esp + 0x54]
fstp dword [esp + 0x40]
fld dword [ebx + 0x398]
fsub dword [esp + 0x50]
fstp dword [esp + 0x3c]
fld dword [esp + 0x14]
fmul st(0)
fld st(4)
fmul st(0)
faddp st(1)
fld dword [esp + 0x40]
fmul st(0)
fld dword [esp + 0x3c]
fmul st(0)
faddp st(1)
fstp dword [esp + 0x4c]
fcomp dword [esp + 0x4c]
fnstsw ax
test ah, 0x45
jne 0x514056
fld dword [esp + 0x1c]
fmul st(0)
fld dword [esp + 0x18]
fmul st(0)
faddp st(1)
fcomp dword [esp + 0x4c]
fnstsw ax
test ah, 0x45
jne 0x514040
mov dword [ebx + 0x33c], ecx
mov eax, dword [esp + 0x40]
fld dword [esp + 0x3c]
fstp st(4)
mov dword [esp + 0x14], eax
jmp 0x514056
mov dword [ebx + 0x33c], edi
mov esi, dword [esp + 0x3c]
mov eax, dword [esp + 0x40]
mov dword [esp + 0x18], esi
mov dword [esp + 0x1c], eax
mov dword [esp + 8], 0
jmp 0x51425c
movsx edx, word [ecx + 0xc]
add edx, dword [esp + 8]
movzx eax, word [edx*2 + 0x9f17e4]
and eax, 0x3fff
movsx ebp, ax
lea ebp, [ebp + ebp*4]
lea ebp, [ebp*4]
add ebp, 0x9b6e64
test ebp, ebp
je 0x514258
cmp ebp, edi
je 0x514258
movsx eax, word [ebp + 6]
mov dword [esp + 0x60], eax
fild dword [esp + 0x60]
fmul dword [0x692818]
fstp dword [esp + 0x28]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x38], eax
movsx edx, word [ebp + 4]
mov dword [esp + 0x60], edx
fild dword [esp + 0x60]
fmul dword [0x692818]
fstp dword [esp + 0x2c]
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x34], eax
fld dword [ebx + 0x39c]
fsub dword [esp + 0x38]
fstp dword [esp + 0x24]
fld dword [ebx + 0x398]
fsub dword [esp + 0x34]
fstp dword [esp + 0x20]
fld dword [esp + 0x14]
fmul st(0)
fld st(4)
fmul st(0)
faddp st(1)
fld dword [esp + 0x24]
fmul st(0)
fld dword [esp + 0x20]
fmul st(0)
faddp st(1)
fstp dword [esp + 0x30]
fcomp dword [esp + 0x30]
fnstsw ax
test ah, 0x45
jne 0x514166
fld dword [esp + 0x1c]
fmul st(0)
fld dword [esp + 0x18]
fmul st(0)
faddp st(1)
fcomp dword [esp + 0x30]
fnstsw ax
test ah, 0x45
jne 0x514150
mov dword [ebx + 0x33c], ecx
mov eax, dword [esp + 0x24]
fld dword [esp + 0x20]
fstp st(4)
mov dword [esp + 0x14], eax
jmp 0x514166
mov dword [ebx + 0x33c], edi
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], eax
xor esi, esi
jmp 0x514247
movsx edx, word [ebp + 0xc]
add edx, esi
movzx eax, word [edx*2 + 0x9f17e4]
and eax, 0x3fff
movsx edx, ax
lea edx, [edx + edx*4]
lea edx, [edx*4]
add edx, 0x9b6e64
test edx, edx
je 0x514246
cmp edx, ecx
je 0x514246
movsx eax, word [edx + 6]
mov dword [esp + 0x60], eax
fild dword [esp + 0x60]
movsx eax, word [edx + 4]
fmul dword [0x692818]
mov dword [esp + 0x60], eax
fstp st(3)
fld st(2)
fstp st(2)
fild dword [esp + 0x60]
fmul dword [0x692818]
fstp st(3)
fld st(2)
fstp st(3)
fld dword [ebx + 0x39c]
fsub st(2)
fstp st(2)
fld dword [ebx + 0x398]
fsub st(3)
fstp st(3)
fld dword [esp + 0x14]
fmul st(0)
fld st(4)
fmul st(0)
faddp st(1)
fld st(2)
fmul st(0)
fld st(4)
fmul st(0)
faddp st(1)
fstp st(2)
fcomp st(1)
fnstsw ax
test ah, 0x45
jne 0x514246
fld dword [esp + 0x1c]
fmul st(0)
fld dword [esp + 0x18]
fmul st(0)
faddp st(1)
fcomp st(1)
fnstsw ax
test ah, 0x45
jne 0x514234
fld st(2)
fstp st(4)
fld st(1)
mov dword [ebx + 0x33c], ecx
fstp dword [esp + 0x14]
jmp 0x514246
fld st(2)
mov dword [ebx + 0x33c], edi
fstp dword [esp + 0x18]
fld st(1)
fstp dword [esp + 0x1c]
inc esi
mov dl, byte [ebp + 0x10]
and dl, 0xf
movzx eax, dl
cmp esi, eax
jl 0x514170
inc dword [esp + 8]
mov dl, byte [ecx + 0x10]
and dl, 0xf
movzx eax, dl
cmp dword [esp + 8], eax
jl 0x514063
inc dword [esp + 0xc]
mov dl, byte [edi + 0x10]
and dl, 0xf
movzx eax, dl
cmp dword [esp + 0xc], eax
jl 0x513f60
mov ebp, dword [ebx + 0x33c]
test ebp, ebp
je 0x514370
mov ax, word [ebx + 0x5a]
fcompp
fcompp
push eax
lea eax, [esp + 0x7c]
push ebp
push eax
call fcn.004351c0
mov eax, dword [esp + 0x1c]
add esp, 0xc
fldz
fldz
fld dword [esp + 0x7c]
fsub dword [eax + 4]
mov eax, dword [esp + 0x10]
fstp st(1)
fld dword [esp + 0x78]
fsub dword [eax]
fstp st(2)
fld dword [esp + 0x5c]
fmul st(0)
fld dword [esp + 0x58]
fmul st(0)
faddp st(1)
fld st(1)
fmul st(0)
fld st(3)
fmul st(0)
faddp st(1)
fcompp
fnstsw ax
and ah, 5
cmp ah, 1
jne 0x514350
mov ax, word [ebx + 0x5a]
mov ebx, dword [ebx + 0x33c]
fcompp
push eax
lea eax, [esp + 0x88]
push ebx
push eax
call fcn.004351c0
mov eax, dword [esp + 0xbc]
add esp, 0xc
fld dword [esp + 0x84]
fstp dword [eax]
mov eax, dword [esp + 0xb0]
fld dword [esp + 0x88]
fstp dword [eax + 4]
mov eax, dword [esp + 0xb0]
fld dword [esp + 0x8c]
fstp dword [eax + 8]
add esp, 0x90
mov al, 1
pop ebp
pop edi
pop esi
pop ebx
ret 0x10
fcompp
mov dword [ebx + 0x33c], 0
xor al, al
add esp, 0x90
pop ebp
pop edi
pop esi
pop ebx
ret 0x10
fcompp
fcompp
jmp 0x51435c