	.file	"extr_proto-smb.c_smb1_parse_setup2.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC0:
	.string	" os="
.LC1:
	.string	" ver="
.LC2:
	.string	" domain="
	.text
	.p2align 4
	.type	smb1_parse_setup2, @function
smb1_parse_setup2:
.LFB0:
	.cfi_startproc
	endbr64
	push	r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	push	r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	mov	r13, r8
	mov	r8, rdx
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	mov	rbp, rdi
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	sub	rsp, 40
	.cfi_def_cfa_offset 96
	mov	rax, QWORD PTR 16[rdi]
	mov	r15d, DWORD PTR [rdi]
	mov	QWORD PTR 8[rsp], rdx
	sub	r8, rax
	add	r8, QWORD PTR 8[rdi]
	cmp	r8, rcx
	cmovbe	rcx, r8
	cmp	rcx, rdx
	jbe	.L2
	mov	r12, rsi
	mov	r14, rcx
	mov	rbx, rdx
.L65:
	cmp	r15d, 21
	ja	.L3
	lea	rcx, .L5[rip]
	mov	eax, r15d
	movsx	rax, DWORD PTR [rcx+rax*4]
	add	rax, rcx
	notrack jmp	rax
	.section	.rodata
	.align 4
	.align 4
.L5:
	.long	.L20-.L5
	.long	.L19-.L5
	.long	.L18-.L5
	.long	.L17-.L5
	.long	.L21-.L5
	.long	.L15-.L5
	.long	.L22-.L5
	.long	.L13-.L5
	.long	.L71-.L5
	.long	.L3-.L5
	.long	.L6-.L5
	.long	.L11-.L5
	.long	.L6-.L5
	.long	.L73-.L5
	.long	.L6-.L5
	.long	.L9-.L5
	.long	.L6-.L5
	.long	.L75-.L5
	.long	.L6-.L5
	.long	.L7-.L5
	.long	.L6-.L5
	.long	.L4-.L5
	.text
.L18:
	test	BYTE PTR 25[rbp], -128
	jne	.L29
	.p2align 4,,10
	.p2align 3
.L67:
	cmp	r14, rbx
	jbe	.L115
.L17:
	lea	r15, [r12+rbx]
	add	rbx, 1
	cmp	BYTE PTR [r15], 0
	je	.L99
	mov	ecx, DWORD PTR AUTO_LEN[rip]
	mov	esi, DWORD PTR PROTO_SMB[rip]
	lea	rdx, .LC0[rip]
	mov	rdi, r13
	call	banout_append@PLT
	movzx	edx, BYTE PTR [r15]
.L33:
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_char@PLT
	cmp	r14, rbx
	jbe	.L116
.L21:
	movzx	edx, BYTE PTR [r12+rbx]
	add	rbx, 1
	test	dl, dl
	jne	.L33
.L99:
	cmp	r14, rbx
	jbe	.L117
.L15:
	lea	r15, [r12+rbx]
	add	rbx, 1
	cmp	BYTE PTR [r15], 0
	je	.L102
	mov	ecx, DWORD PTR AUTO_LEN[rip]
	mov	esi, DWORD PTR PROTO_SMB[rip]
	lea	rdx, .LC1[rip]
	mov	rdi, r13
	call	banout_append@PLT
	movzx	edx, BYTE PTR [r15]
.L35:
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_char@PLT
	cmp	r14, rbx
	jbe	.L118
.L22:
	movzx	edx, BYTE PTR [r12+rbx]
	add	rbx, 1
	test	dl, dl
	jne	.L35
.L102:
	cmp	r14, rbx
	jbe	.L119
.L13:
	lea	r10, [r12+rbx]
	lea	r15, 1[rbx]
	cmp	BYTE PTR [r10], 0
	jne	.L36
