14004d747:	85 c0                	test   %eax,%eax
14004d749:	75 d0                	jne    0x14004d71b
14004d74b:	83 7d dc 00          	cmpl   $0x0,-0x24(%rbp)
14004d74f:	74 0b                	je     0x14004d75c
14004d751:	ff 15 81 50 1c 00    	call   *0x1c5081(%rip)        # 0x1402127d8
14004d757:	39 45 dc             	cmp    %eax,-0x24(%rbp)
14004d75a:	75 2f                	jne    0x14004d78b
14004d75c:	4c 8d 5c 24 50       	lea    0x50(%rsp),%r11
14004d761:	49 8b 5b 28          	mov    0x28(%r11),%rbx
14004d765:	49 8b 73 30          	mov    0x30(%r11),%rsi
14004d769:	49 8b e3             	mov    %r11,%rsp
14004d76c:	41 5e                	pop    %r14
14004d76e:	5f                   	pop    %rdi
14004d76f:	5d                   	pop    %rbp
14004d770:	c3                   	ret
14004d771:	33 d2                	xor    %edx,%edx
14004d773:	b9 c5 f4 31 01       	mov    $0x131f4c5,%ecx
14004d778:	e8 67 db fb ff       	call   0x14000b2e4
14004d77d:	cc                   	int3
14004d77e:	33 d2                	xor    %edx,%edx
14004d780:	b9 c4 f4 31 01       	mov    $0x131f4c4,%ecx
14004d785:	e8 5a db fb ff       	call   0x14000b2e4
14004d78a:	cc                   	int3
14004d78b:	33 d2                	xor    %edx,%edx
14004d78d:	b9 c3 f4 31 01       	mov    $0x131f4c3,%ecx
14004d792:	e8 4d db fb ff       	call   0x14000b2e4
14004d797:	cc                   	int3
14004d798:	90                   	nop
14004d799:	90                   	nop
14004d79a:	90                   	nop
14004d79b:	90                   	nop
14004d79c:	90                   	nop
14004d79d:	90                   	nop
14004d79e:	90                   	nop
14004d79f:	90                   	nop
14004d7a0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14004d7a5:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14004d7aa:	57                   	push   %rdi
14004d7ab:	48 83 ec 20          	sub    $0x20,%rsp
14004d7af:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
14004d7b3:	48 8b f2             	mov    %rdx,%rsi
14004d7b6:	48 8b 59 08          	mov    0x8(%rcx),%rbx
14004d7ba:	48 8b f9             	mov    %rcx,%rdi
14004d7bd:	74 13                	je     0x14004d7d2
14004d7bf:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14004d7c4:	e8 4f 99 fd ff       	call   0x140027118
14004d7c9:	48 2b 5f 10          	sub    0x10(%rdi),%rbx
14004d7cd:	48 03 5c 24 30       	add    0x30(%rsp),%rbx
14004d7d2:	48 b8 cf f7 53 e3 a5 	movabs $0x20c49ba5e353f7cf,%rax
14004d7d9:	9b c4 20
14004d7dc:	48 f7 eb             	imul   %rbx
14004d7df:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14004d7e4:	48 c1 fa 07          	sar    $0x7,%rdx
14004d7e8:	48 8b c2             	mov    %rdx,%rax
14004d7eb:	48 c1 e8 3f          	shr    $0x3f,%rax
14004d7ef:	48 03 d0             	add    %rax,%rdx
14004d7f2:	48 8b c6             	mov    %rsi,%rax
14004d7f5:	48 89 16             	mov    %rdx,(%rsi)
14004d7f8:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14004d7fd:	48 83 c4 20          	add    $0x20,%rsp
14004d801:	5f                   	pop    %rdi
14004d802:	c3                   	ret
14004d803:	90                   	nop
14004d804:	90                   	nop
14004d805:	90                   	nop
14004d806:	90                   	nop
14004d807:	90                   	nop
14004d808:	90                   	nop
14004d809:	90                   	nop
14004d80a:	90                   	nop
14004d80b:	90                   	nop
14004d80c:	90                   	nop
14004d80d:	90                   	nop
14004d80e:	90                   	nop
14004d80f:	90                   	nop
14004d810:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14004d815:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14004d81a:	57                   	push   %rdi
14004d81b:	48 83 ec 20          	sub    $0x20,%rsp
14004d81f:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
14004d823:	48 8b f2             	mov    %rdx,%rsi
14004d826:	48 8b 59 08          	mov    0x8(%rcx),%rbx
14004d82a:	48 8b f9             	mov    %rcx,%rdi
14004d82d:	74 13                	je     0x14004d842
14004d82f:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14004d834:	e8 df 98 fd ff       	call   0x140027118
14004d839:	48 2b 5f 10          	sub    0x10(%rdi),%rbx
14004d83d:	48 03 5c 24 30       	add    0x30(%rsp),%rbx
14004d842:	48 b8 db 34 b6 d7 82 	movabs $0x431bde82d7b634db,%rax
14004d849:	de 1b 43
14004d84c:	48 f7 eb             	imul   %rbx
14004d84f:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14004d854:	48 c1 fa 12          	sar    $0x12,%rdx
14004d858:	48 8b c2             	mov    %rdx,%rax
14004d85b:	48 c1 e8 3f          	shr    $0x3f,%rax
14004d85f:	48 03 d0             	add    %rax,%rdx
14004d862:	48 8b c6             	mov    %rsi,%rax
14004d865:	48 89 16             	mov    %rdx,(%rsi)
14004d868:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14004d86d:	48 83 c4 20          	add    $0x20,%rsp
14004d871:	5f                   	pop    %rdi
14004d872:	c3                   	ret
14004d873:	90                   	nop
14004d874:	90                   	nop
14004d875:	90                   	nop
14004d876:	90                   	nop
14004d877:	90                   	nop
14004d878:	90                   	nop
14004d879:	90                   	nop
14004d87a:	90                   	nop
14004d87b:	90                   	nop
14004d87c:	90                   	nop
14004d87d:	90                   	nop
14004d87e:	90                   	nop
14004d87f:	90                   	nop
14004d880:	8a 41 18             	mov    0x18(%rcx),%al
14004d883:	c3                   	ret
14004d884:	90                   	nop
14004d885:	90                   	nop
14004d886:	90                   	nop
14004d887:	90                   	nop
14004d888:	90                   	nop
14004d889:	90                   	nop
14004d88a:	90                   	nop
14004d88b:	90                   	nop
14004d88c:	90                   	nop
14004d88d:	90                   	nop
14004d88e:	90                   	nop
14004d88f:	90                   	nop
14004d890:	40 53                	rex push %rbx
14004d892:	48 83 ec 20          	sub    $0x20,%rsp
14004d896:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
14004d89a:	48 8b d9             	mov    %rcx,%rbx
14004d89d:	74 1b                	je     0x14004d8ba
14004d89f:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14004d8a4:	e8 6f 98 fd ff       	call   0x140027118
14004d8a9:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
14004d8ae:	48 2b 43 10          	sub    0x10(%rbx),%rax
14004d8b2:	48 01 43 08          	add    %rax,0x8(%rbx)
14004d8b6:	c6 43 18 00          	movb   $0x0,0x18(%rbx)
14004d8ba:	48 83 c4 20          	add    $0x20,%rsp
14004d8be:	5b                   	pop    %rbx
14004d8bf:	c3                   	ret
14004d8c0:	40 53                	rex push %rbx
14004d8c2:	48 83 ec 20          	sub    $0x20,%rsp
14004d8c6:	48 8b d9             	mov    %rcx,%rbx
14004d8c9:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14004d8ce:	e8 45 98 fd ff       	call   0x140027118
14004d8d3:	48 8b 10             	mov    (%rax),%rdx
14004d8d6:	48 89 53 10          	mov    %rdx,0x10(%rbx)
14004d8da:	c6 43 18 01          	movb   $0x1,0x18(%rbx)
14004d8de:	48 83 c4 20          	add    $0x20,%rsp
14004d8e2:	5b                   	pop    %rbx
14004d8e3:	c3                   	ret
14004d8e4:	90                   	nop
14004d8e5:	90                   	nop
14004d8e6:	90                   	nop
14004d8e7:	90                   	nop
14004d8e8:	90                   	nop
14004d8e9:	90                   	nop
14004d8ea:	90                   	nop
14004d8eb:	90                   	nop
14004d8ec:	90                   	nop
14004d8ed:	90                   	nop
14004d8ee:	90                   	nop
14004d8ef:	90                   	nop
14004d8f0:	40 53                	rex push %rbx
14004d8f2:	48 83 ec 20          	sub    $0x20,%rsp
14004d8f6:	48 83 61 08 00       	andq   $0x0,0x8(%rcx)
14004d8fb:	48 8b d9             	mov    %rcx,%rbx
14004d8fe:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14004d903:	e8 10 98 fd ff       	call   0x140027118
14004d908:	48 8b 10             	mov    (%rax),%rdx
14004d90b:	48 89 53 10          	mov    %rdx,0x10(%rbx)
14004d90f:	c6 43 18 01          	movb   $0x1,0x18(%rbx)
14004d913:	48 83 c4 20          	add    $0x20,%rsp
14004d917:	5b                   	pop    %rbx
14004d918:	c3                   	ret
14004d919:	90                   	nop
14004d91a:	90                   	nop
14004d91b:	90                   	nop
14004d91c:	90                   	nop
14004d91d:	90                   	nop
14004d91e:	90                   	nop
14004d91f:	90                   	nop
14004d920:	48 83 61 08 00       	andq   $0x0,0x8(%rcx)
14004d925:	c6 41 18 00          	movb   $0x0,0x18(%rcx)
14004d929:	c3                   	ret
14004d92a:	90                   	nop
14004d92b:	90                   	nop
14004d92c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14004d931:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14004d936:	57                   	push   %rdi
14004d937:	48 83 ec 20          	sub    $0x20,%rsp
14004d93b:	48 8b 39             	mov    (%rcx),%rdi
14004d93e:	48 8b d9             	mov    %rcx,%rbx
14004d941:	48 85 ff             	test   %rdi,%rdi
14004d944:	74 66                	je     0x14004d9ac
14004d946:	48 8b 71 08          	mov    0x8(%rcx),%rsi
14004d94a:	eb 1d                	jmp    0x14004d969
14004d94c:	48 8b 0f             	mov    (%rdi),%rcx
14004d94f:	48 85 c9             	test   %rcx,%rcx
14004d952:	74 11                	je     0x14004d965
14004d954:	48 8b 01             	mov    (%rcx),%rax
14004d957:	ba 01 00 00 00       	mov    $0x1,%edx
14004d95c:	48 8b 00             	mov    (%rax),%rax
14004d95f:	ff 15 cb 54 1c 00    	call   *0x1c54cb(%rip)        # 0x140212e30
14004d965:	48 83 c7 08          	add    $0x8,%rdi
14004d969:	48 3b fe             	cmp    %rsi,%rdi
14004d96c:	75 de                	jne    0x14004d94c
14004d96e:	48 8b 0b             	mov    (%rbx),%rcx
14004d971:	48 8b 43 10          	mov    0x10(%rbx),%rax
14004d975:	48 2b c1             	sub    %rcx,%rax
14004d978:	48 83 e0 f8          	and    $0xfffffffffffffff8,%rax
14004d97c:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
14004d982:	72 14                	jb     0x14004d998
14004d984:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
14004d988:	48 2b ca             	sub    %rdx,%rcx
14004d98b:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14004d98f:	48 83 f8 1f          	cmp    $0x1f,%rax
14004d993:	77 27                	ja     0x14004d9bc
14004d995:	48 8b ca             	mov    %rdx,%rcx
14004d998:	ff 15 a2 51 1c 00    	call   *0x1c51a2(%rip)        # 0x140212b40
14004d99e:	48 83 23 00          	andq   $0x0,(%rbx)
14004d9a2:	48 83 63 08 00       	andq   $0x0,0x8(%rbx)
14004d9a7:	48 83 63 10 00       	andq   $0x0,0x10(%rbx)
14004d9ac:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14004d9b1:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14004d9b6:	48 83 c4 20          	add    $0x20,%rsp
14004d9ba:	5f                   	pop    %rdi
14004d9bb:	c3                   	ret
14004d9bc:	ff 15 be 51 1c 00    	call   *0x1c51be(%rip)        # 0x140212b80
14004d9c2:	cc                   	int3
14004d9c3:	90                   	nop
14004d9c4:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
14004d9c9:	57                   	push   %rdi
14004d9ca:	48 83 ec 20          	sub    $0x20,%rsp
14004d9ce:	80 79 18 00          	cmpb   $0x0,0x18(%rcx)
14004d9d2:	48 8b da             	mov    %rdx,%rbx
14004d9d5:	48 8b 41 08          	mov    0x8(%rcx),%rax
14004d9d9:	48 8b f9             	mov    %rcx,%rdi
14004d9dc:	48 89 02             	mov    %rax,(%rdx)
14004d9df:	74 16                	je     0x14004d9f7
14004d9e1:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14004d9e6:	e8 2d 97 fd ff       	call   0x140027118
14004d9eb:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
14004d9f0:	48 2b 47 10          	sub    0x10(%rdi),%rax
14004d9f4:	48 01 03             	add    %rax,(%rbx)
14004d9f7:	48 8b c3             	mov    %rbx,%rax
14004d9fa:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
14004d9ff:	48 83 c4 20          	add    $0x20,%rsp
14004da03:	5f                   	pop    %rdi
14004da04:	c3                   	ret
14004da05:	90                   	nop
14004da06:	90                   	nop
14004da07:	90                   	nop
14004da08:	48 b8 cf f7 53 e3 a5 	movabs $0x20c49ba5e353f7cf,%rax
14004da0f:	9b c4 20
14004da12:	48 f7 2a             	imulq  (%rdx)
14004da15:	48 c1 fa 07          	sar    $0x7,%rdx
14004da19:	48 8b c2             	mov    %rdx,%rax
14004da1c:	48 c1 e8 3f          	shr    $0x3f,%rax
14004da20:	48 03 d0             	add    %rax,%rdx
14004da23:	48 8b c1             	mov    %rcx,%rax
14004da26:	48 89 11             	mov    %rdx,(%rcx)
14004da29:	c3                   	ret
14004da2a:	90                   	nop
14004da2b:	90                   	nop
14004da2c:	48 3b ca             	cmp    %rdx,%rcx
14004da2f:	74 3c                	je     0x14004da6d
14004da31:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14004da36:	57                   	push   %rdi
14004da37:	48 83 ec 20          	sub    $0x20,%rsp
14004da3b:	48 8b fa             	mov    %rdx,%rdi
14004da3e:	48 8b d9             	mov    %rcx,%rbx
14004da41:	48 8b 0b             	mov    (%rbx),%rcx
14004da44:	48 85 c9             	test   %rcx,%rcx
14004da47:	74 11                	je     0x14004da5a
14004da49:	48 8b 01             	mov    (%rcx),%rax
14004da4c:	ba 01 00 00 00       	mov    $0x1,%edx
14004da51:	48 8b 00             	mov    (%rax),%rax
14004da54:	ff 15 d6 53 1c 00    	call   *0x1c53d6(%rip)        # 0x140212e30
14004da5a:	48 83 c3 08          	add    $0x8,%rbx
14004da5e:	48 3b df             	cmp    %rdi,%rbx
14004da61:	75 de                	jne    0x14004da41
14004da63:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14004da68:	48 83 c4 20          	add    $0x20,%rsp
14004da6c:	5f                   	pop    %rdi
14004da6d:	c3                   	ret
14004da6e:	90                   	nop
14004da6f:	90                   	nop
14004da70:	40 53                	rex push %rbx
14004da72:	56                   	push   %rsi
14004da73:	57                   	push   %rdi
14004da74:	41 54                	push   %r12
14004da76:	41 55                	push   %r13
14004da78:	41 56                	push   %r14
14004da7a:	41 57                	push   %r15
14004da7c:	48 83 ec 30          	sub    $0x30,%rsp
14004da80:	4d 8b e0             	mov    %r8,%r12
14004da83:	48 8b fa             	mov    %rdx,%rdi
14004da86:	48 8b f1             	mov    %rcx,%rsi
14004da89:	4c 8b f2             	mov    %rdx,%r14
14004da8c:	4c 2b 31             	sub    (%rcx),%r14
14004da8f:	49 c1 fe 03          	sar    $0x3,%r14
14004da93:	48 8b 41 08          	mov    0x8(%rcx),%rax
14004da97:	48 2b 01             	sub    (%rcx),%rax
14004da9a:	48 c1 f8 03          	sar    $0x3,%rax
14004da9e:	49 b9 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%r9
14004daa5:	ff ff 1f
14004daa8:	49 3b c1             	cmp    %r9,%rax
14004daab:	0f 84 ae 01 00 00    	je     0x14004dc5f
14004dab1:	4c 8d 40 01          	lea    0x1(%rax),%r8
14004dab5:	4c 89 44 24 20       	mov    %r8,0x20(%rsp)
14004daba:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14004dabe:	48 2b 0e             	sub    (%rsi),%rcx
14004dac1:	48 c1 f9 03          	sar    $0x3,%rcx
14004dac5:	48 8b d1             	mov    %rcx,%rdx
14004dac8:	48 d1 ea             	shr    $1,%rdx
14004dacb:	49 8b c1             	mov    %r9,%rax
14004dace:	48 2b c2             	sub    %rdx,%rax
14004dad1:	48 3b c8             	cmp    %rax,%rcx
14004dad4:	76 05                	jbe    0x14004dadb
14004dad6:	49 8b c1             	mov    %r9,%rax
14004dad9:	eb 0b                	jmp    0x14004dae6
14004dadb:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
14004dadf:	49 3b c0             	cmp    %r8,%rax
14004dae2:	49 0f 42 c0          	cmovb  %r8,%rax
14004dae6:	48 89 84 24 88 00 00 	mov    %rax,0x88(%rsp)
14004daed:	00
14004daee:	49 3b c1             	cmp    %r9,%rax
14004daf1:	0f 87 6e 01 00 00    	ja     0x14004dc65
14004daf7:	4c 8d 3c c5 00 00 00 	lea    0x0(,%rax,8),%r15
14004dafe:	00
14004daff:	4d 85 ff             	test   %r15,%r15
14004db02:	75 3f                	jne    0x14004db43
14004db04:	33 db                	xor    %ebx,%ebx
14004db06:	48 89 5c 24 70       	mov    %rbx,0x70(%rsp)
14004db0b:	4e 8d 04 f5 00 00 00 	lea    0x0(,%r14,8),%r8
14004db12:	00
14004db13:	4d 8d 2c 18          	lea    (%r8,%rbx,1),%r13
14004db17:	49 8d 45 08          	lea    0x8(%r13),%rax
14004db1b:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14004db20:	49 8b 04 24          	mov    (%r12),%rax
14004db24:	49 83 24 24 00       	andq   $0x0,(%r12)
14004db29:	49 89 45 00          	mov    %rax,0x0(%r13)
14004db2d:	4c 89 6c 24 78       	mov    %r13,0x78(%rsp)
14004db32:	4c 8b 4e 08          	mov    0x8(%rsi),%r9
14004db36:	48 8b 0e             	mov    (%rsi),%rcx
14004db39:	48 8b d3             	mov    %rbx,%rdx