180050f9c:	49 8b ce             	mov    %r14,%rcx
180050f9f:	48 8b 40 10          	mov    0x10(%rax),%rax
180050fa3:	ff d0                	call   *%rax
180050fa5:	0f 1f 00             	nopl   (%rax)
180050fa8:	8b f8                	mov    %eax,%edi
180050faa:	41 03 c5             	add    %r13d,%eax
180050fad:	41 85 c5             	test   %eax,%r13d
180050fb0:	75 08                	jne    0x180050fba
180050fb2:	81 ff 05 00 00 80    	cmp    $0x80000005,%edi
180050fb8:	75 25                	jne    0x180050fdf
180050fba:	8b 43 04             	mov    0x4(%rbx),%eax
180050fbd:	3b c6                	cmp    %esi,%eax
180050fbf:	76 70                	jbe    0x180051031
180050fc1:	48 8b cb             	mov    %rbx,%rcx
180050fc4:	8b f0                	mov    %eax,%esi
180050fc6:	e8 91 59 ff ff       	call   0x18004695c
180050fcb:	8b ce                	mov    %esi,%ecx
180050fcd:	e8 42 59 ff ff       	call   0x180046914
180050fd2:	48 8b d8             	mov    %rax,%rbx
180050fd5:	48 85 c0             	test   %rax,%rax
180050fd8:	75 a6                	jne    0x180050f80
180050fda:	bf 9a 00 00 c0       	mov    $0xc000009a,%edi
180050fdf:	48 85 db             	test   %rbx,%rbx
180050fe2:	74 08                	je     0x180050fec
180050fe4:	48 8b cb             	mov    %rbx,%rcx
180050fe7:	e8 70 59 ff ff       	call   0x18004695c
180050fec:	85 ff                	test   %edi,%edi
180050fee:	78 17                	js     0x180051007
180050ff0:	49 8b 06             	mov    (%r14),%rax
180050ff3:	4c 8b c5             	mov    %rbp,%r8
180050ff6:	ba 06 00 00 00       	mov    $0x6,%edx
180050ffb:	49 8b ce             	mov    %r14,%rcx
180050ffe:	48 8b 40 30          	mov    0x30(%rax),%rax
180051002:	ff d0                	call   *%rax
180051004:	0f 1f 00             	nopl   (%rax)
180051007:	8b c7                	mov    %edi,%eax
180051009:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
18005100e:	48 33 cc             	xor    %rsp,%rcx
180051011:	e8 16 4b fc ff       	call   0x180015b2c
180051016:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
18005101b:	49 8b 5b 28          	mov    0x28(%r11),%rbx
18005101f:	49 8b 6b 30          	mov    0x30(%r11),%rbp
180051023:	49 8b 73 38          	mov    0x38(%r11),%rsi
180051027:	49 8b e3             	mov    %r11,%rsp
18005102a:	41 5e                	pop    %r14
18005102c:	41 5d                	pop    %r13
18005102e:	5f                   	pop    %rdi
18005102f:	c3                   	ret
180051030:	cc                   	int3
180051031:	89 73 04             	mov    %esi,0x4(%rbx)
180051034:	4c 8b c3             	mov    %rbx,%r8
180051037:	49 8b 06             	mov    (%r14),%rax
18005103a:	ba 06 00 00 00       	mov    $0x6,%edx
18005103f:	49 8b ce             	mov    %r14,%rcx
180051042:	48 8b 40 28          	mov    0x28(%rax),%rax
180051046:	ff d0                	call   *%rax
180051048:	0f 1f 00             	nopl   (%rax)
18005104b:	8b f8                	mov    %eax,%edi
18005104d:	85 c0                	test   %eax,%eax
18005104f:	78 8e                	js     0x180050fdf
180051051:	48 8b eb             	mov    %rbx,%rbp
180051054:	33 db                	xor    %ebx,%ebx
180051056:	eb 87                	jmp    0x180050fdf
180051058:	33 c9                	xor    %ecx,%ecx
18005105a:	41 89 08             	mov    %ecx,(%r8)
18005105d:	85 d2                	test   %edx,%edx
18005105f:	74 3f                	je     0x1800510a0
180051061:	83 ea 01             	sub    $0x1,%edx
180051064:	74 31                	je     0x180051097
180051066:	83 ea 01             	sub    $0x1,%edx
180051069:	74 23                	je     0x18005108e
18005106b:	83 ea 03             	sub    $0x3,%edx
18005106e:	74 15                	je     0x180051085
180051070:	83 fa 0e             	cmp    $0xe,%edx
180051073:	74 07                	je     0x18005107c
180051075:	b9 25 02 00 c0       	mov    $0xc0000225,%ecx
18005107a:	eb 2b                	jmp    0x1800510a7
18005107c:	41 c7 00 1c 00 00 00 	movl   $0x1c,(%r8)
180051083:	eb 22                	jmp    0x1800510a7
180051085:	41 c7 00 18 00 00 00 	movl   $0x18,(%r8)
18005108c:	eb 19                	jmp    0x1800510a7
18005108e:	41 c7 00 10 00 00 00 	movl   $0x10,(%r8)
180051095:	eb 10                	jmp    0x1800510a7
180051097:	41 c7 00 20 00 00 00 	movl   $0x20,(%r8)
18005109e:	eb 07                	jmp    0x1800510a7
1800510a0:	41 c7 00 28 00 00 00 	movl   $0x28,(%r8)
1800510a7:	8b c1                	mov    %ecx,%eax
1800510a9:	c3                   	ret
1800510aa:	cc                   	int3
1800510ab:	cc                   	int3
1800510ac:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800510b1:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
1800510b6:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1800510bb:	57                   	push   %rdi
1800510bc:	48 83 ec 20          	sub    $0x20,%rsp
1800510c0:	49 8b f0             	mov    %r8,%rsi
1800510c3:	8b ea                	mov    %edx,%ebp
1800510c5:	48 8b f9             	mov    %rcx,%rdi
1800510c8:	44 8b ca             	mov    %edx,%r9d
1800510cb:	85 d2                	test   %edx,%edx
1800510cd:	74 38                	je     0x180051107
1800510cf:	41 83 e9 01          	sub    $0x1,%r9d
1800510d3:	74 2b                	je     0x180051100
1800510d5:	41 83 e9 01          	sub    $0x1,%r9d
1800510d9:	74 1e                	je     0x1800510f9
1800510db:	41 83 e9 03          	sub    $0x3,%r9d
1800510df:	74 11                	je     0x1800510f2
1800510e1:	41 83 f9 0e          	cmp    $0xe,%r9d
1800510e5:	0f 85 83 00 00 00    	jne    0x18005116e
1800510eb:	bb a8 00 00 00       	mov    $0xa8,%ebx
1800510f0:	eb 1a                	jmp    0x18005110c
1800510f2:	bb b8 00 00 00       	mov    $0xb8,%ebx
1800510f7:	eb 13                	jmp    0x18005110c
1800510f9:	bb b0 00 00 00       	mov    $0xb0,%ebx
1800510fe:	eb 0c                	jmp    0x18005110c
180051100:	bb 98 00 00 00       	mov    $0x98,%ebx
180051105:	eb 05                	jmp    0x18005110c
180051107:	bb a0 00 00 00       	mov    $0xa0,%ebx
18005110c:	48 8b 0c 0b          	mov    (%rbx,%rcx,1),%rcx
180051110:	48 85 c9             	test   %rcx,%rcx
180051113:	74 05                	je     0x18005111a
180051115:	e8 42 58 ff ff       	call   0x18004695c
18005111a:	48 89 34 3b          	mov    %rsi,(%rbx,%rdi,1)
18005111e:	33 f6                	xor    %esi,%esi
180051120:	85 ed                	test   %ebp,%ebp
180051122:	74 42                	je     0x180051166
180051124:	83 fd 13             	cmp    $0x13,%ebp
180051127:	75 52                	jne    0x18005117b
180051129:	33 d2                	xor    %edx,%edx
18005112b:	44 8d 46 40          	lea    0x40(%rsi),%r8d
18005112f:	48 8d 4f 58          	lea    0x58(%rdi),%rcx
180051133:	e8 48 4b 0e 00       	call   0x180135c80
180051138:	4c 8b 8f a8 00 00 00 	mov    0xa8(%rdi),%r9
18005113f:	4d 85 c9             	test   %r9,%r9
180051142:	74 37                	je     0x18005117b
180051144:	41 8b 51 08          	mov    0x8(%r9),%edx
180051148:	8d 46 04             	lea    0x4(%rsi),%eax
18005114b:	3b d0                	cmp    %eax,%edx
18005114d:	48 8d 4f 58          	lea    0x58(%rdi),%rcx
180051151:	0f 42 c2             	cmovb  %edx,%eax
180051154:	49 8d 51 0c          	lea    0xc(%r9),%rdx
180051158:	44 8b c0             	mov    %eax,%r8d
18005115b:	49 c1 e0 04          	shl    $0x4,%r8
18005115f:	e8 5c 48 0e 00       	call   0x1801359c0
180051164:	eb 15                	jmp    0x18005117b
180051166:	48 8b cf             	mov    %rdi,%rcx
180051169:	e8 26 00 00 00       	call   0x180051194
18005116e:	48 85 f6             	test   %rsi,%rsi
180051171:	74 08                	je     0x18005117b
180051173:	48 8b ce             	mov    %rsi,%rcx
180051176:	e8 e1 57 ff ff       	call   0x18004695c
18005117b:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180051180:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
180051185:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
18005118a:	48 83 c4 20          	add    $0x20,%rsp
18005118e:	5f                   	pop    %rdi
18005118f:	c3                   	ret
180051190:	cc                   	int3
180051191:	cc                   	int3
180051192:	cc                   	int3
180051193:	cc                   	int3
180051194:	48 8b c4             	mov    %rsp,%rax
180051197:	48 89 58 10          	mov    %rbx,0x10(%rax)
18005119b:	48 89 70 18          	mov    %rsi,0x18(%rax)
18005119f:	48 89 78 20          	mov    %rdi,0x20(%rax)
1800511a3:	55                   	push   %rbp
1800511a4:	41 56                	push   %r14
1800511a6:	41 57                	push   %r15
1800511a8:	48 8d 68 a1          	lea    -0x5f(%rax),%rbp
1800511ac:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
1800511b3:	48 8b 05 b6 b7 11 00 	mov    0x11b7b6(%rip),%rax        # 0x18016c970
1800511ba:	48 33 c4             	xor    %rsp,%rax
1800511bd:	48 89 45 37          	mov    %rax,0x37(%rbp)
1800511c1:	48 8b 99 a0 00 00 00 	mov    0xa0(%rcx),%rbx
1800511c8:	4c 8b f9             	mov    %rcx,%r15
1800511cb:	33 f6                	xor    %esi,%esi
1800511cd:	33 d2                	xor    %edx,%edx
1800511cf:	8b 43 0c             	mov    0xc(%rbx),%eax
1800511d2:	89 45 c7             	mov    %eax,-0x39(%rbp)
1800511d5:	44 8d 46 40          	lea    0x40(%rsi),%r8d
1800511d9:	8b 43 10             	mov    0x10(%rbx),%eax
1800511dc:	89 45 cb             	mov    %eax,-0x35(%rbp)
1800511df:	8b 43 14             	mov    0x14(%rbx),%eax
1800511e2:	89 45 cf             	mov    %eax,-0x31(%rbp)
1800511e5:	8b 43 18             	mov    0x18(%rbx),%eax
1800511e8:	89 45 d3             	mov    %eax,-0x2d(%rbp)
1800511eb:	48 8d 41 18          	lea    0x18(%rcx),%rax
1800511ef:	48 89 45 d7          	mov    %rax,-0x29(%rbp)
1800511f3:	48 8d 41 28          	lea    0x28(%rcx),%rax
1800511f7:	48 89 45 df          	mov    %rax,-0x21(%rbp)
1800511fb:	48 8d 41 38          	lea    0x38(%rcx),%rax
1800511ff:	48 89 45 e7          	mov    %rax,-0x19(%rbp)
180051203:	48 8d 41 48          	lea    0x48(%rcx),%rax
180051207:	48 8d 4d f7          	lea    -0x9(%rbp),%rcx
18005120b:	48 89 45 ef          	mov    %rax,-0x11(%rbp)
18005120f:	e8 6c 4a 0e 00       	call   0x180135c80
180051214:	44 8b 73 04          	mov    0x4(%rbx),%r14d
180051218:	48 8d 7d c7          	lea    -0x39(%rbp),%rdi
18005121c:	41 ff ce             	dec    %r14d
18005121f:	33 db                	xor    %ebx,%ebx
180051221:	8b 0f                	mov    (%rdi),%ecx
180051223:	83 f9 24             	cmp    $0x24,%ecx
180051226:	72 24                	jb     0x18005124c
180051228:	41 3b ce             	cmp    %r14d,%ecx
18005122b:	77 1f                	ja     0x18005124c
18005122d:	49 03 8f a0 00 00 00 	add    0xa0(%r15),%rcx
180051234:	48 8d 55 f7          	lea    -0x9(%rbp),%rdx
180051238:	8b c3                	mov    %ebx,%eax
18005123a:	48 c1 e0 04          	shl    $0x4,%rax
18005123e:	48 03 d0             	add    %rax,%rdx
180051241:	e8 fa eb fe ff       	call   0x18003fe40
180051246:	8b f0                	mov    %eax,%esi
180051248:	85 c0                	test   %eax,%eax
18005124a:	78 46                	js     0x180051292
18005124c:	ff c3                	inc    %ebx
18005124e:	48 83 c7 04          	add    $0x4,%rdi
180051252:	83 fb 04             	cmp    $0x4,%ebx
180051255:	72 ca                	jb     0x180051221
180051257:	48 8d 55 d7          	lea    -0x29(%rbp),%rdx
18005125b:	41 b9 04 00 00 00    	mov    $0x4,%r9d
180051261:	4c 8d 45 f7          	lea    -0x9(%rbp),%r8
180051265:	48 8d 4d c7          	lea    -0x39(%rbp),%rcx
180051269:	8b 01                	mov    (%rcx),%eax
18005126b:	83 f8 24             	cmp    $0x24,%eax
18005126e:	72 10                	jb     0x180051280
180051270:	41 3b c6             	cmp    %r14d,%eax
180051273:	77 0b                	ja     0x180051280
180051275:	48 8b 02             	mov    (%rdx),%rax
180051278:	41 0f 10 00          	movups (%r8),%xmm0
18005127c:	f3 0f 7f 00          	movdqu %xmm0,(%rax)
180051280:	48 83 c1 04          	add    $0x4,%rcx
180051284:	49 83 c0 10          	add    $0x10,%r8
180051288:	48 83 c2 08          	add    $0x8,%rdx
18005128c:	49 83 e9 01          	sub    $0x1,%r9
180051290:	75 d7                	jne    0x180051269
180051292:	8b c6                	mov    %esi,%eax
180051294:	48 8b 4d 37          	mov    0x37(%rbp),%rcx
180051298:	48 33 cc             	xor    %rsp,%rcx
18005129b:	e8 8c 48 fc ff       	call   0x180015b2c
1800512a0:	4c 8d 9c 24 a0 00 00 	lea    0xa0(%rsp),%r11
1800512a7:	00
1800512a8:	49 8b 5b 28          	mov    0x28(%r11),%rbx
1800512ac:	49 8b 73 30          	mov    0x30(%r11),%rsi
1800512b0:	49 8b 7b 38          	mov    0x38(%r11),%rdi
1800512b4:	49 8b e3             	mov    %r11,%rsp
1800512b7:	41 5f                	pop    %r15
1800512b9:	41 5e                	pop    %r14
1800512bb:	5d                   	pop    %rbp
1800512bc:	c3                   	ret
1800512bd:	cc                   	int3
1800512be:	cc                   	int3
1800512bf:	cc                   	int3
1800512c0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800512c5:	8b 01                	mov    (%rcx),%eax
1800512c7:	4c 8b d9             	mov    %rcx,%r11
1800512ca:	4c 69 c8 ed ff ff 7f 	imul   $0x7fffffed,%rax,%r9
1800512d1:	48 bb 05 00 00 00 02 	movabs $0x200000005,%rbx
1800512d8:	00 00 00
1800512db:	49 81 c1 c3 ff ff 7f 	add    $0x7fffffc3,%r9
1800512e2:	48 8b c3             	mov    %rbx,%rax
1800512e5:	49 f7 e1             	mul    %r9
1800512e8:	4d 8b c1             	mov    %r9,%r8
1800512eb:	48 8b c3             	mov    %rbx,%rax
1800512ee:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
1800512f3:	4c 2b c2             	sub    %rdx,%r8
1800512f6:	49 d1 e8             	shr    $1,%r8
1800512f9:	4c 03 c2             	add    %rdx,%r8
1800512fc:	49 c1 e8 1e          	shr    $0x1e,%r8
180051300:	49 69 c8 ff ff ff 7f 	imul   $0x7fffffff,%r8,%rcx
180051307:	4c 2b c9             	sub    %rcx,%r9
18005130a:	45 8b d1             	mov    %r9d,%r10d
18005130d:	4d 69 c2 ed ff ff 7f 	imul   $0x7fffffed,%r10,%r8
180051314:	49 81 c0 c3 ff ff 7f 	add    $0x7fffffc3,%r8
18005131b:	49 f7 e0             	mul    %r8
18005131e:	49 8b c8             	mov    %r8,%rcx
180051321:	48 8d 05 b8 b2 11 00 	lea    0x11b2b8(%rip),%rax        # 0x18016c5e0
180051328:	48 2b ca             	sub    %rdx,%rcx
18005132b:	48 d1 e9             	shr    $1,%rcx
18005132e:	48 03 ca             	add    %rdx,%rcx
180051331:	48 c1 e9 1e          	shr    $0x1e,%rcx
180051335:	48 69 c9 ff ff ff 7f 	imul   $0x7fffffff,%rcx,%rcx
18005133c:	4c 2b c1             	sub    %rcx,%r8
18005133f:	45 89 03             	mov    %r8d,(%r11)
180051342:	41 83 e0 7f          	and    $0x7f,%r8d
180051346:	46 87 14 80          	xchg   %r10d,(%rax,%r8,4)
18005134a:	41 8b c2             	mov    %r10d,%eax
18005134d:	c3                   	ret
18005134e:	cc                   	int3
18005134f:	cc                   	int3
180051350:	48 8b 41 20          	mov    0x20(%rcx),%rax
180051354:	48 85 c0             	test   %rax,%rax
180051357:	74 06                	je     0x18005135f
180051359:	48 83 c0 58          	add    $0x58,%rax
18005135d:	eb 08                	jmp    0x180051367
18005135f:	48 8b 41 08          	mov    0x8(%rcx),%rax
180051363:	48 83 c0 50          	add    $0x50,%rax
180051367:	8b 40 10             	mov    0x10(%rax),%eax
18005136a:	41 0f af c0          	imul   %r8d,%eax
18005136e:	03 c2                	add    %edx,%eax
180051370:	48 c1 e0 05          	shl    $0x5,%rax
180051374:	48 03 41 30          	add    0x30(%rcx),%rax
180051378:	c3                   	ret
180051379:	cc                   	int3
18005137a:	cc                   	int3
18005137b:	cc                   	int3
18005137c:	48 83 ec 28          	sub    $0x28,%rsp
180051380:	44 0f b6 51 2b       	movzbl 0x2b(%rcx),%r10d
180051385:	45 8b d8             	mov    %r8d,%r11d
180051388:	45 33 c0             	xor    %r8d,%r8d
18005138b:	45 32 c9             	xor    %r9b,%r9b
18005138e:	45 85 d2             	test   %r10d,%r10d
180051391:	74 18                	je     0x1800513ab
180051393:	e8 b8 ff ff ff       	call   0x180051350
180051398:	44 39 58 10          	cmp    %r11d,0x10(%rax)
18005139c:	74 0a                	je     0x1800513a8
18005139e:	41 ff c0             	inc    %r8d
1800513a1:	45 3b c2             	cmp    %r10d,%r8d
1800513a4:	72 ed                	jb     0x180051393
1800513a6:	eb 03                	jmp    0x1800513ab
1800513a8:	41 b1 01             	mov    $0x1,%r9b
1800513ab:	83 c8 ff             	or     $0xffffffff,%eax
1800513ae:	45 84 c9             	test   %r9b,%r9b
1800513b1:	41 0f 45 c0          	cmovne %r8d,%eax
1800513b5:	48 83 c4 28          	add    $0x28,%rsp
1800513b9:	c3                   	ret
1800513ba:	cc                   	int3
1800513bb:	cc                   	int3
1800513bc:	40 53                	rex push %rbx
1800513be:	48 83 ec 20          	sub    $0x20,%rsp
1800513c2:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1800513c6:	33 db                	xor    %ebx,%ebx
1800513c8:	48 8b 81 e8 00 00 00 	mov    0xe8(%rcx),%rax
1800513cf:	eb 0a                	jmp    0x1800513db
1800513d1:	48 8b c8             	mov    %rax,%rcx
1800513d4:	48 8b 80 e8 00 00 00 	mov    0xe8(%rax),%rax
1800513db:	48 85 c0             	test   %rax,%rax
1800513de:	75 f1                	jne    0x1800513d1
1800513e0:	8b 52 04             	mov    0x4(%rdx),%edx
1800513e3:	48 8b 89 e0 00 00 00 	mov    0xe0(%rcx),%rcx
1800513ea:	e8 ed 24 ff ff       	call   0x1800438dc
1800513ef:	48 85 c0             	test   %rax,%rax
1800513f2:	74 04                	je     0x1800513f8
1800513f4:	48 8b 58 08          	mov    0x8(%rax),%rbx
1800513f8:	48 8b c3             	mov    %rbx,%rax
1800513fb:	48 83 c4 20          	add    $0x20,%rsp
1800513ff:	5b                   	pop    %rbx
180051400:	c3                   	ret
180051401:	cc                   	int3
180051402:	cc                   	int3
180051403:	cc                   	int3