.L112:
	cmp	r14, r15
	jbe	.L120
	lea	rdx, 2[rbx]
	cmp	r14, rdx
	jbe	.L64
	lea	rax, 3[rbx]
	cmp	r14, rax
	jbe	.L79
	add	rbx, 4
	mov	r15d, 22
	cmp	r14, rbx
	ja	.L3
	jmp	.L31
	.p2align 4,,10
	.p2align 3
.L19:
	cmp	r14, rbx
	jbe	.L121
.L28:
	test	BYTE PTR 25[rbp], -128
	je	.L67
.L66:
	movzx	eax, BYTE PTR [r12+rbx]
	add	rbx, 1
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	jbe	.L122
.L11:
	cmp	BYTE PTR 28[rbp], 0
	lea	r15, 1[rbx]
	jne	.L41
	cmp	r14, r15
	jbe	.L42
	movzx	eax, BYTE PTR [r12+r15]
	add	rbx, 2
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	jbe	.L91
.L9:
	cmp	BYTE PTR 28[rbp], 0
	lea	r15, 1[rbx]
	jne	.L48
	cmp	r14, r15
	jbe	.L49
	movzx	eax, BYTE PTR [r12+r15]
	add	rbx, 2
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	jbe	.L90
	.p2align 4,,10
	.p2align 3
.L7:
	cmp	BYTE PTR 28[rbp], 0
	lea	r15, 1[rbx]
	je	.L112
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	ecx, DWORD PTR AUTO_LEN[rip]
	lea	rdx, .LC2[rip]
	mov	rdi, r13
	call	banout_append@PLT
	movzx	edx, BYTE PTR 28[rbp]
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_unicode@PLT
	cmp	r14, r15
	jbe	.L58
	movzx	eax, BYTE PTR [r12+r15]
	add	rbx, 2
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	jbe	.L78
.L4:
	mov	r15, rbx
.L59:
	movzx	edx, BYTE PTR 28[rbp]
	lea	rbx, 1[r15]
	test	dl, dl
	je	.L113
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_unicode@PLT
	cmp	r14, rbx
	jbe	.L63
	movzx	eax, BYTE PTR [r12+rbx]
	add	r15, 2
	mov	BYTE PTR 28[rbp], al
	cmp	r14, r15
	ja	.L59
	mov	rbx, r15
	mov	r15d, 21
	jmp	.L31
.L117:
	mov	rax, QWORD PTR 16[rbp]
	mov	r8, rbx
	mov	r15d, 5
	sub	r8, QWORD PTR 8[rsp]
.L27:
	sub	bx, WORD PTR 8[rsp]
	mov	DWORD PTR 0[rbp], r15d
	movzx	ebx, bx
	add	rbx, rax
	mov	rax, r8
	mov	QWORD PTR 16[rbp], rbx
	add	rsp, 40
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	pop	rbx
	.cfi_def_cfa_offset 48
	pop	rbp
	.cfi_def_cfa_offset 40
	pop	r12
	.cfi_def_cfa_offset 32
	pop	r13
	.cfi_def_cfa_offset 24
	pop	r14
	.cfi_def_cfa_offset 16
	pop	r15
	.cfi_def_cfa_offset 8
	ret
.L119:
	.cfi_restore_state
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 7
	jmp	.L27
	.p2align 4,,10
	.p2align 3
.L38:
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_char@PLT
	cmp	r14, rbx
	jbe	.L123
.L71:
	mov	r15, rbx
.L23:
	movzx	edx, BYTE PTR [r12+r15]
	lea	rbx, 1[r15]
	test	dl, dl
	jne	.L38
.L113:
	cmp	r14, rbx
	jbe	.L94
	lea	rbx, 2[r15]
	cmp	r14, rbx
	jbe	.L94
	lea	rbx, 3[r15]
	cmp	r14, rbx
	jbe	.L81
	lea	rbx, 4[r15]
	mov	r15d, 22
	cmp	r14, rbx
	ja	.L3
	jmp	.L31
	.p2align 4,,10
	.p2align 3
