1400047ff:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
140004803:	49 8b c4             	mov    %r12,%rax
140004806:	48 f7 d8             	neg    %rax
140004809:	1b c9                	sbb    %ecx,%ecx
14000480b:	41 23 cd             	and    %r13d,%ecx
14000480e:	89 4d d0             	mov    %ecx,-0x30(%rbp)
140004811:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
140004815:	48 89 4c 24 28       	mov    %rcx,0x28(%rsp)
14000481a:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
14000481e:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
140004823:	e8 30 fb ff ff       	call   0x140004358
140004828:	44 8d 4f 10          	lea    0x10(%rdi),%r9d
14000482c:	44 8b e0             	mov    %eax,%r12d
14000482f:	85 c0                	test   %eax,%eax
140004831:	0f 85 a1 00 00 00    	jne    0x1400048d8
140004837:	48 8b 5d d8          	mov    -0x28(%rbp),%rbx
14000483b:	48 85 db             	test   %rbx,%rbx
14000483e:	0f 85 94 00 00 00    	jne    0x1400048d8
140004844:	8b 45 d0             	mov    -0x30(%rbp),%eax
140004847:	4d 3b f5             	cmp    %r13,%r14
14000484a:	4d 0f 42 f5          	cmovb  %r13,%r14
14000484e:	4c 3b f0             	cmp    %rax,%r14
140004851:	4c 0f 42 f0          	cmovb  %rax,%r14
140004855:	4d 3b f1             	cmp    %r9,%r14
140004858:	4d 0f 42 f1          	cmovb  %r9,%r14
14000485c:	4d 85 ff             	test   %r15,%r15
14000485f:	74 20                	je     0x140004881
140004861:	48 ff 15 38 8a 00 00 	rex.W call *0x8a38(%rip)        # 0x14000d2a0
140004868:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000486d:	4d 8b c7             	mov    %r15,%r8
140004870:	33 d2                	xor    %edx,%edx
140004872:	48 8b c8             	mov    %rax,%rcx
140004875:	48 ff 15 9c 89 00 00 	rex.W call *0x899c(%rip)        # 0x14000d218
14000487c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140004881:	48 ff 15 18 8a 00 00 	rex.W call *0x8a18(%rip)        # 0x14000d2a0
140004888:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
14000488d:	4d 8b c6             	mov    %r14,%r8
140004890:	33 d2                	xor    %edx,%edx
140004892:	48 8b c8             	mov    %rax,%rcx
140004895:	48 ff 15 e4 89 00 00 	rex.W call *0x89e4(%rip)        # 0x14000d280
14000489c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400048a1:	4c 8b f8             	mov    %rax,%r15
1400048a4:	48 85 c0             	test   %rax,%rax
1400048a7:	0f 84 39 01 00 00    	je     0x1400049e6
1400048ad:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
1400048b1:	44 89 75 d0          	mov    %r14d,-0x30(%rbp)
1400048b5:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
1400048ba:	4c 8d 4e 08          	lea    0x8(%rsi),%r9
1400048be:	48 8d 4d e8          	lea    -0x18(%rbp),%rcx
1400048c2:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1400048c7:	e8 8c fa ff ff       	call   0x140004358
1400048cc:	44 8b e0             	mov    %eax,%r12d
1400048cf:	41 b9 10 00 00 00    	mov    $0x10,%r9d
1400048d5:	49 8b df             	mov    %r15,%rbx
1400048d8:	3d 23 00 00 c0       	cmp    $0xc0000023,%eax
1400048dd:	0f 84 61 ff ff ff    	je     0x140004844
1400048e3:	45 85 e4             	test   %r12d,%r12d
1400048e6:	0f 85 58 01 00 00    	jne    0x140004a44
1400048ec:	48 85 db             	test   %rbx,%rbx
1400048ef:	0f 84 4f 01 00 00    	je     0x140004a44
1400048f5:	44 8b 45 d0          	mov    -0x30(%rbp),%r8d
1400048f9:	41 83 f8 04          	cmp    $0x4,%r8d
1400048fd:	76 05                	jbe    0x140004904
1400048ff:	8a 03                	mov    (%rbx),%al
140004901:	88 46 0c             	mov    %al,0xc(%rsi)
140004904:	41 b4 02             	mov    $0x2,%r12b
140004907:	45 3b c1             	cmp    %r9d,%r8d
14000490a:	0f 82 dd 00 00 00    	jb     0x1400049ed
140004910:	44 38 66 0c          	cmp    %r12b,0xc(%rsi)
140004914:	0f 85 d3 00 00 00    	jne    0x1400049ed
14000491a:	66 44 39 4b 02       	cmp    %r9w,0x2(%rbx)
14000491f:	0f 82 c8 00 00 00    	jb     0x1400049ed
140004925:	44 0f b7 53 04       	movzwl 0x4(%rbx),%r10d
14000492a:	0f b7 43 06          	movzwl 0x6(%rbx),%eax
14000492e:	48 c1 e0 04          	shl    $0x4,%rax
140004932:	4b 8d 0c 52          	lea    (%r10,%r10,2),%rcx
140004936:	48 8d 14 88          	lea    (%rax,%rcx,4),%rdx
14000493a:	0f b7 43 02          	movzwl 0x2(%rbx),%eax
14000493e:	48 03 d0             	add    %rax,%rdx
140004941:	4c 3b c2             	cmp    %rdx,%r8
140004944:	0f 82 a3 00 00 00    	jb     0x1400049ed
14000494a:	89 7d d4             	mov    %edi,-0x2c(%rbp)
14000494d:	44 8b cf             	mov    %edi,%r9d
140004950:	66 45 85 d2          	test   %r10w,%r10w
140004954:	74 3c                	je     0x140004992
140004956:	39 7d e0             	cmp    %edi,-0x20(%rbp)
140004959:	4c 8d 4d d4          	lea    -0x2c(%rbp),%r9
14000495d:	48 8b 05 34 95 00 00 	mov    0x9534(%rip),%rax        # 0x14000de98
140004964:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
140004968:	48 0f 44 05 38 95 00 	cmove  0x9538(%rip),%rax        # 0x14000dea8
14000496f:	00
140004970:	48 89 45 e0          	mov    %rax,-0x20(%rbp)
140004974:	48 8d 45 d8          	lea    -0x28(%rbp),%rax
140004978:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14000497d:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
140004982:	89 7d d8             	mov    %edi,-0x28(%rbp)
140004985:	e8 ce f9 ff ff       	call   0x140004358
14000498a:	44 8b 45 d0          	mov    -0x30(%rbp),%r8d
14000498e:	44 8b 4d d4          	mov    -0x2c(%rbp),%r9d
140004992:	48 8d 53 10          	lea    0x10(%rbx),%rdx
140004996:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
14000499a:	48 89 56 20          	mov    %rdx,0x20(%rsi)
14000499e:	45 85 c9             	test   %r9d,%r9d
1400049a1:	0f b7 43 04          	movzwl 0x4(%rbx),%eax
1400049a5:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
1400049a9:	48 8d 04 8a          	lea    (%rdx,%rcx,4),%rax
1400049ad:	48 89 46 28          	mov    %rax,0x28(%rsi)
1400049b1:	8b c7                	mov    %edi,%eax
1400049b3:	0f 95 c0             	setne  %al
1400049b6:	89 46 30             	mov    %eax,0x30(%rsi)
1400049b9:	44 38 23             	cmp    %r12b,(%rbx)
1400049bc:	75 62                	jne    0x140004a20
1400049be:	44 38 63 01          	cmp    %r12b,0x1(%rbx)
1400049c2:	73 5c                	jae    0x140004a20
1400049c4:	0f b7 43 04          	movzwl 0x4(%rbx),%eax
1400049c8:	8d 0c 40             	lea    (%rax,%rax,2),%ecx
1400049cb:	0f b7 43 06          	movzwl 0x6(%rbx),%eax
1400049cf:	c1 e0 04             	shl    $0x4,%eax
1400049d2:	44 8d 04 88          	lea    (%rax,%rcx,4),%r8d
1400049d6:	0f b7 43 02          	movzwl 0x2(%rbx),%eax
1400049da:	44 03 c0             	add    %eax,%r8d
1400049dd:	c7 46 10 01 00 00 00 	movl   $0x1,0x10(%rsi)
1400049e4:	eb 3a                	jmp    0x140004a20
1400049e6:	b8 9a 00 00 c0       	mov    $0xc000009a,%eax
1400049eb:	eb 7f                	jmp    0x140004a6c
1400049ed:	44 89 4d d0          	mov    %r9d,-0x30(%rbp)
1400049f1:	0f 57 c0             	xorps  %xmm0,%xmm0
1400049f4:	0f 11 03             	movups %xmm0,(%rbx)
1400049f7:	c7 03 02 02 10 00    	movl   $0x100202,(%rbx)
1400049fd:	44 8b 45 d0          	mov    -0x30(%rbp),%r8d
140004a01:	48 89 5e 18          	mov    %rbx,0x18(%rsi)
140004a05:	0f b7 53 02          	movzwl 0x2(%rbx),%edx
140004a09:	48 03 d3             	add    %rbx,%rdx
140004a0c:	48 89 56 20          	mov    %rdx,0x20(%rsi)
140004a10:	0f b7 43 04          	movzwl 0x4(%rbx),%eax
140004a14:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
140004a18:	48 8d 04 8a          	lea    (%rdx,%rcx,4),%rax
140004a1c:	48 89 46 28          	mov    %rax,0x28(%rsi)
140004a20:	4d 85 ff             	test   %r15,%r15
140004a23:	41 8b c0             	mov    %r8d,%eax
140004a26:	48 89 46 40          	mov    %rax,0x40(%rsi)
140004a2a:	4d 0f 45 ee          	cmovne %r14,%r13
140004a2e:	48 89 5e 38          	mov    %rbx,0x38(%rsi)
140004a32:	49 3b df             	cmp    %r15,%rbx
140004a35:	4c 89 6e 48          	mov    %r13,0x48(%rsi)
140004a39:	40 0f 94 c7          	sete   %dil
140004a3d:	33 c0                	xor    %eax,%eax
140004a3f:	89 7e 50             	mov    %edi,0x50(%rsi)
140004a42:	eb 28                	jmp    0x140004a6c
140004a44:	4d 85 ff             	test   %r15,%r15
140004a47:	74 20                	je     0x140004a69
140004a49:	48 ff 15 50 88 00 00 	rex.W call *0x8850(%rip)        # 0x14000d2a0
140004a50:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140004a55:	4d 8b c7             	mov    %r15,%r8
140004a58:	33 d2                	xor    %edx,%edx
140004a5a:	48 8b c8             	mov    %rax,%rcx
140004a5d:	48 ff 15 b4 87 00 00 	rex.W call *0x87b4(%rip)        # 0x14000d218
140004a64:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140004a69:	41 8b c4             	mov    %r12d,%eax
140004a6c:	48 8b 4d f0          	mov    -0x10(%rbp),%rcx
140004a70:	48 33 cc             	xor    %rsp,%rcx
140004a73:	e8 f8 62 00 00       	call   0x14000ad70
140004a78:	48 8b 9c 24 b0 00 00 	mov    0xb0(%rsp),%rbx
140004a7f:	00
140004a80:	48 83 c4 60          	add    $0x60,%rsp
140004a84:	41 5f                	pop    %r15
140004a86:	41 5e                	pop    %r14
140004a88:	41 5d                	pop    %r13
140004a8a:	41 5c                	pop    %r12
140004a8c:	5f                   	pop    %rdi
140004a8d:	5e                   	pop    %rsi
140004a8e:	5d                   	pop    %rbp
140004a8f:	c3                   	ret
140004a90:	cc                   	int3
140004a91:	cc                   	int3
140004a92:	cc                   	int3
140004a93:	cc                   	int3
140004a94:	cc                   	int3
140004a95:	cc                   	int3
140004a96:	cc                   	int3
140004a97:	cc                   	int3
140004a98:	48 8b c4             	mov    %rsp,%rax
140004a9b:	48 89 58 08          	mov    %rbx,0x8(%rax)
140004a9f:	48 89 68 10          	mov    %rbp,0x10(%rax)
140004aa3:	48 89 70 18          	mov    %rsi,0x18(%rax)
140004aa7:	57                   	push   %rdi
140004aa8:	41 54                	push   %r12
140004aaa:	41 55                	push   %r13
140004aac:	41 56                	push   %r14
140004aae:	41 57                	push   %r15
140004ab0:	48 83 ec 10          	sub    $0x10,%rsp
140004ab4:	4c 8b 79 18          	mov    0x18(%rcx),%r15
140004ab8:	45 33 d2             	xor    %r10d,%r10d
140004abb:	4c 8b 59 20          	mov    0x20(%rcx),%r11
140004abf:	48 8b da             	mov    %rdx,%rbx
140004ac2:	8b 78 d0             	mov    -0x30(%rax),%edi
140004ac5:	45 8b e0             	mov    %r8d,%r12d
140004ac8:	4c 8b f1             	mov    %rcx,%r14
140004acb:	41 8b f2             	mov    %r10d,%esi
140004ace:	41 0f b7 6f 04       	movzwl 0x4(%r15),%ebp
140004ad3:	45 8d 6a 01          	lea    0x1(%r10),%r13d
140004ad7:	41 8b d2             	mov    %r10d,%edx
140004ada:	85 ed                	test   %ebp,%ebp
140004adc:	74 55                	je     0x140004b33
140004ade:	8b ca                	mov    %edx,%ecx
140004ae0:	48 8d 04 49          	lea    (%rcx,%rcx,2),%rax
140004ae4:	45 39 24 83          	cmp    %r12d,(%r11,%rax,4)
140004ae8:	75 42                	jne    0x140004b2c
140004aea:	45 85 c9             	test   %r9d,%r9d
140004aed:	74 23                	je     0x140004b12
140004aef:	45 39 56 30          	cmp    %r10d,0x30(%r14)
140004af3:	74 1d                	je     0x140004b12
140004af5:	45 84 6c 83 04       	test   %r13b,0x4(%r11,%rax,4)
140004afa:	75 30                	jne    0x140004b2c
140004afc:	48 8d 04 49          	lea    (%rcx,%rcx,2),%rax
140004b00:	f2 41 0f 10 04 83    	movsd  (%r11,%rax,4),%xmm0
140004b06:	41 8b 7c 83 08       	mov    0x8(%r11,%rax,4),%edi
140004b0b:	f2 0f 11 04 24       	movsd  %xmm0,(%rsp)
140004b10:	eb 2c                	jmp    0x140004b3e
140004b12:	41 8b f5             	mov    %r13d,%esi
140004b15:	f2 41 0f 10 04 83    	movsd  (%r11,%rax,4),%xmm0
140004b1b:	41 8b 7c 83 08       	mov    0x8(%r11,%rax,4),%edi
140004b20:	f2 0f 11 04 24       	movsd  %xmm0,(%rsp)
140004b25:	45 84 6c 83 04       	test   %r13b,0x4(%r11,%rax,4)
140004b2a:	75 07                	jne    0x140004b33
140004b2c:	41 03 d5             	add    %r13d,%edx
140004b2f:	3b d5                	cmp    %ebp,%edx
140004b31:	72 ab                	jb     0x140004ade
140004b33:	41 8b c2             	mov    %r10d,%eax
140004b36:	85 f6                	test   %esi,%esi
140004b38:	0f 84 c7 00 00 00    	je     0x140004c05
140004b3e:	45 85 c9             	test   %r9d,%r9d
140004b41:	74 0b                	je     0x140004b4e
140004b43:	b8 0c 00 00 00       	mov    $0xc,%eax
140004b48:	45 39 56 30          	cmp    %r10d,0x30(%r14)
140004b4c:	75 05                	jne    0x140004b53
140004b4e:	b8 08 00 00 00       	mov    $0x8,%eax
140004b53:	42 8b 04 38          	mov    (%rax,%r15,1),%eax
140004b57:	a8 04                	test   $0x4,%al
140004b59:	74 10                	je     0x140004b6b
140004b5b:	48 8b 0c 24          	mov    (%rsp),%rcx
140004b5f:	48 c1 e9 20          	shr    $0x20,%rcx
140004b63:	81 e1 ff cf ff ff    	and    $0xffffcfff,%ecx
140004b69:	eb 04                	jmp    0x140004b6f
140004b6b:	8b 4c 24 04          	mov    0x4(%rsp),%ecx
140004b6f:	a8 02                	test   $0x2,%al
140004b71:	74 06                	je     0x140004b79
140004b73:	81 e1 ff f3 ff ff    	and    $0xfffff3ff,%ecx
140004b79:	41 84 c5             	test   %al,%r13b
140004b7c:	74 06                	je     0x140004b84
140004b7e:	81 e1 ff fc ff ff    	and    $0xfffffcff,%ecx
140004b84:	a8 08                	test   $0x8,%al
140004b86:	74 09                	je     0x140004b91
140004b88:	81 e1 ff ff ff c0    	and    $0xc0ffffff,%ecx
140004b8e:	41 8b fa             	mov    %r10d,%edi
140004b91:	44 39 14 24          	cmp    %r10d,(%rsp)
140004b95:	74 6b                	je     0x140004c02
140004b97:	44 8b c9             	mov    %ecx,%r9d
140004b9a:	44 8b c1             	mov    %ecx,%r8d
140004b9d:	41 c1 e9 0c          	shr    $0xc,%r9d
140004ba1:	8b d1                	mov    %ecx,%edx
140004ba3:	41 c1 e8 0a          	shr    $0xa,%r8d
140004ba7:	41 8b c1             	mov    %r9d,%eax
140004baa:	41 0b c0             	or     %r8d,%eax
140004bad:	c1 ea 08             	shr    $0x8,%edx
140004bb0:	0b c2                	or     %edx,%eax
140004bb2:	a8 03                	test   $0x3,%al
140004bb4:	75 0d                	jne    0x140004bc3
140004bb6:	f7 c1 00 00 00 3f    	test   $0x3f000000,%ecx
140004bbc:	75 05                	jne    0x140004bc3
140004bbe:	f6 c1 02             	test   $0x2,%cl
140004bc1:	74 3f                	je     0x140004c02
140004bc3:	8b c1                	mov    %ecx,%eax
140004bc5:	89 7b 0c             	mov    %edi,0xc(%rbx)
140004bc8:	c1 e8 1e             	shr    $0x1e,%eax
140004bcb:	89 43 08             	mov    %eax,0x8(%rbx)
140004bce:	8b c1                	mov    %ecx,%eax
140004bd0:	c1 e8 18             	shr    $0x18,%eax
140004bd3:	d1 e9                	shr    $1,%ecx
140004bd5:	24 3f                	and    $0x3f,%al
140004bd7:	41 23 cd             	and    %r13d,%ecx
140004bda:	88 43 04             	mov    %al,0x4(%rbx)
140004bdd:	89 4b 14             	mov    %ecx,0x14(%rbx)
140004be0:	41 83 e1 03          	and    $0x3,%r9d
140004be4:	74 05                	je     0x140004beb
140004be6:	44 89 0b             	mov    %r9d,(%rbx)
140004be9:	eb 12                	jmp    0x140004bfd
140004beb:	41 83 e0 03          	and    $0x3,%r8d
140004bef:	74 05                	je     0x140004bf6
140004bf1:	44 89 03             	mov    %r8d,(%rbx)
140004bf4:	eb 07                	jmp    0x140004bfd
140004bf6:	83 e2 03             	and    $0x3,%edx
140004bf9:	74 02                	je     0x140004bfd
140004bfb:	89 13                	mov    %edx,(%rbx)
140004bfd:	41 8b c5             	mov    %r13d,%eax
140004c00:	eb 03                	jmp    0x140004c05
140004c02:	41 8b c2             	mov    %r10d,%eax
140004c05:	45 0f b7 47 06       	movzwl 0x6(%r15),%r8d
140004c0a:	41 8b d2             	mov    %r10d,%edx
140004c0d:	49 8b 4e 28          	mov    0x28(%r14),%rcx
140004c11:	45 85 c0             	test   %r8d,%r8d
140004c14:	74 16                	je     0x140004c2c
140004c16:	44 39 21             	cmp    %r12d,(%rcx)
140004c19:	74 0e                	je     0x140004c29
140004c1b:	41 03 d5             	add    %r13d,%edx
140004c1e:	48 83 c1 10          	add    $0x10,%rcx
140004c22:	41 3b d0             	cmp    %r8d,%edx
140004c25:	72 ef                	jb     0x140004c16
140004c27:	eb 03                	jmp    0x140004c2c
140004c29:	45 8b d5             	mov    %r13d,%r10d
140004c2c:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140004c31:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140004c36:	44 89 53 10          	mov    %r10d,0x10(%rbx)
140004c3a:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140004c3f:	48 83 c4 10          	add    $0x10,%rsp
140004c43:	41 5f                	pop    %r15
140004c45:	41 5e                	pop    %r14
140004c47:	41 5d                	pop    %r13
140004c49:	41 5c                	pop    %r12
140004c4b:	5f                   	pop    %rdi
140004c4c:	c3                   	ret
140004c4d:	cc                   	int3
140004c4e:	cc                   	int3
140004c4f:	cc                   	int3
140004c50:	cc                   	int3
140004c51:	cc                   	int3
140004c52:	cc                   	int3
140004c53:	cc                   	int3
140004c54:	48 8b c4             	mov    %rsp,%rax
140004c57:	48 89 58 08          	mov    %rbx,0x8(%rax)
140004c5b:	48 89 70 10          	mov    %rsi,0x10(%rax)
140004c5f:	48 89 78 18          	mov    %rdi,0x18(%rax)
140004c63:	55                   	push   %rbp
140004c64:	41 54                	push   %r12
140004c66:	41 55                	push   %r13
140004c68:	41 56                	push   %r14
140004c6a:	41 57                	push   %r15
140004c6c:	48 8d a8 78 f0 ff ff 	lea    -0xf88(%rax),%rbp
140004c73:	b8 60 10 00 00       	mov    $0x1060,%eax
140004c78:	e8 f3 70 00 00       	call   0x14000bd70
140004c7d:	48 2b e0             	sub    %rax,%rsp
140004c80:	48 8b 05 79 d5 00 00 	mov    0xd579(%rip),%rax        # 0x140012200
140004c87:	48 33 c4             	xor    %rsp,%rax
140004c8a:	48 89 85 50 0f 00 00 	mov    %rax,0xf50(%rbp)
140004c91:	48 8b 41 18          	mov    0x18(%rcx),%rax
140004c95:	45 33 ed             	xor    %r13d,%r13d
140004c98:	48 8b 79 28          	mov    0x28(%rcx),%rdi
140004c9c:	45 8b e1             	mov    %r9d,%r12d
140004c9f:	45 0f b7 f0          	movzwl %r8w,%r14d
140004ca3:	8b f2                	mov    %edx,%esi