1401722a7:	85 c0                	test   %eax,%eax
1401722a9:	0f 84 87 00 00 00    	je     0x140172336
1401722af:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1401722b3:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
1401722b7:	41 b1 ff             	mov    $0xff,%r9b
1401722ba:	44 8b c7             	mov    %edi,%r8d
1401722bd:	48 8b 52 08          	mov    0x8(%rdx),%rdx
1401722c1:	e8 ca 02 00 00       	call   0x140172590
1401722c6:	85 c0                	test   %eax,%eax
1401722c8:	74 6c                	je     0x140172336
1401722ca:	44 8b c7             	mov    %edi,%r8d
1401722cd:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1401722d1:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
1401722d5:	e8 66 fb 16 00       	call   0x1402e1e40
1401722da:	85 c0                	test   %eax,%eax
1401722dc:	7f 58                	jg     0x140172336
1401722de:	44 8b c7             	mov    %edi,%r8d
1401722e1:	48 8d 55 b8          	lea    -0x48(%rbp),%rdx
1401722e5:	48 8d 4d c8          	lea    -0x38(%rbp),%rcx
1401722e9:	e8 b2 12 00 00       	call   0x1401735a0
1401722ee:	85 c0                	test   %eax,%eax
1401722f0:	79 44                	jns    0x140172336
1401722f2:	ff c6                	inc    %esi
1401722f4:	49 8b cd             	mov    %r13,%rcx
1401722f7:	89 75 b0             	mov    %esi,-0x50(%rbp)
1401722fa:	e8 41 94 f7 ff       	call   0x1400eb740
1401722ff:	3b f0                	cmp    %eax,%esi
140172301:	0f 8c ee fc ff ff    	jl     0x140171ff5
140172307:	b8 01 00 00 00       	mov    $0x1,%eax
14017230c:	48 8b 4d f8          	mov    -0x8(%rbp),%rcx
140172310:	48 33 cc             	xor    %rsp,%rcx
140172313:	e8 98 db 13 00       	call   0x1402afeb0
140172318:	4c 8d 5c 24 70       	lea    0x70(%rsp),%r11
14017231d:	49 8b 5b 38          	mov    0x38(%r11),%rbx
140172321:	49 8b 73 40          	mov    0x40(%r11),%rsi
140172325:	49 8b 7b 48          	mov    0x48(%r11),%rdi
140172329:	49 8b e3             	mov    %r11,%rsp
14017232c:	41 5f                	pop    %r15
14017232e:	41 5e                	pop    %r14
140172330:	41 5d                	pop    %r13
140172332:	41 5c                	pop    %r12
140172334:	5d                   	pop    %rbp
140172335:	c3                   	ret
140172336:	33 c0                	xor    %eax,%eax
140172338:	eb d2                	jmp    0x14017230c
14017233a:	cc                   	int3
14017233b:	cc                   	int3
14017233c:	cc                   	int3
14017233d:	cc                   	int3
14017233e:	cc                   	int3
14017233f:	cc                   	int3
140172340:	40 53                	rex push %rbx
140172342:	b8 20 00 00 00       	mov    $0x20,%eax
140172347:	e8 e4 e7 13 00       	call   0x1402b0b30
14017234c:	48 2b e0             	sub    %rax,%rsp
14017234f:	48 8b d9             	mov    %rcx,%rbx
140172352:	48 8b 89 98 00 00 00 	mov    0x98(%rcx),%rcx
140172359:	48 85 c9             	test   %rcx,%rcx
14017235c:	74 27                	je     0x140172385
14017235e:	e8 dd 93 f7 ff       	call   0x1400eb740
140172363:	85 c0                	test   %eax,%eax
140172365:	74 1e                	je     0x140172385
140172367:	48 83 7b 38 00       	cmpq   $0x0,0x38(%rbx)
14017236c:	74 17                	je     0x140172385
14017236e:	48 8b 93 98 00 00 00 	mov    0x98(%rbx),%rdx
140172375:	45 33 c0             	xor    %r8d,%r8d
140172378:	48 8b cb             	mov    %rbx,%rcx
14017237b:	48 83 c4 20          	add    $0x20,%rsp
14017237f:	5b                   	pop    %rbx
140172380:	e9 bb 02 00 00       	jmp    0x140172640
140172385:	c7 83 b0 00 00 00 01 	movl   $0x1,0xb0(%rbx)
14017238c:	00 00 00
14017238f:	33 c0                	xor    %eax,%eax
140172391:	48 83 c4 20          	add    $0x20,%rsp
140172395:	5b                   	pop    %rbx
140172396:	c3                   	ret
140172397:	cc                   	int3
140172398:	cc                   	int3
140172399:	cc                   	int3
14017239a:	cc                   	int3
14017239b:	cc                   	int3
14017239c:	cc                   	int3
14017239d:	cc                   	int3
14017239e:	cc                   	int3
14017239f:	cc                   	int3
1401723a0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1401723a5:	55                   	push   %rbp
1401723a6:	56                   	push   %rsi
1401723a7:	57                   	push   %rdi
1401723a8:	41 56                	push   %r14
1401723aa:	41 57                	push   %r15
1401723ac:	b8 70 00 00 00       	mov    $0x70,%eax
1401723b1:	e8 7a e7 13 00       	call   0x1402b0b30
1401723b6:	48 2b e0             	sub    %rax,%rsp
1401723b9:	48 8b 05 c0 36 26 00 	mov    0x2636c0(%rip),%rax        # 0x1403d5a80
1401723c0:	48 33 c4             	xor    %rsp,%rax
1401723c3:	48 89 44 24 60       	mov    %rax,0x60(%rsp)
1401723c8:	49 63 f0             	movslq %r8d,%rsi
1401723cb:	4c 8b fa             	mov    %rdx,%r15
1401723ce:	48 8b e9             	mov    %rcx,%rbp
1401723d1:	48 85 d2             	test   %rdx,%rdx
1401723d4:	0f 84 87 01 00 00    	je     0x140172561
1401723da:	48 3b ca             	cmp    %rdx,%rcx
1401723dd:	0f 84 7e 01 00 00    	je     0x140172561
1401723e3:	48 85 c9             	test   %rcx,%rcx
1401723e6:	0f 84 9b 01 00 00    	je     0x140172587
1401723ec:	33 ff                	xor    %edi,%edi
1401723ee:	48 8b ca             	mov    %rdx,%rcx
1401723f1:	44 8b f7             	mov    %edi,%r14d
1401723f4:	e8 47 93 f7 ff       	call   0x1400eb740
1401723f9:	85 c0                	test   %eax,%eax
1401723fb:	0f 8e 60 01 00 00    	jle    0x140172561
140172401:	41 8b d6             	mov    %r14d,%edx
140172404:	49 8b cf             	mov    %r15,%rcx
140172407:	e8 34 96 f7 ff       	call   0x1400eba40
14017240c:	48 8b d8             	mov    %rax,%rbx
14017240f:	48 85 c0             	test   %rax,%rax
140172412:	0f 84 6f 01 00 00    	je     0x140172587
140172418:	8b 00                	mov    (%rax),%eax
14017241a:	85 c0                	test   %eax,%eax
14017241c:	74 32                	je     0x140172450
14017241e:	83 f8 01             	cmp    $0x1,%eax
140172421:	0f 85 60 01 00 00    	jne    0x140172587
140172427:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14017242b:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140172430:	45 33 c9             	xor    %r9d,%r9d
140172433:	44 8b c6             	mov    %esi,%r8d
140172436:	48 8b 12             	mov    (%rdx),%rdx
140172439:	e8 52 01 00 00       	call   0x140172590
14017243e:	85 c0                	test   %eax,%eax
140172440:	0f 84 41 01 00 00    	je     0x140172587
140172446:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14017244a:	48 8b 52 08          	mov    0x8(%rdx),%rdx
14017244e:	eb 20                	jmp    0x140172470
140172450:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140172454:	48 8d 4c 24 40       	lea    0x40(%rsp),%rcx
140172459:	45 33 c9             	xor    %r9d,%r9d
14017245c:	44 8b c6             	mov    %esi,%r8d
14017245f:	e8 2c 01 00 00       	call   0x140172590
140172464:	85 c0                	test   %eax,%eax
140172466:	0f 84 1b 01 00 00    	je     0x140172587
14017246c:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140172470:	41 b1 ff             	mov    $0xff,%r9b
140172473:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140172478:	44 8b c6             	mov    %esi,%r8d
14017247b:	e8 10 01 00 00       	call   0x140172590
140172480:	85 c0                	test   %eax,%eax
140172482:	0f 84 ff 00 00 00    	je     0x140172587
140172488:	48 8b cd             	mov    %rbp,%rcx
14017248b:	e8 b0 92 f7 ff       	call   0x1400eb740
140172490:	3b f8                	cmp    %eax,%edi
140172492:	0f 8d ef 00 00 00    	jge    0x140172587
140172498:	8b d7                	mov    %edi,%edx
14017249a:	48 8b cd             	mov    %rbp,%rcx
14017249d:	e8 9e 95 f7 ff       	call   0x1400eba40
1401724a2:	48 8b d8             	mov    %rax,%rbx
1401724a5:	48 85 c0             	test   %rax,%rax
1401724a8:	0f 84 d9 00 00 00    	je     0x140172587
1401724ae:	8b 08                	mov    (%rax),%ecx
1401724b0:	85 c9                	test   %ecx,%ecx
1401724b2:	74 32                	je     0x1401724e6
1401724b4:	83 f9 01             	cmp    $0x1,%ecx
1401724b7:	0f 85 ca 00 00 00    	jne    0x140172587
1401724bd:	48 8b 50 08          	mov    0x8(%rax),%rdx
1401724c1:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
1401724c6:	45 33 c9             	xor    %r9d,%r9d
1401724c9:	44 8b c6             	mov    %esi,%r8d
1401724cc:	48 8b 12             	mov    (%rdx),%rdx
1401724cf:	e8 bc 00 00 00       	call   0x140172590
1401724d4:	85 c0                	test   %eax,%eax
1401724d6:	0f 84 ab 00 00 00    	je     0x140172587
1401724dc:	48 8b 53 08          	mov    0x8(%rbx),%rdx
1401724e0:	48 8b 52 08          	mov    0x8(%rdx),%rdx
1401724e4:	eb 20                	jmp    0x140172506
1401724e6:	48 8b 50 08          	mov    0x8(%rax),%rdx
1401724ea:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
1401724ef:	45 33 c9             	xor    %r9d,%r9d
1401724f2:	44 8b c6             	mov    %esi,%r8d
1401724f5:	e8 96 00 00 00       	call   0x140172590
1401724fa:	85 c0                	test   %eax,%eax
1401724fc:	0f 84 85 00 00 00    	je     0x140172587
140172502:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140172506:	41 b1 ff             	mov    $0xff,%r9b
140172509:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14017250e:	44 8b c6             	mov    %esi,%r8d
140172511:	e8 7a 00 00 00       	call   0x140172590
140172516:	85 c0                	test   %eax,%eax
140172518:	74 6d                	je     0x140172587
14017251a:	4c 8b c6             	mov    %rsi,%r8
14017251d:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
140172522:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140172527:	e8 14 f9 16 00       	call   0x1402e1e40
14017252c:	85 c0                	test   %eax,%eax
14017252e:	79 07                	jns    0x140172537
140172530:	ff c7                	inc    %edi
140172532:	e9 51 ff ff ff       	jmp    0x140172488
140172537:	4c 8b c6             	mov    %rsi,%r8
14017253a:	48 8d 54 24 40       	lea    0x40(%rsp),%rdx
14017253f:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
140172544:	e8 f7 f8 16 00       	call   0x1402e1e40
140172549:	85 c0                	test   %eax,%eax
14017254b:	7f 3a                	jg     0x140172587
14017254d:	49 8b cf             	mov    %r15,%rcx
140172550:	41 ff c6             	inc    %r14d
140172553:	e8 e8 91 f7 ff       	call   0x1400eb740
140172558:	44 3b f0             	cmp    %eax,%r14d
14017255b:	0f 8c a0 fe ff ff    	jl     0x140172401
140172561:	b8 01 00 00 00       	mov    $0x1,%eax
140172566:	48 8b 4c 24 60       	mov    0x60(%rsp),%rcx
14017256b:	48 33 cc             	xor    %rsp,%rcx
14017256e:	e8 3d d9 13 00       	call   0x1402afeb0
140172573:	48 8b 9c 24 b8 00 00 	mov    0xb8(%rsp),%rbx
14017257a:	00
14017257b:	48 83 c4 70          	add    $0x70,%rsp
14017257f:	41 5f                	pop    %r15
140172581:	41 5e                	pop    %r14
140172583:	5f                   	pop    %rdi
140172584:	5e                   	pop    %rsi
140172585:	5d                   	pop    %rbp
140172586:	c3                   	ret
140172587:	33 c0                	xor    %eax,%eax
140172589:	eb db                	jmp    0x140172566
14017258b:	cc                   	int3
14017258c:	cc                   	int3
14017258d:	cc                   	int3
14017258e:	cc                   	int3
14017258f:	cc                   	int3
140172590:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140172595:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14017259a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14017259f:	57                   	push   %rdi
1401725a0:	b8 20 00 00 00       	mov    $0x20,%eax
1401725a5:	e8 86 e5 13 00       	call   0x1402b0b30
1401725aa:	48 2b e0             	sub    %rax,%rsp
1401725ad:	48 63 02             	movslq (%rdx),%rax
1401725b0:	41 8b f8             	mov    %r8d,%edi
1401725b3:	41 0f b6 e9          	movzbl %r9b,%ebp
1401725b7:	48 8b da             	mov    %rdx,%rbx
1401725ba:	48 8b f1             	mov    %rcx,%rsi
1401725bd:	85 c0                	test   %eax,%eax
1401725bf:	78 5c                	js     0x14017261d
1401725c1:	41 3b c0             	cmp    %r8d,%eax
1401725c4:	7f 57                	jg     0x14017261d
1401725c6:	85 c0                	test   %eax,%eax
1401725c8:	7e 39                	jle    0x140172603
1401725ca:	48 8b 52 08          	mov    0x8(%rdx),%rdx
1401725ce:	4c 8b c0             	mov    %rax,%r8
1401725d1:	e8 8a ed 16 00       	call   0x1402e1360
1401725d6:	8b 4b 10             	mov    0x10(%rbx),%ecx
1401725d9:	83 e1 07             	and    $0x7,%ecx
1401725dc:	74 25                	je     0x140172603
1401725de:	b8 08 00 00 00       	mov    $0x8,%eax
1401725e3:	ba ff 00 00 00       	mov    $0xff,%edx
1401725e8:	2b c1                	sub    %ecx,%eax
1401725ea:	0f b6 c8             	movzbl %al,%ecx
1401725ed:	48 63 03             	movslq (%rbx),%rax
1401725f0:	d3 fa                	sar    %cl,%edx
1401725f2:	40 84 ed             	test   %bpl,%bpl
1401725f5:	75 08                	jne    0x1401725ff
1401725f7:	f6 d2                	not    %dl
1401725f9:	20 54 30 ff          	and    %dl,-0x1(%rax,%rsi,1)
1401725fd:	eb 04                	jmp    0x140172603
1401725ff:	08 54 30 ff          	or     %dl,-0x1(%rax,%rsi,1)
140172603:	48 63 03             	movslq (%rbx),%rax
140172606:	8b d5                	mov    %ebp,%edx
140172608:	2b f8                	sub    %eax,%edi
14017260a:	4c 63 c7             	movslq %edi,%r8
14017260d:	48 8d 0c 06          	lea    (%rsi,%rax,1),%rcx
140172611:	e8 ea f3 16 00       	call   0x1402e1a00
140172616:	b8 01 00 00 00       	mov    $0x1,%eax
14017261b:	eb 02                	jmp    0x14017261f
14017261d:	33 c0                	xor    %eax,%eax
14017261f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140172624:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140172629:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14017262e:	48 83 c4 20          	add    $0x20,%rsp
140172632:	5f                   	pop    %rdi
140172633:	c3                   	ret
140172634:	cc                   	int3
140172635:	cc                   	int3
140172636:	cc                   	int3
140172637:	cc                   	int3
140172638:	cc                   	int3
140172639:	cc                   	int3
14017263a:	cc                   	int3
14017263b:	cc                   	int3
14017263c:	cc                   	int3
14017263d:	cc                   	int3
14017263e:	cc                   	int3
14017263f:	cc                   	int3
140172640:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140172645:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
14017264a:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14017264f:	56                   	push   %rsi
140172650:	57                   	push   %rdi
140172651:	41 54                	push   %r12
140172653:	41 55                	push   %r13
140172655:	41 57                	push   %r15
140172657:	b8 20 00 00 00       	mov    $0x20,%eax
14017265c:	e8 cf e4 13 00       	call   0x1402b0b30
140172661:	48 2b e0             	sub    %rax,%rsp
140172664:	45 33 ed             	xor    %r13d,%r13d
140172667:	49 8b f8             	mov    %r8,%rdi
14017266a:	48 8b f2             	mov    %rdx,%rsi
14017266d:	48 8b d9             	mov    %rcx,%rbx
140172670:	41 8b ed             	mov    %r13d,%ebp
140172673:	48 85 d2             	test   %rdx,%rdx
140172676:	0f 84 31 04 00 00    	je     0x140172aad
14017267c:	48 8b ca             	mov    %rdx,%rcx
14017267f:	e8 bc 90 f7 ff       	call   0x1400eb740
140172684:	85 c0                	test   %eax,%eax
140172686:	0f 8e 21 04 00 00    	jle    0x140172aad
14017268c:	48 85 db             	test   %rbx,%rbx
14017268f:	75 0a                	jne    0x14017269b
140172691:	48 85 ff             	test   %rdi,%rdi
140172694:	75 18                	jne    0x1401726ae
140172696:	e9 21 04 00 00       	jmp    0x140172abc
14017269b:	48 39 6b 38          	cmp    %rbp,0x38(%rbx)
14017269f:	0f 84 0d 04 00 00    	je     0x140172ab2
1401726a5:	48 85 ff             	test   %rdi,%rdi
1401726a8:	0f 84 b5 00 00 00    	je     0x140172763
1401726ae:	41 bc ff ff ff ff    	mov    $0xffffffff,%r12d
1401726b4:	4d 8b fd             	mov    %r13,%r15
1401726b7:	48 8b cf             	mov    %rdi,%rcx
1401726ba:	e8 61 f8 ff ff       	call   0x140171f20
1401726bf:	85 c0                	test   %eax,%eax
1401726c1:	75 31                	jne    0x1401726f4
1401726c3:	48 85 db             	test   %rbx,%rbx
1401726c6:	0f 84 fd 02 00 00    	je     0x1401729c9
1401726cc:	48 8b d3             	mov    %rbx,%rdx
1401726cf:	c7 83 b0 00 00 00 29 	movl   $0x29,0xb0(%rbx)
1401726d6:	00 00 00
1401726d9:	33 c9                	xor    %ecx,%ecx
1401726db:	44 89 a3 ac 00 00 00 	mov    %r12d,0xac(%rbx)
1401726e2:	4c 89 bb b8 00 00 00 	mov    %r15,0xb8(%rbx)
1401726e9:	ff 53 38             	call   *0x38(%rbx)
1401726ec:	85 c0                	test   %eax,%eax
1401726ee:	0f 84 d5 02 00 00    	je     0x1401729c9
1401726f4:	48 8d 15 35 f2 ff ff 	lea    -0xdcb(%rip),%rdx        # 0x140171930
1401726fb:	48 8b cf             	mov    %rdi,%rcx
1401726fe:	e8 7d 92 f7 ff       	call   0x1400eb980
140172703:	48 8b cf             	mov    %rdi,%rcx
140172706:	e8 95 89 f7 ff       	call   0x1400eb0a0
14017270b:	48 8b e8             	mov    %rax,%rbp
14017270e:	48 85 c0             	test   %rax,%rax
140172711:	75 78                	jne    0x14017278b
140172713:	e8 58 49 fb ff       	call   0x140127070
140172718:	4c 8d 05 d1 cb 1a 00 	lea    0x1acbd1(%rip),%r8        # 0x14031f2f0
14017271f:	ba df 04 00 00       	mov    $0x4df,%edx
140172724:	48 8d 0d 7d cb 1a 00 	lea    0x1acb7d(%rip),%rcx        # 0x14031f2a8