// File: /workspace/github_cpp_makefile_star2_O3/whitefusion[P]Jaipur_cardgame-/Deck.cpp
// Function: Deck::Deck()
Deck::Deck(){
    int dnum,gnum,sinum,clnum,spnum,lnum,canum;

    Card Diamonds("DIAMD");
    Card Gold("GOLD");
    Card Silver("SILVR");
    Card Cloth("CLOTH");
    Card Spice("SPICE");
    Card Leather("LEATH");
    Card Camel("CAMEL");

    for(dnum=0; dnum<Dnum; dnum++){
	    deck.push_back(Diamonds);
    }

    for(gnum=0; gnum<Gnum; gnum++){
	    deck.push_back(Gold);
    }

    for(sinum=0; sinum<Sinum; sinum++){
	    deck.push_back(Silver);
    }

    for(clnum=0; clnum<Clnum; clnum++){
	    deck.push_back(Cloth);
    }

    for(spnum=0; spnum<Spnum; spnum++){
	    deck.push_back(Spice);
    }

    for(lnum=0; lnum<Lnum; lnum++){
	    deck.push_back(Leather);
    }

    for(canum=0; canum<Canum; canum++){
	    deck.push_back(Camel);
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %rbx
subq $0x1c8, %rsp            # imm = 0x1C8
movq %rdi, %rbx
xorps %xmm0, %xmm0
movups %xmm0, (%rdi)
movq $0x0, 0x10(%rdi)
leaq 0xd8(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x80e7(%rip), %rsi      # 0x10160
leaq 0x80e5(%rip), %rdx      # 0x10165
leaq 0xc8(%rsp), %rdi
callq 0x3fc4
leaq 0x1a8(%rsp), %rdi
leaq 0xc8(%rsp), %rsi
callq 0x924e
movq 0xc8(%rsp), %rdi
cmpq %r15, %rdi
je 0x80bf
movq 0xd8(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0xb8(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x84ee(%rip), %rsi      # 0x105c0
leaq 0x84eb(%rip), %rdx      # 0x105c4
leaq 0xa8(%rsp), %rdi
callq 0x3fc4
leaq 0x188(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x924e
movq 0xa8(%rsp), %rdi
cmpq %r15, %rdi
je 0x8118
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x98(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x803b(%rip), %rsi      # 0x10166
leaq 0x8039(%rip), %rdx      # 0x1016b
leaq 0x88(%rsp), %rdi
callq 0x3fc4
leaq 0x168(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x924e
movq 0x88(%rsp), %rdi
cmpq %r15, %rdi
je 0x8171
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x78(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7ff7(%rip), %rsi      # 0x10178
leaq 0x7ff5(%rip), %rdx      # 0x1017d
leaq 0x68(%rsp), %rdi
callq 0x3fc4
leaq 0x148(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x924e
movq 0x68(%rsp), %rdi
cmpq %r15, %rdi
je 0x81bb
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x58(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7fa7(%rip), %rsi      # 0x10172
leaq 0x7fa5(%rip), %rdx      # 0x10177
leaq 0x48(%rsp), %rdi
callq 0x3fc4
leaq 0x128(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x924e
movq 0x48(%rsp), %rdi
cmpq %r15, %rdi
je 0x8205
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x38(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7f57(%rip), %rsi      # 0x1016c
leaq 0x7f55(%rip), %rdx      # 0x10171
leaq 0x28(%rsp), %rdi
callq 0x3fc4
leaq 0x108(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x924e
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x824f
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7f1f(%rip), %rsi      # 0x1017e
leaq 0x7f1d(%rip), %rdx      # 0x10183
leaq 0x8(%rsp), %rdi
callq 0x3fc4
leaq 0xe8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x924e
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x8299
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x21a0
movl $0x6, %ebp
leaq 0x1a8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c16
decl %ebp
jne 0x82a6
movl $0x6, %ebp
leaq 0x188(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c16
decl %ebp
jne 0x82c2
movl $0x6, %ebp
leaq 0x168(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c16
decl %ebp
jne 0x82de
movl $0x8, %ebp
leaq 0x148(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c16
decl %ebp
jne 0x82fa
movl $0x8, %ebp
leaq 0x128(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c16
decl %ebp
jne 0x8316
movl $0xa, %ebp
leaq 0x108(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c16
decl %ebp
jne 0x8332
movl $0x8, %ebp
leaq 0xe8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c16
decl %ebp
jne 0x834e
leaq 0xe8(%rsp), %rdi
callq 0x9292
leaq 0x108(%rsp), %rdi
callq 0x9292
leaq 0x128(%rsp), %rdi
callq 0x9292
leaq 0x148(%rsp), %rdi
callq 0x9292
leaq 0x168(%rsp), %rdi
callq 0x9292
leaq 0x188(%rsp), %rdi
callq 0x9292
leaq 0x1a8(%rsp), %rdi
callq 0x9292
addq $0x1c8, %rsp            # imm = 0x1C8
popq %rbx
popq %r14
popq %r15
popq %rbp
retq
movq %rax, %r14
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x851b
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x851b
movq %rax, %r14
jmp 0x851b
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x8528
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x8528
movq %rax, %r14
jmp 0x8528
movq %rax, %r14
movq 0x48(%rsp), %rdi
cmpq %r15, %rdi
je 0x8535
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x8535
movq %rax, %r14
jmp 0x8535
movq %rax, %r14
movq 0x68(%rsp), %rdi
cmpq %r15, %rdi
je 0x8542
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x8542
movq %rax, %r14
jmp 0x8542
movq %rax, %r14
movq 0x88(%rsp), %rdi
cmpq %r15, %rdi
je 0x854f
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x854f
movq %rax, %r14
jmp 0x854f
movq %rax, %r14
movq 0xa8(%rsp), %rdi
cmpq %r15, %rdi
je 0x855c
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x855c
movq %rax, %r14
jmp 0x855c
movq %rax, %r14
movq 0xc8(%rsp), %rdi
cmpq %r15, %rdi
je 0x8569
movq 0xd8(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x8569
movq %rax, %r14
jmp 0x8569
jmp 0x850b
jmp 0x850b
jmp 0x850b
jmp 0x850b
jmp 0x850b
jmp 0x850b
movq %rax, %r14
leaq 0xe8(%rsp), %rdi
callq 0x9292
leaq 0x108(%rsp), %rdi
callq 0x9292
leaq 0x128(%rsp), %rdi
callq 0x9292
leaq 0x148(%rsp), %rdi
callq 0x9292
leaq 0x168(%rsp), %rdi
callq 0x9292
leaq 0x188(%rsp), %rdi
callq 0x9292
leaq 0x1a8(%rsp), %rdi
callq 0x9292
movq %rbx, %rdi
callq 0x8c54
movq %r14, %rdi
callq 0x2280
nop