140035660:	41 57                	push   %r15
140035662:	41 56                	push   %r14
140035664:	41 55                	push   %r13
140035666:	41 54                	push   %r12
140035668:	56                   	push   %rsi
140035669:	57                   	push   %rdi
14003566a:	55                   	push   %rbp
14003566b:	53                   	push   %rbx
14003566c:	48 81 ec 98 00 00 00 	sub    $0x98,%rsp
140035673:	4c 89 ce             	mov    %r9,%rsi
140035676:	4d 89 c6             	mov    %r8,%r14
140035679:	41 89 d4             	mov    %edx,%r12d
14003567c:	48 89 cf             	mov    %rcx,%rdi
14003567f:	48 8b 05 ba b9 0c 00 	mov    0xcb9ba(%rip),%rax        # 0x140101040
140035686:	48 31 e0             	xor    %rsp,%rax
140035689:	48 89 84 24 90 00 00 	mov    %rax,0x90(%rsp)
140035690:	00
140035691:	49 8b 19             	mov    (%r9),%rbx
140035694:	4d 8b 79 08          	mov    0x8(%r9),%r15
140035698:	4c 39 fb             	cmp    %r15,%rbx
14003569b:	0f 85 cd 02 00 00    	jne    0x14003596e
1400356a1:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
1400356a5:	48 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaaa,%rax
1400356ac:	aa aa aa
1400356af:	4c 8d 7c 24 40       	lea    0x40(%rsp),%r15
1400356b4:	49 89 47 10          	mov    %rax,0x10(%r15)
1400356b8:	0f 28 05 51 b2 0a 00 	movaps 0xab251(%rip),%xmm0        # 0x1400e0910
1400356bf:	41 0f 29 07          	movaps %xmm0,(%r15)
1400356c3:	41 0f 10 06          	movups (%r14),%xmm0
1400356c7:	4c 8d 44 24 70       	lea    0x70(%rsp),%r8
1400356cc:	41 0f 29 00          	movaps %xmm0,(%r8)
1400356d0:	0f 10 07             	movups (%rdi),%xmm0
1400356d3:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
1400356d8:	0f 29 02             	movaps %xmm0,(%rdx)
1400356db:	c7 44 24 20 01 00 00 	movl   $0x1,0x20(%rsp)
1400356e2:	00
1400356e3:	4c 89 f9             	mov    %r15,%rcx
1400356e6:	41 b9 01 00 00 00    	mov    $0x1,%r9d
1400356ec:	e8 bf 02 00 00       	call   0x1400359b0
1400356f1:	49 8b 3f             	mov    (%r15),%rdi
1400356f4:	49 8b 5f 08          	mov    0x8(%r15),%rbx
1400356f8:	48 89 d8             	mov    %rbx,%rax
1400356fb:	48 29 f8             	sub    %rdi,%rax
1400356fe:	48 c1 f8 04          	sar    $0x4,%rax
140035702:	4c 8b 36             	mov    (%rsi),%r14
140035705:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
140035709:	4c 29 f1             	sub    %r14,%rcx
14003570c:	48 c1 f9 04          	sar    $0x4,%rcx
140035710:	48 ba ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rdx
140035717:	aa aa aa
14003571a:	48 0f af ca          	imul   %rdx,%rcx
14003571e:	48 39 c8             	cmp    %rcx,%rax
140035721:	77 49                	ja     0x14003576c
140035723:	40 b5 01             	mov    $0x1,%bpl
140035726:	48 39 df             	cmp    %rbx,%rdi
140035729:	0f 85 d0 00 00 00    	jne    0x1400357ff
14003572f:	48 85 ff             	test   %rdi,%rdi
140035732:	0f 85 b5 00 00 00    	jne    0x1400357ed
140035738:	40 80 e5 01          	and    $0x1,%bpl
14003573c:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
140035743:	00
140035744:	48 31 e1             	xor    %rsp,%rcx
140035747:	48 3b 0d f2 b8 0c 00 	cmp    0xcb8f2(%rip),%rcx        # 0x140101040
14003574e:	74 06                	je     0x140035756
140035750:	e8 7b 9b 03 00       	call   0x14006f2d0
140035755:	cc                   	int3
140035756:	89 e8                	mov    %ebp,%eax
140035758:	48 81 c4 98 00 00 00 	add    $0x98,%rsp
14003575f:	5b                   	pop    %rbx
140035760:	5d                   	pop    %rbp
140035761:	5f                   	pop    %rdi
140035762:	5e                   	pop    %rsi
140035763:	41 5c                	pop    %r12
140035765:	41 5d                	pop    %r13
140035767:	41 5e                	pop    %r14
140035769:	41 5f                	pop    %r15
14003576b:	c3                   	ret
14003576c:	44 88 64 24 2b       	mov    %r12b,0x2b(%rsp)
140035771:	48 b9 56 55 55 55 55 	movabs $0x555555555555556,%rcx
140035778:	55 55 05
14003577b:	48 39 c8             	cmp    %rcx,%rax
14003577e:	0f 83 01 02 00 00    	jae    0x140035985
140035784:	4c 8b 66 08          	mov    0x8(%rsi),%r12
140035788:	48 c1 e0 04          	shl    $0x4,%rax
14003578c:	4c 8d 3c 40          	lea    (%rax,%rax,2),%r15
140035790:	4c 89 f9             	mov    %r15,%rcx
140035793:	e8 fc 86 03 00       	call   0x14006de94
140035798:	49 89 c5             	mov    %rax,%r13
14003579b:	49 01 c7             	add    %rax,%r15
14003579e:	4d 29 f4             	sub    %r14,%r12
1400357a1:	4a 8d 2c 20          	lea    (%rax,%r12,1),%rbp
1400357a5:	0f 85 e2 01 00 00    	jne    0x14003598d
1400357ab:	4c 89 2e             	mov    %r13,(%rsi)
1400357ae:	48 89 6e 08          	mov    %rbp,0x8(%rsi)
1400357b2:	4c 89 7e 10          	mov    %r15,0x10(%rsi)
1400357b6:	4d 85 f6             	test   %r14,%r14
1400357b9:	44 8a 64 24 2b       	mov    0x2b(%rsp),%r12b
1400357be:	0f 84 5f ff ff ff    	je     0x140035723
1400357c4:	4c 89 f1             	mov    %r14,%rcx
1400357c7:	e8 04 87 03 00       	call   0x14006ded0
1400357cc:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
1400357d1:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1400357d6:	e9 48 ff ff ff       	jmp    0x140035723
1400357db:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
1400357e0:	48 89 f9             	mov    %rdi,%rcx
1400357e3:	e8 e8 86 03 00       	call   0x14006ded0
1400357e8:	e9 4b ff ff ff       	jmp    0x140035738
1400357ed:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
1400357f2:	48 39 f8             	cmp    %rdi,%rax
1400357f5:	74 e4                	je     0x1400357db
1400357f7:	48 83 c0 f0          	add    $0xfffffffffffffff0,%rax
1400357fb:	75 f5                	jne    0x1400357f2
1400357fd:	0f 0b                	ud2
1400357ff:	44 88 64 24 2b       	mov    %r12b,0x2b(%rsp)
140035804:	41 0f be c4          	movsbl %r12b,%eax
140035808:	89 44 24 2c          	mov    %eax,0x2c(%rsp)
14003580c:	40 b5 01             	mov    $0x1,%bpl
14003580f:	4c 8b 2f             	mov    (%rdi),%r13
140035812:	48 8b 56 08          	mov    0x8(%rsi),%rdx
140035816:	48 2b 16             	sub    (%rsi),%rdx
140035819:	4c 8b 7f 08          	mov    0x8(%rdi),%r15
14003581d:	48 c1 fa 04          	sar    $0x4,%rdx
140035821:	48 b8 ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rax
140035828:	aa aa aa
14003582b:	48 0f af d0          	imul   %rax,%rdx
14003582f:	48 ff c2             	inc    %rdx
140035832:	48 89 f1             	mov    %rsi,%rcx
140035835:	e8 c6 f2 08 00       	call   0x1400c4b00
14003583a:	4c 8b 76 08          	mov    0x8(%rsi),%r14
14003583e:	4c 39 36             	cmp    %r14,(%rsi)
140035841:	74 ba                	je     0x1400357fd
140035843:	4d 85 ff             	test   %r15,%r15
140035846:	0f 84 b8 00 00 00    	je     0x140035904
14003584c:	4c 89 e9             	mov    %r13,%rcx
14003584f:	8b 54 24 2c          	mov    0x2c(%rsp),%edx
140035853:	4d 89 f8             	mov    %r15,%r8
140035856:	e8 75 81 06 00       	call   0x14009d9d0
14003585b:	49 89 c4             	mov    %rax,%r12
14003585e:	48 85 c0             	test   %rax,%rax
140035861:	0f 94 c0             	sete   %al
140035864:	4c 89 64 24 38       	mov    %r12,0x38(%rsp)
140035869:	4d 29 ec             	sub    %r13,%r12
14003586c:	49 83 fc ff          	cmp    $0xffffffffffffffff,%r12
140035870:	0f 94 c1             	sete   %cl
140035873:	08 c1                	or     %al,%cl
140035875:	0f 85 89 00 00 00    	jne    0x140035904
14003587b:	49 8d 46 d0          	lea    -0x30(%r14),%rax
14003587f:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140035884:	4d 39 e7             	cmp    %r12,%r15
140035887:	4c 89 e0             	mov    %r12,%rax
14003588a:	49 0f 42 c7          	cmovb  %r15,%rax
14003588e:	4c 89 6c 24 60       	mov    %r13,0x60(%rsp)
140035893:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
140035898:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
14003589d:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
1400358a2:	e8 c9 bf 01 00       	call   0x140051870
1400358a7:	41 80 7e e7 00       	cmpb   $0x0,-0x19(%r14)
1400358ac:	79 0d                	jns    0x1400358bb
1400358ae:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1400358b3:	48 8b 08             	mov    (%rax),%rcx
1400358b6:	e8 15 86 03 00       	call   0x14006ded0
1400358bb:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
1400358c2:	00
1400358c3:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1400358c8:	48 89 41 10          	mov    %rax,0x10(%rcx)
1400358cc:	0f 10 44 24 70       	movups 0x70(%rsp),%xmm0
1400358d1:	0f 11 01             	movups %xmm0,(%rcx)
1400358d4:	4c 89 f8             	mov    %r15,%rax
1400358d7:	4c 29 e0             	sub    %r12,%rax
1400358da:	0f 82 c0 00 00 00    	jb     0x1400359a0
1400358e0:	74 22                	je     0x140035904
1400358e2:	4d 01 ef             	add    %r13,%r15
1400358e5:	4c 39 7c 24 38       	cmp    %r15,0x38(%rsp)
1400358ea:	74 18                	je     0x140035904
1400358ec:	4d 01 e5             	add    %r12,%r13
1400358ef:	31 c9                	xor    %ecx,%ecx
1400358f1:	8a 54 24 2b          	mov    0x2b(%rsp),%dl
1400358f5:	41 38 54 0d 00       	cmp    %dl,0x0(%r13,%rcx,1)
1400358fa:	75 21                	jne    0x14003591d
1400358fc:	48 ff c1             	inc    %rcx
1400358ff:	48 39 c8             	cmp    %rcx,%rax
140035902:	75 ed                	jne    0x1400358f1
140035904:	31 ed                	xor    %ebp,%ebp
140035906:	48 83 c7 10          	add    $0x10,%rdi
14003590a:	48 39 df             	cmp    %rbx,%rdi
14003590d:	0f 85 fc fe ff ff    	jne    0x14003580f
140035913:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
140035918:	e9 12 fe ff ff       	jmp    0x14003572f
14003591d:	48 83 f9 ff          	cmp    $0xffffffffffffffff,%rcx
140035921:	74 e1                	je     0x140035904
140035923:	48 29 c8             	sub    %rcx,%rax
140035926:	72 78                	jb     0x1400359a0
140035928:	49 01 cd             	add    %rcx,%r13
14003592b:	4c 89 6c 24 60       	mov    %r13,0x60(%rsp)
140035930:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
140035935:	48 8d 4c 24 70       	lea    0x70(%rsp),%rcx
14003593a:	48 8d 54 24 60       	lea    0x60(%rsp),%rdx
14003593f:	e8 2c bf 01 00       	call   0x140051870
140035944:	4d 8d 7e e8          	lea    -0x18(%r14),%r15
140035948:	41 80 7e ff 00       	cmpb   $0x0,-0x1(%r14)
14003594d:	79 08                	jns    0x140035957
14003594f:	49 8b 0f             	mov    (%r15),%rcx
140035952:	e8 79 85 03 00       	call   0x14006ded0
140035957:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
14003595e:	00
14003595f:	49 89 47 10          	mov    %rax,0x10(%r15)
140035963:	0f 10 44 24 70       	movups 0x70(%rsp),%xmm0
140035968:	41 0f 11 07          	movups %xmm0,(%r15)
14003596c:	eb 98                	jmp    0x140035906
14003596e:	49 83 c7 d0          	add    $0xffffffffffffffd0,%r15
140035972:	4c 89 f9             	mov    %r15,%rcx
140035975:	e8 46 6c ff ff       	call   0x14002c5c0
14003597a:	49 39 df             	cmp    %rbx,%r15
14003597d:	0f 84 1e fd ff ff    	je     0x1400356a1
140035983:	eb e9                	jmp    0x14003596e
140035985:	48 89 f1             	mov    %rsi,%rcx
140035988:	e8 23 d5 06 00       	call   0x1400a2eb0
14003598d:	4c 89 e9             	mov    %r13,%rcx
140035990:	4c 89 f2             	mov    %r14,%rdx
140035993:	4d 89 e0             	mov    %r12,%r8
140035996:	e8 d5 81 06 00       	call   0x14009db70
14003599b:	e9 0b fe ff ff       	jmp    0x1400357ab
1400359a0:	48 8d 0d 92 d2 0a 00 	lea    0xad292(%rip),%rcx        # 0x1400e2c39
1400359a7:	e8 b4 9a 06 00       	call   0x14009f460
1400359ac:	cc                   	int3
1400359ad:	cc                   	int3
1400359ae:	cc                   	int3
1400359af:	cc                   	int3
1400359b0:	41 57                	push   %r15
1400359b2:	41 56                	push   %r14
1400359b4:	41 55                	push   %r13
1400359b6:	41 54                	push   %r12
1400359b8:	56                   	push   %rsi
1400359b9:	57                   	push   %rdi
1400359ba:	55                   	push   %rbp
1400359bb:	53                   	push   %rbx
1400359bc:	48 81 ec a8 00 00 00 	sub    $0xa8,%rsp
1400359c3:	0f 29 b4 24 90 00 00 	movaps %xmm6,0x90(%rsp)
1400359ca:	00
1400359cb:	48 89 d7             	mov    %rdx,%rdi
1400359ce:	48 8b 05 6b b6 0c 00 	mov    0xcb66b(%rip),%rax        # 0x140101040
1400359d5:	48 31 e0             	xor    %rsp,%rax
1400359d8:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
1400359df:	00
1400359e0:	0f 57 c0             	xorps  %xmm0,%xmm0
1400359e3:	0f 11 01             	movups %xmm0,(%rcx)
1400359e6:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
1400359eb:	48 c7 41 10 00 00 00 	movq   $0x0,0x10(%rcx)
1400359f2:	00
1400359f3:	49 8b 68 08          	mov    0x8(%r8),%rbp
1400359f7:	48 85 ed             	test   %rbp,%rbp
1400359fa:	0f 84 46 02 00 00    	je     0x140035c46
140035a00:	45 89 ce             	mov    %r9d,%r14d
140035a03:	4d 89 c7             	mov    %r8,%r15
140035a06:	31 db                	xor    %ebx,%ebx
140035a08:	0f 28 35 01 af 0a 00 	movaps 0xaaf01(%rip),%xmm6        # 0x1400e0910
140035a0f:	48 85 ed             	test   %rbp,%rbp
140035a12:	0f 84 f8 01 00 00    	je     0x140035c10
140035a18:	4d 8b 2f             	mov    (%r15),%r13
140035a1b:	4d 85 ed             	test   %r13,%r13
140035a1e:	0f 84 ad 01 00 00    	je     0x140035bd1
140035a24:	48 8b 77 08          	mov    0x8(%rdi),%rsi
140035a28:	49 89 f0             	mov    %rsi,%r8
140035a2b:	49 29 d8             	sub    %rbx,%r8
140035a2e:	72 57                	jb     0x140035a87
140035a30:	49 39 e8             	cmp    %rbp,%r8
140035a33:	7c 52                	jl     0x140035a87
140035a35:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
140035a3a:	44 89 74 24 24       	mov    %r14d,0x24(%rsp)
140035a3f:	49 89 fe             	mov    %rdi,%r14
140035a42:	48 8b 3f             	mov    (%rdi),%rdi
140035a45:	48 8d 04 37          	lea    (%rdi,%rsi,1),%rax
140035a49:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140035a4e:	45 0f be 7d 00       	movsbl 0x0(%r13),%r15d
140035a53:	4c 8d 24 1f          	lea    (%rdi,%rbx,1),%r12
140035a57:	48 83 fd 02          	cmp    $0x2,%rbp
140035a5b:	0f 85 26 01 00 00    	jne    0x140035b87
140035a61:	49 ff c8             	dec    %r8
140035a64:	74 14                	je     0x140035a7a
140035a66:	4c 89 e1             	mov    %r12,%rcx
140035a69:	44 89 fa             	mov    %r15d,%edx
140035a6c:	e8 5f 7f 06 00       	call   0x14009d9d0
140035a71:	48 85 c0             	test   %rax,%rax
140035a74:	0f 85 e2 00 00 00    	jne    0x140035b5c
140035a7a:	4c 89 f7             	mov    %r14,%rdi
140035a7d:	44 8b 74 24 24       	mov    0x24(%rsp),%r14d
140035a82:	4c 8b 7c 24 28       	mov    0x28(%rsp),%r15
140035a87:	0f 29 74 24 70       	movaps %xmm6,0x70(%rsp)
140035a8c:	48 29 de             	sub    %rbx,%rsi
140035a8f:	0f 82 52 01 00 00    	jb     0x140035be7
140035a95:	49 c7 c4 ff ff ff ff 	mov    $0xffffffffffffffff,%r12
140035a9c:	48 03 1f             	add    (%rdi),%rbx
140035a9f:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
140035aa4:	48 89 74 24 78       	mov    %rsi,0x78(%rsp)
140035aa9:	41 83 fe 01          	cmp    $0x1,%r14d
140035aad:	75 49                	jne    0x140035af8
140035aaf:	48 8d 0d 7e b2 0b 00 	lea    0xbb27e(%rip),%rcx        # 0x1400f0d34
140035ab6:	48 89 4c 24 50       	mov    %rcx,0x50(%rsp)
140035abb:	e8 d0 1b 05 00       	call   0x140087690
140035ac0:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
140035ac5:	0f 28 44 24 70       	movaps 0x70(%rsp),%xmm0
140035aca:	0f 29 44 24 40       	movaps %xmm0,0x40(%rsp)
140035acf:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
140035ad4:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140035ad9:	4c 8d 44 24 50       	lea    0x50(%rsp),%r8
140035ade:	41 b9 03 00 00 00    	mov    $0x3,%r9d
140035ae4:	e8 97 84 02 00       	call   0x14005df80
140035ae9:	0f 10 44 24 60       	movups 0x60(%rsp),%xmm0
140035aee:	0f 29 44 24 70       	movaps %xmm0,0x70(%rsp)
140035af3:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
140035af8:	83 bc 24 10 01 00 00 	cmpl   $0x0,0x110(%rsp)
140035aff:	00
140035b00:	0f 84 cd 00 00 00    	je     0x140035bd3
140035b06:	48 85 f6             	test   %rsi,%rsi
140035b09:	0f 85 c4 00 00 00    	jne    0x140035bd3
140035b0f:	49 8b 6f 08          	mov    0x8(%r15),%rbp
140035b13:	49 8d 1c 2c          	lea    (%r12,%rbp,1),%rbx
140035b17:	49 83 fc ff          	cmp    $0xffffffffffffffff,%r12
140035b1b:	0f 85 ee fe ff ff    	jne    0x140035a0f
140035b21:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
140035b28:	00
140035b29:	48 31 e1             	xor    %rsp,%rcx
140035b2c:	48 3b 0d 0d b5 0c 00 	cmp    0xcb50d(%rip),%rcx        # 0x140101040
140035b33:	74 06                	je     0x140035b3b
140035b35:	e8 96 97 03 00       	call   0x14006f2d0
140035b3a:	cc                   	int3
140035b3b:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140035b40:	0f 28 b4 24 90 00 00 	movaps 0x90(%rsp),%xmm6
140035b47:	00
140035b48:	48 81 c4 a8 00 00 00 	add    $0xa8,%rsp
140035b4f:	5b                   	pop    %rbx
140035b50:	5d                   	pop    %rbp
140035b51:	5f                   	pop    %rdi
140035b52:	5e                   	pop    %rsi
140035b53:	41 5c                	pop    %r12
140035b55:	41 5d                	pop    %r13
140035b57:	41 5e                	pop    %r14
140035b59:	41 5f                	pop    %r15
140035b5b:	c3                   	ret
140035b5c:	49 89 c4             	mov    %rax,%r12
140035b5f:	0f b7 00             	movzwl (%rax),%eax
140035b62:	66 41 3b 45 00       	cmp    0x0(%r13),%ax
140035b67:	0f 84 86 00 00 00    	je     0x140035bf3
140035b6d:	49 ff c4             	inc    %r12
140035b70:	4c 8b 44 24 38       	mov    0x38(%rsp),%r8
140035b75:	4d 29 e0             	sub    %r12,%r8
140035b78:	49 83 f8 02          	cmp    $0x2,%r8
140035b7c:	0f 8d df fe ff ff    	jge    0x140035a61
140035b82:	e9 f3 fe ff ff       	jmp    0x140035a7a
140035b87:	49 29 e8             	sub    %rbp,%r8