140adef0f:	49 2b c8             	sub    %r8,%rcx
140adef12:	48 c1 f9 03          	sar    $0x3,%rcx
140adef16:	49 0f af c9          	imul   %r9,%rcx
140adef1a:	48 3b d1             	cmp    %rcx,%rdx
140adef1d:	73 27                	jae    0x140adef46
140adef1f:	48 8d 04 52          	lea    (%rdx,%rdx,2),%rax
140adef23:	49 8d 2c c0          	lea    (%r8,%rax,8),%rbp
140adef27:	48 8b f5             	mov    %rbp,%rsi
140adef2a:	48 3b eb             	cmp    %rbx,%rbp
140adef2d:	74 11                	je     0x140adef40
140adef2f:	48 8b ce             	mov    %rsi,%rcx
140adef32:	e8 25 e8 57 ff       	call   0x14005d75c
140adef37:	48 83 c6 18          	add    $0x18,%rsi
140adef3b:	48 3b f3             	cmp    %rbx,%rsi
140adef3e:	75 ef                	jne    0x140adef2f
140adef40:	48 89 6f 08          	mov    %rbp,0x8(%rdi)
140adef44:	eb 40                	jmp    0x140adef86
140adef46:	76 3e                	jbe    0x140adef86
140adef48:	48 8b 47 10          	mov    0x10(%rdi),%rax
140adef4c:	49 2b c0             	sub    %r8,%rax
140adef4f:	48 c1 f8 03          	sar    $0x3,%rax
140adef53:	49 0f af c1          	imul   %r9,%rax
140adef57:	48 3b d0             	cmp    %rax,%rdx
140adef5a:	76 0a                	jbe    0x140adef66
140adef5c:	48 8b cf             	mov    %rdi,%rcx
140adef5f:	e8 e8 0a 00 00       	call   0x140adfa4c
140adef64:	eb 20                	jmp    0x140adef86
140adef66:	48 2b d1             	sub    %rcx,%rdx
140adef69:	74 17                	je     0x140adef82
140adef6b:	33 c0                	xor    %eax,%eax
140adef6d:	48 89 03             	mov    %rax,(%rbx)
140adef70:	48 89 43 08          	mov    %rax,0x8(%rbx)
140adef74:	48 89 43 10          	mov    %rax,0x10(%rbx)
140adef78:	48 83 c3 18          	add    $0x18,%rbx
140adef7c:	48 83 ea 01          	sub    $0x1,%rdx
140adef80:	75 eb                	jne    0x140adef6d
140adef82:	48 89 5f 08          	mov    %rbx,0x8(%rdi)
140adef86:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140adef8b:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140adef90:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140adef95:	48 83 c4 20          	add    $0x20,%rsp
140adef99:	5f                   	pop    %rdi
140adef9a:	c3                   	ret
140adef9b:	90                   	nop
140adef9c:	e9 a7 00 00 00       	jmp    0x140adf048
140adefa1:	90                   	nop
140adefa2:	90                   	nop
140adefa3:	90                   	nop
140adefa4:	e9 37 01 00 00       	jmp    0x140adf0e0
140adefa9:	90                   	nop
140adefaa:	90                   	nop
140adefab:	90                   	nop
140adefac:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140adefb1:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140adefb6:	57                   	push   %rdi
140adefb7:	48 83 ec 20          	sub    $0x20,%rsp
140adefbb:	48 8b 19             	mov    (%rcx),%rbx
140adefbe:	48 8b f9             	mov    %rcx,%rdi
140adefc1:	48 85 db             	test   %rbx,%rbx
140adefc4:	74 6b                	je     0x140adf031
140adefc6:	48 8b 71 08          	mov    0x8(%rcx),%rsi
140adefca:	eb 0c                	jmp    0x140adefd8
140adefcc:	48 8b cb             	mov    %rbx,%rcx
140adefcf:	e8 88 e7 57 ff       	call   0x14005d75c
140adefd4:	48 83 c3 18          	add    $0x18,%rbx
140adefd8:	48 3b de             	cmp    %rsi,%rbx
140adefdb:	75 ef                	jne    0x140adefcc
140adefdd:	48 8b 0f             	mov    (%rdi),%rcx
140adefe0:	48 ba ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rdx
140adefe7:	aa aa aa
140adefea:	48 8b 47 10          	mov    0x10(%rdi),%rax
140adefee:	48 2b c1             	sub    %rcx,%rax
140adeff1:	48 c1 f8 03          	sar    $0x3,%rax
140adeff5:	48 0f af c2          	imul   %rdx,%rax
140adeff9:	48 8d 04 40          	lea    (%rax,%rax,2),%rax
140adeffd:	48 c1 e0 03          	shl    $0x3,%rax
140adf001:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140adf007:	72 14                	jb     0x140adf01d
140adf009:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
140adf00d:	48 2b ca             	sub    %rdx,%rcx
140adf010:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140adf014:	48 83 f8 1f          	cmp    $0x1f,%rax
140adf018:	77 27                	ja     0x140adf041
140adf01a:	48 8b ca             	mov    %rdx,%rcx
140adf01d:	ff 15 9d d8 02 00    	call   *0x2d89d(%rip)        # 0x140b0c8c0
140adf023:	48 83 27 00          	andq   $0x0,(%rdi)
140adf027:	48 83 67 08 00       	andq   $0x0,0x8(%rdi)
140adf02c:	48 83 67 10 00       	andq   $0x0,0x10(%rdi)
140adf031:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140adf036:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140adf03b:	48 83 c4 20          	add    $0x20,%rsp
140adf03f:	5f                   	pop    %rdi
140adf040:	c3                   	ret
140adf041:	ff 15 51 d9 02 00    	call   *0x2d951(%rip)        # 0x140b0c998
140adf047:	cc                   	int3
140adf048:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140adf04d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140adf052:	57                   	push   %rdi
140adf053:	48 83 ec 20          	sub    $0x20,%rsp
140adf057:	48 8b 19             	mov    (%rcx),%rbx
140adf05a:	48 8b f9             	mov    %rcx,%rdi
140adf05d:	48 85 db             	test   %rbx,%rbx
140adf060:	74 67                	je     0x140adf0c9
140adf062:	48 8b 71 08          	mov    0x8(%rcx),%rsi
140adf066:	eb 0c                	jmp    0x140adf074
140adf068:	48 8b cb             	mov    %rbx,%rcx
140adf06b:	e8 fc e1 ff ff       	call   0x140add26c
140adf070:	48 83 c3 68          	add    $0x68,%rbx
140adf074:	48 3b de             	cmp    %rsi,%rbx
140adf077:	75 ef                	jne    0x140adf068
140adf079:	48 8b 0f             	mov    (%rdi),%rcx
140adf07c:	48 ba c5 4e ec c4 4e 	movabs $0x4ec4ec4ec4ec4ec5,%rdx
140adf083:	ec c4 4e
140adf086:	48 8b 47 10          	mov    0x10(%rdi),%rax
140adf08a:	48 2b c1             	sub    %rcx,%rax
140adf08d:	48 c1 f8 03          	sar    $0x3,%rax
140adf091:	48 0f af c2          	imul   %rdx,%rax
140adf095:	48 6b c0 68          	imul   $0x68,%rax,%rax
140adf099:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140adf09f:	72 14                	jb     0x140adf0b5
140adf0a1:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
140adf0a5:	48 2b ca             	sub    %rdx,%rcx
140adf0a8:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140adf0ac:	48 83 f8 1f          	cmp    $0x1f,%rax
140adf0b0:	77 27                	ja     0x140adf0d9
140adf0b2:	48 8b ca             	mov    %rdx,%rcx
140adf0b5:	ff 15 05 d8 02 00    	call   *0x2d805(%rip)        # 0x140b0c8c0
140adf0bb:	48 83 27 00          	andq   $0x0,(%rdi)
140adf0bf:	48 83 67 08 00       	andq   $0x0,0x8(%rdi)
140adf0c4:	48 83 67 10 00       	andq   $0x0,0x10(%rdi)
140adf0c9:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140adf0ce:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140adf0d3:	48 83 c4 20          	add    $0x20,%rsp
140adf0d7:	5f                   	pop    %rdi
140adf0d8:	c3                   	ret
140adf0d9:	ff 15 b9 d8 02 00    	call   *0x2d8b9(%rip)        # 0x140b0c998
140adf0df:	cc                   	int3
140adf0e0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140adf0e5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140adf0ea:	57                   	push   %rdi
140adf0eb:	48 83 ec 20          	sub    $0x20,%rsp
140adf0ef:	48 8b 19             	mov    (%rcx),%rbx
140adf0f2:	48 8b f9             	mov    %rcx,%rdi
140adf0f5:	48 85 db             	test   %rbx,%rbx
140adf0f8:	74 67                	je     0x140adf161
140adf0fa:	48 8b 71 08          	mov    0x8(%rcx),%rsi
140adf0fe:	eb 0c                	jmp    0x140adf10c
140adf100:	48 8b cb             	mov    %rbx,%rcx
140adf103:	e8 64 e1 ff ff       	call   0x140add26c
140adf108:	48 83 c3 38          	add    $0x38,%rbx
140adf10c:	48 3b de             	cmp    %rsi,%rbx
140adf10f:	75 ef                	jne    0x140adf100
140adf111:	48 8b 0f             	mov    (%rdi),%rcx
140adf114:	48 ba b7 6d db b6 6d 	movabs $0x6db6db6db6db6db7,%rdx
140adf11b:	db b6 6d
140adf11e:	48 8b 47 10          	mov    0x10(%rdi),%rax
140adf122:	48 2b c1             	sub    %rcx,%rax
140adf125:	48 c1 f8 03          	sar    $0x3,%rax
140adf129:	48 0f af c2          	imul   %rdx,%rax
140adf12d:	48 6b c0 38          	imul   $0x38,%rax,%rax
140adf131:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140adf137:	72 14                	jb     0x140adf14d
140adf139:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
140adf13d:	48 2b ca             	sub    %rdx,%rcx
140adf140:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140adf144:	48 83 f8 1f          	cmp    $0x1f,%rax
140adf148:	77 27                	ja     0x140adf171
140adf14a:	48 8b ca             	mov    %rdx,%rcx
140adf14d:	ff 15 6d d7 02 00    	call   *0x2d76d(%rip)        # 0x140b0c8c0
140adf153:	48 83 27 00          	andq   $0x0,(%rdi)
140adf157:	48 83 67 08 00       	andq   $0x0,0x8(%rdi)
140adf15c:	48 83 67 10 00       	andq   $0x0,0x10(%rdi)
140adf161:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140adf166:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140adf16b:	48 83 c4 20          	add    $0x20,%rsp
140adf16f:	5f                   	pop    %rdi
140adf170:	c3                   	ret
140adf171:	ff 15 21 d8 02 00    	call   *0x2d821(%rip)        # 0x140b0c998
140adf177:	cc                   	int3
140adf178:	48 8b c4             	mov    %rsp,%rax
140adf17b:	48 89 58 08          	mov    %rbx,0x8(%rax)
140adf17f:	48 89 68 10          	mov    %rbp,0x10(%rax)
140adf183:	48 89 70 18          	mov    %rsi,0x18(%rax)
140adf187:	48 89 78 20          	mov    %rdi,0x20(%rax)
140adf18b:	41 54                	push   %r12
140adf18d:	41 56                	push   %r14
140adf18f:	41 57                	push   %r15
140adf191:	48 83 ec 40          	sub    $0x40,%rsp
140adf195:	49 8b f0             	mov    %r8,%rsi
140adf198:	48 8b fa             	mov    %rdx,%rdi
140adf19b:	4c 8b f9             	mov    %rcx,%r15
140adf19e:	4c 8b 31             	mov    (%rcx),%r14
140adf1a1:	48 8b 41 10          	mov    0x10(%rcx),%rax
140adf1a5:	49 2b c6             	sub    %r14,%rax
140adf1a8:	48 c1 f8 03          	sar    $0x3,%rax
140adf1ac:	49 bc ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%r12
140adf1b3:	aa aa aa
140adf1b6:	49 0f af c4          	imul   %r12,%rax
140adf1ba:	4c 3b c0             	cmp    %rax,%r8
140adf1bd:	76 3d                	jbe    0x140adf1fc
140adf1bf:	49 8b d0             	mov    %r8,%rdx
140adf1c2:	e8 8d 05 00 00       	call   0x140adf754
140adf1c7:	49 8b 1f             	mov    (%r15),%rbx
140adf1ca:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf1cf:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf1d4:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140adf1d9:	48 85 f6             	test   %rsi,%rsi
140adf1dc:	74 1c                	je     0x140adf1fa
140adf1de:	48 8b d7             	mov    %rdi,%rdx
140adf1e1:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140adf1e6:	e8 d9 11 00 00       	call   0x140ae03c4
140adf1eb:	48 83 c7 18          	add    $0x18,%rdi
140adf1ef:	48 83 ee 01          	sub    $0x1,%rsi
140adf1f3:	75 e9                	jne    0x140adf1de
140adf1f5:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140adf1fa:	eb 72                	jmp    0x140adf26e
140adf1fc:	48 8b 59 08          	mov    0x8(%rcx),%rbx
140adf200:	48 8b eb             	mov    %rbx,%rbp
140adf203:	49 2b ee             	sub    %r14,%rbp
140adf206:	48 c1 fd 03          	sar    $0x3,%rbp
140adf20a:	49 0f af ec          	imul   %r12,%rbp
140adf20e:	48 3b f5             	cmp    %rbp,%rsi
140adf211:	0f 87 a5 00 00 00    	ja     0x140adf2bc
140adf217:	4b 8d 04 40          	lea    (%r8,%r8,2),%rax
140adf21b:	49 8d 1c c6          	lea    (%r14,%rax,8),%rbx
140adf21f:	48 85 f6             	test   %rsi,%rsi
140adf222:	74 2d                	je     0x140adf251
140adf224:	4c 3b f7             	cmp    %rdi,%r14
140adf227:	74 1a                	je     0x140adf243
140adf229:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140adf22d:	4c 2b 07             	sub    (%rdi),%r8
140adf230:	49 c1 f8 03          	sar    $0x3,%r8
140adf234:	4d 0f af c4          	imul   %r12,%r8
140adf238:	48 8b 17             	mov    (%rdi),%rdx
140adf23b:	49 8b ce             	mov    %r14,%rcx
140adf23e:	e8 11 0f 00 00       	call   0x140ae0154
140adf243:	49 83 c6 18          	add    $0x18,%r14
140adf247:	48 83 c7 18          	add    $0x18,%rdi
140adf24b:	48 83 ee 01          	sub    $0x1,%rsi
140adf24f:	75 d3                	jne    0x140adf224
140adf251:	49 8b 77 08          	mov    0x8(%r15),%rsi
140adf255:	48 8b fb             	mov    %rbx,%rdi
140adf258:	48 3b de             	cmp    %rsi,%rbx
140adf25b:	74 11                	je     0x140adf26e
140adf25d:	48 8b cf             	mov    %rdi,%rcx
140adf260:	e8 f7 e4 57 ff       	call   0x14005d75c
140adf265:	48 83 c7 18          	add    $0x18,%rdi
140adf269:	48 3b fe             	cmp    %rsi,%rdi
140adf26c:	75 ef                	jne    0x140adf25d
140adf26e:	49 89 5f 08          	mov    %rbx,0x8(%r15)
140adf272:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140adf277:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140adf27c:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140adf281:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140adf286:	48 83 c4 40          	add    $0x40,%rsp
140adf28a:	41 5f                	pop    %r15
140adf28c:	41 5e                	pop    %r14
140adf28e:	41 5c                	pop    %r12
140adf290:	c3                   	ret
140adf291:	4c 3b f7             	cmp    %rdi,%r14
140adf294:	74 1a                	je     0x140adf2b0
140adf296:	4c 8b 47 08          	mov    0x8(%rdi),%r8
140adf29a:	4c 2b 07             	sub    (%rdi),%r8
140adf29d:	49 c1 f8 03          	sar    $0x3,%r8
140adf2a1:	4d 0f af c4          	imul   %r12,%r8
140adf2a5:	48 8b 17             	mov    (%rdi),%rdx
140adf2a8:	49 8b ce             	mov    %r14,%rcx
140adf2ab:	e8 a4 0e 00 00       	call   0x140ae0154
140adf2b0:	49 83 c6 18          	add    $0x18,%r14
140adf2b4:	48 83 c7 18          	add    $0x18,%rdi
140adf2b8:	49 8b 5f 08          	mov    0x8(%r15),%rbx
140adf2bc:	4c 3b f3             	cmp    %rbx,%r14
140adf2bf:	75 d0                	jne    0x140adf291
140adf2c1:	48 2b f5             	sub    %rbp,%rsi
140adf2c4:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf2c9:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf2ce:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140adf2d3:	74 1c                	je     0x140adf2f1
140adf2d5:	48 8b d7             	mov    %rdi,%rdx
140adf2d8:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140adf2dd:	e8 e2 10 00 00       	call   0x140ae03c4
140adf2e2:	48 83 c7 18          	add    $0x18,%rdi
140adf2e6:	48 83 ee 01          	sub    $0x1,%rsi
140adf2ea:	75 e9                	jne    0x140adf2d5
140adf2ec:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140adf2f1:	e9 78 ff ff ff       	jmp    0x140adf26e
140adf2f6:	cc                   	int3
140adf2f7:	90                   	nop
140adf2f8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140adf2fd:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140adf302:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140adf307:	57                   	push   %rdi
140adf308:	41 56                	push   %r14
140adf30a:	41 57                	push   %r15
140adf30c:	48 83 ec 40          	sub    $0x40,%rsp
140adf310:	49 8b f8             	mov    %r8,%rdi
140adf313:	48 8b f2             	mov    %rdx,%rsi
140adf316:	4c 8b f1             	mov    %rcx,%r14
140adf319:	48 8b 29             	mov    (%rcx),%rbp
140adf31c:	48 8b 41 10          	mov    0x10(%rcx),%rax
140adf320:	48 2b c5             	sub    %rbp,%rax
140adf323:	48 c1 f8 03          	sar    $0x3,%rax
140adf327:	48 b9 c5 4e ec c4 4e 	movabs $0x4ec4ec4ec4ec4ec5,%rcx
140adf32e:	ec c4 4e
140adf331:	48 0f af c1          	imul   %rcx,%rax
140adf335:	4c 3b c0             	cmp    %rax,%r8
140adf338:	76 40                	jbe    0x140adf37a
140adf33a:	49 8b d0             	mov    %r8,%rdx
140adf33d:	49 8b ce             	mov    %r14,%rcx
140adf340:	e8 0f 05 00 00       	call   0x140adf854
140adf345:	49 8b 1e             	mov    (%r14),%rbx
140adf348:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140adf34d:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140adf352:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140adf357:	48 85 ff             	test   %rdi,%rdi
140adf35a:	74 1c                	je     0x140adf378
140adf35c:	48 8b d6             	mov    %rsi,%rdx
140adf35f:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140adf364:	e8 1b 11 00 00       	call   0x140ae0484
140adf369:	48 83 c6 68          	add    $0x68,%rsi
140adf36d:	48 83 ef 01          	sub    $0x1,%rdi
140adf371:	75 e9                	jne    0x140adf35c
140adf373:	48 8b 5c 24 28       	mov    0x28(%rsp),%rbx
140adf378:	eb 59                	jmp    0x140adf3d3
140adf37a:	49 8b 5e 08          	mov    0x8(%r14),%rbx
140adf37e:	4c 8b fb             	mov    %rbx,%r15
140adf381:	4c 2b fd             	sub    %rbp,%r15
140adf384:	49 c1 ff 03          	sar    $0x3,%r15
140adf388:	4c 0f af f9          	imul   %rcx,%r15
140adf38c:	49 3b ff             	cmp    %r15,%rdi
140adf38f:	77 76                	ja     0x140adf407
140adf391:	48 6b df 68          	imul   $0x68,%rdi,%rbx
140adf395:	48 03 dd             	add    %rbp,%rbx
140adf398:	48 85 ff             	test   %rdi,%rdi
140adf39b:	74 19                	je     0x140adf3b6
140adf39d:	48 8b d6             	mov    %rsi,%rdx
140adf3a0:	48 8b cd             	mov    %rbp,%rcx
140adf3a3:	e8 64 df ff ff       	call   0x140add30c
140adf3a8:	48 83 c5 68          	add    $0x68,%rbp
140adf3ac:	48 83 c6 68          	add    $0x68,%rsi
140adf3b0:	48 83 ef 01          	sub    $0x1,%rdi
140adf3b4:	75 e7                	jne    0x140adf39d
140adf3b6:	49 8b 76 08          	mov    0x8(%r14),%rsi
140adf3ba:	48 8b fb             	mov    %rbx,%rdi
140adf3bd:	48 3b de             	cmp    %rsi,%rbx
140adf3c0:	74 11                	je     0x140adf3d3
140adf3c2:	48 8b cf             	mov    %rdi,%rcx
140adf3c5:	e8 a2 de ff ff       	call   0x140add26c
140adf3ca:	48 83 c7 68          	add    $0x68,%rdi
140adf3ce:	48 3b fe             	cmp    %rsi,%rdi