14029a000:	79 be                	jns    0x140299fc0
14029a002:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
14029a007:	48 8b d7             	mov    %rdi,%rdx
14029a00a:	e8 c1 6b e5 ff       	call   0x1400f0bd0
14029a00f:	48 85 c0             	test   %rax,%rax
14029a012:	41 0f 45 ec          	cmovne %r12d,%ebp
14029a016:	48 8b ce             	mov    %rsi,%rcx
14029a019:	e8 42 0c ec ff       	call   0x14015ac60
14029a01e:	48 8b 7c 24 70       	mov    0x70(%rsp),%rdi
14029a023:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
14029a028:	48 8b 5c 24 78       	mov    0x78(%rsp),%rbx
14029a02d:	8b c5                	mov    %ebp,%eax
14029a02f:	48 83 c4 30          	add    $0x30,%rsp
14029a033:	41 5f                	pop    %r15
14029a035:	41 5e                	pop    %r14
14029a037:	41 5d                	pop    %r13
14029a039:	41 5c                	pop    %r12
14029a03b:	5d                   	pop    %rbp
14029a03c:	c3                   	ret
14029a03d:	cc                   	int3
14029a03e:	cc                   	int3
14029a03f:	cc                   	int3
14029a040:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14029a045:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
14029a04a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14029a04f:	57                   	push   %rdi
14029a050:	41 54                	push   %r12
14029a052:	41 56                	push   %r14
14029a054:	b8 30 00 00 00       	mov    $0x30,%eax
14029a059:	e8 d2 6a 01 00       	call   0x1402b0b30
14029a05e:	48 2b e0             	sub    %rax,%rsp
14029a061:	48 8b e9             	mov    %rcx,%rbp
14029a064:	49 8b f9             	mov    %r9,%rdi
14029a067:	49 8b c9             	mov    %r9,%rcx
14029a06a:	4d 8b f0             	mov    %r8,%r14
14029a06d:	4c 8b e2             	mov    %rdx,%r12
14029a070:	33 f6                	xor    %esi,%esi
14029a072:	e8 f9 0f ec ff       	call   0x14015b070
14029a077:	48 8b cf             	mov    %rdi,%rcx
14029a07a:	e8 21 0d ec ff       	call   0x14015ada0
14029a07f:	48 8b d8             	mov    %rax,%rbx
14029a082:	48 85 c0             	test   %rax,%rax
14029a085:	0f 84 a4 00 00 00    	je     0x14029a12f
14029a08b:	49 8b ce             	mov    %r14,%rcx
14029a08e:	e8 bd 70 e5 ff       	call   0x1400f1150
14029a093:	83 f8 01             	cmp    $0x1,%eax
14029a096:	0f 8e 93 00 00 00    	jle    0x14029a12f
14029a09c:	4c 89 7c 24 50       	mov    %r15,0x50(%rsp)
14029a0a1:	44 8d 78 ff          	lea    -0x1(%rax),%r15d
14029a0a5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
14029a0ac:	00 00 00 00
14029a0b0:	45 33 c9             	xor    %r9d,%r9d
14029a0b3:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
14029a0b8:	41 8b d7             	mov    %r15d,%edx
14029a0bb:	89 74 24 20          	mov    %esi,0x20(%rsp)
14029a0bf:	48 8b cb             	mov    %rbx,%rcx
14029a0c2:	45 8d 41 ff          	lea    -0x1(%r9),%r8d
14029a0c6:	e8 b5 89 f3 ff       	call   0x1401d2a80
14029a0cb:	85 c0                	test   %eax,%eax
14029a0cd:	74 5b                	je     0x14029a12a
14029a0cf:	48 8b cb             	mov    %rbx,%rcx
14029a0d2:	e8 b9 6d e5 ff       	call   0x1400f0e90
14029a0d7:	85 c0                	test   %eax,%eax
14029a0d9:	75 d5                	jne    0x14029a0b0
14029a0db:	4d 8b ce             	mov    %r14,%r9
14029a0de:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14029a0e3:	4c 8b c3             	mov    %rbx,%r8
14029a0e6:	49 8b d4             	mov    %r12,%rdx
14029a0e9:	48 8b cd             	mov    %rbp,%rcx
14029a0ec:	e8 9f 05 00 00       	call   0x14029a690
14029a0f1:	85 c0                	test   %eax,%eax
14029a0f3:	74 35                	je     0x14029a12a
14029a0f5:	4c 8b cf             	mov    %rdi,%r9
14029a0f8:	4d 8b c6             	mov    %r14,%r8
14029a0fb:	48 8b d5             	mov    %rbp,%rdx
14029a0fe:	48 8b cd             	mov    %rbp,%rcx
14029a101:	e8 5a 00 00 00       	call   0x14029a160
14029a106:	85 c0                	test   %eax,%eax
14029a108:	74 20                	je     0x14029a12a
14029a10a:	4d 8b ce             	mov    %r14,%r9
14029a10d:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14029a112:	4c 8b c3             	mov    %rbx,%r8
14029a115:	48 8b d5             	mov    %rbp,%rdx
14029a118:	48 8b cd             	mov    %rbp,%rcx
14029a11b:	e8 70 05 00 00       	call   0x14029a690
14029a120:	85 c0                	test   %eax,%eax
14029a122:	b9 01 00 00 00       	mov    $0x1,%ecx
14029a127:	0f 45 f1             	cmovne %ecx,%esi
14029a12a:	4c 8b 7c 24 50       	mov    0x50(%rsp),%r15
14029a12f:	48 8b cf             	mov    %rdi,%rcx
14029a132:	e8 29 0b ec ff       	call   0x14015ac60
14029a137:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
14029a13c:	8b c6                	mov    %esi,%eax
14029a13e:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
14029a143:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
14029a148:	48 83 c4 30          	add    $0x30,%rsp
14029a14c:	41 5e                	pop    %r14
14029a14e:	41 5c                	pop    %r12
14029a150:	5f                   	pop    %rdi
14029a151:	c3                   	ret
14029a152:	cc                   	int3
14029a153:	cc                   	int3
14029a154:	cc                   	int3
14029a155:	cc                   	int3
14029a156:	cc                   	int3
14029a157:	cc                   	int3
14029a158:	cc                   	int3
14029a159:	cc                   	int3
14029a15a:	cc                   	int3
14029a15b:	cc                   	int3
14029a15c:	cc                   	int3
14029a15d:	cc                   	int3
14029a15e:	cc                   	int3
14029a15f:	cc                   	int3
14029a160:	40 53                	rex push %rbx
14029a162:	55                   	push   %rbp
14029a163:	56                   	push   %rsi
14029a164:	57                   	push   %rdi
14029a165:	41 54                	push   %r12
14029a167:	41 55                	push   %r13
14029a169:	41 56                	push   %r14
14029a16b:	41 57                	push   %r15
14029a16d:	b8 a8 00 00 00       	mov    $0xa8,%eax
14029a172:	e8 b9 69 01 00       	call   0x1402b0b30
14029a177:	48 2b e0             	sub    %rax,%rsp
14029a17a:	48 8b 05 ff b8 13 00 	mov    0x13b8ff(%rip),%rax        # 0x1403d5a80
14029a181:	48 33 c4             	xor    %rsp,%rax
14029a184:	48 89 84 24 90 00 00 	mov    %rax,0x90(%rsp)
14029a18b:	00
14029a18c:	48 89 4c 24 70       	mov    %rcx,0x70(%rsp)
14029a191:	49 8b f9             	mov    %r9,%rdi
14029a194:	49 8b c9             	mov    %r9,%rcx
14029a197:	4c 89 4c 24 68       	mov    %r9,0x68(%rsp)
14029a19c:	49 8b f0             	mov    %r8,%rsi
14029a19f:	4c 89 44 24 58       	mov    %r8,0x58(%rsp)
14029a1a4:	48 8b da             	mov    %rdx,%rbx
14029a1a7:	45 33 f6             	xor    %r14d,%r14d
14029a1aa:	e8 c1 0e ec ff       	call   0x14015b070
14029a1af:	48 8b cf             	mov    %rdi,%rcx
14029a1b2:	e8 e9 0b ec ff       	call   0x14015ada0
14029a1b7:	48 8b cf             	mov    %rdi,%rcx
14029a1ba:	48 89 44 24 40       	mov    %rax,0x40(%rsp)
14029a1bf:	e8 dc 0b ec ff       	call   0x14015ada0
14029a1c4:	48 8b cf             	mov    %rdi,%rcx
14029a1c7:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14029a1cc:	e8 cf 0b ec ff       	call   0x14015ada0
14029a1d1:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
14029a1d6:	48 8b f8             	mov    %rax,%rdi
14029a1d9:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
14029a1de:	e8 bd 0b ec ff       	call   0x14015ada0
14029a1e3:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
14029a1e8:	4c 8b f8             	mov    %rax,%r15
14029a1eb:	48 85 c0             	test   %rax,%rax
14029a1ee:	0f 84 66 04 00 00    	je     0x14029a65a
14029a1f4:	45 8d 46 06          	lea    0x6(%r14),%r8d
14029a1f8:	48 8b ce             	mov    %rsi,%rcx
14029a1fb:	48 8d 54 24 78       	lea    0x78(%rsp),%rdx
14029a200:	e8 7b 13 00 00       	call   0x14029b580
14029a205:	85 c0                	test   %eax,%eax
14029a207:	0f 84 21 04 00 00    	je     0x14029a62e
14029a20d:	83 f8 06             	cmp    $0x6,%eax
14029a210:	0f 8f 18 04 00 00    	jg     0x14029a62e
14029a216:	4c 8d 44 24 78       	lea    0x78(%rsp),%r8
14029a21b:	48 8b d3             	mov    %rbx,%rdx
14029a21e:	48 8b cf             	mov    %rdi,%rcx
14029a221:	e8 ba f9 ff ff       	call   0x140299be0
14029a226:	85 c0                	test   %eax,%eax
14029a228:	0f 84 2c 04 00 00    	je     0x14029a65a
14029a22e:	48 8b cf             	mov    %rdi,%rcx
14029a231:	e8 5a 6c e5 ff       	call   0x1400f0e90
14029a236:	85 c0                	test   %eax,%eax
14029a238:	0f 85 1c 04 00 00    	jne    0x14029a65a
14029a23e:	48 8b d6             	mov    %rsi,%rdx
14029a241:	49 8b cf             	mov    %r15,%rcx
14029a244:	e8 87 69 e5 ff       	call   0x1400f0bd0
14029a249:	48 85 c0             	test   %rax,%rax
14029a24c:	0f 84 08 04 00 00    	je     0x14029a65a
14029a252:	48 8b cf             	mov    %rdi,%rcx
14029a255:	e8 f6 6e e5 ff       	call   0x1400f1150
14029a25a:	49 8b cf             	mov    %r15,%rcx
14029a25d:	8b e8                	mov    %eax,%ebp
14029a25f:	e8 ec 6e e5 ff       	call   0x1400f1150
14029a264:	4c 63 6e 08          	movslq 0x8(%rsi),%r13
14029a268:	48 8b cf             	mov    %rdi,%rcx
14029a26b:	41 8b d5             	mov    %r13d,%edx
14029a26e:	89 44 24 28          	mov    %eax,0x28(%rsp)
14029a272:	44 8b e0             	mov    %eax,%r12d
14029a275:	44 89 6c 24 48       	mov    %r13d,0x48(%rsp)
14029a27a:	e8 51 79 e5 ff       	call   0x1400f1bd0
14029a27f:	48 85 c0             	test   %rax,%rax
14029a282:	0f 84 d2 03 00 00    	je     0x14029a65a
14029a288:	48 63 47 08          	movslq 0x8(%rdi),%rax
14029a28c:	48 8b 1f             	mov    (%rdi),%rbx
14029a28f:	49 3b c5             	cmp    %r13,%rax
14029a292:	7d 15                	jge    0x14029a2a9
14029a294:	4d 8b c5             	mov    %r13,%r8
14029a297:	48 8d 0c c3          	lea    (%rbx,%rax,8),%rcx
14029a29b:	4c 2b c0             	sub    %rax,%r8
14029a29e:	33 d2                	xor    %edx,%edx
14029a2a0:	49 c1 e0 03          	shl    $0x3,%r8
14029a2a4:	e8 57 77 04 00       	call   0x1402e1a00
14029a2a9:	44 89 6f 08          	mov    %r13d,0x8(%rdi)
14029a2ad:	41 8b d5             	mov    %r13d,%edx
14029a2b0:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
14029a2b5:	48 8b cf             	mov    %rdi,%rcx
14029a2b8:	e8 13 79 e5 ff       	call   0x1400f1bd0
14029a2bd:	48 85 c0             	test   %rax,%rax
14029a2c0:	0f 84 94 03 00 00    	je     0x14029a65a
14029a2c6:	4c 8b 3f             	mov    (%rdi),%r15
14029a2c9:	49 c7 07 01 00 00 00 	movq   $0x1,(%r15)
14029a2d0:	41 83 fd 01          	cmp    $0x1,%r13d
14029a2d4:	7e 16                	jle    0x14029a2ec
14029a2d6:	41 8d 45 ff          	lea    -0x1(%r13),%eax
14029a2da:	33 d2                	xor    %edx,%edx
14029a2dc:	4c 63 c0             	movslq %eax,%r8
14029a2df:	49 8d 4f 08          	lea    0x8(%r15),%rcx
14029a2e3:	49 c1 e0 03          	shl    $0x3,%r8
14029a2e7:	e8 14 77 04 00       	call   0x1402e1a00
14029a2ec:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
14029a2f1:	41 8b d5             	mov    %r13d,%edx
14029a2f4:	44 89 6f 08          	mov    %r13d,0x8(%rdi)
14029a2f8:	e8 d3 78 e5 ff       	call   0x1400f1bd0
14029a2fd:	48 85 c0             	test   %rax,%rax
14029a300:	0f 84 54 03 00 00    	je     0x14029a65a
14029a306:	4c 8b 4c 24 20       	mov    0x20(%rsp),%r9
14029a30b:	49 8b 39             	mov    (%r9),%rdi
14029a30e:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
14029a313:	45 85 ed             	test   %r13d,%r13d
14029a316:	7e 16                	jle    0x14029a32e
14029a318:	4d 8b c5             	mov    %r13,%r8
14029a31b:	33 d2                	xor    %edx,%edx
14029a31d:	49 c1 e0 03          	shl    $0x3,%r8
14029a321:	48 8b cf             	mov    %rdi,%rcx
14029a324:	e8 d7 76 04 00       	call   0x1402e1a00
14029a329:	4c 8b 4c 24 20       	mov    0x20(%rsp),%r9
14029a32e:	48 8b 54 24 30       	mov    0x30(%rsp),%rdx
14029a333:	45 89 69 08          	mov    %r13d,0x8(%r9)
14029a337:	4c 8b 1a             	mov    (%rdx),%r11
14029a33a:	4c 89 5c 24 38       	mov    %r11,0x38(%rsp)
14029a33f:	90                   	nop
14029a340:	85 ed                	test   %ebp,%ebp
14029a342:	0f 84 df 00 00 00    	je     0x14029a427
14029a348:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14029a34f:	00
14029a350:	4c 8b 0b             	mov    (%rbx),%r9
14029a353:	41 f6 c1 01          	test   $0x1,%r9b
14029a357:	0f 85 b1 00 00 00    	jne    0x14029a40e
14029a35d:	49 8b 07             	mov    (%r15),%rax
14029a360:	4d 8b e6             	mov    %r14,%r12
14029a363:	48 8b 0e             	mov    (%rsi),%rcx
14029a366:	4c 8b d8             	mov    %rax,%r11
14029a369:	41 83 e3 01          	and    $0x1,%r11d
14029a36d:	49 f7 db             	neg    %r11
14029a370:	48 8b 11             	mov    (%rcx),%rdx
14029a373:	41 8d 4d ff          	lea    -0x1(%r13),%ecx
14029a377:	49 23 d3             	and    %r11,%rdx
14029a37a:	48 63 f9             	movslq %ecx,%rdi
14029a37d:	48 33 c2             	xor    %rdx,%rax
14029a380:	85 c9                	test   %ecx,%ecx
14029a382:	7e 73                	jle    0x14029a3f7
14029a384:	4c 8b 6c 24 58       	mov    0x58(%rsp),%r13
14029a389:	4d 8d 57 08          	lea    0x8(%r15),%r10
14029a38d:	48 8b f3             	mov    %rbx,%rsi
14029a390:	49 c7 c6 f8 ff ff ff 	mov    $0xfffffffffffffff8,%r14
14029a397:	49 2b f7             	sub    %r15,%rsi
14029a39a:	4c 8b e7             	mov    %rdi,%r12
14029a39d:	4d 2b f7             	sub    %r15,%r14
14029a3a0:	4a 8b 0c 16          	mov    (%rsi,%r10,1),%rcx
14029a3a4:	4b 8d 14 16          	lea    (%r14,%r10,1),%rdx
14029a3a8:	48 c1 e1 3f          	shl    $0x3f,%rcx
14029a3ac:	4d 8d 52 08          	lea    0x8(%r10),%r10
14029a3b0:	49 d1 e9             	shr    $1,%r9
14029a3b3:	49 0b c9             	or     %r9,%rcx
14029a3b6:	48 d1 e8             	shr    $1,%rax
14029a3b9:	4e 8b 4c 16 f8       	mov    -0x8(%rsi,%r10,1),%r9
14029a3be:	4a 89 4c 16 f0       	mov    %rcx,-0x10(%rsi,%r10,1)
14029a3c3:	49 8b 4d 00          	mov    0x0(%r13),%rcx
14029a3c7:	4c 8b 44 0a 08       	mov    0x8(%rdx,%rcx,1),%r8
14029a3cc:	4d 23 c3             	and    %r11,%r8
14029a3cf:	4d 33 42 f8          	xor    -0x8(%r10),%r8
14029a3d3:	49 8b c8             	mov    %r8,%rcx
14029a3d6:	48 c1 e1 3f          	shl    $0x3f,%rcx
14029a3da:	48 0b c8             	or     %rax,%rcx
14029a3dd:	49 8b c0             	mov    %r8,%rax
14029a3e0:	49 89 4a f0          	mov    %rcx,-0x10(%r10)
14029a3e4:	48 83 ef 01          	sub    $0x1,%rdi
14029a3e8:	75 b6                	jne    0x14029a3a0
14029a3ea:	44 8b 6c 24 48       	mov    0x48(%rsp),%r13d
14029a3ef:	45 33 f6             	xor    %r14d,%r14d
14029a3f2:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
14029a3f7:	49 d1 e9             	shr    $1,%r9
14029a3fa:	48 d1 e8             	shr    $1,%rax
14029a3fd:	4e 89 0c e3          	mov    %r9,(%rbx,%r12,8)
14029a401:	4b 89 04 e7          	mov    %rax,(%r15,%r12,8)
14029a405:	83 ed 01             	sub    $0x1,%ebp
14029a408:	0f 85 42 ff ff ff    	jne    0x14029a350
14029a40e:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
14029a413:	4c 8b 5c 24 38       	mov    0x38(%rsp),%r11
14029a418:	44 8b 64 24 28       	mov    0x28(%rsp),%r12d
14029a41d:	48 8b 54 24 30       	mov    0x30(%rsp),%rdx
14029a422:	4c 8b 4c 24 20       	mov    0x20(%rsp),%r9
14029a427:	83 fd 40             	cmp    $0x40,%ebp
14029a42a:	7f 16                	jg     0x14029a442
14029a42c:	48 8b 03             	mov    (%rbx),%rax
14029a42f:	48 85 c0             	test   %rax,%rax
14029a432:	0f 84 22 02 00 00    	je     0x14029a65a
14029a438:	48 83 f8 01          	cmp    $0x1,%rax
14029a43c:	0f 84 c6 01 00 00    	je     0x14029a608
14029a442:	41 3b ec             	cmp    %r12d,%ebp
14029a445:	7d 40                	jge    0x14029a487
14029a447:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
14029a44c:	8b c5                	mov    %ebp,%eax
14029a44e:	41 8b ec             	mov    %r12d,%ebp
14029a451:	89 44 24 28          	mov    %eax,0x28(%rsp)
14029a455:	44 8b e0             	mov    %eax,%r12d
14029a458:	48 89 54 24 60       	mov    %rdx,0x60(%rsp)
14029a45d:	48 8b 44 24 40       	mov    0x40(%rsp),%rax
14029a462:	49 8b db             	mov    %r11,%rbx
14029a465:	4c 8b 19             	mov    (%rcx),%r11
14029a468:	4c 8b ff             	mov    %rdi,%r15
14029a46b:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
14029a470:	4c 89 4c 24 40       	mov    %r9,0x40(%rsp)
14029a475:	48 8b 38             	mov    (%rax),%rdi
14029a478:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
14029a47d:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14029a482:	4c 89 5c 24 38       	mov    %r11,0x38(%rsp)
14029a487:	4d 8b c6             	mov    %r14,%r8
14029a48a:	45 85 ed             	test   %r13d,%r13d
14029a48d:	0f 8e c4 00 00 00    	jle    0x14029a557
14029a493:	41 83 fd 02          	cmp    $0x2,%r13d
14029a497:	0f 82 ba 00 00 00    	jb     0x14029a557
14029a49d:	41 8d 45 ff          	lea    -0x1(%r13),%eax
14029a4a1:	48 63 c8             	movslq %eax,%rcx
14029a4a4:	4c 8d 14 cf          	lea    (%rdi,%rcx,8),%r10
14029a4a8:	49 8d 04 cf          	lea    (%r15,%rcx,8),%rax
14029a4ac:	4d 3b fa             	cmp    %r10,%r15
14029a4af:	77 09                	ja     0x14029a4ba
14029a4b1:	48 3b c7             	cmp    %rdi,%rax
14029a4b4:	0f 83 9d 00 00 00    	jae    0x14029a557
14029a4ba:	48 8d 14 cb          	lea    (%rbx,%rcx,8),%rdx
14029a4be:	4c 3b fa             	cmp    %rdx,%r15
14029a4c1:	77 09                	ja     0x14029a4cc
14029a4c3:	48 3b c3             	cmp    %rbx,%rax
14029a4c6:	0f 83 8b 00 00 00    	jae    0x14029a557
14029a4cc:	4d 8d 0c cb          	lea    (%r11,%rcx,8),%r9
14029a4d0:	4d 3b f9             	cmp    %r9,%r15
14029a4d3:	77 05                	ja     0x14029a4da
14029a4d5:	49 3b c3             	cmp    %r11,%rax
14029a4d8:	73 7d                	jae    0x14029a557
14029a4da:	49 3b da             	cmp    %r10,%rbx