14027467a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140274680:	0f b6 54 05 d8       	movzbl -0x28(%rbp,%rax,1),%edx
140274685:	8d 4a ff             	lea    -0x1(%rdx),%ecx
140274688:	88 4c 05 d8          	mov    %cl,-0x28(%rbp,%rax,1)
14027468c:	84 d2                	test   %dl,%dl
14027468e:	75 06                	jne    0x140274696
140274690:	48 83 e8 01          	sub    $0x1,%rax
140274694:	79 ea                	jns    0x140274680
140274696:	4c 8b c7             	mov    %rdi,%r8
140274699:	48 8d 55 d8          	lea    -0x28(%rbp),%rdx
14027469d:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
1402746a1:	e8 7c 83 08 00       	call   0x1402fca22
1402746a6:	85 c0                	test   %eax,%eax
1402746a8:	0f 89 f8 00 00 00    	jns    0x1402747a6
1402746ae:	83 3e 01             	cmpl   $0x1,(%rsi)
1402746b1:	75 18                	jne    0x1402746cb
1402746b3:	44 8b c3             	mov    %ebx,%r8d
1402746b6:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1402746ba:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
1402746be:	e8 3d 0f 00 00       	call   0x140275600
1402746c3:	85 c0                	test   %eax,%eax
1402746c5:	0f 89 db 00 00 00    	jns    0x1402747a6
1402746cb:	49 8b ce             	mov    %r14,%rcx
1402746ce:	e8 4d 3d fb ff       	call   0x140228420
1402746d3:	ff c8                	dec    %eax
1402746d5:	44 3b f8             	cmp    %eax,%r15d
1402746d8:	0f 8c 42 fe ff ff    	jl     0x140274520
1402746de:	8b 75 b0             	mov    -0x50(%rbp),%esi
1402746e1:	49 8b ce             	mov    %r14,%rcx
1402746e4:	e8 37 3d fb ff       	call   0x140228420
1402746e9:	49 8b ce             	mov    %r14,%rcx
1402746ec:	8d 50 ff             	lea    -0x1(%rax),%edx
1402746ef:	e8 5c 3f fb ff       	call   0x140228650
1402746f4:	48 8b f8             	mov    %rax,%rdi
1402746f7:	48 85 c0             	test   %rax,%rax
1402746fa:	74 66                	je     0x140274762
1402746fc:	83 38 01             	cmpl   $0x1,(%rax)
1402746ff:	75 61                	jne    0x140274762
140274701:	48 8b 50 08          	mov    0x8(%rax),%rdx
140274705:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140274709:	45 33 c9             	xor    %r9d,%r9d
14027470c:	44 8b c3             	mov    %ebx,%r8d
14027470f:	48 8b 12             	mov    (%rdx),%rdx
140274712:	e8 e9 02 00 00       	call   0x140274a00
140274717:	85 c0                	test   %eax,%eax
140274719:	0f 84 87 00 00 00    	je     0x1402747a6
14027471f:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140274723:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
140274727:	41 b1 ff             	mov    $0xff,%r9b
14027472a:	44 8b c3             	mov    %ebx,%r8d
14027472d:	48 8b 52 08          	mov    0x8(%rdx),%rdx
140274731:	e8 ca 02 00 00       	call   0x140274a00
140274736:	85 c0                	test   %eax,%eax
140274738:	74 6c                	je     0x1402747a6
14027473a:	44 8b c3             	mov    %ebx,%r8d
14027473d:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
140274741:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140274745:	e8 d8 82 08 00       	call   0x1402fca22
14027474a:	85 c0                	test   %eax,%eax
14027474c:	7f 58                	jg     0x1402747a6
14027474e:	44 8b c3             	mov    %ebx,%r8d
140274751:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
140274755:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
140274759:	e8 a2 0e 00 00       	call   0x140275600
14027475e:	85 c0                	test   %eax,%eax
140274760:	79 44                	jns    0x1402747a6
140274762:	ff c6                	inc    %esi
140274764:	49 8b cd             	mov    %r13,%rcx
140274767:	89 75 b0             	mov    %esi,-0x50(%rbp)
14027476a:	e8 b1 3c fb ff       	call   0x140228420
14027476f:	3b f0                	cmp    %eax,%esi
140274771:	0f 8c f9 fc ff ff    	jl     0x140274470
140274777:	b8 01 00 00 00       	mov    $0x1,%eax
14027477c:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
140274780:	48 33 cc             	xor    %rsp,%rcx
140274783:	e8 b8 5e 08 00       	call   0x1402fa640
140274788:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
14027478d:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140274791:	49 8b 73 40          	mov    0x40(%r11),%rsi
140274795:	49 8b 7b 48          	mov    0x48(%r11),%rdi
140274799:	49 8b e3             	mov    %r11,%rsp
14027479c:	41 5f                	pop    %r15
14027479e:	41 5e                	pop    %r14
1402747a0:	41 5d                	pop    %r13
1402747a2:	41 5c                	pop    %r12
1402747a4:	5d                   	pop    %rbp
1402747a5:	c3                   	ret
1402747a6:	33 c0                	xor    %eax,%eax
1402747a8:	eb d2                	jmp    0x14027477c
1402747aa:	cc                   	int3
1402747ab:	cc                   	int3
1402747ac:	cc                   	int3
1402747ad:	cc                   	int3
1402747ae:	cc                   	int3
1402747af:	cc                   	int3
1402747b0:	40 53                	rex push %rbx
1402747b2:	b8 20 00 00 00       	mov    $0x20,%eax
1402747b7:	e8 24 5e 08 00       	call   0x1402fa5e0
1402747bc:	48 2b e0             	sub    %rax,%rsp
1402747bf:	48 8b d9             	mov    %rcx,%rbx
1402747c2:	48 8b 89 98 00 00 00 	mov    0x98(%rcx),%rcx
1402747c9:	48 85 c9             	test   %rcx,%rcx
1402747cc:	74 27                	je     0x1402747f5
1402747ce:	e8 4d 3c fb ff       	call   0x140228420
1402747d3:	85 c0                	test   %eax,%eax
1402747d5:	74 1e                	je     0x1402747f5
1402747d7:	48 83 7b 38 00       	cmpq   $0x0,0x38(%rbx)
1402747dc:	74 17                	je     0x1402747f5
1402747de:	48 8b 93 98 00 00 00 	mov    0x98(%rbx),%rdx
1402747e5:	45 33 c0             	xor    %r8d,%r8d
1402747e8:	48 8b cb             	mov    %rbx,%rcx
1402747eb:	48 83 c4 20          	add    $0x20,%rsp
1402747ef:	5b                   	pop    %rbx
1402747f0:	e9 bb 02 00 00       	jmp    0x140274ab0
1402747f5:	c7 83 b0 00 00 00 01 	movl   $0x1,0xb0(%rbx)
1402747fc:	00 00 00
1402747ff:	33 c0                	xor    %eax,%eax
140274801:	48 83 c4 20          	add    $0x20,%rsp
140274805:	5b                   	pop    %rbx
140274806:	c3                   	ret
140274807:	cc                   	int3
140274808:	cc                   	int3
140274809:	cc                   	int3
14027480a:	cc                   	int3
14027480b:	cc                   	int3
14027480c:	cc                   	int3
14027480d:	cc                   	int3
14027480e:	cc                   	int3
14027480f:	cc                   	int3
140274810:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140274815:	55                   	push   %rbp
140274816:	56                   	push   %rsi
140274817:	57                   	push   %rdi
140274818:	41 56                	push   %r14
14027481a:	41 57                	push   %r15
14027481c:	b8 70 00 00 00       	mov    $0x70,%eax
140274821:	e8 ba 5d 08 00       	call   0x1402fa5e0
140274826:	48 2b e0             	sub    %rax,%rsp
140274829:	48 8b 05 50 39 19 00 	mov    0x193950(%rip),%rax        # 0x140408180
140274830:	48 33 c4             	xor    %rsp,%rax
140274833:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
140274838:	49 63 f0             	movslq %r8d,%rsi
14027483b:	4c 8b fa             	mov    %rdx,%r15
14027483e:	48 8b e9             	mov    %rcx,%rbp
140274841:	48 85 d2             	test   %rdx,%rdx
140274844:	0f 84 83 01 00 00    	je     0x1402749cd
14027484a:	48 3b ca             	cmp    %rdx,%rcx
14027484d:	0f 84 7a 01 00 00    	je     0x1402749cd
140274853:	48 85 c9             	test   %rcx,%rcx
140274856:	0f 84 9e 01 00 00    	je     0x1402749fa
14027485c:	48 8b ca             	mov    %rdx,%rcx
14027485f:	33 ff                	xor    %edi,%edi
140274861:	45 33 f6             	xor    %r14d,%r14d
140274864:	e8 b7 3b fb ff       	call   0x140228420
140274869:	85 c0                	test   %eax,%eax
14027486b:	0f 8e 5c 01 00 00    	jle    0x1402749cd
140274871:	41 8b d6             	mov    %r14d,%edx
140274874:	49 8b cf             	mov    %r15,%rcx
140274877:	e8 d4 3d fb ff       	call   0x140228650
14027487c:	48 8b d8             	mov    %rax,%rbx
14027487f:	48 85 c0             	test   %rax,%rax
140274882:	0f 84 6b 01 00 00    	je     0x1402749f3
140274888:	8b 00                	mov    (%rax),%eax
14027488a:	85 c0                	test   %eax,%eax
14027488c:	74 2e                	je     0x1402748bc
14027488e:	83 f8 01             	cmp    $0x1,%eax
140274891:	0f 85 5c 01 00 00    	jne    0x1402749f3
140274897:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14027489b:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1402748a0:	45 33 c9             	xor    %r9d,%r9d
1402748a3:	44 8b c6             	mov    %esi,%r8d
1402748a6:	48 8b 12             	mov    (%rdx),%rdx
1402748a9:	e8 52 01 00 00       	call   0x140274a00
1402748ae:	85 c0                	test   %eax,%eax
1402748b0:	74 3a                	je     0x1402748ec
1402748b2:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1402748b6:	48 8b 52 08          	mov    0x8(%rdx),%rdx
1402748ba:	eb 1c                	jmp    0x1402748d8
1402748bc:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1402748c0:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
1402748c5:	45 33 c9             	xor    %r9d,%r9d
1402748c8:	44 8b c6             	mov    %esi,%r8d
1402748cb:	e8 30 01 00 00       	call   0x140274a00
1402748d0:	85 c0                	test   %eax,%eax
1402748d2:	74 18                	je     0x1402748ec
1402748d4:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1402748d8:	41 b1 ff             	mov    $0xff,%r9b
1402748db:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1402748e0:	44 8b c6             	mov    %esi,%r8d
1402748e3:	e8 18 01 00 00       	call   0x140274a00
1402748e8:	85 c0                	test   %eax,%eax
1402748ea:	75 0a                	jne    0x1402748f6
1402748ec:	33 c0                	xor    %eax,%eax
1402748ee:	85 c0                	test   %eax,%eax
1402748f0:	0f 84 fd 00 00 00    	je     0x1402749f3
1402748f6:	48 8b cd             	mov    %rbp,%rcx
1402748f9:	e8 22 3b fb ff       	call   0x140228420
1402748fe:	3b f8                	cmp    %eax,%edi
140274900:	0f 8d f4 00 00 00    	jge    0x1402749fa
140274906:	8b d7                	mov    %edi,%edx
140274908:	48 8b cd             	mov    %rbp,%rcx
14027490b:	e8 40 3d fb ff       	call   0x140228650
140274910:	48 8b d8             	mov    %rax,%rbx
140274913:	48 85 c0             	test   %rax,%rax
140274916:	0f 84 de 00 00 00    	je     0x1402749fa
14027491c:	8b 08                	mov    (%rax),%ecx
14027491e:	85 c9                	test   %ecx,%ecx
140274920:	74 2e                	je     0x140274950
140274922:	83 f9 01             	cmp    $0x1,%ecx
140274925:	0f 85 cf 00 00 00    	jne    0x1402749fa
14027492b:	48 8b 50 08          	mov    0x8(%rax),%rdx
14027492f:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140274934:	45 33 c9             	xor    %r9d,%r9d
140274937:	44 8b c6             	mov    %esi,%r8d
14027493a:	48 8b 12             	mov    (%rdx),%rdx
14027493d:	e8 be 00 00 00       	call   0x140274a00
140274942:	85 c0                	test   %eax,%eax
140274944:	74 3a                	je     0x140274980
140274946:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14027494a:	48 8b 52 08          	mov    0x8(%rdx),%rdx
14027494e:	eb 1c                	jmp    0x14027496c
140274950:	48 8b 50 08          	mov    0x8(%rax),%rdx
140274954:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140274959:	45 33 c9             	xor    %r9d,%r9d
14027495c:	44 8b c6             	mov    %esi,%r8d
14027495f:	e8 9c 00 00 00       	call   0x140274a00
140274964:	85 c0                	test   %eax,%eax
140274966:	74 18                	je     0x140274980
140274968:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14027496c:	41 b1 ff             	mov    $0xff,%r9b
14027496f:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140274974:	44 8b c6             	mov    %esi,%r8d
140274977:	e8 84 00 00 00       	call   0x140274a00
14027497c:	85 c0                	test   %eax,%eax
14027497e:	75 06                	jne    0x140274986
140274980:	33 c0                	xor    %eax,%eax
140274982:	85 c0                	test   %eax,%eax
140274984:	74 74                	je     0x1402749fa
140274986:	4c 8b c6             	mov    %rsi,%r8
140274989:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14027498e:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140274993:	e8 8a 80 08 00       	call   0x1402fca22
140274998:	85 c0                	test   %eax,%eax
14027499a:	79 07                	jns    0x1402749a3
14027499c:	ff c7                	inc    %edi
14027499e:	e9 53 ff ff ff       	jmp    0x1402748f6
1402749a3:	4c 8b c6             	mov    %rsi,%r8
1402749a6:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
1402749ab:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
1402749b0:	e8 6d 80 08 00       	call   0x1402fca22
1402749b5:	85 c0                	test   %eax,%eax
1402749b7:	7f 41                	jg     0x1402749fa
1402749b9:	49 8b cf             	mov    %r15,%rcx
1402749bc:	41 ff c6             	inc    %r14d
1402749bf:	e8 5c 3a fb ff       	call   0x140228420
1402749c4:	44 3b f0             	cmp    %eax,%r14d
1402749c7:	0f 8c a4 fe ff ff    	jl     0x140274871
1402749cd:	b8 01 00 00 00       	mov    $0x1,%eax
1402749d2:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
1402749d7:	48 33 cc             	xor    %rsp,%rcx
1402749da:	e8 61 5c 08 00       	call   0x1402fa640
1402749df:	48 8b 9c 24 b8 00 00 	mov    0xb8(%rsp),%rbx
1402749e6:	00
1402749e7:	48 83 c4 70          	add    $0x70,%rsp
1402749eb:	41 5f                	pop    %r15
1402749ed:	41 5e                	pop    %r14
1402749ef:	5f                   	pop    %rdi
1402749f0:	5e                   	pop    %rsi
1402749f1:	5d                   	pop    %rbp
1402749f2:	c3                   	ret
1402749f3:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1402749f8:	eb d8                	jmp    0x1402749d2
1402749fa:	33 c0                	xor    %eax,%eax
1402749fc:	eb d4                	jmp    0x1402749d2
1402749fe:	cc                   	int3
1402749ff:	cc                   	int3
140274a00:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140274a05:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140274a0a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140274a0f:	57                   	push   %rdi
140274a10:	b8 20 00 00 00       	mov    $0x20,%eax
140274a15:	e8 c6 5b 08 00       	call   0x1402fa5e0
140274a1a:	48 2b e0             	sub    %rax,%rsp
140274a1d:	48 63 02             	movslq (%rdx),%rax
140274a20:	41 8b f8             	mov    %r8d,%edi
140274a23:	41 0f b6 e9          	movzbl %r9b,%ebp
140274a27:	48 8b da             	mov    %rdx,%rbx
140274a2a:	48 8b f1             	mov    %rcx,%rsi
140274a2d:	85 c0                	test   %eax,%eax
140274a2f:	78 5c                	js     0x140274a8d
140274a31:	41 3b c0             	cmp    %r8d,%eax
140274a34:	7f 57                	jg     0x140274a8d
140274a36:	85 c0                	test   %eax,%eax
140274a38:	7e 39                	jle    0x140274a73
140274a3a:	48 8b 52 08          	mov    0x8(%rdx),%rdx
140274a3e:	4c 8b c0             	mov    %rax,%r8
140274a41:	e8 e2 7f 08 00       	call   0x1402fca28
140274a46:	8b 4b 10             	mov    0x10(%rbx),%ecx
140274a49:	83 e1 07             	and    $0x7,%ecx
140274a4c:	74 25                	je     0x140274a73
140274a4e:	b8 08 00 00 00       	mov    $0x8,%eax
140274a53:	ba ff 00 00 00       	mov    $0xff,%edx
140274a58:	2b c1                	sub    %ecx,%eax
140274a5a:	0f b6 c8             	movzbl %al,%ecx
140274a5d:	48 63 03             	movslq (%rbx),%rax
140274a60:	d3 fa                	sar    %cl,%edx
140274a62:	40 84 ed             	test   %bpl,%bpl
140274a65:	75 08                	jne    0x140274a6f
140274a67:	f6 d2                	not    %dl
140274a69:	20 54 30 ff          	and    %dl,-0x1(%rax,%rsi,1)
140274a6d:	eb 04                	jmp    0x140274a73
140274a6f:	08 54 30 ff          	or     %dl,-0x1(%rax,%rsi,1)
140274a73:	48 63 03             	movslq (%rbx),%rax
140274a76:	8b d5                	mov    %ebp,%edx
140274a78:	2b f8                	sub    %eax,%edi
140274a7a:	4c 63 c7             	movslq %edi,%r8
140274a7d:	48 8d 0c 06          	lea    (%rsi,%rax,1),%rcx
140274a81:	e8 d8 7f 08 00       	call   0x1402fca5e
140274a86:	b8 01 00 00 00       	mov    $0x1,%eax
140274a8b:	eb 02                	jmp    0x140274a8f
140274a8d:	33 c0                	xor    %eax,%eax
140274a8f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140274a94:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140274a99:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140274a9e:	48 83 c4 20          	add    $0x20,%rsp
140274aa2:	5f                   	pop    %rdi
140274aa3:	c3                   	ret
140274aa4:	cc                   	int3
140274aa5:	cc                   	int3
140274aa6:	cc                   	int3
140274aa7:	cc                   	int3
140274aa8:	cc                   	int3
140274aa9:	cc                   	int3
140274aaa:	cc                   	int3
140274aab:	cc                   	int3
140274aac:	cc                   	int3
140274aad:	cc                   	int3
140274aae:	cc                   	int3
140274aaf:	cc                   	int3
140274ab0:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140274ab5:	53                   	push   %rbx
140274ab6:	55                   	push   %rbp
140274ab7:	56                   	push   %rsi
140274ab8:	57                   	push   %rdi
140274ab9:	41 57                	push   %r15
140274abb:	b8 30 00 00 00       	mov    $0x30,%eax
140274ac0:	e8 1b 5b 08 00       	call   0x1402fa5e0
140274ac5:	48 2b e0             	sub    %rax,%rsp
140274ac8:	33 f6                	xor    %esi,%esi
140274aca:	8d 68 d1             	lea    -0x2f(%rax),%ebp