// File: /workspace/github_c_makefile_star2_O2/Tarsnap[P]kivaloo/bench/bulk_extract/main.c
// Function: main
int
main(int argc, char * argv[])
{
	struct sock_addr ** sas;
	int s;
	struct wire_requestqueue * Q;

	WARNP_INIT;

	/* Check number of arguments. */
	if (argc != 2) {
		fprintf(stderr, "usage: bulk_insert %s\n", "<socketname>");
		exit(1);
	}

	/* Resolve the socket address and connect. */
	if ((sas = sock_resolve(argv[1])) == NULL) {
		warnp("Error resolving socket address: %s", argv[1]);
		exit(1);
	}
	if (sas[0] == NULL) {
		warn0("No addresses found for %s", argv[1]);
		exit(1);
	}
	if ((s = sock_connect(sas)) == -1)
		exit(1);

	/* Create a request queue. */
	if ((Q = wire_requestqueue_init(s)) == NULL) {
		warnp("Cannot create packet write queue");
		exit(1);
	}

	/* Start RANGE request(s). */
	if (bulkextract(Q))
		exit(1);

	/* Free the request queue. */
	wire_requestqueue_destroy(Q);
	wire_requestqueue_free(Q);

	/* Free socket addresses. */
	sock_addr_freelist(sas);

	/* Success! */
	exit(0);
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
subq $0x20, %rsp
movq %rsi, %r14
movl %edi, %ebx
movq (%rsi), %rdi
testq %rdi, %rdi
je 0x2447
callq 0x48b4
cmpl $0x2, %ebx
jne 0x2478
movq 0x8(%r14), %rdi
callq 0x3a3c
testq %rax, %rax
jne 0x2499
callq 0x2090
cmpl $0x0, (%rax)
movq 0x8(%r14), %rsi
jne 0x24be
leaq 0x6bb9(%rip), %rdi      # 0x9028
xorl %eax, %eax
callq 0x4ac0
jmp 0x24e1
movq 0xcb79(%rip), %rax      # 0xeff8
movq (%rax), %rdi
leaq 0x6b7b(%rip), %rsi      # 0x9004
leaq 0x6b8b(%rip), %rdx      # 0x901b
xorl %eax, %eax
callq 0x21d0
jmp 0x24e1
movq %rax, %rbx
cmpq $0x0, (%rax)
jne 0x24d4
movq 0x8(%r14), %rsi
leaq 0x6b9e(%rip), %rdi      # 0x904b
xorl %eax, %eax
callq 0x4ac0
callq 0x2090
andl $0x0, (%rax)
jmp 0x24e1
movq %rax, %rbx
leaq 0x6b60(%rip), %rdi      # 0x9028
xorl %eax, %eax
callq 0x4931
andl $0x0, (%rbx)
jmp 0x24e1
movq %rbx, %rdi
callq 0x4215
cmpl $-0x1, %eax
jne 0x24e9
pushq $0x1
popq %rdi
callq 0x22b0
movl %eax, %edi
callq 0x6244
testq %rax, %rax
jne 0x250f
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2562
leaq 0x6b5f(%rip), %rdi      # 0x9065
xorl %eax, %eax
callq 0x4ac0
jmp 0x24e1
movq %rax, %r14
movq %rax, (%rsp)
andq $0x0, 0x10(%rsp)
xorl %edi, %edi
xorl %esi, %esi
callq 0x4f68
movq %rax, 0x8(%rsp)
testq %rax, %rax
je 0x24e1
movq %rax, %r15
pushq $0x32
popq %rdi
pushq $0xa
popq %rsi
callq 0x4c44
movq %rax, 0x18(%rsp)
testq %rax, %rax
jne 0x2578
leaq 0x6b38(%rip), %rdi      # 0x9086
xorl %eax, %eax
callq 0x4ac0
callq 0x2090
andl $0x0, (%rax)
jmp 0x2626
movq %rax, %rbx
leaq 0x6af9(%rip), %rdi      # 0x9065
xorl %eax, %eax
callq 0x4931
jmp 0x24cf
movq %rsp, %rdi
callq 0x2633
testl %eax, %eax
jne 0x2617
leaq 0x14(%rsp), %r15
movq %r15, %rdi
callq 0x2963
orl -0x4(%r15), %eax
je 0x25b5
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2603
leaq 0x6ae5(%rip), %rdi      # 0x9091
xorl %eax, %eax
callq 0x4ac0
jmp 0x2617
movq 0x18(%rsp), %rdi
callq 0x4eda
leaq 0x6ae0(%rip), %rdi      # 0x90a6
movq %rax, %rsi
xorl %eax, %eax
callq 0x2130
movq 0x18(%rsp), %rdi
callq 0x4f41
movq 0x8(%rsp), %rdi
callq 0x2040
movq %r14, %rdi
callq 0x6727
movq %r14, %rdi
callq 0x673b
movq %rbx, %rdi
callq 0x403b
xorl %edi, %edi
callq 0x22b0
movq %rax, %rbx
leaq 0x6a84(%rip), %rdi      # 0x9091
xorl %eax, %eax
callq 0x4931
andl $0x0, (%rbx)
movq 0x18(%rsp), %rdi
callq 0x4f41
movq 0x8(%rsp), %r15
movq %r15, %rdi
callq 0x2040
jmp 0x24e1