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

Disassembly:
push edi
push esi
push ebp
push ebx
sub esp, 0x9c
mov edi, dword [esp + 0xb0]
test edi, edi
mov ebp, dword [esp + 0xb4]
mov ebx, dword [esp + 0xbc]
je 0x82bb25
mov ecx, dword [edi + 0x18]
test ecx, ecx
je 0x82bb25
call fcn.00829cc8
fld dword [0x98a24c]
mov esi, dword [edi + 0x1c]
fld dword [edi + 0xc]
lea ebp, [ebp + ebp*4]
movsx edx, word [esi + ebp*4 + 8]
movsx ecx, word [esi + ebp*4 + 0xa]
mov dword [esp], edx
fild dword [esp]
fdiv dword [0x98a250]
fcom st(2)
fnstsw ax
mov dword [esp + 8], ecx
fild dword [esp + 8]
fdiv dword [0x98a250]
sahf
fcom st(3)
fnstsw ax
fxch st(3)
jbe 0x82b736
fst st(1)
fxch st(1)
fstp dword [esp + 0x40]
sahf
movsx eax, word [esi + ebp*4 + 0xc]
mov dword [esp + 8], eax
fild dword [esp + 8]
fdiv dword [0x98a250]
fxch st(1)
jbe 0x82b756
fst st(3)
fxch st(3)
fstp dword [esp + 0x44]
fcom st(2)
fnstsw ax
sahf
movsx eax, word [esi + ebp*4 + 0xe]
mov dword [esp + 8], eax
fild dword [esp + 8]
fdiv dword [0x98a250]
fxch st(3)
jbe 0x82b77a
fst st(1)
fxch st(1)
fstp dword [esp + 0x3c]
fcom st(2)
fnstsw ax
sahf
movsx eax, word [esi + ebp*4 + 4]
jae 0x82b78e
fst st(2)
fstp st(0)
fxch st(1)
fstp dword [esp + 0x38]
neg eax
mov dword [esp + 8], eax
fild dword [esp + 8]
movsx eax, word [esi + ebp*4 + 6]
neg eax
test bl, 1
mov dword [esp + 8], eax
fild dword [esp + 8]
movsx eax, word [esi + ebp*4]
mov dword [esp + 8], eax
fild dword [esp + 8]
fadd st(2)
fxch st(2)
fmul st(3)
movsx eax, word [esi + ebp*4 + 2]
fxch st(3)
fmulp st(2)
fxch st(2)
fstp dword [esp + 0x34]
fld dword [edi + 0x10]
fxch st(1)
fstp dword [esp + 0x30]
mov dword [esp + 8], eax
fild dword [esp + 8]
fadd st(2)
fxch st(1)
fmul st(2), st(0)
fmulp st(1)
fxch st(1)
fstp dword [esp + 0x4c]
fstp dword [esp + 0x48]
jne 0x82b857
fld dword [esp + 0x34]
fld dword [esp + 0x4c]
fld dword [0x98a248]
fdiv dword [esp + 0xb8]
fld dword [edi]
fadd st(3)
fld dword [esp + 0x30]
fld dword [esp + 0x48]
fxch st(2)
fstp dword [esp + 0x50]
fsubrp st(4)
fsub st(2)
fld dword [0x98a244]
fld dword [edi + 4]
fxch st(3)
fstp dword [esp + 0x58]
fxch st(4)
fstp dword [esp + 0x5c]
fstp dword [esp + 0x68]
faddp st(1)
fstp dword [esp + 0x54]
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
jmp 0x82b9a3
mov ecx, 0xa21740
call fcn.0082d990
mov edx, dword [edi + 0x14]
xor ecx, ecx
call fcn.00830c04
fld dword [esp + 0x34]
fld dword [esp + 0x4c]
fxch st(1)
fstp dword [esp + 0x90]
fstp dword [esp + 0x94]
mov dword [esp + 0x98], 0
lea eax, [esp + 0x90]
push eax
lea edx, [esp + 0x94]
xor ecx, ecx
call fcn.0082eab8
fld dword [esp + 0x90]
fld dword [esp + 0x94]
fld dword [0x98a248]
fdiv dword [esp + 0xb8]
fld dword [edi]
fld dword [esp + 0x30]
fld dword [esp + 0x4c]
fxch st(5)
fst dword [esp + 0x28]
fxch st(4)
fst dword [esp + 0x2c]
fxch st(4)
faddp st(2)
fxch st(1)
fstp dword [esp + 0x50]
lea eax, [esp + 0x90]
fld dword [edi + 4]
fxch st(2)
fstp dword [esp + 0x58]
fstp dword [esp + 0x90]
fxch st(2)
fstp dword [esp + 0x94]
faddp st(1)
fstp dword [esp + 0x54]
mov dword [esp + 0x98], 0
xor ecx, ecx
push eax
lea edx, [esp + 0x94]
call fcn.0082eab8
fld dword [esp + 0x90]
fsub dword [esp + 0x28]
fld dword [esp + 0x94]
fsub dword [esp + 0x2c]
fld dword [esp + 0x34]
fld dword [esp + 0x48]
fxch st(3)
fstp dword [esp + 0x5c]
fxch st(1)
fstp dword [esp + 0x60]
fstp dword [esp + 0x90]
fstp dword [esp + 0x94]
mov dword [esp + 0x98], 0
xor ecx, ecx
lea eax, [esp + 0x90]
push eax
lea edx, [esp + 0x94]
call fcn.0082eab8
fld dword [esp + 0x90]
fsub dword [esp + 0x28]
fld dword [esp + 0x94]
fsub dword [esp + 0x2c]
fxch st(1)
fstp dword [esp + 0x64]
fstp dword [esp + 0x68]
call fcn.0082da80
fld dword [0x98a244]
test bl, 4
je 0x82b9b8
fld dword [esp + 0x40]
fld dword [esp + 0x3c]
fstp dword [esp + 0x40]
fstp dword [esp + 0x3c]
test bl, 8
je 0x82b9cd
fld dword [esp + 0x44]
fld dword [esp + 0x38]
fstp dword [esp + 0x44]
fstp dword [esp + 0x38]
fld dword [esp + 0x40]
fld dword [esp + 0x44]
fld dword [esp + 0x3c]
fxch st(2)
fst dword [esp + 0x70]
fxch st(1)
fst dword [esp + 0x74]
fxch st(3)
fst dword [esp + 0x7c]
fstp dword [esp + 0x80]
fsubp st(1)
fld dword [esp + 0x38]
fxch st(1)
fstp dword [esp + 0x78]
fsubrp st(1)
fstp dword [esp + 0x84]
test bl, 2
je 0x82baf3
fld dword [0x98a240]
fld dword [0xaf037c]
fmul st(1)
fnstcw word [esp + 0x10]
movzx eax, word [esp + 0x10]
or eax, 0xc00
mov dword [esp + 0x18], eax
fldcw word [esp + 0x18]
fistp qword [esp + 0x20]
fldcw word [esp + 0x10]
fld dword [0xaf0378]
fmul st(1)
mov edi, dword [esp + 0x20]
fnstcw word [esp + 0x10]
movzx eax, word [esp + 0x10]
or eax, 0xc00
mov dword [esp + 0x18], eax
fldcw word [esp + 0x18]
fistp qword [esp + 0x20]
fldcw word [esp + 0x10]
fld dword [0xaf0374]
fmul st(1)
mov edx, dword [esp + 0x20]
fnstcw word [esp + 0x10]
movzx eax, word [esp + 0x10]
or eax, 0xc00
mov dword [esp + 0x18], eax
fldcw word [esp + 0x18]
fistp qword [esp + 0x20]
fldcw word [esp + 0x10]
fld dword [0xaf0370]
fmulp st(1)
or edi, 0xffffff00
and edi, 0xff
mov ecx, dword [esp + 0x20]
fnstcw word [esp + 0x10]
movzx eax, word [esp + 0x10]
or eax, 0xc00
mov dword [esp + 0x18], eax
fldcw word [esp + 0x18]
fistp qword [esp + 0x20]
fldcw word [esp + 0x10]
mov eax, dword [esp + 0x20]
shl edx, 8
and edx, 0xff00
or edi, edx
and edi, 0xffff
shl ecx, 0x10
shl eax, 0x18
and ecx, 0xff0000
or edi, ecx
and edi, 0xffffff
or edi, eax
jmp 0x82baf8
mov edi, 0xffffffff
and ebx, 0x20
cmp ebx, 0x20
mov ecx, 0
sete cl
call fcn.0082bb30
movsx ecx, word [esi + ebp*4 + 0x10]
mov edx, edi
call fcn.0082bb60
lea ecx, [esp + 0x50]
call fcn.0082bb74
call fcn.0061cdb0
add esp, 0x9c
pop ebx
pop ebp
pop esi
pop edi
ret