// File: /workspace/github_c_makefile_star2_O1/Tarsnap[P]kivaloo/perftests/dynamodb_kv/main.c
// Function: main
int
main(int argc, char * argv[])
{
	struct sock_addr ** sas;
	int s;
	struct wire_requestqueue * Q;
	struct status C;

	WARNP_INIT;

	/* Check number of arguments. */
	if (argc != 2) {
		fprintf(stderr, "usage: dynamodb_kv %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);
	}

	/* Send DELETE request. */
	C.done = 0;
	fprintf(stderr, "DELETE \"key\"\n");
	if (proto_dynamodb_kv_request_delete(Q, "key", callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_delete");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("DELETE returned status %d", C.status);
		exit(1);
	}

	/* Send Consistent GET request. */
	C.done = 0;
	fprintf(stderr, "GET \"key\"\n");
	if (proto_dynamodb_kv_request_getc(Q, "key", callback_get, &C)) {
		warnp("proto_dynamodb_kv_request_getc");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status != 2) {
		warn0("Consistent GET returned status %d", C.status);
		exit(1);
	}

	/* Send PUT request. */
	C.done = 0;
	fprintf(stderr, "PUT \"key\" = \"value\"\n");
	if (proto_dynamodb_kv_request_put(Q, "key",
	    (const uint8_t *)"value", 5, callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_put");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("PUT returned status %d", C.status);
		exit(1);
	}

	/* Send GET request. */
	C.done = 0;
	fprintf(stderr, "GET \"key\"\n");
	if (proto_dynamodb_kv_request_get(Q, "key", callback_get, &C)) {
		warnp("proto_dynamodb_kv_request_get");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("GET returned status %d", C.status);
		exit(1);
	}

	/* Send (faulty) ICAS request. */
	C.done = 0;
	fprintf(stderr, "ICAS \"key\" \"value2\" -> \"value3\"\n");
	if (proto_dynamodb_kv_request_icas(Q, "key",
	    (const uint8_t *)"value2", 6, (const uint8_t *)"value3", 6,
	    callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_icas");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status != 2) {
		warn0("Faulty ICAS returned status %d", C.status);
		exit(1);
	}

	/* Send GET request. */
	C.done = 0;
	fprintf(stderr, "GET \"key\"\n");
	if (proto_dynamodb_kv_request_get(Q, "key", callback_get, &C)) {
		warnp("proto_dynamodb_kv_request_get");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("GET returned status %d", C.status);
		exit(1);
	}

	/* Send (legitimate) ICAS request. */
	C.done = 0;
	fprintf(stderr, "ICAS \"key\" \"value\" -> \"value2\"\n");
	if (proto_dynamodb_kv_request_icas(Q, "key",
	    (const uint8_t *)"value", 5, (const uint8_t *)"value2", 6,
	    callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_icas");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("ICAS returned status %d", C.status);
		exit(1);
	}

	/* Send GET request. */
	C.done = 0;
	fprintf(stderr, "GET \"key\"\n");
	if (proto_dynamodb_kv_request_get(Q, "key", callback_get, &C)) {
		warnp("proto_dynamodb_kv_request_get");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("GET returned status %d", C.status);
		exit(1);
	}

	/* Send (legitimate) ICAS request. */
	C.done = 0;
	fprintf(stderr, "ICAS \"key\" \"value\" -> \"value2\"\n");
	if (proto_dynamodb_kv_request_icas(Q, "key",
	    (const uint8_t *)"value", 5, (const uint8_t *)"value2", 6,
	    callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_icas");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("ICAS returned status %d", C.status);
		exit(1);
	}

	/* Send GET request. */
	C.done = 0;
	fprintf(stderr, "GET \"key\"\n");
	if (proto_dynamodb_kv_request_get(Q, "key", callback_get, &C)) {
		warnp("proto_dynamodb_kv_request_get");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("GET returned status %d", C.status);
		exit(1);
	}

	/* Send (faulty) CREATE request. */
	C.done = 0;
	fprintf(stderr, "CREATE \"key\" = \"value\"\n");
	if (proto_dynamodb_kv_request_create(Q, "key",
	    (const uint8_t *)"value", 5, callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_create");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status != 2) {
		warn0("Faulty CREATE returned status %d", C.status);
		exit(1);
	}

	/* Send GET request. */
	C.done = 0;
	fprintf(stderr, "GET \"key\"\n");
	if (proto_dynamodb_kv_request_get(Q, "key", callback_get, &C)) {
		warnp("proto_dynamodb_kv_request_get");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("GET returned status %d", C.status);
		exit(1);
	}

	/* Send DELETE request. */
	C.done = 0;
	fprintf(stderr, "DELETE \"key\"\n");
	if (proto_dynamodb_kv_request_delete(Q, "key", callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_delete");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("DELETE returned status %d", C.status);
		exit(1);
	}

	/* Send (legitimate) CREATE request. */
	C.done = 0;
	fprintf(stderr, "CREATE \"key\" = \"value\"\n");
	if (proto_dynamodb_kv_request_create(Q, "key",
	    (const uint8_t *)"value", 5, callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_create");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("CREATE returned status %d", C.status);
		exit(1);
	}

	/* Send GET request. */
	C.done = 0;
	fprintf(stderr, "GET \"key\"\n");
	if (proto_dynamodb_kv_request_get(Q, "key", callback_get, &C)) {
		warnp("proto_dynamodb_kv_request_get");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("GET returned status %d", C.status);
		exit(1);
	}

	/* Send (legitimate) CREATE request. */
	C.done = 0;
	fprintf(stderr, "CREATE \"key\" = \"value\"\n");
	if (proto_dynamodb_kv_request_create(Q, "key",
	    (const uint8_t *)"value", 5, callback_status, &C)) {
		warnp("proto_dynamodb_kv_request_create");
		exit(1);
	}
	if (events_spin(&C.done)) {
		warnp("events_spin");
		exit(1);
	}
	if (C.status) {
		warn0("CREATE returned status %d", C.status);
		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 %r13
pushq %r12
pushq %rbx
subq $0x10, %rsp
movq %rsi, %r14
movl %edi, %ebx
movq (%rsi), %rdi
testq %rdi, %rdi
je 0x25bb
callq 0x55d4
cmpl $0x2, %ebx
jne 0x2ddb
movq 0x8(%r14), %rdi
callq 0x45ac
testq %rax, %rax
je 0x2dff
movq %rax, %rbx
cmpq $0x0, (%rax)
je 0x2e24
movq %rbx, %rdi
callq 0x4ec9
cmpl $-0x1, %eax
je 0x2d58
movl %eax, %edi
callq 0x627c
testq %rax, %rax
je 0x2e3b
movq %rax, %r14
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq 0xc9de(%rip), %r13      # 0xeff8
movq (%r13), %rcx
leaq 0x7a61(%rip), %rdi      # 0xa086
movl $0xd, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x7a59(%rip), %rsi      # 0xa094
leaq 0x8c5(%rip), %rdx       # 0x2f07
movq %r14, %rdi
movq %r15, %rcx
callq 0x6151
testl %eax, %eax
jne 0x2d9d
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2db7
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq (%r13), %rcx
leaq 0x7a55(%rip), %rdi      # 0xa0df
movl $0xa, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x79f4(%rip), %rsi      # 0xa094
leaq 0x86c(%rip), %rdx       # 0x2f13
movq %r14, %rdi
movq %r15, %rcx
callq 0x6028
testl %eax, %eax
jne 0x2e55
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
cmpl $0x2, %esi
jne 0x2e6f
leaq 0x8(%rsp), %r12
movl $0x0, (%r12)
movq (%r13), %rcx
leaq 0x7a3a(%rip), %rdi      # 0xa12b
movl $0x14, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x798d(%rip), %rsi      # 0xa094
leaq 0x7a32(%rip), %rdx      # 0xa140
leaq 0x7f2(%rip), %r15       # 0x2f07
movl $0x5, %ecx
movq %r14, %rdi
movq %r15, %r8
movq %r12, %r9
callq 0x5898
testl %eax, %eax
jne 0x2e7b
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2e91
leaq 0x8(%rsp), %r12
movl $0x0, (%r12)
movq (%r13), %rcx
leaq 0x7979(%rip), %rdi      # 0xa0df
movl $0xa, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x7918(%rip), %rsi      # 0xa094
leaq 0x790(%rip), %rdx       # 0x2f13
movq %r14, %rdi
movq %r12, %rcx
callq 0x5e04
testl %eax, %eax
jne 0x2d62
leaq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2d75
movl $0x0, 0x8(%rsp)
movq (%r13), %rcx
leaq 0x79cf(%rip), %rdi      # 0xa199
movl $0x20, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x78b4(%rip), %rsi      # 0xa094
leaq 0x79d3(%rip), %rdx      # 0xa1ba
leaq 0x79d3(%rip), %r8       # 0xa1c1
movl $0x6, %ecx
movl $0x6, %r9d
movq %r14, %rdi
pushq %r12
pushq %r15
callq 0x5a98
addq $0x10, %rsp
testl %eax, %eax
jne 0x2d7e
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
cmpl $0x2, %esi
jne 0x2e9d
leaq 0x8(%rsp), %r12
movl $0x0, (%r12)
movq (%r13), %rcx
leaq 0x7897(%rip), %rdi      # 0xa0df
movl $0xa, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x7836(%rip), %rsi      # 0xa094
leaq 0x6ae(%rip), %rdx       # 0x2f13
movq %r14, %rdi
movq %r12, %rcx
callq 0x5e04
testl %eax, %eax
jne 0x2d62
leaq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2d75
movl $0x0, 0x8(%rsp)
movq (%r13), %rcx
leaq 0x795a(%rip), %rdi      # 0xa206
movl $0x1f, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x77d2(%rip), %rsi      # 0xa094
leaq 0x7877(%rip), %rdx      # 0xa140
leaq 0x78ea(%rip), %r8       # 0xa1ba
movl $0x5, %ecx
movl $0x6, %r9d
movq %r14, %rdi
pushq %r12
pushq %r15
callq 0x5a98
addq $0x10, %rsp
testl %eax, %eax
jne 0x2d7e
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2dc0
leaq 0x8(%rsp), %r12
movl $0x0, (%r12)
movq (%r13), %rcx
leaq 0x77b6(%rip), %rdi      # 0xa0df
movl $0xa, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x7755(%rip), %rsi      # 0xa094
leaq 0x5cd(%rip), %rdx       # 0x2f13
movq %r14, %rdi
movq %r12, %rcx
callq 0x5e04
testl %eax, %eax
jne 0x2d62
leaq 0x8(%rsp), %r12
movq %r12, %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2d75
movl $0x0, 0x8(%rsp)
movq (%r13), %rcx
leaq 0x7879(%rip), %rdi      # 0xa206
movl $0x1f, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x76f1(%rip), %rsi      # 0xa094
leaq 0x7796(%rip), %rdx      # 0xa140
leaq 0x7809(%rip), %r8       # 0xa1ba
movl $0x5, %ecx
movl $0x6, %r9d
movq %r14, %rdi
pushq %r12
pushq %r15
callq 0x5a98
addq $0x10, %rsp
testl %eax, %eax
jne 0x2d7e
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2dc0
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq (%r13), %rcx
leaq 0x76d6(%rip), %rdi      # 0xa0df
movl $0xa, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x7675(%rip), %rsi      # 0xa094
leaq 0x4ed(%rip), %rdx       # 0x2f13
movq %r14, %rdi
movq %r15, %rcx
callq 0x5e04
testl %eax, %eax
jne 0x2d62
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2d75
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq (%r13), %rcx
leaq 0x77b8(%rip), %rdi      # 0xa226
movl $0x17, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x7610(%rip), %rsi      # 0xa094
leaq 0x76b5(%rip), %rdx      # 0xa140
leaq 0x475(%rip), %r8        # 0x2f07
movl $0x5, %ecx
movq %r14, %rdi
movq %r15, %r9
callq 0x5c74
testl %eax, %eax
jne 0x2ced
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
cmpl $0x2, %esi
jne 0x2eb8
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq (%r13), %rcx
leaq 0x75ff(%rip), %rdi      # 0xa0df
movl $0xa, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x759e(%rip), %rsi      # 0xa094
leaq 0x416(%rip), %rdx       # 0x2f13
movq %r14, %rdi
movq %r15, %rcx
callq 0x5e04
testl %eax, %eax
jne 0x2d62
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2d75
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq (%r13), %rcx
leaq 0x7541(%rip), %rdi      # 0xa086
movl $0xd, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x7539(%rip), %rsi      # 0xa094
leaq 0x3a5(%rip), %rdx       # 0x2f07
movq %r14, %rdi
movq %r15, %rcx
callq 0x6151
testl %eax, %eax
jne 0x2d9d
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2db7
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq (%r13), %rcx
leaq 0x767c(%rip), %rdi      # 0xa226
movl $0x17, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x74d4(%rip), %rsi      # 0xa094
leaq 0x7579(%rip), %rdx      # 0xa140
leaq 0x339(%rip), %r8        # 0x2f07
movl $0x5, %ecx
movq %r14, %rdi
movq %r15, %r9
callq 0x5c74
testl %eax, %eax
jne 0x2ced
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2d3f
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq (%r13), %rcx
leaq 0x74c4(%rip), %rdi      # 0xa0df
movl $0xa, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x7463(%rip), %rsi      # 0xa094
leaq 0x2db(%rip), %rdx       # 0x2f13
movq %r14, %rdi
movq %r15, %rcx
callq 0x5e04
testl %eax, %eax
jne 0x2d62
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2d75
leaq 0x8(%rsp), %r15
movl $0x0, (%r15)
movq (%r13), %rcx
leaq 0x75a6(%rip), %rdi      # 0xa226
movl $0x17, %esi
movl $0x1, %edx
callq 0x22a0
leaq 0x73fe(%rip), %rsi      # 0xa094
leaq 0x74a3(%rip), %rdx      # 0xa140
leaq 0x263(%rip), %r8        # 0x2f07
movl $0x5, %ecx
movq %r14, %rdi
movq %r15, %r9
callq 0x5c74
testl %eax, %eax
jne 0x2ced
leaq 0x8(%rsp), %rdi
callq 0x3201
testl %eax, %eax
jne 0x2d00
movl 0xc(%rsp), %esi
testl %esi, %esi
jne 0x2d3f
movq %r14, %rdi
callq 0x6941
movq %r14, %rdi
callq 0x6955
movq %rbx, %rdi
callq 0x4cc3
xorl %edi, %edi
callq 0x2280
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2d1a
leaq 0x7540(%rip), %rdi      # 0xa23e
jmp 0x2d11
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2d26
leaq 0x73a8(%rip), %rdi      # 0xa0b9
xorl %eax, %eax
callq 0x5773
jmp 0x2d58
movq %rax, %rbx
leaq 0x751a(%rip), %rdi      # 0xa23e
jmp 0x2d30
movq %rax, %rbx
leaq 0x7389(%rip), %rdi      # 0xa0b9
xorl %eax, %eax
callq 0x5654
movl $0x0, (%rbx)
jmp 0x2d58
leaq 0x7520(%rip), %rdi      # 0xa266
xorl %eax, %eax
callq 0x5773
callq 0x2090
movl $0x0, (%rax)
movl $0x1, %edi
callq 0x2280
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2d91
leaq 0x7408(%rip), %rdi      # 0xa17b
jmp 0x2d11
leaq 0x7398(%rip), %rdi      # 0xa114
jmp 0x2d46
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2dcc
leaq 0x7439(%rip), %rdi      # 0xa1c8
jmp 0x2d11
movq %rax, %rbx
leaq 0x73e0(%rip), %rdi      # 0xa17b
jmp 0x2d30
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2ea9
leaq 0x72e6(%rip), %rdi      # 0xa098
jmp 0x2d11
leaq 0x7307(%rip), %rdi      # 0xa0c5
jmp 0x2d46
leaq 0x7427(%rip), %rdi      # 0xa1ee
jmp 0x2d46
movq %rax, %rbx
leaq 0x73f2(%rip), %rdi      # 0xa1c8
jmp 0x2d30
movq 0xc216(%rip), %rax      # 0xeff8
movq (%rax), %rdi
leaq 0x7218(%rip), %rsi      # 0xa004
leaq 0x7228(%rip), %rdx      # 0xa01b
xorl %eax, %eax
callq 0x21a0
jmp 0x2d58
callq 0x2090
cmpl $0x0, (%rax)
movq 0x8(%r14), %rsi
jne 0x2ec4
leaq 0x7210(%rip), %rdi      # 0xa028
xorl %eax, %eax
callq 0x5773
jmp 0x2d58
movq 0x8(%r14), %rsi
leaq 0x721c(%rip), %rdi      # 0xa04b
xorl %eax, %eax
callq 0x5773
jmp 0x2d4d
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2eda
leaq 0x7215(%rip), %rdi      # 0xa065
jmp 0x2d11
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2ee9
leaq 0x7280(%rip), %rdi      # 0xa0ea
jmp 0x2d11
leaq 0x7293(%rip), %rdi      # 0xa109
jmp 0x2d46
callq 0x2090
cmpl $0x0, (%rax)
jne 0x2ef8
leaq 0x72ba(%rip), %rdi      # 0xa146
jmp 0x2d11
leaq 0x72cc(%rip), %rdi      # 0xa164
jmp 0x2d46
leaq 0x7343(%rip), %rdi      # 0xa1e7
jmp 0x2d46
movq %rax, %rbx
leaq 0x71e5(%rip), %rdi      # 0xa098
jmp 0x2d30
leaq 0x73a0(%rip), %rdi      # 0xa25f
jmp 0x2d46
movq %rax, %rbx
leaq 0x715a(%rip), %rdi      # 0xa028
xorl %eax, %eax
callq 0x5654
jmp 0x2d37
movq %rax, %rbx
leaq 0x7181(%rip), %rdi      # 0xa065
jmp 0x2d30
movq %rax, %rbx
leaq 0x71f7(%rip), %rdi      # 0xa0ea
jmp 0x2d30
movq %rax, %rbx
leaq 0x7244(%rip), %rdi      # 0xa146
jmp 0x2d30