.L36:
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	ecx, DWORD PTR AUTO_LEN[rip]
	mov	rdi, r13
	mov	QWORD PTR 16[rsp], r10
	lea	rdx, .LC2[rip]
	call	banout_append@PLT
	mov	r10, QWORD PTR 16[rsp]
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	movzx	edx, BYTE PTR [r10]
	call	banout_append_char@PLT
	cmp	r14, r15
	ja	.L23
	mov	r8, r15
	mov	rbx, r15
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 8
	jmp	.L27
	.p2align 4,,10
	.p2align 3
.L41:
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	ecx, DWORD PTR AUTO_LEN[rip]
	lea	rdx, .LC0[rip]
	mov	rdi, r13
	call	banout_append@PLT
	movzx	edx, BYTE PTR 28[rbp]
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_unicode@PLT
	cmp	r14, r15
	jbe	.L43
	movzx	eax, BYTE PTR [r12+r15]
	add	rbx, 2
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	jbe	.L72
.L73:
	movzx	edx, BYTE PTR 28[rbp]
	mov	r15, rbx
	add	rbx, 1
	test	dl, dl
	jne	.L45
	cmp	r14, rbx
	jbe	.L46
	movzx	eax, BYTE PTR [r12+rbx]
	lea	rbx, 2[r15]
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	ja	.L9
.L91:
	mov	r15d, 15
	jmp	.L31
	.p2align 4,,10
	.p2align 3
.L48:
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	ecx, DWORD PTR AUTO_LEN[rip]
	lea	rdx, .LC1[rip]
	mov	rdi, r13
	call	banout_append@PLT
	movzx	edx, BYTE PTR 28[rbp]
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_unicode@PLT
	cmp	r14, r15
	jbe	.L50
	movzx	eax, BYTE PTR [r12+r15]
	add	rbx, 2
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	jbe	.L74
.L75:
	movzx	edx, BYTE PTR 28[rbp]
	mov	r15, rbx
	add	rbx, 1
	test	dl, dl
	jne	.L52
	cmp	r14, rbx
	jbe	.L53
	movzx	eax, BYTE PTR [r12+rbx]
	lea	rbx, 2[r15]
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	ja	.L7
.L90:
	mov	r15d, 19
	jmp	.L31
	.p2align 4,,10
	.p2align 3
.L94:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 22
	jmp	.L27
	.p2align 4,,10
	.p2align 3
.L2:
	mov	rbx, QWORD PTR 8[rsp]
	movzx	r15d, r15w
	xor	r8d, r8d
	jmp	.L27
.L120:
	mov	r8, r15
	mov	rbx, r15
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 22
	jmp	.L27
.L121:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 2
	jmp	.L27
.L6:
	movzx	eax, BYTE PTR [r12+rbx]
	add	r15d, 1
	mov	BYTE PTR 28[rbp], al
.L3:
	add	rbx, 1
	cmp	r14, rbx
	ja	.L65
.L31:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	movzx	r15d, r15w
	sub	r8, QWORD PTR 8[rsp]
	jmp	.L27
	.p2align 4,,10
	.p2align 3
.L20:
	lea	rcx, 48[rbp]
	mov	rax, QWORD PTR 32[rbp]
	mov	rsi, QWORD PTR 40[rbp]
	mov	rdx, rbx
	mov	QWORD PTR 24[rsp], rcx
	.p2align 4,,10
	.p2align 3
.L26:
	test	rax, rax
	je	.L124
