140181ea7:	48 2b c6             	sub    %rsi,%rax
140181eaa:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
140181eae:	48 83 f8 1f          	cmp    $0x1f,%rax
140181eb2:	77 2b                	ja     0x140181edf
140181eb4:	48 8b ce             	mov    %rsi,%rcx
140181eb7:	e8 90 47 00 00       	call   0x14018664c
140181ebc:	49 8b c4             	mov    %r12,%rax
140181ebf:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
140181ec3:	48 33 cc             	xor    %rsp,%rcx
140181ec6:	e8 05 44 00 00       	call   0x1401862d0
140181ecb:	48 81 c4 c8 00 00 00 	add    $0xc8,%rsp
140181ed2:	41 5f                	pop    %r15
140181ed4:	41 5e                	pop    %r14
140181ed6:	41 5d                	pop    %r13
140181ed8:	41 5c                	pop    %r12
140181eda:	5f                   	pop    %rdi
140181edb:	5e                   	pop    %rsi
140181edc:	5b                   	pop    %rbx
140181edd:	5d                   	pop    %rbp
140181ede:	c3                   	ret
140181edf:	e8 a0 96 00 00       	call   0x14018b584
140181ee4:	cc                   	int3
140181ee5:	cc                   	int3
140181ee6:	cc                   	int3
140181ee7:	cc                   	int3
140181ee8:	40 55                	rex push %rbp
140181eea:	53                   	push   %rbx
140181eeb:	56                   	push   %rsi
140181eec:	57                   	push   %rdi
140181eed:	41 54                	push   %r12
140181eef:	41 56                	push   %r14
140181ef1:	41 57                	push   %r15
140181ef3:	48 8d 6c 24 f9       	lea    -0x7(%rsp),%rbp
140181ef8:	48 81 ec 90 00 00 00 	sub    $0x90,%rsp
140181eff:	48 8b 05 6a 93 12 00 	mov    0x12936a(%rip),%rax        # 0x1402ab270
140181f06:	48 33 c4             	xor    %rsp,%rax
140181f09:	48 89 45 f7          	mov    %rax,-0x9(%rbp)
140181f0d:	4d 8b f8             	mov    %r8,%r15
140181f10:	48 8b fa             	mov    %rdx,%rdi
140181f13:	48 8b f1             	mov    %rcx,%rsi
140181f16:	4c 8b 75 6f          	mov    0x6f(%rbp),%r14
140181f1a:	f2 0f 10 05 ae e6 09 	movsd  0x9e6ae(%rip),%xmm0        # 0x1402205d0
140181f21:	00
140181f22:	f2 0f 11 45 e7       	movsd  %xmm0,-0x19(%rbp)
140181f27:	0f b7 05 aa e6 09 00 	movzwl 0x9e6aa(%rip),%eax        # 0x1402205d8
140181f2e:	66 89 45 ef          	mov    %ax,-0x11(%rbp)
140181f32:	45 33 e4             	xor    %r12d,%r12d
140181f35:	4c 89 65 c7          	mov    %r12,-0x39(%rbp)
140181f39:	4c 89 65 d7          	mov    %r12,-0x29(%rbp)
140181f3d:	48 c7 45 df 07 00 00 	movq   $0x7,-0x21(%rbp)
140181f44:	00
140181f45:	66 44 89 65 c7       	mov    %r12w,-0x39(%rbp)
140181f4a:	0f be 4d 77          	movsbl 0x77(%rbp),%ecx
140181f4e:	0f be 45 7f          	movsbl 0x7f(%rbp),%eax
140181f52:	84 c0                	test   %al,%al
140181f54:	75 06                	jne    0x140181f5c
140181f56:	66 89 4d eb          	mov    %cx,-0x15(%rbp)
140181f5a:	eb 08                	jmp    0x140181f64
140181f5c:	66 89 45 eb          	mov    %ax,-0x15(%rbp)
140181f60:	66 89 4d ed          	mov    %cx,-0x13(%rbp)
140181f64:	bb 10 00 00 00       	mov    $0x10,%ebx
140181f69:	45 33 c0             	xor    %r8d,%r8d
140181f6c:	48 8b d3             	mov    %rbx,%rdx
140181f6f:	48 8d 4d c7          	lea    -0x39(%rbp),%rcx
140181f73:	e8 18 8b f6 ff       	call   0x1400eaa90
140181f78:	48 8b 46 10          	mov    0x10(%rsi),%rax
140181f7c:	48 8d 4d c7          	lea    -0x39(%rbp),%rcx
140181f80:	48 83 7d df 08       	cmpq   $0x8,-0x21(%rbp)
140181f85:	48 0f 43 4d c7       	cmovae -0x39(%rbp),%rcx
140181f8a:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140181f8f:	4d 8b ce             	mov    %r14,%r9
140181f92:	4c 8d 45 e7          	lea    -0x19(%rbp),%r8
140181f96:	48 8b 55 d7          	mov    -0x29(%rbp),%rdx
140181f9a:	e8 89 21 01 00       	call   0x140194128
140181f9f:	48 8b d0             	mov    %rax,%rdx
140181fa2:	48 85 c0             	test   %rax,%rax
140181fa5:	75 05                	jne    0x140181fac
140181fa7:	48 03 db             	add    %rbx,%rbx
140181faa:	eb bd                	jmp    0x140181f69
140181fac:	48 8d 45 c7          	lea    -0x39(%rbp),%rax
140181fb0:	48 83 7d df 08       	cmpq   $0x8,-0x21(%rbp)
140181fb5:	0f 93 c1             	setae  %cl
140181fb8:	48 0f 43 45 c7       	cmovae -0x39(%rbp),%rax
140181fbd:	4c 8d 04 50          	lea    (%rax,%rdx,2),%r8
140181fc1:	48 8d 55 c7          	lea    -0x39(%rbp),%rdx
140181fc5:	84 c9                	test   %cl,%cl
140181fc7:	48 0f 45 55 c7       	cmovne -0x39(%rbp),%rdx
140181fcc:	48 83 c2 02          	add    $0x2,%rdx
140181fd0:	41 0f 10 07          	movups (%r15),%xmm0
140181fd4:	f3 0f 7f 45 a7       	movdqu %xmm0,-0x59(%rbp)
140181fd9:	4c 8d 4d a7          	lea    -0x59(%rbp),%r9
140181fdd:	48 8d 4d b7          	lea    -0x49(%rbp),%rcx
140181fe1:	e8 1a 8b fe ff       	call   0x14016ab00
140181fe6:	0f 10 00             	movups (%rax),%xmm0
140181fe9:	f3 0f 7f 07          	movdqu %xmm0,(%rdi)
140181fed:	48 8b 55 df          	mov    -0x21(%rbp),%rdx
140181ff1:	48 83 fa 08          	cmp    $0x8,%rdx
140181ff5:	72 32                	jb     0x140182029
140181ff7:	48 8d 14 55 02 00 00 	lea    0x2(,%rdx,2),%rdx
140181ffe:	00
140181fff:	48 8b 4d c7          	mov    -0x39(%rbp),%rcx
140182003:	48 8b c1             	mov    %rcx,%rax
140182006:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14018200d:	72 15                	jb     0x140182024
14018200f:	48 83 c2 27          	add    $0x27,%rdx
140182013:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
140182017:	48 2b c1             	sub    %rcx,%rax
14018201a:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14018201e:	48 83 f8 1f          	cmp    $0x1f,%rax
140182022:	77 26                	ja     0x14018204a
140182024:	e8 23 46 00 00       	call   0x14018664c
140182029:	48 8b c7             	mov    %rdi,%rax
14018202c:	48 8b 4d f7          	mov    -0x9(%rbp),%rcx
140182030:	48 33 cc             	xor    %rsp,%rcx
140182033:	e8 98 42 00 00       	call   0x1401862d0
140182038:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
14018203f:	41 5f                	pop    %r15
140182041:	41 5e                	pop    %r14
140182043:	41 5c                	pop    %r12
140182045:	5f                   	pop    %rdi
140182046:	5e                   	pop    %rsi
140182047:	5b                   	pop    %rbx
140182048:	5d                   	pop    %rbp
140182049:	c3                   	ret
14018204a:	e8 35 95 00 00       	call   0x14018b584
14018204f:	cc                   	int3
140182050:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140182055:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14018205a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14018205f:	57                   	push   %rdi
140182060:	48 83 ec 20          	sub    $0x20,%rsp
140182064:	49 8b f9             	mov    %r9,%rdi
140182067:	49 8b d8             	mov    %r8,%rbx
14018206a:	0f b7 ea             	movzwl %dx,%ebp
14018206d:	48 8b f1             	mov    %rcx,%rsi
140182070:	4d 3b c1             	cmp    %r9,%r8
140182073:	74 24                	je     0x140182099
140182075:	48 8b 06             	mov    (%rsi),%rax
140182078:	0f b7 d5             	movzwl %bp,%edx
14018207b:	44 0f b7 03          	movzwl (%rbx),%r8d
14018207f:	48 8b ce             	mov    %rsi,%rcx
140182082:	48 8b 40 20          	mov    0x20(%rax),%rax
140182086:	ff 15 94 c5 07 00    	call   *0x7c594(%rip)        # 0x1401fe620
14018208c:	84 c0                	test   %al,%al
14018208e:	75 09                	jne    0x140182099
140182090:	48 83 c3 02          	add    $0x2,%rbx
140182094:	48 3b df             	cmp    %rdi,%rbx
140182097:	75 dc                	jne    0x140182075
140182099:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14018209e:	48 8b c3             	mov    %rbx,%rax
1401820a1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401820a6:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1401820ab:	48 83 c4 20          	add    $0x20,%rsp
1401820af:	5f                   	pop    %rdi
1401820b0:	c3                   	ret
1401820b1:	cc                   	int3
1401820b2:	cc                   	int3
1401820b3:	cc                   	int3
1401820b4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1401820b9:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1401820be:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1401820c3:	57                   	push   %rdi
1401820c4:	48 83 ec 20          	sub    $0x20,%rsp
1401820c8:	49 8b f9             	mov    %r9,%rdi
1401820cb:	49 8b d8             	mov    %r8,%rbx
1401820ce:	0f b7 ea             	movzwl %dx,%ebp
1401820d1:	48 8b f1             	mov    %rcx,%rsi
1401820d4:	4d 3b c1             	cmp    %r9,%r8
1401820d7:	74 24                	je     0x1401820fd
1401820d9:	48 8b 06             	mov    (%rsi),%rax
1401820dc:	0f b7 d5             	movzwl %bp,%edx
1401820df:	44 0f b7 03          	movzwl (%rbx),%r8d
1401820e3:	48 8b ce             	mov    %rsi,%rcx
1401820e6:	48 8b 40 20          	mov    0x20(%rax),%rax
1401820ea:	ff 15 30 c5 07 00    	call   *0x7c530(%rip)        # 0x1401fe620
1401820f0:	84 c0                	test   %al,%al
1401820f2:	74 09                	je     0x1401820fd
1401820f4:	48 83 c3 02          	add    $0x2,%rbx
1401820f8:	48 3b df             	cmp    %rdi,%rbx
1401820fb:	75 dc                	jne    0x1401820d9
1401820fd:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140182102:	48 8b c3             	mov    %rbx,%rax
140182105:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14018210a:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14018210f:	48 83 c4 20          	add    $0x20,%rsp
140182113:	5f                   	pop    %rdi
140182114:	c3                   	ret
140182115:	cc                   	int3
140182116:	cc                   	int3
140182117:	cc                   	int3
140182118:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14018211d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140182122:	57                   	push   %rdi
140182123:	48 83 ec 20          	sub    $0x20,%rsp
140182127:	49 8b f8             	mov    %r8,%rdi
14018212a:	48 8b da             	mov    %rdx,%rbx
14018212d:	49 3b d0             	cmp    %r8,%rdx
140182130:	74 1b                	je     0x14018214d
140182132:	48 8d 71 10          	lea    0x10(%rcx),%rsi
140182136:	0f b7 0b             	movzwl (%rbx),%ecx
140182139:	48 8b d6             	mov    %rsi,%rdx
14018213c:	e8 d7 74 fe ff       	call   0x140169618
140182141:	66 89 03             	mov    %ax,(%rbx)
140182144:	48 83 c3 02          	add    $0x2,%rbx
140182148:	48 3b df             	cmp    %rdi,%rbx
14018214b:	75 e9                	jne    0x140182136
14018214d:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140182152:	48 8b c3             	mov    %rbx,%rax
140182155:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14018215a:	48 83 c4 20          	add    $0x20,%rsp
14018215e:	5f                   	pop    %rdi
14018215f:	c3                   	ret
140182160:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140182165:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14018216a:	57                   	push   %rdi
14018216b:	48 83 ec 20          	sub    $0x20,%rsp
14018216f:	49 8b f8             	mov    %r8,%rdi
140182172:	48 8b da             	mov    %rdx,%rbx
140182175:	49 3b d0             	cmp    %r8,%rdx
140182178:	74 1b                	je     0x140182195
14018217a:	48 8d 71 10          	lea    0x10(%rcx),%rsi
14018217e:	0f b7 0b             	movzwl (%rbx),%ecx
140182181:	48 8b d6             	mov    %rsi,%rdx
140182184:	e8 17 76 fe ff       	call   0x1401697a0
140182189:	66 89 03             	mov    %ax,(%rbx)
14018218c:	48 83 c3 02          	add    $0x2,%rbx
140182190:	48 3b df             	cmp    %rdi,%rbx
140182193:	75 e9                	jne    0x14018217e
140182195:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14018219a:	48 8b c3             	mov    %rbx,%rax
14018219d:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1401821a2:	48 83 c4 20          	add    $0x20,%rsp
1401821a6:	5f                   	pop    %rdi
1401821a7:	c3                   	ret
1401821a8:	48 8b c4             	mov    %rsp,%rax
1401821ab:	48 89 58 08          	mov    %rbx,0x8(%rax)
1401821af:	48 89 68 18          	mov    %rbp,0x18(%rax)
1401821b3:	48 89 50 10          	mov    %rdx,0x10(%rax)
1401821b7:	56                   	push   %rsi
1401821b8:	57                   	push   %rdi
1401821b9:	41 56                	push   %r14
1401821bb:	48 83 ec 40          	sub    $0x40,%rsp
1401821bf:	49 8b f1             	mov    %r9,%rsi
1401821c2:	49 8b e8             	mov    %r8,%rbp
1401821c5:	48 8b da             	mov    %rdx,%rbx
1401821c8:	4c 8b d1             	mov    %rcx,%r10
1401821cb:	45 33 f6             	xor    %r14d,%r14d
1401821ce:	44 89 70 d8          	mov    %r14d,-0x28(%rax)
1401821d2:	4c 89 32             	mov    %r14,(%rdx)
1401821d5:	4c 89 72 10          	mov    %r14,0x10(%rdx)
1401821d9:	48 c7 42 18 07 00 00 	movq   $0x7,0x18(%rdx)
1401821e0:	00
1401821e1:	66 44 89 32          	mov    %r14w,(%rdx)
1401821e5:	c7 40 d8 01 00 00 00 	movl   $0x1,-0x28(%rax)
1401821ec:	49 8b c1             	mov    %r9,%rax
1401821ef:	49 2b c0             	sub    %r8,%rax
1401821f2:	48 d1 f8             	sar    $1,%rax
1401821f5:	41 8b ce             	mov    %r14d,%ecx
1401821f8:	74 70                	je     0x14018226a
1401821fa:	41 8b d6             	mov    %r14d,%edx
1401821fd:	49 8d 7a 10          	lea    0x10(%r10),%rdi
140182201:	48 8b cb             	mov    %rbx,%rcx
140182204:	48 3b c2             	cmp    %rdx,%rax
140182207:	77 15                	ja     0x14018221e
140182209:	48 83 7b 18 08       	cmpq   $0x8,0x18(%rbx)
14018220e:	72 03                	jb     0x140182213
140182210:	48 8b 0b             	mov    (%rbx),%rcx
140182213:	48 89 43 10          	mov    %rax,0x10(%rbx)
140182217:	66 44 89 34 41       	mov    %r14w,(%rcx,%rax,2)
14018221c:	eb 0e                	jmp    0x14018222c
14018221e:	45 33 c0             	xor    %r8d,%r8d
140182221:	48 2b c2             	sub    %rdx,%rax
140182224:	48 8b d0             	mov    %rax,%rdx
140182227:	e8 58 98 ff ff       	call   0x14017ba84
14018222c:	48 8b cb             	mov    %rbx,%rcx
14018222f:	48 83 7b 18 08       	cmpq   $0x8,0x18(%rbx)
140182234:	72 03                	jb     0x140182239
140182236:	48 8b 0b             	mov    (%rbx),%rcx
140182239:	48 8b 43 10          	mov    0x10(%rbx),%rax
14018223d:	48 8d 14 41          	lea    (%rcx,%rax,2),%rdx
140182241:	48 8b cb             	mov    %rbx,%rcx
140182244:	72 03                	jb     0x140182249
140182246:	48 8b 0b             	mov    (%rbx),%rcx
140182249:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14018224e:	4c 8b ce             	mov    %rsi,%r9
140182251:	4c 8b c5             	mov    %rbp,%r8
140182254:	e8 43 97 fe ff       	call   0x14016b99c
140182259:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
14018225d:	48 3b c1             	cmp    %rcx,%rax
140182260:	76 0d                	jbe    0x14018226f
140182262:	48 8b d1             	mov    %rcx,%rdx
140182265:	48 85 c0             	test   %rax,%rax
140182268:	75 97                	jne    0x140182201
14018226a:	48 3b c1             	cmp    %rcx,%rax
14018226d:	77 18                	ja     0x140182287
14018226f:	48 8b cb             	mov    %rbx,%rcx
140182272:	48 83 7b 18 08       	cmpq   $0x8,0x18(%rbx)
140182277:	72 03                	jb     0x14018227c
140182279:	48 8b 0b             	mov    (%rbx),%rcx
14018227c:	48 89 43 10          	mov    %rax,0x10(%rbx)
140182280:	66 44 89 34 41       	mov    %r14w,(%rcx,%rax,2)
140182285:	eb 11                	jmp    0x140182298
140182287:	45 33 c0             	xor    %r8d,%r8d
14018228a:	48 2b c1             	sub    %rcx,%rax
14018228d:	48 8b d0             	mov    %rax,%rdx
140182290:	48 8b cb             	mov    %rbx,%rcx
140182293:	e8 ec 97 ff ff       	call   0x14017ba84
140182298:	48 8b c3             	mov    %rbx,%rax
14018229b:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
1401822a0:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
1401822a5:	48 83 c4 40          	add    $0x40,%rsp
1401822a9:	41 5e                	pop    %r14
1401822ab:	5f                   	pop    %rdi
1401822ac:	5e                   	pop    %rsi
1401822ad:	c3                   	ret
1401822ae:	cc                   	int3
1401822af:	cc                   	int3
1401822b0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1401822b5:	55                   	push   %rbp
1401822b6:	56                   	push   %rsi
1401822b7:	57                   	push   %rdi
1401822b8:	41 56                	push   %r14
1401822ba:	41 57                	push   %r15
1401822bc:	48 83 ec 30          	sub    $0x30,%rsp
1401822c0:	48 8b 05 a9 8f 12 00 	mov    0x128fa9(%rip),%rax        # 0x1402ab270
1401822c7:	48 33 c4             	xor    %rsp,%rax
1401822ca:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1401822cf:	4c 8b b4 24 80 00 00 	mov    0x80(%rsp),%r14
1401822d6:	00
1401822d7:	4c 8b fa             	mov    %rdx,%r15
1401822da:	49 8b e9             	mov    %r9,%rbp
1401822dd:	33 ff                	xor    %edi,%edi
1401822df:	4c 8d 49 10          	lea    0x10(%rcx),%r9
1401822e3:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1401822e8:	4d 89 06             	mov    %r8,(%r14)
1401822eb:	4d 8b c7             	mov    %r15,%r8
1401822ee:	48 8b 1a             	mov    (%rdx),%rbx
1401822f1:	33 d2                	xor    %edx,%edx
1401822f3:	e8 2c 74 fe ff       	call   0x140169724
1401822f8:	85 c0                	test   %eax,%eax
1401822fa:	7f 07                	jg     0x140182303
1401822fc:	bf 02 00 00 00       	mov    $0x2,%edi
140182301:	eb 2e                	jmp    0x140182331
140182303:	49 2b 2e             	sub    (%r14),%rbp
140182306:	ff c8                	dec    %eax
140182308:	48 63 f0             	movslq %eax,%rsi
14018230b:	48 3b ee             	cmp    %rsi,%rbp
14018230e:	7d 0a                	jge    0x14018231a
140182310:	49 89 1f             	mov    %rbx,(%r15)
140182313:	bf 01 00 00 00       	mov    $0x1,%edi