14001daa4:	55                   	push   %rbp
14001daa5:	57                   	push   %rdi
14001daa6:	56                   	push   %rsi
14001daa7:	53                   	push   %rbx
14001daa8:	48 83 ec 38          	sub    $0x38,%rsp
14001daac:	4c 8b 25 fd 91 02 00 	mov    0x291fd(%rip),%r12        # 0x140046cb0
14001dab3:	4c 8b 2d fe ff 02 00 	mov    0x2fffe(%rip),%r13        # 0x14004dab8
14001daba:	48 89 cb             	mov    %rcx,%rbx
14001dabd:	4c 89 cf             	mov    %r9,%rdi
14001dac0:	48 89 d6             	mov    %rdx,%rsi
14001dac3:	44 89 c5             	mov    %r8d,%ebp
14001dac6:	49 8b 04 24          	mov    (%r12),%rax
14001daca:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14001dacf:	31 c0                	xor    %eax,%eax
14001dad1:	48 c7 44 24 20 00 00 	movq   $0x0,0x20(%rsp)
14001dad8:	00 00
14001dada:	41 ff d5             	call   *%r13
14001dadd:	c7 00 00 00 00 00    	movl   $0x0,(%rax)
14001dae3:	48 c7 07 00 00 00 00 	movq   $0x0,(%rdi)
14001daea:	0f b6 03             	movzbl (%rbx),%eax
14001daed:	84 c0                	test   %al,%al
14001daef:	75 1b                	jne    0x14001db0c
14001daf1:	eb 55                	jmp    0x14001db48
14001daf3:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14001dafa:	00 00 00 00
14001dafe:	66 90                	xchg   %ax,%ax
14001db00:	0f b6 43 01          	movzbl 0x1(%rbx),%eax
14001db04:	48 83 c3 01          	add    $0x1,%rbx
14001db08:	84 c0                	test   %al,%al
14001db0a:	74 3c                	je     0x14001db48
14001db0c:	3c 20                	cmp    $0x20,%al
14001db0e:	74 f0                	je     0x14001db00
14001db10:	3c 09                	cmp    $0x9,%al
14001db12:	74 ec                	je     0x14001db00
14001db14:	3c 2d                	cmp    $0x2d,%al
14001db16:	74 07                	je     0x14001db1f
14001db18:	83 e8 0a             	sub    $0xa,%eax
14001db1b:	3c 03                	cmp    $0x3,%al
14001db1d:	77 29                	ja     0x14001db48
14001db1f:	48 85 f6             	test   %rsi,%rsi
14001db22:	74 03                	je     0x14001db27
14001db24:	48 89 1e             	mov    %rbx,(%rsi)
14001db27:	b8 02 00 00 00       	mov    $0x2,%eax
14001db2c:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
14001db31:	49 2b 14 24          	sub    (%r12),%rdx
14001db35:	75 4f                	jne    0x14001db86
14001db37:	48 83 c4 38          	add    $0x38,%rsp
14001db3b:	5b                   	pop    %rbx
14001db3c:	5e                   	pop    %rsi
14001db3d:	5f                   	pop    %rdi
14001db3e:	5d                   	pop    %rbp
14001db3f:	41 5c                	pop    %r12
14001db41:	41 5d                	pop    %r13
14001db43:	c3                   	ret
14001db44:	0f 1f 40 00          	nopl   0x0(%rax)
14001db48:	41 89 e8             	mov    %ebp,%r8d
14001db4b:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
14001db50:	48 89 d9             	mov    %rbx,%rcx
14001db53:	e8 50 6b 00 00       	call   0x1400246a8
14001db58:	48 89 c5             	mov    %rax,%rbp
14001db5b:	48 85 f6             	test   %rsi,%rsi
14001db5e:	74 08                	je     0x14001db68
14001db60:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
14001db65:	48 89 06             	mov    %rax,(%rsi)
14001db68:	41 ff d5             	call   *%r13
14001db6b:	48 89 c2             	mov    %rax,%rdx
14001db6e:	b8 01 00 00 00       	mov    $0x1,%eax
14001db73:	83 3a 22             	cmpl   $0x22,(%rdx)
14001db76:	74 b4                	je     0x14001db2c
14001db78:	48 39 5c 24 20       	cmp    %rbx,0x20(%rsp)
14001db7d:	74 a8                	je     0x14001db27
14001db7f:	48 89 2f             	mov    %rbp,(%rdi)
14001db82:	31 c0                	xor    %eax,%eax
14001db84:	eb a6                	jmp    0x14001db2c
14001db86:	e8 05 1b 00 00       	call   0x14001f690
14001db8b:	90                   	nop
14001db8c:	90                   	nop
14001db8d:	90                   	nop
14001db8e:	90                   	nop
14001db8f:	90                   	nop
14001db90:	49 89 d0             	mov    %rdx,%r8
14001db93:	48 85 d2             	test   %rdx,%rdx
14001db96:	78 68                	js     0x14001dc00
14001db98:	48 85 c9             	test   %rcx,%rcx
14001db9b:	74 63                	je     0x14001dc00
14001db9d:	48 85 d2             	test   %rdx,%rdx
14001dba0:	75 0e                	jne    0x14001dbb0
14001dba2:	48 c7 01 00 00 00 00 	movq   $0x0,(%rcx)
14001dba9:	48 89 c8             	mov    %rcx,%rax
14001dbac:	c3                   	ret
14001dbad:	0f 1f 00             	nopl   (%rax)
14001dbb0:	48 b8 cf f7 53 e3 a5 	movabs $0x20c49ba5e353f7cf,%rax
14001dbb7:	9b c4 20
14001dbba:	48 f7 ea             	imul   %rdx
14001dbbd:	4c 89 c0             	mov    %r8,%rax
14001dbc0:	48 c1 f8 3f          	sar    $0x3f,%rax
14001dbc4:	48 c1 fa 07          	sar    $0x7,%rdx
14001dbc8:	48 29 c2             	sub    %rax,%rdx
14001dbcb:	4c 89 c0             	mov    %r8,%rax
14001dbce:	4c 69 ca e8 03 00 00 	imul   $0x3e8,%rdx,%r9
14001dbd5:	4c 29 c8             	sub    %r9,%rax
14001dbd8:	49 b9 ff ff ff ff f3 	movabs $0x1f3ffffffff,%r9
14001dbdf:	01 00 00
14001dbe2:	48 69 c0 e8 03 00 00 	imul   $0x3e8,%rax,%rax
14001dbe9:	4d 39 c8             	cmp    %r9,%r8
14001dbec:	41 b8 ff ff ff 7f    	mov    $0x7fffffff,%r8d
14001dbf2:	41 0f 4f d0          	cmovg  %r8d,%edx
14001dbf6:	89 41 04             	mov    %eax,0x4(%rcx)
14001dbf9:	89 11                	mov    %edx,(%rcx)
14001dbfb:	eb ac                	jmp    0x14001dba9
14001dbfd:	0f 1f 00             	nopl   (%rax)
14001dc00:	31 c0                	xor    %eax,%eax
14001dc02:	c3                   	ret
14001dc03:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14001dc0a:	00 00 00 00
14001dc0e:	66 90                	xchg   %ax,%ax
14001dc10:	66 0f ef c0          	pxor   %xmm0,%xmm0
14001dc14:	69 11 e8 03 00 00    	imul   $0x3e8,(%rcx),%edx
14001dc1a:	48 63 d2             	movslq %edx,%rdx
14001dc1d:	f2 0f 2a 41 04       	cvtsi2sdl 0x4(%rcx),%xmm0
14001dc22:	f2 0f 5e 05 46 69 01 	divsd  0x16946(%rip),%xmm0        # 0x140034570
14001dc29:	00
14001dc2a:	f2 48 0f 2c c0       	cvttsd2si %xmm0,%rax
14001dc2f:	48 01 d0             	add    %rdx,%rax
14001dc32:	c3                   	ret
14001dc33:	90                   	nop
14001dc34:	90                   	nop
14001dc35:	90                   	nop
14001dc36:	90                   	nop
14001dc37:	90                   	nop
14001dc38:	90                   	nop
14001dc39:	90                   	nop
14001dc3a:	90                   	nop
14001dc3b:	90                   	nop
14001dc3c:	90                   	nop
14001dc3d:	90                   	nop
14001dc3e:	90                   	nop
14001dc3f:	90                   	nop
14001dc40:	41 57                	push   %r15
14001dc42:	41 56                	push   %r14
14001dc44:	41 55                	push   %r13
14001dc46:	41 54                	push   %r12
14001dc48:	55                   	push   %rbp
14001dc49:	57                   	push   %rdi
14001dc4a:	56                   	push   %rsi
14001dc4b:	53                   	push   %rbx
14001dc4c:	48 81 ec 78 01 00 00 	sub    $0x178,%rsp
14001dc53:	4c 8b 2d 56 90 02 00 	mov    0x29056(%rip),%r13        # 0x140046cb0
14001dc5a:	49 8b 45 00          	mov    0x0(%r13),%rax
14001dc5e:	48 89 84 24 68 01 00 	mov    %rax,0x168(%rsp)
14001dc65:	00
14001dc66:	31 c0                	xor    %eax,%eax
14001dc68:	80 3d 71 74 00 00 00 	cmpb   $0x0,0x7471(%rip)        # 0x1400250e0
14001dc6f:	89 cd                	mov    %ecx,%ebp
14001dc71:	41 89 d4             	mov    %edx,%r12d
14001dc74:	44 89 c6             	mov    %r8d,%esi
14001dc77:	44 89 cb             	mov    %r9d,%ebx
14001dc7a:	75 34                	jne    0x14001dcb0
14001dc7c:	31 c0                	xor    %eax,%eax
14001dc7e:	83 bc 24 e0 01 00 00 	cmpl   $0x4,0x1e0(%rsp)
14001dc85:	04
14001dc86:	76 5f                	jbe    0x14001dce7
14001dc88:	48 8b 94 24 68 01 00 	mov    0x168(%rsp),%rdx
14001dc8f:	00
14001dc90:	49 2b 55 00          	sub    0x0(%r13),%rdx
14001dc94:	0f 85 3d 02 00 00    	jne    0x14001ded7
14001dc9a:	48 81 c4 78 01 00 00 	add    $0x178,%rsp
14001dca1:	5b                   	pop    %rbx
14001dca2:	5e                   	pop    %rsi
14001dca3:	5f                   	pop    %rdi
14001dca4:	5d                   	pop    %rbp
14001dca5:	41 5c                	pop    %r12
14001dca7:	41 5d                	pop    %r13
14001dca9:	41 5e                	pop    %r14
14001dcab:	41 5f                	pop    %r15
14001dcad:	c3                   	ret
14001dcae:	66 90                	xchg   %ax,%ax
14001dcb0:	48 8d 0d c9 68 01 00 	lea    0x168c9(%rip),%rcx        # 0x140034580
14001dcb7:	ff 15 a3 fc 02 00    	call   *0x2fca3(%rip)        # 0x14004d960
14001dcbd:	48 8d 15 c2 68 01 00 	lea    0x168c2(%rip),%rdx        # 0x140034586
14001dcc4:	48 89 c1             	mov    %rax,%rcx
14001dcc7:	ff 15 9b fc 02 00    	call   *0x2fc9b(%rip)        # 0x14004d968
14001dccd:	c6 05 0c 74 00 00 00 	movb   $0x0,0x740c(%rip)        # 0x1400250e0
14001dcd4:	48 89 05 85 dd 02 00 	mov    %rax,0x2dd85(%rip)        # 0x14004ba60
14001dcdb:	31 c0                	xor    %eax,%eax
14001dcdd:	83 bc 24 e0 01 00 00 	cmpl   $0x4,0x1e0(%rsp)
14001dce4:	04
14001dce5:	77 a1                	ja     0x14001dc88
14001dce7:	4c 8d 7c 24 40       	lea    0x40(%rsp),%r15
14001dcec:	31 c0                	xor    %eax,%eax
14001dcee:	b9 23 00 00 00       	mov    $0x23,%ecx
14001dcf3:	8b 94 24 e0 01 00 00 	mov    0x1e0(%rsp),%edx
14001dcfa:	4c 89 ff             	mov    %r15,%rdi
14001dcfd:	f3 48 ab             	rep stos %rax,%es:(%rdi)
14001dd00:	48 8d 05 99 68 01 00 	lea    0x16899(%rip),%rax        # 0x1400345a0
14001dd07:	c7 44 24 40 1c 01 00 	movl   $0x11c,0x40(%rsp)
14001dd0e:	00
14001dd0f:	44 0f b6 34 10       	movzbl (%rax,%rdx,1),%r14d
14001dd14:	48 8d 05 80 68 01 00 	lea    0x16880(%rip),%rax        # 0x14003459b
14001dd1b:	89 6c 24 44          	mov    %ebp,0x44(%rsp)
14001dd1f:	0f b6 04 10          	movzbl (%rax,%rdx,1),%eax
14001dd23:	44 89 64 24 48       	mov    %r12d,0x48(%rsp)
14001dd28:	89 74 24 4c          	mov    %esi,0x4c(%rsp)
14001dd2c:	89 44 24 3c          	mov    %eax,0x3c(%rsp)
14001dd30:	c7 07 00 00 00 00    	movl   $0x0,(%rdi)
14001dd36:	83 fb 01             	cmp    $0x1,%ebx
14001dd39:	0f 84 19 01 00 00    	je     0x14001de58
14001dd3f:	83 fb 02             	cmp    $0x2,%ebx
14001dd42:	0f 84 a8 00 00 00    	je     0x14001ddf0
14001dd48:	48 8b 3d e1 fc 02 00 	mov    0x2fce1(%rip),%rdi        # 0x14004da30
14001dd4f:	45 89 f0             	mov    %r14d,%r8d
14001dd52:	ba 02 00 00 00       	mov    $0x2,%edx
14001dd57:	ff d7                	call   *%rdi
14001dd59:	45 89 f0             	mov    %r14d,%r8d
14001dd5c:	ba 01 00 00 00       	mov    $0x1,%edx
14001dd61:	48 89 c1             	mov    %rax,%rcx
14001dd64:	ff d7                	call   *%rdi
14001dd66:	44 8b 44 24 3c       	mov    0x3c(%rsp),%r8d
14001dd6b:	ba 20 00 00 00       	mov    $0x20,%edx
14001dd70:	48 89 c1             	mov    %rax,%rcx
14001dd73:	ff d7                	call   *%rdi
14001dd75:	44 8b 44 24 3c       	mov    0x3c(%rsp),%r8d
14001dd7a:	ba 10 00 00 00       	mov    $0x10,%edx
14001dd7f:	48 89 c1             	mov    %rax,%rcx
14001dd82:	ff d7                	call   *%rdi
14001dd84:	48 89 c1             	mov    %rax,%rcx
14001dd87:	85 db                	test   %ebx,%ebx
14001dd89:	0f 85 ab 00 00 00    	jne    0x14001de3a
14001dd8f:	ba 33 00 00 00       	mov    $0x33,%edx
14001dd94:	48 8b 05 c5 dc 02 00 	mov    0x2dcc5(%rip),%rax        # 0x14004ba60
14001dd9b:	49 89 c8             	mov    %rcx,%r8
14001dd9e:	4c 89 f9             	mov    %r15,%rcx
14001dda1:	48 85 c0             	test   %rax,%rax
14001dda4:	0f 84 b6 00 00 00    	je     0x14001de60
14001ddaa:	ff d0                	call   *%rax
14001ddac:	85 c0                	test   %eax,%eax
14001ddae:	0f 94 c0             	sete   %al
14001ddb1:	85 f6                	test   %esi,%esi
14001ddb3:	0f 95 c2             	setne  %dl
14001ddb6:	89 d6                	mov    %edx,%esi
14001ddb8:	40 20 c6             	and    %al,%sil
14001ddbb:	0f 84 c7 fe ff ff    	je     0x14001dc88
14001ddc1:	83 bc 24 e0 01 00 00 	cmpl   $0x2,0x1e0(%rsp)
14001ddc8:	02
14001ddc9:	0f 84 c1 00 00 00    	je     0x14001de90
14001ddcf:	8b 84 24 e0 01 00 00 	mov    0x1e0(%rsp),%eax
14001ddd6:	83 e0 fd             	and    $0xfffffffd,%eax
14001ddd9:	83 f8 01             	cmp    $0x1,%eax
14001dddc:	0f 84 8e 00 00 00    	je     0x14001de70
14001dde2:	89 f0                	mov    %esi,%eax
14001dde4:	e9 9f fe ff ff       	jmp    0x14001dc88
14001dde9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
14001ddf0:	b8 02 00 00 00       	mov    $0x2,%eax
14001ddf5:	48 8b 3d 34 fc 02 00 	mov    0x2fc34(%rip),%rdi        # 0x14004da30
14001ddfc:	45 89 f0             	mov    %r14d,%r8d
14001ddff:	31 c9                	xor    %ecx,%ecx
14001de01:	89 44 24 50          	mov    %eax,0x50(%rsp)
14001de05:	ba 02 00 00 00       	mov    $0x2,%edx
14001de0a:	ff d7                	call   *%rdi
14001de0c:	45 89 f0             	mov    %r14d,%r8d
14001de0f:	ba 01 00 00 00       	mov    $0x1,%edx
14001de14:	48 89 c1             	mov    %rax,%rcx
14001de17:	ff d7                	call   *%rdi
14001de19:	44 8b 44 24 3c       	mov    0x3c(%rsp),%r8d
14001de1e:	ba 20 00 00 00       	mov    $0x20,%edx
14001de23:	48 89 c1             	mov    %rax,%rcx
14001de26:	ff d7                	call   *%rdi
14001de28:	44 8b 44 24 3c       	mov    0x3c(%rsp),%r8d
14001de2d:	ba 10 00 00 00       	mov    $0x10,%edx
14001de32:	48 89 c1             	mov    %rax,%rcx
14001de35:	ff d7                	call   *%rdi
14001de37:	48 89 c1             	mov    %rax,%rcx
14001de3a:	ba 08 00 00 00       	mov    $0x8,%edx
14001de3f:	41 b8 01 00 00 00    	mov    $0x1,%r8d
14001de45:	ff d7                	call   *%rdi
14001de47:	ba 3b 00 00 00       	mov    $0x3b,%edx
14001de4c:	48 89 c1             	mov    %rax,%rcx
14001de4f:	e9 40 ff ff ff       	jmp    0x14001dd94
14001de54:	0f 1f 40 00          	nopl   0x0(%rax)
14001de58:	b8 01 00 00 00       	mov    $0x1,%eax
14001de5d:	eb 96                	jmp    0x14001ddf5
14001de5f:	90                   	nop
14001de60:	ff 15 d2 fb 02 00    	call   *0x2fbd2(%rip)        # 0x14004da38
14001de66:	85 c0                	test   %eax,%eax
14001de68:	0f 95 c0             	setne  %al
14001de6b:	e9 41 ff ff ff       	jmp    0x14001ddb1
14001de70:	c7 44 24 20 02 00 00 	movl   $0x2,0x20(%rsp)
14001de77:	00
14001de78:	45 31 c0             	xor    %r8d,%r8d
14001de7b:	41 89 d9             	mov    %ebx,%r9d
14001de7e:	89 e9                	mov    %ebp,%ecx
14001de80:	44 89 e2             	mov    %r12d,%edx
14001de83:	e8 b8 fd ff ff       	call   0x14001dc40
14001de88:	84 c0                	test   %al,%al
14001de8a:	0f 84 52 ff ff ff    	je     0x14001dde2
14001de90:	45 89 f0             	mov    %r14d,%r8d
14001de93:	ba 04 00 00 00       	mov    $0x4,%edx
14001de98:	31 c9                	xor    %ecx,%ecx
14001de9a:	ff d7                	call   *%rdi
14001de9c:	49 89 c0             	mov    %rax,%r8
14001de9f:	48 8b 05 ba db 02 00 	mov    0x2dbba(%rip),%rax        # 0x14004ba60
14001dea6:	48 85 c0             	test   %rax,%rax
14001dea9:	74 14                	je     0x14001debf
14001deab:	ba 04 00 00 00       	mov    $0x4,%edx
14001deb0:	4c 89 f9             	mov    %r15,%rcx
14001deb3:	ff d0                	call   *%rax
14001deb5:	85 c0                	test   %eax,%eax
14001deb7:	0f 94 c0             	sete   %al
14001deba:	e9 c9 fd ff ff       	jmp    0x14001dc88
14001debf:	ba 04 00 00 00       	mov    $0x4,%edx
14001dec4:	4c 89 f9             	mov    %r15,%rcx
14001dec7:	ff 15 6b fb 02 00    	call   *0x2fb6b(%rip)        # 0x14004da38
14001decd:	85 c0                	test   %eax,%eax
14001decf:	0f 95 c0             	setne  %al
14001ded2:	e9 b1 fd ff ff       	jmp    0x14001dc88
14001ded7:	e8 b4 17 00 00       	call   0x14001f690
14001dedc:	90                   	nop
14001dedd:	90                   	nop
14001dede:	90                   	nop
14001dedf:	90                   	nop
14001dee0:	89 c8                	mov    %ecx,%eax
14001dee2:	c3                   	ret
14001dee3:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14001deea:	00 00 00 00
14001deee:	66 90                	xchg   %ax,%ax
14001def0:	89 c8                	mov    %ecx,%eax
14001def2:	c3                   	ret
14001def3:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14001defa:	00 00 00 00
14001defe:	66 90                	xchg   %ax,%ax
14001df00:	89 c8                	mov    %ecx,%eax
14001df02:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
14001df07:	c3                   	ret
14001df08:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14001df0f:	00
14001df10:	89 c8                	mov    %ecx,%eax
14001df12:	c3                   	ret
14001df13:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14001df1a:	00 00 00 00
14001df1e:	66 90                	xchg   %ax,%ax
14001df20:	89 c8                	mov    %ecx,%eax
14001df22:	c3                   	ret
14001df23:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14001df2a:	00 00 00 00
14001df2e:	66 90                	xchg   %ax,%ax
14001df30:	89 c8                	mov    %ecx,%eax
14001df32:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
14001df37:	c3                   	ret
14001df38:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14001df3f:	00