	.file	"97774.c"
	.intel_syntax noprefix
	.text
	.globl	dealer_out
	.bss
	.align 4
	.type	dealer_out, @object
	.size	dealer_out, 4
dealer_out:
	.zero	4
	.globl	dealer_busted
	.align 4
	.type	dealer_busted, @object
	.size	dealer_busted, 4
dealer_busted:
	.zero	4
	.globl	your_out
	.align 4
	.type	your_out, @object
	.size	your_out, 4
your_out:
	.zero	4
	.globl	you_busted
	.align 4
	.type	you_busted, @object
	.size	you_busted, 4
you_busted:
	.zero	4
	.globl	bad_input
	.align 4
	.type	bad_input, @object
	.size	bad_input, 4
bad_input:
	.zero	4
	.globl	has_shown_2nd_card
	.align 4
	.type	has_shown_2nd_card, @object
	.size	has_shown_2nd_card, 4
has_shown_2nd_card:
	.zero	4
	.globl	end_round
	.align 4
	.type	end_round, @object
	.size	end_round, 4
end_round:
	.zero	4
	.globl	valid_input
	.align 4
	.type	valid_input, @object
	.size	valid_input, 4
valid_input:
	.zero	4
	.globl	bad_card_check
	.align 4
	.type	bad_card_check, @object
	.size	bad_card_check, 4
bad_card_check:
	.zero	4
	.globl	even_money
	.align 4
	.type	even_money, @object
	.size	even_money, 4
even_money:
	.zero	4
	.globl	end_game
	.align 4
	.type	end_game, @object
	.size	end_game, 4
end_game:
	.zero	4
	.globl	skip_verbose_results
	.align 4
	.type	skip_verbose_results, @object
	.size	skip_verbose_results, 4
skip_verbose_results:
	.zero	4
	.globl	bet_checked
	.align 4
	.type	bet_checked, @object
	.size	bet_checked, 4
bet_checked:
	.zero	4
	.globl	split
	.align 4
	.type	split, @object
	.size	split, 4
split:
	.zero	4
	.globl	double_down
	.align 4
	.type	double_down, @object
	.size	double_down, 4
double_down:
	.zero	4
	.globl	already_surrendered
	.align 4
	.type	already_surrendered, @object
	.size	already_surrendered, 4
already_surrendered:
	.zero	4
	.globl	your_split_card
	.align 4
	.type	your_split_card, @object
	.size	your_split_card, 4
your_split_card:
	.zero	4
	.globl	your_ace_count
	.align 4
	.type	your_ace_count, @object
	.size	your_ace_count, 4
your_ace_count:
	.zero	4
	.globl	dealer_ace_count
	.align 4
	.type	dealer_ace_count, @object
	.size	dealer_ace_count, 4
dealer_ace_count:
	.zero	4
	.globl	player
	.align 4
	.type	player, @object
	.size	player, 4
player:
	.zero	4
	.globl	input
	.align 4
	.type	input, @object
	.size	input, 4
input:
	.zero	4
	.globl	mode
	.align 4
	.type	mode, @object
	.size	mode, 4
mode:
	.zero	4
	.globl	your_first_card
	.align 4
	.type	your_first_card, @object
	.size	your_first_card, 4
your_first_card:
	.zero	4
	.globl	your_second_card
	.align 4
	.type	your_second_card, @object
	.size	your_second_card, 4
your_second_card:
	.zero	4
	.globl	your_next_card
	.align 4
	.type	your_next_card, @object
	.size	your_next_card, 4
your_next_card:
	.zero	4
	.globl	your_sum
	.align 4
	.type	your_sum, @object
	.size	your_sum, 4
your_sum:
	.zero	4
	.globl	your_new_sum
	.align 4
	.type	your_new_sum, @object
	.size	your_new_sum, 4
your_new_sum:
	.zero	4
	.globl	your_lower_sum
	.align 4
	.type	your_lower_sum, @object
	.size	your_lower_sum, 4
your_lower_sum:
	.zero	4
	.globl	dealer_first_card
	.align 4
	.type	dealer_first_card, @object
	.size	dealer_first_card, 4
dealer_first_card:
	.zero	4
	.globl	dealer_second_card
	.align 4
	.type	dealer_second_card, @object
	.size	dealer_second_card, 4
dealer_second_card:
	.zero	4
	.globl	dealer_next_card
	.align 4
	.type	dealer_next_card, @object
	.size	dealer_next_card, 4
dealer_next_card:
	.zero	4
	.globl	dealer_sum
	.align 4
	.type	dealer_sum, @object
	.size	dealer_sum, 4
dealer_sum:
	.zero	4
	.globl	dealer_new_sum
	.align 4
	.type	dealer_new_sum, @object
	.size	dealer_new_sum, 4
dealer_new_sum:
	.zero	4
	.globl	dealer_lower_sum
	.align 4
	.type	dealer_lower_sum, @object
	.size	dealer_lower_sum, 4
dealer_lower_sum:
	.zero	4
	.globl	card
	.align 4
	.type	card, @object
	.size	card, 4
card:
	.zero	4
	.globl	maximum_bet
	.align 4
	.type	maximum_bet, @object
	.size	maximum_bet, 4
maximum_bet:
	.zero	4
	.globl	your_total_money
	.align 4
	.type	your_total_money, @object
	.size	your_total_money, 4
your_total_money:
	.zero	4
	.globl	your_new_money_total
	.align 4
	.type	your_new_money_total, @object
	.size	your_new_money_total, 4
your_new_money_total:
	.zero	4
	.globl	your_insurance_bet_total
	.align 4
	.type	your_insurance_bet_total, @object
	.size	your_insurance_bet_total, 4
your_insurance_bet_total:
	.zero	4
	.globl	your_bet
	.align 4
	.type	your_bet, @object
	.size	your_bet, 4
your_bet:
	.zero	4
	.globl	minimum_bet
	.align 4
	.type	minimum_bet, @object
	.size	minimum_bet, 4
minimum_bet:
	.zero	4
	.globl	double_down_bet
	.align 4
	.type	double_down_bet, @object
	.size	double_down_bet, 4
double_down_bet:
	.zero	4
	.globl	yn_response
	.type	yn_response, @object
	.size	yn_response, 2
yn_response:
	.zero	2
	.globl	custom_bet
	.align 8
	.type	custom_bet, @object
	.size	custom_bet, 10
custom_bet:
	.zero	10
	.globl	save_money
	.align 32
	.type	save_money, @object
	.size	save_money, 100
save_money:
	.zero	100
	.globl	save
	.align 8
	.type	save, @object
	.size	save, 8
save:
	.zero	8
	.section	.rodata
.LC3:
	.string	"Your new bet is $%.2f\n"
.LC4:
	.string	"You have $%.2f\n"
	.text
	.globl	gamble
	.type	gamble, @function
gamble:
.LFB6:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	sub	rsp, 16
	mov	DWORD PTR -4[rbp], edi
	cmp	DWORD PTR -4[rbp], 6
	ja	.L2
	mov	eax, DWORD PTR -4[rbp]
	lea	rdx, 0[0+rax*4]
	lea	rax, .L4[rip]
	mov	eax, DWORD PTR [rdx+rax]
	cdqe
	lea	rdx, .L4[rip]
	add	rax, rdx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L4:
	.long	.L2-.L4
	.long	.L9-.L4
	.long	.L8-.L4
	.long	.L7-.L4
	.long	.L6-.L4
	.long	.L5-.L4
	.long	.L3-.L4
	.text
.L9:
	movss	xmm0, DWORD PTR your_total_money[rip]
	movss	xmm1, DWORD PTR your_bet[rip]
	subss	xmm0, xmm1
	movss	DWORD PTR your_new_money_total[rip], xmm0
	movss	xmm0, DWORD PTR your_new_money_total[rip]
	movss	DWORD PTR your_total_money[rip], xmm0
	jmp	.L2
.L8:
	movss	xmm1, DWORD PTR your_total_money[rip]
	movss	xmm0, DWORD PTR your_bet[rip]
	addss	xmm0, xmm1
	movss	DWORD PTR your_new_money_total[rip], xmm0
	movss	xmm0, DWORD PTR your_new_money_total[rip]
	movss	DWORD PTR your_total_money[rip], xmm0
	jmp	.L2
.L7:
	movss	xmm1, DWORD PTR your_bet[rip]
	movss	xmm0, DWORD PTR .LC0[rip]
	mulss	xmm0, xmm1
	movss	DWORD PTR your_insurance_bet_total[rip], xmm0
	movss	xmm0, DWORD PTR your_insurance_bet_total[rip]
	movaps	xmm1, xmm0
	addss	xmm1, xmm0
	movss	xmm0, DWORD PTR your_total_money[rip]
	addss	xmm0, xmm1
	movss	DWORD PTR your_new_money_total[rip], xmm0
	movss	xmm0, DWORD PTR your_new_money_total[rip]
	movss	DWORD PTR your_total_money[rip], xmm0
	jmp	.L2
.L6:
	movss	xmm1, DWORD PTR your_bet[rip]
	movss	xmm0, DWORD PTR .LC0[rip]
	mulss	xmm0, xmm1
	movss	DWORD PTR your_insurance_bet_total[rip], xmm0
	movss	xmm0, DWORD PTR your_total_money[rip]
	movss	xmm1, DWORD PTR your_insurance_bet_total[rip]
	subss	xmm0, xmm1
	movss	DWORD PTR your_new_money_total[rip], xmm0
	movss	xmm0, DWORD PTR your_new_money_total[rip]
	movss	DWORD PTR your_total_money[rip], xmm0
	jmp	.L2
.L5:
	movss	xmm0, DWORD PTR your_bet[rip]
	pxor	xmm1, xmm1
	cvtss2sd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC1[rip]
	mulsd	xmm1, xmm0
	movsd	xmm0, QWORD PTR .LC2[rip]
	mulsd	xmm0, xmm1
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR your_insurance_bet_total[rip], xmm0
	movss	xmm1, DWORD PTR your_total_money[rip]
	movss	xmm0, DWORD PTR your_insurance_bet_total[rip]
	addss	xmm0, xmm1
	movss	DWORD PTR your_new_money_total[rip], xmm0
	movss	xmm0, DWORD PTR your_new_money_total[rip]
	movss	DWORD PTR your_total_money[rip], xmm0
	jmp	.L2
.L3:
	movss	xmm0, DWORD PTR your_bet[rip]
	addss	xmm0, xmm0
	movss	DWORD PTR double_down_bet[rip], xmm0
	movss	xmm0, DWORD PTR double_down_bet[rip]
	movss	DWORD PTR your_bet[rip], xmm0
	movss	xmm0, DWORD PTR your_bet[rip]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movq	rax, xmm2
	movq	xmm0, rax
	lea	rdi, .LC3[rip]
	mov	eax, 1
	call	printf@PLT
	nop
.L2:
	movss	xmm0, DWORD PTR your_total_money[rip]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movq	rax, xmm3
	movq	xmm0, rax
	lea	rdi, .LC4[rip]
	mov	eax, 1
	call	printf@PLT
	nop
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE6:
	.size	gamble, .-gamble
	.section	.rodata
.LC5:
	.string	"(y/n): "
.LC6:
	.string	" %s"
.LC7:
	.string	"y"
.LC8:
	.string	"n"
.LC9:
	.string	"Invalid input, try again"
	.text
	.globl	get_input
	.type	get_input, @function
