140165644:	48 8d 57 04          	lea    0x4(%rdi),%rdx
140165648:	e8 53 12 ee ff       	call   0x1400468a0
14016564d:	85 c0                	test   %eax,%eax
14016564f:	0f 85 ab fe ff ff    	jne    0x140165500
140165655:	0f b6 85 1d 01 00 00 	movzbl 0x11d(%rbp),%eax
14016565c:	e9 89 fd ff ff       	jmp    0x1401653ea
140165661:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140165668:	48 8b 03             	mov    (%rbx),%rax
14016566b:	31 ed                	xor    %ebp,%ebp
14016566d:	44 8b 4f 30          	mov    0x30(%rdi),%r9d
140165671:	4c 8d 74 24 40       	lea    0x40(%rsp),%r14
140165676:	4c 8b 47 28          	mov    0x28(%rdi),%r8
14016567a:	4c 8d bc 24 80 00 00 	lea    0x80(%rsp),%r15
140165681:	00
140165682:	8b 80 80 07 00 00    	mov    0x780(%rax),%eax
140165688:	4c 89 f9             	mov    %r15,%rcx
14016568b:	85 c0                	test   %eax,%eax
14016568d:	48 8d 47 04          	lea    0x4(%rdi),%rax
140165691:	40 0f 94 c5          	sete   %bpl
140165695:	48 89 c2             	mov    %rax,%rdx
140165698:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14016569d:	e8 3e 99 f5 ff       	call   0x1400befe0
1401656a2:	01 ed                	add    %ebp,%ebp
1401656a4:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1401656ab:	00 00 00 00
1401656af:	90                   	nop
1401656b0:	4c 89 f2             	mov    %r14,%rdx
1401656b3:	4c 89 f9             	mov    %r15,%rcx
1401656b6:	e8 65 9d f5 ff       	call   0x1400bf420
1401656bb:	85 c0                	test   %eax,%eax
1401656bd:	0f 84 a4 fd ff ff    	je     0x140165467
1401656c3:	83 fd 02             	cmp    $0x2,%ebp
1401656c6:	75 64                	jne    0x14016572c
1401656c8:	8b 44 24 74          	mov    0x74(%rsp),%eax
1401656cc:	25 00 f0 00 00       	and    $0xf000,%eax
1401656d1:	3d 00 40 00 00       	cmp    $0x4000,%eax
1401656d6:	0f 84 9c 00 00 00    	je     0x140165778
1401656dc:	3d 00 e0 00 00       	cmp    $0xe000,%eax
1401656e1:	74 cd                	je     0x1401656b0
1401656e3:	48 8b 03             	mov    (%rbx),%rax
1401656e6:	4c 89 f2             	mov    %r14,%rdx
1401656e9:	48 8b 48 18          	mov    0x18(%rax),%rcx
1401656ed:	e8 4e 3c fa ff       	call   0x140109340
1401656f2:	48 89 c2             	mov    %rax,%rdx
1401656f5:	48 85 c0             	test   %rax,%rax
1401656f8:	0f 84 ed 00 00 00    	je     0x1401657eb
1401656fe:	81 08 00 00 00 20    	orl    $0x20000000,(%rax)
140165704:	4c 8b 4c 24 68       	mov    0x68(%rsp),%r9
140165709:	48 89 d9             	mov    %rbx,%rcx
14016570c:	49 89 f0             	mov    %rsi,%r8
14016570f:	e8 bc fa ff ff       	call   0x1401651d0
140165714:	4c 89 f2             	mov    %r14,%rdx
140165717:	4c 89 f9             	mov    %r15,%rcx
14016571a:	e8 01 9d f5 ff       	call   0x1400bf420
14016571f:	85 c0                	test   %eax,%eax
140165721:	0f 84 40 fd ff ff    	je     0x140165467
140165727:	83 fd 02             	cmp    $0x2,%ebp
14016572a:	74 9c                	je     0x1401656c8
14016572c:	48 8b 03             	mov    (%rbx),%rax
14016572f:	49 89 f0             	mov    %rsi,%r8
140165732:	48 8b 50 18          	mov    0x18(%rax),%rdx
140165736:	4c 8d 88 80 07 00 00 	lea    0x780(%rax),%r9
14016573d:	48 8b 8a 80 01 00 00 	mov    0x180(%rdx),%rcx
140165744:	4c 89 f2             	mov    %r14,%rdx
140165747:	e8 14 a9 f5 ff       	call   0x1400c0060
14016574c:	89 c5                	mov    %eax,%ebp
14016574e:	83 f8 ff             	cmp    $0xffffffff,%eax
140165751:	0f 84 10 fd ff ff    	je     0x140165467
140165757:	85 c0                	test   %eax,%eax
140165759:	0f 85 69 ff ff ff    	jne    0x1401656c8
14016575f:	4c 89 f2             	mov    %r14,%rdx
140165762:	4c 89 f9             	mov    %r15,%rcx
140165765:	e8 b6 9c f5 ff       	call   0x1400bf420
14016576a:	85 c0                	test   %eax,%eax
14016576c:	75 be                	jne    0x14016572c
14016576e:	e9 f4 fc ff ff       	jmp    0x140165467
140165773:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140165778:	48 8b 03             	mov    (%rbx),%rax
14016577b:	4c 89 f2             	mov    %r14,%rdx
14016577e:	48 8b 48 18          	mov    0x18(%rax),%rcx
140165782:	e8 c9 b3 f5 ff       	call   0x1400c0b50
140165787:	48 89 c2             	mov    %rax,%rdx
14016578a:	48 85 c0             	test   %rax,%rax
14016578d:	0f 84 90 00 00 00    	je     0x140165823
140165793:	81 08 00 00 00 20    	orl    $0x20000000,(%rax)
140165799:	4c 8b 4c 24 68       	mov    0x68(%rsp),%r9
14016579e:	49 89 f0             	mov    %rsi,%r8
1401657a1:	48 89 d9             	mov    %rbx,%rcx
1401657a4:	83 43 28 01          	addl   $0x1,0x28(%rbx)
1401657a8:	e8 83 fb ff ff       	call   0x140165330
1401657ad:	83 6b 28 01          	subl   $0x1,0x28(%rbx)
1401657b1:	e9 fa fe ff ff       	jmp    0x1401656b0
1401657b6:	e8 b5 f0 07 00       	call   0x1401e4870
1401657bb:	48 8d 0d dd e3 0b 00 	lea    0xbe3dd(%rip),%rcx        # 0x140223b9f
1401657c2:	e8 c9 db f5 ff       	call   0x1400c3390
1401657c7:	48 8d 0d e2 e3 0b 00 	lea    0xbe3e2(%rip),%rcx        # 0x140223bb0
1401657ce:	e8 bd db f5 ff       	call   0x1400c3390
1401657d3:	4c 8d 05 16 e3 0b 00 	lea    0xbe316(%rip),%r8        # 0x140223af0
1401657da:	ba a7 00 00 00       	mov    $0xa7,%edx
1401657df:	48 8d 0d 28 e3 0b 00 	lea    0xbe328(%rip),%rcx        # 0x140223b0e
1401657e6:	e8 a5 df f5 ff       	call   0x1400c3790
1401657eb:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
1401657f0:	e8 8b 9e ec ff       	call   0x14002f680
1401657f5:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
1401657fa:	48 8d 0d 67 e3 0b 00 	lea    0xbe367(%rip),%rcx        # 0x140223b68
140165801:	48 89 c3             	mov    %rax,%rbx
140165804:	48 8b 05 d5 37 0d 00 	mov    0xd37d5(%rip),%rax        # 0x140238fe0
14016580b:	83 38 00             	cmpl   $0x0,(%rax)
14016580e:	74 08                	je     0x140165818
140165810:	e8 53 db 07 00       	call   0x1401e3368
140165815:	48 89 c1             	mov    %rax,%rcx
140165818:	49 89 d8             	mov    %rbx,%r8
14016581b:	48 89 f2             	mov    %rsi,%rdx
14016581e:	e8 6d db f5 ff       	call   0x1400c3390
140165823:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140165828:	e8 53 9e ec ff       	call   0x14002f680
14016582d:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
140165832:	48 8d 0d f7 e2 0b 00 	lea    0xbe2f7(%rip),%rcx        # 0x140223b30
140165839:	48 89 c3             	mov    %rax,%rbx
14016583c:	48 8b 05 9d 37 0d 00 	mov    0xd379d(%rip),%rax        # 0x140238fe0
140165843:	83 38 00             	cmpl   $0x0,(%rax)
140165846:	74 d0                	je     0x140165818
140165848:	eb c6                	jmp    0x140165810
14016584a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140165850:	41 55                	push   %r13
140165852:	41 54                	push   %r12
140165854:	55                   	push   %rbp
140165855:	57                   	push   %rdi
140165856:	56                   	push   %rsi
140165857:	53                   	push   %rbx
140165858:	48 83 ec 38          	sub    $0x38,%rsp
14016585c:	49 89 cc             	mov    %rcx,%r12
14016585f:	48 8b 09             	mov    (%rcx),%rcx
140165862:	48 89 d7             	mov    %rdx,%rdi
140165865:	8b 41 08             	mov    0x8(%rcx),%eax
140165868:	85 c0                	test   %eax,%eax
14016586a:	0f 84 af 00 00 00    	je     0x14016591f
140165870:	31 db                	xor    %ebx,%ebx
140165872:	48 8d 2d 9f e3 0b 00 	lea    0xbe39f(%rip),%rbp        # 0x140223c18
140165879:	eb 40                	jmp    0x1401658bb
14016587b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140165880:	4c 8b 48 10          	mov    0x10(%rax),%r9
140165884:	4d 85 c9             	test   %r9,%r9
140165887:	4c 0f 44 cd          	cmove  %rbp,%r9
14016588b:	80 fa 04             	cmp    $0x4,%dl
14016588e:	0f 84 a4 00 00 00    	je     0x140165938
140165894:	80 fa 06             	cmp    $0x6,%dl
140165897:	0f 85 d3 00 00 00    	jne    0x140165970
14016589d:	4c 89 e1             	mov    %r12,%rcx
1401658a0:	49 89 f8             	mov    %rdi,%r8
1401658a3:	48 89 f2             	mov    %rsi,%rdx
1401658a6:	e8 25 f9 ff ff       	call   0x1401651d0
1401658ab:	49 8b 0c 24          	mov    (%r12),%rcx
1401658af:	8b 41 08             	mov    0x8(%rcx),%eax
1401658b2:	48 83 c3 01          	add    $0x1,%rbx
1401658b6:	48 39 c3             	cmp    %rax,%rbx
1401658b9:	73 64                	jae    0x14016591f
1401658bb:	48 89 d8             	mov    %rbx,%rax
1401658be:	48 c1 e0 05          	shl    $0x5,%rax
1401658c2:	48 03 41 10          	add    0x10(%rcx),%rax
1401658c6:	48 8b 30             	mov    (%rax),%rsi
1401658c9:	f6 06 30             	testb  $0x30,(%rsi)
1401658cc:	75 e1                	jne    0x1401658af
1401658ce:	0f b6 16             	movzbl (%rsi),%edx
1401658d1:	4c 8b 68 08          	mov    0x8(%rax),%r13
1401658d5:	83 e2 0e             	and    $0xe,%edx
1401658d8:	80 fa 08             	cmp    $0x8,%dl
1401658db:	75 a3                	jne    0x140165880
1401658dd:	49 8b 44 24 20       	mov    0x20(%r12),%rax
1401658e2:	48 8b 49 18          	mov    0x18(%rcx),%rcx
1401658e6:	45 31 c9             	xor    %r9d,%r9d
1401658e9:	49 89 f0             	mov    %rsi,%r8
1401658ec:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
1401658f3:	00 00
1401658f5:	ba 01 00 00 00       	mov    $0x1,%edx
1401658fa:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1401658ff:	e8 9c 2c 06 00       	call   0x1401c85a0
140165904:	a8 01                	test   $0x1,%al
140165906:	74 03                	je     0x14016590b
140165908:	83 0e 10             	orl    $0x10,(%rsi)
14016590b:	a8 02                	test   $0x2,%al
14016590d:	75 51                	jne    0x140165960
14016590f:	49 8b 0c 24          	mov    (%r12),%rcx
140165913:	48 83 c3 01          	add    $0x1,%rbx
140165917:	8b 41 08             	mov    0x8(%rcx),%eax
14016591a:	48 39 c3             	cmp    %rax,%rbx
14016591d:	72 9c                	jb     0x1401658bb
14016591f:	48 83 c1 08          	add    $0x8,%rcx
140165923:	48 83 c4 38          	add    $0x38,%rsp
140165927:	5b                   	pop    %rbx
140165928:	5e                   	pop    %rsi
140165929:	5f                   	pop    %rdi
14016592a:	5d                   	pop    %rbp
14016592b:	41 5c                	pop    %r12
14016592d:	41 5d                	pop    %r13
14016592f:	e9 7c a7 ed ff       	jmp    0x1400400b0
140165934:	0f 1f 40 00          	nopl   0x0(%rax)
140165938:	41 c7 44 24 28 00 00 	movl   $0x0,0x28(%r12)
14016593f:	00 00
140165941:	4c 89 e1             	mov    %r12,%rcx
140165944:	49 89 f8             	mov    %rdi,%r8
140165947:	48 89 f2             	mov    %rsi,%rdx
14016594a:	e8 e1 f9 ff ff       	call   0x140165330
14016594f:	49 8b 0c 24          	mov    (%r12),%rcx
140165953:	e9 57 ff ff ff       	jmp    0x1401658af
140165958:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14016595f:	00
140165960:	4d 89 e8             	mov    %r13,%r8
140165963:	48 89 f2             	mov    %rsi,%rdx
140165966:	4c 89 e1             	mov    %r12,%rcx
140165969:	e8 f2 f7 ff ff       	call   0x140165160
14016596e:	eb 9f                	jmp    0x14016590f
140165970:	48 8d 4e 04          	lea    0x4(%rsi),%rcx
140165974:	e8 07 9d ec ff       	call   0x14002f680
140165979:	4d 89 e8             	mov    %r13,%r8
14016597c:	48 8d 0d 9d e2 0b 00 	lea    0xbe29d(%rip),%rcx        # 0x140223c20
140165983:	48 89 c2             	mov    %rax,%rdx
140165986:	e8 05 da f5 ff       	call   0x1400c3390
14016598b:	90                   	nop
14016598c:	0f 1f 40 00          	nopl   0x0(%rax)
140165990:	41 57                	push   %r15
140165992:	41 56                	push   %r14
140165994:	41 55                	push   %r13
140165996:	41 54                	push   %r12
140165998:	55                   	push   %rbp
140165999:	57                   	push   %rdi
14016599a:	56                   	push   %rsi
14016599b:	53                   	push   %rbx
14016599c:	48 83 ec 58          	sub    $0x58,%rsp
1401659a0:	48 8b 3d 49 31 0d 00 	mov    0xd3149(%rip),%rdi        # 0x140238af0
1401659a7:	48 8b 07             	mov    (%rdi),%rax
1401659aa:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
1401659af:	31 c0                	xor    %eax,%eax
1401659b1:	48 89 ce             	mov    %rcx,%rsi
1401659b4:	49 89 d4             	mov    %rdx,%r12
1401659b7:	45 85 c0             	test   %r8d,%r8d
1401659ba:	0f 85 b8 01 00 00    	jne    0x140165b78
1401659c0:	48 8b 29             	mov    (%rcx),%rbp
1401659c3:	48 85 ed             	test   %rbp,%rbp
1401659c6:	0f 84 9a 00 00 00    	je     0x140165a66
1401659cc:	4c 8b 35 2d 3a 0d 00 	mov    0xd3a2d(%rip),%r14        # 0x140239400
1401659d3:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
1401659da:	00 00 00 00
1401659de:	66 90                	xchg   %ax,%ax
1401659e0:	48 8b 5d 00          	mov    0x0(%rbp),%rbx
1401659e4:	f6 03 20             	testb  $0x20,(%rbx)
1401659e7:	0f 85 33 01 00 00    	jne    0x140165b20
1401659ed:	48 8b 5b 30          	mov    0x30(%rbx),%rbx
1401659f1:	48 85 db             	test   %rbx,%rbx
1401659f4:	74 63                	je     0x140165a59
1401659f6:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
1401659fd:	00 00 00
140165a00:	48 8b 3b             	mov    (%rbx),%rdi
140165a03:	f6 07 20             	testb  $0x20,(%rdi)
140165a06:	74 48                	je     0x140165a50
140165a08:	49 8b 0e             	mov    (%r14),%rcx
140165a0b:	48 89 fa             	mov    %rdi,%rdx
140165a0e:	e8 bd ea fb ff       	call   0x1401244d0
140165a13:	48 8b 4e 18          	mov    0x18(%rsi),%rcx
140165a17:	48 89 c2             	mov    %rax,%rdx
140165a1a:	e8 11 07 f2 ff       	call   0x140086130
140165a1f:	f6 86 1a 01 00 00 02 	testb  $0x2,0x11a(%rsi)
140165a26:	74 28                	je     0x140165a50
140165a28:	8b 07                	mov    (%rdi),%eax
140165a2a:	89 c2                	mov    %eax,%edx
140165a2c:	c1 ea 04             	shr    $0x4,%edx
140165a2f:	a8 80                	test   $0x80,%al
140165a31:	75 1d                	jne    0x140165a50
140165a33:	83 ca 08             	or     $0x8,%edx
140165a36:	83 e0 0f             	and    $0xf,%eax
140165a39:	48 89 f9             	mov    %rdi,%rcx
140165a3c:	c1 e2 04             	shl    $0x4,%edx
140165a3f:	09 d0                	or     %edx,%eax
140165a41:	89 07                	mov    %eax,(%rdi)
140165a43:	41 ff d4             	call   *%r12
140165a46:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140165a4d:	00 00 00
140165a50:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140165a54:	48 85 db             	test   %rbx,%rbx
140165a57:	75 a7                	jne    0x140165a00
140165a59:	48 8b 6d 08          	mov    0x8(%rbp),%rbp
140165a5d:	48 85 ed             	test   %rbp,%rbp
140165a60:	0f 85 7a ff ff ff    	jne    0x1401659e0
140165a66:	f6 86 1a 01 00 00 04 	testb  $0x4,0x11a(%rsi)
140165a6d:	0f 84 7d 00 00 00    	je     0x140165af0
140165a73:	8b 46 30             	mov    0x30(%rsi),%eax
140165a76:	85 c0                	test   %eax,%eax
140165a78:	74 76                	je     0x140165af0
140165a7a:	4c 8b 35 7f 39 0d 00 	mov    0xd397f(%rip),%r14        # 0x140239400
140165a81:	31 ed                	xor    %ebp,%ebp
140165a83:	31 ff                	xor    %edi,%edi
140165a85:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140165a8c:	00 00 00 00
140165a90:	48 8b 46 38          	mov    0x38(%rsi),%rax
140165a94:	48 8b 1c 28          	mov    (%rax,%rbp,1),%rbx
140165a98:	0f b6 03             	movzbl (%rbx),%eax
140165a9b:	83 e0 0e             	and    $0xe,%eax
140165a9e:	3c 02                	cmp    $0x2,%al
140165aa0:	75 3e                	jne    0x140165ae0
140165aa2:	f6 03 20             	testb  $0x20,(%rbx)
140165aa5:	74 39                	je     0x140165ae0
140165aa7:	49 8b 0e             	mov    (%r14),%rcx
140165aaa:	48 89 da             	mov    %rbx,%rdx
140165aad:	e8 1e ea fb ff       	call   0x1401244d0
140165ab2:	48 8b 4e 18          	mov    0x18(%rsi),%rcx
140165ab6:	48 89 c2             	mov    %rax,%rdx
140165ab9:	e8 72 06 f2 ff       	call   0x140086130
140165abe:	8b 03                	mov    (%rbx),%eax
140165ac0:	89 c2                	mov    %eax,%edx
140165ac2:	c1 ea 04             	shr    $0x4,%edx
140165ac5:	a8 80                	test   $0x80,%al
140165ac7:	75 17                	jne    0x140165ae0
140165ac9:	83 ca 08             	or     $0x8,%edx
140165acc:	83 e0 0f             	and    $0xf,%eax
140165acf:	48 89 d9             	mov    %rbx,%rcx
140165ad2:	c1 e2 04             	shl    $0x4,%edx
140165ad5:	09 d0                	or     %edx,%eax
140165ad7:	89 03                	mov    %eax,(%rbx)
140165ad9:	41 ff d4             	call   *%r12
140165adc:	0f 1f 40 00          	nopl   0x0(%rax)
140165ae0:	8b 46 30             	mov    0x30(%rsi),%eax
140165ae3:	48 83 c7 01          	add    $0x1,%rdi
140165ae7:	48 83 c5 18          	add    $0x18,%rbp
140165aeb:	48 39 c7             	cmp    %rax,%rdi
140165aee:	72 a0                	jb     0x140165a90
140165af0:	48 8b 35 f9 2f 0d 00 	mov    0xd2ff9(%rip),%rsi        # 0x140238af0
140165af7:	48 8b 44 24 48       	mov    0x48(%rsp),%rax
140165afc:	48 2b 06             	sub    (%rsi),%rax
140165aff:	0f 85 5a 01 00 00    	jne    0x140165c5f
140165b05:	48 83 c4 58          	add    $0x58,%rsp
140165b09:	5b                   	pop    %rbx
140165b0a:	5e                   	pop    %rsi
140165b0b:	5f                   	pop    %rdi
140165b0c:	5d                   	pop    %rbp
140165b0d:	41 5c                	pop    %r12
140165b0f:	41 5d                	pop    %r13
140165b11:	41 5e                	pop    %r14
140165b13:	41 5f                	pop    %r15
140165b15:	c3                   	ret
140165b16:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140165b1d:	00 00 00
140165b20:	49 8b 0e             	mov    (%r14),%rcx
140165b23:	48 89 da             	mov    %rbx,%rdx
140165b26:	e8 a5 e9 fb ff       	call   0x1401244d0
140165b2b:	48 8b 4e 18          	mov    0x18(%rsi),%rcx
140165b2f:	48 89 c2             	mov    %rax,%rdx
140165b32:	e8 f9 05 f2 ff       	call   0x140086130
140165b37:	f6 86 1a 01 00 00 04 	testb  $0x4,0x11a(%rsi)
140165b3e:	0f 84 15 ff ff ff    	je     0x140165a59
140165b44:	8b 03                	mov    (%rbx),%eax