140ad094e:	48 d1 f8             	sar    $1,%rax
140ad0951:	48 3b c8             	cmp    %rax,%rcx
140ad0954:	0f 83 a6 00 00 00    	jae    0x140ad0a00
140ad095a:	66 44 01 24 4b       	add    %r12w,(%rbx,%rcx,2)
140ad095f:	45 03 dc             	add    %r12d,%r11d
140ad0962:	4c 8b 4f 08          	mov    0x8(%rdi),%r9
140ad0966:	4c 8b 17             	mov    (%rdi),%r10
140ad0969:	41 8b cb             	mov    %r11d,%ecx
140ad096c:	49 8b c1             	mov    %r9,%rax
140ad096f:	49 2b c2             	sub    %r10,%rax
140ad0972:	48 d1 f8             	sar    $1,%rax
140ad0975:	48 3b c8             	cmp    %rax,%rcx
140ad0978:	72 b3                	jb     0x140ad092d
140ad097a:	45 8b cc             	mov    %r12d,%r9d
140ad097d:	41 8b cf             	mov    %r15d,%ecx
140ad0980:	41 3b ec             	cmp    %r12d,%ebp
140ad0983:	72 26                	jb     0x140ad09ab
140ad0985:	49 8b d0             	mov    %r8,%rdx
140ad0988:	48 2b d3             	sub    %rbx,%rdx
140ad098b:	48 d1 fa             	sar    $1,%rdx
140ad098e:	45 8b d1             	mov    %r9d,%r10d
140ad0991:	4c 3b d2             	cmp    %rdx,%r10
140ad0994:	73 6a                	jae    0x140ad0a00
140ad0996:	41 8b c1             	mov    %r9d,%eax
140ad0999:	66 46 39 3c 53       	cmp    %r15w,(%rbx,%r10,2)
140ad099e:	0f 46 c1             	cmovbe %ecx,%eax
140ad09a1:	8b c8                	mov    %eax,%ecx
140ad09a3:	45 03 cc             	add    %r12d,%r9d
140ad09a6:	44 3b cd             	cmp    %ebp,%r9d
140ad09a9:	76 e3                	jbe    0x140ad098e
140ad09ab:	41 89 0e             	mov    %ecx,(%r14)
140ad09ae:	48 8d 44 24 20       	lea    0x20(%rsp),%rax
140ad09b3:	48 3b f0             	cmp    %rax,%rsi
140ad09b6:	74 12                	je     0x140ad09ca
140ad09b8:	4c 2b c3             	sub    %rbx,%r8
140ad09bb:	49 d1 f8             	sar    $1,%r8
140ad09be:	48 8b d3             	mov    %rbx,%rdx
140ad09c1:	48 8b ce             	mov    %rsi,%rcx
140ad09c4:	e8 ef ed f5 ff       	call   0x140a2f7b8
140ad09c9:	90                   	nop
140ad09ca:	48 85 db             	test   %rbx,%rbx
140ad09cd:	74 41                	je     0x140ad0a10
140ad09cf:	48 8b cb             	mov    %rbx,%rcx
140ad09d2:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140ad09d7:	48 2b c3             	sub    %rbx,%rax
140ad09da:	48 d1 f8             	sar    $1,%rax
140ad09dd:	48 03 c0             	add    %rax,%rax
140ad09e0:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140ad09e6:	72 1f                	jb     0x140ad0a07
140ad09e8:	48 8b 5b f8          	mov    -0x8(%rbx),%rbx
140ad09ec:	48 2b cb             	sub    %rbx,%rcx
140ad09ef:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140ad09f3:	48 83 f8 1f          	cmp    $0x1f,%rax
140ad09f7:	76 0e                	jbe    0x140ad0a07
140ad09f9:	ff 15 99 bf 03 00    	call   *0x3bf99(%rip)        # 0x140b0c998
140ad09ff:	90                   	nop
140ad0a00:	ff 15 92 bf 03 00    	call   *0x3bf92(%rip)        # 0x140b0c998
140ad0a06:	90                   	nop
140ad0a07:	48 8b cb             	mov    %rbx,%rcx
140ad0a0a:	ff 15 b0 be 03 00    	call   *0x3beb0(%rip)        # 0x140b0c8c0
140ad0a10:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140ad0a15:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140ad0a1a:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140ad0a1f:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
140ad0a24:	48 83 c4 40          	add    $0x40,%rsp
140ad0a28:	41 5f                	pop    %r15
140ad0a2a:	41 5e                	pop    %r14
140ad0a2c:	41 5c                	pop    %r12
140ad0a2e:	c3                   	ret
140ad0a2f:	90                   	nop
140ad0a30:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
140ad0a35:	55                   	push   %rbp
140ad0a36:	56                   	push   %rsi
140ad0a37:	57                   	push   %rdi
140ad0a38:	41 54                	push   %r12
140ad0a3a:	41 55                	push   %r13
140ad0a3c:	41 56                	push   %r14
140ad0a3e:	41 57                	push   %r15
140ad0a40:	48 8d 6c 24 d9       	lea    -0x27(%rsp),%rbp
140ad0a45:	48 81 ec e0 00 00 00 	sub    $0xe0,%rsp
140ad0a4c:	48 8b 05 ed e5 1e 00 	mov    0x1ee5ed(%rip),%rax        # 0x140cbf040
140ad0a53:	48 33 c4             	xor    %rsp,%rax
140ad0a56:	48 89 45 17          	mov    %rax,0x17(%rbp)
140ad0a5a:	44 0f b7 fa          	movzwl %dx,%r15d
140ad0a5e:	4c 8b f1             	mov    %rcx,%r14
140ad0a61:	0f 57 c0             	xorps  %xmm0,%xmm0
140ad0a64:	f3 0f 7f 44 24 30    	movdqu %xmm0,0x30(%rsp)
140ad0a6a:	45 33 e4             	xor    %r12d,%r12d
140ad0a6d:	4c 89 65 87          	mov    %r12,-0x79(%rbp)
140ad0a71:	41 8d 54 24 23       	lea    0x23(%r12),%edx
140ad0a76:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140ad0a7b:	e8 3c ea 64 ff       	call   0x14011f4bc
140ad0a80:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140ad0a85:	48 8d 7b 46          	lea    0x46(%rbx),%rdi
140ad0a89:	4c 8b c7             	mov    %rdi,%r8
140ad0a8c:	4c 2b c3             	sub    %rbx,%r8
140ad0a8f:	33 d2                	xor    %edx,%edx
140ad0a91:	48 8b cb             	mov    %rbx,%rcx
140ad0a94:	e8 d3 f9 01 00       	call   0x140af046c
140ad0a99:	48 89 7c 24 38       	mov    %rdi,0x38(%rsp)
140ad0a9e:	41 8b d4             	mov    %r12d,%edx
140ad0aa1:	45 8a cc             	mov    %r12b,%r9b
140ad0aa4:	45 8b d4             	mov    %r12d,%r10d
140ad0aa7:	41 8d 74 24 01       	lea    0x1(%r12),%esi
140ad0aac:	45 8d 5c 24 03       	lea    0x3(%r12),%r11d
140ad0ab1:	b8 07 00 00 00       	mov    $0x7,%eax
140ad0ab6:	40 84 d6             	test   %dl,%sil
140ad0ab9:	75 29                	jne    0x140ad0ae4
140ad0abb:	49 8b 4e 10          	mov    0x10(%r14),%rcx
140ad0abf:	45 8b 46 0c          	mov    0xc(%r14),%r8d
140ad0ac3:	49 8b 46 18          	mov    0x18(%r14),%rax
140ad0ac7:	48 2b c1             	sub    %rcx,%rax
140ad0aca:	4c 3b c0             	cmp    %rax,%r8
140ad0acd:	0f 83 02 06 00 00    	jae    0x140ad10d5
140ad0ad3:	46 0f b6 0c 01       	movzbl (%rcx,%r8,1),%r9d
140ad0ad8:	41 8b c9             	mov    %r9d,%ecx
140ad0adb:	c1 e9 04             	shr    $0x4,%ecx
140ad0ade:	41 0f b7 c3          	movzwl %r11w,%eax
140ad0ae2:	eb 0b                	jmp    0x140ad0aef
140ad0ae4:	41 0f b6 c9          	movzbl %r9b,%ecx
140ad0ae8:	83 e1 0f             	and    $0xf,%ecx
140ad0aeb:	41 01 76 0c          	add    %esi,0xc(%r14)
140ad0aef:	66 41 89 46 08       	mov    %ax,0x8(%r14)
140ad0af4:	44 8b c2             	mov    %edx,%r8d
140ad0af7:	48 8b c7             	mov    %rdi,%rax
140ad0afa:	48 2b c3             	sub    %rbx,%rax
140ad0afd:	48 d1 f8             	sar    $1,%rax
140ad0b00:	4c 3b c0             	cmp    %rax,%r8
140ad0b03:	0f 83 a4 05 00 00    	jae    0x140ad10ad
140ad0b09:	66 42 89 0c 43       	mov    %cx,(%rbx,%r8,2)
140ad0b0e:	44 3b d1             	cmp    %ecx,%r10d
140ad0b11:	44 0f 42 d1          	cmovb  %ecx,%r10d
140ad0b15:	03 d6                	add    %esi,%edx
140ad0b17:	83 fa 23             	cmp    $0x23,%edx
140ad0b1a:	72 95                	jb     0x140ad0ab1
140ad0b1c:	0f 57 c0             	xorps  %xmm0,%xmm0
140ad0b1f:	f3 0f 7f 45 af       	movdqu %xmm0,-0x51(%rbp)
140ad0b24:	4c 89 65 bf          	mov    %r12,-0x41(%rbp)
140ad0b28:	44 89 64 24 24       	mov    %r12d,0x24(%rsp)
140ad0b2d:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
140ad0b32:	4c 8d 44 24 24       	lea    0x24(%rsp),%r8
140ad0b37:	48 8d 55 af          	lea    -0x51(%rbp),%rdx
140ad0b3b:	41 8b ca             	mov    %r10d,%ecx
140ad0b3e:	e8 8d fd ff ff       	call   0x140ad08d0
140ad0b43:	4c 89 65 8f          	mov    %r12,-0x71(%rbp)
140ad0b47:	4c 89 65 97          	mov    %r12,-0x69(%rbp)
140ad0b4b:	bf 30 00 00 00       	mov    $0x30,%edi
140ad0b50:	8b cf                	mov    %edi,%ecx
140ad0b52:	ff 15 70 bd 03 00    	call   *0x3bd70(%rip)        # 0x140b0c8c8
140ad0b58:	48 85 c0             	test   %rax,%rax
140ad0b5b:	75 07                	jne    0x140ad0b64
140ad0b5d:	ff 15 35 b9 03 00    	call   *0x3b935(%rip)        # 0x140b0c498
140ad0b63:	cc                   	int3
140ad0b64:	48 89 00             	mov    %rax,(%rax)
140ad0b67:	48 89 40 08          	mov    %rax,0x8(%rax)
140ad0b6b:	48 89 40 10          	mov    %rax,0x10(%rax)
140ad0b6f:	66 c7 40 18 01 01    	movw   $0x101,0x18(%rax)
140ad0b75:	48 89 45 8f          	mov    %rax,-0x71(%rbp)
140ad0b79:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
140ad0b7e:	4c 8d 45 af          	lea    -0x51(%rbp),%r8
140ad0b82:	8b 54 24 24          	mov    0x24(%rsp),%edx
140ad0b86:	48 8d 4d c7          	lea    -0x39(%rbp),%rcx
140ad0b8a:	e8 6d f9 ff ff       	call   0x140ad04fc
140ad0b8f:	48 8b d0             	mov    %rax,%rdx
140ad0b92:	48 8d 4d 8f          	lea    -0x71(%rbp),%rcx
140ad0b96:	e8 b9 10 00 00       	call   0x140ad1c54
140ad0b9b:	48 8b 4d c7          	mov    -0x39(%rbp),%rcx
140ad0b9f:	48 8b 59 08          	mov    0x8(%rcx),%rbx
140ad0ba3:	44 38 63 19          	cmp    %r12b,0x19(%rbx)
140ad0ba7:	75 27                	jne    0x140ad0bd0
140ad0ba9:	4c 8b 43 10          	mov    0x10(%rbx),%r8
140ad0bad:	48 8d 55 c7          	lea    -0x39(%rbp),%rdx
140ad0bb1:	48 8d 4d c7          	lea    -0x39(%rbp),%rcx
140ad0bb5:	e8 42 67 53 ff       	call   0x1400072fc
140ad0bba:	48 8b cb             	mov    %rbx,%rcx
140ad0bbd:	48 8b 1b             	mov    (%rbx),%rbx
140ad0bc0:	ff 15 fa bc 03 00    	call   *0x3bcfa(%rip)        # 0x140b0c8c0
140ad0bc6:	44 38 63 19          	cmp    %r12b,0x19(%rbx)
140ad0bca:	74 dd                	je     0x140ad0ba9
140ad0bcc:	48 8b 4d c7          	mov    -0x39(%rbp),%rcx
140ad0bd0:	ff 15 ea bc 03 00    	call   *0x3bcea(%rip)        # 0x140b0c8c0
140ad0bd6:	b9 10 00 00 00       	mov    $0x10,%ecx
140ad0bdb:	e8 24 ea 01 00       	call   0x140aef604
140ad0be0:	4c 8b e8             	mov    %rax,%r13
140ad0be3:	48 89 45 9f          	mov    %rax,-0x61(%rbp)
140ad0be7:	4c 89 20             	mov    %r12,(%rax)
140ad0bea:	4c 89 60 08          	mov    %r12,0x8(%rax)
140ad0bee:	48 8b cf             	mov    %rdi,%rcx
140ad0bf1:	ff 15 d1 bc 03 00    	call   *0x3bcd1(%rip)        # 0x140b0c8c8
140ad0bf7:	48 85 c0             	test   %rax,%rax
140ad0bfa:	75 07                	jne    0x140ad0c03
140ad0bfc:	ff 15 96 b8 03 00    	call   *0x3b896(%rip)        # 0x140b0c498
140ad0c02:	cc                   	int3
140ad0c03:	48 89 00             	mov    %rax,(%rax)
140ad0c06:	48 89 40 08          	mov    %rax,0x8(%rax)
140ad0c0a:	48 89 40 10          	mov    %rax,0x10(%rax)
140ad0c0e:	66 c7 40 18 01 01    	movw   $0x101,0x18(%rax)
140ad0c14:	49 89 45 00          	mov    %rax,0x0(%r13)
140ad0c18:	4c 89 6d c7          	mov    %r13,-0x39(%rbp)
140ad0c1c:	41 8b f4             	mov    %r12d,%esi
140ad0c1f:	48 8b 5d 8f          	mov    -0x71(%rbp),%rbx
140ad0c23:	48 8b 1b             	mov    (%rbx),%rbx
140ad0c26:	41 8b fc             	mov    %r12d,%edi
140ad0c29:	44 89 64 24 20       	mov    %r12d,0x20(%rsp)
140ad0c2e:	66 44 89 64 24 28    	mov    %r12w,0x28(%rsp)
140ad0c34:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140ad0c39:	48 39 44 24 30       	cmp    %rax,0x30(%rsp)
140ad0c3e:	48 0f 45 44 24 30    	cmovne 0x30(%rsp),%rax
140ad0c44:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140ad0c49:	49 8b d7             	mov    %r15,%rdx
140ad0c4c:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140ad0c51:	e8 62 3e 56 ff       	call   0x140034ab8
140ad0c56:	44 89 7d 9f          	mov    %r15d,-0x61(%rbp)
140ad0c5a:	45 85 ff             	test   %r15d,%r15d
140ad0c5d:	0f 84 35 02 00 00    	je     0x140ad0e98
140ad0c63:	4c 8b 64 24 30       	mov    0x30(%rsp),%r12
140ad0c68:	45 33 c9             	xor    %r9d,%r9d
140ad0c6b:	45 0f b7 f9          	movzwl %r9w,%r15d
140ad0c6f:	41 0f b7 f9          	movzwl %r9w,%edi
140ad0c73:	44 39 4c 24 24       	cmp    %r9d,0x24(%rsp)
140ad0c78:	76 67                	jbe    0x140ad0ce1
140ad0c7a:	49 8b ce             	mov    %r14,%rcx
140ad0c7d:	e8 e2 ea ff ff       	call   0x140acf764
140ad0c82:	66 03 ff             	add    %di,%di
140ad0c85:	66 03 f8             	add    %ax,%di
140ad0c88:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140ad0c8e:	66 45 03 f8          	add    %r8w,%r15w
140ad0c92:	48 8b 4d 8f          	mov    -0x71(%rbp),%rcx
140ad0c96:	48 8b 41 08          	mov    0x8(%rcx),%rax
140ad0c9a:	48 8b d9             	mov    %rcx,%rbx
140ad0c9d:	45 33 c9             	xor    %r9d,%r9d
140ad0ca0:	eb 12                	jmp    0x140ad0cb4
140ad0ca2:	66 39 78 1c          	cmp    %di,0x1c(%rax)
140ad0ca6:	73 06                	jae    0x140ad0cae
140ad0ca8:	48 8b 40 10          	mov    0x10(%rax),%rax
140ad0cac:	eb 06                	jmp    0x140ad0cb4
140ad0cae:	48 8b d8             	mov    %rax,%rbx
140ad0cb1:	48 8b 00             	mov    (%rax),%rax
140ad0cb4:	44 38 48 19          	cmp    %r9b,0x19(%rax)
140ad0cb8:	74 e8                	je     0x140ad0ca2
140ad0cba:	44 38 4b 19          	cmp    %r9b,0x19(%rbx)
140ad0cbe:	75 06                	jne    0x140ad0cc6
140ad0cc0:	66 3b 7b 1c          	cmp    0x1c(%rbx),%di
140ad0cc4:	73 03                	jae    0x140ad0cc9
140ad0cc6:	48 8b d9             	mov    %rcx,%rbx
140ad0cc9:	48 3b d9             	cmp    %rcx,%rbx
140ad0ccc:	74 07                	je     0x140ad0cd5
140ad0cce:	66 44 3b 7b 20       	cmp    0x20(%rbx),%r15w
140ad0cd3:	74 16                	je     0x140ad0ceb
140ad0cd5:	41 0f b7 c7          	movzwl %r15w,%eax
140ad0cd9:	3b 44 24 24          	cmp    0x24(%rsp),%eax
140ad0cdd:	72 9b                	jb     0x140ad0c7a
140ad0cdf:	eb 0a                	jmp    0x140ad0ceb
140ad0ce1:	48 8b 4d 8f          	mov    -0x71(%rbp),%rcx
140ad0ce5:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140ad0ceb:	48 3b d9             	cmp    %rcx,%rbx
140ad0cee:	0f 84 c0 03 00 00    	je     0x140ad10b4
140ad0cf4:	8b 43 24             	mov    0x24(%rbx),%eax
140ad0cf7:	85 c0                	test   %eax,%eax
140ad0cf9:	78 3d                	js     0x140ad0d38
140ad0cfb:	83 f8 1f             	cmp    $0x1f,%eax
140ad0cfe:	7f 38                	jg     0x140ad0d38
140ad0d00:	0f b7 d0             	movzwl %ax,%edx
140ad0d03:	66 89 54 24 28       	mov    %dx,0x28(%rsp)
140ad0d08:	8b ce                	mov    %esi,%ecx
140ad0d0a:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140ad0d0f:	49 2b c4             	sub    %r12,%rax
140ad0d12:	48 d1 f8             	sar    $1,%rax
140ad0d15:	48 3b c8             	cmp    %rax,%rcx
140ad0d18:	0f 83 1c 03 00 00    	jae    0x140ad103a
140ad0d1e:	66 41 89 14 4c       	mov    %dx,(%r12,%rcx,2)
140ad0d23:	8b 7c 24 20          	mov    0x20(%rsp),%edi
140ad0d27:	3b fa                	cmp    %edx,%edi
140ad0d29:	0f 42 fa             	cmovb  %edx,%edi
140ad0d2c:	89 7c 24 20          	mov    %edi,0x20(%rsp)
140ad0d30:	41 03 f0             	add    %r8d,%esi
140ad0d33:	e9 54 01 00 00       	jmp    0x140ad0e8c
140ad0d38:	83 f8 20             	cmp    $0x20,%eax
140ad0d3b:	75 71                	jne    0x140ad0dae
140ad0d3d:	44 8d 78 e2          	lea    -0x1e(%rax),%r15d
140ad0d41:	41 8b c9             	mov    %r9d,%ecx
140ad0d44:	41 bc ff ff 00 00    	mov    $0xffff,%r12d
140ad0d4a:	8d 3c 09             	lea    (%rcx,%rcx,1),%edi
140ad0d4d:	49 8b ce             	mov    %r14,%rcx
140ad0d50:	e8 0f ea ff ff       	call   0x140acf764
140ad0d55:	8d 4f 01             	lea    0x1(%rdi),%ecx
140ad0d58:	45 33 c9             	xor    %r9d,%r9d
140ad0d5b:	66 85 c0             	test   %ax,%ax
140ad0d5e:	0f 44 cf             	cmove  %edi,%ecx
140ad0d61:	66 45 03 fc          	add    %r12w,%r15w
140ad0d65:	75 e3                	jne    0x140ad0d4a
140ad0d67:	4c 8b 64 24 30       	mov    0x30(%rsp),%r12
140ad0d6c:	83 c1 03             	add    $0x3,%ecx
140ad0d6f:	0f 84 13 01 00 00    	je     0x140ad0e88
140ad0d75:	44 8b 45 9f          	mov    -0x61(%rbp),%r8d
140ad0d79:	41 3b f0             	cmp    %r8d,%esi
140ad0d7c:	0f 83 74 03 00 00    	jae    0x140ad10f6
140ad0d82:	8b d6                	mov    %esi,%edx
140ad0d84:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140ad0d89:	49 2b c4             	sub    %r12,%rax
140ad0d8c:	48 d1 f8             	sar    $1,%rax
140ad0d8f:	48 3b d0             	cmp    %rax,%rdx
140ad0d92:	0f 83 a2 02 00 00    	jae    0x140ad103a
140ad0d98:	0f b7 44 24 28       	movzwl 0x28(%rsp),%eax
140ad0d9d:	66 41 89 04 54       	mov    %ax,(%r12,%rdx,2)
140ad0da2:	ff c6                	inc    %esi
140ad0da4:	83 c1 ff             	add    $0xffffffff,%ecx
140ad0da7:	75 d0                	jne    0x140ad0d79
140ad0da9:	e9 da 00 00 00       	jmp    0x140ad0e88
140ad0dae:	83 f8 21             	cmp    $0x21,%eax
140ad0db1:	75 69                	jne    0x140ad0e1c
140ad0db3:	44 8d 78 e2          	lea    -0x1e(%rax),%r15d
140ad0db7:	41 8b c9             	mov    %r9d,%ecx
140ad0dba:	41 bc ff ff 00 00    	mov    $0xffff,%r12d
140ad0dc0:	8d 3c 09             	lea    (%rcx,%rcx,1),%edi
140ad0dc3:	49 8b ce             	mov    %r14,%rcx
140ad0dc6:	e8 99 e9 ff ff       	call   0x140acf764
140ad0dcb:	8d 4f 01             	lea    0x1(%rdi),%ecx
140ad0dce:	45 33 c9             	xor    %r9d,%r9d
140ad0dd1:	66 85 c0             	test   %ax,%ax
140ad0dd4:	0f 44 cf             	cmove  %edi,%ecx
140ad0dd7:	66 45 03 fc          	add    %r12w,%r15w
140ad0ddb:	75 e3                	jne    0x140ad0dc0
140ad0ddd:	4c 8b 64 24 30       	mov    0x30(%rsp),%r12
140ad0de2:	83 c1 03             	add    $0x3,%ecx
140ad0de5:	0f 84 9d 00 00 00    	je     0x140ad0e88
140ad0deb:	44 8b 45 9f          	mov    -0x61(%rbp),%r8d
140ad0def:	41 3b f0             	cmp    %r8d,%esi
140ad0df2:	0f 83 1f 03 00 00    	jae    0x140ad1117
140ad0df8:	8b d6                	mov    %esi,%edx
140ad0dfa:	48 8b 44 24 38       	mov    0x38(%rsp),%rax
140ad0dff:	49 2b c4             	sub    %r12,%rax
140ad0e02:	48 d1 f8             	sar    $1,%rax
140ad0e05:	48 3b d0             	cmp    %rax,%rdx
140ad0e08:	0f 83 2c 02 00 00    	jae    0x140ad103a
140ad0e0e:	66 45 89 0c 54       	mov    %r9w,(%r12,%rdx,2)
140ad0e13:	ff c6                	inc    %esi
140ad0e15:	83 c1 ff             	add    $0xffffffff,%ecx
140ad0e18:	75 d5                	jne    0x140ad0def
140ad0e1a:	eb 6c                	jmp    0x140ad0e88
140ad0e1c:	83 f8 22             	cmp    $0x22,%eax
140ad0e1f:	0f 85 34 03 00 00    	jne    0x140ad1159
140ad0e25:	44 8d 78 e5          	lea    -0x1b(%rax),%r15d
140ad0e29:	41 8b c9             	mov    %r9d,%ecx
140ad0e2c:	41 bc ff ff 00 00    	mov    $0xffff,%r12d
140ad0e32:	8d 3c 09             	lea    (%rcx,%rcx,1),%edi
140ad0e35:	49 8b ce             	mov    %r14,%rcx
140ad0e38:	e8 27 e9 ff ff       	call   0x140acf764
140ad0e3d:	8d 4f 01             	lea    0x1(%rdi),%ecx
140ad0e40:	45 33 c9             	xor    %r9d,%r9d