140021e77:	49 2b c8             	sub    %r8,%rcx
140021e7a:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140021e7e:	48 83 f8 1f          	cmp    $0x1f,%rax
140021e82:	0f 87 83 00 00 00    	ja     0x140021f0b
140021e88:	49 8b c8             	mov    %r8,%rcx
140021e8b:	e8 04 7e 03 00       	call   0x140059c94
140021e90:	48 89 7b 58          	mov    %rdi,0x58(%rbx)
140021e94:	48 c7 43 60 07 00 00 	movq   $0x7,0x60(%rbx)
140021e9b:	00
140021e9c:	66 89 7b 48          	mov    %di,0x48(%rbx)
140021ea0:	48 8b 53 40          	mov    0x40(%rbx),%rdx
140021ea4:	48 83 fa 07          	cmp    $0x7,%rdx
140021ea8:	76 32                	jbe    0x140021edc
140021eaa:	48 8b 4b 28          	mov    0x28(%rbx),%rcx
140021eae:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
140021eb5:	00
140021eb6:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140021ebd:	72 18                	jb     0x140021ed7
140021ebf:	4c 8b 41 f8          	mov    -0x8(%rcx),%r8
140021ec3:	48 83 c2 27          	add    $0x27,%rdx
140021ec7:	49 2b c8             	sub    %r8,%rcx
140021eca:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140021ece:	48 83 f8 1f          	cmp    $0x1f,%rax
140021ed2:	77 37                	ja     0x140021f0b
140021ed4:	49 8b c8             	mov    %r8,%rcx
140021ed7:	e8 b8 7d 03 00       	call   0x140059c94
140021edc:	48 8d 05 55 da 03 00 	lea    0x3da55(%rip),%rax        # 0x14005f938
140021ee3:	48 89 7b 38          	mov    %rdi,0x38(%rbx)
140021ee7:	48 c7 43 40 07 00 00 	movq   $0x7,0x40(%rbx)
140021eee:	00
140021eef:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140021ef3:	66 89 7b 28          	mov    %di,0x28(%rbx)
140021ef7:	48 89 03             	mov    %rax,(%rbx)
140021efa:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140021eff:	48 83 c4 20          	add    $0x20,%rsp
140021f03:	5f                   	pop    %rdi
140021f04:	48 ff 25 ad d4 03 00 	rex.W jmp *0x3d4ad(%rip)        # 0x14005f3b8
140021f0b:	ff 15 8f d6 03 00    	call   *0x3d68f(%rip)        # 0x14005f5a0
140021f11:	cc                   	int3
140021f12:	cc                   	int3
140021f13:	cc                   	int3
140021f14:	cc                   	int3
140021f15:	cc                   	int3
140021f16:	cc                   	int3
140021f17:	cc                   	int3
140021f18:	cc                   	int3
140021f19:	cc                   	int3
140021f1a:	cc                   	int3
140021f1b:	cc                   	int3
140021f1c:	cc                   	int3
140021f1d:	cc                   	int3
140021f1e:	cc                   	int3
140021f1f:	cc                   	int3
140021f20:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140021f25:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140021f2a:	57                   	push   %rdi
140021f2b:	48 83 ec 20          	sub    $0x20,%rsp
140021f2f:	48 8b da             	mov    %rdx,%rbx
140021f32:	48 8b f9             	mov    %rcx,%rdi
140021f35:	48 8d 05 fc d9 03 00 	lea    0x3d9fc(%rip),%rax        # 0x14005f938
140021f3c:	48 89 01             	mov    %rax,(%rcx)
140021f3f:	48 8d 51 08          	lea    0x8(%rcx),%rdx
140021f43:	0f 57 c0             	xorps  %xmm0,%xmm0
140021f46:	0f 11 02             	movups %xmm0,(%rdx)
140021f49:	48 8d 4b 08          	lea    0x8(%rbx),%rcx
140021f4d:	ff 15 75 d4 03 00    	call   *0x3d475(%rip)        # 0x14005f3c8
140021f53:	48 8d 05 7e fe 03 00 	lea    0x3fe7e(%rip),%rax        # 0x140061dd8
140021f5a:	48 89 07             	mov    %rax,(%rdi)
140021f5d:	0f 10 43 18          	movups 0x18(%rbx),%xmm0
140021f61:	0f 11 47 18          	movups %xmm0,0x18(%rdi)
140021f65:	48 8d 05 54 08 04 00 	lea    0x40854(%rip),%rax        # 0x1400627c0
140021f6c:	48 89 07             	mov    %rax,(%rdi)
140021f6f:	48 8d 4f 28          	lea    0x28(%rdi),%rcx
140021f73:	48 8d 53 28          	lea    0x28(%rbx),%rdx
140021f77:	e8 34 0c 00 00       	call   0x140022bb0
140021f7c:	90                   	nop
140021f7d:	48 8d 4f 48          	lea    0x48(%rdi),%rcx
140021f81:	48 8d 53 48          	lea    0x48(%rbx),%rdx
140021f85:	e8 26 0c 00 00       	call   0x140022bb0
140021f8a:	90                   	nop
140021f8b:	48 8d 4f 68          	lea    0x68(%rdi),%rcx
140021f8f:	48 8d 53 68          	lea    0x68(%rbx),%rdx
140021f93:	e8 e8 6a fe ff       	call   0x140008a80
140021f98:	90                   	nop
140021f99:	48 8b c7             	mov    %rdi,%rax
140021f9c:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
140021fa1:	48 83 c4 20          	add    $0x20,%rsp
140021fa5:	5f                   	pop    %rdi
140021fa6:	c3                   	ret
140021fa7:	cc                   	int3
140021fa8:	cc                   	int3
140021fa9:	cc                   	int3
140021faa:	cc                   	int3
140021fab:	cc                   	int3
140021fac:	cc                   	int3
140021fad:	cc                   	int3
140021fae:	cc                   	int3
140021faf:	cc                   	int3
140021fb0:	40 53                	rex push %rbx
140021fb2:	48 81 ec e0 00 00 00 	sub    $0xe0,%rsp
140021fb9:	49 8b d8             	mov    %r8,%rbx
140021fbc:	0f 10 02             	movups (%rdx),%xmm0
140021fbf:	0f 11 44 24 20       	movups %xmm0,0x20(%rsp)
140021fc4:	48 8b d1             	mov    %rcx,%rdx
140021fc7:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140021fcc:	e8 6f 6a fe ff       	call   0x140008a40
140021fd1:	90                   	nop
140021fd2:	0f 10 44 24 20       	movups 0x20(%rsp),%xmm0
140021fd7:	0f 29 44 24 20       	movaps %xmm0,0x20(%rsp)
140021fdc:	4c 8d 4c 24 20       	lea    0x20(%rsp),%r9
140021fe1:	4c 8b c3             	mov    %rbx,%r8
140021fe4:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140021fe9:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140021fee:	e8 3d f8 ff ff       	call   0x140021830
140021ff3:	48 8d 15 ce 32 05 00 	lea    0x532ce(%rip),%rdx        # 0x1400752c8
140021ffa:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140021fff:	e8 a0 87 03 00       	call   0x14005a7a4
140022004:	cc                   	int3
140022005:	cc                   	int3
140022006:	cc                   	int3
140022007:	cc                   	int3
140022008:	cc                   	int3
140022009:	cc                   	int3
14002200a:	cc                   	int3
14002200b:	cc                   	int3
14002200c:	cc                   	int3
14002200d:	cc                   	int3
14002200e:	cc                   	int3
14002200f:	cc                   	int3
140022010:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140022015:	55                   	push   %rbp
140022016:	56                   	push   %rsi
140022017:	57                   	push   %rdi
140022018:	41 54                	push   %r12
14002201a:	41 55                	push   %r13
14002201c:	41 56                	push   %r14
14002201e:	41 57                	push   %r15
140022020:	48 8b ec             	mov    %rsp,%rbp
140022023:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
14002202a:	48 8b 05 0f 60 05 00 	mov    0x5600f(%rip),%rax        # 0x140078040
140022031:	48 33 c4             	xor    %rsp,%rax
140022034:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
140022038:	48 89 55 b8          	mov    %rdx,-0x48(%rbp)
14002203c:	48 8b d9             	mov    %rcx,%rbx
14002203f:	48 8d 05 82 60 05 00 	lea    0x56082(%rip),%rax        # 0x1400780c8
140022046:	48 83 79 10 00       	cmpq   $0x0,0x10(%rcx)
14002204b:	75 19                	jne    0x140022066
14002204d:	c7 45 b8 03 00 00 00 	movl   $0x3,-0x48(%rbp)
140022054:	48 89 45 c0          	mov    %rax,-0x40(%rbp)
140022058:	0f 10 45 b8          	movups -0x48(%rbp),%xmm0
14002205c:	0f 11 02             	movups %xmm0,(%rdx)
14002205f:	32 c0                	xor    %al,%al
140022061:	e9 4c 02 00 00       	jmp    0x1400222b2
140022066:	45 33 ed             	xor    %r13d,%r13d
140022069:	44 89 2a             	mov    %r13d,(%rdx)
14002206c:	48 89 42 08          	mov    %rax,0x8(%rdx)
140022070:	0f 57 c0             	xorps  %xmm0,%xmm0
140022073:	0f 11 45 d8          	movups %xmm0,-0x28(%rbp)
140022077:	4c 89 6d e8          	mov    %r13,-0x18(%rbp)
14002207b:	41 bb 07 00 00 00    	mov    $0x7,%r11d
140022081:	4c 89 5d f0          	mov    %r11,-0x10(%rbp)
140022085:	66 44 89 6d d8       	mov    %r13w,-0x28(%rbp)
14002208a:	48 8b 41 10          	mov    0x10(%rcx),%rax
14002208e:	49 3b c3             	cmp    %r11,%rax
140022091:	76 18                	jbe    0x1400220ab
140022093:	48 8b d0             	mov    %rax,%rdx
140022096:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
14002209a:	e8 41 1c 00 00       	call   0x140023ce0
14002209f:	4c 89 6d e8          	mov    %r13,-0x18(%rbp)
1400220a3:	48 8b 43 10          	mov    0x10(%rbx),%rax
1400220a7:	4c 8b 5d f0          	mov    -0x10(%rbp),%r11
1400220ab:	4c 8b d3             	mov    %rbx,%r10
1400220ae:	48 83 7b 18 07       	cmpq   $0x7,0x18(%rbx)
1400220b3:	76 06                	jbe    0x1400220bb
1400220b5:	4c 8b 13             	mov    (%rbx),%r10
1400220b8:	49 8b da             	mov    %r10,%rbx
1400220bb:	48 8d 34 43          	lea    (%rbx,%rax,2),%rsi
1400220bf:	48 8b d6             	mov    %rsi,%rdx
1400220c2:	49 8b ca             	mov    %r10,%rcx
1400220c5:	e8 d6 f5 ff ff       	call   0x1400216a0
1400220ca:	4c 8b f8             	mov    %rax,%r15
1400220cd:	49 3b c2             	cmp    %r10,%rax
1400220d0:	74 35                	je     0x140022107
1400220d2:	48 8b c6             	mov    %rsi,%rax
1400220d5:	49 2b c7             	sub    %r15,%rax
1400220d8:	48 83 e0 fe          	and    $0xfffffffffffffffe,%rax
1400220dc:	48 83 f8 06          	cmp    $0x6,%rax
1400220e0:	7c 25                	jl     0x140022107
1400220e2:	41 8b 07             	mov    (%r15),%eax
1400220e5:	83 e0 df             	and    $0xffffffdf,%eax
1400220e8:	2d 41 00 3a 00       	sub    $0x3a0041,%eax
1400220ed:	83 f8 1a             	cmp    $0x1a,%eax
1400220f0:	73 15                	jae    0x140022107
1400220f2:	41 0f b7 47 04       	movzwl 0x4(%r15),%eax
1400220f7:	66 83 f8 5c          	cmp    $0x5c,%ax
1400220fb:	74 06                	je     0x140022103
1400220fd:	66 83 f8 2f          	cmp    $0x2f,%ax
140022101:	75 04                	jne    0x140022107
140022103:	49 83 c7 04          	add    $0x4,%r15
140022107:	49 8b d7             	mov    %r15,%rdx
14002210a:	49 2b d2             	sub    %r10,%rdx
14002210d:	48 d1 fa             	sar    $1,%rdx
140022110:	49 3b d3             	cmp    %r11,%rdx
140022113:	77 2a                	ja     0x14002213f
140022115:	48 89 55 e8          	mov    %rdx,-0x18(%rbp)
140022119:	48 8d 7d d8          	lea    -0x28(%rbp),%rdi
14002211d:	49 83 fb 07          	cmp    $0x7,%r11
140022121:	48 0f 47 7d d8       	cmova  -0x28(%rbp),%rdi
140022126:	48 8d 1c 12          	lea    (%rdx,%rdx,1),%rbx
14002212a:	4c 8b c3             	mov    %rbx,%r8
14002212d:	49 8b d2             	mov    %r10,%rdx
140022130:	48 8b cf             	mov    %rdi,%rcx
140022133:	e8 99 87 03 00       	call   0x14005a8d1
140022138:	66 44 89 2c 1f       	mov    %r13w,(%rdi,%rbx,1)
14002213d:	eb 11                	jmp    0x140022150
14002213f:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140022144:	4d 8b ca             	mov    %r10,%r9
140022147:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
14002214b:	e8 10 1d 00 00       	call   0x140023e60
140022150:	32 db                	xor    %bl,%bl
140022152:	44 89 6d b0          	mov    %r13d,-0x50(%rbp)
140022156:	4c 3b fe             	cmp    %rsi,%r15
140022159:	0f 84 f3 00 00 00    	je     0x140022252
14002215f:	90                   	nop
140022160:	49 8b ff             	mov    %r15,%rdi
140022163:	0f b7 07             	movzwl (%rdi),%eax
140022166:	66 83 f8 5c          	cmp    $0x5c,%ax
14002216a:	74 06                	je     0x140022172
14002216c:	66 83 f8 2f          	cmp    $0x2f,%ax
140022170:	75 09                	jne    0x14002217b
140022172:	48 83 c7 02          	add    $0x2,%rdi
140022176:	48 3b fe             	cmp    %rsi,%rdi
140022179:	75 e8                	jne    0x140022163
14002217b:	48 3b fe             	cmp    %rsi,%rdi
14002217e:	74 18                	je     0x140022198
140022180:	0f b7 07             	movzwl (%rdi),%eax
140022183:	66 83 f8 5c          	cmp    $0x5c,%ax
140022187:	74 0f                	je     0x140022198
140022189:	66 83 f8 2f          	cmp    $0x2f,%ax
14002218d:	74 09                	je     0x140022198
14002218f:	48 83 c7 02          	add    $0x2,%rdi
140022193:	48 3b fe             	cmp    %rsi,%rdi
140022196:	75 e8                	jne    0x140022180
140022198:	4c 8b f7             	mov    %rdi,%r14
14002219b:	4d 2b f7             	sub    %r15,%r14
14002219e:	49 d1 fe             	sar    $1,%r14
1400221a1:	4c 8b 65 e8          	mov    -0x18(%rbp),%r12
1400221a5:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
1400221a9:	48 8b c1             	mov    %rcx,%rax
1400221ac:	49 2b c4             	sub    %r12,%rax
1400221af:	4c 3b f0             	cmp    %rax,%r14
1400221b2:	77 30                	ja     0x1400221e4
1400221b4:	4b 8d 04 34          	lea    (%r12,%r14,1),%rax
1400221b8:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
1400221bc:	48 8d 5d d8          	lea    -0x28(%rbp),%rbx
1400221c0:	48 83 f9 07          	cmp    $0x7,%rcx
1400221c4:	48 0f 47 5d d8       	cmova  -0x28(%rbp),%rbx
1400221c9:	4a 8d 0c 63          	lea    (%rbx,%r12,2),%rcx
1400221cd:	4f 8d 04 36          	lea    (%r14,%r14,1),%r8
1400221d1:	49 8b d7             	mov    %r15,%rdx
1400221d4:	e8 f8 86 03 00       	call   0x14005a8d1
1400221d9:	4b 8d 04 34          	lea    (%r12,%r14,1),%rax
1400221dd:	66 44 89 2c 43       	mov    %r13w,(%rbx,%rax,2)
1400221e2:	eb 14                	jmp    0x1400221f8
1400221e4:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
1400221e9:	4d 8b cf             	mov    %r15,%r9
1400221ec:	49 8b d6             	mov    %r14,%rdx
1400221ef:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
1400221f3:	e8 68 1c 00 00       	call   0x140023e60
1400221f8:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
1400221fc:	48 83 7d f0 07       	cmpq   $0x7,-0x10(%rbp)
140022201:	48 0f 47 4d d8       	cmova  -0x28(%rbp),%rcx
140022206:	e8 ed 71 03 00       	call   0x1400593f8
14002220b:	48 8b d8             	mov    %rax,%rbx
14002220e:	48 8b c8             	mov    %rax,%rcx
140022211:	48 c1 e9 20          	shr    $0x20,%rcx
140022215:	85 c9                	test   %ecx,%ecx
140022217:	74 1d                	je     0x140022236
140022219:	8b c1                	mov    %ecx,%eax
14002221b:	83 e8 02             	sub    $0x2,%eax
14002221e:	74 16                	je     0x140022236
140022220:	83 e8 01             	sub    $0x1,%eax
140022223:	74 11                	je     0x140022236
140022225:	83 e8 32             	sub    $0x32,%eax
140022228:	74 0c                	je     0x140022236
14002222a:	83 f8 46             	cmp    $0x46,%eax
14002222d:	74 07                	je     0x140022236
14002222f:	8b c1                	mov    %ecx,%eax
140022231:	89 4d b0             	mov    %ecx,-0x50(%rbp)
140022234:	eb 03                	jmp    0x140022239
140022236:	8b 45 b0             	mov    -0x50(%rbp),%eax
140022239:	4c 8b ff             	mov    %rdi,%r15
14002223c:	48 3b fe             	cmp    %rsi,%rdi
14002223f:	0f 85 1b ff ff ff    	jne    0x140022160
140022245:	44 8b e9             	mov    %ecx,%r13d
140022248:	85 c9                	test   %ecx,%ecx
14002224a:	74 06                	je     0x140022252
14002224c:	85 c0                	test   %eax,%eax
14002224e:	44 0f 45 e8          	cmovne %eax,%r13d
140022252:	44 89 6d c8          	mov    %r13d,-0x38(%rbp)
140022256:	48 8d 05 6b 5e 05 00 	lea    0x55e6b(%rip),%rax        # 0x1400780c8
14002225d:	48 89 45 d0          	mov    %rax,-0x30(%rbp)
140022261:	0f 10 45 c8          	movups -0x38(%rbp),%xmm0
140022265:	48 8b 45 b8          	mov    -0x48(%rbp),%rax
140022269:	0f 11 00             	movups %xmm0,(%rax)
14002226c:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
140022270:	48 83 fa 07          	cmp    $0x7,%rdx
140022274:	76 39                	jbe    0x1400222af
140022276:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
14002227d:	00
14002227e:	48 8b 4d d8          	mov    -0x28(%rbp),%rcx
140022282:	48 8b c1             	mov    %rcx,%rax
140022285:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14002228c:	72 1c                	jb     0x1400222aa
14002228e:	48 83 c2 27          	add    $0x27,%rdx
140022292:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140022296:	48 2b c1             	sub    %rcx,%rax
140022299:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14002229d:	48 83 f8 1f          	cmp    $0x1f,%rax
1400222a1:	76 07                	jbe    0x1400222aa
1400222a3:	ff 15 f7 d2 03 00    	call   *0x3d2f7(%rip)        # 0x14005f5a0
1400222a9:	cc                   	int3
1400222aa:	e8 e5 79 03 00       	call   0x140059c94
1400222af:	0f b6 c3             	movzbl %bl,%eax
1400222b2:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
1400222b6:	48 33 cc             	xor    %rsp,%rcx
1400222b9:	e8 42 75 03 00       	call   0x140059800
1400222be:	48 8b 9c 24 d0 00 00 	mov    0xd0(%rsp),%rbx
1400222c5:	00
1400222c6:	48 81 c4 80 00 00 00 	add    $0x80,%rsp
1400222cd:	41 5f                	pop    %r15
1400222cf:	41 5e                	pop    %r14
1400222d1:	41 5d                	pop    %r13
1400222d3:	41 5c                	pop    %r12
1400222d5:	5f                   	pop    %rdi
1400222d6:	5e                   	pop    %rsi
1400222d7:	5d                   	pop    %rbp
1400222d8:	c3                   	ret
1400222d9:	cc                   	int3
1400222da:	cc                   	int3
1400222db:	cc                   	int3
1400222dc:	cc                   	int3
1400222dd:	cc                   	int3
1400222de:	cc                   	int3
1400222df:	cc                   	int3
1400222e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400222e5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1400222ea:	57                   	push   %rdi
1400222eb:	41 54                	push   %r12
1400222ed:	41 55                	push   %r13