	.file	"extr_main-listscan.c_main_listscan.c"
	.intel_syntax noprefix
	.text
	.section	.rodata.str1.8,"aMS",@progbits,1
	.align 8
.LC0:
	.string	"FAIL: target IP address list empty\n"
	.align 8
.LC1:
	.string	" [hint] try something like \"--range 10.0.0.0/8\"\n"
	.align 8
.LC2:
	.string	" [hint] try something like \"--range 192.168.0.100-192.168.0.200\"\n"
	.section	.rodata.str1.1,"aMS",@progbits,1
.LC3:
	.string	"%u,%u\n"
.LC4:
	.string	"%u.%u.%u.%u\n"
.LC5:
	.string	"%u.%u.%u.%u:%u\n"
	.text
	.p2align 4
	.globl	main_listscan
	.type	main_listscan, @function
main_listscan:
.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
	lea	r14, 32[rdi]
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	mov	r12, rdi
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	sub	rsp, 72
	.cfi_def_cfa_offset 128
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR 56[rsp], rax
	xor	eax, eax
	mov	eax, DWORD PTR 48[rdi]
	mov	DWORD PTR 20[rsp], eax
	mov	eax, DWORD PTR [rdi]
	mov	rdi, r14
	mov	DWORD PTR 32[rsp], eax
	call	rangelist_count@PLT
	test	eax, eax
	je	.L22
.L2:
	mov	rdi, r14
	call	rangelist_count@PLT
	mov	DWORD PTR 12[rsp], eax
	lea	rax, 36[r12]
	mov	rdi, rax
	mov	QWORD PTR 40[rsp], rax
	call	rangelist_count@PLT
	mov	DWORD PTR 16[rsp], eax
	test	eax, eax
	je	.L23
	mov	eax, DWORD PTR 12[rsp]
	imul	eax, DWORD PTR 16[rsp]
	lea	r13, 52[rsp]
	mov	DWORD PTR 36[rsp], eax
	.p2align 4,,10
	.p2align 3
.L5:
	mov	r15d, DWORD PTR 36[rsp]
	mov	edx, DWORD PTR 32[rsp]
	mov	rdi, r13
	mov	ecx, DWORD PTR 56[r12]
	mov	esi, r15d
	call	blackrock_init@PLT
	mov	edx, DWORD PTR 52[r12]
	mov	eax, DWORD PTR 40[r12]
	lea	ebx, -1[rdx+rax]
	mov	eax, DWORD PTR 44[r12]
	mov	edx, r15d
	test	eax, eax
	je	.L6
	add	eax, ebx
	cmp	eax, r15d
	cmovg	eax, r15d
	mov	edx, eax
.L6:
	mov	ebp, DWORD PTR 4[r12]
	imul	ebp, DWORD PTR 8[r12]
	lea	eax, 0[rbp+rdx]
	mov	DWORD PTR 8[rsp], eax
	cmp	ebx, eax
	jge	.L13
	mov	QWORD PTR 24[rsp], r12
	mov	r15, QWORD PTR 40[rsp]
	mov	ebp, ebx
	jmp	.L7
	.p2align 4,,10
	.p2align 3
.L25:
	mov	rax, QWORD PTR 24[rsp]
	movzx	r8d, bl
	movzx	ecx, bh
	cmp	QWORD PTR 24[rax], 0
	je	.L11
	mov	edx, r8d
	mov	esi, ecx
	lea	rdi, .LC3[rip]
	xor	eax, eax
	call	printf@PLT
.L12:
	add	ebp, DWORD PTR 20[rsp]
	cmp	DWORD PTR 8[rsp], ebp
	jle	.L24
.L7:
	mov	esi, ebp
	mov	rdi, r13
	call	blackrock_shuffle@PLT
	mov	rdi, r15
	cdq
	idiv	DWORD PTR 16[rsp]
	mov	esi, edx
	mov	r12d, eax
	call	rangelist_pick@PLT
	mov	esi, r12d
	mov	rdi, r14
	mov	ebx, eax
	call	rangelist_pick@PLT
	cmp	DWORD PTR 12[rsp], 1
	je	.L25
	mov	edx, ebx
	movzx	edi, bh
	mov	esi, ebx
	mov	r9d, eax
	shr	edx, 16
	mov	ecx, edi
	shr	esi, 24
	movzx	r8d, bl
	movzx	edx, dl
	lea	rdi, .LC5[rip]
	xor	eax, eax
	call	printf@PLT
	add	ebp, DWORD PTR 20[rsp]
	cmp	DWORD PTR 8[rsp], ebp
	jg	.L7
.L24:
	mov	r12, QWORD PTR 24[rsp]
.L13:
	cmp	QWORD PTR 16[r12], 0
	je	.L1
	add	DWORD PTR 32[rsp], 1
	jmp	.L5
	.p2align 4,,10
	.p2align 3
.L11:
	mov	edx, ebx
	shr	ebx, 24
	lea	rdi, .LC4[rip]
	xor	eax, eax
	shr	edx, 16
	mov	esi, ebx
	movzx	edx, dl
	call	printf@PLT
	jmp	.L12
.L23:
	lea	rsi, .LC0[rip]
	xor	edi, edi
	call	LOG@PLT
	lea	rsi, .LC1[rip]
	xor	edi, edi
	call	LOG@PLT
	lea	rsi, .LC2[rip]
	xor	edi, edi
	call	LOG@PLT
.L1:
	mov	rax, QWORD PTR 56[rsp]
	xor	rax, QWORD PTR fs:40
	jne	.L26
	add	rsp, 72
	.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