.L24:
	add	rsi, rdx
	mov	rdi, QWORD PTR 24[rsp]
	mov	rcx, r13
	sub	rsi, rax
	cmp	rsi, r14
	cmova	rsi, r14
	mov	r11, rsi
	mov	rbx, rsi
	lea	rsi, [r12+rdx]
	sub	r11, rdx
	mov	rdx, r11
	mov	QWORD PTR 16[rsp], r11
	call	spnego_decode@PLT
	mov	rax, QWORD PTR 32[rbp]
	mov	r11, QWORD PTR 16[rsp]
	mov	rsi, QWORD PTR 40[rbp]
	add	rax, r11
	mov	QWORD PTR 32[rbp], rax
	cmp	rax, rsi
	je	.L25
	lea	rdx, 1[rbx]
	cmp	r14, rdx
	ja	.L26
	mov	r8, rdx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	rbx, rdx
	jmp	.L27
.L116:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 4
	jmp	.L27
.L118:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 6
	jmp	.L27
.L115:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 3
	jmp	.L27
.L29:
	cmp	r14, rbx
	ja	.L66
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 10
	jmp	.L27
.L123:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 8
	jmp	.L27
	.p2align 4,,10
	.p2align 3
.L25:
	cmp	r14, rbx
	ja	.L28
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 1
	jmp	.L27
	.p2align 4,,10
	.p2align 3
.L124:
	mov	rdi, QWORD PTR 24[rsp]
	mov	QWORD PTR 16[rsp], rdx
	call	spnego_decode_init@PLT
	mov	rsi, QWORD PTR 40[rbp]
	mov	rax, QWORD PTR 32[rbp]
	mov	rdx, QWORD PTR 16[rsp]
	jmp	.L24
.L45:
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_unicode@PLT
	cmp	r14, rbx
	jbe	.L47
	movzx	eax, BYTE PTR [r12+rbx]
	lea	rbx, 2[r15]
	mov	BYTE PTR 28[rbp], al
	cmp	r14, rbx
	ja	.L73
.L72:
	mov	r15d, 13
	jmp	.L31
	.p2align 4,,10
	.p2align 3
.L52:
	mov	esi, DWORD PTR PROTO_SMB[rip]
	mov	rdi, r13
	call	banout_append_unicode@PLT
	cmp	r14, rbx
	jbe	.L54
	movzx	eax, BYTE PTR [r12+rbx]
	lea	rbx, 2[r15]
	mov	BYTE PTR 28[rbp], al
	cmp	rbx, r14
	jb	.L75
.L74:
	mov	r15d, 17
	jmp	.L31
	.p2align 4,,10
	.p2align 3
.L64:
	mov	r8, rdx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	rbx, rdx
	mov	r15d, 22
	jmp	.L27
.L53:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 18
	jmp	.L27
.L42:
	mov	r8, r15
	mov	rbx, r15
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 14
	jmp	.L27
.L49:
	mov	r8, r15
	mov	rbx, r15
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 18
	jmp	.L27
.L46:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 14
	jmp	.L27
.L47:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 12
	jmp	.L27
.L50:
	mov	r8, r15
	mov	rbx, r15
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 16
	jmp	.L27
.L43:
	mov	r8, r15
	mov	rbx, r15
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 12
	jmp	.L27
.L54:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 16
	jmp	.L27
.L63:
	mov	r8, rbx
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 20
	jmp	.L27
.L58:
	mov	r8, r15
	mov	rbx, r15
	mov	rax, QWORD PTR 16[rbp]
	sub	r8, QWORD PTR 8[rsp]
	mov	r15d, 20
	jmp	.L27
.L122:
	mov	r15d, 11
	jmp	.L31
.L79:
	mov	rbx, rax
	mov	r15d, 22
	jmp	.L31
.L78:
	mov	r15d, 21
	jmp	.L31
.L81:
	mov	r15d, 22
	jmp	.L31
	.cfi_endproc
.LFE0:
	.size	smb1_parse_setup2, .-smb1_parse_setup2
	.comm	PROTO_SMB,4,4
	.comm	AUTO_LEN,4,4
	.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_proto-smb.c_smb1_parse_setup2.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	" os=\000"
	.align	2
.LC1:
	.ascii	" ver=\000"
	.align	2
