// File: therealgymmy[P]HelicopterGame/src/misc.cpp
// Function: Score::draw(XInfo*)
void Score::draw (XInfo *xinfo) {
    XFillRectangle(xinfo->display_,
                   xinfo->buffer_,
                   xinfo->white_,
                   x_ / attr::DrawableBase::ScaleX,
                   y_ / 5 / attr::DrawableBase::ScaleY,
                   500 / attr::DrawableBase::ScaleX,
                   100 / attr::DrawableBase::ScaleY);

    XDrawRectangle(xinfo->display_,
                   xinfo->buffer_,
                   xinfo->black_,
                   x_ / attr::DrawableBase::ScaleX,
                   y_ / 5 / attr::DrawableBase::ScaleY,
                   500 / attr::DrawableBase::ScaleX,
                   100 / attr::DrawableBase::ScaleY);

    std::stringstream ss;
    ss << "Score: " << score_ / 10;

    XDrawString(xinfo->display_,
                xinfo->buffer_,
                xinfo->black_,
                (x_ + 50) / attr::DrawableBase::ScaleX,
                y_ / attr::DrawableBase::ScaleY,
                ss.str().c_str(), ss.str().length());
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x250, %rsp            # imm = 0x250
movq %rdi, -0x8(%rbp)
movq %rsi, -0x10(%rbp)
movq -0x8(%rbp), %rax
movq %rax, -0x218(%rbp)
movq -0x10(%rbp), %rax
movq (%rax), %rdi
movq 0xa0(%rax), %rsi
movq 0xb0(%rax), %rdx
cvtsi2sdl 0x6e9d(%rip), %xmm0 # 0x132a8
leaq 0x6e66(%rip), %rax      # 0x13278
movq %rax, -0x210(%rbp)
movsd (%rax), %xmm2
divsd %xmm2, %xmm0
cvttsd2si %xmm0, %ecx
movslq 0x6e80(%rip), %rax      # 0x132ac
imulq $0x66666667, %rax, %rax # imm = 0x66666667
movq %rax, %r8
shrq $0x3f, %r8
sarq $0x21, %rax
addl %r8d, %eax
cvtsi2sd %eax, %xmm0
leaq 0x6e34(%rip), %rax      # 0x13280
movq %rax, -0x1f8(%rbp)
movsd (%rax), %xmm1
divsd %xmm1, %xmm0
cvttsd2si %xmm0, %r8d
movsd 0xc28(%rip), %xmm0      # 0xd090
movsd %xmm0, -0x208(%rbp)
divsd %xmm2, %xmm0
cvttsd2si %xmm0, %rax
movl %eax, %r9d
movsd 0xbf4(%rip), %xmm0      # 0xd078
movsd %xmm0, -0x200(%rbp)
divsd %xmm1, %xmm0
cvttsd2si %xmm0, %rax
movl %eax, %r10d
movq %rsp, %rax
movl %r10d, (%rax)
callq 0x3498
movq -0x210(%rbp), %rcx
movsd -0x208(%rbp), %xmm2
movsd -0x200(%rbp), %xmm0
movq -0x1f8(%rbp), %rax
movq -0x10(%rbp), %rdx
movq (%rdx), %rdi
movq 0xa0(%rdx), %rsi
movq 0xa8(%rdx), %rdx
cvtsi2sdl 0x6dca(%rip), %xmm1 # 0x132a8
movsd (%rcx), %xmm3
divsd %xmm3, %xmm1
cvttsd2si %xmm1, %ecx
movslq 0x6dbb(%rip), %r8       # 0x132ac
imulq $0x66666667, %r8, %r8   # imm = 0x66666667
movq %r8, %r9
shrq $0x3f, %r9
sarq $0x21, %r8
addl %r9d, %r8d
cvtsi2sd %r8d, %xmm4
movsd (%rax), %xmm1
divsd %xmm1, %xmm4
cvttsd2si %xmm4, %r8d
divsd %xmm3, %xmm2
cvttsd2si %xmm2, %rax
movl %eax, %r9d
divsd %xmm1, %xmm0
cvttsd2si %xmm0, %rax
movl %eax, %r10d
movq %rsp, %rax
movl %r10d, (%rax)
callq 0x34a0
leaq -0x198(%rbp), %rdi
callq 0x3150
leaq -0x188(%rbp), %rdi
leaq 0xd73(%rip), %rsi       # 0xd2c8
callq 0x3230
movq %rax, -0x1f0(%rbp)
jmp 0xc563
movq -0x1f0(%rbp), %rdi
movq -0x218(%rbp), %rax
movslq (%rax), %rax
imulq $0x66666667, %rax, %rcx # imm = 0x66666667
movq %rcx, %rax
shrq $0x3f, %rax
sarq $0x22, %rcx
movl %ecx, %esi
addl %eax, %esi
callq 0x33f0
jmp 0xc591
movq -0x10(%rbp), %rax
movq (%rax), %rcx
movq %rcx, -0x238(%rbp)
movq 0xa0(%rax), %rcx
movq %rcx, -0x230(%rbp)
movq 0xa8(%rax), %rax
movq %rax, -0x228(%rbp)
movl 0x6ce7(%rip), %eax      # 0x132a8
addl $0x32, %eax
cvtsi2sd %eax, %xmm0
leaq 0x6ca9(%rip), %rax      # 0x13278
movsd (%rax), %xmm1
divsd %xmm1, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, -0x220(%rbp)
cvtsi2sdl 0x6cc3(%rip), %xmm0 # 0x132ac
leaq 0x6c90(%rip), %rax      # 0x13280
movsd (%rax), %xmm1
divsd %xmm1, %xmm0
cvttsd2si %xmm0, %eax
movl %eax, -0x21c(%rbp)
leaq -0x1c8(%rbp), %rdi
leaq -0x198(%rbp), %rsi
callq 0x3220
jmp 0xc617
leaq -0x1c8(%rbp), %rdi
callq 0x30d0
movq %rax, -0x240(%rbp)
leaq -0x1e8(%rbp), %rdi
leaq -0x198(%rbp), %rsi
callq 0x3220
jmp 0xc63f
leaq -0x1e8(%rbp), %rdi
callq 0x3380
movq -0x238(%rbp), %rdi
movq -0x230(%rbp), %rsi
movq -0x228(%rbp), %rdx
movl -0x220(%rbp), %ecx
movl -0x21c(%rbp), %r8d
movq -0x240(%rbp), %r9
movl %eax, %r10d
movq %rsp, %rax
movl %r10d, (%rax)
callq 0x3240
jmp 0xc684
leaq -0x1e8(%rbp), %rdi
callq 0x3120
leaq -0x1c8(%rbp), %rdi
callq 0x3120
leaq -0x198(%rbp), %rdi
callq 0x3170
addq $0x250, %rsp            # imm = 0x250
popq %rbp
retq
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0xc703
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
jmp 0xc6f7
movq %rax, %rcx
movl %edx, %eax
movq %rcx, -0x1a0(%rbp)
movl %eax, -0x1a4(%rbp)
leaq -0x1e8(%rbp), %rdi
callq 0x3120
leaq -0x1c8(%rbp), %rdi
callq 0x3120
leaq -0x198(%rbp), %rdi
callq 0x3170
movq -0x1a0(%rbp), %rdi
callq 0x3400
nopl (%rax,%rax)