14043ff8d:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14043ff92:	e8 81 c8 9d 00       	call   0x140e1c818
14043ff97:	cc                   	int3
14043ff98:	2b fa                	sub    %edx,%edi
14043ff9a:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14043ff9f:	44 8b cf             	mov    %edi,%r9d
14043ffa2:	48 8d 15 3f 4e bb 00 	lea    0xbb4e3f(%rip),%rdx        # 0x140ff4de8
14043ffa9:	41 b8 01 00 00 00    	mov    $0x1,%r8d
14043ffaf:	e8 3c 91 d6 ff       	call   0x1401a90f0
14043ffb4:	48 8d 15 15 0a f6 00 	lea    0xf60a15(%rip),%rdx        # 0x1413a09d0
14043ffbb:	48 8d 4c 24 38       	lea    0x38(%rsp),%rcx
14043ffc0:	e8 53 c8 9d 00       	call   0x140e1c818
14043ffc5:	cc                   	int3
14043ffc6:	cc                   	int3
14043ffc7:	cc                   	int3
14043ffc8:	cc                   	int3
14043ffc9:	cc                   	int3
14043ffca:	cc                   	int3
14043ffcb:	cc                   	int3
14043ffcc:	cc                   	int3
14043ffcd:	cc                   	int3
14043ffce:	cc                   	int3
14043ffcf:	cc                   	int3
14043ffd0:	40 55                	rex push %rbp
14043ffd2:	56                   	push   %rsi
14043ffd3:	57                   	push   %rdi
14043ffd4:	41 55                	push   %r13
14043ffd6:	41 56                	push   %r14
14043ffd8:	48 81 ec 80 00 00 00 	sub    $0x80,%rsp
14043ffdf:	48 8b 05 1a 8f f7 00 	mov    0xf78f1a(%rip),%rax        # 0x1413b8f00
14043ffe6:	48 33 c4             	xor    %rsp,%rax
14043ffe9:	48 89 44 24 58       	mov    %rax,0x58(%rsp)
14043ffee:	48 8d 6a 08          	lea    0x8(%rdx),%rbp
14043fff2:	4c 89 4c 24 30       	mov    %r9,0x30(%rsp)
14043fff7:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
14043fffc:	49 8b f0             	mov    %r8,%rsi
14043ffff:	4c 8b ea             	mov    %rdx,%r13
140440002:	48 8b f9             	mov    %rcx,%rdi
140440005:	49 3b e8             	cmp    %r8,%rbp
140440008:	0f 87 4a 05 00 00    	ja     0x140440558
14044000e:	4c 8d 72 06          	lea    0x6(%rdx),%r14
140440012:	49 3b ee             	cmp    %r14,%rbp
140440015:	0f 82 3d 05 00 00    	jb     0x140440558
14044001b:	48 89 5c 24 78       	mov    %rbx,0x78(%rsp)
140440020:	b9 08 00 00 00       	mov    $0x8,%ecx
140440025:	4c 89 7c 24 68       	mov    %r15,0x68(%rsp)
14044002a:	e8 d9 b0 9d 00       	call   0x140e1b108
14044002f:	33 db                	xor    %ebx,%ebx
140440031:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140440036:	48 85 c0             	test   %rax,%rax
140440039:	74 0b                	je     0x140440046
14044003b:	89 18                	mov    %ebx,(%rax)
14044003d:	c7 40 04 01 00 00 00 	movl   $0x1,0x4(%rax)
140440044:	eb 03                	jmp    0x140440049
140440046:	48 8b c3             	mov    %rbx,%rax
140440049:	4c 8b c6             	mov    %rsi,%r8
14044004c:	48 89 07             	mov    %rax,(%rdi)
14044004f:	49 8b d5             	mov    %r13,%rdx
140440052:	48 8b c8             	mov    %rax,%rcx
140440055:	e8 c6 db 00 00       	call   0x14044dc20
14044005a:	83 bc 24 d0 00 00 00 	cmpl   $0x1,0xd0(%rsp)
140440061:	01
140440062:	41 0f b7 45 04       	movzwl 0x4(%r13),%eax
140440067:	75 0a                	jne    0x140440073
140440069:	66 89 47 08          	mov    %ax,0x8(%rdi)
14044006d:	41 0f b7 0e          	movzwl (%r14),%ecx
140440071:	eb 10                	jmp    0x140440083
140440073:	66 c1 c8 08          	ror    $0x8,%ax
140440077:	66 89 47 08          	mov    %ax,0x8(%rdi)
14044007b:	41 0f b7 0e          	movzwl (%r14),%ecx
14044007f:	66 c1 c9 08          	ror    $0x8,%cx
140440083:	8b c3                	mov    %ebx,%eax
140440085:	66 89 4f 0a          	mov    %cx,0xa(%rdi)
140440089:	66 85 c9             	test   %cx,%cx
14044008c:	0f 95 c0             	setne  %al
14044008f:	44 8b f8             	mov    %eax,%r15d
140440092:	48 8b c6             	mov    %rsi,%rax
140440095:	49 2b c5             	sub    %r13,%rax
140440098:	48 83 e8 08          	sub    $0x8,%rax
14044009c:	4c 3b f8             	cmp    %rax,%r15
14044009f:	0f 8f e2 04 00 00    	jg     0x140440587
1404400a5:	b9 18 00 00 00       	mov    $0x18,%ecx
1404400aa:	4c 89 64 24 70       	mov    %r12,0x70(%rsp)
1404400af:	48 89 5f 18          	mov    %rbx,0x18(%rdi)
1404400b3:	e8 50 b0 9d 00       	call   0x140e1b108
1404400b8:	48 8b c8             	mov    %rax,%rcx
1404400bb:	48 85 c0             	test   %rax,%rax
1404400be:	74 0d                	je     0x1404400cd
1404400c0:	48 89 18             	mov    %rbx,(%rax)
1404400c3:	48 89 58 08          	mov    %rbx,0x8(%rax)
1404400c7:	48 89 58 10          	mov    %rbx,0x10(%rax)
1404400cb:	eb 03                	jmp    0x1404400d0
1404400cd:	48 8b cb             	mov    %rbx,%rcx
1404400d0:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1404400d4:	48 8b 41 10          	mov    0x10(%rcx),%rax
1404400d8:	48 2b 01             	sub    (%rcx),%rax
1404400db:	48 c1 f8 03          	sar    $0x3,%rax
1404400df:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1404400e4:	4c 3b f8             	cmp    %rax,%r15
1404400e7:	76 0a                	jbe    0x1404400f3
1404400e9:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1404400ee:	e8 2d 55 f8 ff       	call   0x1403c5620
1404400f3:	45 85 ff             	test   %r15d,%r15d
1404400f6:	0f 84 97 00 00 00    	je     0x140440193
1404400fc:	4c 8b 6c 24 30       	mov    0x30(%rsp),%r13
140440101:	b9 20 00 00 00       	mov    $0x20,%ecx
140440106:	e8 fd af 9d 00       	call   0x140e1b108
14044010b:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140440110:	48 8b c8             	mov    %rax,%rcx
140440113:	48 85 c0             	test   %rax,%rax
140440116:	74 25                	je     0x14044013d
140440118:	48 8b 47 58          	mov    0x58(%rdi),%rax
14044011c:	83 78 30 00          	cmpl   $0x0,0x30(%rax)
140440120:	c7 01 ff ff ff ff    	movl   $0xffffffff,(%rcx)
140440126:	0f 95 c0             	setne  %al
140440129:	48 89 59 08          	mov    %rbx,0x8(%rcx)
14044012d:	88 41 18             	mov    %al,0x18(%rcx)
140440130:	48 89 59 10          	mov    %rbx,0x10(%rcx)
140440134:	c7 41 1c 09 00 00 00 	movl   $0x9,0x1c(%rcx)
14044013b:	eb 03                	jmp    0x140440140
14044013d:	48 8b cb             	mov    %rbx,%rcx
140440140:	4d 8b cd             	mov    %r13,%r9
140440143:	48 89 4f 18          	mov    %rcx,0x18(%rdi)
140440147:	4c 8b c6             	mov    %rsi,%r8
14044014a:	48 8b d5             	mov    %rbp,%rdx
14044014d:	e8 0e dc 00 00       	call   0x14044dd60
140440152:	4c 8b 4f 10          	mov    0x10(%rdi),%r9
140440156:	4c 63 e0             	movslq %eax,%r12
140440159:	49 8b 51 08          	mov    0x8(%r9),%rdx
14044015d:	49 3b 51 10          	cmp    0x10(%r9),%rdx
140440161:	74 0e                	je     0x140440171
140440163:	48 8b 4f 18          	mov    0x18(%rdi),%rcx
140440167:	48 89 0a             	mov    %rcx,(%rdx)
14044016a:	49 83 41 08 08       	addq   $0x8,0x8(%r9)
14044016f:	eb 0c                	jmp    0x14044017d
140440171:	4c 8d 47 18          	lea    0x18(%rdi),%r8
140440175:	49 8b c9             	mov    %r9,%rcx
140440178:	e8 43 53 f8 ff       	call   0x1403c54c0
14044017d:	49 03 ec             	add    %r12,%rbp
140440180:	48 89 5f 18          	mov    %rbx,0x18(%rdi)
140440184:	49 83 ef 01          	sub    $0x1,%r15
140440188:	0f 85 73 ff ff ff    	jne    0x140440101
14044018e:	4c 8b 6c 24 28       	mov    0x28(%rsp),%r13
140440193:	41 2b ed             	sub    %r13d,%ebp
140440196:	4d 8d 65 08          	lea    0x8(%r13),%r12
14044019a:	8d 45 f8             	lea    -0x8(%rbp),%eax
14044019d:	48 98                	cltq
14044019f:	4c 03 e0             	add    %rax,%r12
1404401a2:	8b c3                	mov    %ebx,%eax
1404401a4:	66 83 7f 0a 00       	cmpw   $0x0,0xa(%rdi)
1404401a9:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
1404401ae:	0f 95 c0             	setne  %al
1404401b1:	44 8b f8             	mov    %eax,%r15d
1404401b4:	48 8b c6             	mov    %rsi,%rax
1404401b7:	49 2b c4             	sub    %r12,%rax
1404401ba:	4c 3b f8             	cmp    %rax,%r15
1404401bd:	0f 8f f1 03 00 00    	jg     0x1404405b4
1404401c3:	b9 18 00 00 00       	mov    $0x18,%ecx
1404401c8:	48 89 5f 28          	mov    %rbx,0x28(%rdi)
1404401cc:	e8 37 af 9d 00       	call   0x140e1b108
1404401d1:	48 8b c8             	mov    %rax,%rcx
1404401d4:	48 85 c0             	test   %rax,%rax
1404401d7:	74 0d                	je     0x1404401e6
1404401d9:	48 89 18             	mov    %rbx,(%rax)
1404401dc:	48 89 58 08          	mov    %rbx,0x8(%rax)
1404401e0:	48 89 58 10          	mov    %rbx,0x10(%rax)
1404401e4:	eb 03                	jmp    0x1404401e9
1404401e6:	48 8b cb             	mov    %rbx,%rcx
1404401e9:	48 89 4f 20          	mov    %rcx,0x20(%rdi)
1404401ed:	48 8b 41 10          	mov    0x10(%rcx),%rax
1404401f1:	48 2b 01             	sub    (%rcx),%rax
1404401f4:	48 c1 f8 03          	sar    $0x3,%rax
1404401f8:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
1404401fd:	4c 3b f8             	cmp    %rax,%r15
140440200:	76 0a                	jbe    0x14044020c
140440202:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140440207:	e8 14 54 f8 ff       	call   0x1403c5620
14044020c:	49 8b ec             	mov    %r12,%rbp
14044020f:	45 85 ff             	test   %r15d,%r15d
140440212:	0f 84 a0 00 00 00    	je     0x1404402b8
140440218:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
14044021f:	00
140440220:	b9 20 00 00 00       	mov    $0x20,%ecx
140440225:	e8 de ae 9d 00       	call   0x140e1b108
14044022a:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14044022f:	48 8b c8             	mov    %rax,%rcx
140440232:	48 85 c0             	test   %rax,%rax
140440235:	74 29                	je     0x140440260
140440237:	48 8b 47 58          	mov    0x58(%rdi),%rax
14044023b:	83 78 30 00          	cmpl   $0x0,0x30(%rax)
14044023f:	c7 01 ff ff ff ff    	movl   $0xffffffff,(%rcx)
140440245:	0f 95 c0             	setne  %al
140440248:	48 89 59 08          	mov    %rbx,0x8(%rcx)
14044024c:	88 41 18             	mov    %al,0x18(%rcx)
14044024f:	41 8b c4             	mov    %r12d,%eax
140440252:	41 2b c5             	sub    %r13d,%eax
140440255:	48 89 59 10          	mov    %rbx,0x10(%rcx)
140440259:	ff c0                	inc    %eax
14044025b:	89 41 1c             	mov    %eax,0x1c(%rcx)
14044025e:	eb 03                	jmp    0x140440263
140440260:	48 8b cb             	mov    %rbx,%rcx
140440263:	4c 8b 4c 24 30       	mov    0x30(%rsp),%r9
140440268:	4c 8b c6             	mov    %rsi,%r8
14044026b:	48 8b d5             	mov    %rbp,%rdx
14044026e:	48 89 4f 28          	mov    %rcx,0x28(%rdi)
140440272:	e8 e9 da 00 00       	call   0x14044dd60
140440277:	4c 8b 4f 20          	mov    0x20(%rdi),%r9
14044027b:	4c 63 e0             	movslq %eax,%r12
14044027e:	49 8b 51 08          	mov    0x8(%r9),%rdx
140440282:	49 3b 51 10          	cmp    0x10(%r9),%rdx
140440286:	74 0e                	je     0x140440296
140440288:	48 8b 4f 28          	mov    0x28(%rdi),%rcx
14044028c:	48 89 0a             	mov    %rcx,(%rdx)
14044028f:	49 83 41 08 08       	addq   $0x8,0x8(%r9)
140440294:	eb 0c                	jmp    0x1404402a2
140440296:	4c 8d 47 28          	lea    0x28(%rdi),%r8
14044029a:	49 8b c9             	mov    %r9,%rcx
14044029d:	e8 1e 52 f8 ff       	call   0x1403c54c0
1404402a2:	49 03 ec             	add    %r12,%rbp
1404402a5:	48 89 5f 28          	mov    %rbx,0x28(%rdi)
1404402a9:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
1404402ae:	49 83 ef 01          	sub    $0x1,%r15
1404402b2:	0f 85 68 ff ff ff    	jne    0x140440220
1404402b8:	41 2b ec             	sub    %r12d,%ebp
1404402bb:	8b c3                	mov    %ebx,%eax
1404402bd:	4c 63 e5             	movslq %ebp,%r12
1404402c0:	4c 03 64 24 20       	add    0x20(%rsp),%r12
1404402c5:	66 83 7f 0a 00       	cmpw   $0x0,0xa(%rdi)
1404402ca:	0f 95 c0             	setne  %al
1404402cd:	44 8b f8             	mov    %eax,%r15d
1404402d0:	48 8b c6             	mov    %rsi,%rax
1404402d3:	49 2b c4             	sub    %r12,%rax
1404402d6:	4c 3b f8             	cmp    %rax,%r15
1404402d9:	0f 8f 01 03 00 00    	jg     0x1404405e0
1404402df:	b9 18 00 00 00       	mov    $0x18,%ecx
1404402e4:	48 89 5f 38          	mov    %rbx,0x38(%rdi)
1404402e8:	e8 1b ae 9d 00       	call   0x140e1b108
1404402ed:	48 8b c8             	mov    %rax,%rcx
1404402f0:	48 85 c0             	test   %rax,%rax
1404402f3:	74 0d                	je     0x140440302
1404402f5:	48 89 18             	mov    %rbx,(%rax)
1404402f8:	48 89 58 08          	mov    %rbx,0x8(%rax)
1404402fc:	48 89 58 10          	mov    %rbx,0x10(%rax)
140440300:	eb 03                	jmp    0x140440305
140440302:	48 8b cb             	mov    %rbx,%rcx
140440305:	48 89 4f 30          	mov    %rcx,0x30(%rdi)
140440309:	48 8b 41 10          	mov    0x10(%rcx),%rax
14044030d:	48 2b 01             	sub    (%rcx),%rax
140440310:	48 c1 f8 03          	sar    $0x3,%rax
140440314:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
140440319:	4c 3b f8             	cmp    %rax,%r15
14044031c:	76 0a                	jbe    0x140440328
14044031e:	48 8d 54 24 28       	lea    0x28(%rsp),%rdx
140440323:	e8 f8 52 f8 ff       	call   0x1403c5620
140440328:	49 8b ec             	mov    %r12,%rbp
14044032b:	45 85 ff             	test   %r15d,%r15d
14044032e:	0f 84 a1 00 00 00    	je     0x1404403d5
140440334:	b9 20 00 00 00       	mov    $0x20,%ecx
140440339:	e8 ca ad 9d 00       	call   0x140e1b108
14044033e:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140440343:	4c 8b d0             	mov    %rax,%r10
140440346:	48 85 c0             	test   %rax,%rax
140440349:	74 2d                	je     0x140440378
14044034b:	48 8b 47 58          	mov    0x58(%rdi),%rax
14044034f:	8b 48 30             	mov    0x30(%rax),%ecx
140440352:	85 c9                	test   %ecx,%ecx
140440354:	41 c7 02 ff ff ff ff 	movl   $0xffffffff,(%r10)
14044035b:	0f 95 c0             	setne  %al
14044035e:	49 89 5a 08          	mov    %rbx,0x8(%r10)
140440362:	41 88 42 18          	mov    %al,0x18(%r10)
140440366:	41 8b c4             	mov    %r12d,%eax
140440369:	41 2b c5             	sub    %r13d,%eax
14044036c:	49 89 5a 10          	mov    %rbx,0x10(%r10)
140440370:	ff c0                	inc    %eax
140440372:	41 89 42 1c          	mov    %eax,0x1c(%r10)
140440376:	eb 03                	jmp    0x14044037b
140440378:	4c 8b d3             	mov    %rbx,%r10
14044037b:	4c 8b 4c 24 30       	mov    0x30(%rsp),%r9
140440380:	4c 8b c6             	mov    %rsi,%r8
140440383:	48 8b d5             	mov    %rbp,%rdx
140440386:	4c 89 57 38          	mov    %r10,0x38(%rdi)
14044038a:	49 8b ca             	mov    %r10,%rcx
14044038d:	e8 ce d9 00 00       	call   0x14044dd60
140440392:	4c 8b 4f 30          	mov    0x30(%rdi),%r9
140440396:	89 44 24 20          	mov    %eax,0x20(%rsp)
14044039a:	49 8b 51 08          	mov    0x8(%r9),%rdx
14044039e:	49 3b 51 10          	cmp    0x10(%r9),%rdx
1404403a2:	74 0e                	je     0x1404403b2
1404403a4:	48 8b 4f 38          	mov    0x38(%rdi),%rcx
1404403a8:	48 89 0a             	mov    %rcx,(%rdx)
1404403ab:	49 83 41 08 08       	addq   $0x8,0x8(%r9)
1404403b0:	eb 10                	jmp    0x1404403c2
1404403b2:	4c 8d 47 38          	lea    0x38(%rdi),%r8
1404403b6:	49 8b c9             	mov    %r9,%rcx
1404403b9:	e8 02 51 f8 ff       	call   0x1403c54c0
1404403be:	8b 44 24 20          	mov    0x20(%rsp),%eax
1404403c2:	48 98                	cltq
1404403c4:	48 03 e8             	add    %rax,%rbp
1404403c7:	48 89 5f 38          	mov    %rbx,0x38(%rdi)
1404403cb:	49 83 ef 01          	sub    $0x1,%r15
1404403cf:	0f 85 5f ff ff ff    	jne    0x140440334
1404403d5:	48 8b 07             	mov    (%rdi),%rax
1404403d8:	41 2b ec             	sub    %r12d,%ebp
1404403db:	4c 63 c5             	movslq %ebp,%r8
1404403de:	4d 03 c4             	add    %r12,%r8
1404403e1:	0f b7 50 02          	movzwl 0x2(%rax),%edx
1404403e5:	44 8b ca             	mov    %edx,%r9d
1404403e8:	66 85 d2             	test   %dx,%dx
1404403eb:	74 23                	je     0x140440410
1404403ed:	0f b7 4f 60          	movzwl 0x60(%rdi),%ecx
1404403f1:	8b c1                	mov    %ecx,%eax
1404403f3:	49 2b c5             	sub    %r13,%rax
1404403f6:	48 83 c0 02          	add    $0x2,%rax
1404403fa:	49 03 c0             	add    %r8,%rax
1404403fd:	48 3b d0             	cmp    %rax,%rdx
140440400:	7d 0e                	jge    0x140440410
140440402:	8b c1                	mov    %ecx,%eax
140440404:	8b ca                	mov    %edx,%ecx
140440406:	2b c8                	sub    %eax,%ecx
140440408:	41 2b c8             	sub    %r8d,%ecx
14044040b:	41 03 cd             	add    %r13d,%ecx
14044040e:	eb 02                	jmp    0x140440412
140440410:	8b cb                	mov    %ebx,%ecx
140440412:	48 63 e9             	movslq %ecx,%rbp
140440415:	49 03 e8             	add    %r8,%rbp
140440418:	48 3b ee             	cmp    %rsi,%rbp
14044041b:	0f 87 e2 00 00 00    	ja     0x140440503
140440421:	49 3b e8             	cmp    %r8,%rbp
140440424:	0f 82 d9 00 00 00    	jb     0x140440503
14044042a:	66 85 d2             	test   %dx,%dx
14044042d:	74 29                	je     0x140440458
14044042f:	0f b7 4f 60          	movzwl 0x60(%rdi),%ecx
140440433:	8b c1                	mov    %ecx,%eax
140440435:	49 2b c5             	sub    %r13,%rax
140440438:	48 83 c0 02          	add    $0x2,%rax
14044043c:	49 03 c0             	add    %r8,%rax
14044043f:	4c 3b c8             	cmp    %rax,%r9
140440442:	7d 14                	jge    0x140440458
140440444:	8b c1                	mov    %ecx,%eax
140440446:	8b ca                	mov    %edx,%ecx
140440448:	2b c8                	sub    %eax,%ecx
14044044a:	41 2b c8             	sub    %r8d,%ecx
14044044d:	41 03 cd             	add    %r13d,%ecx
140440450:	0f 88 dc 00 00 00    	js     0x140440532
140440456:	eb 02                	jmp    0x14044045a
140440458:	8b cb                	mov    %ebx,%ecx
14044045a:	8b c1                	mov    %ecx,%eax
14044045c:	b9 20 00 00 00       	mov    $0x20,%ecx
140440461:	49 03 c0             	add    %r8,%rax
140440464:	4c 89 47 40          	mov    %r8,0x40(%rdi)