1409a169f:	8b c1                	mov    %ecx,%eax
1409a16a1:	25 00 ff 00 00       	and    $0xff00,%eax
1409a16a6:	c1 ea 08             	shr    $0x8,%edx
1409a16a9:	c1 e1 10             	shl    $0x10,%ecx
1409a16ac:	0b c1                	or     %ecx,%eax
1409a16ae:	8b 4c 24 34          	mov    0x34(%rsp),%ecx
1409a16b2:	c1 e0 08             	shl    $0x8,%eax
1409a16b5:	0b d0                	or     %eax,%edx
1409a16b7:	8b c1                	mov    %ecx,%eax
1409a16b9:	c1 e8 10             	shr    $0x10,%eax
1409a16bc:	41 89 16             	mov    %edx,(%r14)
1409a16bf:	8b d1                	mov    %ecx,%edx
1409a16c1:	81 e2 00 00 ff 00    	and    $0xff0000,%edx
1409a16c7:	0b d0                	or     %eax,%edx
1409a16c9:	8b c1                	mov    %ecx,%eax
1409a16cb:	c1 e0 10             	shl    $0x10,%eax
1409a16ce:	81 e1 00 ff 00 00    	and    $0xff00,%ecx
1409a16d4:	0b c1                	or     %ecx,%eax
1409a16d6:	c1 ea 08             	shr    $0x8,%edx
1409a16d9:	c1 e0 08             	shl    $0x8,%eax
1409a16dc:	0b d0                	or     %eax,%edx
1409a16de:	eb 19                	jmp    0x1409a16f9
1409a16e0:	44 8b 44 24 38       	mov    0x38(%rsp),%r8d
1409a16e5:	8b 44 24 30          	mov    0x30(%rsp),%eax
1409a16e9:	44 8b 4c 24 3c       	mov    0x3c(%rsp),%r9d
1409a16ee:	8b 54 24 34          	mov    0x34(%rsp),%edx
1409a16f2:	45 89 46 08          	mov    %r8d,0x8(%r14)
1409a16f6:	41 89 06             	mov    %eax,(%r14)
1409a16f9:	41 89 56 04          	mov    %edx,0x4(%r14)
1409a16fd:	45 89 4e 0c          	mov    %r9d,0xc(%r14)
1409a1701:	8b 4f 0c             	mov    0xc(%rdi),%ecx
1409a1704:	83 e9 01             	sub    $0x1,%ecx
1409a1707:	74 1c                	je     0x1409a1725
1409a1709:	83 f9 01             	cmp    $0x1,%ecx
1409a170c:	75 21                	jne    0x1409a172f
1409a170e:	b8 d3 4d 62 10       	mov    $0x10624dd3,%eax
1409a1713:	f7 ea                	imul   %edx
1409a1715:	c1 fa 06             	sar    $0x6,%edx
1409a1718:	8b c2                	mov    %edx,%eax
1409a171a:	c1 e8 1f             	shr    $0x1f,%eax
1409a171d:	03 d0                	add    %eax,%edx
1409a171f:	41 89 56 04          	mov    %edx,0x4(%r14)
1409a1723:	eb 0a                	jmp    0x1409a172f
1409a1725:	69 c2 e8 03 00 00    	imul   $0x3e8,%edx,%eax
1409a172b:	41 89 46 04          	mov    %eax,0x4(%r14)
1409a172f:	8b 4f 08             	mov    0x8(%rdi),%ecx
1409a1732:	83 e9 01             	sub    $0x1,%ecx
1409a1735:	74 0a                	je     0x1409a1741
1409a1737:	83 f9 01             	cmp    $0x1,%ecx
1409a173a:	75 0d                	jne    0x1409a1749
1409a173c:	45 3b c1             	cmp    %r9d,%r8d
1409a173f:	76 08                	jbe    0x1409a1749
1409a1741:	45 89 4e 08          	mov    %r9d,0x8(%r14)
1409a1745:	45 89 46 0c          	mov    %r8d,0xc(%r14)
1409a1749:	8b 4b 6c             	mov    0x6c(%rbx),%ecx
1409a174c:	48 89 ac 24 b8 10 00 	mov    %rbp,0x10b8(%rsp)
1409a1753:	00
1409a1754:	4c 89 ac 24 60 10 00 	mov    %r13,0x1060(%rsp)
1409a175b:	00
1409a175c:	e8 8f 10 01 00       	call   0x1409b27f0
1409a1761:	41 8b 4e 08          	mov    0x8(%r14),%ecx
1409a1765:	44 8b 43 68          	mov    0x68(%rbx),%r8d
1409a1769:	3b c8                	cmp    %eax,%ecx
1409a176b:	76 31                	jbe    0x1409a179e
1409a176d:	41 3b c8             	cmp    %r8d,%ecx
1409a1770:	76 14                	jbe    0x1409a1786
1409a1772:	44 89 44 24 20       	mov    %r8d,0x20(%rsp)
1409a1777:	44 8b c9             	mov    %ecx,%r9d
1409a177a:	4c 8d 05 e7 77 6c 00 	lea    0x6c77e7(%rip),%r8        # 0x141068f68
1409a1781:	e9 d7 01 00 00       	jmp    0x1409a195d
1409a1786:	8b 4b 6c             	mov    0x6c(%rbx),%ecx
1409a1789:	e8 62 10 01 00       	call   0x1409b27f0
1409a178e:	89 44 24 20          	mov    %eax,0x20(%rsp)
1409a1792:	4c 8d 05 0f 78 6c 00 	lea    0x6c780f(%rip),%r8        # 0x141068fa8
1409a1799:	e9 bb 01 00 00       	jmp    0x1409a1959
1409a179e:	8b 43 18             	mov    0x18(%rbx),%eax
1409a17a1:	41 3b c8             	cmp    %r8d,%ecx
1409a17a4:	0f 86 0b 01 00 00    	jbe    0x1409a18b5
1409a17aa:	3b c8                	cmp    %eax,%ecx
1409a17ac:	76 13                	jbe    0x1409a17c1
1409a17ae:	41 8b d0             	mov    %r8d,%edx
1409a17b1:	48 8b cb             	mov    %rbx,%rcx
1409a17b4:	e8 67 f7 ff ff       	call   0x1409a0f20
1409a17b9:	85 c0                	test   %eax,%eax
1409a17bb:	0f 84 ad 01 00 00    	je     0x1409a196e
1409a17c1:	4c 63 43 68          	movslq 0x68(%rbx),%r8
1409a17c5:	4d 8b cf             	mov    %r15,%r9
1409a17c8:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
1409a17cc:	ba 01 00 00 00       	mov    $0x1,%edx
1409a17d1:	e8 3a e8 8a ff       	call   0x140250010
1409a17d6:	8b 4b 68             	mov    0x68(%rbx),%ecx
1409a17d9:	48 8b e8             	mov    %rax,%rbp
1409a17dc:	48 3b c1             	cmp    %rcx,%rax
1409a17df:	74 25                	je     0x1409a1806
1409a17e1:	49 8b cf             	mov    %r15,%rcx
1409a17e4:	e8 4b 16 49 00       	call   0x140e32e34
1409a17e9:	85 c0                	test   %eax,%eax
1409a17eb:	0f 85 32 01 00 00    	jne    0x1409a1923
1409a17f1:	44 8b 4b 68          	mov    0x68(%rbx),%r9d
1409a17f5:	4c 8d 05 f4 77 6c 00 	lea    0x6c77f4(%rip),%r8        # 0x141068ff0
1409a17fc:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1409a1801:	e9 57 01 00 00       	jmp    0x1409a195d
1409a1806:	41 8b 76 08          	mov    0x8(%r14),%esi
1409a180a:	2b f1                	sub    %ecx,%esi
1409a180c:	74 3e                	je     0x1409a184c
1409a180e:	41 bd 00 10 00 00    	mov    $0x1000,%r13d
1409a1814:	0f 1f 40 00          	nopl   0x0(%rax)
1409a1818:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
1409a181f:	00
1409a1820:	49 3b f5             	cmp    %r13,%rsi
1409a1823:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
1409a1828:	48 8b fe             	mov    %rsi,%rdi
1409a182b:	4d 8b cf             	mov    %r15,%r9
1409a182e:	49 0f 47 fd          	cmova  %r13,%rdi
1409a1832:	ba 01 00 00 00       	mov    $0x1,%edx
1409a1837:	4c 8b c7             	mov    %rdi,%r8
1409a183a:	e8 d1 e7 8a ff       	call   0x140250010
1409a183f:	48 03 e8             	add    %rax,%rbp
1409a1842:	48 3b c7             	cmp    %rdi,%rax
1409a1845:	75 58                	jne    0x1409a189f
1409a1847:	48 2b f0             	sub    %rax,%rsi
1409a184a:	75 d4                	jne    0x1409a1820
1409a184c:	8b 43 68             	mov    0x68(%rbx),%eax
1409a184f:	41 89 46 08          	mov    %eax,0x8(%r14)
1409a1853:	4c 8b 43 20          	mov    0x20(%rbx),%r8
1409a1857:	4d 89 04 24          	mov    %r8,(%r12)
1409a185b:	83 7b 40 00          	cmpl   $0x0,0x40(%rbx)
1409a185f:	74 0b                	je     0x1409a186c
1409a1861:	8b 4b 6c             	mov    0x6c(%rbx),%ecx
1409a1864:	49 8b d6             	mov    %r14,%rdx
1409a1867:	e8 24 11 01 00       	call   0x1409b2990
1409a186c:	33 c0                	xor    %eax,%eax
1409a186e:	48 8b ac 24 b8 10 00 	mov    0x10b8(%rsp),%rbp
1409a1875:	00
1409a1876:	4c 8b ac 24 60 10 00 	mov    0x1060(%rsp),%r13
1409a187d:	00
1409a187e:	48 8b 8c 24 50 10 00 	mov    0x1050(%rsp),%rcx
1409a1885:	00
1409a1886:	48 33 cc             	xor    %rsp,%rcx
1409a1889:	e8 72 9c 47 00       	call   0x140e1b500
1409a188e:	48 81 c4 68 10 00 00 	add    $0x1068,%rsp
1409a1895:	41 5f                	pop    %r15
1409a1897:	41 5e                	pop    %r14
1409a1899:	41 5c                	pop    %r12
1409a189b:	5f                   	pop    %rdi
1409a189c:	5e                   	pop    %rsi
1409a189d:	5b                   	pop    %rbx
1409a189e:	c3                   	ret
1409a189f:	49 8b cf             	mov    %r15,%rcx
1409a18a2:	e8 8d 15 49 00       	call   0x140e32e34
1409a18a7:	85 c0                	test   %eax,%eax
1409a18a9:	75 78                	jne    0x1409a1923
1409a18ab:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1409a18b0:	e9 9d 00 00 00       	jmp    0x1409a1952
1409a18b5:	3b c8                	cmp    %eax,%ecx
1409a18b7:	76 39                	jbe    0x1409a18f2
1409a18b9:	ff c9                	dec    %ecx
1409a18bb:	8b c1                	mov    %ecx,%eax
1409a18bd:	d1 e8                	shr    $1,%eax
1409a18bf:	0b c8                	or     %eax,%ecx
1409a18c1:	8b c1                	mov    %ecx,%eax
1409a18c3:	c1 e8 02             	shr    $0x2,%eax
1409a18c6:	0b c8                	or     %eax,%ecx
1409a18c8:	8b c1                	mov    %ecx,%eax
1409a18ca:	c1 e8 04             	shr    $0x4,%eax
1409a18cd:	0b c8                	or     %eax,%ecx
1409a18cf:	8b c1                	mov    %ecx,%eax
1409a18d1:	c1 e8 08             	shr    $0x8,%eax
1409a18d4:	0b c8                	or     %eax,%ecx
1409a18d6:	8b d1                	mov    %ecx,%edx
1409a18d8:	c1 ea 10             	shr    $0x10,%edx
1409a18db:	0b d1                	or     %ecx,%edx
1409a18dd:	48 8b cb             	mov    %rbx,%rcx
1409a18e0:	ff c2                	inc    %edx
1409a18e2:	41 3b d0             	cmp    %r8d,%edx
1409a18e5:	41 0f 47 d0          	cmova  %r8d,%edx
1409a18e9:	e8 32 f6 ff ff       	call   0x1409a0f20
1409a18ee:	85 c0                	test   %eax,%eax
1409a18f0:	74 7c                	je     0x1409a196e
1409a18f2:	45 8b 46 08          	mov    0x8(%r14),%r8d
1409a18f6:	4d 8b cf             	mov    %r15,%r9
1409a18f9:	48 8b 4b 20          	mov    0x20(%rbx),%rcx
1409a18fd:	ba 01 00 00 00       	mov    $0x1,%edx
1409a1902:	e8 09 e7 8a ff       	call   0x140250010
1409a1907:	41 8b 4e 08          	mov    0x8(%r14),%ecx
1409a190b:	48 8b f8             	mov    %rax,%rdi
1409a190e:	48 3b c1             	cmp    %rcx,%rax
1409a1911:	0f 84 3c ff ff ff    	je     0x1409a1853
1409a1917:	49 8b cf             	mov    %r15,%rcx
1409a191a:	e8 15 15 49 00       	call   0x140e32e34
1409a191f:	85 c0                	test   %eax,%eax
1409a1921:	74 2a                	je     0x1409a194d
1409a1923:	e8 c8 89 48 00       	call   0x140e2a2f0
1409a1928:	4c 8d 0d 19 75 6c 00 	lea    0x6c7519(%rip),%r9        # 0x141068e48
1409a192f:	ba 00 01 00 00       	mov    $0x100,%edx
1409a1934:	48 8d 8b e8 00 00 00 	lea    0xe8(%rbx),%rcx
1409a193b:	44 8b 00             	mov    (%rax),%r8d
1409a193e:	e8 ad 01 01 00       	call   0x1409b1af0
1409a1943:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1409a1948:	e9 21 ff ff ff       	jmp    0x1409a186e
1409a194d:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1409a1952:	4c 8d 05 97 76 6c 00 	lea    0x6c7697(%rip),%r8        # 0x141068ff0
1409a1959:	45 8b 4e 08          	mov    0x8(%r14),%r9d
1409a195d:	ba 00 01 00 00       	mov    $0x100,%edx
1409a1962:	48 8d 8b e8 00 00 00 	lea    0xe8(%rbx),%rcx
1409a1969:	e8 c2 e3 9d ff       	call   0x14037fd30
1409a196e:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1409a1973:	e9 f6 fe ff ff       	jmp    0x1409a186e
1409a1978:	cc                   	int3
1409a1979:	cc                   	int3
1409a197a:	cc                   	int3
1409a197b:	cc                   	int3
1409a197c:	cc                   	int3
1409a197d:	cc                   	int3
1409a197e:	cc                   	int3
1409a197f:	cc                   	int3
1409a1980:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1409a1985:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1409a198a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1409a198f:	57                   	push   %rdi
1409a1990:	48 83 ec 30          	sub    $0x30,%rsp
1409a1994:	48 8b f9             	mov    %rcx,%rdi
1409a1997:	49 8b e9             	mov    %r9,%rbp
1409a199a:	b9 01 00 00 00       	mov    $0x1,%ecx
1409a199f:	49 8b d8             	mov    %r8,%rbx
1409a19a2:	8b f2                	mov    %edx,%esi
1409a19a4:	e8 e7 12 49 00       	call   0x140e32c90
1409a19a9:	48 8b cb             	mov    %rbx,%rcx
1409a19ac:	48 3b d8             	cmp    %rax,%rbx
1409a19af:	75 13                	jne    0x1409a19c4
1409a19b1:	e8 aa 14 49 00       	call   0x140e32e60
1409a19b6:	8b c8                	mov    %eax,%ecx
1409a19b8:	ba 00 80 00 00       	mov    $0x8000,%edx
1409a19bd:	e8 7e 51 4a 00       	call   0x140e46b40
1409a19c2:	eb 0e                	jmp    0x1409a19d2
1409a19c4:	45 33 c9             	xor    %r9d,%r9d
1409a19c7:	33 d2                	xor    %edx,%edx
1409a19c9:	45 8d 41 04          	lea    0x4(%r9),%r8d
1409a19cd:	e8 6a ca 49 00       	call   0x140e3e43c
1409a19d2:	44 8b 4f 68          	mov    0x68(%rdi),%r9d
1409a19d6:	44 8b c6             	mov    %esi,%r8d
1409a19d9:	48 8b d3             	mov    %rbx,%rdx
1409a19dc:	48 8b cf             	mov    %rdi,%rcx
1409a19df:	e8 6c 00 00 00       	call   0x1409a1a50
1409a19e4:	83 f8 ff             	cmp    $0xffffffff,%eax
1409a19e7:	75 40                	jne    0x1409a1a29
1409a19e9:	e8 02 89 48 00       	call   0x140e2a2f0
1409a19ee:	48 8d 8f e8 00 00 00 	lea    0xe8(%rdi),%rcx
1409a19f5:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1409a19fa:	4c 8d 0d 37 76 6c 00 	lea    0x6c7637(%rip),%r9        # 0x141069038
1409a1a01:	ba 00 01 00 00       	mov    $0x100,%edx
1409a1a06:	44 8b 00             	mov    (%rax),%r8d
1409a1a09:	e8 e2 00 01 00       	call   0x1409b1af0
1409a1a0e:	b9 01 00 00 00       	mov    $0x1,%ecx
1409a1a13:	e8 78 12 49 00       	call   0x140e32c90
1409a1a18:	48 3b d8             	cmp    %rax,%rbx
1409a1a1b:	74 08                	je     0x1409a1a25
1409a1a1d:	48 8b cb             	mov    %rbx,%rcx
1409a1a20:	e8 1b e5 8a ff       	call   0x14024ff40
1409a1a25:	33 c0                	xor    %eax,%eax
1409a1a27:	eb 03                	jmp    0x1409a1a2c
1409a1a29:	48 8b c3             	mov    %rbx,%rax
1409a1a2c:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1409a1a31:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1409a1a36:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1409a1a3b:	48 83 c4 30          	add    $0x30,%rsp
1409a1a3f:	5f                   	pop    %rdi
1409a1a40:	c3                   	ret
1409a1a41:	cc                   	int3
1409a1a42:	cc                   	int3
1409a1a43:	cc                   	int3
1409a1a44:	cc                   	int3
1409a1a45:	cc                   	int3
1409a1a46:	cc                   	int3
1409a1a47:	cc                   	int3
1409a1a48:	cc                   	int3
1409a1a49:	cc                   	int3
1409a1a4a:	cc                   	int3
1409a1a4b:	cc                   	int3
1409a1a4c:	cc                   	int3
1409a1a4d:	cc                   	int3
1409a1a4e:	cc                   	int3
1409a1a4f:	cc                   	int3
1409a1a50:	48 83 ec 48          	sub    $0x48,%rsp
1409a1a54:	48 8b 05 a5 74 a1 00 	mov    0xa174a5(%rip),%rax        # 0x1413b8f00
1409a1a5b:	48 33 c4             	xor    %rsp,%rax
1409a1a5e:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
1409a1a63:	83 b9 a4 00 00 00 01 	cmpl   $0x1,0xa4(%rcx)
1409a1a6a:	b8 d4 c3 b2 a1       	mov    $0xa1b2c3d4,%eax
1409a1a6f:	41 ba 4d 3c b2 a1    	mov    $0xa1b23c4d,%r10d
1409a1a75:	44 89 4c 24 30       	mov    %r9d,0x30(%rsp)
1409a1a7a:	41 0f 44 c2          	cmove  %r10d,%eax
1409a1a7e:	44 89 44 24 34       	mov    %r8d,0x34(%rsp)
1409a1a83:	89 44 24 20          	mov    %eax,0x20(%rsp)
1409a1a87:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1409a1a8c:	33 c0                	xor    %eax,%eax
1409a1a8e:	48 c7 44 24 24 02 00 	movq   $0x40002,0x24(%rsp)
1409a1a95:	04 00
1409a1a97:	4c 8b ca             	mov    %rdx,%r9
1409a1a9a:	89 44 24 2c          	mov    %eax,0x2c(%rsp)
1409a1a9e:	8d 50 18             	lea    0x18(%rax),%edx
1409a1aa1:	44 8d 40 01          	lea    0x1(%rax),%r8d
1409a1aa5:	e8 4e 17 49 00       	call   0x140e331f8
1409a1aaa:	48 ff c8             	dec    %rax
1409a1aad:	48 f7 d8             	neg    %rax
1409a1ab0:	1b c0                	sbb    %eax,%eax
1409a1ab2:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
1409a1ab7:	48 33 cc             	xor    %rsp,%rcx
1409a1aba:	e8 41 9a 47 00       	call   0x140e1b500
1409a1abf:	48 83 c4 48          	add    $0x48,%rsp
1409a1ac3:	c3                   	ret
1409a1ac4:	cc                   	int3
1409a1ac5:	cc                   	int3
1409a1ac6:	cc                   	int3
1409a1ac7:	cc                   	int3
1409a1ac8:	cc                   	int3
1409a1ac9:	cc                   	int3
1409a1aca:	cc                   	int3
1409a1acb:	cc                   	int3
1409a1acc:	cc                   	int3
1409a1acd:	cc                   	int3
1409a1ace:	cc                   	int3
1409a1acf:	cc                   	int3
1409a1ad0:	48 83 ec 28          	sub    $0x28,%rsp
1409a1ad4:	48 8b ca             	mov    %rdx,%rcx
1409a1ad7:	4c 8d 05 2a 0d a1 00 	lea    0xa10d2a(%rip),%r8        # 0x1413b2808
1409a1ade:	ba 00 01 00 00       	mov    $0x100,%edx
1409a1ae3:	49 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%r9
1409a1aea:	e8 bd 36 4a 00       	call   0x140e451ac
1409a1aef:	33 c0                	xor    %eax,%eax
1409a1af1:	48 83 c4 28          	add    $0x28,%rsp
1409a1af5:	c3                   	ret
1409a1af6:	cc                   	int3
1409a1af7:	cc                   	int3
1409a1af8:	cc                   	int3
1409a1af9:	cc                   	int3
1409a1afa:	cc                   	int3
1409a1afb:	cc                   	int3
1409a1afc:	cc                   	int3
1409a1afd:	cc                   	int3
1409a1afe:	cc                   	int3
1409a1aff:	cc                   	int3
1409a1b00:	48 83 ec 28          	sub    $0x28,%rsp
1409a1b04:	49 8b c9             	mov    %r9,%rcx
1409a1b07:	4c 8d 05 fa 0c a1 00 	lea    0xa10cfa(%rip),%r8        # 0x1413b2808
1409a1b0e:	49 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%r9
1409a1b15:	ba 00 01 00 00       	mov    $0x100,%edx
1409a1b1a:	e8 8d 36 4a 00       	call   0x140e451ac
1409a1b1f:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
1409a1b24:	48 83 c4 28          	add    $0x28,%rsp