.LC2:
	.ascii	" domain=\000"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	smb1_parse_setup2, %function
smb1_parse_setup2:
	@ args = 4, pretend = 0, frame = 16
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	mov	r7, r2
	mov	r6, r0
	ldmib	r0, {r0, r2}
	sub	r5, r7, r2
	add	r5, r5, r0
	cmp	r5, r3
	movcs	r5, r3
	sub	sp, sp, #20
	cmp	r5, r7
	ldr	r9, [r6]
	ldr	r10, [sp, #56]
	bls	.L2
	mov	r8, r1
	mov	r4, r7
	ldr	fp, .L118
.L65:
	cmp	r9, #21
	ldrls	pc, [pc, r9, asl #2]
	b	.L3
.L5:
	.word	.L20
	.word	.L19
	.word	.L18
	.word	.L17
	.word	.L16
	.word	.L15
	.word	.L14
	.word	.L13
	.word	.L68
	.word	.L3
	.word	.L6
	.word	.L11
	.word	.L6
	.word	.L73
	.word	.L6
	.word	.L9
	.word	.L6
	.word	.L75
	.word	.L6
	.word	.L7
	.word	.L6
	.word	.L4
.L18:
	ldr	r3, [r6, #12]
	tst	r3, #32768
	bne	.L29
.L67:
	cmp	r5, r4
	bls	.L110
.L17:
	add	r9, r8, r4
	ldrb	r3, [r9]	@ zero_extendqisi2
	add	r4, r4, #1
	cmp	r3, #0
	bne	.L32
.L98:
	cmp	r5, r4
	bls	.L111
.L15:
	add	r9, r8, r4
	ldrb	r3, [r9]	@ zero_extendqisi2
	add	r4, r4, #1
	cmp	r3, #0
	bne	.L34
.L100:
	cmp	r5, r4
	bls	.L112
.L13:
	ldrb	r3, [r8, r4]	@ zero_extendqisi2
	add	r9, r4, #1
	cmp	r3, #0
	bne	.L36
.L108:
	cmp	r5, r9
	bls	.L64
	add	r9, r4, #2
	cmp	r5, r9
	bls	.L64
	add	r3, r4, #3
	cmp	r5, r3
	bls	.L79
	add	r4, r4, #4
	cmp	r5, r4
	mov	r9, #22
	bhi	.L3
	b	.L31
.L19:
	cmp	r5, r4
	bls	.L113
.L28:
	ldr	r3, [r6, #12]
	tst	r3, #32768
	beq	.L67
.L66:
	ldrb	r3, [r8, r4]	@ zero_extendqisi2
	add	r4, r4, #1
	cmp	r5, r4
	strb	r3, [r6, #16]
	bls	.L114
.L11:
	ldrb	r3, [r6, #16]	@ zero_extendqisi2
	add	r9, r4, #1
	cmp	r3, #0
	bne	.L41
	cmp	r5, r9
	bls	.L42
	ldrb	r3, [r8, r9]	@ zero_extendqisi2
	add	r4, r4, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bls	.L91
.L9:
	ldrb	r3, [r6, #16]	@ zero_extendqisi2
	add	r9, r4, #1
	cmp	r3, #0
	bne	.L48
	cmp	r5, r9
	bls	.L49
	ldrb	r3, [r8, r9]	@ zero_extendqisi2
	add	r4, r4, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bls	.L90
.L7:
	ldrb	r3, [r6, #16]	@ zero_extendqisi2
	add	r9, r4, #1
	cmp	r3, #0
	beq	.L108
	ldr	r3, .L118+4
	ldr	r2, .L118+8
	ldr	r3, [r3]
	ldr	r1, [fp]
	mov	r0, r10
	bl	banout_append
	mov	r0, r10
	ldrb	r2, [r6, #16]	@ zero_extendqisi2
	ldr	r1, [fp]
	bl	banout_append_unicode
	cmp	r5, r9
	bls	.L58
	ldrb	r3, [r8, r9]	@ zero_extendqisi2
	add	r4, r4, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bls	.L78
.L4:
	mov	r9, r4
.L59:
	ldrb	r2, [r6, #16]	@ zero_extendqisi2
	add	r4, r9, #1
	cmp	r2, #0
	bne	.L60
	cmp	r5, r4
	bhi	.L61
.L92:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #22
	ldr	r2, [r6, #8]
	b	.L27
.L111:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #5
	ldr	r2, [r6, #8]
.L27:
	lsl	r4, r4, #16
	lsr	r4, r4, #16
	add	r4, r4, r2
	str	r4, [r6, #8]
	str	r9, [r6]
	add	sp, sp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L112:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #7
	ldr	r2, [r6, #8]
	b	.L27
.L34:
	ldr	r3, .L118+4
	ldr	r2, .L118+12
	ldr	r3, [r3]
	ldr	r1, [fp]
	mov	r0, r10
	bl	banout_append
	mov	r0, r10
	ldrb	r2, [r9]	@ zero_extendqisi2
	ldr	r1, [fp]
	bl	banout_append_char
	cmp	r5, r4
	bls	.L94
.L14:
	sub	r9, r4, #1
	add	r9, r8, r9
.L22:
	ldrb	r2, [r9, #1]!	@ zero_extendqisi2
	add	r4, r4, #1
	cmp	r2, #0
	beq	.L100
	mov	r0, r10
	ldr	r1, [fp]
	bl	banout_append_char
	cmp	r5, r4
	bhi	.L22
.L94:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #6
	ldr	r2, [r6, #8]
	b	.L27
.L32:
	ldr	r3, .L118+4
	ldr	r2, .L118+16
	ldr	r3, [r3]
	ldr	r1, [fp]
	mov	r0, r10
	bl	banout_append
	mov	r0, r10
	ldrb	r2, [r9]	@ zero_extendqisi2
	ldr	r1, [fp]
	bl	banout_append_char
	cmp	r5, r4
	bls	.L93
.L16:
	sub	r9, r4, #1
	add	r9, r8, r9
.L21:
	ldrb	r2, [r9, #1]!	@ zero_extendqisi2
	add	r4, r4, #1
	cmp	r2, #0
	beq	.L98
	mov	r0, r10
	ldr	r1, [fp]
	bl	banout_append_char
	cmp	r5, r4
	bhi	.L21
.L93:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #4
	ldr	r2, [r6, #8]
	b	.L27
.L41:
	ldr	r3, .L118+4
	ldr	r2, .L118+16
	ldr	r3, [r3]
	ldr	r1, [fp]
	mov	r0, r10
	bl	banout_append
	mov	r0, r10
	ldrb	r2, [r6, #16]	@ zero_extendqisi2
	ldr	r1, [fp]
	bl	banout_append_unicode
	cmp	r5, r9
	bls	.L43
	ldrb	r3, [r8, r9]	@ zero_extendqisi2
	add	r4, r4, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bls	.L72
.L73:
	ldrb	r2, [r6, #16]	@ zero_extendqisi2
	mov	r9, r4
	cmp	r2, #0
	add	r4, r4, #1
	bne	.L45
	cmp	r5, r4
	bls	.L46
	ldrb	r3, [r8, r4]	@ zero_extendqisi2
	add	r4, r9, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bhi	.L9
.L91:
	mov	r9, #15
	b	.L31
.L48:
	ldr	r3, .L118+4
	ldr	r2, .L118+12
	ldr	r3, [r3]
	ldr	r1, [fp]
	mov	r0, r10
	bl	banout_append
	mov	r0, r10
	ldrb	r2, [r6, #16]	@ zero_extendqisi2
	ldr	r1, [fp]
	bl	banout_append_unicode
	cmp	r5, r9
	bls	.L50
	ldrb	r3, [r8, r9]	@ zero_extendqisi2
	add	r4, r4, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bls	.L74
.L75:
	ldrb	r2, [r6, #16]	@ zero_extendqisi2
	mov	r9, r4
	cmp	r2, #0
	add	r4, r4, #1
	bne	.L52
	cmp	r5, r4
	bls	.L53
	ldrb	r3, [r8, r4]	@ zero_extendqisi2
	add	r4, r9, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bhi	.L7
.L90:
	mov	r9, #19
	b	.L31
.L36:
	ldr	r3, .L118+4
	ldr	r2, .L118+8
	ldr	r3, [r3]
	ldr	r1, [fp]
	mov	r0, r10
	bl	banout_append
	mov	r0, r10
	ldrb	r2, [r8, r4]	@ zero_extendqisi2
	ldr	r1, [fp]
	bl	banout_append_char
	cmp	r5, r9
	bls	.L115
.L12:
	sub	r3, r9, #1
	add	r3, r8, r3
	mov	r4, r3
	mov	r3, r9
	mov	r9, r8
	mov	r8, r5
.L23:
	ldrb	r2, [r4, #1]!	@ zero_extendqisi2
	add	r5, r3, #1
	cmp	r2, #0
	bne	.L38
	mov	r4, r5
	mov	r5, r8
	cmp	r5, r4
	mov	r8, r9
	mov	r9, r3
	bls	.L92
.L61:
	add	r4, r9, #2
	cmp	r5, r4
	bls	.L92
	add	r4, r9, #3
	cmp	r5, r4
	bls	.L81
	add	r4, r9, #4
	cmp	r5, r4
	mov	r9, #22
	bhi	.L3
	b	.L31
.L38:
	mov	r0, r10
	ldr	r1, [fp]
	bl	banout_append_char
	cmp	r8, r5
	bls	.L116
	mov	r3, r5
	b	.L23
.L64:
	sub	r0, r9, r7
	mov	r4, r0
	mov	r9, #22
	ldr	r2, [r6, #8]
	b	.L27
.L2:
	mov	r0, #0
	lsl	r9, r9, #16
	mov	r4, r0
	lsr	r9, r9, #16
	b	.L27
.L113:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #2
	ldr	r2, [r6, #8]
	b	.L27
.L6:
	ldrb	r3, [r8, r4]	@ zero_extendqisi2
	add	r9, r9, #1
	strb	r3, [r6, #16]
.L3:
	add	r4, r4, #1
	cmp	r5, r4
	bhi	.L65
.L31:
	lsl	r9, r9, #16
	sub	r4, r4, r7
	mov	r0, r4
	ldr	r2, [r6, #8]
	lsr	r9, r9, #16
	b	.L27
.L68:
	mov	r9, r4
	b	.L12
.L20:
	add	r0, r6, #28
	str	r9, [sp, #12]
	str	r7, [sp, #8]
	mov	r9, r0
	mov	r7, r4
	ldr	r2, [r6, #20]
	ldr	r1, [r6, #24]
	str	r8, [sp, #4]
.L26:
	cmp	r2, #0
	beq	.L117
.L24:
	add	r4, r1, r7
	sub	r4, r4, r2
	cmp	r4, r5
	movcs	r4, r5
	ldr	r3, [sp, #4]
	sub	r8, r4, r7
	add	r1, r3, r7
	mov	r2, r8
	mov	r3, r10
	mov	r0, r9
	bl	spnego_decode
	ldr	r3, [r6, #20]
	ldr	r1, [r6, #24]
	add	r2, r8, r3
	cmp	r2, r1
	add	r7, r4, #1
	str	r2, [r6, #20]
	beq	.L25
	cmp	r5, r7
	bhi	.L26
	mov	r3, r7
	ldr	r7, [sp, #8]
	ldr	r9, [sp, #12]
	sub	r0, r3, r7
	mov	r4, r0
	ldr	r2, [r6, #8]
	b	.L27
.L110:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #3
	ldr	r2, [r6, #8]
	b	.L27
.L29:
	cmp	r5, r4
	bhi	.L66
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #10
	ldr	r2, [r6, #8]
	b	.L27
.L25:
	cmp	r5, r4
	ldr	r8, [sp, #4]
	ldr	r7, [sp, #8]
	bhi	.L28
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #1
	ldr	r2, [r6, #8]
	b	.L27
.L60:
	mov	r0, r10
	ldr	r1, [fp]
	bl	banout_append_unicode
	cmp	r5, r4
	add	r9, r9, #2
	bls	.L63
	ldrb	r3, [r8, r4]	@ zero_extendqisi2
	cmp	r5, r9
	strb	r3, [r6, #16]
	bhi	.L59
	mov	r4, r9
	mov	r9, #21
	b	.L31
.L45:
	mov	r0, r10
	ldr	r1, [fp]
	bl	banout_append_unicode
	cmp	r5, r4
	bls	.L47
	ldrb	r3, [r8, r4]	@ zero_extendqisi2
	add	r4, r9, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bhi	.L73
.L72:
	mov	r9, #13
	b	.L31
.L52:
	mov	r0, r10
	ldr	r1, [fp]
	bl	banout_append_unicode
	cmp	r5, r4
	bls	.L54
	ldrb	r3, [r8, r4]	@ zero_extendqisi2
	add	r4, r9, #2
	cmp	r5, r4
	strb	r3, [r6, #16]
	bhi	.L75
.L74:
	mov	r9, #17
	b	.L31
.L117:
	mov	r0, r9
	bl	spnego_decode_init
	ldr	r1, [r6, #24]
	ldr	r2, [r6, #20]
	b	.L24
.L46:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #14
	ldr	r2, [r6, #8]
	b	.L27
.L53:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #18
	ldr	r2, [r6, #8]
	b	.L27
.L49:
	sub	r0, r9, r7
	mov	r4, r0
	mov	r9, #18
	ldr	r2, [r6, #8]
	b	.L27
.L42:
	sub	r0, r9, r7
	mov	r4, r0
	mov	r9, #14
	ldr	r2, [r6, #8]
	b	.L27
.L116:
	sub	r4, r5, r7
	mov	r0, r4
	mov	r9, #8
	ldr	r2, [r6, #8]
	b	.L27
.L58:
	sub	r0, r9, r7
	mov	r4, r0
	mov	r9, #20
	ldr	r2, [r6, #8]
	b	.L27
.L43:
	sub	r0, r9, r7
	mov	r4, r0
	mov	r9, #12
	ldr	r2, [r6, #8]
	b	.L27
.L63:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #20
	ldr	r2, [r6, #8]
	b	.L27
.L115:
	sub	r0, r9, r7
	mov	r4, r0
	mov	r9, #8
	ldr	r2, [r6, #8]
	b	.L27
.L54:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #16
	ldr	r2, [r6, #8]
	b	.L27
.L50:
	sub	r0, r9, r7
	mov	r4, r0
	mov	r9, #16
	ldr	r2, [r6, #8]
	b	.L27
.L47:
	sub	r4, r4, r7
	mov	r0, r4
	mov	r9, #12
	ldr	r2, [r6, #8]
	b	.L27
.L78:
	mov	r9, #21
	b	.L31
.L79:
	mov	r4, r3
	mov	r9, #22
	b	.L31
.L114:
	mov	r9, #11
	b	.L31
.L81:
	mov	r9, #22
	b	.L31
.L119:
	.align	2
.L118:
	.word	PROTO_SMB
	.word	AUTO_LEN
	.word	.LC2
	.word	.LC1
	.word	.LC0
	.size	smb1_parse_setup2, .-smb1_parse_setup2
	.comm	PROTO_SMB,4,4
	.comm	AUTO_LEN,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
