// File: /workspace/github_cpp_makefile_star2_O1/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 0x808f(%rip), %rsi      # 0x10160
leaq 0x808d(%rip), %rdx      # 0x10165
leaq 0xc8(%rsp), %rdi
callq 0x3fee
leaq 0x1a8(%rsp), %rdi
leaq 0xc8(%rsp), %rsi
callq 0x929e
movq 0xc8(%rsp), %rdi
cmpq %r15, %rdi
je 0x8117
movq 0xd8(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0xb8(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x8486(%rip), %rsi      # 0x105b0
leaq 0x8483(%rip), %rdx      # 0x105b4
leaq 0xa8(%rsp), %rdi
callq 0x3fee
leaq 0x188(%rsp), %rdi
leaq 0xa8(%rsp), %rsi
callq 0x929e
movq 0xa8(%rsp), %rdi
cmpq %r15, %rdi
je 0x8170
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x98(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7fe3(%rip), %rsi      # 0x10166
leaq 0x7fe1(%rip), %rdx      # 0x1016b
leaq 0x88(%rsp), %rdi
callq 0x3fee
leaq 0x168(%rsp), %rdi
leaq 0x88(%rsp), %rsi
callq 0x929e
movq 0x88(%rsp), %rdi
cmpq %r15, %rdi
je 0x81c9
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x78(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7f9f(%rip), %rsi      # 0x10178
leaq 0x7f9d(%rip), %rdx      # 0x1017d
leaq 0x68(%rsp), %rdi
callq 0x3fee
leaq 0x148(%rsp), %rdi
leaq 0x68(%rsp), %rsi
callq 0x929e
movq 0x68(%rsp), %rdi
cmpq %r15, %rdi
je 0x8213
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x58(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7f4f(%rip), %rsi      # 0x10172
leaq 0x7f4d(%rip), %rdx      # 0x10177
leaq 0x48(%rsp), %rdi
callq 0x3fee
leaq 0x128(%rsp), %rdi
leaq 0x48(%rsp), %rsi
callq 0x929e
movq 0x48(%rsp), %rdi
cmpq %r15, %rdi
je 0x825d
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x38(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7eff(%rip), %rsi      # 0x1016c
leaq 0x7efd(%rip), %rdx      # 0x10171
leaq 0x28(%rsp), %rdi
callq 0x3fee
leaq 0x108(%rsp), %rdi
leaq 0x28(%rsp), %rsi
callq 0x929e
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x82a7
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x21a0
leaq 0x18(%rsp), %r15
movq %r15, -0x10(%r15)
leaq 0x7ec7(%rip), %rsi      # 0x1017e
leaq 0x7ec5(%rip), %rdx      # 0x10183
leaq 0x8(%rsp), %rdi
callq 0x3fee
leaq 0xe8(%rsp), %rdi
leaq 0x8(%rsp), %rsi
callq 0x929e
movq 0x8(%rsp), %rdi
cmpq %r15, %rdi
je 0x82f1
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x21a0
movl $0x6, %ebp
leaq 0x1a8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c6e
decl %ebp
jne 0x82fe
movl $0x6, %ebp
leaq 0x188(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c6e
decl %ebp
jne 0x831a
movl $0x6, %ebp
leaq 0x168(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c6e
decl %ebp
jne 0x8336
movl $0x8, %ebp
leaq 0x148(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c6e
decl %ebp
jne 0x8352
movl $0x8, %ebp
leaq 0x128(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c6e
decl %ebp
jne 0x836e
movl $0xa, %ebp
leaq 0x108(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c6e
decl %ebp
jne 0x838a
movl $0x8, %ebp
leaq 0xe8(%rsp), %r14
movq %rbx, %rdi
movq %r14, %rsi
callq 0x8c6e
decl %ebp
jne 0x83a6
leaq 0xe8(%rsp), %rdi
callq 0x92e2
leaq 0x108(%rsp), %rdi
callq 0x92e2
leaq 0x128(%rsp), %rdi
callq 0x92e2
leaq 0x148(%rsp), %rdi
callq 0x92e2
leaq 0x168(%rsp), %rdi
callq 0x92e2
leaq 0x188(%rsp), %rdi
callq 0x92e2
leaq 0x1a8(%rsp), %rdi
callq 0x92e2
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 0x8573
movq 0x18(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x8573
movq %rax, %r14
jmp 0x8573
movq %rax, %r14
movq 0x28(%rsp), %rdi
cmpq %r15, %rdi
je 0x8580
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x8580
movq %rax, %r14
jmp 0x8580
movq %rax, %r14
movq 0x48(%rsp), %rdi
cmpq %r15, %rdi
je 0x858d
movq 0x58(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x858d
movq %rax, %r14
jmp 0x858d
movq %rax, %r14
movq 0x68(%rsp), %rdi
cmpq %r15, %rdi
je 0x859a
movq 0x78(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x859a
movq %rax, %r14
jmp 0x859a
movq %rax, %r14
movq 0x88(%rsp), %rdi
cmpq %r15, %rdi
je 0x85a7
movq 0x98(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x85a7
movq %rax, %r14
jmp 0x85a7
movq %rax, %r14
movq 0xa8(%rsp), %rdi
cmpq %r15, %rdi
je 0x85b4
movq 0xb8(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x85b4
movq %rax, %r14
jmp 0x85b4
movq %rax, %r14
movq 0xc8(%rsp), %rdi
cmpq %r15, %rdi
je 0x85c1
movq 0xd8(%rsp), %rsi
incq %rsi
callq 0x21a0
jmp 0x85c1
movq %rax, %r14
jmp 0x85c1
jmp 0x8563
jmp 0x8563
jmp 0x8563
jmp 0x8563
jmp 0x8563
jmp 0x8563
movq %rax, %r14
leaq 0xe8(%rsp), %rdi
callq 0x92e2
leaq 0x108(%rsp), %rdi
callq 0x92e2
leaq 0x128(%rsp), %rdi
callq 0x92e2
leaq 0x148(%rsp), %rdi
callq 0x92e2
leaq 0x168(%rsp), %rdi
callq 0x92e2
leaq 0x188(%rsp), %rdi
callq 0x92e2
leaq 0x1a8(%rsp), %rdi
callq 0x92e2
movq %rbx, %rdi
callq 0x8cac
movq %r14, %rdi
callq 0x2280
nop