get_input:
.LFB7:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	jmp	.L11
.L15:
	lea	rdi, .LC5[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rsi, yn_response[rip]
	lea	rdi, .LC6[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	lea	rsi, .LC7[rip]
	lea	rdi, yn_response[rip]
	call	strcmp@PLT
	test	eax, eax
	jne	.L12
	mov	DWORD PTR input[rip], 1
	mov	eax, DWORD PTR input[rip]
	jmp	.L10
.L12:
	lea	rsi, .LC8[rip]
	lea	rdi, yn_response[rip]
	call	strcmp@PLT
	test	eax, eax
	jne	.L14
	mov	DWORD PTR input[rip], 2
	mov	eax, DWORD PTR input[rip]
	jmp	.L10
.L14:
	lea	rdi, .LC9[rip]
	call	puts@PLT
.L11:
	mov	eax, DWORD PTR valid_input[rip]
	test	eax, eax
	je	.L15
.L10:
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE7:
	.size	get_input, .-get_input
	.section	.rodata
.LC10:
	.string	"Dealing to you..."
.LC11:
	.string	"Dealing to Dealer..."
	.align 8
.LC12:
	.string	"-----\n| 10|\n|   |\n|   |\n|10 |\n-----"
	.align 8
.LC13:
	.string	"-----\n|  10|\n|   |\n|   |\n|10  |\n-----"
	.align 8
.LC14:
	.string	"-----\n|  A|\n|   |\n|   |\n|A  |\n-----"
	.align 8
.LC15:
	.string	"-----\n|  Q|\n|   |\n|   |\n|Q  |\n-----"
	.align 8
.LC16:
	.string	"-----\n|  K|\n|   |\n|   |\n|K  |\n-----"
	.align 8
.LC17:
	.string	"-----\n|  %d|\n|   |\n|   |\n|%d  |\n-----\n"
	.text
	.globl	deal
	.type	deal, @function
deal:
.LFB8:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	push	rbx
	sub	rsp, 40
	.cfi_offset 3, -24
	mov	DWORD PTR -36[rbp], edi
	cmp	DWORD PTR -36[rbp], 1
	je	.L17
	cmp	DWORD PTR -36[rbp], 2
	je	.L18
	jmp	.L19
.L17:
	lea	rdi, .LC10[rip]
	call	puts@PLT
	jmp	.L19
.L18:
	lea	rdi, .LC11[rip]
	call	puts@PLT
	nop
.L19:
	jmp	.L20
.L48:
	call	clock@PLT
	mov	QWORD PTR -24[rbp], rax
	nop
.L21:
	mov	rax, QWORD PTR -24[rbp]
	lea	rbx, 199[rax]
	call	clock@PLT
	cmp	rbx, rax
	jge	.L21
	call	rand@PLT
	movsx	rdx, eax
	imul	rdx, rdx, -1840700269
	shr	rdx, 32
	add	edx, eax
	sar	edx, 3
	mov	ecx, eax
	sar	ecx, 31
	sub	edx, ecx
	mov	DWORD PTR -28[rbp], edx
	mov	edx, DWORD PTR -28[rbp]
	imul	edx, edx, 14
	sub	eax, edx
	mov	DWORD PTR -28[rbp], eax
	cmp	DWORD PTR -28[rbp], 13
	je	.L22
	cmp	DWORD PTR -28[rbp], 13
	jg	.L23
	cmp	DWORD PTR -28[rbp], 12
	je	.L24
	cmp	DWORD PTR -28[rbp], 12
	jg	.L23
	cmp	DWORD PTR -28[rbp], 10
	je	.L25
	cmp	DWORD PTR -28[rbp], 11
	je	.L26
	jmp	.L23
.L25:
	cmp	DWORD PTR -36[rbp], 1
	je	.L27
	cmp	DWORD PTR -36[rbp], 2
	je	.L28
	jmp	.L23
.L27:
	lea	rdi, .LC12[rip]
	call	puts@PLT
	jmp	.L29
.L28:
	mov	eax, DWORD PTR has_shown_2nd_card[rip]
	test	eax, eax
	je	.L49
	lea	rdi, .LC13[rip]
	call	puts@PLT
.L49:
	nop
.L29:
	jmp	.L23
.L26:
	mov	DWORD PTR -28[rbp], 11
	cmp	DWORD PTR -36[rbp], 1
	je	.L31
	cmp	DWORD PTR -36[rbp], 2
	je	.L32
	jmp	.L23
.L31:
	mov	eax, DWORD PTR your_ace_count[rip]
	add	eax, 1
	mov	DWORD PTR your_ace_count[rip], eax
	lea	rdi, .LC14[rip]
	call	puts@PLT
	jmp	.L33
.L32:
	mov	eax, DWORD PTR dealer_ace_count[rip]
	add	eax, 1
	mov	DWORD PTR dealer_ace_count[rip], eax
	mov	eax, DWORD PTR has_shown_2nd_card[rip]
	test	eax, eax
	je	.L50
	lea	rdi, .LC14[rip]
	call	puts@PLT
.L50:
	nop
.L33:
	jmp	.L23
.L24:
	mov	DWORD PTR -28[rbp], 10
	cmp	DWORD PTR -36[rbp], 1
	je	.L35
	cmp	DWORD PTR -36[rbp], 2
	je	.L36
	jmp	.L23
.L35:
	lea	rdi, .LC15[rip]
	call	puts@PLT
	jmp	.L37
.L36:
	mov	eax, DWORD PTR has_shown_2nd_card[rip]
	test	eax, eax
	je	.L51
	lea	rdi, .LC15[rip]
	call	puts@PLT
.L51:
	nop
.L37:
	jmp	.L23
.L22:
	mov	DWORD PTR -28[rbp], 10
	cmp	DWORD PTR -36[rbp], 1
	je	.L39
	cmp	DWORD PTR -36[rbp], 2
	je	.L40
	jmp	.L53
.L39:
	lea	rdi, .LC16[rip]
	call	puts@PLT
	jmp	.L41
.L40:
	mov	eax, DWORD PTR has_shown_2nd_card[rip]
	test	eax, eax
	je	.L52
	lea	rdi, .LC16[rip]
	call	puts@PLT
.L52:
	nop
.L41:
.L53:
	nop
.L23:
	cmp	DWORD PTR -28[rbp], 9
	jg	.L54
	cmp	DWORD PTR -28[rbp], 1
	jle	.L54
	cmp	DWORD PTR -36[rbp], 1
	je	.L44
	cmp	DWORD PTR -36[rbp], 2
	je	.L45
	jmp	.L43
.L44:
	mov	edx, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -28[rbp]
	mov	esi, eax
	lea	rdi, .LC17[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L43
.L45:
	mov	eax, DWORD PTR has_shown_2nd_card[rip]
	test	eax, eax
	je	.L55
	mov	edx, DWORD PTR -28[rbp]
	mov	eax, DWORD PTR -28[rbp]
	mov	esi, eax
	lea	rdi, .LC17[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L55
.L54:
	nop
	jmp	.L43
.L55:
	nop
.L43:
	cmp	DWORD PTR -28[rbp], 1
	jle	.L20
	mov	eax, DWORD PTR -28[rbp]
	jmp	.L16
.L20:
	mov	eax, DWORD PTR bad_card_check[rip]
	test	eax, eax
	je	.L48
.L16:
	mov	rbx, QWORD PTR -8[rbp]
	leave
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE8:
	.size	deal, .-deal
	.section	.rodata
	.align 8
.LC18:
	.string	"You have %d soft ace(s) left!\n"
	.align 8
.LC19:
	.string	"1 soft ace used, hard ace valued at 1 because 11 busts. New sum: %d\n"
	.align 8
.LC20:
	.string	"Dealer has %d soft ace(s) left!\n"
	.align 8
.LC21:
	.string	"1 soft ace used, hard ace valued at 1 because 11 busts. New sum: %d\n Dealer has %d soft ace(s) left!\n"
	.text
	.globl	ace_bust
	.type	ace_bust, @function
ace_bust:
.LFB9:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	jle	.L57
	mov	eax, DWORD PTR your_ace_count[rip]
	test	eax, eax
	jle	.L57
	mov	eax, DWORD PTR your_ace_count[rip]
	mov	esi, eax
	lea	rdi, .LC18[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR your_sum[rip]
	sub	eax, 10
	mov	DWORD PTR your_lower_sum[rip], eax
	mov	eax, DWORD PTR your_lower_sum[rip]
	mov	DWORD PTR your_sum[rip], eax
	mov	eax, DWORD PTR your_ace_count[rip]
	sub	eax, 1
	mov	DWORD PTR your_ace_count[rip], eax
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC19[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR your_ace_count[rip]
	mov	esi, eax
	lea	rdi, .LC18[rip]
	mov	eax, 0
	call	printf@PLT
.L57:
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 21
	jle	.L60
	mov	eax, DWORD PTR dealer_ace_count[rip]
	test	eax, eax
	jle	.L60
	mov	eax, DWORD PTR has_shown_2nd_card[rip]
	test	eax, eax
	je	.L59
	mov	eax, DWORD PTR dealer_ace_count[rip]
	mov	esi, eax
	lea	rdi, .LC20[rip]
	mov	eax, 0
	call	printf@PLT
.L59:
	mov	eax, DWORD PTR dealer_sum[rip]
	sub	eax, 10
	mov	DWORD PTR dealer_lower_sum[rip], eax
	mov	eax, DWORD PTR dealer_lower_sum[rip]
	mov	DWORD PTR dealer_sum[rip], eax
	mov	eax, DWORD PTR dealer_ace_count[rip]
	sub	eax, 1
	mov	DWORD PTR dealer_ace_count[rip], eax
	mov	eax, DWORD PTR has_shown_2nd_card[rip]
	test	eax, eax
	je	.L60
	mov	edx, DWORD PTR dealer_ace_count[rip]
	mov	eax, DWORD PTR dealer_sum[rip]
	mov	esi, eax
	lea	rdi, .LC21[rip]
	mov	eax, 0
	call	printf@PLT
.L60:
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE9:
	.size	ace_bust, .-ace_bust
	.section	.rodata
.LC22:
	.string	"*******"
	.text
	.globl	lucky_stars
	.type	lucky_stars, @function
lucky_stars:
.LFB10:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	lea	rdi, .LC22[rip]
	call	puts@PLT
	nop
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE10:
	.size	lucky_stars, .-lucky_stars
	.section	.rodata
.LC25:
	.string	"21C"
.LC26:
	.string	"r"
.LC27:
	.string	"save.txt"
.LC28:
	.string	"Load save?"
.LC29:
	.string	"Load ok"
.LC30:
	.string	"Could not read save data!"
.LC32:
	.string	"New game"
.LC33:
	.string	"Maximum bet is $%.2f\n"
	.align 8
.LC34:
	.string	"Place the minimum bet ($%.2f)?\n"
	.align 8
.LC35:
	.string	"You placed the minimum bet of $%.2f\n"
.LC36:
	.string	"Bet: $"
.LC37:
	.string	" %10s"
.LC38:
	.string	"You bet $%.2f\n"
	.align 8
.LC40:
	.string	"That's lower then the minimum bet of $%.2f, try again\n"
	.align 8
.LC41:
	.string	"That's higher then the maximum bet of $%.2f, try again\n"
	.align 8
.LC42:
	.string	"That's higher then the maximum bet of $%.2f, and you don't have enough money, try again\n"
	.align 8
.LC43:
	.string	"This is your second hand of your previous split"
	.align 8
.LC44:
	.string	"Your 1st card is valued at %d\n"
	.align 8
.LC45:
	.string	"Your 2nd card is valued at %d\n"
.LC46:
	.string	"You have %d\n"
	.align 8
.LC47:
	.string	"Dealer's 1st card is valued at %d\n"
	.align 8
.LC48:
	.string	"Do you want to surrender early and loose half your bet?"
.LC49:
	.string	"You surrender"
.LC50:
	.string	"You continue on"
	.align 8
.LC51:
	.string	"Would you like to split these %d's?\n"
.LC52:
	.string	"You split"
	.align 8
.LC53:
	.string	"You continue without splitting"
	.align 8
.LC54:
	.string	"The Dealer's first card is an Ace, would you like to place an insurance bet (half your bet)?"
.LC55:
	.string	"Placed insurance bet"
	.align 8
.LC56:
	.string	"You have 21, do you want even money?"
.LC57:
	.string	"Your taking the even money"
.LC58:
	.string	"Not placing insurance bet"
	.align 8
.LC59:
	.string	"This is a standoff, both of you have 21 no one wins anything"
	.align 8
.LC60:
	.string	"Good choice choosing the even money, this would have been a standoff, both of you have 21"
	.align 8
.LC61:
	.string	"You win the insurance bet 3:2, the Dealer's second card was %d, not blackjack\n"
	.align 8
.LC62:
	.string	"You win the insurance bet, the Dealer's second card was %d\n"
	.align 8
.LC63:
	.string	"You loose the insurance bet, the Dealer's second card was %d\n"
	.align 8
.LC64:
	.string	"Double down? Your current sum is %d\n"
.LC65:
	.string	"Not doubling down"
	.align 8
.LC66:
	.string	"Dealer's 2nd card is valued at %d\n"
.LC67:
	.string	"Dealer has %d\n"
.LC68:
	.string	"Hit?"
	.align 8
.LC69:
	.string	"Your new card is valued at %d\n"
.LC70:
	.string	"You stand with %d\n"
.LC71:
	.string	"Dealer has to hit with %d\n"
.LC72:
	.string	"Dealer's new card value: %d\n"
.LC73:
	.string	"Dealer's new sum: %d\n"
.LC74:
	.string	"Dealer stands with %d\n"
	.align 8
.LC75:
	.string	"No one, you and the Dealer tied with %d\n"
.LC76:
	.string	"you have $ %.2f\n"
.LC77:
	.string	"You busted"
.LC78:
	.string	"Dealer busted"
	.align 8
.LC79:
	.string	"You and Dealer both busted so no one wins..."
.LC80:
	.string	"You have $ %.2f\n"
	.align 8
.LC81:
	.string	"You beat the Dealer with %d, the Dealer had %d\n"
	.align 8
.LC82:
	.string	"The Dealer beat you with %d, you had %d\n"
	.align 8
.LC83:
	.string	"No one got exactly 21, so the winner is..."
	.align 8
.LC84:
	.string	"You with %d, the Dealer had %d\n"
	.align 8
.LC85:
	.string	"The Dealer with %d, you had %d\n"
.LC86:
	.string	"Up for another game?"
.LC87:
	.string	"Next round..."
.LC88:
	.string	"Save?"
.LC89:
	.string	"w+"
.LC90:
	.string	"Could not save!"
.LC91:
	.string	"%.2f\n"
.LC92:
	.string	"Saved!"
.LC93:
	.string	"GAME OVER"
	.text
	.globl	main
	.type	main, @function
main:
.LFB11:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rsp
	.cfi_def_cfa_register 6
	mov	edi, 0
	call	time@PLT
	mov	edi, eax
	call	srand@PLT
	movss	xmm0, DWORD PTR .LC23[rip]
	movss	DWORD PTR minimum_bet[rip], xmm0
	movss	xmm0, DWORD PTR .LC24[rip]
	movss	DWORD PTR maximum_bet[rip], xmm0
	mov	DWORD PTR split[rip], 0
	mov	DWORD PTR your_split_card[rip], 0
	mov	eax, 0
	call	lucky_stars
	lea	rdi, .LC25[rip]
	call	puts@PLT
	lea	rsi, .LC26[rip]
	lea	rdi, .LC27[rip]
	call	fopen@PLT
	mov	QWORD PTR save[rip], rax
	mov	rax, QWORD PTR save[rip]
	test	rax, rax
	je	.L63
	lea	rdi, .LC28[rip]
	call	puts@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L64
	cmp	eax, 2
	je	.L65
	jmp	.L66
.L64:
	mov	rax, QWORD PTR save[rip]
	mov	rdx, rax
	mov	esi, 100
	lea	rdi, save_money[rip]
	call	fgets@PLT
	test	rax, rax
	je	.L67
	mov	esi, 0
	lea	rdi, save_money[rip]
	call	strtod@PLT
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR your_total_money[rip], xmm0
	lea	rdi, .LC29[rip]
	call	puts@PLT
	jmp	.L66
.L67:
	lea	rdi, .LC30[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR .LC31[rip]
	movss	DWORD PTR your_total_money[rip], xmm0
	jmp	.L66
.L65:
	lea	rdi, .LC32[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR .LC31[rip]
	movss	DWORD PTR your_total_money[rip], xmm0
	nop
.L66:
	mov	rax, QWORD PTR save[rip]
	mov	rdi, rax
	call	fclose@PLT
	jmp	.L70
.L63:
	movss	xmm0, DWORD PTR .LC31[rip]
	movss	DWORD PTR your_total_money[rip], xmm0
	jmp	.L70
.L141:
	mov	DWORD PTR dealer_out[rip], 0
	mov	DWORD PTR dealer_busted[rip], 0
	mov	DWORD PTR your_out[rip], 0
	mov	DWORD PTR you_busted[rip], 0
	mov	DWORD PTR bad_input[rip], 0
	mov	DWORD PTR has_shown_2nd_card[rip], 0
	mov	DWORD PTR end_round[rip], 0
	mov	DWORD PTR valid_input[rip], 0
	mov	DWORD PTR bad_card_check[rip], 0
	mov	DWORD PTR even_money[rip], 0
	mov	DWORD PTR end_game[rip], 0
	mov	DWORD PTR skip_verbose_results[rip], 0
	mov	DWORD PTR bet_checked[rip], 0
	mov	DWORD PTR double_down[rip], 0
	mov	DWORD PTR already_surrendered[rip], 0
	mov	DWORD PTR card[rip], 0
	mov	DWORD PTR your_ace_count[rip], 0
	mov	DWORD PTR dealer_ace_count[rip], 0
	mov	DWORD PTR player[rip], 0
	mov	DWORD PTR input[rip], 0
	mov	DWORD PTR mode[rip], 0
	mov	DWORD PTR your_first_card[rip], 0
	mov	DWORD PTR your_second_card[rip], 0
	mov	DWORD PTR your_next_card[rip], 0
	mov	DWORD PTR your_sum[rip], 0
	mov	DWORD PTR your_new_sum[rip], 0
	mov	DWORD PTR your_lower_sum[rip], 0
	mov	DWORD PTR dealer_first_card[rip], 0
	mov	DWORD PTR dealer_second_card[rip], 0
	mov	DWORD PTR dealer_next_card[rip], 0
	mov	DWORD PTR dealer_sum[rip], 0
	mov	DWORD PTR dealer_new_sum[rip], 0
	mov	DWORD PTR dealer_lower_sum[rip], 0
	mov	DWORD PTR player[rip], 1
	mov	eax, DWORD PTR split[rip]
	test	eax, eax
	jne	.L71
	movss	xmm0, DWORD PTR your_total_money[rip]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movq	rax, xmm2
	movq	xmm0, rax
	lea	rdi, .LC4[rip]
	mov	eax, 1
	call	printf@PLT
	movss	xmm0, DWORD PTR maximum_bet[rip]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movq	rax, xmm3
	movq	xmm0, rax
	lea	rdi, .LC33[rip]
	mov	eax, 1
	call	printf@PLT
	movss	xmm0, DWORD PTR minimum_bet[rip]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	lea	rdi, .LC34[rip]
	mov	eax, 1
	call	printf@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L72
	cmp	eax, 2
	je	.L75
	jmp	.L74
.L72:
	movss	xmm0, DWORD PTR minimum_bet[rip]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC35[rip]
	mov	eax, 1
	call	printf@PLT
	movss	xmm0, DWORD PTR minimum_bet[rip]
	movss	DWORD PTR your_bet[rip], xmm0
	jmp	.L74
.L89:
	lea	rdi, .LC36[rip]
	mov	eax, 0
	call	printf@PLT
	lea	rsi, custom_bet[rip]
	lea	rdi, .LC37[rip]
	mov	eax, 0
	call	__isoc99_scanf@PLT
	mov	esi, 0
	lea	rdi, custom_bet[rip]
	call	strtod@PLT
	cvtsd2ss	xmm0, xmm0
	movss	DWORD PTR your_bet[rip], xmm0
	movss	xmm0, DWORD PTR your_bet[rip]
	movss	xmm1, DWORD PTR minimum_bet[rip]
	comiss	xmm0, xmm1
	jb	.L76
	movss	xmm1, DWORD PTR your_bet[rip]
	movss	xmm0, DWORD PTR maximum_bet[rip]
	comiss	xmm0, xmm1
	jb	.L76
	movss	xmm1, DWORD PTR your_bet[rip]
	movss	xmm0, DWORD PTR your_total_money[rip]
	comiss	xmm0, xmm1
	jb	.L76
	movss	xmm0, DWORD PTR your_bet[rip]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm0
	movq	rax, xmm6
	movq	xmm0, rax
	lea	rdi, .LC38[rip]
	mov	eax, 1
	call	printf@PLT
	mov	DWORD PTR bet_checked[rip], 1
	jmp	.L75
.L76:
	movss	xmm1, DWORD PTR your_bet[rip]
	movss	xmm0, DWORD PTR minimum_bet[rip]
	comiss	xmm0, xmm1
	jbe	.L80
	movss	xmm0, DWORD PTR your_bet[rip]
	pxor	xmm1, xmm1
	ucomiss	xmm0, xmm1
	jp	.L147
	pxor	xmm1, xmm1
	comiss	xmm0, xmm1
	je	.L80
.L147:
	movss	xmm0, DWORD PTR minimum_bet[rip]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rax, xmm7
	movq	xmm0, rax
	lea	rdi, .LC40[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L75
.L80:
	movss	xmm0, DWORD PTR your_bet[rip]
	movss	xmm1, DWORD PTR maximum_bet[rip]
	comiss	xmm0, xmm1
	jbe	.L83
	movss	xmm0, DWORD PTR your_total_money[rip]
	movss	xmm1, DWORD PTR your_bet[rip]
	comiss	xmm0, xmm1
	jb	.L83
	movss	xmm0, DWORD PTR maximum_bet[rip]
	pxor	xmm2, xmm2
	cvtss2sd	xmm2, xmm0
	movq	rax, xmm2
	movq	xmm0, rax
	lea	rdi, .LC41[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L75
.L83:
	movss	xmm0, DWORD PTR your_bet[rip]
	movss	xmm1, DWORD PTR maximum_bet[rip]
	comiss	xmm0, xmm1
	jbe	.L86
	movss	xmm1, DWORD PTR your_total_money[rip]
	movss	xmm0, DWORD PTR your_bet[rip]
	comiss	xmm0, xmm1
	jb	.L86
	movss	xmm0, DWORD PTR maximum_bet[rip]
	pxor	xmm3, xmm3
	cvtss2sd	xmm3, xmm0
	movq	rax, xmm3
	movq	xmm0, rax
	lea	rdi, .LC42[rip]
	mov	eax, 1
	call	printf@PLT
	jmp	.L75
.L86:
	lea	rdi, .LC9[rip]
	call	puts@PLT
.L75:
	mov	eax, DWORD PTR bet_checked[rip]
	test	eax, eax
	je	.L89
	nop
.L74:
	mov	eax, DWORD PTR player[rip]
	mov	edi, eax
	call	deal
	mov	DWORD PTR your_first_card[rip], eax
	jmp	.L90
.L71:
	lea	rdi, .LC43[rip]
	call	puts@PLT
	mov	eax, DWORD PTR your_split_card[rip]
	mov	DWORD PTR your_first_card[rip], eax
	mov	DWORD PTR split[rip], 0
.L90:
	mov	DWORD PTR player[rip], 2
	mov	eax, DWORD PTR player[rip]
	mov	edi, eax
	call	deal
	mov	DWORD PTR dealer_first_card[rip], eax
	mov	DWORD PTR player[rip], 1
	mov	eax, DWORD PTR player[rip]
	mov	edi, eax
	call	deal
	mov	DWORD PTR your_second_card[rip], eax
	mov	DWORD PTR player[rip], 2
	mov	eax, DWORD PTR player[rip]
	mov	edi, eax
	call	deal
	mov	DWORD PTR dealer_second_card[rip], eax
	mov	edx, DWORD PTR your_first_card[rip]
	mov	eax, DWORD PTR your_second_card[rip]
	add	eax, edx
	mov	DWORD PTR your_sum[rip], eax
	mov	eax, DWORD PTR your_first_card[rip]
	mov	esi, eax
	lea	rdi, .LC44[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR your_second_card[rip]
	mov	esi, eax
	lea	rdi, .LC45[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC46[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR dealer_first_card[rip]
	mov	eax, DWORD PTR dealer_second_card[rip]
	add	eax, edx
	mov	DWORD PTR dealer_sum[rip], eax
	mov	eax, DWORD PTR dealer_first_card[rip]
	mov	esi, eax
	lea	rdi, .LC47[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	je	.L152
	lea	rdi, .LC48[rip]
	call	puts@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L92
	cmp	eax, 2
	je	.L93
	jmp	.L91
.L92:
	lea	rdi, .LC49[rip]
	call	puts@PLT
	mov	DWORD PTR mode[rip], 4
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
	mov	DWORD PTR end_round[rip], 1
	mov	DWORD PTR your_out[rip], 1
	mov	DWORD PTR already_surrendered[rip], 1
	mov	DWORD PTR skip_verbose_results[rip], 1
	jmp	.L91
.L93:
	lea	rdi, .LC50[rip]
	call	puts@PLT
	jmp	.L91
.L152:
	nop
.L91:
	mov	edx, DWORD PTR your_first_card[rip]
	mov	eax, DWORD PTR your_second_card[rip]
	cmp	edx, eax
	jne	.L153
	mov	eax, DWORD PTR already_surrendered[rip]
	test	eax, eax
	jne	.L153
	mov	eax, DWORD PTR your_first_card[rip]
	mov	esi, eax
	lea	rdi, .LC51[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L95
	cmp	eax, 2
	je	.L96
	jmp	.L94
.L95:
	lea	rdi, .LC52[rip]
	call	puts@PLT
	mov	DWORD PTR split[rip], 1
	mov	eax, DWORD PTR your_second_card[rip]
	mov	DWORD PTR your_split_card[rip], eax
	mov	eax, DWORD PTR your_sum[rip]
	mov	edx, DWORD PTR your_split_card[rip]
	sub	eax, edx
	mov	DWORD PTR your_new_sum[rip], eax
	mov	eax, DWORD PTR your_new_sum[rip]
	mov	DWORD PTR your_sum[rip], eax
	jmp	.L94
.L96:
	lea	rdi, .LC53[rip]
	call	puts@PLT
	jmp	.L94
.L153:
	nop
.L94:
	mov	eax, 0
	call	ace_bust
	mov	eax, DWORD PTR dealer_first_card[rip]
	cmp	eax, 11
	jne	.L154
	lea	rdi, .LC54[rip]
	call	puts@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L98
	cmp	eax, 2
	je	.L99
	jmp	.L97
.L98:
	lea	rdi, .LC55[rip]
	call	puts@PLT
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	jne	.L100
	lea	rdi, .LC56[rip]
	call	puts@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L101
	cmp	eax, 2
	je	.L102
	jmp	.L103
.L101:
	lea	rdi, .LC57[rip]
	call	puts@PLT
	mov	DWORD PTR even_money[rip], 1
	jmp	.L103
.L102:
	lea	rdi, .LC58[rip]
	call	puts@PLT
	nop
.L103:
	mov	eax, DWORD PTR dealer_second_card[rip]
	cmp	eax, 10
	jne	.L104
	mov	eax, DWORD PTR even_money[rip]
	test	eax, eax
	jne	.L104
	lea	rdi, .LC59[rip]
	call	puts@PLT
	mov	DWORD PTR end_round[rip], 1
	mov	DWORD PTR skip_verbose_results[rip], 1
	jmp	.L100
.L104:
	mov	eax, DWORD PTR dealer_second_card[rip]
	cmp	eax, 10
	jne	.L105
	mov	eax, DWORD PTR even_money[rip]
	test	eax, eax
	je	.L105
	lea	rdi, .LC60[rip]
	call	puts@PLT
	mov	DWORD PTR end_round[rip], 1
	mov	DWORD PTR skip_verbose_results[rip], 1
	jmp	.L100
.L105:
	mov	eax, DWORD PTR dealer_second_card[rip]
	cmp	eax, 10
	je	.L100
	mov	eax, DWORD PTR even_money[rip]
	test	eax, eax
	jne	.L100
	mov	DWORD PTR end_round[rip], 1
	mov	DWORD PTR skip_verbose_results[rip], 1
	mov	eax, DWORD PTR dealer_second_card[rip]
	mov	esi, eax
	lea	rdi, .LC61[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 5
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
.L100:
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	je	.L155
	mov	eax, DWORD PTR dealer_second_card[rip]
	cmp	eax, 10
	jne	.L107
	mov	DWORD PTR skip_verbose_results[rip], 1
	mov	DWORD PTR end_round[rip], 1
	mov	eax, DWORD PTR dealer_second_card[rip]
	mov	esi, eax
	lea	rdi, .LC62[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 3
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
	jmp	.L155
.L107:
	mov	eax, DWORD PTR dealer_second_card[rip]
	cmp	eax, 10
	je	.L155
	mov	eax, DWORD PTR dealer_second_card[rip]
	mov	esi, eax
	lea	rdi, .LC63[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 4
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
	jmp	.L155
.L99:
	lea	rdi, .LC58[rip]
	call	puts@PLT
	jmp	.L97
.L154:
	nop
	jmp	.L97
.L155:
	nop
.L97:
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 8
	jle	.L156
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 11
	jg	.L156
	mov	eax, DWORD PTR end_round[rip]
	test	eax, eax
	jne	.L156
	mov	eax, DWORD PTR split[rip]
	test	eax, eax
	jne	.L156
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC64[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L109
	cmp	eax, 2
	je	.L110
	jmp	.L108
.L109:
	mov	DWORD PTR mode[rip], 6
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
	mov	DWORD PTR double_down[rip], 1
	jmp	.L108
.L110:
	lea	rdi, .LC65[rip]
	call	puts@PLT
	jmp	.L108
.L156:
	nop
.L108:
	mov	eax, DWORD PTR has_shown_2nd_card[rip]
	test	eax, eax
	jne	.L111
	mov	eax, DWORD PTR dealer_second_card[rip]
	mov	esi, eax
	lea	rdi, .LC66[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR has_shown_2nd_card[rip], 1
.L111:
	mov	eax, DWORD PTR dealer_sum[rip]
	mov	esi, eax
	lea	rdi, .LC67[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L112
.L122:
	mov	eax, DWORD PTR your_out[rip]
	test	eax, eax
	jne	.L157
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 20
	jg	.L157
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 20
	jg	.L157
	lea	rdi, .LC68[rip]
	call	puts@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L114
	cmp	eax, 2
	je	.L115
	jmp	.L113
.L114:
	mov	DWORD PTR player[rip], 1
	mov	eax, DWORD PTR player[rip]
	mov	edi, eax
	call	deal
	mov	DWORD PTR your_next_card[rip], eax
	mov	eax, DWORD PTR your_next_card[rip]
	mov	esi, eax
	lea	rdi, .LC69[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR your_sum[rip]
	mov	eax, DWORD PTR your_next_card[rip]
	add	eax, edx
	mov	DWORD PTR your_new_sum[rip], eax
	mov	eax, DWORD PTR your_new_sum[rip]
	mov	DWORD PTR your_sum[rip], eax
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC46[rip]
	mov	eax, 0
	call	printf@PLT
	mov	eax, DWORD PTR double_down[rip]
	test	eax, eax
	je	.L158
	mov	DWORD PTR your_out[rip], 1
	jmp	.L158
.L115:
	mov	DWORD PTR your_out[rip], 1
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC70[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L113
.L157:
	nop
	jmp	.L113
.L158:
	nop
.L113:
	mov	eax, 0
	call	ace_bust
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 15
	jg	.L117
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 20
	jg	.L117
	mov	eax, 0
	call	ace_bust
	mov	eax, DWORD PTR dealer_sum[rip]
	mov	esi, eax
	lea	rdi, .LC71[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR player[rip], 2
	mov	eax, DWORD PTR player[rip]
	mov	edi, eax
	call	deal
	mov	DWORD PTR dealer_next_card[rip], eax
	mov	eax, DWORD PTR dealer_next_card[rip]
	mov	esi, eax
	lea	rdi, .LC72[rip]
	mov	eax, 0
	call	printf@PLT
	mov	edx, DWORD PTR dealer_sum[rip]
	mov	eax, DWORD PTR dealer_next_card[rip]
	add	eax, edx
	mov	DWORD PTR dealer_new_sum[rip], eax
	mov	eax, DWORD PTR dealer_new_sum[rip]
	mov	DWORD PTR dealer_sum[rip], eax
	mov	eax, DWORD PTR dealer_sum[rip]
	mov	esi, eax
	lea	rdi, .LC73[rip]
	mov	eax, 0
	call	printf@PLT
	jmp	.L118
.L117:
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 20
	jg	.L119
	mov	eax, DWORD PTR dealer_sum[rip]
	mov	esi, eax
	lea	rdi, .LC74[rip]
	mov	eax, 0
	call	printf@PLT
.L119:
	mov	DWORD PTR dealer_out[rip], 1
.L118:
	mov	eax, DWORD PTR dealer_out[rip]
	test	eax, eax
	je	.L120
	mov	eax, DWORD PTR your_out[rip]
	test	eax, eax
	je	.L120
	mov	DWORD PTR end_round[rip], 1
.L120:
	mov	eax, 0
	call	ace_bust
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 20
	jle	.L121
	mov	DWORD PTR end_round[rip], 1
.L121:
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 20
	jle	.L112
	mov	DWORD PTR end_round[rip], 1
.L112:
	mov	eax, DWORD PTR end_round[rip]
	test	eax, eax
	je	.L122
	mov	eax, 0
	call	lucky_stars
	mov	eax, DWORD PTR skip_verbose_results[rip]
	test	eax, eax
	jne	.L123
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 21
	jne	.L124
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	jne	.L124
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC75[rip]
	mov	eax, 0
	call	printf@PLT
	movss	xmm0, DWORD PTR your_total_money[rip]
	pxor	xmm4, xmm4
	cvtss2sd	xmm4, xmm0
	movq	rax, xmm4
	movq	xmm0, rax
	lea	rdi, .LC76[rip]
	mov	eax, 1
	call	printf@PLT
.L124:
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	jle	.L125
	lea	rdi, .LC77[rip]
	call	puts@PLT
	mov	DWORD PTR you_busted[rip], 1
.L125:
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 21
	jle	.L126
	lea	rdi, .LC78[rip]
	call	puts@PLT
	mov	DWORD PTR dealer_busted[rip], 1
.L126:
	mov	eax, DWORD PTR you_busted[rip]
	test	eax, eax
	je	.L127
	mov	eax, DWORD PTR dealer_busted[rip]
	test	eax, eax
	je	.L127
	lea	rdi, .LC79[rip]
	call	puts@PLT
	movss	xmm0, DWORD PTR your_total_money[rip]
	pxor	xmm5, xmm5
	cvtss2sd	xmm5, xmm0
	movq	rax, xmm5
	movq	xmm0, rax
	lea	rdi, .LC80[rip]
	mov	eax, 1
	call	printf@PLT
.L127:
	mov	eax, DWORD PTR you_busted[rip]
	test	eax, eax
	jne	.L128
	mov	eax, DWORD PTR dealer_busted[rip]
	test	eax, eax
	je	.L128
	mov	edx, DWORD PTR dealer_sum[rip]
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC81[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 2
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
.L128:
	mov	eax, DWORD PTR you_busted[rip]
	test	eax, eax
	je	.L129
	mov	eax, DWORD PTR dealer_busted[rip]
	test	eax, eax
	jne	.L129
	mov	edx, DWORD PTR your_sum[rip]
	mov	eax, DWORD PTR dealer_sum[rip]
	mov	esi, eax
	lea	rdi, .LC82[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 1
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
.L129:
	mov	eax, DWORD PTR you_busted[rip]
	test	eax, eax
	jne	.L123
	mov	eax, DWORD PTR dealer_busted[rip]
	test	eax, eax
	jne	.L123
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	jne	.L130
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 21
	je	.L130
	mov	edx, DWORD PTR dealer_sum[rip]
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC81[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 2
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
.L130:
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	je	.L131
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 21
	jne	.L131
	mov	edx, DWORD PTR your_sum[rip]
	mov	eax, DWORD PTR dealer_sum[rip]
	mov	esi, eax
	lea	rdi, .LC82[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 1
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
.L131:
	mov	eax, DWORD PTR your_sum[rip]
	cmp	eax, 21
	je	.L123
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	eax, 21
	je	.L123
	lea	rdi, .LC83[rip]
	call	puts@PLT
	mov	edx, DWORD PTR your_sum[rip]
	mov	eax, DWORD PTR dealer_sum[rip]
	cmp	edx, eax
	jle	.L132
	mov	edx, DWORD PTR dealer_sum[rip]
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC84[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 2
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
.L132:
	mov	edx, DWORD PTR dealer_sum[rip]
	mov	eax, DWORD PTR your_sum[rip]
	cmp	edx, eax
	jle	.L133
	mov	edx, DWORD PTR your_sum[rip]
	mov	eax, DWORD PTR dealer_sum[rip]
	mov	esi, eax
	lea	rdi, .LC85[rip]
	mov	eax, 0
	call	printf@PLT
	mov	DWORD PTR mode[rip], 1
	mov	eax, DWORD PTR mode[rip]
	mov	edi, eax
	call	gamble
.L133:
	mov	edx, DWORD PTR dealer_sum[rip]
	mov	eax, DWORD PTR your_sum[rip]
	cmp	edx, eax
	jne	.L123
	mov	eax, DWORD PTR your_sum[rip]
	mov	esi, eax
	lea	rdi, .LC75[rip]
	mov	eax, 0
	call	printf@PLT
	movss	xmm0, DWORD PTR your_total_money[rip]
	pxor	xmm6, xmm6
	cvtss2sd	xmm6, xmm0
	movq	rax, xmm6
	movq	xmm0, rax
	lea	rdi, .LC76[rip]
	mov	eax, 1
	call	printf@PLT
.L123:
	mov	eax, DWORD PTR split[rip]
	test	eax, eax
	jne	.L159
	lea	rdi, .LC86[rip]
	call	puts@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L134
	cmp	eax, 2
	je	.L135
	jmp	.L70
.L134:
	lea	rdi, .LC87[rip]
	call	puts@PLT
	jmp	.L70
.L135:
	lea	rdi, .LC88[rip]
	call	puts@PLT
	mov	eax, 0
	call	get_input
	mov	eax, DWORD PTR input[rip]
	cmp	eax, 1
	je	.L136
	cmp	eax, 2
	je	.L137
	jmp	.L138
.L136:
	lea	rsi, .LC89[rip]
	lea	rdi, .LC27[rip]
	call	fopen@PLT
	mov	QWORD PTR save[rip], rax
	mov	rax, QWORD PTR save[rip]
	test	rax, rax
	jne	.L139
	lea	rdi, .LC90[rip]
	call	puts@PLT
	jmp	.L138
.L139:
	movss	xmm0, DWORD PTR your_total_money[rip]
	pxor	xmm7, xmm7
	cvtss2sd	xmm7, xmm0
	movq	rdx, xmm7
	mov	rax, QWORD PTR save[rip]
	movq	xmm0, rdx
	lea	rsi, .LC91[rip]
	mov	rdi, rax
	mov	eax, 1
	call	fprintf@PLT
	mov	rax, QWORD PTR save[rip]
	mov	rdi, rax
	call	fclose@PLT
	lea	rdi, .LC92[rip]
	call	puts@PLT
	jmp	.L138
.L137:
	lea	rdi, .LC93[rip]
	call	puts@PLT
	nop
.L138:
	mov	DWORD PTR end_game[rip], 1
	mov	eax, 0
	call	lucky_stars
	jmp	.L70
.L159:
	nop
.L70:
	mov	eax, DWORD PTR end_game[rip]
	test	eax, eax
	je	.L141
	mov	eax, 0
	pop	rbp
	.cfi_def_cfa 7, 8
	ret
	.cfi_endproc
.LFE11:
	.size	main, .-main
	.section	.rodata
	.align 4
.LC0:
	.long	1056964608
	.align 8
.LC1:
	.long	0
	.long	1071644672
	.align 8
.LC2:
	.long	0
	.long	1074266112
	.align 4
.LC23:
	.long	1084227584
	.align 4
.LC24:
	.long	1176256512
	.align 4
.LC31:
	.long	1159479296
	.ident	"GCC: (Ubuntu 10.5.0-1ubuntu1~20.04) 10.5.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 6
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"97774.c"
	.text
	.comm	dealer_out,4,4
	.comm	dealer_busted,4,4
	.comm	your_out,4,4
	.comm	you_busted,4,4
	.comm	bad_input,4,4
	.comm	has_shown_2nd_card,4,4
	.comm	end_round,4,4
	.comm	valid_input,4,4
	.comm	bad_card_check,4,4
	.comm	even_money,4,4
	.comm	end_game,4,4
	.comm	skip_verbose_results,4,4
	.comm	bet_checked,4,4
	.comm	split,4,4
	.comm	double_down,4,4
	.comm	already_surrendered,4,4
	.comm	your_split_card,4,4
	.comm	your_ace_count,4,4
	.comm	dealer_ace_count,4,4
	.comm	player,4,4
	.comm	input,4,4
	.comm	mode,4,4
	.comm	your_first_card,4,4
	.comm	your_second_card,4,4
	.comm	your_next_card,4,4
	.comm	your_sum,4,4
	.comm	your_new_sum,4,4
	.comm	your_lower_sum,4,4
	.comm	dealer_first_card,4,4
	.comm	dealer_second_card,4,4
	.comm	dealer_next_card,4,4
	.comm	dealer_sum,4,4
	.comm	dealer_new_sum,4,4
	.comm	dealer_lower_sum,4,4
	.comm	card,4,4
	.comm	maximum_bet,4,4
	.comm	your_total_money,4,4
	.comm	your_new_money_total,4,4
	.comm	your_insurance_bet_total,4,4
	.comm	your_bet,4,4
	.comm	minimum_bet,4,4
	.comm	double_down_bet,4,4
	.comm	yn_response,2,4
	.comm	custom_bet,10,4
	.comm	save_money,100,4
	.comm	save,4,4
	.global	__aeabi_fsub
	.global	__aeabi_fadd
	.global	__aeabi_fmul
	.global	__aeabi_f2d
	.global	__aeabi_dmul
	.global	__aeabi_d2f
	.section	.rodata
	.align	2
.LC0:
	.ascii	"Your new bet is $%.2f\012\000"
	.align	2
.LC1:
	.ascii	"You have $%.2f\012\000"
	.text
	.align	2
	.global	gamble
	.syntax unified
	.arm
	.fpu softvfp
	.type	gamble, %function
gamble:
	@ args = 0, pretend = 0, frame = 8
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	sub	sp, sp, #8
	str	r0, [fp, #-8]
	ldr	r3, [fp, #-8]
	sub	r3, r3, #1
	cmp	r3, #5
	ldrls	pc, [pc, r3, asl #2]
	b	.L2
.L4:
	.word	.L9
	.word	.L8
	.word	.L7
	.word	.L6
	.word	.L5
	.word	.L3
.L9:
	ldr	r3, .L10
	ldr	r3, [r3]	@ float
	ldr	r2, .L10+4
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10+8
	str	r2, [r3]	@ float
	ldr	r3, .L10+8
	ldr	r3, [r3]	@ float
	ldr	r2, .L10
	str	r3, [r2]	@ float
	b	.L2
.L8:
	ldr	r3, .L10
	ldr	r3, [r3]	@ float
	ldr	r2, .L10+4
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10+8
	str	r2, [r3]	@ float
	ldr	r3, .L10+8
	ldr	r3, [r3]	@ float
	ldr	r2, .L10
	str	r3, [r2]	@ float
	b	.L2
.L7:
	ldr	r3, .L10+4
	ldr	r3, [r3]	@ float
	mov	r1, #1056964608
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10+12
	str	r2, [r3]	@ float
	ldr	r3, .L10+12
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r2
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10+8
	str	r2, [r3]	@ float
	ldr	r3, .L10+8
	ldr	r3, [r3]	@ float
	ldr	r2, .L10
	str	r3, [r2]	@ float
	b	.L2
.L6:
	ldr	r3, .L10+4
	ldr	r3, [r3]	@ float
	mov	r1, #1056964608
	mov	r0, r3
	bl	__aeabi_fmul
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10+12
	str	r2, [r3]	@ float
	ldr	r3, .L10
	ldr	r3, [r3]	@ float
	ldr	r2, .L10+12
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fsub
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10+8
	str	r2, [r3]	@ float
	ldr	r3, .L10+8
	ldr	r3, [r3]	@ float
	ldr	r2, .L10
	str	r3, [r2]	@ float
	b	.L2
.L5:
	ldr	r3, .L10+4
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, #0
	ldr	r3, .L10+16
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	mov	r2, #0
	ldr	r3, .L10+20
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	ldr	r2, .L10+12
	str	r3, [r2]	@ float
	ldr	r3, .L10
	ldr	r3, [r3]	@ float
	ldr	r2, .L10+12
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10+8
	str	r2, [r3]	@ float
	ldr	r3, .L10+8
	ldr	r3, [r3]	@ float
	ldr	r2, .L10
	str	r3, [r2]	@ float
	b	.L2
.L3:
	ldr	r3, .L10+4
	ldr	r3, [r3]	@ float
	mov	r1, r3
	mov	r0, r3
	bl	__aeabi_fadd
	mov	r3, r0
	mov	r2, r3
	ldr	r3, .L10+24
	str	r2, [r3]	@ float
	ldr	r3, .L10+24
	ldr	r3, [r3]	@ float
	ldr	r2, .L10+4
	str	r3, [r2]	@ float
	ldr	r3, .L10+4
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L10+28
	bl	printf
	nop
.L2:
	ldr	r3, .L10
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L10+32
	bl	printf
	nop
	sub	sp, fp, #4
	@ sp needed
	pop	{fp, pc}
.L11:
	.align	2
.L10:
	.word	your_total_money
	.word	your_bet
	.word	your_new_money_total
	.word	your_insurance_bet_total
	.word	1071644672
	.word	1074266112
	.word	double_down_bet
	.word	.LC0
	.word	.LC1
	.size	gamble, .-gamble
	.section	.rodata
	.align	2
.LC2:
	.ascii	"(y/n): \000"
	.align	2
.LC3:
	.ascii	" %s\000"
	.align	2
.LC4:
	.ascii	"y\000"
	.align	2
.LC5:
	.ascii	"n\000"
	.align	2
.LC6:
	.ascii	"Invalid input, try again\000"
	.text
	.align	2
	.global	get_input
	.syntax unified
	.arm
	.fpu softvfp
	.type	get_input, %function
get_input:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	b	.L13
.L17:
	ldr	r0, .L18
	bl	printf
	ldr	r1, .L18+4
	ldr	r0, .L18+8
	bl	__isoc99_scanf
	ldr	r1, .L18+12
	ldr	r0, .L18+4
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L14
	ldr	r3, .L18+16
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L18+16
	ldr	r3, [r3]
	b	.L12
.L14:
	ldr	r1, .L18+20
	ldr	r0, .L18+4
	bl	strcmp
	mov	r3, r0
	cmp	r3, #0
	bne	.L16
	ldr	r3, .L18+16
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L18+16
	ldr	r3, [r3]
	b	.L12
.L16:
	ldr	r0, .L18+24
	bl	puts
.L13:
	ldr	r3, .L18+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L17
.L12:
	mov	r0, r3
	pop	{fp, pc}
.L19:
	.align	2
.L18:
	.word	.LC2
	.word	yn_response
	.word	.LC3
	.word	.LC4
	.word	input
	.word	.LC5
	.word	.LC6
	.word	valid_input
	.size	get_input, .-get_input
	.section	.rodata
	.align	2
.LC7:
	.ascii	"Dealing to you...\000"
	.align	2
.LC8:
	.ascii	"Dealing to Dealer...\000"
	.align	2
.LC9:
	.ascii	"-----\012| 10|\012|   |\012|   |\012|10 |\012-----\000"
	.align	2
.LC10:
	.ascii	"-----\012|  10|\012|   |\012|   |\012|10  |\012----"
	.ascii	"-\000"
	.align	2
.LC11:
	.ascii	"-----\012|  A|\012|   |\012|   |\012|A  |\012-----\000"
	.align	2
.LC12:
	.ascii	"-----\012|  Q|\012|   |\012|   |\012|Q  |\012-----\000"
	.align	2
.LC13:
	.ascii	"-----\012|  K|\012|   |\012|   |\012|K  |\012-----\000"
	.align	2
.LC14:
	.ascii	"-----\012|  %d|\012|   |\012|   |\012|%d  |\012----"
	.ascii	"-\012\000"
	.text
	.align	2
	.global	deal
	.syntax unified
	.arm
	.fpu softvfp
	.type	deal, %function
deal:
	@ args = 0, pretend = 0, frame = 16
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, fp, lr}
	add	fp, sp, #8
	sub	sp, sp, #20
	str	r0, [fp, #-24]
	ldr	r3, [fp, #-24]
	cmp	r3, #1
	beq	.L21
	ldr	r3, [fp, #-24]
	cmp	r3, #2
	beq	.L22
	b	.L23
.L21:
	ldr	r0, .L61
	bl	puts
	b	.L23
.L22:
	ldr	r0, .L61+4
	bl	puts
	nop
.L23:
	b	.L24
.L53:
	bl	clock
	str	r0, [fp, #-16]
	nop
.L25:
	ldr	r3, [fp, #-16]
	add	r4, r3, #199
	bl	clock
	mov	r3, r0
	cmp	r4, r3
	bge	.L25
	bl	rand
	mov	r2, r0
	ldr	r3, .L61+8
	smull	r1, r3, r2, r3
	add	r3, r3, r2
	asr	r1, r3, #3
	asr	r3, r2, #31
	sub	r1, r1, r3
	mov	r3, r1
	lsl	r3, r3, #3
	sub	r3, r3, r1
	lsl	r3, r3, #1
	sub	r3, r2, r3
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-20]
	sub	r3, r3, #10
	cmp	r3, #3
	ldrls	pc, [pc, r3, asl #2]
	b	.L26
.L28:
	.word	.L31
	.word	.L30
	.word	.L29
	.word	.L27
.L31:
	ldr	r3, [fp, #-24]
	cmp	r3, #1
	beq	.L32
	ldr	r3, [fp, #-24]
	cmp	r3, #2
	beq	.L33
	b	.L26
.L32:
	ldr	r0, .L61+12
	bl	puts
	b	.L34
.L33:
	ldr	r3, .L61+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L54
	ldr	r0, .L61+20
	bl	puts
.L54:
	nop
.L34:
	b	.L26
.L30:
	mov	r3, #11
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r3, #1
	beq	.L36
	ldr	r3, [fp, #-24]
	cmp	r3, #2
	beq	.L37
	b	.L26
.L36:
	ldr	r3, .L61+24
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L61+24
	str	r3, [r2]
	ldr	r0, .L61+28
	bl	puts
	b	.L38
.L37:
	ldr	r3, .L61+32
	ldr	r3, [r3]
	add	r3, r3, #1
	ldr	r2, .L61+32
	str	r3, [r2]
	ldr	r3, .L61+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L55
	ldr	r0, .L61+28
	bl	puts
.L55:
	nop
.L38:
	b	.L26
.L29:
	mov	r3, #10
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r3, #1
	beq	.L40
	ldr	r3, [fp, #-24]
	cmp	r3, #2
	beq	.L41
	b	.L26
.L40:
	ldr	r0, .L61+36
	bl	puts
	b	.L42
.L41:
	ldr	r3, .L61+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L56
	ldr	r0, .L61+36
	bl	puts
.L56:
	nop
.L42:
	b	.L26
.L27:
	mov	r3, #10
	str	r3, [fp, #-20]
	ldr	r3, [fp, #-24]
	cmp	r3, #1
	beq	.L44
	ldr	r3, [fp, #-24]
	cmp	r3, #2
	beq	.L45
	b	.L58
.L44:
	ldr	r0, .L61+40
	bl	puts
	b	.L46
.L45:
	ldr	r3, .L61+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L57
	ldr	r0, .L61+40
	bl	puts
.L57:
	nop
.L46:
.L58:
	nop
.L26:
	ldr	r3, [fp, #-20]
	cmp	r3, #9
	bgt	.L59
	ldr	r3, [fp, #-20]
	cmp	r3, #1
	ble	.L59
	ldr	r3, [fp, #-24]
	cmp	r3, #1
	beq	.L49
	ldr	r3, [fp, #-24]
	cmp	r3, #2
	beq	.L50
	b	.L48
.L49:
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #-20]
	ldr	r0, .L61+44
	bl	printf
	b	.L48
.L50:
	ldr	r3, .L61+16
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L60
	ldr	r2, [fp, #-20]
	ldr	r1, [fp, #-20]
	ldr	r0, .L61+44
	bl	printf
	b	.L60
.L59:
	nop
	b	.L48
.L60:
	nop
.L48:
	ldr	r3, [fp, #-20]
	cmp	r3, #1
	ble	.L24
	ldr	r3, [fp, #-20]
	b	.L20
.L24:
	ldr	r3, .L61+48
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L53
.L20:
	mov	r0, r3
	sub	sp, fp, #8
	@ sp needed
	pop	{r4, fp, pc}
.L62:
	.align	2
.L61:
	.word	.LC7
	.word	.LC8
	.word	-1840700269
	.word	.LC9
	.word	has_shown_2nd_card
	.word	.LC10
	.word	your_ace_count
	.word	.LC11
	.word	dealer_ace_count
	.word	.LC12
	.word	.LC13
	.word	.LC14
	.word	bad_card_check
	.size	deal, .-deal
	.section	.rodata
	.align	2
.LC15:
	.ascii	"You have %d soft ace(s) left!\012\000"
	.align	2
.LC16:
	.ascii	"1 soft ace used, hard ace valued at 1 because 11 bu"
	.ascii	"sts. New sum: %d\012\000"
	.align	2
.LC17:
	.ascii	"Dealer has %d soft ace(s) left!\012\000"
	.align	2
.LC18:
	.ascii	"1 soft ace used, hard ace valued at 1 because 11 bu"
	.ascii	"sts. New sum: %d\012 Dealer has %d soft ace(s) left"
	.ascii	"!\012\000"
	.text
	.align	2
	.global	ace_bust
	.syntax unified
	.arm
	.fpu softvfp
	.type	ace_bust, %function
ace_bust:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r3, .L68
	ldr	r3, [r3]
	cmp	r3, #21
	ble	.L64
	ldr	r3, .L68+4
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L64
	ldr	r3, .L68+4
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L68+8
	bl	printf
	ldr	r3, .L68
	ldr	r3, [r3]
	sub	r3, r3, #10
	ldr	r2, .L68+12
	str	r3, [r2]
	ldr	r3, .L68+12
	ldr	r3, [r3]
	ldr	r2, .L68
	str	r3, [r2]
	ldr	r3, .L68+4
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L68+4
	str	r3, [r2]
	ldr	r3, .L68
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L68+16
	bl	printf
	ldr	r3, .L68+4
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L68+8
	bl	printf
.L64:
	ldr	r3, .L68+20
	ldr	r3, [r3]
	cmp	r3, #21
	ble	.L67
	ldr	r3, .L68+24
	ldr	r3, [r3]
	cmp	r3, #0
	ble	.L67
	ldr	r3, .L68+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L66
	ldr	r3, .L68+24
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L68+32
	bl	printf
.L66:
	ldr	r3, .L68+20
	ldr	r3, [r3]
	sub	r3, r3, #10
	ldr	r2, .L68+36
	str	r3, [r2]
	ldr	r3, .L68+36
	ldr	r3, [r3]
	ldr	r2, .L68+20
	str	r3, [r2]
	ldr	r3, .L68+24
	ldr	r3, [r3]
	sub	r3, r3, #1
	ldr	r2, .L68+24
	str	r3, [r2]
	ldr	r3, .L68+28
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L67
	ldr	r3, .L68+20
	ldr	r3, [r3]
	ldr	r2, .L68+24
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L68+40
	bl	printf
.L67:
	nop
	pop	{fp, pc}
.L69:
	.align	2
.L68:
	.word	your_sum
	.word	your_ace_count
	.word	.LC15
	.word	your_lower_sum
	.word	.LC16
	.word	dealer_sum
	.word	dealer_ace_count
	.word	has_shown_2nd_card
	.word	.LC17
	.word	dealer_lower_sum
	.word	.LC18
	.size	ace_bust, .-ace_bust
	.section	.rodata
	.align	2
.LC19:
	.ascii	"*******\000"
	.text
	.align	2
	.global	lucky_stars
	.syntax unified
	.arm
	.fpu softvfp
	.type	lucky_stars, %function
lucky_stars:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{fp, lr}
	add	fp, sp, #4
	ldr	r0, .L71
	bl	puts
	nop
	pop	{fp, pc}
.L72:
	.align	2
.L71:
	.word	.LC19
	.size	lucky_stars, .-lucky_stars
	.section	.rodata
	.align	2
.LC20:
	.ascii	"21C\000"
	.align	2
.LC21:
	.ascii	"r\000"
	.align	2
.LC22:
	.ascii	"save.txt\000"
	.align	2
.LC23:
	.ascii	"Load save?\000"
	.align	2
.LC24:
	.ascii	"Load ok\000"
	.align	2
.LC25:
	.ascii	"Could not read save data!\000"
	.align	2
.LC26:
	.ascii	"New game\000"
	.align	2
.LC27:
	.ascii	"Maximum bet is $%.2f\012\000"
	.align	2
.LC28:
	.ascii	"Place the minimum bet ($%.2f)?\012\000"
	.align	2
.LC29:
	.ascii	"You placed the minimum bet of $%.2f\012\000"
	.align	2
.LC30:
	.ascii	"Bet: $\000"
	.align	2
.LC31:
	.ascii	" %10s\000"
	.global	__aeabi_fcmpge
	.global	__aeabi_fcmple
	.align	2
.LC32:
	.ascii	"You bet $%.2f\012\000"
	.global	__aeabi_fcmplt
	.global	__aeabi_fcmpeq
	.align	2
.LC33:
	.ascii	"That's lower then the minimum bet of $%.2f, try aga"
	.ascii	"in\012\000"
	.global	__aeabi_fcmpgt
	.align	2
.LC34:
	.ascii	"That's higher then the maximum bet of $%.2f, try ag"
	.ascii	"ain\012\000"
	.align	2
.LC35:
	.ascii	"That's higher then the maximum bet of $%.2f, and yo"
	.ascii	"u don't have enough money, try again\012\000"
	.align	2
.LC36:
	.ascii	"This is your second hand of your previous split\000"
	.align	2
.LC37:
	.ascii	"Your 1st card is valued at %d\012\000"
	.align	2
.LC38:
	.ascii	"Your 2nd card is valued at %d\012\000"
	.align	2
.LC39:
	.ascii	"You have %d\012\000"
	.align	2
.LC40:
	.ascii	"Dealer's 1st card is valued at %d\012\000"
	.align	2
.LC41:
	.ascii	"Do you want to surrender early and loose half your "
	.ascii	"bet?\000"
	.align	2
.LC42:
	.ascii	"You surrender\000"
	.align	2
.LC43:
	.ascii	"You continue on\000"
	.align	2
.LC44:
	.ascii	"Would you like to split these %d's?\012\000"
	.align	2
.LC45:
	.ascii	"You split\000"
	.align	2
.LC46:
	.ascii	"You continue without splitting\000"
	.align	2
.LC47:
	.ascii	"The Dealer's first card is an Ace, would you like t"
	.ascii	"o place an insurance bet (half your bet)?\000"
	.align	2
.LC48:
	.ascii	"Placed insurance bet\000"
	.align	2
.LC49:
	.ascii	"You have 21, do you want even money?\000"
	.align	2
.LC50:
	.ascii	"Your taking the even money\000"
	.align	2
.LC51:
	.ascii	"Not placing insurance bet\000"
	.align	2
.LC52:
	.ascii	"This is a standoff, both of you have 21 no one wins"
	.ascii	" anything\000"
	.align	2
.LC53:
	.ascii	"Good choice choosing the even money, this would hav"
	.ascii	"e been a standoff, both of you have 21\000"
	.align	2
.LC54:
	.ascii	"You win the insurance bet 3:2, the Dealer's second "
	.ascii	"card was %d, not blackjack\012\000"
	.align	2
.LC55:
	.ascii	"You win the insurance bet, the Dealer's second card"
	.ascii	" was %d\012\000"
	.align	2
.LC56:
	.ascii	"You loose the insurance bet, the Dealer's second ca"
	.ascii	"rd was %d\012\000"
	.align	2
.LC57:
	.ascii	"Double down? Your current sum is %d\012\000"
	.align	2
.LC58:
	.ascii	"Not doubling down\000"
	.align	2
.LC59:
	.ascii	"Dealer's 2nd card is valued at %d\012\000"
	.align	2
.LC60:
	.ascii	"Dealer has %d\012\000"
	.align	2
.LC61:
	.ascii	"Hit?\000"
	.align	2
.LC62:
	.ascii	"Your new card is valued at %d\012\000"
	.align	2
.LC63:
	.ascii	"You stand with %d\012\000"
	.align	2
.LC64:
	.ascii	"Dealer has to hit with %d\012\000"
	.align	2
.LC65:
	.ascii	"Dealer's new card value: %d\012\000"
	.align	2
.LC66:
	.ascii	"Dealer's new sum: %d\012\000"
	.align	2
.LC67:
	.ascii	"Dealer stands with %d\012\000"
	.align	2
.LC68:
	.ascii	"No one, you and the Dealer tied with %d\012\000"
	.align	2
.LC69:
	.ascii	"you have $ %.2f\012\000"
	.align	2
.LC70:
	.ascii	"You busted\000"
	.align	2
.LC71:
	.ascii	"Dealer busted\000"
	.align	2
.LC72:
	.ascii	"You and Dealer both busted so no one wins...\000"
	.align	2
.LC73:
	.ascii	"You have $ %.2f\012\000"
	.align	2
.LC74:
	.ascii	"You beat the Dealer with %d, the Dealer had %d\012\000"
	.align	2
.LC75:
	.ascii	"The Dealer beat you with %d, you had %d\012\000"
	.align	2
.LC76:
	.ascii	"No one got exactly 21, so the winner is...\000"
	.align	2
.LC77:
	.ascii	"You with %d, the Dealer had %d\012\000"
	.align	2
.LC78:
	.ascii	"The Dealer with %d, you had %d\012\000"
	.align	2
.LC79:
	.ascii	"Up for another game?\000"
	.align	2
.LC80:
	.ascii	"Next round...\000"
	.align	2
.LC81:
	.ascii	"Save?\000"
	.align	2
.LC82:
	.ascii	"w+\000"
	.align	2
.LC83:
	.ascii	"Could not save!\000"
	.align	2
.LC84:
	.ascii	"%.2f\012\000"
	.align	2
.LC85:
	.ascii	"Saved!\000"
	.align	2
.LC86:
	.ascii	"GAME OVER\000"
	.text
	.align	2
	.global	main
	.syntax unified
	.arm
	.fpu softvfp
	.type	main, %function
main:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 1, uses_anonymous_args = 0
	push	{r4, r5, fp, lr}
	add	fp, sp, #12
	mov	r0, #0
	bl	time
	mov	r3, r0
	mov	r0, r3
	bl	srand
	ldr	r3, .L171
	ldr	r2, .L171+4
	str	r2, [r3]	@ float
	ldr	r3, .L171+8
	ldr	r2, .L171+12
	str	r2, [r3]	@ float
	ldr	r3, .L171+400
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+16
	mov	r2, #0
	str	r2, [r3]
	bl	lucky_stars
	ldr	r0, .L171+20
	bl	puts
	ldr	r1, .L171+24
	ldr	r0, .L171+424
	bl	fopen
	mov	r3, r0
	ldr	r2, .L171+440
	str	r3, [r2]
	ldr	r3, .L171+440
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L74
	ldr	r0, .L171+28
	bl	puts
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L75
	cmp	r3, #2
	beq	.L76
	b	.L77
.L75:
	ldr	r3, .L171+440
	ldr	r3, [r3]
	mov	r2, r3
	mov	r1, #100
	ldr	r0, .L171+32
	bl	fgets
	mov	r3, r0
	cmp	r3, #0
	beq	.L78
	mov	r1, #0
	ldr	r0, .L171+32
	bl	strtod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	ldr	r2, .L171+432
	str	r3, [r2]	@ float
	ldr	r0, .L171+36
	bl	puts
	b	.L77
.L78:
	ldr	r0, .L171+40
	bl	puts
	ldr	r3, .L171+432
	ldr	r2, .L171+44
	str	r2, [r3]	@ float
	b	.L77
.L76:
	ldr	r0, .L171+48
	bl	puts
	ldr	r3, .L171+432
	ldr	r2, .L171+44
	str	r2, [r3]	@ float
	nop
.L77:
	ldr	r3, .L171+440
	ldr	r3, [r3]
	mov	r0, r3
	bl	fclose
	b	.L81
.L74:
	ldr	r3, .L171+432
	ldr	r2, .L171+44
	str	r2, [r3]	@ float
	b	.L81
.L152:
	ldr	r3, .L171+320
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+356
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+324
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+352
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+52
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+56
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+328
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+60
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+64
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+68
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+452
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+332
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+72
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+76
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+80
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+84
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+88
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+92
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+96
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+416
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+380
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+100
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+104
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+108
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+388
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+112
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+116
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+120
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+124
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+128
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+384
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+132
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+136
	mov	r2, #0
	str	r2, [r3]
	ldr	r3, .L171+96
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+400
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L82
	ldr	r3, .L171+432
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+140
	bl	printf
	ldr	r3, .L171+8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+144
	bl	printf
	ldr	r3, .L171
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+148
	bl	printf
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L83
	cmp	r3, #2
	beq	.L86
	b	.L85
.L83:
	ldr	r3, .L171
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+152
	bl	printf
	ldr	r3, .L171
	ldr	r3, [r3]	@ float
	ldr	r2, .L171+156
	str	r3, [r2]	@ float
	b	.L85
.L100:
	ldr	r0, .L171+160
	bl	printf
	ldr	r1, .L171+164
	ldr	r0, .L171+168
	bl	__isoc99_scanf
	mov	r1, #0
	ldr	r0, .L171+164
	bl	strtod
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	mov	r1, r3
	bl	__aeabi_d2f
	mov	r3, r0
	ldr	r2, .L171+156
	str	r3, [r2]	@ float
	ldr	r3, .L171+156
	ldr	r3, [r3]	@ float
	ldr	r2, .L171
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L87
	ldr	r3, .L171+156
	ldr	r3, [r3]	@ float
	ldr	r2, .L171+8
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L87
	ldr	r3, .L171+156
	ldr	r3, [r3]	@ float
	ldr	r2, .L171+432
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L87
	ldr	r3, .L171+156
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+172
	bl	printf
	ldr	r3, .L171+72
	mov	r2, #1
	str	r2, [r3]
	b	.L86
.L87:
	ldr	r3, .L171+156
	ldr	r3, [r3]	@ float
	ldr	r2, .L171
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmplt
	mov	r3, r0
	cmp	r3, #0
	beq	.L91
	ldr	r3, .L171+156
	ldr	r3, [r3]	@ float
	mov	r1, #0
	mov	r0, r3
	bl	__aeabi_fcmpeq
	mov	r3, r0
	cmp	r3, #0
	bne	.L91
	ldr	r3, .L171
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+176
	bl	printf
	b	.L86
.L91:
	ldr	r3, .L171+156
	ldr	r3, [r3]	@ float
	ldr	r2, .L171+8
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L94
	ldr	r3, .L171+432
	ldr	r3, [r3]	@ float
	ldr	r2, .L171+156
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpge
	mov	r3, r0
	cmp	r3, #0
	beq	.L94
	ldr	r3, .L171+8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+180
	bl	printf
	b	.L86
.L94:
	ldr	r3, .L171+156
	ldr	r3, [r3]	@ float
	ldr	r2, .L171+8
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmpgt
	mov	r3, r0
	cmp	r3, #0
	beq	.L97
	ldr	r3, .L171+432
	ldr	r3, [r3]	@ float
	ldr	r2, .L171+156
	ldr	r2, [r2]	@ float
	mov	r1, r2
	mov	r0, r3
	bl	__aeabi_fcmple
	mov	r3, r0
	cmp	r3, #0
	beq	.L97
	ldr	r3, .L171+8
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+184
	bl	printf
	b	.L86
.L97:
	ldr	r0, .L171+188
	bl	puts
.L86:
	ldr	r3, .L171+72
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L100
	nop
.L85:
	ldr	r3, .L171+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	deal
	mov	r3, r0
	ldr	r2, .L171+100
	str	r3, [r2]
	b	.L101
.L82:
	ldr	r0, .L171+192
	bl	puts
	ldr	r3, .L171+16
	ldr	r3, [r3]
	ldr	r2, .L171+100
	str	r3, [r2]
	ldr	r3, .L171+400
	mov	r2, #0
	str	r2, [r3]
.L101:
	ldr	r3, .L171+96
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L171+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	deal
	mov	r3, r0
	ldr	r2, .L171+120
	str	r3, [r2]
	ldr	r3, .L171+96
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	deal
	mov	r3, r0
	ldr	r2, .L171+104
	str	r3, [r2]
	ldr	r3, .L171+96
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L171+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	deal
	mov	r3, r0
	ldr	r2, .L171+124
	str	r3, [r2]
	ldr	r3, .L171+100
	ldr	r2, [r3]
	ldr	r3, .L171+104
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L171+388
	str	r3, [r2]
	ldr	r3, .L171+100
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+196
	bl	printf
	ldr	r3, .L171+104
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+200
	bl	printf
	ldr	r3, .L171+388
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+204
	bl	printf
	ldr	r3, .L171+120
	ldr	r2, [r3]
	ldr	r3, .L171+124
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L171+384
	str	r3, [r2]
	ldr	r3, .L171+120
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+208
	bl	printf
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #21
	beq	.L163
	ldr	r0, .L171+212
	bl	puts
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L103
	cmp	r3, #2
	beq	.L104
	b	.L102
.L103:
	ldr	r0, .L171+216
	bl	puts
	ldr	r3, .L171+380
	mov	r2, #4
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
	ldr	r3, .L171+328
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+324
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+80
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+332
	mov	r2, #1
	str	r2, [r3]
	b	.L102
.L104:
	ldr	r0, .L171+220
	bl	puts
	b	.L102
.L163:
	nop
.L102:
	ldr	r3, .L171+100
	ldr	r2, [r3]
	ldr	r3, .L171+104
	ldr	r3, [r3]
	cmp	r2, r3
	bne	.L164
	ldr	r3, .L171+80
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L164
	ldr	r3, .L171+100
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+224
	bl	printf
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L106
	cmp	r3, #2
	beq	.L107
	b	.L105
.L106:
	ldr	r0, .L171+228
	bl	puts
	ldr	r3, .L171+400
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+104
	ldr	r3, [r3]
	ldr	r2, .L171+16
	str	r3, [r2]
	ldr	r3, .L171+388
	ldr	r2, [r3]
	ldr	r3, .L171+16
	ldr	r3, [r3]
	sub	r3, r2, r3
	ldr	r2, .L171+112
	str	r3, [r2]
	ldr	r3, .L171+112
	ldr	r3, [r3]
	ldr	r2, .L171+388
	str	r3, [r2]
	b	.L105
.L107:
	ldr	r0, .L171+232
	bl	puts
	b	.L105
.L164:
	nop
.L105:
	bl	ace_bust
	ldr	r3, .L171+120
	ldr	r3, [r3]
	cmp	r3, #11
	bne	.L165
	ldr	r0, .L171+236
	bl	puts
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L109
	cmp	r3, #2
	beq	.L110
	b	.L108
.L109:
	ldr	r0, .L171+240
	bl	puts
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #21
	bne	.L111
	ldr	r0, .L171+244
	bl	puts
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L112
	cmp	r3, #2
	beq	.L113
	b	.L114
.L112:
	ldr	r0, .L171+248
	bl	puts
	ldr	r3, .L171+68
	mov	r2, #1
	str	r2, [r3]
	b	.L114
.L113:
	ldr	r0, .L171+252
	bl	puts
	nop
.L114:
	ldr	r3, .L171+124
	ldr	r3, [r3]
	cmp	r3, #10
	bne	.L115
	ldr	r3, .L171+68
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L115
	ldr	r0, .L171+256
	bl	puts
	ldr	r3, .L171+328
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+332
	mov	r2, #1
	str	r2, [r3]
	b	.L111
.L115:
	ldr	r3, .L171+124
	ldr	r3, [r3]
	cmp	r3, #10
	bne	.L116
	ldr	r3, .L171+68
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L116
	ldr	r0, .L171+260
	bl	puts
	ldr	r3, .L171+328
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+332
	mov	r2, #1
	str	r2, [r3]
	b	.L111
.L116:
	ldr	r3, .L171+124
	ldr	r3, [r3]
	cmp	r3, #10
	beq	.L111
	ldr	r3, .L171+68
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L111
	ldr	r3, .L171+328
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+332
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+124
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+264
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #5
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
.L111:
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #21
	beq	.L166
	ldr	r3, .L171+124
	ldr	r3, [r3]
	cmp	r3, #10
	bne	.L118
	ldr	r3, .L171+332
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+328
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+124
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+268
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #3
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
	b	.L166
.L118:
	ldr	r3, .L171+124
	ldr	r3, [r3]
	cmp	r3, #10
	beq	.L166
	ldr	r3, .L171+124
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+272
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #4
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
	b	.L166
.L110:
	ldr	r0, .L171+252
	bl	puts
	b	.L108
.L165:
	nop
	b	.L108
.L166:
	nop
.L108:
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #8
	ble	.L167
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #11
	bgt	.L167
	ldr	r3, .L171+328
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L167
	ldr	r3, .L171+400
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L167
	ldr	r3, .L171+388
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+276
	bl	printf
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L120
	cmp	r3, #2
	beq	.L121
	b	.L119
.L120:
	ldr	r3, .L171+380
	mov	r2, #6
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
	ldr	r3, .L171+76
	mov	r2, #1
	str	r2, [r3]
	b	.L119
.L121:
	ldr	r0, .L171+280
	bl	puts
	b	.L119
.L167:
	nop
.L119:
	ldr	r3, .L171+56
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L122
	ldr	r3, .L171+124
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+284
	bl	printf
	ldr	r3, .L171+56
	mov	r2, #1
	str	r2, [r3]
.L122:
	ldr	r3, .L171+384
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+288
	bl	printf
	b	.L123
.L133:
	ldr	r3, .L171+324
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L168
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #20
	bgt	.L168
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r3, #20
	bgt	.L168
	ldr	r0, .L171+292
	bl	puts
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L125
	cmp	r3, #2
	beq	.L126
	b	.L124
.L125:
	ldr	r3, .L171+96
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	deal
	mov	r3, r0
	ldr	r2, .L171+108
	str	r3, [r2]
	ldr	r3, .L171+108
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+296
	bl	printf
	ldr	r3, .L171+388
	ldr	r2, [r3]
	ldr	r3, .L171+108
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L171+112
	str	r3, [r2]
	ldr	r3, .L171+112
	ldr	r3, [r3]
	ldr	r2, .L171+388
	str	r3, [r2]
	ldr	r3, .L171+388
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+204
	bl	printf
	ldr	r3, .L171+76
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L169
	ldr	r3, .L171+324
	mov	r2, #1
	str	r2, [r3]
	b	.L169
.L126:
	ldr	r3, .L171+324
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+388
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+300
	bl	printf
	b	.L124
.L168:
	nop
	b	.L124
.L169:
	nop
.L124:
	bl	ace_bust
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r3, #15
	bgt	.L128
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #20
	bgt	.L128
	bl	ace_bust
	ldr	r3, .L171+384
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+304
	bl	printf
	ldr	r3, .L171+96
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L171+96
	ldr	r3, [r3]
	mov	r0, r3
	bl	deal
	mov	r3, r0
	ldr	r2, .L171+128
	str	r3, [r2]
	ldr	r3, .L171+128
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+308
	bl	printf
	ldr	r3, .L171+384
	ldr	r2, [r3]
	ldr	r3, .L171+128
	ldr	r3, [r3]
	add	r3, r2, r3
	ldr	r2, .L171+132
	str	r3, [r2]
	ldr	r3, .L171+132
	ldr	r3, [r3]
	ldr	r2, .L171+384
	str	r3, [r2]
	ldr	r3, .L171+384
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+312
	bl	printf
	b	.L129
.L172:
	.align	2
.L171:
	.word	minimum_bet
	.word	1084227584
	.word	maximum_bet
	.word	1176256512
	.word	your_split_card
	.word	.LC20
	.word	.LC21
	.word	.LC23
	.word	save_money
	.word	.LC24
	.word	.LC25
	.word	1159479296
	.word	.LC26
	.word	bad_input
	.word	has_shown_2nd_card
	.word	valid_input
	.word	bad_card_check
	.word	even_money
	.word	bet_checked
	.word	double_down
	.word	already_surrendered
	.word	card
	.word	your_ace_count
	.word	dealer_ace_count
	.word	player
	.word	your_first_card
	.word	your_second_card
	.word	your_next_card
	.word	your_new_sum
	.word	your_lower_sum
	.word	dealer_first_card
	.word	dealer_second_card
	.word	dealer_next_card
	.word	dealer_new_sum
	.word	dealer_lower_sum
	.word	.LC1
	.word	.LC27
	.word	.LC28
	.word	.LC29
	.word	your_bet
	.word	.LC30
	.word	custom_bet
	.word	.LC31
	.word	.LC32
	.word	.LC33
	.word	.LC34
	.word	.LC35
	.word	.LC6
	.word	.LC36
	.word	.LC37
	.word	.LC38
	.word	.LC39
	.word	.LC40
	.word	.LC41
	.word	.LC42
	.word	.LC43
	.word	.LC44
	.word	.LC45
	.word	.LC46
	.word	.LC47
	.word	.LC48
	.word	.LC49
	.word	.LC50
	.word	.LC51
	.word	.LC52
	.word	.LC53
	.word	.LC54
	.word	.LC55
	.word	.LC56
	.word	.LC57
	.word	.LC58
	.word	.LC59
	.word	.LC60
	.word	.LC61
	.word	.LC62
	.word	.LC63
	.word	.LC64
	.word	.LC65
	.word	.LC66
	.word	.LC67
	.word	dealer_out
	.word	your_out
	.word	end_round
	.word	skip_verbose_results
	.word	.LC70
	.word	.LC71
	.word	.LC72
	.word	.LC73
	.word	you_busted
	.word	dealer_busted
	.word	.LC74
	.word	.LC75
	.word	.LC76
	.word	.LC77
	.word	.LC78
	.word	mode
	.word	dealer_sum
	.word	your_sum
	.word	.LC68
	.word	.LC69
	.word	split
	.word	.LC79
	.word	.LC80
	.word	.LC81
	.word	input
	.word	.LC82
	.word	.LC22
	.word	.LC83
	.word	your_total_money
	.word	.LC84
	.word	save
	.word	.LC85
	.word	.LC86
	.word	end_game
.L128:
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #20
	bgt	.L130
	ldr	r3, .L171+384
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+316
	bl	printf
.L130:
	ldr	r3, .L171+320
	mov	r2, #1
	str	r2, [r3]
.L129:
	ldr	r3, .L171+320
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L131
	ldr	r3, .L171+324
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L131
	ldr	r3, .L171+328
	mov	r2, #1
	str	r2, [r3]
.L131:
	bl	ace_bust
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #20
	ble	.L132
	ldr	r3, .L171+328
	mov	r2, #1
	str	r2, [r3]
.L132:
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r3, #20
	ble	.L123
	ldr	r3, .L171+328
	mov	r2, #1
	str	r2, [r3]
.L123:
	ldr	r3, .L171+328
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L133
	bl	lucky_stars
	ldr	r3, .L171+332
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L134
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r3, #21
	bne	.L135
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #21
	bne	.L135
	ldr	r3, .L171+388
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+392
	bl	printf
	ldr	r3, .L171+432
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+396
	bl	printf
.L135:
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #21
	ble	.L136
	ldr	r0, .L171+336
	bl	puts
	ldr	r3, .L171+352
	mov	r2, #1
	str	r2, [r3]
.L136:
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r3, #21
	ble	.L137
	ldr	r0, .L171+340
	bl	puts
	ldr	r3, .L171+356
	mov	r2, #1
	str	r2, [r3]
.L137:
	ldr	r3, .L171+352
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L138
	ldr	r3, .L171+356
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L138
	ldr	r0, .L171+344
	bl	puts
	ldr	r3, .L171+432
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+348
	bl	printf
.L138:
	ldr	r3, .L171+352
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L139
	ldr	r3, .L171+356
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L139
	ldr	r3, .L171+388
	ldr	r3, [r3]
	ldr	r2, .L171+384
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L171+360
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
.L139:
	ldr	r3, .L171+352
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L140
	ldr	r3, .L171+356
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L140
	ldr	r3, .L171+384
	ldr	r3, [r3]
	ldr	r2, .L171+388
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L171+364
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
.L140:
	ldr	r3, .L171+352
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L134
	ldr	r3, .L171+356
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L134
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #21
	bne	.L141
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r3, #21
	beq	.L141
	ldr	r3, .L171+388
	ldr	r3, [r3]
	ldr	r2, .L171+384
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L171+360
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
.L141:
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #21
	beq	.L142
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r3, #21
	bne	.L142
	ldr	r3, .L171+384
	ldr	r3, [r3]
	ldr	r2, .L171+388
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L171+364
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
.L142:
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r3, #21
	beq	.L134
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r3, #21
	beq	.L134
	ldr	r0, .L171+368
	bl	puts
	ldr	r3, .L171+388
	ldr	r2, [r3]
	ldr	r3, .L171+384
	ldr	r3, [r3]
	cmp	r2, r3
	ble	.L143
	ldr	r3, .L171+388
	ldr	r3, [r3]
	ldr	r2, .L171+384
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L171+372
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #2
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
.L143:
	ldr	r3, .L171+384
	ldr	r2, [r3]
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r2, r3
	ble	.L144
	ldr	r3, .L171+384
	ldr	r3, [r3]
	ldr	r2, .L171+388
	ldr	r2, [r2]
	mov	r1, r3
	ldr	r0, .L171+376
	bl	printf
	ldr	r3, .L171+380
	mov	r2, #1
	str	r2, [r3]
	ldr	r3, .L171+380
	ldr	r3, [r3]
	mov	r0, r3
	bl	gamble
.L144:
	ldr	r3, .L171+384
	ldr	r2, [r3]
	ldr	r3, .L171+388
	ldr	r3, [r3]
	cmp	r2, r3
	bne	.L134
	ldr	r3, .L171+388
	ldr	r3, [r3]
	mov	r1, r3
	ldr	r0, .L171+392
	bl	printf
	ldr	r3, .L171+432
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r0, .L171+396
	bl	printf
.L134:
	ldr	r3, .L171+400
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L170
	ldr	r0, .L171+404
	bl	puts
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L145
	cmp	r3, #2
	beq	.L146
	b	.L81
.L145:
	ldr	r0, .L171+408
	bl	puts
	b	.L81
.L146:
	ldr	r0, .L171+412
	bl	puts
	bl	get_input
	ldr	r3, .L171+416
	ldr	r3, [r3]
	cmp	r3, #1
	beq	.L147
	cmp	r3, #2
	beq	.L148
	b	.L149
.L147:
	ldr	r1, .L171+420
	ldr	r0, .L171+424
	bl	fopen
	mov	r3, r0
	ldr	r2, .L171+440
	str	r3, [r2]
	ldr	r3, .L171+440
	ldr	r3, [r3]
	cmp	r3, #0
	bne	.L150
	ldr	r0, .L171+428
	bl	puts
	b	.L149
.L150:
	ldr	r3, .L171+440
	ldr	r4, [r3]
	ldr	r3, .L171+432
	ldr	r3, [r3]	@ float
	mov	r0, r3
	bl	__aeabi_f2d
	mov	r2, r0
	mov	r3, r1
	ldr	r1, .L171+436
	mov	r0, r4
	bl	fprintf
	ldr	r3, .L171+440
	ldr	r3, [r3]
	mov	r0, r3
	bl	fclose
	ldr	r0, .L171+444
	bl	puts
	b	.L149
.L148:
	ldr	r0, .L171+448
	bl	puts
	nop
.L149:
	ldr	r3, .L171+452
	mov	r2, #1
	str	r2, [r3]
	bl	lucky_stars
	b	.L81
.L170:
	nop
.L81:
	ldr	r3, .L171+452
	ldr	r3, [r3]
	cmp	r3, #0
	beq	.L152
	mov	r3, #0
	mov	r0, r3
	pop	{r4, r5, fp, pc}
	.size	main, .-main
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
