14056306b:	48 3b 3e             	cmp    (%rsi),%rdi
14056306e:	72 d2                	jb     0x140563042
140563070:	48 8b c6             	mov    %rsi,%rax
140563073:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140563078:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14056307d:	48 83 c4 20          	add    $0x20,%rsp
140563081:	5f                   	pop    %rdi
140563082:	c3                   	ret
140563083:	cc                   	int3
140563084:	cc                   	int3
140563085:	cc                   	int3
140563086:	cc                   	int3
140563087:	cc                   	int3
140563088:	cc                   	int3
140563089:	cc                   	int3
14056308a:	cc                   	int3
14056308b:	cc                   	int3
14056308c:	cc                   	int3
14056308d:	cc                   	int3
14056308e:	cc                   	int3
14056308f:	cc                   	int3
140563090:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140563095:	56                   	push   %rsi
140563096:	48 83 ec 20          	sub    $0x20,%rsp
14056309a:	48 8b 19             	mov    (%rcx),%rbx
14056309d:	48 8b f1             	mov    %rcx,%rsi
1405630a0:	48 85 db             	test   %rbx,%rbx
1405630a3:	0f 84 87 00 00 00    	je     0x140563130
1405630a9:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1405630ae:	48 8b 79 08          	mov    0x8(%rcx),%rdi
1405630b2:	48 3b df             	cmp    %rdi,%rbx
1405630b5:	74 11                	je     0x1405630c8
1405630b7:	48 8b cb             	mov    %rbx,%rcx
1405630ba:	e8 a1 52 c3 ff       	call   0x140198360
1405630bf:	48 83 c3 18          	add    $0x18,%rbx
1405630c3:	48 3b df             	cmp    %rdi,%rbx
1405630c6:	75 ef                	jne    0x1405630b7
1405630c8:	4c 8b 06             	mov    (%rsi),%r8
1405630cb:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
1405630d2:	aa aa 2a
1405630d5:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
1405630d9:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
1405630de:	49 2b c8             	sub    %r8,%rcx
1405630e1:	48 f7 e9             	imul   %rcx
1405630e4:	48 c1 fa 02          	sar    $0x2,%rdx
1405630e8:	48 8b c2             	mov    %rdx,%rax
1405630eb:	48 c1 e8 3f          	shr    $0x3f,%rax
1405630ef:	48 03 d0             	add    %rax,%rdx
1405630f2:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
1405630f6:	48 c1 e2 03          	shl    $0x3,%rdx
1405630fa:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140563101:	72 18                	jb     0x14056311b
140563103:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
140563107:	48 83 c2 27          	add    $0x27,%rdx
14056310b:	4c 2b c1             	sub    %rcx,%r8
14056310e:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140563112:	48 83 f8 1f          	cmp    $0x1f,%rax
140563116:	77 23                	ja     0x14056313b
140563118:	4c 8b c1             	mov    %rcx,%r8
14056311b:	49 8b c8             	mov    %r8,%rcx
14056311e:	e8 21 80 8b 00       	call   0x140e1b144
140563123:	33 c0                	xor    %eax,%eax
140563125:	48 89 06             	mov    %rax,(%rsi)
140563128:	48 89 46 08          	mov    %rax,0x8(%rsi)
14056312c:	48 89 46 10          	mov    %rax,0x10(%rsi)
140563130:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140563135:	48 83 c4 20          	add    $0x20,%rsp
140563139:	5e                   	pop    %rsi
14056313a:	c3                   	ret
14056313b:	e8 64 70 8c 00       	call   0x140e2a1a4
140563140:	cc                   	int3
140563141:	cc                   	int3
140563142:	cc                   	int3
140563143:	cc                   	int3
140563144:	cc                   	int3
140563145:	cc                   	int3
140563146:	cc                   	int3
140563147:	cc                   	int3
140563148:	cc                   	int3
140563149:	cc                   	int3
14056314a:	cc                   	int3
14056314b:	cc                   	int3
14056314c:	cc                   	int3
14056314d:	cc                   	int3
14056314e:	cc                   	int3
14056314f:	cc                   	int3
140563150:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140563155:	57                   	push   %rdi
140563156:	48 83 ec 20          	sub    $0x20,%rsp
14056315a:	48 8b f9             	mov    %rcx,%rdi
14056315d:	48 8b da             	mov    %rdx,%rbx
140563160:	48 83 c1 08          	add    $0x8,%rcx
140563164:	4c 8b c3             	mov    %rbx,%r8
140563167:	48 8b 57 10          	mov    0x10(%rdi),%rdx
14056316b:	48 3b 57 18          	cmp    0x18(%rdi),%rdx
14056316f:	74 0c                	je     0x14056317d
140563171:	e8 ba fd ff ff       	call   0x140562f30
140563176:	48 83 47 10 18       	addq   $0x18,0x10(%rdi)
14056317b:	eb 05                	jmp    0x140563182
14056317d:	e8 fe fa ff ff       	call   0x140562c80
140563182:	48 8b 0b             	mov    (%rbx),%rcx
140563185:	33 d2                	xor    %edx,%edx
140563187:	48 8b 43 08          	mov    0x8(%rbx),%rax
14056318b:	48 2b c1             	sub    %rcx,%rax
14056318e:	48 c1 f8 05          	sar    $0x5,%rax
140563192:	48 85 c0             	test   %rax,%rax
140563195:	74 3e                	je     0x1405631d5
140563197:	44 8b ca             	mov    %edx,%r9d
14056319a:	44 8b d2             	mov    %edx,%r10d
14056319d:	44 8b c2             	mov    %edx,%r8d
1405631a0:	48 8b 47 20          	mov    0x20(%rdi),%rax
1405631a4:	49 8b 4c 09 10       	mov    0x10(%r9,%rcx,1),%rcx
1405631a9:	4a 3b 0c 10          	cmp    (%rax,%r10,1),%rcx
1405631ad:	76 04                	jbe    0x1405631b3
1405631af:	4a 89 0c 00          	mov    %rcx,(%rax,%r8,1)
1405631b3:	48 8b 0b             	mov    (%rbx),%rcx
1405631b6:	48 ff c2             	inc    %rdx
1405631b9:	48 8b 43 08          	mov    0x8(%rbx),%rax
1405631bd:	49 83 c1 20          	add    $0x20,%r9
1405631c1:	48 2b c1             	sub    %rcx,%rax
1405631c4:	49 83 c2 08          	add    $0x8,%r10
1405631c8:	48 c1 f8 05          	sar    $0x5,%rax
1405631cc:	49 83 c0 08          	add    $0x8,%r8
1405631d0:	48 3b d0             	cmp    %rax,%rdx
1405631d3:	72 cb                	jb     0x1405631a0
1405631d5:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1405631da:	48 83 c4 20          	add    $0x20,%rsp
1405631de:	5f                   	pop    %rdi
1405631df:	c3                   	ret
1405631e0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1405631e5:	55                   	push   %rbp
1405631e6:	56                   	push   %rsi
1405631e7:	57                   	push   %rdi
1405631e8:	41 54                	push   %r12
1405631ea:	41 55                	push   %r13
1405631ec:	41 56                	push   %r14
1405631ee:	41 57                	push   %r15
1405631f0:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
1405631f7:	48 8b 05 02 5d e5 00 	mov    0xe55d02(%rip),%rax        # 0x1413b8f00
1405631fe:	48 33 c4             	xor    %rsp,%rax
140563201:	48 89 44 24 70       	mov    %rax,0x70(%rsp)
140563206:	44 88 44 24 30       	mov    %r8b,0x30(%rsp)
14056320b:	4c 8b e2             	mov    %rdx,%r12
14056320e:	4c 8b e9             	mov    %rcx,%r13
140563211:	48 89 54 24 48       	mov    %rdx,0x48(%rsp)
140563216:	c7 44 24 34 00 00 00 	movl   $0x0,0x34(%rsp)
14056321d:	00
14056321e:	48 8d 71 20          	lea    0x20(%rcx),%rsi
140563222:	48 8b d6             	mov    %rsi,%rdx
140563225:	49 8b cc             	mov    %r12,%rcx
140563228:	e8 83 03 00 00       	call   0x1405635b0
14056322d:	c7 44 24 34 01 00 00 	movl   $0x1,0x34(%rsp)
140563234:	00
140563235:	45 33 c0             	xor    %r8d,%r8d
140563238:	41 8b e8             	mov    %r8d,%ebp
14056323b:	4c 89 44 24 40       	mov    %r8,0x40(%rsp)
140563240:	49 8b 4d 10          	mov    0x10(%r13),%rcx
140563244:	49 2b 4d 08          	sub    0x8(%r13),%rcx
140563248:	49 bf ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r15
14056324f:	aa aa 2a
140563252:	49 8b c7             	mov    %r15,%rax
140563255:	48 f7 e9             	imul   %rcx
140563258:	48 c1 fa 02          	sar    $0x2,%rdx
14056325c:	48 8b c2             	mov    %rdx,%rax
14056325f:	48 c1 e8 3f          	shr    $0x3f,%rax
140563263:	48 03 d0             	add    %rax,%rdx
140563266:	0f 84 8d 02 00 00    	je     0x1405634f9
14056326c:	41 8b f8             	mov    %r8d,%edi
14056326f:	4c 89 44 24 38       	mov    %r8,0x38(%rsp)
140563274:	0f b6 5c 24 30       	movzbl 0x30(%rsp),%ebx
140563279:	41 ba 16 00 00 00    	mov    $0x16,%r10d
14056327f:	49 b9 00 00 00 00 00 	movabs $0x8000000000000000,%r9
140563286:	00 00 80
140563289:	48 ba ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rdx
140563290:	ff ff 7f
140563293:	4d 8b f0             	mov    %r8,%r14
140563296:	49 83 7d 00 00       	cmpq   $0x0,0x0(%r13)
14056329b:	0f 86 c9 01 00 00    	jbe    0x14056346a
1405632a1:	4d 8b f8             	mov    %r8,%r15
1405632a4:	4d 85 f6             	test   %r14,%r14
1405632a7:	0f 84 5c 01 00 00    	je     0x140563409
1405632ad:	49 8b 45 08          	mov    0x8(%r13),%rax
1405632b1:	48 8b 0c 07          	mov    (%rdi,%rax,1),%rcx
1405632b5:	48 8b 06             	mov    (%rsi),%rax
1405632b8:	4a 8b 6c f0 f8       	mov    -0x8(%rax,%r14,8),%rbp
1405632bd:	4a 2b 6c 39 f0       	sub    -0x10(%rcx,%r15,1),%rbp
1405632c2:	48 ff c5             	inc    %rbp
1405632c5:	0f 57 c0             	xorps  %xmm0,%xmm0
1405632c8:	0f 11 44 24 50       	movups %xmm0,0x50(%rsp)
1405632cd:	4c 89 44 24 60       	mov    %r8,0x60(%rsp)
1405632d2:	4c 89 44 24 68       	mov    %r8,0x68(%rsp)
1405632d7:	48 3b ea             	cmp    %rdx,%rbp
1405632da:	0f 87 be 02 00 00    	ja     0x14056359e
1405632e0:	48 83 fd 0f          	cmp    $0xf,%rbp
1405632e4:	77 39                	ja     0x14056331f
1405632e6:	48 89 6c 24 60       	mov    %rbp,0x60(%rsp)
1405632eb:	48 c7 44 24 68 0f 00 	movq   $0xf,0x68(%rsp)
1405632f2:	00 00
1405632f4:	4c 8b c5             	mov    %rbp,%r8
1405632f7:	ba 20 00 00 00       	mov    $0x20,%edx
1405632fc:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140563301:	e8 aa c3 97 00       	call   0x140edf6b0
140563306:	c6 44 2c 50 00       	movb   $0x0,0x50(%rsp,%rbp,1)
14056330b:	48 8b 7c 24 68       	mov    0x68(%rsp),%rdi
140563310:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
140563315:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
14056331a:	e9 8b 00 00 00       	jmp    0x1405633aa
14056331f:	48 8b fd             	mov    %rbp,%rdi
140563322:	48 83 cf 0f          	or     $0xf,%rdi
140563326:	48 3b fa             	cmp    %rdx,%rdi
140563329:	76 09                	jbe    0x140563334
14056332b:	48 8b fa             	mov    %rdx,%rdi
14056332e:	49 8d 41 27          	lea    0x27(%r9),%rax
140563332:	eb 2c                	jmp    0x140563360
140563334:	48 83 ff 16          	cmp    $0x16,%rdi
140563338:	49 0f 42 fa          	cmovb  %r10,%rdi
14056333c:	48 8d 4f 01          	lea    0x1(%rdi),%rcx
140563340:	48 85 c9             	test   %rcx,%rcx
140563343:	75 05                	jne    0x14056334a
140563345:	49 8b f0             	mov    %r8,%rsi
140563348:	eb 3d                	jmp    0x140563387
14056334a:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
140563351:	72 2c                	jb     0x14056337f
140563353:	48 8d 41 27          	lea    0x27(%rcx),%rax
140563357:	48 3b c1             	cmp    %rcx,%rax
14056335a:	0f 86 32 02 00 00    	jbe    0x140563592
140563360:	48 8b c8             	mov    %rax,%rcx
140563363:	e8 a0 7d 8b 00       	call   0x140e1b108
140563368:	48 85 c0             	test   %rax,%rax
14056336b:	0f 84 27 02 00 00    	je     0x140563598
140563371:	48 8d 70 27          	lea    0x27(%rax),%rsi
140563375:	48 83 e6 e0          	and    $0xffffffffffffffe0,%rsi
140563379:	48 89 46 f8          	mov    %rax,-0x8(%rsi)
14056337d:	eb 08                	jmp    0x140563387
14056337f:	e8 84 7d 8b 00       	call   0x140e1b108
140563384:	48 8b f0             	mov    %rax,%rsi
140563387:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
14056338c:	48 89 6c 24 60       	mov    %rbp,0x60(%rsp)
140563391:	48 89 7c 24 68       	mov    %rdi,0x68(%rsp)
140563396:	4c 8b c5             	mov    %rbp,%r8
140563399:	ba 20 00 00 00       	mov    $0x20,%edx
14056339e:	48 8b ce             	mov    %rsi,%rcx
1405633a1:	e8 0a c3 97 00       	call   0x140edf6b0
1405633a6:	c6 04 2e 00          	movb   $0x0,(%rsi,%rbp,1)
1405633aa:	48 8d 54 24 50       	lea    0x50(%rsp),%rdx
1405633af:	48 83 ff 0f          	cmp    $0xf,%rdi
1405633b3:	48 0f 47 d6          	cmova  %rsi,%rdx
1405633b7:	4c 8b c5             	mov    %rbp,%r8
1405633ba:	49 8b cc             	mov    %r12,%rcx
1405633bd:	e8 be ad c4 ff       	call   0x1401ae180
1405633c2:	90                   	nop
1405633c3:	48 8b 54 24 68       	mov    0x68(%rsp),%rdx
1405633c8:	48 83 fa 0f          	cmp    $0xf,%rdx
1405633cc:	76 32                	jbe    0x140563400
1405633ce:	48 ff c2             	inc    %rdx
1405633d1:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
1405633d6:	48 8b c1             	mov    %rcx,%rax
1405633d9:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1405633e0:	72 19                	jb     0x1405633fb
1405633e2:	48 83 c2 27          	add    $0x27,%rdx
1405633e6:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
1405633ea:	48 2b c1             	sub    %rcx,%rax
1405633ed:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1405633f1:	48 83 f8 1f          	cmp    $0x1f,%rax
1405633f5:	0f 87 9d 01 00 00    	ja     0x140563598
1405633fb:	e8 44 7d 8b 00       	call   0x140e1b144
140563400:	49 8d 75 20          	lea    0x20(%r13),%rsi
140563404:	48 8b 7c 24 38       	mov    0x38(%rsp),%rdi
140563409:	49 8b 45 08          	mov    0x8(%r13),%rax
14056340d:	48 8b 14 07          	mov    (%rdi,%rax,1),%rdx
140563411:	49 03 d7             	add    %r15,%rdx
140563414:	4c 8b 42 10          	mov    0x10(%rdx),%r8
140563418:	48 83 7a 18 0f       	cmpq   $0xf,0x18(%rdx)
14056341d:	76 03                	jbe    0x140563422
14056341f:	48 8b 12             	mov    (%rdx),%rdx
140563422:	49 8b cc             	mov    %r12,%rcx
140563425:	e8 56 ad c4 ff       	call   0x1401ae180
14056342a:	49 ff c6             	inc    %r14
14056342d:	49 83 c7 20          	add    $0x20,%r15
140563431:	4d 3b 75 00          	cmp    0x0(%r13),%r14
140563435:	48 ba ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rdx
14056343c:	ff ff 7f
14056343f:	41 b8 00 00 00 00    	mov    $0x0,%r8d
140563445:	49 b9 00 00 00 00 00 	movabs $0x8000000000000000,%r9
14056344c:	00 00 80
14056344f:	41 ba 16 00 00 00    	mov    $0x16,%r10d
140563455:	0f 82 49 fe ff ff    	jb     0x1405632a4
14056345b:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
140563460:	49 bf ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r15
140563467:	aa aa 2a
14056346a:	49 8b 4c 24 10       	mov    0x10(%r12),%rcx
14056346f:	49 8b 54 24 18       	mov    0x18(%r12),%rdx
140563474:	48 8b c2             	mov    %rdx,%rax
140563477:	48 2b c1             	sub    %rcx,%rax
14056347a:	48 83 f8 01          	cmp    $0x1,%rax
14056347e:	72 1e                	jb     0x14056349e
140563480:	48 8d 41 01          	lea    0x1(%rcx),%rax
140563484:	49 89 44 24 10       	mov    %rax,0x10(%r12)
140563489:	49 8b c4             	mov    %r12,%rax
14056348c:	48 83 fa 0f          	cmp    $0xf,%rdx
140563490:	76 04                	jbe    0x140563496
140563492:	49 8b 04 24          	mov    (%r12),%rax
140563496:	66 c7 04 08 0a 00    	movw   $0xa,(%rax,%rcx,1)
14056349c:	eb 21                	jmp    0x1405634bf
14056349e:	48 c7 44 24 20 01 00 	movq   $0x1,0x20(%rsp)
1405634a5:	00 00
1405634a7:	4c 8d 0d be 33 a5 00 	lea    0xa533be(%rip),%r9        # 0x140fb686c
1405634ae:	44 0f b6 c3          	movzbl %bl,%r8d
1405634b2:	ba 01 00 00 00       	mov    $0x1,%edx
1405634b7:	49 8b cc             	mov    %r12,%rcx
1405634ba:	e8 c1 51 c4 ff       	call   0x1401a8680
1405634bf:	48 ff c5             	inc    %rbp
1405634c2:	48 89 6c 24 40       	mov    %rbp,0x40(%rsp)
1405634c7:	48 83 c7 18          	add    $0x18,%rdi
1405634cb:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
1405634d0:	49 8b 4d 10          	mov    0x10(%r13),%rcx
1405634d4:	49 2b 4d 08          	sub    0x8(%r13),%rcx
1405634d8:	49 8b c7             	mov    %r15,%rax
1405634db:	48 f7 e9             	imul   %rcx
1405634de:	48 c1 fa 02          	sar    $0x2,%rdx
1405634e2:	48 8b c2             	mov    %rdx,%rax
1405634e5:	48 c1 e8 3f          	shr    $0x3f,%rax
1405634e9:	48 03 d0             	add    %rax,%rdx
1405634ec:	48 3b ea             	cmp    %rdx,%rbp
1405634ef:	73 08                	jae    0x1405634f9
1405634f1:	45 33 c0             	xor    %r8d,%r8d
1405634f4:	e9 80 fd ff ff       	jmp    0x140563279
1405634f9:	49 8d 55 20          	lea    0x20(%r13),%rdx
1405634fd:	44 0f b6 44 24 30    	movzbl 0x30(%rsp),%r8d
140563503:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140563508:	e8 a3 00 00 00       	call   0x1405635b0
14056350d:	90                   	nop
14056350e:	4c 8b 40 10          	mov    0x10(%rax),%r8
140563512:	48 83 78 18 0f       	cmpq   $0xf,0x18(%rax)
140563517:	76 03                	jbe    0x14056351c
140563519:	48 8b 00             	mov    (%rax),%rax
14056351c:	48 8b d0             	mov    %rax,%rdx
14056351f:	49 8b cc             	mov    %r12,%rcx
140563522:	e8 59 ac c4 ff       	call   0x1401ae180
140563527:	90                   	nop
140563528:	48 8b 54 24 68       	mov    0x68(%rsp),%rdx
14056352d:	48 83 fa 0f          	cmp    $0xf,%rdx
140563531:	76 2e                	jbe    0x140563561
140563533:	48 ff c2             	inc    %rdx
140563536:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14056353b:	48 8b c1             	mov    %rcx,%rax
14056353e:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140563545:	72 15                	jb     0x14056355c
140563547:	48 83 c2 27          	add    $0x27,%rdx
14056354b:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx