1404758ce:	5f                   	pop    %rdi
1404758cf:	5e                   	pop    %rsi
1404758d0:	5b                   	pop    %rbx
1404758d1:	c3                   	ret
1404758d2:	48 8b cf             	mov    %rdi,%rcx
1404758d5:	e8 26 99 d5 ff       	call   0x1401cf200
1404758da:	4c 63 c0             	movslq %eax,%r8
1404758dd:	48 8d 15 74 40 b8 00 	lea    0xb84074(%rip),%rdx        # 0x140ff9958
1404758e4:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1404758e9:	e8 72 27 d4 ff       	call   0x1401b8060
1404758ee:	48 8d 15 2b b2 f2 00 	lea    0xf2b22b(%rip),%rdx        # 0x1413a0b20
1404758f5:	48 8d 4c 24 58       	lea    0x58(%rsp),%rcx
1404758fa:	e8 19 6f 9a 00       	call   0x140e1c818
1404758ff:	cc                   	int3
140475900:	cc                   	int3
140475901:	cc                   	int3
140475902:	cc                   	int3
140475903:	cc                   	int3
140475904:	cc                   	int3
140475905:	cc                   	int3
140475906:	cc                   	int3
140475907:	cc                   	int3
140475908:	cc                   	int3
140475909:	cc                   	int3
14047590a:	cc                   	int3
14047590b:	cc                   	int3
14047590c:	cc                   	int3
14047590d:	cc                   	int3
14047590e:	cc                   	int3
14047590f:	cc                   	int3
140475910:	84 d2                	test   %dl,%dl
140475912:	74 10                	je     0x140475924
140475914:	48 8b 41 18          	mov    0x18(%rcx),%rax
140475918:	41 8b d0             	mov    %r8d,%edx
14047591b:	48 8b 48 18          	mov    0x18(%rax),%rcx
14047591f:	e9 8c 90 54 00       	jmp    0x1409be9b0
140475924:	48 8b 41 20          	mov    0x20(%rcx),%rax
140475928:	41 8b d0             	mov    %r8d,%edx
14047592b:	48 8b 48 18          	mov    0x18(%rax),%rcx
14047592f:	e9 7c 90 54 00       	jmp    0x1409be9b0
140475934:	cc                   	int3
140475935:	cc                   	int3
140475936:	cc                   	int3
140475937:	cc                   	int3
140475938:	cc                   	int3
140475939:	cc                   	int3
14047593a:	cc                   	int3
14047593b:	cc                   	int3
14047593c:	cc                   	int3
14047593d:	cc                   	int3
14047593e:	cc                   	int3
14047593f:	cc                   	int3
140475940:	4c 8b dc             	mov    %rsp,%r11
140475943:	53                   	push   %rbx
140475944:	41 56                	push   %r14
140475946:	48 81 ec a8 00 00 00 	sub    $0xa8,%rsp
14047594d:	48 8b 05 ac 35 f4 00 	mov    0xf435ac(%rip),%rax        # 0x1413b8f00
140475954:	48 33 c4             	xor    %rsp,%rax
140475957:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
14047595c:	48 8b da             	mov    %rdx,%rbx
14047595f:	4c 89 4c 24 38       	mov    %r9,0x38(%rsp)
140475964:	48 83 c2 04          	add    $0x4,%rdx
140475968:	4c 8b f1             	mov    %rcx,%r14
14047596b:	49 3b d0             	cmp    %r8,%rdx
14047596e:	0f 87 19 02 00 00    	ja     0x140475b8d
140475974:	48 3b d3             	cmp    %rbx,%rdx
140475977:	0f 82 10 02 00 00    	jb     0x140475b8d
14047597d:	8b 0b                	mov    (%rbx),%ecx
14047597f:	49 89 73 e0          	mov    %rsi,-0x20(%r11)
140475983:	4d 89 63 d0          	mov    %r12,-0x30(%r11)
140475987:	44 8b a4 24 e0 00 00 	mov    0xe0(%rsp),%r12d
14047598e:	00
14047598f:	4d 89 6b c8          	mov    %r13,-0x38(%r11)
140475993:	41 83 fc 01          	cmp    $0x1,%r12d
140475997:	74 02                	je     0x14047599b
140475999:	0f c9                	bswap  %ecx
14047599b:	41 89 0e             	mov    %ecx,(%r14)
14047599e:	49 8b 01             	mov    (%r9),%rax
1404759a1:	44 0f b6 48 12       	movzbl 0x12(%rax),%r9d
1404759a6:	41 8d 41 08          	lea    0x8(%r9),%eax
1404759aa:	0f af c1             	imul   %ecx,%eax
1404759ad:	45 8d 69 04          	lea    0x4(%r9),%r13d
1404759b1:	44 03 e8             	add    %eax,%r13d
1404759b4:	49 63 f5             	movslq %r13d,%rsi
1404759b7:	48 03 f3             	add    %rbx,%rsi
1404759ba:	44 89 6c 24 30       	mov    %r13d,0x30(%rsp)
1404759bf:	49 3b f0             	cmp    %r8,%rsi
1404759c2:	0f 87 99 01 00 00    	ja     0x140475b61
1404759c8:	48 3b f3             	cmp    %rbx,%rsi
1404759cb:	0f 82 90 01 00 00    	jb     0x140475b61
1404759d1:	48 89 bc 24 90 00 00 	mov    %rdi,0x90(%rsp)
1404759d8:	00
1404759d9:	48 8d 7b 04          	lea    0x4(%rbx),%rdi
1404759dd:	49 03 f9             	add    %r9,%rdi
1404759e0:	48 3b fe             	cmp    %rsi,%rdi
1404759e3:	0f 87 2f 02 00 00    	ja     0x140475c18
1404759e9:	48 3b fa             	cmp    %rdx,%rdi
1404759ec:	0f 82 26 02 00 00    	jb     0x140475c18
1404759f2:	49 8d 4e 08          	lea    0x8(%r14),%rcx
1404759f6:	48 89 ac 24 a0 00 00 	mov    %rbp,0xa0(%rsp)
1404759fd:	00
1404759fe:	45 8b c1             	mov    %r9d,%r8d
140475a01:	e8 5a 89 d3 ff       	call   0x1401ae360
140475a06:	41 8b 2e             	mov    (%r14),%ebp
140475a09:	85 ed                	test   %ebp,%ebp
140475a0b:	0f 88 ab 01 00 00    	js     0x140475bbc
140475a11:	48 8b c6             	mov    %rsi,%rax
140475a14:	48 63 dd             	movslq %ebp,%rbx
140475a17:	48 2b c7             	sub    %rdi,%rax
140475a1a:	48 3b d8             	cmp    %rax,%rbx
140475a1d:	0f 8f c4 01 00 00    	jg     0x140475be7
140475a23:	4c 89 7c 24 78       	mov    %r15,0x78(%rsp)
140475a28:	b9 18 00 00 00       	mov    $0x18,%ecx
140475a2d:	45 33 ff             	xor    %r15d,%r15d
140475a30:	4d 89 7e 20          	mov    %r15,0x20(%r14)
140475a34:	e8 cf 56 9a 00       	call   0x140e1b108
140475a39:	48 8b c8             	mov    %rax,%rcx
140475a3c:	48 85 c0             	test   %rax,%rax
140475a3f:	74 0d                	je     0x140475a4e
140475a41:	4c 89 38             	mov    %r15,(%rax)
140475a44:	4c 89 78 08          	mov    %r15,0x8(%rax)
140475a48:	4c 89 78 10          	mov    %r15,0x10(%rax)
140475a4c:	eb 03                	jmp    0x140475a51
140475a4e:	49 8b cf             	mov    %r15,%rcx
140475a51:	49 89 4e 18          	mov    %rcx,0x18(%r14)
140475a55:	48 8b 41 10          	mov    0x10(%rcx),%rax
140475a59:	48 2b 01             	sub    (%rcx),%rax
140475a5c:	48 c1 f8 03          	sar    $0x3,%rax
140475a60:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
140475a65:	48 3b d8             	cmp    %rax,%rbx
140475a68:	76 1d                	jbe    0x140475a87
140475a6a:	48 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rax
140475a71:	ff ff 1f
140475a74:	48 3b d8             	cmp    %rax,%rbx
140475a77:	0f 87 95 01 00 00    	ja     0x140475c12
140475a7d:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140475a82:	e8 99 e7 ff ff       	call   0x140474220
140475a87:	85 ed                	test   %ebp,%ebp
140475a89:	0f 8e 8a 00 00 00    	jle    0x140475b19
140475a8f:	4c 8b 6c 24 38       	mov    0x38(%rsp),%r13
140475a94:	b9 18 00 00 00       	mov    $0x18,%ecx
140475a99:	e8 6a 56 9a 00       	call   0x140e1b108
140475a9e:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140475aa3:	48 85 c0             	test   %rax,%rax
140475aa6:	74 11                	je     0x140475ab9
140475aa8:	4c 89 38             	mov    %r15,(%rax)
140475aab:	44 89 78 08          	mov    %r15d,0x8(%rax)
140475aaf:	48 c7 40 10 00 00 00 	movq   $0x0,0x10(%rax)
140475ab6:	00
140475ab7:	eb 03                	jmp    0x140475abc
140475ab9:	49 8b c7             	mov    %r15,%rax
140475abc:	4d 8b cd             	mov    %r13,%r9
140475abf:	49 89 46 20          	mov    %rax,0x20(%r14)
140475ac3:	4c 8b c6             	mov    %rsi,%r8
140475ac6:	44 89 64 24 20       	mov    %r12d,0x20(%rsp)
140475acb:	48 8b d7             	mov    %rdi,%rdx
140475ace:	48 8b c8             	mov    %rax,%rcx
140475ad1:	e8 ca 05 00 00       	call   0x1404760a0
140475ad6:	49 8b 5e 20          	mov    0x20(%r14),%rbx
140475ada:	4c 63 f8             	movslq %eax,%r15
140475add:	48 85 db             	test   %rbx,%rbx
140475ae0:	74 22                	je     0x140475b04
140475ae2:	48 8b 0b             	mov    (%rbx),%rcx
140475ae5:	48 85 c9             	test   %rcx,%rcx
140475ae8:	74 05                	je     0x140475aef
140475aea:	e8 55 56 9a 00       	call   0x140e1b144
140475aef:	33 c0                	xor    %eax,%eax
140475af1:	ba 18 00 00 00       	mov    $0x18,%edx
140475af6:	48 8b cb             	mov    %rbx,%rcx
140475af9:	48 89 03             	mov    %rax,(%rbx)
140475afc:	89 43 08             	mov    %eax,0x8(%rbx)
140475aff:	e8 40 56 9a 00       	call   0x140e1b144
140475b04:	49 03 ff             	add    %r15,%rdi
140475b07:	45 33 ff             	xor    %r15d,%r15d
140475b0a:	4d 89 7e 20          	mov    %r15,0x20(%r14)
140475b0e:	48 83 ed 01          	sub    $0x1,%rbp
140475b12:	75 80                	jne    0x140475a94
140475b14:	44 8b 6c 24 30       	mov    0x30(%rsp),%r13d
140475b19:	4c 8b 7c 24 78       	mov    0x78(%rsp),%r15
140475b1e:	41 8b c5             	mov    %r13d,%eax
140475b21:	4c 8b ac 24 80 00 00 	mov    0x80(%rsp),%r13
140475b28:	00
140475b29:	48 8b ac 24 a0 00 00 	mov    0xa0(%rsp),%rbp
140475b30:	00
140475b31:	48 8b bc 24 90 00 00 	mov    0x90(%rsp),%rdi
140475b38:	00
140475b39:	48 8b b4 24 98 00 00 	mov    0x98(%rsp),%rsi
140475b40:	00
140475b41:	4c 8b a4 24 88 00 00 	mov    0x88(%rsp),%r12
140475b48:	00
140475b49:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
140475b4e:	48 33 cc             	xor    %rsp,%rcx
140475b51:	e8 aa 59 9a 00       	call   0x140e1b500
140475b56:	48 81 c4 a8 00 00 00 	add    $0xa8,%rsp
140475b5d:	41 5e                	pop    %r14
140475b5f:	5b                   	pop    %rbx
140475b60:	c3                   	ret
140475b61:	44 2b c3             	sub    %ebx,%r8d
140475b64:	48 8d 15 91 3b b8 00 	lea    0xb83b91(%rip),%rdx        # 0x140ff96fc
140475b6b:	45 8b c8             	mov    %r8d,%r9d
140475b6e:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475b73:	45 8b c5             	mov    %r13d,%r8d
140475b76:	e8 75 35 d3 ff       	call   0x1401a90f0
140475b7b:	48 8d 15 4e ae f2 00 	lea    0xf2ae4e(%rip),%rdx        # 0x1413a09d0
140475b82:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475b87:	e8 8c 6c 9a 00       	call   0x140e1c818
140475b8c:	cc                   	int3
140475b8d:	44 2b c3             	sub    %ebx,%r8d
140475b90:	48 8d 15 51 3b b8 00 	lea    0xb83b51(%rip),%rdx        # 0x140ff96e8
140475b97:	45 8b c8             	mov    %r8d,%r9d
140475b9a:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475b9f:	41 b8 04 00 00 00    	mov    $0x4,%r8d
140475ba5:	e8 46 35 d3 ff       	call   0x1401a90f0
140475baa:	48 8d 15 1f ae f2 00 	lea    0xf2ae1f(%rip),%rdx        # 0x1413a09d0
140475bb1:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475bb6:	e8 5d 6c 9a 00       	call   0x140e1c818
140475bbb:	cc                   	int3
140475bbc:	2b f3                	sub    %ebx,%esi
140475bbe:	48 8d 15 53 3b b8 00 	lea    0xb83b53(%rip),%rdx        # 0x140ff9718
140475bc5:	44 8b ce             	mov    %esi,%r9d
140475bc8:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475bcd:	44 8b c5             	mov    %ebp,%r8d
140475bd0:	e8 1b 35 d3 ff       	call   0x1401a90f0
140475bd5:	48 8d 15 f4 ad f2 00 	lea    0xf2adf4(%rip),%rdx        # 0x1413a09d0
140475bdc:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475be1:	e8 32 6c 9a 00       	call   0x140e1c818
140475be6:	cc                   	int3
140475be7:	2b f7                	sub    %edi,%esi
140475be9:	48 8d 15 28 3b b8 00 	lea    0xb83b28(%rip),%rdx        # 0x140ff9718
140475bf0:	44 8b ce             	mov    %esi,%r9d
140475bf3:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475bf8:	44 8b c5             	mov    %ebp,%r8d
140475bfb:	e8 f0 34 d3 ff       	call   0x1401a90f0
140475c00:	48 8d 15 c9 ad f2 00 	lea    0xf2adc9(%rip),%rdx        # 0x1413a09d0
140475c07:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475c0c:	e8 07 6c 9a 00       	call   0x140e1c818
140475c11:	cc                   	int3
140475c12:	e8 79 79 d2 ff       	call   0x14019d590
140475c17:	cc                   	int3
140475c18:	45 8d 41 04          	lea    0x4(%r9),%r8d
140475c1c:	2b f3                	sub    %ebx,%esi
140475c1e:	44 8b ce             	mov    %esi,%r9d
140475c21:	48 8d 15 e0 3a b8 00 	lea    0xb83ae0(%rip),%rdx        # 0x140ff9708
140475c28:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475c2d:	e8 be 34 d3 ff       	call   0x1401a90f0
140475c32:	48 8d 15 97 ad f2 00 	lea    0xf2ad97(%rip),%rdx        # 0x1413a09d0
140475c39:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
140475c3e:	e8 d5 6b 9a 00       	call   0x140e1c818
140475c43:	cc                   	int3
140475c44:	cc                   	int3
140475c45:	cc                   	int3
140475c46:	cc                   	int3
140475c47:	cc                   	int3
140475c48:	cc                   	int3
140475c49:	cc                   	int3
140475c4a:	cc                   	int3
140475c4b:	cc                   	int3
140475c4c:	cc                   	int3
140475c4d:	cc                   	int3
140475c4e:	cc                   	int3
140475c4f:	cc                   	int3
140475c50:	40 53                	rex push %rbx
140475c52:	56                   	push   %rsi
140475c53:	57                   	push   %rdi
140475c54:	41 56                	push   %r14
140475c56:	48 83 ec 78          	sub    $0x78,%rsp
140475c5a:	48 8b 05 9f 32 f4 00 	mov    0xf4329f(%rip),%rax        # 0x1413b8f00
140475c61:	48 33 c4             	xor    %rsp,%rax
140475c64:	48 89 44 24 68       	mov    %rax,0x68(%rsp)
140475c69:	48 63 41 38          	movslq 0x38(%rcx),%rax
140475c6d:	49 8b f9             	mov    %r9,%rdi
140475c70:	89 01                	mov    %eax,(%rcx)
140475c72:	49 8b f0             	mov    %r8,%rsi
140475c75:	48 8b da             	mov    %rdx,%rbx
140475c78:	4c 8b f1             	mov    %rcx,%r14
140475c7b:	83 f8 10             	cmp    $0x10,%eax
140475c7e:	0f 87 8c 02 00 00    	ja     0x140475f10
140475c84:	48 8d 15 75 a3 b8 ff 	lea    -0x475c8b(%rip),%rdx        # 0x140000000
140475c8b:	8b 8c 82 5c 60 47 00 	mov    0x47605c(%rdx,%rax,4),%ecx
140475c92:	48 03 ca             	add    %rdx,%rcx
140475c95:	ff e1                	jmp    *%rcx
140475c97:	b9 18 00 00 00       	mov    $0x18,%ecx
140475c9c:	e8 67 54 9a 00       	call   0x140e1b108
140475ca1:	45 33 c0             	xor    %r8d,%r8d
140475ca4:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140475ca9:	4c 8b c8             	mov    %rax,%r9
140475cac:	48 85 c0             	test   %rax,%rax
140475caf:	74 1b                	je     0x140475ccc
140475cb1:	41 0f b7 56 42       	movzwl 0x42(%r14),%edx
140475cb6:	41 0f b7 4e 40       	movzwl 0x40(%r14),%ecx
140475cbb:	4c 89 00             	mov    %r8,(%rax)
140475cbe:	4c 89 40 08          	mov    %r8,0x8(%rax)
140475cc2:	66 89 48 10          	mov    %cx,0x10(%rax)
140475cc6:	66 89 50 12          	mov    %dx,0x12(%rax)
140475cca:	eb 03                	jmp    0x140475ccf
140475ccc:	4d 8b c8             	mov    %r8,%r9
140475ccf:	4d 89 4e 08          	mov    %r9,0x8(%r14)
140475cd3:	48 8b 07             	mov    (%rdi),%rax
140475cd6:	0f b6 78 12          	movzbl 0x12(%rax),%edi
140475cda:	41 0f b7 41 12       	movzwl 0x12(%r9),%eax
140475cdf:	0f af f8             	imul   %eax,%edi
140475ce2:	41 0f b7 41 10       	movzwl 0x10(%r9),%eax
140475ce7:	0f af f8             	imul   %eax,%edi
140475cea:	48 63 cf             	movslq %edi,%rcx
140475ced:	48 03 cb             	add    %rbx,%rcx
140475cf0:	48 3b ce             	cmp    %rsi,%rcx
140475cf3:	0f 87 6b 02 00 00    	ja     0x140475f64
140475cf9:	48 3b cb             	cmp    %rbx,%rcx
140475cfc:	0f 82 62 02 00 00    	jb     0x140475f64
140475d02:	85 ff                	test   %edi,%edi
140475d04:	0f 88 34 02 00 00    	js     0x140475f3e
140475d0a:	49 89 19             	mov    %rbx,(%r9)
140475d0d:	49 89 49 08          	mov    %rcx,0x8(%r9)
140475d11:	e9 b3 01 00 00       	jmp    0x140475ec9
140475d16:	bf 04 00 00 00       	mov    $0x4,%edi
140475d1b:	8b cf                	mov    %edi,%ecx
140475d1d:	e8 e6 53 9a 00       	call   0x140e1b108
140475d22:	45 33 c0             	xor    %r8d,%r8d
140475d25:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140475d2a:	48 8b c8             	mov    %rax,%rcx
140475d2d:	48 85 c0             	test   %rax,%rax
140475d30:	74 05                	je     0x140475d37
140475d32:	44 89 00             	mov    %r8d,(%rax)
140475d35:	eb 03                	jmp    0x140475d3a
140475d37:	49 8b c8             	mov    %r8,%rcx
140475d3a:	4c 8d 4b 04          	lea    0x4(%rbx),%r9
140475d3e:	49 89 4e 10          	mov    %rcx,0x10(%r14)
140475d42:	4c 3b ce             	cmp    %rsi,%r9
140475d45:	0f 87 6d 02 00 00    	ja     0x140475fb8
140475d4b:	4c 3b cb             	cmp    %rbx,%r9
140475d4e:	0f 82 64 02 00 00    	jb     0x140475fb8
140475d54:	48 8d 53 02          	lea    0x2(%rbx),%rdx
140475d58:	4c 3b ca             	cmp    %rdx,%r9
140475d5b:	0f 82 2e 02 00 00    	jb     0x140475f8f
140475d61:	83 bc 24 c0 00 00 00 	cmpl   $0x1,0xc0(%rsp)
140475d68:	01
140475d69:	0f b7 03             	movzwl (%rbx),%eax
140475d6c:	75 0f                	jne    0x140475d7d
140475d6e:	66 89 01             	mov    %ax,(%rcx)
140475d71:	0f b7 02             	movzwl (%rdx),%eax
140475d74:	66 89 41 02          	mov    %ax,0x2(%rcx)
140475d78:	e9 4c 01 00 00       	jmp    0x140475ec9
140475d7d:	66 c1 c8 08          	ror    $0x8,%ax
140475d81:	66 89 01             	mov    %ax,(%rcx)
140475d84:	0f b7 02             	movzwl (%rdx),%eax
140475d87:	66 c1 c8 08          	ror    $0x8,%ax
140475d8b:	66 89 41 02          	mov    %ax,0x2(%rcx)
140475d8f:	e9 35 01 00 00       	jmp    0x140475ec9
140475d94:	b9 28 00 00 00       	mov    $0x28,%ecx
140475d99:	e8 6a 53 9a 00       	call   0x140e1b108