1407316bd:	48 89 03             	mov    %rax,(%rbx)
1407316c0:	33 c9                	xor    %ecx,%ecx
1407316c2:	48 89 4b 20          	mov    %rcx,0x20(%rbx)
1407316c6:	48 8b 07             	mov    (%rdi),%rax
1407316c9:	48 89 43 20          	mov    %rax,0x20(%rbx)
1407316cd:	48 89 0f             	mov    %rcx,(%rdi)
1407316d0:	48 8b c3             	mov    %rbx,%rax
1407316d3:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1407316d8:	48 83 c4 20          	add    $0x20,%rsp
1407316dc:	5f                   	pop    %rdi
1407316dd:	c3                   	ret
1407316de:	b9 01 00 00 00       	mov    $0x1,%ecx
1407316e3:	e8 18 90 05 00       	call   0x14078a700
1407316e8:	cc                   	int3
1407316e9:	33 c9                	xor    %ecx,%ecx
1407316eb:	e8 10 90 05 00       	call   0x14078a700
1407316f0:	cc                   	int3
1407316f1:	cc                   	int3
1407316f2:	cc                   	int3
1407316f3:	cc                   	int3
1407316f4:	cc                   	int3
1407316f5:	cc                   	int3
1407316f6:	cc                   	int3
1407316f7:	cc                   	int3
1407316f8:	cc                   	int3
1407316f9:	cc                   	int3
1407316fa:	cc                   	int3
1407316fb:	cc                   	int3
1407316fc:	cc                   	int3
1407316fd:	cc                   	int3
1407316fe:	cc                   	int3
1407316ff:	cc                   	int3
140731700:	48 8b c4             	mov    %rsp,%rax
140731703:	53                   	push   %rbx
140731704:	55                   	push   %rbp
140731705:	56                   	push   %rsi
140731706:	57                   	push   %rdi
140731707:	41 54                	push   %r12
140731709:	41 56                	push   %r14
14073170b:	41 57                	push   %r15
14073170d:	48 83 ec 30          	sub    $0x30,%rsp
140731711:	44 8b fa             	mov    %edx,%r15d
140731714:	4c 8b f1             	mov    %rcx,%r14
140731717:	45 33 e4             	xor    %r12d,%r12d
14073171a:	44 89 60 10          	mov    %r12d,0x10(%rax)
14073171e:	83 fa 0d             	cmp    $0xd,%edx
140731721:	75 14                	jne    0x140731737
140731723:	41 8b fc             	mov    %r12d,%edi
140731726:	4c 89 60 20          	mov    %r12,0x20(%rax)
14073172a:	bd 01 00 00 00       	mov    $0x1,%ebp
14073172f:	41 8b f4             	mov    %r12d,%esi
140731732:	41 8b dc             	mov    %r12d,%ebx
140731735:	eb 44                	jmp    0x14073177b
140731737:	41 8b cf             	mov    %r15d,%ecx
14073173a:	e8 81 e7 01 00       	call   0x14074fec0
14073173f:	48 8b 30             	mov    (%rax),%rsi
140731742:	48 8b de             	mov    %rsi,%rbx
140731745:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
14073174c:	00
14073174d:	48 85 f6             	test   %rsi,%rsi
140731750:	74 1c                	je     0x14073176e
140731752:	8b 46 10             	mov    0x10(%rsi),%eax
140731755:	ff c0                	inc    %eax
140731757:	89 46 10             	mov    %eax,0x10(%rsi)
14073175a:	83 f8 01             	cmp    $0x1,%eax
14073175d:	0f 8e 28 01 00 00    	jle    0x14073188b
140731763:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140731768:	0f 84 25 01 00 00    	je     0x140731893
14073176e:	bd 02 00 00 00       	mov    $0x2,%ebp
140731773:	48 8b bc 24 88 00 00 	mov    0x88(%rsp),%rdi
14073177a:	00
14073177b:	89 6c 24 78          	mov    %ebp,0x78(%rsp)
14073177f:	b9 60 00 00 00       	mov    $0x60,%ecx
140731784:	e8 7f 99 6e 00       	call   0x140e1b108
140731789:	48 8b c8             	mov    %rax,%rcx
14073178c:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140731791:	48 85 c0             	test   %rax,%rax
140731794:	74 38                	je     0x1407317ce
140731796:	48 89 b4 24 80 00 00 	mov    %rsi,0x80(%rsp)
14073179d:	00
14073179e:	48 85 f6             	test   %rsi,%rsi
1407317a1:	74 1c                	je     0x1407317bf
1407317a3:	8b 46 10             	mov    0x10(%rsi),%eax
1407317a6:	ff c0                	inc    %eax
1407317a8:	89 46 10             	mov    %eax,0x10(%rsi)
1407317ab:	83 f8 01             	cmp    $0x1,%eax
1407317ae:	0f 8e ea 00 00 00    	jle    0x14073189e
1407317b4:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1407317b9:	0f 84 e7 00 00 00    	je     0x1407318a6
1407317bf:	48 8d 94 24 80 00 00 	lea    0x80(%rsp),%rdx
1407317c6:	00
1407317c7:	e8 94 72 e4 ff       	call   0x140578a60
1407317cc:	eb 03                	jmp    0x1407317d1
1407317ce:	49 8b c4             	mov    %r12,%rax
1407317d1:	83 cd 04             	or     $0x4,%ebp
1407317d4:	48 89 84 24 80 00 00 	mov    %rax,0x80(%rsp)
1407317db:	00
1407317dc:	48 8d 94 24 80 00 00 	lea    0x80(%rsp),%rdx
1407317e3:	00
1407317e4:	49 8b ce             	mov    %r14,%rcx
1407317e7:	e8 c4 47 b2 ff       	call   0x140255fb0
1407317ec:	90                   	nop
1407317ed:	40 f6 c5 02          	test   $0x2,%bpl
1407317f1:	74 33                	je     0x140731826
1407317f3:	83 e5 fd             	and    $0xfffffffd,%ebp
1407317f6:	89 6c 24 78          	mov    %ebp,0x78(%rsp)
1407317fa:	48 85 db             	test   %rbx,%rbx
1407317fd:	74 27                	je     0x140731826
1407317ff:	8b 43 10             	mov    0x10(%rbx),%eax
140731802:	ff c8                	dec    %eax
140731804:	89 43 10             	mov    %eax,0x10(%rbx)
140731807:	85 c0                	test   %eax,%eax
140731809:	7f 1b                	jg     0x140731826
14073180b:	0f 88 a0 00 00 00    	js     0x1407318b1
140731811:	48 8b 03             	mov    (%rbx),%rax
140731814:	ba 01 00 00 00       	mov    $0x1,%edx
140731819:	48 8b cb             	mov    %rbx,%rcx
14073181c:	48 8b 00             	mov    (%rax),%rax
14073181f:	ff 15 fb 21 85 00    	call   *0x8521fb(%rip)        # 0x140f83a20
140731825:	90                   	nop
140731826:	40 f6 c5 01          	test   $0x1,%bpl
14073182a:	74 28                	je     0x140731854
14073182c:	48 85 ff             	test   %rdi,%rdi
14073182f:	74 23                	je     0x140731854
140731831:	8b 47 10             	mov    0x10(%rdi),%eax
140731834:	ff c8                	dec    %eax
140731836:	89 47 10             	mov    %eax,0x10(%rdi)
140731839:	85 c0                	test   %eax,%eax
14073183b:	7f 17                	jg     0x140731854
14073183d:	78 41                	js     0x140731880
14073183f:	48 8b 07             	mov    (%rdi),%rax
140731842:	ba 01 00 00 00       	mov    $0x1,%edx
140731847:	48 8b cf             	mov    %rdi,%rcx
14073184a:	48 8b 00             	mov    (%rax),%rax
14073184d:	ff 15 cd 21 85 00    	call   *0x8521cd(%rip)        # 0x140f83a20
140731853:	90                   	nop
140731854:	48 8d 05 55 1a 8f 00 	lea    0x8f1a55(%rip),%rax        # 0x1410232b0
14073185b:	49 89 06             	mov    %rax,(%r14)
14073185e:	4d 89 66 20          	mov    %r12,0x20(%r14)
140731862:	4d 89 66 28          	mov    %r12,0x28(%r14)
140731866:	4d 89 66 30          	mov    %r12,0x30(%r14)
14073186a:	45 89 7e 38          	mov    %r15d,0x38(%r14)
14073186e:	49 8b c6             	mov    %r14,%rax
140731871:	48 83 c4 30          	add    $0x30,%rsp
140731875:	41 5f                	pop    %r15
140731877:	41 5e                	pop    %r14
140731879:	41 5c                	pop    %r12
14073187b:	5f                   	pop    %rdi
14073187c:	5e                   	pop    %rsi
14073187d:	5d                   	pop    %rbp
14073187e:	5b                   	pop    %rbx
14073187f:	c3                   	ret
140731880:	b9 02 00 00 00       	mov    $0x2,%ecx
140731885:	e8 76 8e 05 00       	call   0x14078a700
14073188a:	90                   	nop
14073188b:	33 c9                	xor    %ecx,%ecx
14073188d:	e8 6e 8e 05 00       	call   0x14078a700
140731892:	cc                   	int3
140731893:	b9 01 00 00 00       	mov    $0x1,%ecx
140731898:	e8 63 8e 05 00       	call   0x14078a700
14073189d:	90                   	nop
14073189e:	33 c9                	xor    %ecx,%ecx
1407318a0:	e8 5b 8e 05 00       	call   0x14078a700
1407318a5:	cc                   	int3
1407318a6:	b9 01 00 00 00       	mov    $0x1,%ecx
1407318ab:	e8 50 8e 05 00       	call   0x14078a700
1407318b0:	90                   	nop
1407318b1:	b9 02 00 00 00       	mov    $0x2,%ecx
1407318b6:	e8 45 8e 05 00       	call   0x14078a700
1407318bb:	cc                   	int3
1407318bc:	cc                   	int3
1407318bd:	cc                   	int3
1407318be:	cc                   	int3
1407318bf:	cc                   	int3
1407318c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1407318c5:	57                   	push   %rdi
1407318c6:	48 83 ec 20          	sub    $0x20,%rsp
1407318ca:	48 8b fa             	mov    %rdx,%rdi
1407318cd:	48 8b d9             	mov    %rcx,%rbx
1407318d0:	b9 08 00 00 00       	mov    $0x8,%ecx
1407318d5:	e8 e6 e5 01 00       	call   0x14074fec0
1407318da:	48 8b 08             	mov    (%rax),%rcx
1407318dd:	48 89 4c 24 40       	mov    %rcx,0x40(%rsp)
1407318e2:	48 85 c9             	test   %rcx,%rcx
1407318e5:	74 14                	je     0x1407318fb
1407318e7:	8b 41 10             	mov    0x10(%rcx),%eax
1407318ea:	ff c0                	inc    %eax
1407318ec:	89 41 10             	mov    %eax,0x10(%rcx)
1407318ef:	83 f8 01             	cmp    $0x1,%eax
1407318f2:	7e 3b                	jle    0x14073192f
1407318f4:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
1407318f9:	74 29                	je     0x140731924
1407318fb:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140731900:	48 8b cb             	mov    %rbx,%rcx
140731903:	e8 a8 46 b2 ff       	call   0x140255fb0
140731908:	48 8d 05 21 19 8f 00 	lea    0x8f1921(%rip),%rax        # 0x141023230
14073190f:	48 89 03             	mov    %rax,(%rbx)
140731912:	48 89 7b 20          	mov    %rdi,0x20(%rbx)
140731916:	48 8b c3             	mov    %rbx,%rax
140731919:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14073191e:	48 83 c4 20          	add    $0x20,%rsp
140731922:	5f                   	pop    %rdi
140731923:	c3                   	ret
140731924:	b9 01 00 00 00       	mov    $0x1,%ecx
140731929:	e8 d2 8d 05 00       	call   0x14078a700
14073192e:	cc                   	int3
14073192f:	33 c9                	xor    %ecx,%ecx
140731931:	e8 ca 8d 05 00       	call   0x14078a700
140731936:	cc                   	int3
140731937:	cc                   	int3
140731938:	cc                   	int3
140731939:	cc                   	int3
14073193a:	cc                   	int3
14073193b:	cc                   	int3
14073193c:	cc                   	int3
14073193d:	cc                   	int3
14073193e:	cc                   	int3
14073193f:	cc                   	int3
140731940:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140731945:	57                   	push   %rdi
140731946:	48 83 ec 20          	sub    $0x20,%rsp
14073194a:	8b fa                	mov    %edx,%edi
14073194c:	48 8b d9             	mov    %rcx,%rbx
14073194f:	b9 0a 00 00 00       	mov    $0xa,%ecx
140731954:	e8 67 e5 01 00       	call   0x14074fec0
140731959:	48 8b 08             	mov    (%rax),%rcx
14073195c:	48 89 4c 24 40       	mov    %rcx,0x40(%rsp)
140731961:	48 85 c9             	test   %rcx,%rcx
140731964:	74 14                	je     0x14073197a
140731966:	8b 41 10             	mov    0x10(%rcx),%eax
140731969:	ff c0                	inc    %eax
14073196b:	89 41 10             	mov    %eax,0x10(%rcx)
14073196e:	83 f8 01             	cmp    $0x1,%eax
140731971:	7e 3a                	jle    0x1407319ad
140731973:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140731978:	74 28                	je     0x1407319a2
14073197a:	4c 8b c7             	mov    %rdi,%r8
14073197d:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
140731982:	48 8b cb             	mov    %rbx,%rcx
140731985:	e8 96 45 b2 ff       	call   0x140255f20
14073198a:	48 8d 05 9f 15 8f 00 	lea    0x8f159f(%rip),%rax        # 0x141022f30
140731991:	48 89 03             	mov    %rax,(%rbx)
140731994:	48 8b c3             	mov    %rbx,%rax
140731997:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14073199c:	48 83 c4 20          	add    $0x20,%rsp
1407319a0:	5f                   	pop    %rdi
1407319a1:	c3                   	ret
1407319a2:	b9 01 00 00 00       	mov    $0x1,%ecx
1407319a7:	e8 54 8d 05 00       	call   0x14078a700
1407319ac:	cc                   	int3
1407319ad:	33 c9                	xor    %ecx,%ecx
1407319af:	e8 4c 8d 05 00       	call   0x14078a700
1407319b4:	cc                   	int3
1407319b5:	cc                   	int3
1407319b6:	cc                   	int3
1407319b7:	cc                   	int3
1407319b8:	cc                   	int3
1407319b9:	cc                   	int3
1407319ba:	cc                   	int3
1407319bb:	cc                   	int3
1407319bc:	cc                   	int3
1407319bd:	cc                   	int3
1407319be:	cc                   	int3
1407319bf:	cc                   	int3
1407319c0:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1407319c5:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
1407319ca:	53                   	push   %rbx
1407319cb:	56                   	push   %rsi
1407319cc:	57                   	push   %rdi
1407319cd:	41 54                	push   %r12
1407319cf:	41 55                	push   %r13
1407319d1:	41 56                	push   %r14
1407319d3:	41 57                	push   %r15
1407319d5:	48 83 ec 50          	sub    $0x50,%rsp
1407319d9:	45 0f b6 e8          	movzbl %r8b,%r13d
1407319dd:	4c 8b f2             	mov    %rdx,%r14
1407319e0:	48 8b d9             	mov    %rcx,%rbx
1407319e3:	48 8b 0a             	mov    (%rdx),%rcx
1407319e6:	48 85 c9             	test   %rcx,%rcx
1407319e9:	74 1c                	je     0x140731a07
1407319eb:	8b 41 10             	mov    0x10(%rcx),%eax
1407319ee:	ff c0                	inc    %eax
1407319f0:	89 41 10             	mov    %eax,0x10(%rcx)
1407319f3:	83 f8 01             	cmp    $0x1,%eax
1407319f6:	0f 8e b0 01 00 00    	jle    0x140731bac
1407319fc:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
140731a01:	0f 84 ad 01 00 00    	je     0x140731bb4
140731a07:	48 89 8c 24 a8 00 00 	mov    %rcx,0xa8(%rsp)
140731a0e:	00
140731a0f:	48 8d 94 24 a8 00 00 	lea    0xa8(%rsp),%rdx
140731a16:	00
140731a17:	48 8b cb             	mov    %rbx,%rcx
140731a1a:	e8 91 45 b2 ff       	call   0x140255fb0
140731a1f:	90                   	nop
140731a20:	33 f6                	xor    %esi,%esi
140731a22:	48 89 73 28          	mov    %rsi,0x28(%rbx)
140731a26:	48 8d 05 ab 19 8f 00 	lea    0x8f19ab(%rip),%rax        # 0x1410233d8
140731a2d:	48 89 03             	mov    %rax,(%rbx)
140731a30:	48 8d 05 21 1a 8f 00 	lea    0x8f1a21(%rip),%rax        # 0x141023458
140731a37:	48 89 43 20          	mov    %rax,0x20(%rbx)
140731a3b:	48 89 73 38          	mov    %rsi,0x38(%rbx)
140731a3f:	49 8b 06             	mov    (%r14),%rax
140731a42:	48 83 c0 58          	add    $0x58,%rax
140731a46:	48 89 43 48          	mov    %rax,0x48(%rbx)
140731a4a:	48 89 73 30          	mov    %rsi,0x30(%rbx)
140731a4e:	49 8b 06             	mov    (%r14),%rax
140731a51:	48 89 43 38          	mov    %rax,0x38(%rbx)
140731a55:	49 89 36             	mov    %rsi,(%r14)
140731a58:	48 8b 43 38          	mov    0x38(%rbx),%rax
140731a5c:	48 63 78 78          	movslq 0x78(%rax),%rdi
140731a60:	b9 18 00 00 00       	mov    $0x18,%ecx
140731a65:	e8 9e 96 6e 00       	call   0x140e1b108
140731a6a:	48 8b c8             	mov    %rax,%rcx
140731a6d:	48 85 c0             	test   %rax,%rax
140731a70:	74 0d                	je     0x140731a7f
140731a72:	48 89 30             	mov    %rsi,(%rax)
140731a75:	48 89 70 08          	mov    %rsi,0x8(%rax)
140731a79:	48 89 70 10          	mov    %rsi,0x10(%rax)
140731a7d:	eb 03                	jmp    0x140731a82
140731a7f:	48 8b ce             	mov    %rsi,%rcx
140731a82:	48 8d 73 40          	lea    0x40(%rbx),%rsi
140731a86:	48 89 0e             	mov    %rcx,(%rsi)
140731a89:	48 8b d7             	mov    %rdi,%rdx
140731a8c:	48 89 94 24 a8 00 00 	mov    %rdx,0xa8(%rsp)
140731a93:	00
140731a94:	48 8d 7b 38          	lea    0x38(%rbx),%rdi
140731a98:	4c 8b fe             	mov    %rsi,%r15
140731a9b:	48 8b 41 10          	mov    0x10(%rcx),%rax
140731a9f:	48 2b 01             	sub    (%rcx),%rax
140731aa2:	48 c1 f8 04          	sar    $0x4,%rax
140731aa6:	48 3b d0             	cmp    %rax,%rdx
140731aa9:	76 28                	jbe    0x140731ad3
140731aab:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffffff,%rax
140731ab2:	ff ff 0f
140731ab5:	48 3b d0             	cmp    %rax,%rdx
140731ab8:	0f 87 01 01 00 00    	ja     0x140731bbf
140731abe:	48 8d 94 24 a8 00 00 	lea    0xa8(%rsp),%rdx
140731ac5:	00
140731ac6:	e8 85 7e e2 ff       	call   0x140559950
140731acb:	48 8d 7b 38          	lea    0x38(%rbx),%rdi
140731acf:	4c 8d 7b 40          	lea    0x40(%rbx),%r15
140731ad3:	80 3d 54 ed cf 00 00 	cmpb   $0x0,0xcfed54(%rip)        # 0x14143082e
140731ada:	0f 84 80 00 00 00    	je     0x140731b60
140731ae0:	48 8b 43 38          	mov    0x38(%rbx),%rax
140731ae4:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140731ae9:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
140731aee:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140731af3:	48 8d 0d 96 e9 cf 00 	lea    0xcfe996(%rip),%rcx        # 0x141430490
140731afa:	e8 f1 e5 ff ff       	call   0x1407300f0
140731aff:	48 8b 08             	mov    (%rax),%rcx