140008825:	4c 8d 45 40          	lea    0x40(%rbp),%r8
140008829:	66 89 45 40          	mov    %ax,0x40(%rbp)
14000882d:	45 8b ca             	mov    %r10d,%r9d
140008830:	41 8b d2             	mov    %r10d,%edx
140008833:	eb 0e                	jmp    0x140008843
140008835:	41 3a c2             	cmp    %r10b,%al
140008838:	75 19                	jne    0x140008853
14000883a:	4d 8b cb             	mov    %r11,%r9
14000883d:	4c 8b c7             	mov    %rdi,%r8
140008840:	49 8b d3             	mov    %r11,%rdx
140008843:	49 8b 4d 10          	mov    0x10(%r13),%rcx
140008847:	48 ff 15 fa 78 03 00 	rex.W call *0x378fa(%rip)        # 0x140040148
14000884e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140008853:	8b 37                	mov    (%rdi),%esi
140008855:	0f 57 c0             	xorps  %xmm0,%xmm0
140008858:	49 8b 47 10          	mov    0x10(%r15),%rax
14000885c:	48 8b 7d 60          	mov    0x60(%rbp),%rdi
140008860:	48 0f af c6          	imul   %rsi,%rax
140008864:	f3 0f 7f 45 e8       	movdqu %xmm0,-0x18(%rbp)
140008869:	89 5d dc             	mov    %ebx,-0x24(%rbp)
14000886c:	49 03 c6             	add    %r14,%rax
14000886f:	66 89 5d e0          	mov    %bx,-0x20(%rbp)
140008873:	48 89 45 b0          	mov    %rax,-0x50(%rbp)
140008877:	41 0f b7 47 06       	movzwl 0x6(%r15),%eax
14000887c:	66 89 45 d8          	mov    %ax,-0x28(%rbp)
140008880:	41 8a 47 08          	mov    0x8(%r15),%al
140008884:	88 45 da             	mov    %al,-0x26(%rbp)
140008887:	eb 61                	jmp    0x1400088ea
140008889:	49 8b 47 10          	mov    0x10(%r15),%rax
14000888d:	48 8d 55 40          	lea    0x40(%rbp),%rdx
140008891:	4d 8b 47 20          	mov    0x20(%r15),%r8
140008895:	48 8d 4d d8          	lea    -0x28(%rbp),%rcx
140008899:	4c 8b ee             	mov    %rsi,%r13
14000889c:	49 d1 ed             	shr    $1,%r13
14000889f:	49 0f af c5          	imul   %r13,%rax
1400088a3:	49 03 c6             	add    %r14,%rax
1400088a6:	48 89 45 40          	mov    %rax,0x40(%rbp)
1400088aa:	e8 51 fa ff ff       	call   0x140008300
1400088af:	0f b7 45 e0          	movzwl -0x20(%rbp),%eax
1400088b3:	48 3b f8             	cmp    %rax,%rdi
1400088b6:	75 14                	jne    0x1400088cc
1400088b8:	48 8b 55 f0          	mov    -0x10(%rbp),%rdx
1400088bc:	4c 8b c7             	mov    %rdi,%r8
1400088bf:	48 8b 4d 58          	mov    0x58(%rbp),%rcx
1400088c3:	e8 6e d8 02 00       	call   0x140036136
1400088c8:	8b c8                	mov    %eax,%ecx
1400088ca:	eb 08                	jmp    0x1400088d4
1400088cc:	0f b7 45 e0          	movzwl -0x20(%rbp),%eax
1400088d0:	8b cf                	mov    %edi,%ecx
1400088d2:	2b c8                	sub    %eax,%ecx
1400088d4:	85 c9                	test   %ecx,%ecx
1400088d6:	7e 0f                	jle    0x1400088e7
1400088d8:	4c 8b 75 40          	mov    0x40(%rbp),%r14
1400088dc:	49 8b c4             	mov    %r12,%rax
1400088df:	49 2b c5             	sub    %r13,%rax
1400088e2:	48 03 f0             	add    %rax,%rsi
1400088e5:	eb 03                	jmp    0x1400088ea
1400088e7:	49 8b f5             	mov    %r13,%rsi
1400088ea:	48 85 f6             	test   %rsi,%rsi
1400088ed:	75 9a                	jne    0x140008889
1400088ef:	4c 3b 75 b0          	cmp    -0x50(%rbp),%r14
1400088f3:	0f 83 57 01 00 00    	jae    0x140008a50
1400088f9:	4d 8b 47 20          	mov    0x20(%r15),%r8
1400088fd:	48 8d 55 40          	lea    0x40(%rbp),%rdx
140008901:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
140008905:	4c 89 75 40          	mov    %r14,0x40(%rbp)
140008909:	e8 f2 f9 ff ff       	call   0x140008300
14000890e:	0f b7 45 c0          	movzwl -0x40(%rbp),%eax
140008912:	48 3b f8             	cmp    %rax,%rdi
140008915:	75 18                	jne    0x14000892f
140008917:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
14000891b:	4c 8b c7             	mov    %rdi,%r8
14000891e:	48 8b 4d 58          	mov    0x58(%rbp),%rcx
140008922:	e8 0f d8 02 00       	call   0x140036136
140008927:	44 8b e0             	mov    %eax,%r12d
14000892a:	e9 ab 00 00 00       	jmp    0x1400089da
14000892f:	0f b7 45 c0          	movzwl -0x40(%rbp),%eax
140008933:	2b f8                	sub    %eax,%edi
140008935:	44 8b e7             	mov    %edi,%r12d
140008938:	e9 9d 00 00 00       	jmp    0x1400089da
14000893d:	8b f3                	mov    %ebx,%esi
14000893f:	39 1f                	cmp    %ebx,(%rdi)
140008941:	0f 86 09 01 00 00    	jbe    0x140008a50
140008947:	4d 8b 47 20          	mov    0x20(%r15),%r8
14000894b:	48 8d 55 40          	lea    0x40(%rbp),%rdx
14000894f:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
140008953:	4c 89 75 40          	mov    %r14,0x40(%rbp)
140008957:	e8 a4 f9 ff ff       	call   0x140008300
14000895c:	84 c0                	test   %al,%al
14000895e:	74 3c                	je     0x14000899c
140008960:	0f b7 45 c0          	movzwl -0x40(%rbp),%eax
140008964:	48 8b 4d 60          	mov    0x60(%rbp),%rcx
140008968:	48 3b c8             	cmp    %rax,%rcx
14000896b:	75 15                	jne    0x140008982
14000896d:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
140008971:	4c 8b c1             	mov    %rcx,%r8
140008974:	48 8b 4d 58          	mov    0x58(%rbp),%rcx
140008978:	e8 b9 d7 02 00       	call   0x140036136
14000897d:	44 8b e0             	mov    %eax,%r12d
140008980:	eb 09                	jmp    0x14000898b
140008982:	0f b7 45 c0          	movzwl -0x40(%rbp),%eax
140008986:	2b c8                	sub    %eax,%ecx
140008988:	44 8b e1             	mov    %ecx,%r12d
14000898b:	45 85 e4             	test   %r12d,%r12d
14000898e:	7e 4d                	jle    0x1400089dd
140008990:	4c 8b 75 40          	mov    0x40(%rbp),%r14
140008994:	ff c6                	inc    %esi
140008996:	3b 37                	cmp    (%rdi),%esi
140008998:	72 ad                	jb     0x140008947
14000899a:	eb 3e                	jmp    0x1400089da
14000899c:	39 37                	cmp    %esi,(%rdi)
14000899e:	74 3a                	je     0x1400089da
1400089a0:	41 8a 45 02          	mov    0x2(%r13),%al
1400089a4:	89 37                	mov    %esi,(%rdi)
1400089a6:	3c 01                	cmp    $0x1,%al
1400089a8:	75 10                	jne    0x1400089ba
1400089aa:	66 89 75 40          	mov    %si,0x40(%rbp)
1400089ae:	4c 8d 45 40          	lea    0x40(%rbp),%r8
1400089b2:	41 b9 02 00 00 00    	mov    $0x2,%r9d
1400089b8:	eb 0d                	jmp    0x1400089c7
1400089ba:	3c 02                	cmp    $0x2,%al
1400089bc:	75 1c                	jne    0x1400089da
1400089be:	41 b9 04 00 00 00    	mov    $0x4,%r9d
1400089c4:	4c 8b c7             	mov    %rdi,%r8
1400089c7:	49 8b 4d 10          	mov    0x10(%r13),%rcx
1400089cb:	49 8b d1             	mov    %r9,%rdx
1400089ce:	48 ff 15 73 77 03 00 	rex.W call *0x37773(%rip)        # 0x140040148
1400089d5:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400089da:	45 85 e4             	test   %r12d,%r12d
1400089dd:	75 71                	jne    0x140008a50
1400089df:	44 8a 45 ba          	mov    -0x46(%rbp),%r8b
1400089e3:	45 84 c0             	test   %r8b,%r8b
1400089e6:	40 0f 95 c7          	setne  %dil
1400089ea:	45 84 c0             	test   %r8b,%r8b
1400089ed:	74 4c                	je     0x140008a3b
1400089ef:	44 8b 4d 68          	mov    0x68(%rbp),%r9d
1400089f3:	44 03 4d bc          	add    -0x44(%rbp),%r9d
1400089f7:	44 39 4d bc          	cmp    %r9d,-0x44(%rbp)
1400089fb:	74 3e                	je     0x140008a3b
1400089fd:	44 89 4d bc          	mov    %r9d,-0x44(%rbp)
140008a01:	41 80 f8 01          	cmp    $0x1,%r8b
140008a05:	75 11                	jne    0x140008a18
140008a07:	66 44 89 4d 40       	mov    %r9w,0x40(%rbp)
140008a0c:	4c 8d 45 40          	lea    0x40(%rbp),%r8
140008a10:	41 b9 02 00 00 00    	mov    $0x2,%r9d
140008a16:	eb 10                	jmp    0x140008a28
140008a18:	41 80 f8 02          	cmp    $0x2,%r8b
140008a1c:	75 1d                	jne    0x140008a3b
140008a1e:	41 b9 04 00 00 00    	mov    $0x4,%r9d
140008a24:	4c 8d 45 bc          	lea    -0x44(%rbp),%r8
140008a28:	48 8b 4d c8          	mov    -0x38(%rbp),%rcx
140008a2c:	49 8b d1             	mov    %r9,%rdx
140008a2f:	48 ff 15 12 77 03 00 	rex.W call *0x37712(%rip)        # 0x140040148
140008a36:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140008a3b:	40 84 ff             	test   %dil,%dil
140008a3e:	75 06                	jne    0x140008a46
140008a40:	41 38 5f 38          	cmp    %bl,0x38(%r15)
140008a44:	74 02                	je     0x140008a48
140008a46:	b3 01                	mov    $0x1,%bl
140008a48:	41 88 5f 38          	mov    %bl,0x38(%r15)
140008a4c:	33 c0                	xor    %eax,%eax
140008a4e:	eb 03                	jmp    0x140008a53
140008a50:	49 8b c6             	mov    %r14,%rax
140008a53:	48 8b 9c 24 b8 00 00 	mov    0xb8(%rsp),%rbx
140008a5a:	00
140008a5b:	48 83 c4 70          	add    $0x70,%rsp
140008a5f:	41 5f                	pop    %r15
140008a61:	41 5e                	pop    %r14
140008a63:	41 5d                	pop    %r13
140008a65:	41 5c                	pop    %r12
140008a67:	5f                   	pop    %rdi
140008a68:	5e                   	pop    %rsi
140008a69:	5d                   	pop    %rbp
140008a6a:	c3                   	ret
140008a6b:	cc                   	int3
140008a6c:	cc                   	int3
140008a6d:	cc                   	int3
140008a6e:	cc                   	int3
140008a6f:	cc                   	int3
140008a70:	cc                   	int3
140008a71:	cc                   	int3
140008a72:	cc                   	int3
140008a73:	cc                   	int3
140008a74:	48 8b c4             	mov    %rsp,%rax
140008a77:	48 89 58 10          	mov    %rbx,0x10(%rax)
140008a7b:	48 89 70 18          	mov    %rsi,0x18(%rax)
140008a7f:	48 89 78 20          	mov    %rdi,0x20(%rax)
140008a83:	55                   	push   %rbp
140008a84:	41 54                	push   %r12
140008a86:	41 55                	push   %r13
140008a88:	41 56                	push   %r14
140008a8a:	41 57                	push   %r15
140008a8c:	48 8d 68 b1          	lea    -0x4f(%rax),%rbp
140008a90:	48 81 ec a0 00 00 00 	sub    $0xa0,%rsp
140008a97:	48 8b 79 18          	mov    0x18(%rcx),%rdi
140008a9b:	48 8b d9             	mov    %rcx,%rbx
140008a9e:	33 c9                	xor    %ecx,%ecx
140008aa0:	4d 8b e9             	mov    %r9,%r13
140008aa3:	4d 8b f0             	mov    %r8,%r14
140008aa6:	4c 8b fa             	mov    %rdx,%r15
140008aa9:	48 85 ff             	test   %rdi,%rdi
140008aac:	0f 84 4f 03 00 00    	je     0x140008e01
140008ab2:	0f b7 43 02          	movzwl 0x2(%rbx),%eax
140008ab6:	48 8d 55 b7          	lea    -0x49(%rbp),%rdx
140008aba:	4c 8b 43 20          	mov    0x20(%rbx),%r8
140008abe:	48 83 c7 0a          	add    $0xa,%rdi
140008ac2:	66 89 45 bf          	mov    %ax,-0x41(%rbp)
140008ac6:	0f 57 c0             	xorps  %xmm0,%xmm0
140008ac9:	8a 43 04             	mov    0x4(%rbx),%al
140008acc:	89 4d c3             	mov    %ecx,-0x3d(%rbp)
140008acf:	66 89 4d c7          	mov    %cx,-0x39(%rbp)
140008ad3:	88 4d 57             	mov    %cl,0x57(%rbp)
140008ad6:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
140008ada:	88 45 c1             	mov    %al,-0x3f(%rbp)
140008add:	48 89 7d b7          	mov    %rdi,-0x49(%rbp)
140008ae1:	f3 0f 7f 45 cf       	movdqu %xmm0,-0x31(%rbp)
140008ae6:	e8 15 f8 ff ff       	call   0x140008300
140008aeb:	4c 8b 65 77          	mov    0x77(%rbp),%r12
140008aef:	e9 52 01 00 00       	jmp    0x140008c46
140008af4:	0f b7 4d c7          	movzwl -0x39(%rbp),%ecx
140008af8:	4c 3b f1             	cmp    %rcx,%r14
140008afb:	75 16                	jne    0x140008b13
140008afd:	48 8b 55 d7          	mov    -0x29(%rbp),%rdx
140008b01:	4d 8b c6             	mov    %r14,%r8
140008b04:	49 8b cf             	mov    %r15,%rcx
140008b07:	e8 2a d6 02 00       	call   0x140036136
140008b0c:	8b c8                	mov    %eax,%ecx
140008b0e:	45 33 c9             	xor    %r9d,%r9d
140008b11:	eb 09                	jmp    0x140008b1c
140008b13:	0f b7 45 c7          	movzwl -0x39(%rbp),%eax
140008b17:	41 8b ce             	mov    %r14d,%ecx
140008b1a:	2b c8                	sub    %eax,%ecx
140008b1c:	85 c9                	test   %ecx,%ecx
140008b1e:	0f 88 a7 01 00 00    	js     0x140008ccb
140008b24:	0f 84 66 01 00 00    	je     0x140008c90
140008b2a:	48 8b 7d b7          	mov    -0x49(%rbp),%rdi
140008b2e:	48 89 7d b7          	mov    %rdi,-0x49(%rbp)
140008b32:	4c 39 4b 10          	cmp    %r9,0x10(%rbx)
140008b36:	76 6c                	jbe    0x140008ba4
140008b38:	48 8b 43 20          	mov    0x20(%rbx),%rax
140008b3c:	33 d2                	xor    %edx,%edx
140008b3e:	48 2b 43 18          	sub    0x18(%rbx),%rax
140008b42:	48 f7 73 10          	divq   0x10(%rbx)
140008b46:	8b 55 c3             	mov    -0x3d(%rbp),%edx
140008b49:	48 3b d0             	cmp    %rax,%rdx
140008b4c:	76 47                	jbe    0x140008b95
140008b4e:	3b d0                	cmp    %eax,%edx
140008b50:	74 43                	je     0x140008b95
140008b52:	8b d0                	mov    %eax,%edx
140008b54:	89 45 c3             	mov    %eax,-0x3d(%rbp)
140008b57:	8a 45 c1             	mov    -0x3f(%rbp),%al
140008b5a:	3c 01                	cmp    $0x1,%al
140008b5c:	75 13                	jne    0x140008b71
140008b5e:	0f b7 c2             	movzwl %dx,%eax
140008b61:	66 89 55 df          	mov    %dx,-0x21(%rbp)
140008b65:	41 b9 02 00 00 00    	mov    $0x2,%r9d
140008b6b:	4c 8d 45 df          	lea    -0x21(%rbp),%r8
140008b6f:	eb 0e                	jmp    0x140008b7f
140008b71:	3c 02                	cmp    $0x2,%al
140008b73:	75 20                	jne    0x140008b95
140008b75:	41 b9 04 00 00 00    	mov    $0x4,%r9d
140008b7b:	4c 8d 45 c3          	lea    -0x3d(%rbp),%r8
140008b7f:	48 8b 4d cf          	mov    -0x31(%rbp),%rcx
140008b83:	49 8b d1             	mov    %r9,%rdx
140008b86:	48 ff 15 bb 75 03 00 	rex.W call *0x375bb(%rip)        # 0x140040148
140008b8d:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140008b92:	8b 55 c3             	mov    -0x3d(%rbp),%edx
140008b95:	8b c2                	mov    %edx,%eax
140008b97:	48 0f af 43 10       	imul   0x10(%rbx),%rax
140008b9c:	48 03 f8             	add    %rax,%rdi
140008b9f:	e9 8d 00 00 00       	jmp    0x140008c31
140008ba4:	0f b7 43 06          	movzwl 0x6(%rbx),%eax
140008ba8:	0f 57 c0             	xorps  %xmm0,%xmm0
140008bab:	66 89 45 07          	mov    %ax,0x7(%rbp)
140008baf:	41 8b f1             	mov    %r9d,%esi
140008bb2:	8a 43 08             	mov    0x8(%rbx),%al
140008bb5:	88 45 09             	mov    %al,0x9(%rbp)
140008bb8:	8b 45 c3             	mov    -0x3d(%rbp),%eax
140008bbb:	44 89 4d 0b          	mov    %r9d,0xb(%rbp)
140008bbf:	66 44 89 4d 0f       	mov    %r9w,0xf(%rbp)
140008bc4:	f3 0f 7f 45 17       	movdqu %xmm0,0x17(%rbp)
140008bc9:	85 c0                	test   %eax,%eax
140008bcb:	74 22                	je     0x140008bef
140008bcd:	4c 8b 43 20          	mov    0x20(%rbx),%r8
140008bd1:	48 8d 55 b7          	lea    -0x49(%rbp),%rdx
140008bd5:	48 8d 4d 07          	lea    0x7(%rbp),%rcx
140008bd9:	e8 22 f7 ff ff       	call   0x140008300
140008bde:	84 c0                	test   %al,%al
140008be0:	8b 45 c3             	mov    -0x3d(%rbp),%eax
140008be3:	74 06                	je     0x140008beb
140008be5:	ff c6                	inc    %esi
140008be7:	3b f0                	cmp    %eax,%esi
140008be9:	72 e2                	jb     0x140008bcd
140008beb:	48 8b 7d b7          	mov    -0x49(%rbp),%rdi
140008bef:	3b c6                	cmp    %esi,%eax
140008bf1:	74 3e                	je     0x140008c31
140008bf3:	8a 45 c1             	mov    -0x3f(%rbp),%al
140008bf6:	89 75 c3             	mov    %esi,-0x3d(%rbp)
140008bf9:	3c 01                	cmp    $0x1,%al
140008bfb:	75 14                	jne    0x140008c11
140008bfd:	b8 02 00 00 00       	mov    $0x2,%eax
140008c02:	66 89 75 e3          	mov    %si,-0x1d(%rbp)
140008c06:	44 8b c8             	mov    %eax,%r9d
140008c09:	4c 8d 45 e3          	lea    -0x1d(%rbp),%r8
140008c0d:	8b d0                	mov    %eax,%edx
140008c0f:	eb 10                	jmp    0x140008c21
140008c11:	3c 02                	cmp    $0x2,%al
140008c13:	75 1c                	jne    0x140008c31
140008c15:	ba 04 00 00 00       	mov    $0x4,%edx
140008c1a:	4c 8d 45 c3          	lea    -0x3d(%rbp),%r8
140008c1e:	44 8b ca             	mov    %edx,%r9d
140008c21:	48 8b 4d cf          	mov    -0x31(%rbp),%rcx
140008c25:	48 ff 15 1c 75 03 00 	rex.W call *0x3751c(%rip)        # 0x140040148
140008c2c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140008c31:	4c 8b 43 20          	mov    0x20(%rbx),%r8
140008c35:	48 8d 55 b7          	lea    -0x49(%rbp),%rdx
140008c39:	48 8d 4d bf          	lea    -0x41(%rbp),%rcx
140008c3d:	48 89 7d b7          	mov    %rdi,-0x49(%rbp)
140008c41:	e8 ba f6 ff ff       	call   0x140008300
140008c46:	45 33 c9             	xor    %r9d,%r9d
140008c49:	40 8a f0             	mov    %al,%sil
140008c4c:	84 c0                	test   %al,%al
140008c4e:	0f 85 a0 fe ff ff    	jne    0x140008af4
140008c54:	48 8b 7d b7          	mov    -0x49(%rbp),%rdi
140008c58:	48 89 7b 20          	mov    %rdi,0x20(%rbx)
140008c5c:	49 8b c9             	mov    %r9,%rcx
140008c5f:	44 38 4d 57          	cmp    %r9b,0x57(%rbp)
140008c63:	0f 85 85 00 00 00    	jne    0x140008cee
140008c69:	0f b7 45 bf          	movzwl -0x41(%rbp),%eax
140008c6d:	c7 45 c3 01 00 00 00 	movl   $0x1,-0x3d(%rbp)
140008c74:	66 44 89 75 c7       	mov    %r14w,-0x39(%rbp)
140008c79:	4c 89 4d cf          	mov    %r9,-0x31(%rbp)
140008c7d:	4c 89 7d d7          	mov    %r15,-0x29(%rbp)
140008c81:	66 85 c0             	test   %ax,%ax
140008c84:	75 50                	jne    0x140008cd6
140008c86:	41 0f b7 ce          	movzwl %r14w,%ecx
140008c8a:	48 83 c1 02          	add    $0x2,%rcx
140008c8e:	eb 49                	jmp    0x140008cd9
140008c90:	8b 45 7f             	mov    0x7f(%rbp),%eax
140008c93:	48 8d 55 bf          	lea    -0x41(%rbp),%rdx
140008c97:	4c 8b 45 b7          	mov    -0x49(%rbp),%r8
140008c9b:	4d 8b cd             	mov    %r13,%r9
140008c9e:	89 44 24 28          	mov    %eax,0x28(%rsp)
140008ca2:	48 8b cb             	mov    %rbx,%rcx
140008ca5:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140008caa:	e8 f1 fa ff ff       	call   0x1400087a0
140008caf:	45 33 c9             	xor    %r9d,%r9d
140008cb2:	48 89 45 b7          	mov    %rax,-0x49(%rbp)
140008cb6:	48 8b f8             	mov    %rax,%rdi
140008cb9:	48 85 c0             	test   %rax,%rax