.L22:
	.cfi_restore_state
	mov	edx, 80
	mov	esi, 80
	mov	rdi, r14
	call	rangelist_add_range@PLT
	jmp	.L2
.L26:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE0:
	.size	main_listscan, .-main_listscan
	.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_main-listscan.c_main_listscan.c"
	.text
	.section	.rodata.str1.4,"aMS",%progbits,1
	.align	2
.LC0:
	.ascii	"FAIL: target IP address list empty\012\000"
	.align	2
.LC1:
	.ascii	" [hint] try something like \"--range 10.0.0.0/8\"\012"
	.ascii	"\000"
	.align	2
.LC2:
	.ascii	" [hint] try something like \"--range 192.168.0.100-"
	.ascii	"192.168.0.200\"\012\000"
	.global	__aeabi_idivmod
	.align	2
.LC3:
	.ascii	"%u,%u\012\000"
	.align	2
.LC4:
	.ascii	"%u.%u.%u.%u\012\000"
	.align	2
.LC5:
	.ascii	"%u.%u.%u.%u:%u\012\000"
	.section	.rodata.cst4,"aM",%progbits,4
	.align	2
.LC6:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	main_listscan
	.syntax unified
	.arm
	.fpu softvfp
	.type	main_listscan, %function
main_listscan:
	@ args = 0, pretend = 0, frame = 24
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	mov	r8, r0
	mov	r7, r0
	ldr	r3, [r8], #20
	sub	sp, sp, #36
	str	r3, [sp, #16]
	ldr	r3, .L25
	mov	r0, r8
	ldr	r3, [r3]
	str	r3, [sp, #28]
	mov	r3,#0
	ldr	r3, [r7, #36]
	str	r3, [sp, #12]
	bl	rangelist_count
	cmp	r0, #0
	beq	.L21
.L2:
	mov	r0, r8
	bl	rangelist_count
	add	fp, r7, #24
	mov	r10, r0
	mov	r0, fp
	bl	rangelist_count
	subs	r9, r0, #0
	beq	.L22
	mul	r3, r9, r10
	str	r3, [sp, #20]
.L5:
	ldr	r4, [sp, #20]
	ldr	r3, [r7, #44]
	ldr	r2, [sp, #16]
	mov	r1, r4
	add	r0, sp, #24
	bl	blackrock_init
	ldr	r5, [r7, #40]
	ldr	r3, [r7, #32]
	ldr	r2, [r7, #28]
	sub	r5, r5, #1
	cmp	r3, #0
	add	r5, r5, r2
	beq	.L15
	add	r3, r3, r5
	cmp	r3, r4
	movge	r3, r4
.L6:
	ldr	r6, [r7, #4]
	ldr	r2, [r7, #8]
	mla	r6, r2, r6, r3
	cmp	r5, r6
	blt	.L7
	b	.L13
.L23:
	ldr	r3, [r7, #16]
	lsr	r1, r4, #8
	cmp	r3, #0
	and	r1, r1, #255
	and	r2, r4, #255
	beq	.L11
	ldr	r0, .L25+4
	bl	printf
.L12:
	ldr	r3, [sp, #12]
	add	r5, r5, r3
	cmp	r6, r5
	ble	.L13
.L7:
	mov	r1, r5
	add	r0, sp, #24
	bl	blackrock_shuffle
	mov	r1, r9
	bl	__aeabi_idivmod
	mov	r4, r0
	mov	r0, fp
	bl	rangelist_pick
	mov	r3, r0
	mov	r1, r4
	mov	r0, r8
	mov	r4, r3
	bl	rangelist_pick
	cmp	r10, #1
	beq	.L23
	and	r1, r4, #255
	lsr	r3, r4, #8
	lsr	r2, r4, #16
	str	r0, [sp, #4]
	and	r3, r3, #255
	str	r1, [sp]
	ldr	r0, .L25+8
	and	r2, r2, #255
	lsr	r1, r4, #24
	bl	printf
	ldr	r3, [sp, #12]
	add	r5, r5, r3
	cmp	r6, r5
	bgt	.L7
.L13:
	ldr	r3, [r7, #12]
	cmp	r3, #0
	beq	.L1
	ldr	r3, [sp, #16]
	add	r3, r3, #1
	str	r3, [sp, #16]
	b	.L5
.L11:
	lsr	r0, r4, #16
	mov	r3, r1
	str	r2, [sp]
	lsr	r1, r4, #24
	and	r2, r0, #255
	ldr	r0, .L25+12
	bl	printf
	b	.L12
.L15:
	ldr	r3, [sp, #20]
	b	.L6
.L22:
	ldr	r1, .L25+16
	bl	LOG
	ldr	r1, .L25+20
	mov	r0, r9
	bl	LOG
	mov	r0, r9
	ldr	r1, .L25+24
	bl	LOG
.L1:
	ldr	r3, .L25
	ldr	r2, [r3]
	ldr	r3, [sp, #28]
	eors	r2, r3, r2
	mov	r3, #0
	bne	.L24
	add	sp, sp, #36
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L21:
	mov	r2, #80
	mov	r0, r8
	mov	r1, r2
	bl	rangelist_add_range
	b	.L2
.L24:
	bl	__stack_chk_fail
.L26:
	.align	2
.L25:
	.word	.LC6
	.word	.LC3
	.word	.LC5
	.word	.LC4
	.word	.LC0
	.word	.LC1
	.word	.LC2
	.size	main_listscan, .-main_listscan
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
