1400026c7:	41 8b f7             	mov    %r15d,%esi
1400026ca:	48 3b 77 18          	cmp    0x18(%rdi),%rsi
1400026ce:	76 13                	jbe    0x1400026e3
1400026d0:	48 8b 07             	mov    (%rdi),%rax
1400026d3:	8b d6                	mov    %esi,%edx
1400026d5:	48 8b cf             	mov    %rdi,%rcx
1400026d8:	ff 10                	call   *(%rax)
1400026da:	4c 8b 44 24 48       	mov    0x48(%rsp),%r8
1400026df:	48 3b 77 18          	cmp    0x18(%rdi),%rsi
1400026e3:	48 0f 47 77 18       	cmova  0x18(%rdi),%rsi
1400026e8:	48 89 77 10          	mov    %rsi,0x10(%rdi)
1400026ec:	48 8b d3             	mov    %rbx,%rdx
1400026ef:	4d 8b de             	mov    %r14,%r11
1400026f2:	45 85 f6             	test   %r14d,%r14d
1400026f5:	7e 7a                	jle    0x140002771
1400026f7:	48 8b f3             	mov    %rbx,%rsi
1400026fa:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140002700:	4c 8b ce             	mov    %rsi,%r9
140002703:	4d 8b d0             	mov    %r8,%r10
140002706:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
14000270d:	00 00 00
140002710:	43 8b 0c 88          	mov    (%r8,%r9,4),%ecx
140002714:	41 8b 02             	mov    (%r10),%eax
140002717:	48 0f af c8          	imul   %rax,%rcx
14000271b:	48 03 d9             	add    %rcx,%rbx
14000271e:	48 83 d2 00          	adc    $0x0,%rdx
140002722:	4d 8d 52 04          	lea    0x4(%r10),%r10
140002726:	49 83 e9 01          	sub    $0x1,%r9
14000272a:	79 e4                	jns    0x140002710
14000272c:	48 8b 47 08          	mov    0x8(%rdi),%rax
140002730:	89 1c b0             	mov    %ebx,(%rax,%rsi,4)
140002733:	48 c1 eb 20          	shr    $0x20,%rbx
140002737:	48 8b c2             	mov    %rdx,%rax
14000273a:	48 c1 e0 20          	shl    $0x20,%rax
14000273e:	48 0b d8             	or     %rax,%rbx
140002741:	48 c1 ea 20          	shr    $0x20,%rdx
140002745:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
14000274a:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
14000274f:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
140002754:	66 0f 7f 44 24 30    	movdqa %xmm0,0x30(%rsp)
14000275a:	48 ff c6             	inc    %rsi
14000275d:	4c 8b 44 24 48       	mov    0x48(%rsp),%r8
140002762:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
140002767:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14000276c:	49 3b f3             	cmp    %r11,%rsi
14000276f:	7c 8f                	jl     0x140002700
140002771:	4d 63 f7             	movslq %r15d,%r14
140002774:	4d 3b de             	cmp    %r14,%r11
140002777:	0f 8d 8e 00 00 00    	jge    0x14000280b
14000277d:	4e 8d 3c 9d 00 00 00 	lea    0x0(,%r11,4),%r15
140002784:	00
140002785:	be 01 00 00 00       	mov    $0x1,%esi
14000278a:	4d 2b f3             	sub    %r11,%r14
14000278d:	0f 1f 00             	nopl   (%rax)
140002790:	4c 8b ce             	mov    %rsi,%r9
140002793:	49 3b f3             	cmp    %r11,%rsi
140002796:	7d 26                	jge    0x1400027be
140002798:	4d 8d 53 ff          	lea    -0x1(%r11),%r10
14000279c:	4f 8d 14 90          	lea    (%r8,%r10,4),%r10
1400027a0:	43 8b 0c 88          	mov    (%r8,%r9,4),%ecx
1400027a4:	41 8b 02             	mov    (%r10),%eax
1400027a7:	48 0f af c8          	imul   %rax,%rcx
1400027ab:	4d 8d 52 fc          	lea    -0x4(%r10),%r10
1400027af:	49 ff c1             	inc    %r9
1400027b2:	48 03 d9             	add    %rcx,%rbx
1400027b5:	48 83 d2 00          	adc    $0x0,%rdx
1400027b9:	4d 3b cb             	cmp    %r11,%r9
1400027bc:	7c e2                	jl     0x1400027a0
1400027be:	48 8b 47 08          	mov    0x8(%rdi),%rax
1400027c2:	41 89 1c 07          	mov    %ebx,(%r15,%rax,1)
1400027c6:	48 c1 eb 20          	shr    $0x20,%rbx
1400027ca:	48 8b c2             	mov    %rdx,%rax
1400027cd:	48 c1 e0 20          	shl    $0x20,%rax
1400027d1:	48 0b d8             	or     %rax,%rbx
1400027d4:	48 c1 ea 20          	shr    $0x20,%rdx
1400027d8:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400027dd:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
1400027e2:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
1400027e7:	66 0f 7f 44 24 30    	movdqa %xmm0,0x30(%rsp)
1400027ed:	48 ff c6             	inc    %rsi
1400027f0:	49 83 c7 04          	add    $0x4,%r15
1400027f4:	49 83 ee 01          	sub    $0x1,%r14
1400027f8:	4c 8b 44 24 48       	mov    0x48(%rsp),%r8
1400027fd:	74 0c                	je     0x14000280b
1400027ff:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
140002804:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140002809:	eb 85                	jmp    0x140002790
14000280b:	8b 4f 10             	mov    0x10(%rdi),%ecx
14000280e:	ff c9                	dec    %ecx
140002810:	85 c9                	test   %ecx,%ecx
140002812:	7e 10                	jle    0x140002824
140002814:	48 8b 57 08          	mov    0x8(%rdi),%rdx
140002818:	83 3c 8a 00          	cmpl   $0x0,(%rdx,%rcx,4)
14000281c:	75 06                	jne    0x140002824
14000281e:	ff c9                	dec    %ecx
140002820:	85 c9                	test   %ecx,%ecx
140002822:	7f f4                	jg     0x140002818
140002824:	8d 59 01             	lea    0x1(%rcx),%ebx
140002827:	48 3b 5f 18          	cmp    0x18(%rdi),%rbx
14000282b:	76 13                	jbe    0x140002840
14000282d:	48 8b 07             	mov    (%rdi),%rax
140002830:	8b d3                	mov    %ebx,%edx
140002832:	48 8b cf             	mov    %rdi,%rcx
140002835:	ff 10                	call   *(%rax)
140002837:	4c 8b 44 24 48       	mov    0x48(%rsp),%r8
14000283c:	48 3b 5f 18          	cmp    0x18(%rdi),%rbx
140002840:	48 0f 47 5f 18       	cmova  0x18(%rdi),%rbx
140002845:	48 89 5f 10          	mov    %rbx,0x10(%rdi)
140002849:	8b 87 a8 00 00 00    	mov    0xa8(%rdi),%eax
14000284f:	03 c0                	add    %eax,%eax
140002851:	89 87 a8 00 00 00    	mov    %eax,0xa8(%rdi)
140002857:	4c 89 64 24 40       	mov    %r12,0x40(%rsp)
14000285c:	48 8d 45 97          	lea    -0x69(%rbp),%rax
140002860:	4c 3b c0             	cmp    %rax,%r8
140002863:	74 3c                	je     0x1400028a1
140002865:	48 8b 45 8f          	mov    -0x71(%rbp),%rax
140002869:	48 8d 14 85 00 00 00 	lea    0x0(,%rax,4),%rdx
140002870:	00
140002871:	49 8b c0             	mov    %r8,%rax
140002874:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14000287b:	72 1c                	jb     0x140002899
14000287d:	48 83 c2 27          	add    $0x27,%rdx
140002881:	4d 8b 40 f8          	mov    -0x8(%r8),%r8
140002885:	49 2b c0             	sub    %r8,%rax
140002888:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14000288c:	48 83 f8 1f          	cmp    $0x1f,%rax
140002890:	76 07                	jbe    0x140002899
140002892:	ff 15 08 cd 05 00    	call   *0x5cd08(%rip)        # 0x14005f5a0
140002898:	cc                   	int3
140002899:	49 8b c8             	mov    %r8,%rcx
14000289c:	e8 f3 73 05 00       	call   0x140059c94
1400028a1:	48 8b 4d 27          	mov    0x27(%rbp),%rcx
1400028a5:	48 33 cc             	xor    %rsp,%rcx
1400028a8:	e8 53 6f 05 00       	call   0x140059800
1400028ad:	4c 8d 9c 24 00 01 00 	lea    0x100(%rsp),%r11
1400028b4:	00
1400028b5:	49 8b 5b 38          	mov    0x38(%r11),%rbx
1400028b9:	49 8b 73 40          	mov    0x40(%r11),%rsi
1400028bd:	49 8b e3             	mov    %r11,%rsp
1400028c0:	41 5f                	pop    %r15
1400028c2:	41 5e                	pop    %r14
1400028c4:	41 5c                	pop    %r12
1400028c6:	5f                   	pop    %rdi
1400028c7:	5d                   	pop    %rbp
1400028c8:	c3                   	ret
1400028c9:	cc                   	int3
1400028ca:	cc                   	int3
1400028cb:	cc                   	int3
1400028cc:	cc                   	int3
1400028cd:	cc                   	int3
1400028ce:	cc                   	int3
1400028cf:	cc                   	int3
1400028d0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
1400028d5:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
1400028da:	56                   	push   %rsi
1400028db:	57                   	push   %rdi
1400028dc:	41 54                	push   %r12
1400028de:	41 56                	push   %r14
1400028e0:	41 57                	push   %r15
1400028e2:	48 83 ec 20          	sub    $0x20,%rsp
1400028e6:	44 8b ba a8 00 00 00 	mov    0xa8(%rdx),%r15d
1400028ed:	48 8b ea             	mov    %rdx,%rbp
1400028f0:	8b 52 10             	mov    0x10(%rdx),%edx
1400028f3:	48 8b d9             	mov    %rcx,%rbx
1400028f6:	8b b9 a8 00 00 00    	mov    0xa8(%rcx),%edi
1400028fc:	45 33 e4             	xor    %r12d,%r12d
1400028ff:	4c 63 71 10          	movslq 0x10(%rcx),%r14
140002903:	46 8d 04 3a          	lea    (%rdx,%r15,1),%r8d
140002907:	41 8d 0c 3e          	lea    (%r14,%rdi,1),%ecx
14000290b:	41 3b c8             	cmp    %r8d,%ecx
14000290e:	75 37                	jne    0x140002947
140002910:	41 8d 4e ff          	lea    -0x1(%r14),%ecx
140002914:	ff ca                	dec    %edx
140002916:	8b c1                	mov    %ecx,%eax
140002918:	45 8b d4             	mov    %r12d,%r10d
14000291b:	2b c2                	sub    %edx,%eax
14000291d:	44 0f 49 d0          	cmovns %eax,%r10d
140002921:	41 3b ca             	cmp    %r10d,%ecx
140002924:	7c 1d                	jl     0x140002943
140002926:	4c 8b 5b 08          	mov    0x8(%rbx),%r11
14000292a:	48 8b 75 08          	mov    0x8(%rbp),%rsi
14000292e:	66 90                	xchg   %ax,%ax
140002930:	45 8b 04 8b          	mov    (%r11,%rcx,4),%r8d
140002934:	44 3b 04 96          	cmp    (%rsi,%rdx,4),%r8d
140002938:	75 27                	jne    0x140002961
14000293a:	ff c9                	dec    %ecx
14000293c:	ff ca                	dec    %edx
14000293e:	41 3b ca             	cmp    %r10d,%ecx
140002941:	7d ed                	jge    0x140002930
140002943:	3b ca                	cmp    %edx,%ecx
140002945:	74 2b                	je     0x140002972
140002947:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
14000294c:	41 ba 01 00 00 00    	mov    $0x1,%r10d
140002952:	41 0f 4f c2          	cmovg  %r10d,%eax
140002956:	85 c0                	test   %eax,%eax
140002958:	79 18                	jns    0x140002972
14000295a:	33 c0                	xor    %eax,%eax
14000295c:	e9 62 01 00 00       	jmp    0x140002ac3
140002961:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140002966:	41 ba 01 00 00 00    	mov    $0x1,%r10d
14000296c:	41 0f 47 c2          	cmova  %r10d,%eax
140002970:	eb e4                	jmp    0x140002956
140002972:	41 2b ff             	sub    %r15d,%edi
140002975:	85 ff                	test   %edi,%edi
140002977:	7e 74                	jle    0x1400029ed
140002979:	41 8d 34 3e          	lea    (%r14,%rdi,1),%esi
14000297d:	48 3b 73 18          	cmp    0x18(%rbx),%rsi
140002981:	76 0e                	jbe    0x140002991
140002983:	48 8b 03             	mov    (%rbx),%rax
140002986:	8b d6                	mov    %esi,%edx
140002988:	48 8b cb             	mov    %rbx,%rcx
14000298b:	ff 10                	call   *(%rax)
14000298d:	48 3b 73 18          	cmp    0x18(%rbx),%rsi
140002991:	48 0f 47 73 18       	cmova  0x18(%rbx),%rsi
140002996:	49 8b d6             	mov    %r14,%rdx
140002999:	48 83 ea 01          	sub    $0x1,%rdx
14000299d:	48 89 73 10          	mov    %rsi,0x10(%rbx)
1400029a1:	78 32                	js     0x1400029d5
1400029a3:	41 8d 46 ff          	lea    -0x1(%r14),%eax
1400029a7:	03 c7                	add    %edi,%eax
1400029a9:	48 63 c8             	movslq %eax,%rcx
1400029ac:	48 2b ca             	sub    %rdx,%rcx
1400029af:	4c 8d 04 8d 00 00 00 	lea    0x0(,%rcx,4),%r8
1400029b6:	00
1400029b7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1400029be:	00 00
1400029c0:	48 8b 43 08          	mov    0x8(%rbx),%rax
1400029c4:	48 8d 0c 90          	lea    (%rax,%rdx,4),%rcx
1400029c8:	8b 04 90             	mov    (%rax,%rdx,4),%eax
1400029cb:	48 83 ea 01          	sub    $0x1,%rdx
1400029cf:	42 89 04 01          	mov    %eax,(%rcx,%r8,1)
1400029d3:	79 eb                	jns    0x1400029c0
1400029d5:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1400029d9:	33 d2                	xor    %edx,%edx
1400029db:	4c 63 c7             	movslq %edi,%r8
1400029de:	49 c1 e0 02          	shl    $0x2,%r8
1400029e2:	e8 c3 7d 05 00       	call   0x14005a7aa
1400029e7:	29 bb a8 00 00 00    	sub    %edi,0xa8(%rbx)
1400029ed:	41 8b f4             	mov    %r12d,%esi
1400029f0:	44 8b 95 a8 00 00 00 	mov    0xa8(%rbp),%r10d
1400029f7:	45 8b cc             	mov    %r12d,%r9d
1400029fa:	44 2b 93 a8 00 00 00 	sub    0xa8(%rbx),%r10d
140002a01:	4d 8b dc             	mov    %r12,%r11
140002a04:	48 8b 7d 10          	mov    0x10(%rbp),%rdi
140002a08:	48 85 ff             	test   %rdi,%rdi
140002a0b:	74 60                	je     0x140002a6d
140002a0d:	0f 1f 00             	nopl   (%rax)
140002a10:	48 8b 43 08          	mov    0x8(%rbx),%rax
140002a14:	42 8b 14 90          	mov    (%rax,%r10,4),%edx
140002a18:	4e 8d 04 90          	lea    (%rax,%r10,4),%r8
140002a1c:	48 8b 45 08          	mov    0x8(%rbp),%rax
140002a20:	45 8d 52 01          	lea    0x1(%r10),%r10d
140002a24:	42 8b 0c 98          	mov    (%rax,%r11,4),%ecx
140002a28:	49 ff c3             	inc    %r11
140002a2b:	41 8b c1             	mov    %r9d,%eax
140002a2e:	48 2b d1             	sub    %rcx,%rdx
140002a31:	48 2b d0             	sub    %rax,%rdx
140002a34:	4c 8b ca             	mov    %rdx,%r9
140002a37:	41 89 10             	mov    %edx,(%r8)
140002a3a:	49 c1 e9 3f          	shr    $0x3f,%r9
140002a3e:	4c 3b df             	cmp    %rdi,%r11
140002a41:	75 cd                	jne    0x140002a10
140002a43:	45 85 c9             	test   %r9d,%r9d
140002a46:	74 25                	je     0x140002a6d
140002a48:	4e 8d 04 95 00 00 00 	lea    0x0(,%r10,4),%r8
140002a4f:	00
140002a50:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140002a54:	41 8b c1             	mov    %r9d,%eax
140002a57:	42 8b 14 01          	mov    (%rcx,%r8,1),%edx
140002a5b:	48 2b d0             	sub    %rax,%rdx
140002a5e:	42 89 14 01          	mov    %edx,(%rcx,%r8,1)
140002a62:	48 c1 ea 3f          	shr    $0x3f,%rdx
140002a66:	44 8b ca             	mov    %edx,%r9d
140002a69:	85 d2                	test   %edx,%edx
140002a6b:	75 e3                	jne    0x140002a50
140002a6d:	8b 43 10             	mov    0x10(%rbx),%eax
140002a70:	ff c8                	dec    %eax
140002a72:	85 c0                	test   %eax,%eax
140002a74:	7e 16                	jle    0x140002a8c
140002a76:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140002a7a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140002a80:	44 39 24 82          	cmp    %r12d,(%rdx,%rax,4)
140002a84:	75 06                	jne    0x140002a8c
140002a86:	ff c8                	dec    %eax
140002a88:	85 c0                	test   %eax,%eax
140002a8a:	7f f4                	jg     0x140002a80
140002a8c:	8d 78 01             	lea    0x1(%rax),%edi
140002a8f:	48 3b 7b 18          	cmp    0x18(%rbx),%rdi
140002a93:	76 0e                	jbe    0x140002aa3
140002a95:	48 8b 03             	mov    (%rbx),%rax
140002a98:	8b d7                	mov    %edi,%edx
140002a9a:	48 8b cb             	mov    %rbx,%rcx
140002a9d:	ff 10                	call   *(%rax)
140002a9f:	48 3b 7b 18          	cmp    0x18(%rbx),%rdi
140002aa3:	48 0f 47 7b 18       	cmova  0x18(%rbx),%rdi
140002aa8:	48 8b d5             	mov    %rbp,%rdx
140002aab:	48 8b cb             	mov    %rbx,%rcx
140002aae:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
140002ab2:	ff c6                	inc    %esi
140002ab4:	e8 f7 f7 ff ff       	call   0x1400022b0
140002ab9:	85 c0                	test   %eax,%eax
140002abb:	0f 89 2f ff ff ff    	jns    0x1400029f0
140002ac1:	8b c6                	mov    %esi,%eax
140002ac3:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140002ac8:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140002acd:	48 83 c4 20          	add    $0x20,%rsp
140002ad1:	41 5f                	pop    %r15
140002ad3:	41 5e                	pop    %r14
140002ad5:	41 5c                	pop    %r12
140002ad7:	5f                   	pop    %rdi
140002ad8:	5e                   	pop    %rsi
140002ad9:	c3                   	ret
140002ada:	cc                   	int3
140002adb:	cc                   	int3
140002adc:	cc                   	int3
140002add:	cc                   	int3
140002ade:	cc                   	int3
140002adf:	cc                   	int3
140002ae0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140002ae5:	55                   	push   %rbp
140002ae6:	56                   	push   %rsi
140002ae7:	57                   	push   %rdi
140002ae8:	41 54                	push   %r12
140002aea:	41 55                	push   %r13
140002aec:	41 56                	push   %r14
140002aee:	41 57                	push   %r15
140002af0:	48 8d ac 24 b0 fd ff 	lea    -0x250(%rsp),%rbp
140002af7:	ff
140002af8:	48 81 ec 50 03 00 00 	sub    $0x350,%rsp
140002aff:	48 8b 05 3a 55 07 00 	mov    0x7553a(%rip),%rax        # 0x140078040
140002b06:	48 33 c4             	xor    %rsp,%rax
140002b09:	48 89 85 40 02 00 00 	mov    %rax,0x240(%rbp)
140002b10:	4d 8b e1             	mov    %r9,%r12
140002b13:	41 8b c0             	mov    %r8d,%eax
140002b16:	89 44 24 40          	mov    %eax,0x40(%rsp)
140002b1a:	8b da                	mov    %edx,%ebx
140002b1c:	89 54 24 48          	mov    %edx,0x48(%rsp)
140002b20:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
140002b25:	89 44 24 70          	mov    %eax,0x70(%rsp)
140002b29:	48 8b 85 b0 02 00 00 	mov    0x2b0(%rbp),%rax
140002b30:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140002b35:	33 d2                	xor    %edx,%edx
140002b37:	41 b8 b0 00 00 00    	mov    $0xb0,%r8d
140002b3d:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
140002b41:	e8 64 7c 05 00       	call   0x14005a7aa
140002b46:	33 ff                	xor    %edi,%edi
140002b48:	48 89 7d 90          	mov    %rdi,-0x70(%rbp)
140002b4c:	4c 8d 35 3d dc 05 00 	lea    0x5dc3d(%rip),%r14        # 0x140060790
140002b53:	4c 89 75 80          	mov    %r14,-0x80(%rbp)
140002b57:	48 8d 75 a0          	lea    -0x60(%rbp),%rsi