// File: /workspace/github_c_makefile_star2_O1/YunyiQian[P]multitel3/radiats.c
// Function: dc_radiat
void	dc_radiat(float stk,float dip,float rak,float rad[4][3]) {
   float sstk,sdip,srak,sstk2,sdip2;
   float cstk,cdip,crak,cstk2,cdip2;
   stk*=DEG2RAD; dip*=DEG2RAD; rak*=DEG2RAD;
   sstk=sin(stk);cstk=cos(stk);
   sdip=sin(dip);cdip=cos(dip);
   srak=sin(rak);crak=cos(rak);
   sstk2=2*sstk*cstk; cstk2=cstk*cstk-sstk*sstk;
   sdip2=2*sdip*cdip; cdip2=cdip*cdip-sdip*sdip;
   rad[0][0]=0.5*srak*sdip2;
   rad[0][1]=rad[0][0];
   rad[0][2]=0.;
   rad[1][0]=-sstk*srak*cdip2+cstk*crak*cdip;
   rad[1][1]=rad[1][0];
   rad[1][2]= cstk*srak*cdip2+sstk*crak*cdip;
   rad[2][0]=-sstk2*crak*sdip-0.5*cstk2*srak*sdip2;
   rad[2][1]=rad[2][0];
   rad[2][2]=cstk2*crak*sdip-0.5*sstk2*srak*sdip2;
}

// Assembly:
pushq %rbx
subq $0x30, %rsp
movq %rdi, %rbx
cvtss2sd %xmm0, %xmm0
movsd 0x28d4(%rip), %xmm3     # 0x6e80
mulsd %xmm3, %xmm0
cvtsd2ss %xmm0, %xmm0
cvtss2sd %xmm1, %xmm1
mulsd %xmm3, %xmm1
cvtsd2ss %xmm1, %xmm1
movss %xmm1, 0xc(%rsp)
xorps %xmm1, %xmm1
cvtss2sd %xmm2, %xmm1
mulsd %xmm3, %xmm1
cvtsd2ss %xmm1, %xmm1
movss %xmm1, 0x8(%rsp)
cvtss2sd %xmm0, %xmm0
movsd %xmm0, 0x18(%rsp)
callq 0x11e0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x24(%rsp)
movsd 0x18(%rsp), %xmm0
callq 0x10e0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x18(%rsp)
xorps %xmm0, %xmm0
cvtss2sd 0xc(%rsp), %xmm0
movsd %xmm0, 0x10(%rsp)
callq 0x11e0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0xc(%rsp)
movsd 0x10(%rsp), %xmm0
callq 0x10e0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x10(%rsp)
xorps %xmm0, %xmm0
cvtss2sd 0x8(%rsp), %xmm0
movsd %xmm0, 0x28(%rsp)
callq 0x11e0
cvtsd2ss %xmm0, %xmm0
movss %xmm0, 0x8(%rsp)
movsd 0x28(%rsp), %xmm0
callq 0x10e0
cvtsd2ss %xmm0, %xmm0
movss 0x24(%rsp), %xmm9
movaps %xmm9, %xmm2
addss %xmm9, %xmm2
movss 0x18(%rsp), %xmm10
mulss %xmm10, %xmm2
movaps %xmm9, %xmm3
mulss %xmm9, %xmm3
movaps %xmm10, %xmm1
mulss %xmm10, %xmm1
subss %xmm3, %xmm1
movss 0xc(%rsp), %xmm3
movaps %xmm3, %xmm4
addss %xmm3, %xmm4
movss 0x10(%rsp), %xmm7
mulss %xmm7, %xmm4
movaps %xmm3, %xmm6
movaps %xmm3, %xmm8
mulss %xmm3, %xmm6
movaps %xmm7, %xmm5
movaps %xmm7, %xmm11
mulss %xmm7, %xmm5
movss 0x8(%rsp), %xmm12
xorps %xmm3, %xmm3
cvtss2sd %xmm12, %xmm3
movsd 0x2321(%rip), %xmm7     # 0x6a00
mulsd %xmm3, %xmm7
cvtss2sd %xmm4, %xmm4
mulsd %xmm4, %xmm7
cvtsd2ss %xmm7, %xmm7
subss %xmm6, %xmm5
movss %xmm7, (%rbx)
movss %xmm7, 0x4(%rbx)
movl $0x0, 0x8(%rbx)
movaps %xmm9, %xmm6
mulss %xmm12, %xmm6
movaps %xmm10, %xmm7
mulss %xmm0, %xmm7
mulss %xmm11, %xmm7
mulss %xmm5, %xmm6
subss %xmm6, %xmm7
movss %xmm7, 0xc(%rbx)
movss %xmm7, 0x10(%rbx)
movaps %xmm10, %xmm7
mulss %xmm12, %xmm7
movaps %xmm9, %xmm6
mulss %xmm0, %xmm6
mulss %xmm11, %xmm6
mulss %xmm5, %xmm7
addss %xmm6, %xmm7
movss %xmm7, 0x14(%rbx)
xorps %xmm5, %xmm5
cvtss2sd %xmm2, %xmm5
mulss %xmm0, %xmm2
mulss %xmm8, %xmm2
cvtss2sd %xmm2, %xmm2
xorps %xmm6, %xmm6
cvtss2sd %xmm1, %xmm6
movsd 0x2717(%rip), %xmm7     # 0x6e88
mulsd %xmm7, %xmm6
mulsd %xmm3, %xmm6
mulsd %xmm4, %xmm6
subsd %xmm2, %xmm6
xorps %xmm2, %xmm2
cvtsd2ss %xmm6, %xmm2
movss %xmm2, 0x18(%rbx)
movss %xmm2, 0x1c(%rbx)
mulss %xmm0, %xmm1
mulss %xmm8, %xmm1
cvtss2sd %xmm1, %xmm0
mulsd %xmm7, %xmm5
mulsd %xmm3, %xmm5
mulsd %xmm4, %xmm5
addsd %xmm0, %xmm5
xorps %xmm0, %xmm0
cvtsd2ss %xmm5, %xmm0
movss %xmm0, 0x20(%rbx)
addq $0x30, %rsp
popq %rbx
retq