140d7dd93:	41 b9 10 00 00 00    	mov    $0x10,%r9d
140d7dd99:	45 8b c1             	mov    %r9d,%r8d
140d7dd9c:	4c 0f 45 c2          	cmovne %rdx,%r8
140d7dda0:	49 8d 40 f8          	lea    -0x8(%r8),%rax
140d7dda4:	48 a9 f7 ff ff ff    	test   $0xfffffffffffffff7,%rax
140d7ddaa:	74 03                	je     0x140d7ddaf
140d7ddac:	33 c0                	xor    %eax,%eax
140d7ddae:	c3                   	ret
140d7ddaf:	48 63 41 2c          	movslq 0x2c(%rcx),%rax
140d7ddb3:	48 85 c0             	test   %rax,%rax
140d7ddb6:	49 0f 44 c1          	cmove  %r9,%rax
140d7ddba:	89 41 2c             	mov    %eax,0x2c(%rcx)
140d7ddbd:	48 98                	cltq
140d7ddbf:	49 3b c0             	cmp    %r8,%rax
140d7ddc2:	74 0c                	je     0x140d7ddd0
140d7ddc4:	48 81 71 10 ee 00 00 	xorq   $0xee,0x10(%rcx)
140d7ddcb:	00
140d7ddcc:	44 89 41 2c          	mov    %r8d,0x2c(%rcx)
140d7ddd0:	b8 01 00 00 00       	mov    $0x1,%eax
140d7ddd5:	c3                   	ret
140d7ddd6:	cc                   	int3
140d7ddd7:	cc                   	int3
140d7ddd8:	cc                   	int3
140d7ddd9:	cc                   	int3
140d7ddda:	cc                   	int3
140d7dddb:	cc                   	int3
140d7dddc:	cc                   	int3
140d7dddd:	cc                   	int3
140d7ddde:	cc                   	int3
140d7dddf:	cc                   	int3
140d7dde0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140d7dde5:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140d7ddea:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140d7ddef:	57                   	push   %rdi
140d7ddf0:	41 56                	push   %r14
140d7ddf2:	41 57                	push   %r15
140d7ddf4:	b8 40 00 00 00       	mov    $0x40,%eax
140d7ddf9:	e8 a2 d6 09 00       	call   0x140e1b4a0
140d7ddfe:	48 2b e0             	sub    %rax,%rsp
140d7de01:	4d 8b f1             	mov    %r9,%r14
140d7de04:	4d 8b f8             	mov    %r8,%r15
140d7de07:	48 8b fa             	mov    %rdx,%rdi
140d7de0a:	48 8b f1             	mov    %rcx,%rsi
140d7de0d:	48 85 d2             	test   %rdx,%rdx
140d7de10:	0f 84 89 00 00 00    	je     0x140d7de9f
140d7de16:	4c 8d 89 d8 00 00 00 	lea    0xd8(%rcx),%r9
140d7de1d:	c7 44 24 28 ff ff ff 	movl   $0xffffffff,0x28(%rsp)
140d7de24:	ff
140d7de25:	0f 57 c0             	xorps  %xmm0,%xmm0
140d7de28:	33 ed                	xor    %ebp,%ebp
140d7de2a:	41 0f 11 01          	movups %xmm0,(%r9)
140d7de2e:	45 33 c0             	xor    %r8d,%r8d
140d7de31:	33 d2                	xor    %edx,%edx
140d7de33:	41 0f 11 41 10       	movups %xmm0,0x10(%r9)
140d7de38:	48 89 6c 24 20       	mov    %rbp,0x20(%rsp)
140d7de3d:	0f 11 81 f8 00 00 00 	movups %xmm0,0xf8(%rcx)
140d7de44:	48 8b 89 a8 00 00 00 	mov    0xa8(%rcx),%rcx
140d7de4b:	e8 50 e3 f5 ff       	call   0x140cdc1a0
140d7de50:	85 c0                	test   %eax,%eax
140d7de52:	74 4b                	je     0x140d7de9f
140d7de54:	48 8d 8e a8 00 00 00 	lea    0xa8(%rsi),%rcx
140d7de5b:	e8 b0 0d 00 00       	call   0x140d7ec10
140d7de60:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
140d7de67:	00
140d7de68:	4d 8b c7             	mov    %r15,%r8
140d7de6b:	4c 8b 8c 24 88 00 00 	mov    0x88(%rsp),%r9
140d7de72:	00
140d7de73:	48 8b d7             	mov    %rdi,%rdx
140d7de76:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140d7de7b:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
140d7de82:	00
140d7de83:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
140d7de88:	48 89 4c 24 20       	mov    %rcx,0x20(%rsp)
140d7de8d:	48 8b ce             	mov    %rsi,%rcx
140d7de90:	e8 ab 09 00 00       	call   0x140d7e840
140d7de95:	85 c0                	test   %eax,%eax
140d7de97:	40 0f 95 c5          	setne  %bpl
140d7de9b:	8b c5                	mov    %ebp,%eax
140d7de9d:	eb 02                	jmp    0x140d7dea1
140d7de9f:	33 c0                	xor    %eax,%eax
140d7dea1:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140d7dea6:	48 8b 6c 24 68       	mov    0x68(%rsp),%rbp
140d7deab:	48 8b 74 24 70       	mov    0x70(%rsp),%rsi
140d7deb0:	48 83 c4 40          	add    $0x40,%rsp
140d7deb4:	41 5f                	pop    %r15
140d7deb6:	41 5e                	pop    %r14
140d7deb8:	5f                   	pop    %rdi
140d7deb9:	c3                   	ret
140d7deba:	cc                   	int3
140d7debb:	cc                   	int3
140d7debc:	cc                   	int3
140d7debd:	cc                   	int3
140d7debe:	cc                   	int3
140d7debf:	cc                   	int3
140d7dec0:	40 57                	rex push %rdi
140d7dec2:	b8 40 00 00 00       	mov    $0x40,%eax
140d7dec7:	e8 d4 d5 09 00       	call   0x140e1b4a0
140d7decc:	48 2b e0             	sub    %rax,%rsp
140d7decf:	4c 8b da             	mov    %rdx,%r11
140d7ded2:	48 8b f9             	mov    %rcx,%rdi
140d7ded5:	48 85 d2             	test   %rdx,%rdx
140d7ded8:	74 44                	je     0x140d7df1e
140d7deda:	48 81 c1 a8 00 00 00 	add    $0xa8,%rcx
140d7dee1:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
140d7dee6:	e8 25 0d 00 00       	call   0x140d7ec10
140d7deeb:	4c 8b 54 24 70       	mov    0x70(%rsp),%r10
140d7def0:	33 db                	xor    %ebx,%ebx
140d7def2:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140d7def7:	49 8b d3             	mov    %r11,%rdx
140d7defa:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140d7deff:	48 8b cf             	mov    %rdi,%rcx
140d7df02:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
140d7df07:	e8 34 09 00 00       	call   0x140d7e840
140d7df0c:	85 c0                	test   %eax,%eax
140d7df0e:	0f 95 c3             	setne  %bl
140d7df11:	8b c3                	mov    %ebx,%eax
140d7df13:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140d7df18:	48 83 c4 40          	add    $0x40,%rsp
140d7df1c:	5f                   	pop    %rdi
140d7df1d:	c3                   	ret
140d7df1e:	33 c0                	xor    %eax,%eax
140d7df20:	48 83 c4 40          	add    $0x40,%rsp
140d7df24:	5f                   	pop    %rdi
140d7df25:	c3                   	ret
140d7df26:	cc                   	int3
140d7df27:	cc                   	int3
140d7df28:	cc                   	int3
140d7df29:	cc                   	int3
140d7df2a:	cc                   	int3
140d7df2b:	cc                   	int3
140d7df2c:	cc                   	int3
140d7df2d:	cc                   	int3
140d7df2e:	cc                   	int3
140d7df2f:	cc                   	int3
140d7df30:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
140d7df35:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140d7df3a:	55                   	push   %rbp
140d7df3b:	56                   	push   %rsi
140d7df3c:	57                   	push   %rdi
140d7df3d:	41 54                	push   %r12
140d7df3f:	41 55                	push   %r13
140d7df41:	41 56                	push   %r14
140d7df43:	41 57                	push   %r15
140d7df45:	b8 50 00 00 00       	mov    $0x50,%eax
140d7df4a:	e8 51 d5 09 00       	call   0x140e1b4a0
140d7df4f:	48 2b e0             	sub    %rax,%rsp
140d7df52:	4c 8b bc 24 b0 00 00 	mov    0xb0(%rsp),%r15
140d7df59:	00
140d7df5a:	4d 8b e1             	mov    %r9,%r12
140d7df5d:	4c 89 4c 24 40       	mov    %r9,0x40(%rsp)
140d7df62:	49 8b f0             	mov    %r8,%rsi
140d7df65:	48 8d b9 a8 00 00 00 	lea    0xa8(%rcx),%rdi
140d7df6c:	48 8b ea             	mov    %rdx,%rbp
140d7df6f:	48 8b d9             	mov    %rcx,%rbx
140d7df72:	4d 85 c9             	test   %r9,%r9
140d7df75:	74 53                	je     0x140d7dfca
140d7df77:	4d 85 ff             	test   %r15,%r15
140d7df7a:	74 4e                	je     0x140d7dfca
140d7df7c:	48 8b cf             	mov    %rdi,%rcx
140d7df7f:	e8 8c 0c 00 00       	call   0x140d7ec10
140d7df84:	45 33 f6             	xor    %r14d,%r14d
140d7df87:	45 33 c9             	xor    %r9d,%r9d
140d7df8a:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140d7df8f:	4d 8b c7             	mov    %r15,%r8
140d7df92:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
140d7df97:	49 8b d4             	mov    %r12,%rdx
140d7df9a:	48 8b cb             	mov    %rbx,%rcx
140d7df9d:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140d7dfa2:	e8 99 08 00 00       	call   0x140d7e840
140d7dfa7:	85 c0                	test   %eax,%eax
140d7dfa9:	0f 84 ca 01 00 00    	je     0x140d7e179
140d7dfaf:	66 f7 43 1c 01 00    	testw  $0x1,0x1c(%rbx)
140d7dfb5:	41 bd 01 00 00 00    	mov    $0x1,%r13d
140d7dfbb:	45 8b e6             	mov    %r14d,%r12d
140d7dfbe:	4c 0f 45 64 24 40    	cmovne 0x40(%rsp),%r12
140d7dfc4:	4d 0f 45 ef          	cmovne %r15,%r13
140d7dfc8:	eb 06                	jmp    0x140d7dfd0
140d7dfca:	45 33 f6             	xor    %r14d,%r14d
140d7dfcd:	45 8b ee             	mov    %r14d,%r13d
140d7dfd0:	48 8b cf             	mov    %rdi,%rcx
140d7dfd3:	e8 38 0c 00 00       	call   0x140d7ec10
140d7dfd8:	48 85 f6             	test   %rsi,%rsi
140d7dfdb:	75 37                	jne    0x140d7e014
140d7dfdd:	e8 2e 0c 00 00       	call   0x140d7ec10
140d7dfe2:	48 8b cb             	mov    %rbx,%rcx
140d7dfe5:	4c 89 74 24 30       	mov    %r14,0x30(%rsp)
140d7dfea:	49 8b d4             	mov    %r12,%rdx
140d7dfed:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
140d7dff2:	4d 8b c5             	mov    %r13,%r8
140d7dff5:	45 33 c9             	xor    %r9d,%r9d
140d7dff8:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140d7dffd:	e8 3e 08 00 00       	call   0x140d7e840
140d7e002:	85 c0                	test   %eax,%eax
140d7e004:	0f 84 6f 01 00 00    	je     0x140d7e179
140d7e00a:	b8 01 00 00 00       	mov    $0x1,%eax
140d7e00f:	e9 67 01 00 00       	jmp    0x140d7e17b
140d7e014:	4c 8b c6             	mov    %rsi,%r8
140d7e017:	33 d2                	xor    %edx,%edx
140d7e019:	48 8b cd             	mov    %rbp,%rcx
140d7e01c:	e8 8f 16 16 00       	call   0x140edf6b0
140d7e021:	4c 8d 7f 50          	lea    0x50(%rdi),%r15
140d7e025:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
140d7e02c:	00 00 00 00
140d7e030:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140d7e034:	45 33 c9             	xor    %r9d,%r9d
140d7e037:	c7 44 24 28 ff ff ff 	movl   $0xffffffff,0x28(%rsp)
140d7e03e:	ff
140d7e03f:	45 33 c0             	xor    %r8d,%r8d
140d7e042:	33 d2                	xor    %edx,%edx
140d7e044:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
140d7e049:	e8 52 e1 f5 ff       	call   0x140cdc1a0
140d7e04e:	85 c0                	test   %eax,%eax
140d7e050:	0f 84 23 01 00 00    	je     0x140d7e179
140d7e056:	b8 00 00 00 40       	mov    $0x40000000,%eax
140d7e05b:	8b de                	mov    %esi,%ebx
140d7e05d:	48 3b f0             	cmp    %rax,%rsi
140d7e060:	0f 47 d8             	cmova  %eax,%ebx
140d7e063:	8d 43 0f             	lea    0xf(%rbx),%eax
140d7e066:	99                   	cltd
140d7e067:	83 e2 0f             	and    $0xf,%edx
140d7e06a:	03 c2                	add    %edx,%eax
140d7e06c:	8b 57 5c             	mov    0x5c(%rdi),%edx
140d7e06f:	c1 f8 04             	sar    $0x4,%eax
140d7e072:	0f ca                	bswap  %edx
140d7e074:	03 d0                	add    %eax,%edx
140d7e076:	3b d0                	cmp    %eax,%edx
140d7e078:	0f 83 b2 00 00 00    	jae    0x140d7e130
140d7e07e:	85 d2                	test   %edx,%edx
140d7e080:	74 07                	je     0x140d7e089
140d7e082:	8b d8                	mov    %eax,%ebx
140d7e084:	2b da                	sub    %edx,%ebx
140d7e086:	c1 e3 04             	shl    $0x4,%ebx
140d7e089:	41 0f b6 47 0a       	movzbl 0xa(%r15),%eax
140d7e08e:	41 0f b6 4f 0b       	movzbl 0xb(%r15),%ecx
140d7e093:	ff c1                	inc    %ecx
140d7e095:	41 88 4f 0b          	mov    %cl,0xb(%r15)
140d7e099:	c1 e9 08             	shr    $0x8,%ecx
140d7e09c:	03 c8                	add    %eax,%ecx
140d7e09e:	41 0f b6 47 09       	movzbl 0x9(%r15),%eax
140d7e0a3:	41 88 4f 0a          	mov    %cl,0xa(%r15)
140d7e0a7:	c1 e9 08             	shr    $0x8,%ecx
140d7e0aa:	03 c8                	add    %eax,%ecx
140d7e0ac:	41 0f b6 47 08       	movzbl 0x8(%r15),%eax
140d7e0b1:	41 88 4f 09          	mov    %cl,0x9(%r15)
140d7e0b5:	c1 e9 08             	shr    $0x8,%ecx
140d7e0b8:	03 c8                	add    %eax,%ecx
140d7e0ba:	41 0f b6 47 07       	movzbl 0x7(%r15),%eax
140d7e0bf:	41 88 4f 08          	mov    %cl,0x8(%r15)
140d7e0c3:	c1 e9 08             	shr    $0x8,%ecx
140d7e0c6:	03 c8                	add    %eax,%ecx
140d7e0c8:	41 0f b6 47 06       	movzbl 0x6(%r15),%eax
140d7e0cd:	41 88 4f 07          	mov    %cl,0x7(%r15)
140d7e0d1:	c1 e9 08             	shr    $0x8,%ecx
140d7e0d4:	03 c8                	add    %eax,%ecx
140d7e0d6:	41 0f b6 47 05       	movzbl 0x5(%r15),%eax
140d7e0db:	41 88 4f 06          	mov    %cl,0x6(%r15)
140d7e0df:	c1 e9 08             	shr    $0x8,%ecx
140d7e0e2:	03 c8                	add    %eax,%ecx
140d7e0e4:	41 0f b6 47 04       	movzbl 0x4(%r15),%eax
140d7e0e9:	41 88 4f 05          	mov    %cl,0x5(%r15)
140d7e0ed:	c1 e9 08             	shr    $0x8,%ecx
140d7e0f0:	03 c8                	add    %eax,%ecx
140d7e0f2:	41 0f b6 47 03       	movzbl 0x3(%r15),%eax
140d7e0f7:	41 88 4f 04          	mov    %cl,0x4(%r15)
140d7e0fb:	c1 e9 08             	shr    $0x8,%ecx
140d7e0fe:	03 c8                	add    %eax,%ecx
140d7e100:	41 0f b6 47 02       	movzbl 0x2(%r15),%eax
140d7e105:	41 88 4f 03          	mov    %cl,0x3(%r15)
140d7e109:	c1 e9 08             	shr    $0x8,%ecx
140d7e10c:	03 c8                	add    %eax,%ecx
140d7e10e:	41 0f b6 47 01       	movzbl 0x1(%r15),%eax
140d7e113:	41 88 4f 02          	mov    %cl,0x2(%r15)
140d7e117:	c1 e9 08             	shr    $0x8,%ecx
140d7e11a:	03 c8                	add    %eax,%ecx
140d7e11c:	41 8b c6             	mov    %r14d,%eax
140d7e11f:	41 88 4f 01          	mov    %cl,0x1(%r15)
140d7e123:	c1 e9 08             	shr    $0x8,%ecx
140d7e126:	41 00 0f             	add    %cl,(%r15)
140d7e129:	85 d2                	test   %edx,%edx
140d7e12b:	0f 44 c2             	cmove  %edx,%eax
140d7e12e:	8b d0                	mov    %eax,%edx
140d7e130:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
140d7e134:	4c 8d 84 24 a8 00 00 	lea    0xa8(%rsp),%r8
140d7e13b:	00
140d7e13c:	0f ca                	bswap  %edx
140d7e13e:	89 57 5c             	mov    %edx,0x5c(%rdi)
140d7e141:	4c 8b cd             	mov    %rbp,%r9
140d7e144:	48 8b d5             	mov    %rbp,%rdx
140d7e147:	89 5c 24 20          	mov    %ebx,0x20(%rsp)
140d7e14b:	e8 30 e4 f5 ff       	call   0x140cdc580
140d7e150:	85 c0                	test   %eax,%eax
140d7e152:	74 25                	je     0x140d7e179
140d7e154:	39 9c 24 a8 00 00 00 	cmp    %ebx,0xa8(%rsp)
140d7e15b:	75 1c                	jne    0x140d7e179
140d7e15d:	48 63 c3             	movslq %ebx,%rax
140d7e160:	48 03 e8             	add    %rax,%rbp
140d7e163:	48 2b f0             	sub    %rax,%rsi
140d7e166:	0f 85 c4 fe ff ff    	jne    0x140d7e030
140d7e16c:	48 8b 8c 24 90 00 00 	mov    0x90(%rsp),%rcx
140d7e173:	00
140d7e174:	e9 6c fe ff ff       	jmp    0x140d7dfe5
140d7e179:	33 c0                	xor    %eax,%eax
140d7e17b:	48 8b 9c 24 98 00 00 	mov    0x98(%rsp),%rbx
140d7e182:	00
140d7e183:	48 83 c4 50          	add    $0x50,%rsp
140d7e187:	41 5f                	pop    %r15
140d7e189:	41 5e                	pop    %r14
140d7e18b:	41 5d                	pop    %r13
140d7e18d:	41 5c                	pop    %r12
140d7e18f:	5f                   	pop    %rdi
140d7e190:	5e                   	pop    %rsi
140d7e191:	5d                   	pop    %rbp
140d7e192:	c3                   	ret
140d7e193:	cc                   	int3
140d7e194:	cc                   	int3
140d7e195:	cc                   	int3
140d7e196:	cc                   	int3
140d7e197:	cc                   	int3
140d7e198:	cc                   	int3
140d7e199:	cc                   	int3
140d7e19a:	cc                   	int3
140d7e19b:	cc                   	int3
140d7e19c:	cc                   	int3
140d7e19d:	cc                   	int3
140d7e19e:	cc                   	int3
140d7e19f:	cc                   	int3
140d7e1a0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140d7e1a5:	57                   	push   %rdi
140d7e1a6:	b8 20 00 00 00       	mov    $0x20,%eax
140d7e1ab:	e8 f0 d2 09 00       	call   0x140e1b4a0
140d7e1b0:	48 2b e0             	sub    %rax,%rsp
140d7e1b3:	48 8b d9             	mov    %rcx,%rbx
140d7e1b6:	48 8b 89 a8 00 00 00 	mov    0xa8(%rcx),%rcx
140d7e1bd:	e8 4e dc f5 ff       	call   0x140cdbe10
140d7e1c2:	48 8b 8b b0 00 00 00 	mov    0xb0(%rbx),%rcx
140d7e1c9:	e8 42 dc f5 ff       	call   0x140cdbe10
140d7e1ce:	48 8b 8b b8 00 00 00 	mov    0xb8(%rbx),%rcx
140d7e1d5:	e8 36 dc f5 ff       	call   0x140cdbe10
140d7e1da:	ba a8 00 00 00       	mov    $0xa8,%edx
140d7e1df:	48 8d 8b a8 00 00 00 	lea    0xa8(%rbx),%rcx
140d7e1e6:	e8 15 41 28 ff       	call   0x140002300
140d7e1eb:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140d7e1f0:	b8 01 00 00 00       	mov    $0x1,%eax
140d7e1f5:	48 83 c4 20          	add    $0x20,%rsp
140d7e1f9:	5f                   	pop    %rdi
140d7e1fa:	c3                   	ret
140d7e1fb:	cc                   	int3
140d7e1fc:	cc                   	int3
140d7e1fd:	cc                   	int3
140d7e1fe:	cc                   	int3