140036f40:	49 8b 08             	mov    (%r8),%rcx
140036f43:	48 8b 41 10          	mov    0x10(%rcx),%rax
140036f47:	49 89 00             	mov    %rax,(%r8)
140036f4a:	48 8b 41 10          	mov    0x10(%rcx),%rax
140036f4e:	40 38 70 19          	cmp    %sil,0x19(%rax)
140036f52:	75 04                	jne    0x140036f58
140036f54:	4c 89 40 08          	mov    %r8,0x8(%rax)
140036f58:	49 8b 40 08          	mov    0x8(%r8),%rax
140036f5c:	48 89 41 08          	mov    %rax,0x8(%rcx)
140036f60:	48 8b 07             	mov    (%rdi),%rax
140036f63:	4c 3b 40 08          	cmp    0x8(%rax),%r8
140036f67:	75 06                	jne    0x140036f6f
140036f69:	48 89 48 08          	mov    %rcx,0x8(%rax)
140036f6d:	eb 13                	jmp    0x140036f82
140036f6f:	49 8b 40 08          	mov    0x8(%r8),%rax
140036f73:	4c 3b 40 10          	cmp    0x10(%rax),%r8
140036f77:	75 06                	jne    0x140036f7f
140036f79:	48 89 48 10          	mov    %rcx,0x10(%rax)
140036f7d:	eb 03                	jmp    0x140036f82
140036f7f:	48 89 08             	mov    %rcx,(%rax)
140036f82:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140036f86:	49 89 48 08          	mov    %rcx,0x8(%r8)
140036f8a:	41 c6 41 18 01       	movb   $0x1,0x18(%r9)
140036f8f:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140036f93:	48 85 c9             	test   %rcx,%rcx
140036f96:	74 07                	je     0x140036f9f
140036f98:	48 ff c9             	dec    %rcx
140036f9b:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
140036f9f:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
140036fa4:	48 8b c3             	mov    %rbx,%rax
140036fa7:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140036fac:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
140036fb1:	c3                   	ret
140036fb2:	90                   	nop
140036fb3:	90                   	nop
140036fb4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140036fb9:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140036fbe:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140036fc3:	41 56                	push   %r14
140036fc5:	48 83 ec 30          	sub    $0x30,%rsp
140036fc9:	4c 8b f2             	mov    %rdx,%r14
140036fcc:	48 8b d9             	mov    %rcx,%rbx
140036fcf:	b9 98 00 00 00       	mov    $0x98,%ecx
140036fd4:	ff 15 ee 58 ad 00    	call   *0xad58ee(%rip)        # 0x140b0c8c8
140036fda:	48 8b f8             	mov    %rax,%rdi
140036fdd:	48 89 44 24 50       	mov    %rax,0x50(%rsp)
140036fe2:	48 85 c0             	test   %rax,%rax
140036fe5:	75 07                	jne    0x140036fee
140036fe7:	ff 15 ab 54 ad 00    	call   *0xad54ab(%rip)        # 0x140b0c498
140036fed:	90                   	nop
140036fee:	b8 01 00 00 00       	mov    $0x1,%eax
140036ff3:	89 47 08             	mov    %eax,0x8(%rdi)
140036ff6:	89 47 0c             	mov    %eax,0xc(%rdi)
140036ff9:	48 8d 05 30 ea ad 00 	lea    0xadea30(%rip),%rax        # 0x140b15a30
140037000:	48 89 07             	mov    %rax,(%rdi)
140037003:	48 8d 77 10          	lea    0x10(%rdi),%rsi
140037007:	49 8b d6             	mov    %r14,%rdx
14003700a:	48 8b ce             	mov    %rsi,%rcx
14003700d:	e8 96 e5 ff ff       	call   0x1400355a8
140037012:	48 89 33             	mov    %rsi,(%rbx)
140037015:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140037019:	48 8b c3             	mov    %rbx,%rax
14003701c:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140037021:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140037026:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
14003702b:	48 83 c4 30          	add    $0x30,%rsp
14003702f:	41 5e                	pop    %r14
140037031:	c3                   	ret
140037032:	90                   	nop
140037033:	90                   	nop
140037034:	48 8b c4             	mov    %rsp,%rax
140037037:	48 89 58 08          	mov    %rbx,0x8(%rax)
14003703b:	48 89 68 10          	mov    %rbp,0x10(%rax)
14003703f:	48 89 70 18          	mov    %rsi,0x18(%rax)
140037043:	48 89 78 20          	mov    %rdi,0x20(%rax)
140037047:	41 56                	push   %r14
140037049:	48 83 ec 50          	sub    $0x50,%rsp
14003704d:	4d 8b f0             	mov    %r8,%r14
140037050:	48 8b fa             	mov    %rdx,%rdi
140037053:	48 8b f1             	mov    %rcx,%rsi
140037056:	48 8b 29             	mov    (%rcx),%rbp
140037059:	48 8b 45 08          	mov    0x8(%rbp),%rax
14003705d:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140037062:	33 db                	xor    %ebx,%ebx
140037064:	89 5c 24 38          	mov    %ebx,0x38(%rsp)
140037068:	4c 8b cd             	mov    %rbp,%r9
14003706b:	38 58 19             	cmp    %bl,0x19(%rax)
14003706e:	75 2a                	jne    0x14003709a
140037070:	41 8b 08             	mov    (%r8),%ecx
140037073:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140037078:	39 48 1c             	cmp    %ecx,0x1c(%rax)
14003707b:	7d 0a                	jge    0x140037087
14003707d:	89 5c 24 38          	mov    %ebx,0x38(%rsp)
140037081:	48 8b 40 10          	mov    0x10(%rax),%rax
140037085:	eb 0e                	jmp    0x140037095
140037087:	c7 44 24 38 01 00 00 	movl   $0x1,0x38(%rsp)
14003708e:	00
14003708f:	4c 8b c8             	mov    %rax,%r9
140037092:	48 8b 00             	mov    (%rax),%rax
140037095:	38 58 19             	cmp    %bl,0x19(%rax)
140037098:	74 d9                	je     0x140037073
14003709a:	41 38 59 19          	cmp    %bl,0x19(%r9)
14003709e:	75 09                	jne    0x1400370a9
1400370a0:	41 8b 41 1c          	mov    0x1c(%r9),%eax
1400370a4:	41 39 00             	cmp    %eax,(%r8)
1400370a7:	7d 68                	jge    0x140037111
1400370a9:	48 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%rax
1400370b0:	ff ff 07
1400370b3:	48 39 46 08          	cmp    %rax,0x8(%rsi)
1400370b7:	74 7c                	je     0x140037135
1400370b9:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1400370be:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
1400370c3:	b9 20 00 00 00       	mov    $0x20,%ecx
1400370c8:	ff 15 fa 57 ad 00    	call   *0xad57fa(%rip)        # 0x140b0c8c8
1400370ce:	4c 8b c0             	mov    %rax,%r8
1400370d1:	48 85 c0             	test   %rax,%rax
1400370d4:	75 07                	jne    0x1400370dd
1400370d6:	ff 15 bc 53 ad 00    	call   *0xad53bc(%rip)        # 0x140b0c498
1400370dc:	90                   	nop
1400370dd:	41 8b 06             	mov    (%r14),%eax
1400370e0:	41 89 40 1c          	mov    %eax,0x1c(%r8)
1400370e4:	49 89 28             	mov    %rbp,(%r8)
1400370e7:	49 89 68 08          	mov    %rbp,0x8(%r8)
1400370eb:	49 89 68 10          	mov    %rbp,0x10(%r8)
1400370ef:	66 41 89 58 18       	mov    %bx,0x18(%r8)
1400370f4:	0f 10 44 24 30       	movups 0x30(%rsp),%xmm0
1400370f9:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
1400370ff:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140037104:	48 8b ce             	mov    %rsi,%rcx
140037107:	e8 d4 fd fc ff       	call   0x140006ee0
14003710c:	4c 8b c8             	mov    %rax,%r9
14003710f:	b3 01                	mov    $0x1,%bl
140037111:	4c 89 0f             	mov    %r9,(%rdi)
140037114:	88 5f 08             	mov    %bl,0x8(%rdi)
140037117:	48 8b c7             	mov    %rdi,%rax
14003711a:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14003711f:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140037124:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140037129:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
14003712e:	48 83 c4 50          	add    $0x50,%rsp
140037132:	41 5e                	pop    %r14
140037134:	c3                   	ret
140037135:	e8 9a cc fc ff       	call   0x140003dd4
14003713a:	cc                   	int3
14003713b:	90                   	nop
14003713c:	48 8b c4             	mov    %rsp,%rax
14003713f:	48 89 58 08          	mov    %rbx,0x8(%rax)
140037143:	48 89 68 10          	mov    %rbp,0x10(%rax)
140037147:	48 89 70 18          	mov    %rsi,0x18(%rax)
14003714b:	48 89 78 20          	mov    %rdi,0x20(%rax)
14003714f:	41 56                	push   %r14
140037151:	48 83 ec 20          	sub    $0x20,%rsp
140037155:	49 8b f8             	mov    %r8,%rdi
140037158:	48 8b f1             	mov    %rcx,%rsi
14003715b:	48 8b 09             	mov    (%rcx),%rcx
14003715e:	4c 8b f2             	mov    %rdx,%r14
140037161:	4c 8b 46 10          	mov    0x10(%rsi),%r8
140037165:	4c 2b c1             	sub    %rcx,%r8
140037168:	49 c1 f8 04          	sar    $0x4,%r8
14003716c:	49 3b f8             	cmp    %r8,%rdi
14003716f:	0f 86 82 00 00 00    	jbe    0x1400371f7
140037175:	48 bb ff ff ff ff ff 	movabs $0xfffffffffffffff,%rbx
14003717c:	ff ff 0f
14003717f:	48 3b fb             	cmp    %rbx,%rdi
140037182:	0f 87 e1 00 00 00    	ja     0x140037269
140037188:	49 8b d0             	mov    %r8,%rdx
14003718b:	48 8b c3             	mov    %rbx,%rax
14003718e:	48 d1 ea             	shr    $1,%rdx
140037191:	48 2b c2             	sub    %rdx,%rax
140037194:	4c 3b c0             	cmp    %rax,%r8
140037197:	77 0b                	ja     0x1400371a4
140037199:	4a 8d 1c 02          	lea    (%rdx,%r8,1),%rbx
14003719d:	48 3b df             	cmp    %rdi,%rbx
1400371a0:	48 0f 42 df          	cmovb  %rdi,%rbx
1400371a4:	33 ed                	xor    %ebp,%ebp
1400371a6:	48 85 c9             	test   %rcx,%rcx
1400371a9:	74 32                	je     0x1400371dd
1400371ab:	49 c1 e0 04          	shl    $0x4,%r8
1400371af:	49 81 f8 00 10 00 00 	cmp    $0x1000,%r8
1400371b6:	72 14                	jb     0x1400371cc
1400371b8:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
1400371bc:	48 2b ca             	sub    %rdx,%rcx
1400371bf:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
1400371c3:	48 83 f8 1f          	cmp    $0x1f,%rax
1400371c7:	77 27                	ja     0x1400371f0
1400371c9:	48 8b ca             	mov    %rdx,%rcx
1400371cc:	ff 15 ee 56 ad 00    	call   *0xad56ee(%rip)        # 0x140b0c8c0
1400371d2:	48 89 2e             	mov    %rbp,(%rsi)
1400371d5:	48 89 6e 08          	mov    %rbp,0x8(%rsi)
1400371d9:	48 89 6e 10          	mov    %rbp,0x10(%rsi)
1400371dd:	48 8b d3             	mov    %rbx,%rdx
1400371e0:	48 8b ce             	mov    %rsi,%rcx
1400371e3:	e8 84 7f fe ff       	call   0x14001f16c
1400371e8:	48 8b 1e             	mov    (%rsi),%rbx
1400371eb:	49 8b d6             	mov    %r14,%rdx
1400371ee:	eb 31                	jmp    0x140037221
1400371f0:	ff 15 a2 57 ad 00    	call   *0xad57a2(%rip)        # 0x140b0c998
1400371f6:	cc                   	int3
1400371f7:	48 8b 6e 08          	mov    0x8(%rsi),%rbp
1400371fb:	48 2b e9             	sub    %rcx,%rbp
1400371fe:	48 c1 fd 04          	sar    $0x4,%rbp
140037202:	48 3b fd             	cmp    %rbp,%rdi
140037205:	76 33                	jbe    0x14003723a
140037207:	48 8b dd             	mov    %rbp,%rbx
14003720a:	48 c1 e3 04          	shl    $0x4,%rbx
14003720e:	4c 8b c3             	mov    %rbx,%r8
140037211:	e8 50 92 ab 00       	call   0x140af0466
140037216:	49 8d 14 1e          	lea    (%r14,%rbx,1),%rdx
14003721a:	48 2b fd             	sub    %rbp,%rdi
14003721d:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
140037221:	48 c1 e7 04          	shl    $0x4,%rdi
140037225:	48 8b cb             	mov    %rbx,%rcx
140037228:	4c 8b c7             	mov    %rdi,%r8
14003722b:	e8 36 92 ab 00       	call   0x140af0466
140037230:	48 8d 04 3b          	lea    (%rbx,%rdi,1),%rax
140037234:	48 89 46 08          	mov    %rax,0x8(%rsi)
140037238:	eb 14                	jmp    0x14003724e
14003723a:	48 c1 e7 04          	shl    $0x4,%rdi
14003723e:	4c 8b c7             	mov    %rdi,%r8
140037241:	48 8d 1c 39          	lea    (%rcx,%rdi,1),%rbx
140037245:	e8 1c 92 ab 00       	call   0x140af0466
14003724a:	48 89 5e 08          	mov    %rbx,0x8(%rsi)
14003724e:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140037253:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140037258:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14003725d:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140037262:	48 83 c4 20          	add    $0x20,%rsp
140037266:	41 5e                	pop    %r14
140037268:	c3                   	ret
140037269:	e8 fa 4a fe ff       	call   0x14001bd68
14003726e:	cc                   	int3
14003726f:	90                   	nop
140037270:	48 83 ec 28          	sub    $0x28,%rsp
140037274:	48 8b 09             	mov    (%rcx),%rcx
140037277:	48 85 c9             	test   %rcx,%rcx
14003727a:	74 05                	je     0x140037281
14003727c:	e8 07 f8 ff ff       	call   0x140036a88
140037281:	48 83 c4 28          	add    $0x28,%rsp
140037285:	c3                   	ret
140037286:	90                   	nop
140037287:	90                   	nop
140037288:	90                   	nop
140037289:	90                   	nop
14003728a:	90                   	nop
14003728b:	90                   	nop
14003728c:	90                   	nop
14003728d:	90                   	nop
14003728e:	90                   	nop
14003728f:	90                   	nop
140037290:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140037295:	57                   	push   %rdi
140037296:	48 83 ec 20          	sub    $0x20,%rsp
14003729a:	48 8d 79 10          	lea    0x10(%rcx),%rdi
14003729e:	48 8d 5f 78          	lea    0x78(%rdi),%rbx
1400372a2:	4c 8b 03             	mov    (%rbx),%r8
1400372a5:	48 8b d3             	mov    %rbx,%rdx
1400372a8:	48 8b cb             	mov    %rbx,%rcx
1400372ab:	4d 8b 40 08          	mov    0x8(%r8),%r8
1400372af:	e8 3c 05 00 00       	call   0x1400377f0
1400372b4:	48 8b 0b             	mov    (%rbx),%rcx
1400372b7:	ff 15 03 56 ad 00    	call   *0xad5603(%rip)        # 0x140b0c8c0
1400372bd:	48 8b cf             	mov    %rdi,%rcx
1400372c0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400372c5:	48 83 c4 20          	add    $0x20,%rsp
1400372c9:	5f                   	pop    %rdi
1400372ca:	e9 3d e3 ff ff       	jmp    0x14003560c
1400372cf:	cc                   	int3
1400372d0:	40 53                	rex push %rbx
1400372d2:	48 83 ec 20          	sub    $0x20,%rsp
1400372d6:	48 8d 05 53 e7 ad 00 	lea    0xade753(%rip),%rax        # 0x140b15a30
1400372dd:	48 8b d9             	mov    %rcx,%rbx
1400372e0:	48 89 01             	mov    %rax,(%rcx)
1400372e3:	f6 c2 01             	test   $0x1,%dl
1400372e6:	74 05                	je     0x1400372ed
1400372e8:	e8 e7 82 ab 00       	call   0x140aef5d4
1400372ed:	48 8b c3             	mov    %rbx,%rax
1400372f0:	48 83 c4 20          	add    $0x20,%rsp
1400372f4:	5b                   	pop    %rbx
1400372f5:	c3                   	ret
1400372f6:	90                   	nop
1400372f7:	90                   	nop
1400372f8:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1400372fd:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
140037302:	57                   	push   %rdi
140037303:	41 54                	push   %r12
140037305:	41 55                	push   %r13
140037307:	41 56                	push   %r14
140037309:	41 57                	push   %r15
14003730b:	48 83 ec 20          	sub    $0x20,%rsp
14003730f:	4d 8b e8             	mov    %r8,%r13
140037312:	4c 8b e2             	mov    %rdx,%r12
140037315:	48 8b f1             	mov    %rcx,%rsi
140037318:	4c 8b fa             	mov    %rdx,%r15
14003731b:	4c 2b 39             	sub    (%rcx),%r15
14003731e:	4c 8b 71 08          	mov    0x8(%rcx),%r14
140037322:	4c 2b 31             	sub    (%rcx),%r14
140037325:	49 c1 fe 04          	sar    $0x4,%r14
140037329:	49 b8 ff ff ff ff ff 	movabs $0xfffffffffffffff,%r8
140037330:	ff ff 0f
140037333:	4d 3b f0             	cmp    %r8,%r14
140037336:	0f 84 4a 01 00 00    	je     0x140037486
14003733c:	49 ff c6             	inc    %r14
14003733f:	48 8b 49 10          	mov    0x10(%rcx),%rcx
140037343:	48 2b 0e             	sub    (%rsi),%rcx
140037346:	48 c1 f9 04          	sar    $0x4,%rcx
14003734a:	48 8b d1             	mov    %rcx,%rdx
14003734d:	48 d1 ea             	shr    $1,%rdx
140037350:	49 8b c0             	mov    %r8,%rax
140037353:	48 2b c2             	sub    %rdx,%rax
140037356:	48 3b c8             	cmp    %rax,%rcx
140037359:	76 05                	jbe    0x140037360
14003735b:	49 8b d8             	mov    %r8,%rbx
14003735e:	eb 0b                	jmp    0x14003736b
140037360:	48 8d 1c 0a          	lea    (%rdx,%rcx,1),%rbx
140037364:	49 3b de             	cmp    %r14,%rbx
140037367:	49 0f 42 de          	cmovb  %r14,%rbx
14003736b:	48 89 5c 24 58       	mov    %rbx,0x58(%rsp)
140037370:	49 3b d8             	cmp    %r8,%rbx
140037373:	0f 87 07 01 00 00    	ja     0x140037480
140037379:	48 c1 e3 04          	shl    $0x4,%rbx
14003737d:	48 85 db             	test   %rbx,%rbx
140037380:	75 2c                	jne    0x1400373ae
140037382:	33 ff                	xor    %edi,%edi
140037384:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
140037389:	49 83 e7 f0          	and    $0xfffffffffffffff0,%r15
14003738d:	4c 03 ff             	add    %rdi,%r15
140037390:	41 0f 10 45 00       	movups 0x0(%r13),%xmm0
140037395:	f3 41 0f 7f 07       	movdqu %xmm0,(%r15)
14003739a:	4c 8b 46 08          	mov    0x8(%rsi),%r8
14003739e:	48 8b 16             	mov    (%rsi),%rdx
1400373a1:	48 8b cf             	mov    %rdi,%rcx
1400373a4:	4d 3b e0             	cmp    %r8,%r12
1400373a7:	75 4c                	jne    0x1400373f5
1400373a9:	4c 2b c2             	sub    %rdx,%r8
1400373ac:	eb 60                	jmp    0x14003740e
1400373ae:	48 81 fb 00 10 00 00 	cmp    $0x1000,%rbx
1400373b5:	72 26                	jb     0x1400373dd
1400373b7:	48 8d 4b 27          	lea    0x27(%rbx),%rcx
1400373bb:	48 3b cb             	cmp    %rbx,%rcx
1400373be:	0f 86 bc 00 00 00    	jbe    0x140037480
1400373c4:	ff 15 fe 54 ad 00    	call   *0xad54fe(%rip)        # 0x140b0c8c8
1400373ca:	48 85 c0             	test   %rax,%rax
1400373cd:	74 1f                	je     0x1400373ee
1400373cf:	48 8d 78 27          	lea    0x27(%rax),%rdi
1400373d3:	48 83 e7 e0          	and    $0xffffffffffffffe0,%rdi
1400373d7:	48 89 47 f8          	mov    %rax,-0x8(%rdi)
1400373db:	eb a7                	jmp    0x140037384
1400373dd:	48 8b cb             	mov    %rbx,%rcx
1400373e0:	ff 15 e2 54 ad 00    	call   *0xad54e2(%rip)        # 0x140b0c8c8
1400373e6:	48 8b f8             	mov    %rax,%rdi