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

Disassembly:
sub esp, 0x1f8
push ebx
push ebp
push esi
mov esi, ecx
mov eax, dword [esi + 0x48]
push edi
lea edi, [esi + 0x48]
mov ecx, edi
call dword [eax + 0xc]
lea ecx, [eax + eax*2]
mov eax, dword [esi + 0x60]
mov esi, dword [eax]
lea edx, [ecx*8 + 0x9378d0]
lea ecx, [esp + 0xa8]
mov dword [esp + 0x34], edx
mov dword [esp + 0x3c], esi
call fcn.00487690
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x14]
fld dword [0x8910f0]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x69a628
fstp st(0)
fld dword [0x8910f0]
fst dword [esp + 0x44]
fst dword [esp + 0x48]
fst dword [esp + 0x30]
fstp dword [esp + 0x4c]
mov ax, word [esi + 0x1e]
test ah, ah
jns 0x69a6a8
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x24]
fld dword [eax]
mov ecx, dword [eax + 4]
fmul dword [esp + 0x20c]
mov edx, dword [eax + 8]
mov dword [esp + 0x18], ecx
fld dword [esp + 0x18]
fmul dword [esp + 0x20c]
mov dword [esp + 0x1c], edx
fld dword [esp + 0x1c]
lea ecx, [esp + 0x20]
fmul dword [esp + 0x20c]
push ecx
push 2
lea edx, [esp + 0x4c]
fstp dword [esp + 0x24]
mov eax, dword [esp + 0x24]
fxch st(1)
mov dword [esp + 0x30], eax
mov eax, dword [edi]
fstp dword [esp + 0x28]
push edx
mov ecx, edi
fstp dword [esp + 0x30]
call dword [eax + 0x20]
push eax
push 0x8a3028
jmp 0x69a728
test al, 0x40
je 0x69a734
mov edx, dword [edi]
mov ecx, edi
call dword [edx + 0x44]
lea ecx, [esp + 0x68]
push ecx
push eax
call fcn.005ca910
mov edx, dword [edi]
add esp, 8
mov ecx, edi
call dword [edx + 0x24]
fld dword [eax]
mov ecx, dword [eax + 4]
fmul dword [esp + 0x20c]
mov edx, dword [eax + 8]
mov dword [esp + 0x24], ecx
fld dword [esp + 0x24]
fmul dword [esp + 0x20c]
mov dword [esp + 0x28], edx
fld dword [esp + 0x28]
lea ecx, [esp + 0x14]
fmul dword [esp + 0x20c]
push ecx
push 1
lea edx, [esp + 0x4c]
fstp dword [esp + 0x30]
mov eax, dword [esp + 0x30]
fxch st(1)
mov dword [esp + 0x24], eax
mov eax, dword [edi]
fstp dword [esp + 0x1c]
push edx
mov ecx, edi
fstp dword [esp + 0x24]
call dword [eax + 0x20]
push eax
lea ecx, [esp + 0x78]
push ecx
lea ecx, [esp + 0xbc]
call fcn.004876f0
mov ebx, dword [0x9382ec]
test ebx, ebx
je 0x69a743
add ebx, 0xffffff90
jmp 0x69a745
xor ebx, ebx
mov eax, 0x9382ec
sub eax, 0x70
mov dword [esp + 0x38], eax
cmp ebx, dword [esp + 0x38]
je 0x69a935
mov edx, dword [ebx + 0x50]
lea ecx, [ebx + 0x50]
call dword [edx + 0x1c]
test al, al
je 0x69a91f
mov eax, dword [esp + 0x3c]
test word [eax + 0x1e], 0x8040
setne al
test al, al
mov byte [esp + 0x13], al
je 0x69a7d2
mov edx, dword [ebx + 0x48]
lea ecx, [ebx + 0x48]
call dword [edx + 0x24]
mov esi, eax
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x24]
fld dword [eax]
fsub dword [esi]
push ecx
fld dword [eax + 4]
fsub dword [esi + 4]
fld dword [eax + 8]
fsub dword [esi + 8]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp dword [esp]
fstp st(0)
fstp st(0)
fstp st(0)
call fcn.005c5e80
fmul dword [esp + 0x210]
add esp, 4
fstp dword [esp + 0x2c]
jmp 0x69a7da
mov dword [esp + 0x2c], 0
mov edx, dword [ebx + 0x48]
lea esi, [ebx + 0x48]
mov ecx, esi
call dword [edx + 0x20]
mov ebp, eax
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x20]
fld dword [eax + 8]
fsub dword [ebp + 8]
mov edx, dword [esi]
fld dword [eax + 4]
mov ecx, esi
fsub dword [ebp + 4]
fld dword [eax]
fsub dword [ebp]
fld st(0)
fmul st(1)
fld st(2)
fmul st(3)
faddp st(1)
fld st(3)
fmul st(4)
faddp st(1)
fstp dword [esp + 0x40]
fstp st(0)
fstp st(0)
fstp st(0)
call dword [edx + 0x14]
fadd dword [esp + 0x30]
fadd dword [esp + 0x2c]
fld st(0)
fmul st(1)
fld dword [esp + 0x40]
fcompp
fnstsw ax
fstp st(0)
test ah, 5
jp 0x69a91f
mov al, byte [esp + 0x13]
test al, al
mov eax, dword [esi]
mov ecx, esi
je 0x69a8f1
call dword [eax + 0x24]
fld dword [eax]
mov ecx, dword [eax + 4]
fmul dword [esp + 0x20c]
mov edx, dword [eax + 8]
mov dword [esp + 0x24], ecx
fld dword [esp + 0x24]
fmul dword [esp + 0x20c]
mov dword [esp + 0x28], edx
fld dword [esp + 0x28]
mov edx, dword [esi]
fmul dword [esp + 0x20c]
lea ecx, [esp + 0x14]
push ecx
push 1
fstp dword [esp + 0x60]
mov eax, dword [esp + 0x60]
fxch st(1)
mov dword [esp + 0x24], eax
fstp dword [esp + 0x1c]
lea eax, [esp + 0x64]
push eax
mov ecx, esi
fstp dword [esp + 0x24]
call dword [edx + 0x48]
mov edx, dword [esi]
push eax
mov ecx, esi
call dword [edx + 0x20]
lea ecx, [ebx + 0x50]
push eax
mov eax, dword [ecx]
call dword [eax + 0xa4]
push eax
lea ecx, [esp + 0x16c]
call fcn.0048b5a0
lea ecx, [esp + 0xa8]
push ecx
mov edx, ecx
push edx
lea eax, [esp + 0x160]
push eax
call fcn.0048c100
add esp, 0xc
test al, al
je 0x69a91f
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0xc]
jmp 0x69a8f4
call dword [eax + 0xc]
mov edx, dword [esp + 0x34]
mov ecx, eax
shr ecx, 6
lea esi, [edx + ecx*8]
mov ecx, eax
mov eax, 1
and ecx, 0x3f
xor edx, edx
call fcn.007c8f30
mov ecx, dword [esi]
or ecx, eax
mov eax, dword [esi + 4]
or eax, edx
mov dword [esi], ecx
mov dword [esi + 4], eax
mov ebx, dword [ebx + 0x70]
test ebx, ebx
je 0x69a92e
add ebx, 0xffffff90
jmp 0x69a751
xor ebx, ebx
jmp 0x69a751
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1f8
ret 4