1401bfce6:	4c 8d 3d 53 ac 16 00 	lea    0x16ac53(%rip),%r15        # 0x14032a940
1401bfced:	4c 89 7c 24 40       	mov    %r15,0x40(%rsp)
1401bfcf2:	48 89 74 24 48       	mov    %rsi,0x48(%rsp)
1401bfcf7:	c6 44 24 50 00       	movb   $0x0,0x50(%rsp)
1401bfcfc:	48 8b d5             	mov    %rbp,%rdx
1401bfcff:	48 8d 8c 24 80 00 00 	lea    0x80(%rsp),%rcx
1401bfd06:	00
1401bfd07:	e8 84 6f ff ff       	call   0x1401b6c90
1401bfd0c:	48 8b 8c 24 a0 00 00 	mov    0xa0(%rsp),%rcx
1401bfd13:	00
1401bfd14:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1401bfd19:	4d 8b ce             	mov    %r14,%r9
1401bfd1c:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
1401bfd21:	48 8b d0             	mov    %rax,%rdx
1401bfd24:	48 8b cb             	mov    %rbx,%rcx
1401bfd27:	ff d7                	call   *%rdi
1401bfd29:	90                   	nop
1401bfd2a:	4c 89 7c 24 40       	mov    %r15,0x40(%rsp)
1401bfd2f:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
1401bfd34:	48 85 c9             	test   %rcx,%rcx
1401bfd37:	74 29                	je     0x1401bfd62
1401bfd39:	80 7c 24 50 00       	cmpb   $0x0,0x50(%rsp)
1401bfd3e:	74 14                	je     0x1401bfd54
1401bfd40:	e8 b7 e0 f1 ff       	call   0x1400dddfc
1401bfd45:	ba 18 00 00 00       	mov    $0x18,%edx
1401bfd4a:	48 8b 4c 24 48       	mov    0x48(%rsp),%rcx
1401bfd4f:	e8 30 a5 13 00       	call   0x1402fa284
1401bfd54:	48 c7 44 24 48 00 00 	movq   $0x0,0x48(%rsp)
1401bfd5b:	00 00
1401bfd5d:	c6 44 24 50 00       	movb   $0x0,0x50(%rsp)
1401bfd62:	48 85 db             	test   %rbx,%rbx
1401bfd65:	74 16                	je     0x1401bfd7d
1401bfd67:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401bfd6b:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401bfd6f:	48 83 c1 08          	add    $0x8,%rcx
1401bfd73:	48 03 cb             	add    %rbx,%rcx
1401bfd76:	48 8b 01             	mov    (%rcx),%rax
1401bfd79:	ff 50 08             	call   *0x8(%rax)
1401bfd7c:	90                   	nop
1401bfd7d:	4c 8d 5c 24 60       	lea    0x60(%rsp),%r11
1401bfd82:	49 8b 5b 28          	mov    0x28(%r11),%rbx
1401bfd86:	49 8b 6b 30          	mov    0x30(%r11),%rbp
1401bfd8a:	49 8b 73 38          	mov    0x38(%r11),%rsi
1401bfd8e:	49 8b e3             	mov    %r11,%rsp
1401bfd91:	41 5f                	pop    %r15
1401bfd93:	41 5e                	pop    %r14
1401bfd95:	5f                   	pop    %rdi
1401bfd96:	c3                   	ret
1401bfd97:	cc                   	int3
1401bfd98:	cc                   	int3
1401bfd99:	cc                   	int3
1401bfd9a:	cc                   	int3
1401bfd9b:	cc                   	int3
1401bfd9c:	cc                   	int3
1401bfd9d:	cc                   	int3
1401bfd9e:	cc                   	int3
1401bfd9f:	cc                   	int3
1401bfda0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401bfda5:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1401bfdaa:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401bfdaf:	57                   	push   %rdi
1401bfdb0:	41 56                	push   %r14
1401bfdb2:	41 57                	push   %r15
1401bfdb4:	48 83 ec 30          	sub    $0x30,%rsp
1401bfdb8:	4d 8b f9             	mov    %r9,%r15
1401bfdbb:	49 8b e8             	mov    %r8,%rbp
1401bfdbe:	4c 8b f2             	mov    %rdx,%r14
1401bfdc1:	48 85 c9             	test   %rcx,%rcx
1401bfdc4:	74 70                	je     0x1401bfe36
1401bfdc6:	48 85 d2             	test   %rdx,%rdx
1401bfdc9:	74 6b                	je     0x1401bfe36
1401bfdcb:	4d 85 c0             	test   %r8,%r8
1401bfdce:	74 66                	je     0x1401bfe36
1401bfdd0:	48 8b 79 f0          	mov    -0x10(%rcx),%rdi
1401bfdd4:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1401bfdd9:	48 85 ff             	test   %rdi,%rdi
1401bfddc:	74 15                	je     0x1401bfdf3
1401bfdde:	48 8b 47 08          	mov    0x8(%rdi),%rax
1401bfde2:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401bfde6:	48 83 c1 08          	add    $0x8,%rcx
1401bfdea:	48 03 cf             	add    %rdi,%rcx
1401bfded:	48 8b 01             	mov    (%rcx),%rax
1401bfdf0:	ff 10                	call   *(%rax)
1401bfdf2:	90                   	nop
1401bfdf3:	48 8b 07             	mov    (%rdi),%rax
1401bfdf6:	48 8b 18             	mov    (%rax),%rbx
1401bfdf9:	49 8b d6             	mov    %r14,%rdx
1401bfdfc:	48 8d 4c 24 50       	lea    0x50(%rsp),%rcx
1401bfe01:	e8 8a 6e ff ff       	call   0x1401b6c90
1401bfe06:	4d 8b cf             	mov    %r15,%r9
1401bfe09:	4c 8b c5             	mov    %rbp,%r8
1401bfe0c:	48 8b d0             	mov    %rax,%rdx
1401bfe0f:	48 8b cf             	mov    %rdi,%rcx
1401bfe12:	ff d3                	call   *%rbx
1401bfe14:	0f b6 d8             	movzbl %al,%ebx
1401bfe17:	48 85 ff             	test   %rdi,%rdi
1401bfe1a:	74 16                	je     0x1401bfe32
1401bfe1c:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1401bfe20:	48 63 49 04          	movslq 0x4(%rcx),%rcx
1401bfe24:	48 83 c1 08          	add    $0x8,%rcx
1401bfe28:	48 03 cf             	add    %rdi,%rcx
1401bfe2b:	48 8b 11             	mov    (%rcx),%rdx
1401bfe2e:	ff 52 08             	call   *0x8(%rdx)
1401bfe31:	90                   	nop
1401bfe32:	8b c3                	mov    %ebx,%eax
1401bfe34:	eb 02                	jmp    0x1401bfe38
1401bfe36:	33 c0                	xor    %eax,%eax
1401bfe38:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
1401bfe3d:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
1401bfe42:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
1401bfe47:	48 83 c4 30          	add    $0x30,%rsp
1401bfe4b:	41 5f                	pop    %r15
1401bfe4d:	41 5e                	pop    %r14
1401bfe4f:	5f                   	pop    %rdi
1401bfe50:	c3                   	ret
1401bfe51:	cc                   	int3
1401bfe52:	cc                   	int3
1401bfe53:	cc                   	int3
1401bfe54:	cc                   	int3
1401bfe55:	cc                   	int3
1401bfe56:	cc                   	int3
1401bfe57:	cc                   	int3
1401bfe58:	cc                   	int3
1401bfe59:	cc                   	int3
1401bfe5a:	cc                   	int3
1401bfe5b:	cc                   	int3
1401bfe5c:	cc                   	int3
1401bfe5d:	cc                   	int3
1401bfe5e:	cc                   	int3
1401bfe5f:	cc                   	int3
1401bfe60:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401bfe65:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
1401bfe6a:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
1401bfe6f:	57                   	push   %rdi
1401bfe70:	41 56                	push   %r14
1401bfe72:	41 57                	push   %r15
1401bfe74:	48 83 ec 40          	sub    $0x40,%rsp
1401bfe78:	45 8b f1             	mov    %r9d,%r14d
1401bfe7b:	45 8b f8             	mov    %r8d,%r15d
1401bfe7e:	48 8b ea             	mov    %rdx,%rbp
1401bfe81:	48 85 c9             	test   %rcx,%rcx
1401bfe84:	0f 84 84 00 00 00    	je     0x1401bff0e
1401bfe8a:	48 85 d2             	test   %rdx,%rdx
1401bfe8d:	74 7f                	je     0x1401bff0e
1401bfe8f:	48 8b 79 f0          	mov    -0x10(%rcx),%rdi
1401bfe93:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1401bfe98:	48 85 ff             	test   %rdi,%rdi
1401bfe9b:	74 15                	je     0x1401bfeb2
1401bfe9d:	48 8b 47 08          	mov    0x8(%rdi),%rax
1401bfea1:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401bfea5:	48 83 c1 08          	add    $0x8,%rcx
1401bfea9:	48 03 cf             	add    %rdi,%rcx
1401bfeac:	48 8b 01             	mov    (%rcx),%rax
1401bfeaf:	ff 10                	call   *(%rax)
1401bfeb1:	90                   	nop
1401bfeb2:	48 8b 07             	mov    (%rdi),%rax
1401bfeb5:	48 8b 58 08          	mov    0x8(%rax),%rbx
1401bfeb9:	48 8b d5             	mov    %rbp,%rdx
1401bfebc:	48 8d 4c 24 60       	lea    0x60(%rsp),%rcx
1401bfec1:	e8 ca 6d ff ff       	call   0x1401b6c90
1401bfec6:	45 85 f6             	test   %r14d,%r14d
1401bfec9:	41 0f 95 c1          	setne  %r9b
1401bfecd:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
1401bfed4:	00
1401bfed5:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1401bfeda:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
1401bfee1:	00
1401bfee2:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1401bfee7:	45 8b c7             	mov    %r15d,%r8d
1401bfeea:	48 8b d0             	mov    %rax,%rdx
1401bfeed:	48 8b cf             	mov    %rdi,%rcx
1401bfef0:	ff d3                	call   *%rbx
1401bfef2:	90                   	nop
1401bfef3:	48 85 ff             	test   %rdi,%rdi
1401bfef6:	74 16                	je     0x1401bff0e
1401bfef8:	48 8b 47 08          	mov    0x8(%rdi),%rax
1401bfefc:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401bff00:	48 83 c1 08          	add    $0x8,%rcx
1401bff04:	48 03 cf             	add    %rdi,%rcx
1401bff07:	48 8b 01             	mov    (%rcx),%rax
1401bff0a:	ff 50 08             	call   *0x8(%rax)
1401bff0d:	90                   	nop
1401bff0e:	48 8b 5c 24 68       	mov    0x68(%rsp),%rbx
1401bff13:	48 8b 6c 24 70       	mov    0x70(%rsp),%rbp
1401bff18:	48 8b 74 24 78       	mov    0x78(%rsp),%rsi
1401bff1d:	48 83 c4 40          	add    $0x40,%rsp
1401bff21:	41 5f                	pop    %r15
1401bff23:	41 5e                	pop    %r14
1401bff25:	5f                   	pop    %rdi
1401bff26:	c3                   	ret
1401bff27:	cc                   	int3
1401bff28:	cc                   	int3
1401bff29:	cc                   	int3
1401bff2a:	cc                   	int3
1401bff2b:	cc                   	int3
1401bff2c:	cc                   	int3
1401bff2d:	cc                   	int3
1401bff2e:	cc                   	int3
1401bff2f:	cc                   	int3
1401bff30:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1401bff35:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1401bff3a:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
1401bff3f:	55                   	push   %rbp
1401bff40:	41 54                	push   %r12
1401bff42:	41 55                	push   %r13
1401bff44:	41 56                	push   %r14
1401bff46:	41 57                	push   %r15
1401bff48:	48 8d 6c 24 e1       	lea    -0x1f(%rsp),%rbp
1401bff4d:	48 81 ec b0 00 00 00 	sub    $0xb0,%rsp
1401bff54:	49 8b f1             	mov    %r9,%rsi
1401bff57:	45 8b f8             	mov    %r8d,%r15d
1401bff5a:	4c 8b f2             	mov    %rdx,%r14
1401bff5d:	48 8b d9             	mov    %rcx,%rbx
1401bff60:	45 33 ed             	xor    %r13d,%r13d
1401bff63:	48 85 c9             	test   %rcx,%rcx
1401bff66:	0f 84 e9 01 00 00    	je     0x1401c0155
1401bff6c:	48 85 d2             	test   %rdx,%rdx
1401bff6f:	0f 84 e0 01 00 00    	je     0x1401c0155
1401bff75:	48 8b 7d 7f          	mov    0x7f(%rbp),%rdi
1401bff79:	48 85 ff             	test   %rdi,%rdi
1401bff7c:	0f 84 d3 01 00 00    	je     0x1401c0155
1401bff82:	0f 57 c0             	xorps  %xmm0,%xmm0
1401bff85:	f3 0f 7f 45 df       	movdqu %xmm0,-0x21(%rbp)
1401bff8a:	4c 89 6d ef          	mov    %r13,-0x11(%rbp)
1401bff8e:	48 8d 55 df          	lea    -0x21(%rbp),%rdx
1401bff92:	48 8b 4d 77          	mov    0x77(%rbp),%rcx
1401bff96:	e8 a5 90 00 00       	call   0x1401c9040
1401bff9b:	48 8b 5b f0          	mov    -0x10(%rbx),%rbx
1401bff9f:	48 89 5d ff          	mov    %rbx,-0x1(%rbp)
1401bffa3:	48 85 db             	test   %rbx,%rbx
1401bffa6:	74 15                	je     0x1401bffbd
1401bffa8:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401bffac:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401bffb0:	48 83 c1 08          	add    $0x8,%rcx
1401bffb4:	48 03 cb             	add    %rbx,%rcx
1401bffb7:	48 8b 01             	mov    (%rcx),%rax
1401bffba:	ff 10                	call   *(%rax)
1401bffbc:	90                   	nop
1401bffbd:	48 8b 03             	mov    (%rbx),%rax
1401bffc0:	4c 8b 20             	mov    (%rax),%r12
1401bffc3:	48 8d 45 4f          	lea    0x4f(%rbp),%rax
1401bffc7:	48 89 45 07          	mov    %rax,0x7(%rbp)
1401bffcb:	48 8b d7             	mov    %rdi,%rdx
1401bffce:	48 8d 4d 4f          	lea    0x4f(%rbp),%rcx
1401bffd2:	e8 69 79 ff ff       	call   0x1401b7940
1401bffd7:	48 8b f8             	mov    %rax,%rdi
1401bffda:	48 8d 05 5f a9 16 00 	lea    0x16a95f(%rip),%rax        # 0x14032a940
1401bffe1:	48 89 45 c7          	mov    %rax,-0x39(%rbp)
1401bffe5:	4c 89 6d cf          	mov    %r13,-0x31(%rbp)
1401bffe9:	c6 45 d7 00          	movb   $0x0,-0x29(%rbp)
1401bffed:	48 8b 4d 6f          	mov    0x6f(%rbp),%rcx
1401bfff1:	48 85 c9             	test   %rcx,%rcx
1401bfff4:	74 08                	je     0x1401bfffe
1401bfff6:	48 89 4d cf          	mov    %rcx,-0x31(%rbp)
1401bfffa:	c6 45 d7 00          	movb   $0x0,-0x29(%rbp)
1401bfffe:	48 89 45 af          	mov    %rax,-0x51(%rbp)
1401c0002:	4c 89 6d b7          	mov    %r13,-0x49(%rbp)
1401c0006:	c6 45 bf 00          	movb   $0x0,-0x41(%rbp)
1401c000a:	48 85 f6             	test   %rsi,%rsi
1401c000d:	74 08                	je     0x1401c0017
1401c000f:	48 89 75 b7          	mov    %rsi,-0x49(%rbp)
1401c0013:	c6 45 bf 00          	movb   $0x0,-0x41(%rbp)
1401c0017:	49 8b d6             	mov    %r14,%rdx
1401c001a:	48 8d 4d f7          	lea    -0x9(%rbp),%rcx
1401c001e:	e8 6d 6c ff ff       	call   0x1401b6c90
1401c0023:	90                   	nop
1401c0024:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
1401c0029:	48 8d 4d df          	lea    -0x21(%rbp),%rcx
1401c002d:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
1401c0032:	48 8d 4d c7          	lea    -0x39(%rbp),%rcx
1401c0036:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
1401c003b:	4c 8d 4d af          	lea    -0x51(%rbp),%r9
1401c003f:	45 8b c7             	mov    %r15d,%r8d
1401c0042:	48 8b d0             	mov    %rax,%rdx
1401c0045:	48 8b cb             	mov    %rbx,%rcx
1401c0048:	41 ff d4             	call   *%r12
1401c004b:	0f b6 f8             	movzbl %al,%edi
1401c004e:	48 8d 35 eb a8 16 00 	lea    0x16a8eb(%rip),%rsi        # 0x14032a940
1401c0055:	48 89 75 af          	mov    %rsi,-0x51(%rbp)
1401c0059:	48 8b 4d b7          	mov    -0x49(%rbp),%rcx
1401c005d:	48 85 c9             	test   %rcx,%rcx
1401c0060:	74 21                	je     0x1401c0083
1401c0062:	80 7d bf 00          	cmpb   $0x0,-0x41(%rbp)
1401c0066:	74 13                	je     0x1401c007b
1401c0068:	e8 8f dd f1 ff       	call   0x1400dddfc
1401c006d:	ba 18 00 00 00       	mov    $0x18,%edx
1401c0072:	48 8b 4d b7          	mov    -0x49(%rbp),%rcx
1401c0076:	e8 09 a2 13 00       	call   0x1402fa284
1401c007b:	4c 89 6d b7          	mov    %r13,-0x49(%rbp)
1401c007f:	c6 45 bf 00          	movb   $0x0,-0x41(%rbp)
1401c0083:	48 89 75 c7          	mov    %rsi,-0x39(%rbp)
1401c0087:	48 8b 4d cf          	mov    -0x31(%rbp),%rcx
1401c008b:	48 85 c9             	test   %rcx,%rcx
1401c008e:	74 21                	je     0x1401c00b1
1401c0090:	80 7d d7 00          	cmpb   $0x0,-0x29(%rbp)
1401c0094:	74 13                	je     0x1401c00a9
1401c0096:	e8 61 dd f1 ff       	call   0x1400dddfc
1401c009b:	ba 18 00 00 00       	mov    $0x18,%edx
1401c00a0:	48 8b 4d cf          	mov    -0x31(%rbp),%rcx
1401c00a4:	e8 db a1 13 00       	call   0x1402fa284
1401c00a9:	4c 89 6d cf          	mov    %r13,-0x31(%rbp)
1401c00ad:	c6 45 d7 00          	movb   $0x0,-0x29(%rbp)
1401c00b1:	48 85 db             	test   %rbx,%rbx
1401c00b4:	74 16                	je     0x1401c00cc
1401c00b6:	48 8b 43 08          	mov    0x8(%rbx),%rax
1401c00ba:	48 63 48 04          	movslq 0x4(%rax),%rcx
1401c00be:	48 83 c1 08          	add    $0x8,%rcx
1401c00c2:	48 03 cb             	add    %rbx,%rcx
1401c00c5:	48 8b 01             	mov    (%rcx),%rax
1401c00c8:	ff 50 08             	call   *0x8(%rax)
1401c00cb:	90                   	nop
1401c00cc:	8b f7                	mov    %edi,%esi
1401c00ce:	48 8b 5d df          	mov    -0x21(%rbp),%rbx
1401c00d2:	48 85 db             	test   %rbx,%rbx
1401c00d5:	74 7a                	je     0x1401c0151
1401c00d7:	48 8b 7d e7          	mov    -0x19(%rbp),%rdi
1401c00db:	48 3b df             	cmp    %rdi,%rbx
1401c00de:	74 17                	je     0x1401c00f7
1401c00e0:	48 8b 03             	mov    (%rbx),%rax
1401c00e3:	33 d2                	xor    %edx,%edx
1401c00e5:	48 8b cb             	mov    %rbx,%rcx
1401c00e8:	ff 10                	call   *(%rax)
1401c00ea:	48 83 c3 18          	add    $0x18,%rbx
1401c00ee:	48 3b df             	cmp    %rdi,%rbx
1401c00f1:	75 ed                	jne    0x1401c00e0
1401c00f3:	48 8b 5d df          	mov    -0x21(%rbp),%rbx
1401c00f7:	48 8b 4d ef          	mov    -0x11(%rbp),%rcx
1401c00fb:	48 2b cb             	sub    %rbx,%rcx
1401c00fe:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
1401c0105:	aa aa 2a
1401c0108:	48 f7 e9             	imul   %rcx
1401c010b:	48 c1 fa 02          	sar    $0x2,%rdx
1401c010f:	48 8b c2             	mov    %rdx,%rax
1401c0112:	48 c1 e8 3f          	shr    $0x3f,%rax
1401c0116:	48 03 d0             	add    %rax,%rdx
1401c0119:	48 8d 14 52          	lea    (%rdx,%rdx,2),%rdx
1401c011d:	48 c1 e2 03          	shl    $0x3,%rdx
1401c0121:	48 8b c3             	mov    %rbx,%rax
1401c0124:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
1401c012b:	72 1c                	jb     0x1401c0149
1401c012d:	48 83 c2 27          	add    $0x27,%rdx
1401c0131:	48 8b 5b f8          	mov    -0x8(%rbx),%rbx
1401c0135:	48 2b c3             	sub    %rbx,%rax
1401c0138:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
1401c013c:	48 83 f8 1f          	cmp    $0x1f,%rax
1401c0140:	76 07                	jbe    0x1401c0149
1401c0142:	ff 15 b0 9e 16 00    	call   *0x169eb0(%rip)        # 0x140329ff8
1401c0148:	cc                   	int3
1401c0149:	48 8b cb             	mov    %rbx,%rcx
1401c014c:	e8 33 a1 13 00       	call   0x1402fa284