	.file	"extr_proc.c_date_unix2dos.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.type	date_unix2dos, @function
date_unix2dos:
.LFB0:
	.cfi_startproc
	endbr64
	push	rbp
	.cfi_def_cfa_offset 16
	.cfi_offset 6, -16
	mov	rbp, rcx
	push	rbx
	.cfi_def_cfa_offset 24
	.cfi_offset 3, -24
	mov	rbx, rdx
	sub	rsp, 8
	.cfi_def_cfa_offset 32
	call	utc2local@PLT
	mov	edx, 315532800
	mov	edi, 2290649225
	cmp	eax, 315532800
	cmovl	eax, edx
	mov	ecx, eax
	mov	rsi, rcx
	imul	rsi, rdi
	shr	rsi, 37
	mov	edx, esi
	imul	rdx, rdi
	mov	edi, esi
	imul	esi, esi, 60
	shr	rdx, 37
	imul	edx, edx, 60
	sub	eax, esi
	sar	eax
	sub	edi, edx
	mov	edx, edi
	mov	edi, 2863311531
	sal	edx, 5
	add	eax, edx
	mov	edx, 2443359173
	imul	rdx, rcx
	shr	rdx, 43
	mov	esi, edx
	imul	rsi, rdi
	shr	rsi, 36
	lea	esi, [rsi+rsi*2]
	sal	esi, 3
	sub	edx, esi
	sal	edx, 11
	add	edx, eax
	mov	eax, 3257812231
	imul	rcx, rax
	mov	DWORD PTR 0[rbp], edx
	shr	rcx, 48
	lea	eax, -3652[rcx]
	mov	rcx, rax
	imul	rax, rax, 1729753953
	mov	esi, ecx
	shr	rax, 32
	sub	esi, eax
	shr	esi
	add	esi, eax
	shr	esi, 8
	imul	edx, esi, 365
	lea	eax, 3[rsi]
	sar	eax, 2
	add	eax, edx
	cmp	eax, ecx
	jle	.L2
	lea	eax, 2[rsi]
	sub	esi, 1
	sar	eax, 2
	lea	eax, -365[rdx+rax]
.L2:
	sub	ecx, eax
	mov	eax, esi
	mov	r8, QWORD PTR day_n[rip]
	and	eax, 3
	cmp	ecx, 59
	je	.L17
	jle	.L5
	test	eax, eax
	sete	al
	cmp	al, 1
	adc	ecx, -1
.L5:
	mov	eax, 1
	.p2align 4,,10
	.p2align 3
.L7:
	mov	edx, eax
	lea	rdi, 0[0+rax*4]
	cmp	DWORD PTR [r8+rax*4], ecx
	jg	.L18
	add	rax, 1
	cmp	rax, 12
	jne	.L7
	mov	edx, 384
	mov	edi, 44
.L4:
	sub	ecx, DWORD PTR [r8+rdi]
	sal	esi, 9
	lea	eax, 1[rdx+rcx]
	add	esi, eax
	mov	DWORD PTR [rbx], esi
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 24
	pop	rbx
	.cfi_def_cfa_offset 16
	pop	rbp
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L17:
	.cfi_restore_state
	test	eax, eax
	jne	.L5
	mov	edx, 64
	mov	edi, 4
	jmp	.L4
	.p2align 4,,10
	.p2align 3
.L18:
	sub	rdi, 4
	sal	edx, 5
	jmp	.L4
	.cfi_endproc
.LFE0:
	.size	date_unix2dos, .-date_unix2dos
	.comm	day_n,8,8
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.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, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_proc.c_date_unix2dos.c"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	date_unix2dos, %function
date_unix2dos:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, lr}
	mov	r5, r3
	mov	r4, r2
	bl	utc2local
	ldr	r3, .L17
	ldr	r2, .L17+4
	cmp	r0, r3
	movlt	r7, r3
	movge	r7, r0
	ldr	ip, .L17+8
	umull	r3, r2, r7, r2
	umull	r3, r0, ip, r7
	ldr	r6, .L17+12
	lsr	r2, r2, #16
	ldr	lr, .L17+16
	sub	r2, r2, #3648
	sub	r2, r2, #4
	lsr	r0, r0, #5
	umull	r3, r6, r7, r6
	smull	r3, lr, r2, lr
	umull	r3, ip, r0, ip
	ldr	r8, .L17+20
	lsr	r6, r6, #11
	umull	r1, r8, r6, r8
	add	r3, lr, r2
	asr	r1, r2, #31
	lsr	ip, ip, #5
	rsb	lr, r1, r3, asr #8
	rsb	ip, ip, ip, lsl #4
	rsb	r3, r0, r0, lsl #4
	sub	ip, r0, ip, lsl #2
	sub	r0, r7, r3, lsl #2
	add	r3, lr, lr, lsl #3
	add	r3, lr, r3, lsl #3
	add	r3, r3, r3, lsl #2
	add	r1, lr, #3
	add	r1, r3, r1, asr #2
	cmp	r1, r2
	subgt	r3, r3, #364
	addgt	r1, lr, #2
	subgt	r3, r3, #1
	lsr	r8, r8, #4
	addgt	r1, r3, r1, asr #2
	asr	r0, r0, #1
	add	r8, r8, r8, lsl #1
	sub	r3, r2, r1
	add	r0, r0, ip, lsl #5
	ldr	r2, .L17+24
	sub	r6, r6, r8, lsl #3
	subgt	lr, lr, #1
	add	r0, r0, r6, lsl #11
	cmp	r3, #59
	ldr	ip, [r2]
	str	r0, [r5]
	and	r1, lr, #3
	beq	.L15
	movgt	r2, #1
	movle	r2, #0
	cmp	r1, #0
	movne	r2, #0
	cmp	r2, #0
	subne	r3, r3, #1
.L5:
	mov	r2, ip
	mov	r1, #1
.L7:
	ldr	r0, [r2, #4]!
	cmp	r0, r3
	bgt	.L16
	add	r1, r1, #1
	cmp	r1, #12
	bne	.L7
	mov	r1, #384
	mov	r2, #44
.L4:
	ldr	r2, [ip, r2]
	sub	r3, r3, r2
	add	r3, r3, #1
	add	r1, r3, r1
	add	r1, r1, lr, lsl #9
	str	r1, [r4]
	pop	{r4, r5, r6, r7, r8, pc}
.L15:
	cmp	r1, #0
	moveq	r1, #64
	moveq	r2, #4
	beq	.L4
	b	.L5
.L16:
	sub	r2, r1, #-1073741823
	lsl	r2, r2, #2
	lsl	r1, r1, #5
	b	.L4
.L18:
	.align	2
.L17:
	.word	315532800
	.word	-1037155065
	.word	-2004318071
	.word	-1851608123
	.word	-1282606671
	.word	-1431655765
	.word	day_n
	.size	date_unix2dos, .-date_unix2dos
	.comm	day_n,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
