// File: jamesliu516[P]amrdg2d/points_solid.cpp
// Function: shapeTransfer()
void shapeTransfer()
{
    int i;
    double phi, x1,y1, cphi,sphi;
    phi = rotate_deg * PI/180.0;
    cphi = cos(-phi);
    sphi = sin(-phi);

    for(int jj=0;jj<N_BODY;++jj) {
        for(i=0;i< NWallPts[jj]; i++)
        {
            x1 = MultiCircle[jj][i].x *  cphi
                - MultiCircle[jj][i].y * sphi;
            y1 = MultiCircle[jj][i].x *  sphi
                + MultiCircle[jj][i].y * cphi;
            MultiCircle[jj][i].x = x1;
            MultiCircle[jj][i].y = y1;
        }

        MultiCircle[jj][NWallPts[jj]]=MultiCircle[jj][0];
    }
}

// Assembly:
subq $0x38, %rsp
xorps %xmm0, %xmm0
movsd %xmm0, 0x28(%rsp)
movsd 0x28(%rsp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
callq 0x3470
movsd %xmm0, 0x10(%rsp)
movsd 0x28(%rsp), %xmm0
movq %xmm0, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm0
callq 0x3090
movsd %xmm0, 0x8(%rsp)
movl $0x0, 0x4(%rsp)
cmpl $0x1, 0x4(%rsp)
jge 0x15fe0
movl $0x0, 0x34(%rsp)
movl 0x34(%rsp), %eax
movslq 0x4(%rsp), %rdx
leaq 0x35468(%rip), %rcx     # 0x4b290
cmpl (%rcx,%rdx,4), %eax
jge 0x15f7f
movslq 0x4(%rsp), %rcx
leaq 0x355d3(%rip), %rax     # 0x4b410
imulq $0x1f40, %rcx, %rcx     # imm = 0x1F40
addq %rcx, %rax
movslq 0x34(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movsd (%rax), %xmm0
movsd 0x10(%rsp), %xmm2
movslq 0x4(%rsp), %rcx
leaq 0x355a7(%rip), %rax     # 0x4b410
imulq $0x1f40, %rcx, %rcx     # imm = 0x1F40
addq %rcx, %rax
movslq 0x34(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movsd 0x8(%rax), %xmm1
mulsd 0x8(%rsp), %xmm1
movq %xmm1, %rax
movabsq $-0x8000000000000000, %rcx # imm = 0x8000000000000000
xorq %rcx, %rax
movq %rax, %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, 0x20(%rsp)
movslq 0x4(%rsp), %rcx
leaq 0x35555(%rip), %rax     # 0x4b410
imulq $0x1f40, %rcx, %rcx     # imm = 0x1F40
addq %rcx, %rax
movslq 0x34(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movsd (%rax), %xmm0
movsd 0x8(%rsp), %xmm2
movslq 0x4(%rsp), %rcx
leaq 0x35529(%rip), %rax     # 0x4b410
imulq $0x1f40, %rcx, %rcx     # imm = 0x1F40
addq %rcx, %rax
movslq 0x34(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movsd 0x8(%rax), %xmm1
mulsd 0x10(%rsp), %xmm1
mulsd %xmm2, %xmm0
addsd %xmm1, %xmm0
movsd %xmm0, 0x18(%rsp)
movsd 0x20(%rsp), %xmm0
movslq 0x4(%rsp), %rcx
leaq 0x354e8(%rip), %rax     # 0x4b410
imulq $0x1f40, %rcx, %rcx     # imm = 0x1F40
addq %rcx, %rax
movslq 0x34(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movsd %xmm0, (%rax)
movsd 0x18(%rsp), %xmm0
movslq 0x4(%rsp), %rcx
leaq 0x354bc(%rip), %rax     # 0x4b410
imulq $0x1f40, %rcx, %rcx     # imm = 0x1F40
addq %rcx, %rax
movslq 0x34(%rsp), %rcx
shlq $0x4, %rcx
addq %rcx, %rax
movsd %xmm0, 0x8(%rax)
movl 0x34(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x34(%rsp)
jmp 0x15e18
movslq 0x4(%rsp), %rax
leaq 0x35485(%rip), %rcx     # 0x4b410
imulq $0x1f40, %rax, %rax     # imm = 0x1F40
addq %rax, %rcx
movslq 0x4(%rsp), %rdx
leaq 0x3546f(%rip), %rax     # 0x4b410
imulq $0x1f40, %rdx, %rdx     # imm = 0x1F40
addq %rdx, %rax
movslq 0x4(%rsp), %rsi
leaq 0x352d9(%rip), %rdx     # 0x4b290
movslq (%rdx,%rsi,4), %rdx
shlq $0x4, %rdx
addq %rdx, %rax
movq (%rcx), %rdx
movq %rdx, (%rax)
movq 0x8(%rcx), %rcx
movq %rcx, 0x8(%rax)
movl 0x4(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x4(%rsp)
jmp 0x15e05
addq $0x38, %rsp
retq
nopw %cs:(%rax,%rax)