1405a1ff3:	4c 8b f1             	mov    %rcx,%r14
1405a1ff6:	48 0f af fa          	imul   %rdx,%rdi
1405a1ffa:	bd 01 00 00 00       	mov    $0x1,%ebp
1405a1fff:	48 03 c7             	add    %rdi,%rax
1405a2002:	48 8b f7             	mov    %rdi,%rsi
1405a2005:	48 3b f8             	cmp    %rax,%rdi
1405a2008:	73 40                	jae    0x1405a204a
1405a200a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
1405a2010:	49 8b 4e 08          	mov    0x8(%r14),%rcx
1405a2014:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1405a2019:	4c 8b c6             	mov    %rsi,%r8
1405a201c:	e8 5f 2d 00 00       	call   0x1405a4d80
1405a2021:	48 8b c8             	mov    %rax,%rcx
1405a2024:	e8 97 2d 00 00       	call   0x1405a4dc0
1405a2029:	49 8b 56 10          	mov    0x10(%r14),%rdx
1405a202d:	48 8b cd             	mov    %rbp,%rcx
1405a2030:	48 0b cb             	or     %rbx,%rcx
1405a2033:	84 c0                	test   %al,%al
1405a2035:	48 0f 44 cb          	cmove  %rbx,%rcx
1405a2039:	48 ff c6             	inc    %rsi
1405a203c:	48 03 ed             	add    %rbp,%rbp
1405a203f:	48 03 d7             	add    %rdi,%rdx
1405a2042:	48 8b d9             	mov    %rcx,%rbx
1405a2045:	48 3b f2             	cmp    %rdx,%rsi
1405a2048:	72 c6                	jb     0x1405a2010
1405a204a:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1405a204f:	48 8b c3             	mov    %rbx,%rax
1405a2052:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1405a2057:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1405a205c:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
1405a2061:	48 83 c4 30          	add    $0x30,%rsp
1405a2065:	41 5e                	pop    %r14
1405a2067:	c3                   	ret
1405a2068:	cc                   	int3
1405a2069:	cc                   	int3
1405a206a:	cc                   	int3
1405a206b:	cc                   	int3
1405a206c:	cc                   	int3
1405a206d:	cc                   	int3
1405a206e:	cc                   	int3
1405a206f:	cc                   	int3
1405a2070:	4c 8b dc             	mov    %rsp,%r11
1405a2073:	53                   	push   %rbx
1405a2074:	55                   	push   %rbp
1405a2075:	57                   	push   %rdi
1405a2076:	41 56                	push   %r14
1405a2078:	48 83 ec 58          	sub    $0x58,%rsp
1405a207c:	48 8b 41 10          	mov    0x10(%rcx),%rax
1405a2080:	48 8b e9             	mov    %rcx,%rbp
1405a2083:	48 8b c8             	mov    %rax,%rcx
1405a2086:	49 8b f8             	mov    %r8,%rdi
1405a2089:	48 0f af ca          	imul   %rdx,%rcx
1405a208d:	48 f7 df             	neg    %rdi
1405a2090:	32 db                	xor    %bl,%bl
1405a2092:	45 33 f6             	xor    %r14d,%r14d
1405a2095:	48 89 8c 24 80 00 00 	mov    %rcx,0x80(%rsp)
1405a209c:	00
1405a209d:	48 89 bc 24 90 00 00 	mov    %rdi,0x90(%rsp)
1405a20a4:	00
1405a20a5:	48 85 c0             	test   %rax,%rax
1405a20a8:	0f 84 bb 00 00 00    	je     0x1405a2169
1405a20ae:	49 89 73 10          	mov    %rsi,0x10(%r11)
1405a20b2:	4d 89 63 d8          	mov    %r12,-0x28(%r11)
1405a20b6:	4d 89 6b d0          	mov    %r13,-0x30(%r11)
1405a20ba:	4d 89 7b c8          	mov    %r15,-0x38(%r11)
1405a20be:	66 90                	xchg   %ax,%ax
1405a20c0:	49 8d 34 0e          	lea    (%r14,%rcx,1),%rsi
1405a20c4:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
1405a20c8:	4c 8b c6             	mov    %rsi,%r8
1405a20cb:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1405a20d0:	e8 ab 2c 00 00       	call   0x1405a4d80
1405a20d5:	48 8b c8             	mov    %rax,%rcx
1405a20d8:	e8 e3 2c 00 00       	call   0x1405a4dc0
1405a20dd:	44 0f b6 e0          	movzbl %al,%r12d
1405a20e1:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1405a20e6:	b8 01 00 00 00       	mov    $0x1,%eax
1405a20eb:	49 8b ce             	mov    %r14,%rcx
1405a20ee:	d3 e0                	shl    %cl,%eax
1405a20f0:	4c 8b c6             	mov    %rsi,%r8
1405a20f3:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
1405a20f7:	4c 63 f8             	movslq %eax,%r15
1405a20fa:	4c 23 ff             	and    %rdi,%r15
1405a20fd:	41 0f 95 c5          	setne  %r13b
1405a2101:	41 0f b6 fd          	movzbl %r13b,%edi
1405a2105:	41 32 fc             	xor    %r12b,%dil
1405a2108:	40 32 fb             	xor    %bl,%dil
1405a210b:	e8 70 2c 00 00       	call   0x1405a4d80
1405a2110:	48 8b c8             	mov    %rax,%rcx
1405a2113:	40 0f b6 d7          	movzbl %dil,%edx
1405a2117:	e8 34 2c 00 00       	call   0x1405a4d50
1405a211c:	45 84 e4             	test   %r12b,%r12b
1405a211f:	74 05                	je     0x1405a2126
1405a2121:	4d 85 ff             	test   %r15,%r15
1405a2124:	75 09                	jne    0x1405a212f
1405a2126:	84 db                	test   %bl,%bl
1405a2128:	74 09                	je     0x1405a2133
1405a212a:	45 3a e5             	cmp    %r13b,%r12b
1405a212d:	74 04                	je     0x1405a2133
1405a212f:	b3 01                	mov    $0x1,%bl
1405a2131:	eb 02                	jmp    0x1405a2135
1405a2133:	32 db                	xor    %bl,%bl
1405a2135:	48 8b bc 24 90 00 00 	mov    0x90(%rsp),%rdi
1405a213c:	00
1405a213d:	49 ff c6             	inc    %r14
1405a2140:	48 8b 8c 24 80 00 00 	mov    0x80(%rsp),%rcx
1405a2147:	00
1405a2148:	4c 3b 75 10          	cmp    0x10(%rbp),%r14
1405a214c:	0f 82 6e ff ff ff    	jb     0x1405a20c0
1405a2152:	4c 8b 7c 24 40       	mov    0x40(%rsp),%r15
1405a2157:	4c 8b 6c 24 48       	mov    0x48(%rsp),%r13
1405a215c:	4c 8b 64 24 50       	mov    0x50(%rsp),%r12
1405a2161:	48 8b b4 24 88 00 00 	mov    0x88(%rsp),%rsi
1405a2168:	00
1405a2169:	0f b6 c3             	movzbl %bl,%eax
1405a216c:	48 83 c4 58          	add    $0x58,%rsp
1405a2170:	41 5e                	pop    %r14
1405a2172:	5f                   	pop    %rdi
1405a2173:	5d                   	pop    %rbp
1405a2174:	5b                   	pop    %rbx
1405a2175:	c3                   	ret
1405a2176:	cc                   	int3
1405a2177:	cc                   	int3
1405a2178:	cc                   	int3
1405a2179:	cc                   	int3
1405a217a:	cc                   	int3
1405a217b:	cc                   	int3
1405a217c:	cc                   	int3
1405a217d:	cc                   	int3
1405a217e:	cc                   	int3
1405a217f:	cc                   	int3
1405a2180:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1405a2184:	e9 57 2d 00 00       	jmp    0x1405a4ee0
1405a2189:	cc                   	int3
1405a218a:	cc                   	int3
1405a218b:	cc                   	int3
1405a218c:	cc                   	int3
1405a218d:	cc                   	int3
1405a218e:	cc                   	int3
1405a218f:	cc                   	int3
1405a2190:	4c 8b dc             	mov    %rsp,%r11
1405a2193:	4d 89 43 18          	mov    %r8,0x18(%r11)
1405a2197:	53                   	push   %rbx
1405a2198:	55                   	push   %rbp
1405a2199:	41 54                	push   %r12
1405a219b:	41 56                	push   %r14
1405a219d:	41 57                	push   %r15
1405a219f:	48 83 ec 50          	sub    $0x50,%rsp
1405a21a3:	48 8b 41 10          	mov    0x10(%rcx),%rax
1405a21a7:	45 33 f6             	xor    %r14d,%r14d
1405a21aa:	4c 8b e0             	mov    %rax,%r12
1405a21ad:	32 db                	xor    %bl,%bl
1405a21af:	4c 0f af e2          	imul   %rdx,%r12
1405a21b3:	48 8b e9             	mov    %rcx,%rbp
1405a21b6:	45 8b fe             	mov    %r14d,%r15d
1405a21b9:	48 85 c0             	test   %rax,%rax
1405a21bc:	0f 84 f7 00 00 00    	je     0x1405a22b9
1405a21c2:	49 89 73 20          	mov    %rsi,0x20(%r11)
1405a21c6:	4d 8b f0             	mov    %r8,%r14
1405a21c9:	49 89 7b d0          	mov    %rdi,-0x30(%r11)
1405a21cd:	4d 89 6b c8          	mov    %r13,-0x38(%r11)
1405a21d1:	0f 1f 40 00          	nopl   0x0(%rax)
1405a21d5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
1405a21dc:	00 00 00 00
1405a21e0:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
1405a21e4:	4b 8d 34 27          	lea    (%r15,%r12,1),%rsi
1405a21e8:	4c 8b c6             	mov    %rsi,%r8
1405a21eb:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1405a21f0:	e8 8b 2b 00 00       	call   0x1405a4d80
1405a21f5:	48 8b c8             	mov    %rax,%rcx
1405a21f8:	e8 c3 2b 00 00       	call   0x1405a4dc0
1405a21fd:	0f b6 d0             	movzbl %al,%edx
1405a2200:	88 84 24 80 00 00 00 	mov    %al,0x80(%rsp)
1405a2207:	b8 01 00 00 00       	mov    $0x1,%eax
1405a220c:	49 8b cf             	mov    %r15,%rcx
1405a220f:	d3 e0                	shl    %cl,%eax
1405a2211:	4c 8b c6             	mov    %rsi,%r8
1405a2214:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
1405a2218:	4c 63 e8             	movslq %eax,%r13
1405a221b:	4d 23 ee             	and    %r14,%r13
1405a221e:	0f 95 c0             	setne  %al
1405a2221:	0f b6 f8             	movzbl %al,%edi
1405a2224:	88 84 24 88 00 00 00 	mov    %al,0x88(%rsp)
1405a222b:	40 32 fa             	xor    %dl,%dil
1405a222e:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1405a2233:	40 32 fb             	xor    %bl,%dil
1405a2236:	e8 45 2b 00 00       	call   0x1405a4d80
1405a223b:	48 8b c8             	mov    %rax,%rcx
1405a223e:	40 0f b6 d7          	movzbl %dil,%edx
1405a2242:	e8 09 2b 00 00       	call   0x1405a4d50
1405a2247:	0f b6 84 24 80 00 00 	movzbl 0x80(%rsp),%eax
1405a224e:	00
1405a224f:	84 c0                	test   %al,%al
1405a2251:	74 05                	je     0x1405a2258
1405a2253:	4d 85 ed             	test   %r13,%r13
1405a2256:	75 0d                	jne    0x1405a2265
1405a2258:	84 db                	test   %bl,%bl
1405a225a:	74 0d                	je     0x1405a2269
1405a225c:	3a 84 24 88 00 00 00 	cmp    0x88(%rsp),%al
1405a2263:	74 04                	je     0x1405a2269
1405a2265:	b3 01                	mov    $0x1,%bl
1405a2267:	eb 02                	jmp    0x1405a226b
1405a2269:	32 db                	xor    %bl,%bl
1405a226b:	48 8b 45 10          	mov    0x10(%rbp),%rax
1405a226f:	49 ff c7             	inc    %r15
1405a2272:	4c 3b f8             	cmp    %rax,%r15
1405a2275:	0f 82 65 ff ff ff    	jb     0x1405a21e0
1405a227b:	4c 8b 6c 24 40       	mov    0x40(%rsp),%r13
1405a2280:	41 be 00 00 00 00    	mov    $0x0,%r14d
1405a2286:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1405a228b:	48 8b b4 24 98 00 00 	mov    0x98(%rsp),%rsi
1405a2292:	00
1405a2293:	84 db                	test   %bl,%bl
1405a2295:	74 22                	je     0x1405a22b9
1405a2297:	48 85 c0             	test   %rax,%rax
1405a229a:	74 1d                	je     0x1405a22b9
1405a229c:	0f 1f 40 00          	nopl   0x0(%rax)
1405a22a0:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
1405a22a4:	4b 8d 14 26          	lea    (%r14,%r12,1),%rdx
1405a22a8:	41 b0 01             	mov    $0x1,%r8b
1405a22ab:	e8 d0 2f 00 00       	call   0x1405a5280
1405a22b0:	49 ff c6             	inc    %r14
1405a22b3:	4c 3b 75 10          	cmp    0x10(%rbp),%r14
1405a22b7:	72 e7                	jb     0x1405a22a0
1405a22b9:	80 f3 01             	xor    $0x1,%bl
1405a22bc:	0f b6 c3             	movzbl %bl,%eax
1405a22bf:	48 83 c4 50          	add    $0x50,%rsp
1405a22c3:	41 5f                	pop    %r15
1405a22c5:	41 5e                	pop    %r14
1405a22c7:	41 5c                	pop    %r12
1405a22c9:	5d                   	pop    %rbp
1405a22ca:	5b                   	pop    %rbx
1405a22cb:	c3                   	ret
1405a22cc:	cc                   	int3
1405a22cd:	cc                   	int3
1405a22ce:	cc                   	int3
1405a22cf:	cc                   	int3
1405a22d0:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1405a22d4:	e9 b7 2c 00 00       	jmp    0x1405a4f90
1405a22d9:	cc                   	int3
1405a22da:	cc                   	int3
1405a22db:	cc                   	int3
1405a22dc:	cc                   	int3
1405a22dd:	cc                   	int3
1405a22de:	cc                   	int3
1405a22df:	cc                   	int3
1405a22e0:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
1405a22e5:	55                   	push   %rbp
1405a22e6:	53                   	push   %rbx
1405a22e7:	56                   	push   %rsi
1405a22e8:	57                   	push   %rdi
1405a22e9:	41 54                	push   %r12
1405a22eb:	41 56                	push   %r14
1405a22ed:	41 57                	push   %r15
1405a22ef:	48 8d 6c 24 d9       	lea    -0x27(%rsp),%rbp
1405a22f4:	48 81 ec f0 00 00 00 	sub    $0xf0,%rsp
1405a22fb:	4c 8b e2             	mov    %rdx,%r12
1405a22fe:	48 8b d9             	mov    %rcx,%rbx
1405a2301:	45 33 ff             	xor    %r15d,%r15d
1405a2304:	44 89 7c 24 38       	mov    %r15d,0x38(%rsp)
1405a2309:	48 8d 55 8f          	lea    -0x71(%rbp),%rdx
1405a230d:	48 8b 49 08          	mov    0x8(%rcx),%rcx
1405a2311:	e8 aa 2c 00 00       	call   0x1405a4fc0
1405a2316:	90                   	nop
1405a2317:	44 38 7d 8f          	cmp    %r15b,-0x71(%rbp)
1405a231b:	75 29                	jne    0x1405a2346
1405a231d:	45 88 3c 24          	mov    %r15b,(%r12)
1405a2321:	49 8d 4c 24 08       	lea    0x8(%r12),%rcx
1405a2326:	b2 0c                	mov    $0xc,%dl
1405a2328:	e8 53 cc 41 00       	call   0x1409bef80
1405a232d:	90                   	nop
1405a232e:	48 8d 4d 97          	lea    -0x69(%rbp),%rcx
1405a2332:	44 38 7d 8f          	cmp    %r15b,-0x71(%rbp)
1405a2336:	0f 84 d5 01 00 00    	je     0x1405a2511
1405a233c:	e8 5f f9 e1 ff       	call   0x1403c1ca0
1405a2341:	e9 d0 01 00 00       	jmp    0x1405a2516
1405a2346:	48 8b 5b 10          	mov    0x10(%rbx),%rbx
1405a234a:	c6 45 ef 00          	movb   $0x0,-0x11(%rbp)
1405a234e:	48 8d 4d c7          	lea    -0x39(%rbp),%rcx
1405a2352:	e8 49 f9 e1 ff       	call   0x1403c1ca0
1405a2357:	48 89 5d c7          	mov    %rbx,-0x39(%rbp)
1405a235b:	c6 45 ef 02          	movb   $0x2,-0x11(%rbp)
1405a235f:	48 8d 45 f7          	lea    -0x9(%rbp),%rax
1405a2363:	48 89 45 77          	mov    %rax,0x77(%rbp)
1405a2367:	c6 45 1f ff          	movb   $0xff,0x1f(%rbp)
1405a236b:	48 8d 45 f7          	lea    -0x9(%rbp),%rax
1405a236f:	48 89 45 67          	mov    %rax,0x67(%rbp)
1405a2373:	48 0f be 4d bf       	movsbq -0x41(%rbp),%rcx
1405a2378:	48 ff c1             	inc    %rcx
1405a237b:	4c 8d 45 97          	lea    -0x69(%rbp),%r8
1405a237f:	48 8d 55 67          	lea    0x67(%rbp),%rdx
1405a2383:	e8 d8 e6 f9 ff       	call   0x140540a60
1405a2388:	90                   	nop
1405a2389:	0f 57 c0             	xorps  %xmm0,%xmm0
1405a238c:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
1405a2392:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
1405a2397:	ba 02 00 00 00       	mov    $0x2,%edx
1405a239c:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
1405a23a1:	e8 2a a5 fa ff       	call   0x14054c8d0
1405a23a6:	48 8d 44 24 20       	lea    0x20(%rsp),%rax
1405a23ab:	48 89 45 77          	mov    %rax,0x77(%rbp)
1405a23af:	48 8d 5d c7          	lea    -0x39(%rbp),%rbx
1405a23b3:	4c 8b 74 24 20       	mov    0x20(%rsp),%r14
1405a23b8:	4c 89 74 24 40       	mov    %r14,0x40(%rsp)
1405a23bd:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
1405a23c2:	48 8d 44 24 20       	lea    0x20(%rsp),%rax
1405a23c7:	48 89 45 87          	mov    %rax,-0x79(%rbp)
1405a23cb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1405a23d0:	4c 89 75 7f          	mov    %r14,0x7f(%rbp)
1405a23d4:	41 c6 46 28 ff       	movb   $0xff,0x28(%r14)
1405a23d9:	4c 89 75 67          	mov    %r14,0x67(%rbp)
1405a23dd:	48 0f be 4b 28       	movsbq 0x28(%rbx),%rcx
1405a23e2:	48 ff c1             	inc    %rcx
1405a23e5:	4c 8b c3             	mov    %rbx,%r8
1405a23e8:	48 8d 55 67          	lea    0x67(%rbp),%rdx
1405a23ec:	e8 2f e4 f9 ff       	call   0x140540820
1405a23f1:	90                   	nop
1405a23f2:	49 83 c6 30          	add    $0x30,%r14
1405a23f6:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
1405a23fb:	48 83 c3 30          	add    $0x30,%rbx
1405a23ff:	48 8d 45 27          	lea    0x27(%rbp),%rax
1405a2403:	48 3b d8             	cmp    %rax,%rbx
1405a2406:	75 c8                	jne    0x1405a23d0
1405a2408:	41 c6 04 24 01       	movb   $0x1,(%r12)
1405a240d:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
1405a2412:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
1405a2417:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
1405a241c:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
1405a2421:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
1405a2426:	41 c6 44 24 30 00    	movb   $0x0,0x30(%r12)
1405a242c:	49 8d 4c 24 08       	lea    0x8(%r12),%rcx
1405a2431:	e8 6a f8 e1 ff       	call   0x1403c1ca0
1405a2436:	49 89 5c 24 08       	mov    %rbx,0x8(%r12)
1405a243b:	4d 89 74 24 10       	mov    %r14,0x10(%r12)
1405a2440:	49 89 7c 24 18       	mov    %rdi,0x18(%r12)
1405a2445:	41 c6 44 24 30 0e    	movb   $0xe,0x30(%r12)
1405a244b:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
1405a2450:	48 85 db             	test   %rbx,%rbx
1405a2453:	0f 84 82 00 00 00    	je     0x1405a24db
1405a2459:	48 8b 7c 24 28       	mov    0x28(%rsp),%rdi
1405a245e:	48 3b df             	cmp    %rdi,%rbx
1405a2461:	74 16                	je     0x1405a2479
1405a2463:	48 8b cb             	mov    %rbx,%rcx
1405a2466:	e8 35 f8 e1 ff       	call   0x1403c1ca0
1405a246b:	48 83 c3 30          	add    $0x30,%rbx
1405a246f:	48 3b df             	cmp    %rdi,%rbx
1405a2472:	75 ef                	jne    0x1405a2463
1405a2474:	48 8b 5c 24 20       	mov    0x20(%rsp),%rbx
1405a2479:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
1405a247e:	48 2b cb             	sub    %rbx,%rcx
1405a2481:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax