14023664c:	4c 8d 34 0a          	lea    (%rdx,%rcx,1),%r14
140236650:	4c 3b f2             	cmp    %rdx,%r14
140236653:	73 03                	jae    0x140236658
140236655:	49 ff c1             	inc    %r9
140236658:	80 eb 40             	sub    $0x40,%bl
14023665b:	49 8b c2             	mov    %r10,%rax
14023665e:	49 2b c3             	sub    %r11,%rax
140236661:	89 5c 24 28          	mov    %ebx,0x28(%rsp)
140236665:	0f b6 cb             	movzbl %bl,%ecx
140236668:	4d 0f ad ce          	shrd   %cl,%r9,%r14
14023666c:	4d 8b 48 08          	mov    0x8(%r8),%r9
140236670:	4c 8d 58 ff          	lea    -0x1(%rax),%r11
140236674:	49 8b c1             	mov    %r9,%rax
140236677:	49 f7 e3             	mul    %r11
14023667a:	48 8b c8             	mov    %rax,%rcx
14023667d:	4c 8b c2             	mov    %rdx,%r8
140236680:	48 8b c7             	mov    %rdi,%rax
140236683:	49 f7 e3             	mul    %r11
140236686:	48 8d 3c 0a          	lea    (%rdx,%rcx,1),%rdi
14023668a:	48 3b fa             	cmp    %rdx,%rdi
14023668d:	73 03                	jae    0x140236692
14023668f:	49 ff c0             	inc    %r8
140236692:	0f b6 cb             	movzbl %bl,%ecx
140236695:	49 8b c1             	mov    %r9,%rax
140236698:	49 f7 e2             	mul    %r10
14023669b:	4c 0f ad c7          	shrd   %cl,%r8,%rdi
14023669f:	48 8b d8             	mov    %rax,%rbx
1402366a2:	4c 8b ca             	mov    %rdx,%r9
1402366a5:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1402366aa:	49 f7 e2             	mul    %r10
1402366ad:	48 03 da             	add    %rdx,%rbx
1402366b0:	48 3b da             	cmp    %rdx,%rbx
1402366b3:	73 03                	jae    0x1402366b8
1402366b5:	49 ff c1             	inc    %r9
1402366b8:	0f b6 4c 24 28       	movzbl 0x28(%rsp),%ecx
1402366bd:	4c 0f ad cb          	shrd   %cl,%r9,%rbx
1402366c1:	41 83 fd 15          	cmp    $0x15,%r13d
1402366c5:	77 44                	ja     0x14023670b
1402366c7:	48 b8 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rax
1402366ce:	cc cc cc
1402366d1:	49 f7 e2             	mul    %r10
1402366d4:	48 c1 ea 02          	shr    $0x2,%rdx
1402366d8:	8d 14 92             	lea    (%rdx,%rdx,4),%edx
1402366db:	44 3b d2             	cmp    %edx,%r10d
1402366de:	41 8b d5             	mov    %r13d,%edx
1402366e1:	75 13                	jne    0x1402366f6
1402366e3:	49 8b ca             	mov    %r10,%rcx
1402366e6:	e8 55 13 00 00       	call   0x140237a40
1402366eb:	0f b6 e8             	movzbl %al,%ebp
1402366ee:	44 8b d6             	mov    %esi,%r10d
1402366f1:	45 32 c9             	xor    %r9b,%r9b
1402366f4:	eb 24                	jmp    0x14023671a
1402366f6:	45 84 e4             	test   %r12b,%r12b
1402366f9:	0f 84 18 01 00 00    	je     0x140236817
1402366ff:	49 8b cb             	mov    %r11,%rcx
140236702:	e8 39 13 00 00       	call   0x140237a40
140236707:	44 0f b6 f8          	movzbl %al,%r15d
14023670b:	45 32 c9             	xor    %r9b,%r9b
14023670e:	44 8b d6             	mov    %esi,%r10d
140236711:	45 84 ff             	test   %r15b,%r15b
140236714:	0f 85 3c 02 00 00    	jne    0x140236956
14023671a:	40 84 ed             	test   %bpl,%bpl
14023671d:	0f 85 33 02 00 00    	jne    0x140236956
140236723:	48 b9 15 ae 47 e1 7a 	movabs $0x47ae147ae147ae15,%rcx
14023672a:	14 ae 47
14023672d:	4d 8b c6             	mov    %r14,%r8
140236730:	48 8b c1             	mov    %rcx,%rax
140236733:	4c 8b cf             	mov    %rdi,%r9
140236736:	49 f7 e6             	mul    %r14
140236739:	48 8b c1             	mov    %rcx,%rax
14023673c:	45 32 db             	xor    %r11b,%r11b
14023673f:	4c 2b c2             	sub    %rdx,%r8
140236742:	49 d1 e8             	shr    $1,%r8
140236745:	4c 03 c2             	add    %rdx,%r8
140236748:	48 f7 e7             	mul    %rdi
14023674b:	49 c1 e8 06          	shr    $0x6,%r8
14023674f:	4c 2b ca             	sub    %rdx,%r9
140236752:	49 d1 e9             	shr    $1,%r9
140236755:	4c 03 ca             	add    %rdx,%r9
140236758:	49 c1 e9 06          	shr    $0x6,%r9
14023675c:	4d 3b c1             	cmp    %r9,%r8
14023675f:	76 31                	jbe    0x140236792
140236761:	48 8b c1             	mov    %rcx,%rax
140236764:	4d 8b f0             	mov    %r8,%r14
140236767:	48 f7 e3             	mul    %rbx
14023676a:	48 8b cb             	mov    %rbx,%rcx
14023676d:	49 8b f9             	mov    %r9,%rdi
140236770:	48 2b ca             	sub    %rdx,%rcx
140236773:	41 ba 02 00 00 00    	mov    $0x2,%r10d
140236779:	48 d1 e9             	shr    $1,%rcx
14023677c:	48 03 ca             	add    %rdx,%rcx
14023677f:	48 c1 e9 06          	shr    $0x6,%rcx
140236783:	6b c1 64             	imul   $0x64,%ecx,%eax
140236786:	2b d8                	sub    %eax,%ebx
140236788:	83 fb 32             	cmp    $0x32,%ebx
14023678b:	48 8b d9             	mov    %rcx,%rbx
14023678e:	41 0f 93 c3          	setae  %r11b
140236792:	49 b9 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%r9
140236799:	cc cc cc
14023679c:	49 8b c1             	mov    %r9,%rax
14023679f:	49 f7 e6             	mul    %r14
1402367a2:	49 8b c1             	mov    %r9,%rax
1402367a5:	4c 8b c2             	mov    %rdx,%r8
1402367a8:	48 f7 e7             	mul    %rdi
1402367ab:	49 c1 e8 03          	shr    $0x3,%r8
1402367af:	48 8b ca             	mov    %rdx,%rcx
1402367b2:	48 c1 e9 03          	shr    $0x3,%rcx
1402367b6:	4c 3b c1             	cmp    %rcx,%r8
1402367b9:	76 45                	jbe    0x140236800
1402367bb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1402367c0:	49 8b c1             	mov    %r9,%rax
1402367c3:	48 8b f9             	mov    %rcx,%rdi
1402367c6:	48 f7 e3             	mul    %rbx
1402367c9:	48 c1 ea 03          	shr    $0x3,%rdx
1402367cd:	8d 04 92             	lea    (%rdx,%rdx,4),%eax
1402367d0:	03 c0                	add    %eax,%eax
1402367d2:	2b d8                	sub    %eax,%ebx
1402367d4:	49 8b c1             	mov    %r9,%rax
1402367d7:	83 fb 05             	cmp    $0x5,%ebx
1402367da:	48 8b da             	mov    %rdx,%rbx
1402367dd:	41 0f 93 c3          	setae  %r11b
1402367e1:	41 ff c2             	inc    %r10d
1402367e4:	49 f7 e0             	mul    %r8
1402367e7:	49 8b c1             	mov    %r9,%rax
1402367ea:	4c 8b c2             	mov    %rdx,%r8
1402367ed:	48 f7 e1             	mul    %rcx
1402367f0:	49 c1 e8 03          	shr    $0x3,%r8
1402367f4:	48 8b ca             	mov    %rdx,%rcx
1402367f7:	48 c1 e9 03          	shr    $0x3,%rcx
1402367fb:	4c 3b c1             	cmp    %rcx,%r8
1402367fe:	77 c0                	ja     0x1402367c0
140236800:	48 3b df             	cmp    %rdi,%rbx
140236803:	0f 84 9c 02 00 00    	je     0x140236aa5
140236809:	45 84 db             	test   %r11b,%r11b
14023680c:	0f 84 98 02 00 00    	je     0x140236aaa
140236812:	e9 8e 02 00 00       	jmp    0x140236aa5
140236817:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
14023681c:	e8 1f 12 00 00       	call   0x140237a40
140236821:	0f b6 c0             	movzbl %al,%eax
140236824:	4c 2b f0             	sub    %rax,%r14
140236827:	e9 df fe ff ff       	jmp    0x14023670b
14023682c:	41 8b c1             	mov    %r9d,%eax
14023682f:	4d 8d 42 02          	lea    0x2(%r10),%r8
140236833:	f7 d8                	neg    %eax
140236835:	8b ce                	mov    %esi,%ecx
140236837:	83 f8 01             	cmp    $0x1,%eax
14023683a:	0f 9f c1             	setg   %cl
14023683d:	45 69 d9 05 d1 f4 ff 	imul   $0xfff4d105,%r9d,%r11d
140236844:	41 c1 eb 14          	shr    $0x14,%r11d
140236848:	44 2b d9             	sub    %ecx,%r11d
14023684b:	41 8b db             	mov    %r11d,%ebx
14023684e:	47 8d 2c 0b          	lea    (%r11,%r9,1),%r13d
140236852:	41 8b cd             	mov    %r13d,%ecx
140236855:	f7 d9                	neg    %ecx
140236857:	69 c1 4f 93 12 00    	imul   $0x12934f,%ecx,%eax
14023685d:	4c 63 c9             	movslq %ecx,%r9
140236860:	49 c1 e1 04          	shl    $0x4,%r9
140236864:	c1 e8 13             	shr    $0x13,%eax
140236867:	2b d8                	sub    %eax,%ebx
140236869:	48 8d 05 30 d4 f8 00 	lea    0xf8d430(%rip),%rax        # 0x1411c3ca0
140236870:	4c 03 c8             	add    %rax,%r9
140236873:	83 c3 78             	add    $0x78,%ebx
140236876:	49 8b 41 08          	mov    0x8(%r9),%rax
14023687a:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14023687f:	49 f7 e0             	mul    %r8
140236882:	4c 8b f0             	mov    %rax,%r14
140236885:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
14023688a:	49 8b 01             	mov    (%r9),%rax
14023688d:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140236892:	49 f7 e0             	mul    %r8
140236895:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
14023689a:	4c 03 f2             	add    %rdx,%r14
14023689d:	4c 3b f2             	cmp    %rdx,%r14
1402368a0:	73 03                	jae    0x1402368a5
1402368a2:	48 ff c0             	inc    %rax
1402368a5:	80 eb 40             	sub    $0x40,%bl
1402368a8:	4d 8b c2             	mov    %r10,%r8
1402368ab:	4c 2b c7             	sub    %rdi,%r8
1402368ae:	89 5c 24 28          	mov    %ebx,0x28(%rsp)
1402368b2:	49 ff c8             	dec    %r8
1402368b5:	0f b6 cb             	movzbl %bl,%ecx
1402368b8:	49 0f ad c6          	shrd   %cl,%rax,%r14
1402368bc:	49 8b 41 08          	mov    0x8(%r9),%rax
1402368c0:	49 f7 e0             	mul    %r8
1402368c3:	48 8b f8             	mov    %rax,%rdi
1402368c6:	4c 8b ca             	mov    %rdx,%r9
1402368c9:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1402368ce:	49 f7 e0             	mul    %r8
1402368d1:	48 03 fa             	add    %rdx,%rdi
1402368d4:	48 3b fa             	cmp    %rdx,%rdi
1402368d7:	73 03                	jae    0x1402368dc
1402368d9:	49 ff c1             	inc    %r9
1402368dc:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
1402368e1:	49 f7 e2             	mul    %r10
1402368e4:	4c 0f ad cf          	shrd   %cl,%r9,%rdi
1402368e8:	48 8b d8             	mov    %rax,%rbx
1402368eb:	4c 8b ca             	mov    %rdx,%r9
1402368ee:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
1402368f3:	49 f7 e2             	mul    %r10
1402368f6:	48 03 da             	add    %rdx,%rbx
1402368f9:	48 3b da             	cmp    %rdx,%rbx
1402368fc:	73 03                	jae    0x140236901
1402368fe:	49 ff c1             	inc    %r9
140236901:	0f b6 4c 24 28       	movzbl 0x28(%rsp),%ecx
140236906:	4c 0f ad cb          	shrd   %cl,%r9,%rbx
14023690a:	41 83 fb 01          	cmp    $0x1,%r11d
14023690e:	77 1b                	ja     0x14023692b
140236910:	40 b5 01             	mov    $0x1,%bpl
140236913:	45 84 e4             	test   %r12b,%r12b
140236916:	74 0b                	je     0x140236923
140236918:	44 0f b6 7c 24 20    	movzbl 0x20(%rsp),%r15d
14023691e:	e9 e8 fd ff ff       	jmp    0x14023670b
140236923:	49 ff ce             	dec    %r14
140236926:	e9 e0 fd ff ff       	jmp    0x14023670b
14023692b:	41 83 fb 3f          	cmp    $0x3f,%r11d
14023692f:	0f 83 d6 fd ff ff    	jae    0x14023670b
140236935:	41 8d 4b ff          	lea    -0x1(%r11),%ecx
140236939:	b8 01 00 00 00       	mov    $0x1,%eax
14023693e:	48 d3 e0             	shl    %cl,%rax
140236941:	48 ff c8             	dec    %rax
140236944:	49 85 c2             	test   %rax,%r10
140236947:	44 8b d6             	mov    %esi,%r10d
14023694a:	40 0f 94 c5          	sete   %bpl
14023694e:	45 32 c9             	xor    %r9b,%r9b
140236951:	e9 c4 fd ff ff       	jmp    0x14023671a
140236956:	48 b9 cd cc cc cc cc 	movabs $0xcccccccccccccccd,%rcx
14023695d:	cc cc cc
140236960:	48 8b c1             	mov    %rcx,%rax
140236963:	49 f7 e6             	mul    %r14
140236966:	48 8b c1             	mov    %rcx,%rax
140236969:	4c 8b f2             	mov    %rdx,%r14
14023696c:	48 f7 e7             	mul    %rdi
14023696f:	49 c1 ee 03          	shr    $0x3,%r14
140236973:	4c 8b da             	mov    %rdx,%r11
140236976:	49 c1 eb 03          	shr    $0x3,%r11
14023697a:	4d 3b f3             	cmp    %r11,%r14
14023697d:	0f 86 7d 00 00 00    	jbe    0x140236a00
140236983:	4c 8b e1             	mov    %rcx,%r12
140236986:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14023698d:	00 00 00
140236990:	43 8d 0c 9b          	lea    (%r11,%r11,4),%ecx
140236994:	49 8b c4             	mov    %r12,%rax
140236997:	48 f7 e3             	mul    %rbx
14023699a:	03 c9                	add    %ecx,%ecx
14023699c:	41 0f b6 c7          	movzbl %r15b,%eax
1402369a0:	48 c1 ea 03          	shr    $0x3,%rdx
1402369a4:	44 8b c6             	mov    %esi,%r8d
1402369a7:	3b f9                	cmp    %ecx,%edi
1402369a9:	8b ce                	mov    %esi,%ecx
1402369ab:	49 8b fb             	mov    %r11,%rdi
1402369ae:	44 0f 44 c0          	cmove  %eax,%r8d
1402369b2:	40 0f b6 c5          	movzbl %bpl,%eax
1402369b6:	45 84 c9             	test   %r9b,%r9b
1402369b9:	45 0f b6 f8          	movzbl %r8b,%r15d
1402369bd:	44 0f b6 cb          	movzbl %bl,%r9d
1402369c1:	48 8b da             	mov    %rdx,%rbx
1402369c4:	0f 44 c8             	cmove  %eax,%ecx
1402369c7:	0f b6 c2             	movzbl %dl,%eax
1402369ca:	c0 e0 02             	shl    $0x2,%al
1402369cd:	0f b6 e9             	movzbl %cl,%ebp
1402369d0:	41 ff c2             	inc    %r10d
1402369d3:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
1402369d6:	49 8b c4             	mov    %r12,%rax
1402369d9:	49 f7 e6             	mul    %r14
1402369dc:	02 c9                	add    %cl,%cl
1402369de:	49 8b c4             	mov    %r12,%rax
1402369e1:	4c 8b f2             	mov    %rdx,%r14
1402369e4:	44 2a c9             	sub    %cl,%r9b
1402369e7:	49 f7 e3             	mul    %r11
1402369ea:	49 c1 ee 03          	shr    $0x3,%r14
1402369ee:	4c 8b da             	mov    %rdx,%r11
1402369f1:	49 c1 eb 03          	shr    $0x3,%r11
1402369f5:	4d 3b f3             	cmp    %r11,%r14
1402369f8:	77 96                	ja     0x140236990
1402369fa:	44 0f b6 64 24 21    	movzbl 0x21(%rsp),%r12d
140236a00:	45 84 ff             	test   %r15b,%r15b
140236a03:	74 70                	je     0x140236a75
140236a05:	49 bb cd cc cc cc cc 	movabs $0xcccccccccccccccd,%r11
140236a0c:	cc cc cc
140236a0f:	49 8b c3             	mov    %r11,%rax
140236a12:	48 f7 e7             	mul    %rdi
140236a15:	4c 8b c2             	mov    %rdx,%r8
140236a18:	49 c1 e8 03          	shr    $0x3,%r8
140236a1c:	43 8d 0c 80          	lea    (%r8,%r8,4),%ecx
140236a20:	03 c9                	add    %ecx,%ecx
140236a22:	3b f9                	cmp    %ecx,%edi
140236a24:	75 4f                	jne    0x140236a75
140236a26:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
140236a2d:	00 00 00
140236a30:	49 8b f8             	mov    %r8,%rdi
140236a33:	49 8b c3             	mov    %r11,%rax
140236a36:	48 f7 e3             	mul    %rbx
140236a39:	48 c1 ea 03          	shr    $0x3,%rdx
140236a3d:	45 84 c9             	test   %r9b,%r9b
140236a40:	44 0f b6 cb          	movzbl %bl,%r9d
140236a44:	48 8b da             	mov    %rdx,%rbx
140236a47:	0f 94 c0             	sete   %al
140236a4a:	41 ff c2             	inc    %r10d
140236a4d:	40 22 e8             	and    %al,%bpl
140236a50:	0f b6 c2             	movzbl %dl,%eax
140236a53:	c0 e0 02             	shl    $0x2,%al
140236a56:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
140236a59:	49 8b c3             	mov    %r11,%rax
140236a5c:	02 c9                	add    %cl,%cl
140236a5e:	49 f7 e0             	mul    %r8
140236a61:	44 2a c9             	sub    %cl,%r9b
140236a64:	4c 8b c2             	mov    %rdx,%r8
140236a67:	49 c1 e8 03          	shr    $0x3,%r8
140236a6b:	43 8d 0c 80          	lea    (%r8,%r8,4),%ecx
140236a6f:	03 c9                	add    %ecx,%ecx
140236a71:	3b f9                	cmp    %ecx,%edi
140236a73:	74 bb                	je     0x140236a30
140236a75:	40 84 ed             	test   %bpl,%bpl
140236a78:	74 16                	je     0x140236a90
140236a7a:	41 80 f9 05          	cmp    $0x5,%r9b
140236a7e:	75 10                	jne    0x140236a90
140236a80:	f6 c3 01             	test   $0x1,%bl
140236a83:	45 0f b6 c9          	movzbl %r9b,%r9d
140236a87:	b8 04 00 00 00       	mov    $0x4,%eax
140236a8c:	44 0f 44 c8          	cmove  %eax,%r9d
140236a90:	48 3b df             	cmp    %rdi,%rbx
140236a93:	75 0a                	jne    0x140236a9f
140236a95:	45 84 e4             	test   %r12b,%r12b
140236a98:	74 0b                	je     0x140236aa5
140236a9a:	45 84 ff             	test   %r15b,%r15b
140236a9d:	74 06                	je     0x140236aa5
140236a9f:	41 80 f9 05          	cmp    $0x5,%r9b
140236aa3:	72 05                	jb     0x140236aaa
140236aa5:	be 01 00 00 00       	mov    $0x1,%esi
140236aaa:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
140236aaf:	43 8d 04 2a          	lea    (%r10,%r13,1),%eax
140236ab3:	4c 8b 74 24 50       	mov    0x50(%rsp),%r14
140236ab8:	48 8d 0c 1e          	lea    (%rsi,%rbx,1),%rcx
140236abc:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140236ac1:	48 8b 9c 24 90 00 00 	mov    0x90(%rsp),%rbx
140236ac8:	00
140236ac9:	89 42 08             	mov    %eax,0x8(%rdx)
140236acc:	48 8b c2             	mov    %rdx,%rax
140236acf:	48 89 0a             	mov    %rcx,(%rdx)
140236ad2:	48 83 c4 60          	add    $0x60,%rsp
140236ad6:	41 5f                	pop    %r15
140236ad8:	41 5d                	pop    %r13
140236ada:	41 5c                	pop    %r12
140236adc:	5e                   	pop    %rsi
140236add:	5d                   	pop    %rbp
140236ade:	c3                   	ret
140236adf:	cc                   	int3
140236ae0:	40 53                	rex push %rbx
140236ae2:	56                   	push   %rsi
140236ae3:	41 54                	push   %r12