// File: /workspace/github_cpp_makefile_star2_O2/AngelPn[P]L5R-card_game/src/DeckBuilder.cpp
// Function: DeckBuilder::createFateDeck[abi:cxx11]()
list<GreenCard *> *DeckBuilder::createFateDeck()
{
	int i;
	for (i = 0; i < NO_FOOTSOLDIER; i++)
		green->push_back(new Footsoldier("Peasants", FOOTSOLDIER));
	for (i = 0; i < NO_ARCHER; i++)
		green->push_back(new Archer("Elite Troops", ARCHER));
	for (i = 0; i < NO_SIEGER; i++)
		green->push_back(new Sieger("Immortal Bushi", SIEGER));
	for (i = 0; i < NO_CAVALRY; i++)
		green->push_back(new Cavalry("Unicorn Horses", CAVALRY));
	for (i = 0; i < NO_NAVAL; i++)
		green->push_back(new Atakebune("Yomi Ships", NAVAL));
	for (i = 0; i < NO_BUSHIDO; i++)
		green->push_back(new Bushido("7 Samurai", BUSHIDO));

	for (i = 0; i < NO_KATANA; i++)
		green->push_back(new Katana("Daijtso", KATANA));
	for (i = 0; i < NO_BOW; i++)
		green->push_back(new Bow("Yumi", BOW));
	for (i = 0; i < NO_SPEAR; i++)
		green->push_back(new Spear("Kama", SPEAR));
	for (i = 0; i < NO_NINJATO; i++)
		green->push_back(new Ninjato("Butterfly Dagger", NINJATO));
	for (i = 0; i < NO_WAKIZASHI; i++)
		green->push_back(new Wakizashi("Kusanagi", WAKIZASHI));

	return green;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x188, %rsp            # imm = 0x188
movq %rdi, 0x18(%rsp)
pushq $0x6
popq %rbx
leaq 0x168(%rsp), %r13
leaq 0x10(%rsp), %r14
subl $0x1, %ebx
jb 0x36b6
movq 0x18(%rsp), %rax
movq (%rax), %r12
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r15
movq %r13, %rdi
leaq 0x69ad(%rip), %rsi      # 0xa02d
leaq 0xf(%rsp), %rdx
callq 0x4498
movb $0x1, %bpl
movq %r15, %rdi
movq %r13, %rsi
xorl %edx, %edx
callq 0x44d4
movq %r15, 0x10(%rsp)
xorl %ebp, %ebp
movq %r12, %rdi
movq %r14, %rsi
callq 0x448c
movq %r13, %rdi
callq 0x30c0
jmp 0x365e
pushq $0x6
popq %rbx
leaq 0x148(%rsp), %r13
leaq 0x10(%rsp), %r15
subl $0x1, %ebx
jb 0x3720
movq 0x18(%rsp), %rax
movq (%rax), %rbp
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r12
movq %r13, %rdi
leaq 0x694e(%rip), %rsi      # 0xa036
leaq 0xf(%rsp), %rdx
callq 0x4498
movb $0x1, %r14b
movq %r12, %rdi
movq %r13, %rsi
pushq $0x1
popq %rdx
callq 0x4528
movq %r12, 0x10(%rsp)
xorl %r14d, %r14d
movq %rbp, %rdi
movq %r15, %rsi
callq 0x448c
movq %r13, %rdi
callq 0x30c0
jmp 0x36c6
pushq $0x4
popq %rbx
leaq 0x128(%rsp), %rbp
pushq $0x2
popq %r14
subl $0x1, %ebx
jb 0x378b
movq 0x18(%rsp), %rax
movq (%rax), %r15
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r13
movq %rbp, %rdi
leaq 0x68f2(%rip), %rsi      # 0xa043
leaq 0xf(%rsp), %rdx
callq 0x4498
movb $0x1, %r12b
movq %r13, %rdi
movq %rbp, %rsi
movl %r14d, %edx
callq 0x457c
movq %r13, 0x10(%rsp)
xorl %r12d, %r12d
movq %r15, %rdi
leaq 0x10(%rsp), %rsi
callq 0x448c
movq %rbp, %rdi
callq 0x30c0
jmp 0x372f
pushq $0x5
popq %rbx
leaq 0x108(%rsp), %rbp
pushq $0x3
popq %rax
movl %eax, 0x20(%rsp)
subl $0x1, %ebx
jb 0x37f9
movq 0x18(%rsp), %rax
movq (%rax), %r12
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r13
movq %rbp, %rdi
leaq 0x6893(%rip), %rsi      # 0xa052
leaq 0xf(%rsp), %rdx
callq 0x4498
movq %rbp, %rsi
movb $0x1, %r15b
movq %r13, %rdi
pushq $0x3
popq %rdx
callq 0x45d0
movq %r13, 0x10(%rsp)
xorl %r15d, %r15d
movq %r12, %rdi
leaq 0x10(%rsp), %rsi
callq 0x448c
movq %rbp, %rdi
callq 0x30c0
jmp 0x379d
pushq $0x5
popq %r13
leaq 0xe8(%rsp), %rbp
pushq $0x4
popq %rax
movl %eax, 0x24(%rsp)
subl $0x1, %r13d
jb 0x3874
movl %r14d, %r15d
movq 0x18(%rsp), %rax
movq (%rax), %rbx
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r12
movq %rbp, %rdi
leaq 0x682f(%rip), %rsi      # 0xa061
leaq 0xf(%rsp), %rdx
callq 0x4498
movq %rbp, %rsi
movb $0x1, %bpl
movq %r12, %rdi
movq %rsi, %r14
pushq $0x4
popq %rdx
callq 0x4624
movq %r12, 0x10(%rsp)
xorl %ebp, %ebp
movq %rbx, %rdi
leaq 0x10(%rsp), %rsi
callq 0x448c
movq %r14, %rbp
movq %r14, %rdi
callq 0x30c0
movl %r15d, %r14d
jmp 0x380c
leaq 0xc8(%rsp), %r13
leaq 0xf(%rsp), %r15
subl $0x1, %r14d
jb 0x38db
movq 0x18(%rsp), %rax
movq (%rax), %rbx
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r12
movq %r13, %rdi
leaq 0x67c8(%rip), %rsi      # 0xa06c
movq %r15, %rdx
callq 0x4498
movb $0x1, %bpl
movq %r12, %rdi
movq %r13, %rsi
pushq $0x5
popq %rdx
callq 0x4678
movq %r12, 0x10(%rsp)
xorl %ebp, %ebp
movq %rbx, %rdi
leaq 0x10(%rsp), %rsi
callq 0x448c
movq %r13, %rdi
callq 0x30c0
jmp 0x3881
leaq 0xa8(%rsp), %r14
leaq 0xf(%rsp), %r15
leaq 0x10(%rsp), %r12
subl $0x1, 0x24(%rsp)
jb 0x3945
movq 0x18(%rsp), %rax
movq (%rax), %rbx
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r13
movq %r14, %rdi
leaq 0x6765(%rip), %rsi      # 0xa076
movq %r15, %rdx
callq 0x4498
movb $0x1, %bpl
movq %r13, %rdi
movq %r14, %rsi
xorl %edx, %edx
callq 0x46cc
movq %r13, 0x10(%rsp)
xorl %ebp, %ebp
movq %rbx, %rdi
movq %r12, %rsi
callq 0x448c
movq %r14, %rdi
callq 0x30c0
jmp 0x38ed
pushq $0x2
popq %r13
leaq 0x88(%rsp), %r15
movl %r13d, %r14d
subl $0x1, %r13d
jb 0x39b0
movq 0x18(%rsp), %rax
movq (%rax), %rbx
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r12
movq %r15, %rdi
leaq 0x6707(%rip), %rsi      # 0xa07e
leaq 0xf(%rsp), %rdx
callq 0x4498
movb $0x1, %bpl
movq %r12, %rdi
movq %r15, %rsi
movl %r14d, %edx
callq 0x4720
movq %r12, 0x10(%rsp)
xorl %ebp, %ebp
movq %rbx, %rdi
leaq 0x10(%rsp), %rsi
callq 0x448c
movq %r15, %rdi
callq 0x30c0
jmp 0x3954
leaq 0x68(%rsp), %r13
pushq $0x1
popq %r15
leaq 0x10(%rsp), %r14
subl $0x1, 0x20(%rsp)
jb 0x3a19
movq 0x18(%rsp), %rax
movq (%rax), %rbx
pushq $0x68
popq %rdi
callq 0x31b0
movq %rax, %r12
movq %r13, %rdi
leaq 0x66a1(%rip), %rsi      # 0xa083
leaq 0xf(%rsp), %rdx
callq 0x4498
movb $0x1, %bpl
movq %r12, %rdi
movq %r13, %rsi
movl %r15d, %edx
callq 0x4774
movq %r12, 0x10(%rsp)
xorl %ebp, %ebp
movq %rbx, %rdi
movq %r14, %rsi
callq 0x448c
movq %r13, %rdi
callq 0x30c0
jmp 0x39be
pushq $0x2
popq %rbx
leaq 0x48(%rsp), %r13
leaq 0x10(%rsp), %r15
movq 0x18(%rsp), %rax
movq (%rax), %r14
pushq $0x68
popq %rdi
subl $0x1, %ebx
jb 0x3a80
callq 0x31b0
movq %rax, %rbp
movq %r13, %rdi
leaq 0x6640(%rip), %rsi      # 0xa088
leaq 0xf(%rsp), %rdx
callq 0x4498
movb $0x1, %r12b
movq %rbp, %rdi
movq %r13, %rsi
pushq $0x3
popq %rdx
callq 0x47c8
movq %rbp, 0x10(%rsp)
xorl %r12d, %r12d
movq %r14, %rdi
movq %r15, %rsi
callq 0x448c
movq %r13, %rdi
callq 0x30c0
jmp 0x3a26
callq 0x31b0
movq %rax, %r15
leaq 0x660a(%rip), %rsi      # 0xa099
leaq 0x28(%rsp), %rdi
leaq 0xf(%rsp), %rdx
callq 0x4498
movb $0x1, %bpl
leaq 0x28(%rsp), %rsi
pushq $0x4
popq %rdx
movq %r15, %rdi
callq 0x481c
leaq 0x10(%rsp), %rsi
movq %r15, (%rsi)
xorl %ebp, %ebp
movq %r14, %rdi
callq 0x448c
leaq 0x28(%rsp), %rdi
callq 0x30c0
movq 0x18(%rsp), %rax
movq (%rax), %rax
addq $0x188, %rsp            # imm = 0x188
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
jmp 0x3b17
movq %rax, %rbx
leaq 0x28(%rsp), %rdi
jmp 0x3bf9
movq %rax, %rbx
jmp 0x3b35
jmp 0x3b0f
jmp 0x3b0f
jmp 0x3b07
jmp 0x3b0f
jmp 0x3b0f
jmp 0x3b07
movq %rax, %rbx
jmp 0x3bbe
movq %rax, %rbx
jmp 0x3bdb
movq %rax, %rbx
jmp 0x3c03
movq %rax, %rbx
leaq 0x48(%rsp), %rdi
callq 0x30c0
testb %r12b, %r12b
je 0x3be6
pushq $0x68
popq %rsi
movq %rbp, %rdi
jmp 0x3be1
movq %rax, %rbx
leaq 0x68(%rsp), %rdi
jmp 0x3b86
movq %rax, %rbx
leaq 0x88(%rsp), %rdi
jmp 0x3b86
movq %rax, %rbx
leaq 0xa8(%rsp), %rdi
callq 0x30c0
testb %bpl, %bpl
jne 0x3bbe
jmp 0x3be6
movq %rax, %rbx
leaq 0xc8(%rsp), %rdi
jmp 0x3b86
movq %rax, %rbx
leaq 0xe8(%rsp), %rdi
callq 0x30c0
testb %bpl, %bpl
jne 0x3bdb
jmp 0x3be6
movq %rax, %rbx
leaq 0x108(%rsp), %rdi
callq 0x30c0
testb %r15b, %r15b
jne 0x3bbe
jmp 0x3be6
movq %rax, %rbx
leaq 0x128(%rsp), %rdi
callq 0x30c0
testb %r12b, %r12b
je 0x3be6
pushq $0x68
popq %rsi
movq %r13, %rdi
jmp 0x3be1
movq %rax, %rbx
leaq 0x148(%rsp), %rdi
callq 0x30c0
testb %r14b, %r14b
je 0x3be6
pushq $0x68
popq %rsi
movq %r12, %rdi
callq 0x31c0
movq %rbx, %rdi
callq 0x3260
movq %rax, %rbx
leaq 0x168(%rsp), %rdi
callq 0x30c0
testb %bpl, %bpl
je 0x3be6
pushq $0x68
popq %rsi
movq %r15, %rdi
jmp 0x3be1
nop