18009062c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180090631:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
180090636:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
18009063b:	55                   	push   %rbp
18009063c:	56                   	push   %rsi
18009063d:	57                   	push   %rdi
18009063e:	41 54                	push   %r12
180090640:	41 55                	push   %r13
180090642:	41 56                	push   %r14
180090644:	41 57                	push   %r15
180090646:	48 83 ec 20          	sub    $0x20,%rsp
18009064a:	33 ff                	xor    %edi,%edi
18009064c:	4c 8b ea             	mov    %rdx,%r13
18009064f:	4c 8b e1             	mov    %rcx,%r12
180090652:	48 85 c9             	test   %rcx,%rcx
180090655:	0f 84 ce 00 00 00    	je     0x180090729
18009065b:	4c 8b 31             	mov    (%rcx),%r14
18009065e:	4d 85 f6             	test   %r14,%r14
180090661:	0f 84 c2 00 00 00    	je     0x180090729
180090667:	48 85 d2             	test   %rdx,%rdx
18009066a:	0f 84 b9 00 00 00    	je     0x180090729
180090670:	48 39 bc 24 80 00 00 	cmp    %rdi,0x80(%rsp)
180090677:	00
180090678:	0f 84 ab 00 00 00    	je     0x180090729
18009067e:	8b 1a                	mov    (%rdx),%ebx
180090680:	8b f7                	mov    %edi,%esi
180090682:	85 db                	test   %ebx,%ebx
180090684:	74 12                	je     0x180090698
180090686:	49 8b c6             	mov    %r14,%rax
180090689:	48 39 38             	cmp    %rdi,(%rax)
18009068c:	74 0a                	je     0x180090698
18009068e:	ff c6                	inc    %esi
180090690:	48 83 c0 08          	add    $0x8,%rax
180090694:	3b f3                	cmp    %ebx,%esi
180090696:	72 f1                	jb     0x180090689
180090698:	3b f3                	cmp    %ebx,%esi
18009069a:	75 79                	jne    0x180090715
18009069c:	8b f7                	mov    %edi,%esi
18009069e:	85 db                	test   %ebx,%ebx
1800906a0:	74 21                	je     0x1800906c3
1800906a2:	4d 8b fe             	mov    %r14,%r15
1800906a5:	48 8b 84 24 80 00 00 	mov    0x80(%rsp),%rax
1800906ac:	00
1800906ad:	49 8b 0f             	mov    (%r15),%rcx
1800906b0:	ff d0                	call   *%rax
1800906b2:	0f 1f 00             	nopl   (%rax)
1800906b5:	85 c0                	test   %eax,%eax
1800906b7:	79 5c                	jns    0x180090715
1800906b9:	ff c6                	inc    %esi
1800906bb:	49 83 c7 08          	add    $0x8,%r15
1800906bf:	3b f3                	cmp    %ebx,%esi
1800906c1:	72 e2                	jb     0x1800906a5
1800906c3:	44 8d 3c 1b          	lea    (%rbx,%rbx,1),%r15d
1800906c7:	41 8b cf             	mov    %r15d,%ecx
1800906ca:	48 c1 e1 03          	shl    $0x3,%rcx
1800906ce:	e8 7d 97 00 00       	call   0x180099e50
1800906d3:	48 8b e8             	mov    %rax,%rbp
1800906d6:	48 85 c0             	test   %rax,%rax
1800906d9:	75 07                	jne    0x1800906e2
1800906db:	bf 17 00 00 c0       	mov    $0xc0000017,%edi
1800906e0:	eb 4c                	jmp    0x18009072e
1800906e2:	48 c1 e3 03          	shl    $0x3,%rbx
1800906e6:	33 d2                	xor    %edx,%edx
1800906e8:	4c 8b c3             	mov    %rbx,%r8
1800906eb:	48 8d 0c 03          	lea    (%rbx,%rax,1),%rcx
1800906ef:	e8 8c 55 0a 00       	call   0x180135c80
1800906f4:	4c 8b c3             	mov    %rbx,%r8
1800906f7:	49 8b d6             	mov    %r14,%rdx
1800906fa:	48 8b cd             	mov    %rbp,%rcx
1800906fd:	e8 be 52 0a 00       	call   0x1801359c0
180090702:	49 8b ce             	mov    %r14,%rcx
180090705:	e8 f2 98 00 00       	call   0x180099ffc
18009070a:	45 89 7d 00          	mov    %r15d,0x0(%r13)
18009070e:	4c 8b f5             	mov    %rbp,%r14
180090711:	49 89 2c 24          	mov    %rbp,(%r12)
180090715:	48 8b 4c 24 70       	mov    0x70(%rsp),%rcx
18009071a:	8b c6                	mov    %esi,%eax
18009071c:	49 89 0c c6          	mov    %rcx,(%r14,%rax,8)
180090720:	48 8b 44 24 78       	mov    0x78(%rsp),%rax
180090725:	89 30                	mov    %esi,(%rax)
180090727:	eb 05                	jmp    0x18009072e
180090729:	bf 0d 00 00 c0       	mov    $0xc000000d,%edi
18009072e:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
180090733:	8b c7                	mov    %edi,%eax
180090735:	48 83 c4 20          	add    $0x20,%rsp
180090739:	41 5f                	pop    %r15
18009073b:	41 5e                	pop    %r14
18009073d:	41 5d                	pop    %r13
18009073f:	41 5c                	pop    %r12
180090741:	5f                   	pop    %rdi
180090742:	5e                   	pop    %rsi
180090743:	5d                   	pop    %rbp
180090744:	c3                   	ret
180090745:	cc                   	int3
180090746:	cc                   	int3
180090747:	cc                   	int3
180090748:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18009074d:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180090752:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180090757:	57                   	push   %rdi
180090758:	41 54                	push   %r12
18009075a:	41 55                	push   %r13
18009075c:	41 56                	push   %r14
18009075e:	41 57                	push   %r15
180090760:	48 83 ec 30          	sub    $0x30,%rsp
180090764:	33 db                	xor    %ebx,%ebx
180090766:	4d 8b e9             	mov    %r9,%r13
180090769:	4d 8b f8             	mov    %r8,%r15
18009076c:	8b ea                	mov    %edx,%ebp
18009076e:	48 8b f1             	mov    %rcx,%rsi
180090771:	48 85 c9             	test   %rcx,%rcx
180090774:	74 5c                	je     0x1800907d2
180090776:	4d 85 c0             	test   %r8,%r8
180090779:	74 57                	je     0x1800907d2
18009077b:	8b fb                	mov    %ebx,%edi
18009077d:	85 d2                	test   %edx,%edx
18009077f:	74 51                	je     0x1800907d2
180090781:	4c 8b a4 24 98 00 00 	mov    0x98(%rsp),%r12
180090788:	00
180090789:	4c 8b f1             	mov    %rcx,%r14
18009078c:	49 39 1e             	cmp    %rbx,(%r14)
18009078f:	74 2c                	je     0x1800907bd
180090791:	4c 8b 8c 24 90 00 00 	mov    0x90(%rsp),%r9
180090798:	00
180090799:	49 8b c5             	mov    %r13,%rax
18009079c:	4c 8b 84 24 88 00 00 	mov    0x88(%rsp),%r8
1800907a3:	00
1800907a4:	48 8b 94 24 80 00 00 	mov    0x80(%rsp),%rdx
1800907ab:	00
1800907ac:	49 8b 0e             	mov    (%r14),%rcx
1800907af:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
1800907b4:	ff d0                	call   *%rax
1800907b6:	0f 1f 00             	nopl   (%rax)
1800907b9:	84 c0                	test   %al,%al
1800907bb:	75 0c                	jne    0x1800907c9
1800907bd:	ff c7                	inc    %edi
1800907bf:	49 83 c6 08          	add    $0x8,%r14
1800907c3:	3b fd                	cmp    %ebp,%edi
1800907c5:	73 0b                	jae    0x1800907d2
1800907c7:	eb c3                	jmp    0x18009078c
1800907c9:	8b c7                	mov    %edi,%eax
1800907cb:	41 89 3f             	mov    %edi,(%r15)
1800907ce:	48 8b 1c c6          	mov    (%rsi,%rax,8),%rbx
1800907d2:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
1800907d7:	48 8b c3             	mov    %rbx,%rax
1800907da:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1800907df:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
1800907e4:	48 83 c4 30          	add    $0x30,%rsp
1800907e8:	41 5f                	pop    %r15
1800907ea:	41 5e                	pop    %r14
1800907ec:	41 5d                	pop    %r13
1800907ee:	41 5c                	pop    %r12
1800907f0:	5f                   	pop    %rdi
1800907f1:	c3                   	ret
1800907f2:	cc                   	int3
1800907f3:	cc                   	int3
1800907f4:	48 8b c4             	mov    %rsp,%rax
1800907f7:	48 89 58 08          	mov    %rbx,0x8(%rax)
1800907fb:	48 89 68 10          	mov    %rbp,0x10(%rax)
1800907ff:	48 89 70 18          	mov    %rsi,0x18(%rax)
180090803:	48 89 78 20          	mov    %rdi,0x20(%rax)
180090807:	41 56                	push   %r14
180090809:	48 83 ec 20          	sub    $0x20,%rsp
18009080d:	4d 8b f0             	mov    %r8,%r14
180090810:	8b ea                	mov    %edx,%ebp
180090812:	48 8b f9             	mov    %rcx,%rdi
180090815:	48 85 c9             	test   %rcx,%rcx
180090818:	75 07                	jne    0x180090821
18009081a:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18009081f:	eb 29                	jmp    0x18009084a
180090821:	33 db                	xor    %ebx,%ebx
180090823:	33 f6                	xor    %esi,%esi
180090825:	85 ed                	test   %ebp,%ebp
180090827:	74 21                	je     0x18009084a
180090829:	48 8b 0f             	mov    (%rdi),%rcx
18009082c:	48 85 c9             	test   %rcx,%rcx
18009082f:	74 0f                	je     0x180090840
180090831:	49 8b c6             	mov    %r14,%rax
180090834:	8b d6                	mov    %esi,%edx
180090836:	ff d0                	call   *%rax
180090838:	0f 1f 00             	nopl   (%rax)
18009083b:	85 c0                	test   %eax,%eax
18009083d:	0f 48 d8             	cmovs  %eax,%ebx
180090840:	ff c6                	inc    %esi
180090842:	48 83 c7 08          	add    $0x8,%rdi
180090846:	3b f5                	cmp    %ebp,%esi
180090848:	72 df                	jb     0x180090829
18009084a:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
18009084f:	8b c3                	mov    %ebx,%eax
180090851:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180090856:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18009085b:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
180090860:	48 83 c4 20          	add    $0x20,%rsp
180090864:	41 5e                	pop    %r14
180090866:	c3                   	ret
180090867:	cc                   	int3
180090868:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
18009086d:	57                   	push   %rdi
18009086e:	48 83 ec 30          	sub    $0x30,%rsp
180090872:	48 8b d9             	mov    %rcx,%rbx
180090875:	48 85 c9             	test   %rcx,%rcx
180090878:	75 07                	jne    0x180090881
18009087a:	bb 0d 00 00 c0       	mov    $0xc000000d,%ebx
18009087f:	eb 4d                	jmp    0x1800908ce
180090881:	b9 00 04 00 00       	mov    $0x400,%ecx
180090886:	89 4c 24 40          	mov    %ecx,0x40(%rsp)
18009088a:	e8 c1 95 00 00       	call   0x180099e50
18009088f:	48 8b f8             	mov    %rax,%rdi
180090892:	48 85 c0             	test   %rax,%rax
180090895:	75 07                	jne    0x18009089e
180090897:	bb 17 00 00 c0       	mov    $0xc0000017,%ebx
18009089c:	eb 30                	jmp    0x1800908ce
18009089e:	4c 8d 4c 24 40       	lea    0x40(%rsp),%r9
1800908a3:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1800908a8:	4c 8d 05 51 15 0c 00 	lea    0xc1551(%rip),%r8        # 0x180151e00
1800908af:	ba 16 00 00 00       	mov    $0x16,%edx
1800908b4:	48 8b cb             	mov    %rbx,%rcx
1800908b7:	e8 20 00 00 00       	call   0x1800908dc
1800908bc:	f7 d8                	neg    %eax
1800908be:	1b db                	sbb    %ebx,%ebx
1800908c0:	81 e3 c0 00 00 c0    	and    $0xc00000c0,%ebx
1800908c6:	48 8b cf             	mov    %rdi,%rcx
1800908c9:	e8 2e 97 00 00       	call   0x180099ffc
1800908ce:	8b c3                	mov    %ebx,%eax
1800908d0:	48 8b 5c 24 48       	mov    0x48(%rsp),%rbx
1800908d5:	48 83 c4 30          	add    $0x30,%rsp
1800908d9:	5f                   	pop    %rdi
1800908da:	c3                   	ret
1800908db:	cc                   	int3
1800908dc:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1800908e1:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1800908e6:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1800908eb:	55                   	push   %rbp
1800908ec:	41 54                	push   %r12
1800908ee:	41 55                	push   %r13
1800908f0:	41 56                	push   %r14
1800908f2:	41 57                	push   %r15
1800908f4:	48 8b ec             	mov    %rsp,%rbp
1800908f7:	48 83 ec 30          	sub    $0x30,%rsp
1800908fb:	45 33 e4             	xor    %r12d,%r12d
1800908fe:	44 8b f2             	mov    %edx,%r14d
180090901:	c7 45 f0 00 c4 00 00 	movl   $0xc400,-0x10(%rbp)
180090908:	49 8b d9             	mov    %r9,%rbx
18009090b:	66 c7 45 f4 00 0a    	movw   $0xa00,-0xc(%rbp)
180090911:	4d 8b f8             	mov    %r8,%r15
180090914:	44 89 65 f6          	mov    %r12d,-0xa(%rbp)
180090918:	48 85 c9             	test   %rcx,%rcx
18009091b:	75 0a                	jne    0x180090927
18009091d:	b8 0d 00 00 c0       	mov    $0xc000000d,%eax
180090922:	e9 97 01 00 00       	jmp    0x180090abe
180090927:	41 8b 39             	mov    (%r9),%edi
18009092a:	41 8d 76 08          	lea    0x8(%r14),%esi
18009092e:	33 d2                	xor    %edx,%edx
180090930:	41 bd 00 00 03 00    	mov    $0x30000,%r13d
180090936:	41 8b cd             	mov    %r13d,%ecx
180090939:	48 81 c6 40 00 03 00 	add    $0x30040,%rsi
180090940:	44 8d 42 40          	lea    0x40(%rdx),%r8d
180090944:	e8 37 53 0a 00       	call   0x180135c80
180090949:	66 83 c7 04          	add    $0x4,%di
18009094d:	66 44 89 24 25 42 00 	mov    %r12w,0x30042
180090954:	03 00
180090956:	66 89 3c 25 44 00 03 	mov    %di,0x30044
18009095d:	00
18009095e:	41 8d 46 08          	lea    0x8(%r14),%eax
180090962:	66 89 04 25 40 00 03 	mov    %ax,0x30040
180090969:	00
18009096a:	66 44 89 24 25 46 00 	mov    %r12w,0x30046
180090971:	03 00
180090973:	45 85 f6             	test   %r14d,%r14d
180090976:	74 0f                	je     0x180090987
180090978:	4d 8b c6             	mov    %r14,%r8
18009097b:	41 8d 4d 48          	lea    0x48(%r13),%ecx
18009097f:	49 8b d7             	mov    %r15,%rdx
180090982:	e8 39 50 0a 00       	call   0x1801359c0
180090987:	66 8b 04 25 44 00 03 	mov    0x30044,%ax
18009098e:	00
18009098f:	49 8b d5             	mov    %r13,%rdx
180090992:	66 89 06             	mov    %ax,(%rsi)
180090995:	48 8b c6             	mov    %rsi,%rax
180090998:	66 44 89 66 02       	mov    %r12w,0x2(%rsi)
18009099d:	48 c1 e8 04          	shr    $0x4,%rax
1800909a1:	0f b7 c0             	movzwl %ax,%eax
1800909a4:	89 04 25 28 00 03 00 	mov    %eax,0x30028
1800909ab:	8b c6                	mov    %esi,%eax
1800909ad:	83 e0 0f             	and    $0xf,%eax
1800909b0:	41 c7 45 00 1a 00 00 	movl   $0x1a,0x0(%r13)
1800909b7:	00
1800909b8:	89 04 25 1c 00 03 00 	mov    %eax,0x3001c
1800909bf:	48 8b 05 da 45 11 00 	mov    0x1145da(%rip),%rax        # 0x1801a4fa0
1800909c6:	c7 04 25 04 00 03 00 	movl   $0xbb02,0x30004
1800909cd:	02 bb 00 00
1800909d1:	c7 04 25 30 00 03 00 	movl   $0x3004,0x30030
1800909d8:	04 30 00 00
1800909dc:	44 89 24 25 20 00 03 	mov    %r12d,0x30020
1800909e3:	00
1800909e4:	48 c7 04 25 08 00 03 	movq   $0x41504354,0x30008
1800909eb:	00 54 43 50 41
1800909f0:	44 89 24 25 10 00 03 	mov    %r12d,0x30010
1800909f7:	00
1800909f8:	44 89 24 25 3c 00 03 	mov    %r12d,0x3003c
1800909ff:	00
180090a00:	8b 08                	mov    (%rax),%ecx
180090a02:	e8 09 34 0a 00       	call   0x180133e10
180090a07:	8b 0c 25 04 00 03 00 	mov    0x30004,%ecx
180090a0e:	0f b7 c1             	movzwl %cx,%eax
180090a11:	85 c0                	test   %eax,%eax
180090a13:	74 58                	je     0x180090a6d
180090a15:	83 e8 01             	sub    $0x1,%eax
180090a18:	74 18                	je     0x180090a32
180090a1a:	83 e8 01             	sub    $0x1,%eax
180090a1d:	74 4e                	je     0x180090a6d
180090a1f:	83 f8 01             	cmp    $0x1,%eax
180090a22:	0f 85 91 00 00 00    	jne    0x180090ab9
180090a28:	b8 02 00 00 c0       	mov    $0xc0000002,%eax
180090a2d:	e9 8c 00 00 00       	jmp    0x180090abe
180090a32:	c1 e9 10             	shr    $0x10,%ecx
180090a35:	83 3b 0a             	cmpl   $0xa,(%rbx)
180090a38:	72 2c                	jb     0x180090a66
180090a3a:	f2 0f 10 45 f0       	movsd  -0x10(%rbp),%xmm0
180090a3f:	0f b7 c1             	movzwl %cx,%eax
180090a42:	88 4d f9             	mov    %cl,-0x7(%rbp)
180090a45:	48 8b 4d 50          	mov    0x50(%rbp),%rcx
180090a49:	66 c1 e8 08          	shr    $0x8,%ax
180090a4d:	88 45 f8             	mov    %al,-0x8(%rbp)
180090a50:	0f b7 45 f8          	movzwl -0x8(%rbp),%eax
180090a54:	f2 0f 11 01          	movsd  %xmm0,(%rcx)
180090a58:	66 89 41 08          	mov    %ax,0x8(%rcx)
180090a5c:	c7 03 0a 00 00 00    	movl   $0xa,(%rbx)
180090a62:	33 c0                	xor    %eax,%eax
180090a64:	eb 58                	jmp    0x180090abe
180090a66:	b8 85 01 00 c0       	mov    $0xc0000185,%eax
180090a6b:	eb 51                	jmp    0x180090abe
180090a6d:	0f b7 06             	movzwl (%rsi),%eax
180090a70:	66 85 c0             	test   %ax,%ax
180090a73:	74 44                	je     0x180090ab9
180090a75:	44 89 65 30          	mov    %r12d,0x30(%rbp)
180090a79:	66 83 f8 04          	cmp    $0x4,%ax
180090a7d:	72 3a                	jb     0x180090ab9
180090a7f:	66 83 e8 04          	sub    $0x4,%ax
180090a83:	66 89 45 30          	mov    %ax,0x30(%rbp)
180090a87:	8b 7d 30             	mov    0x30(%rbp),%edi
180090a8a:	8b 03                	mov    (%rbx),%eax
180090a8c:	3b f8                	cmp    %eax,%edi
180090a8e:	73 04                	jae    0x180090a94
180090a90:	89 3b                	mov    %edi,(%rbx)
180090a92:	8b c7                	mov    %edi,%eax
180090a94:	85 c0                	test   %eax,%eax
180090a96:	74 10                	je     0x180090aa8
180090a98:	48 8b 4d 50          	mov    0x50(%rbp),%rcx
180090a9c:	48 8d 56 04          	lea    0x4(%rsi),%rdx