14003329d:	4d 8b c7             	mov    %r15,%r8
1400332a0:	48 8b d6             	mov    %rsi,%rdx
1400332a3:	48 8b 40 10          	mov    0x10(%rax),%rax
1400332a7:	ff 15 8b 99 ad 00    	call   *0xad998b(%rip)        # 0x140b0cc38
1400332ad:	84 c0                	test   %al,%al
1400332af:	75 2e                	jne    0x1400332df
1400332b1:	48 3b fe             	cmp    %rsi,%rdi
1400332b4:	74 1c                	je     0x1400332d2
1400332b6:	48 8b 06             	mov    (%rsi),%rax
1400332b9:	48 8b 0f             	mov    (%rdi),%rcx
1400332bc:	48 89 07             	mov    %rax,(%rdi)
1400332bf:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400332c3:	48 89 0e             	mov    %rcx,(%rsi)
1400332c6:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1400332ca:	48 89 47 08          	mov    %rax,0x8(%rdi)
1400332ce:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
1400332d2:	48 83 c7 10          	add    $0x10,%rdi
1400332d6:	48 83 c6 10          	add    $0x10,%rsi
1400332da:	49 3b f5             	cmp    %r13,%rsi
1400332dd:	72 8a                	jb     0x140033269
1400332df:	4d 3b f4             	cmp    %r12,%r14
1400332e2:	0f 86 83 00 00 00    	jbe    0x14003336b
1400332e8:	49 8d 6e f0          	lea    -0x10(%r14),%rbp
1400332ec:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
1400332f0:	48 85 c9             	test   %rcx,%rcx
1400332f3:	0f 84 3b 01 00 00    	je     0x140033434
1400332f9:	48 8b 01             	mov    (%rcx),%rax
1400332fc:	4d 8b c7             	mov    %r15,%r8
1400332ff:	48 8b d5             	mov    %rbp,%rdx
140033302:	48 8b 40 10          	mov    0x10(%rax),%rax
140033306:	ff 15 2c 99 ad 00    	call   *0xad992c(%rip)        # 0x140b0cc38
14003330c:	84 c0                	test   %al,%al
14003330e:	75 4b                	jne    0x14003335b
140033310:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
140033314:	48 85 c9             	test   %rcx,%rcx
140033317:	0f 84 17 01 00 00    	je     0x140033434
14003331d:	48 8b 01             	mov    (%rcx),%rax
140033320:	4c 8b c5             	mov    %rbp,%r8
140033323:	49 8b d7             	mov    %r15,%rdx
140033326:	48 8b 40 10          	mov    0x10(%rax),%rax
14003332a:	ff 15 08 99 ad 00    	call   *0xad9908(%rip)        # 0x140b0cc38
140033330:	84 c0                	test   %al,%al
140033332:	75 34                	jne    0x140033368
140033334:	49 83 ef 10          	sub    $0x10,%r15
140033338:	4c 3b fd             	cmp    %rbp,%r15
14003333b:	74 1e                	je     0x14003335b
14003333d:	48 8b 45 00          	mov    0x0(%rbp),%rax
140033341:	49 8b 0f             	mov    (%r15),%rcx
140033344:	49 89 07             	mov    %rax,(%r15)
140033347:	48 8b 45 08          	mov    0x8(%rbp),%rax
14003334b:	48 89 4d 00          	mov    %rcx,0x0(%rbp)
14003334f:	49 8b 4f 08          	mov    0x8(%r15),%rcx
140033353:	49 89 47 08          	mov    %rax,0x8(%r15)
140033357:	48 89 4d 08          	mov    %rcx,0x8(%rbp)
14003335b:	49 83 ee 10          	sub    $0x10,%r14
14003335f:	48 83 ed 10          	sub    $0x10,%rbp
140033363:	4d 3b e6             	cmp    %r14,%r12
140033366:	72 84                	jb     0x1400332ec
140033368:	4d 3b f4             	cmp    %r12,%r14
14003336b:	75 53                	jne    0x1400333c0
14003336d:	49 3b f5             	cmp    %r13,%rsi
140033370:	0f 84 c5 00 00 00    	je     0x14003343b
140033376:	48 3b fe             	cmp    %rsi,%rdi
140033379:	74 1c                	je     0x140033397
14003337b:	48 8b 07             	mov    (%rdi),%rax
14003337e:	49 8b 0f             	mov    (%r15),%rcx
140033381:	49 89 07             	mov    %rax,(%r15)
140033384:	48 8b 47 08          	mov    0x8(%rdi),%rax
140033388:	48 89 0f             	mov    %rcx,(%rdi)
14003338b:	49 8b 4f 08          	mov    0x8(%r15),%rcx
14003338f:	49 89 47 08          	mov    %rax,0x8(%r15)
140033393:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
140033397:	49 8b 0f             	mov    (%r15),%rcx
14003339a:	48 83 c7 10          	add    $0x10,%rdi
14003339e:	48 8b 06             	mov    (%rsi),%rax
1400333a1:	49 89 07             	mov    %rax,(%r15)
1400333a4:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400333a8:	48 89 0e             	mov    %rcx,(%rsi)
1400333ab:	49 8b 4f 08          	mov    0x8(%r15),%rcx
1400333af:	49 89 47 08          	mov    %rax,0x8(%r15)
1400333b3:	49 83 c7 10          	add    $0x10,%r15
1400333b7:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
1400333bb:	e9 16 ff ff ff       	jmp    0x1400332d6
1400333c0:	49 83 c6 f0          	add    $0xfffffffffffffff0,%r14
1400333c4:	49 3b f5             	cmp    %r13,%rsi
1400333c7:	75 4a                	jne    0x140033413
1400333c9:	49 83 ef 10          	sub    $0x10,%r15
1400333cd:	49 8d 57 08          	lea    0x8(%r15),%rdx
1400333d1:	4d 3b f7             	cmp    %r15,%r14
1400333d4:	74 1a                	je     0x1400333f0
1400333d6:	49 8b 07             	mov    (%r15),%rax
1400333d9:	49 8b 0e             	mov    (%r14),%rcx
1400333dc:	49 89 06             	mov    %rax,(%r14)
1400333df:	48 8b 02             	mov    (%rdx),%rax
1400333e2:	49 89 0f             	mov    %rcx,(%r15)
1400333e5:	49 8b 4e 08          	mov    0x8(%r14),%rcx
1400333e9:	49 89 46 08          	mov    %rax,0x8(%r14)
1400333ed:	48 89 0a             	mov    %rcx,(%rdx)
1400333f0:	49 8b 0f             	mov    (%r15),%rcx
1400333f3:	48 83 ef 10          	sub    $0x10,%rdi
1400333f7:	48 8b 07             	mov    (%rdi),%rax
1400333fa:	49 89 07             	mov    %rax,(%r15)
1400333fd:	48 8b 47 08          	mov    0x8(%rdi),%rax
140033401:	48 89 0f             	mov    %rcx,(%rdi)
140033404:	48 8b 0a             	mov    (%rdx),%rcx
140033407:	48 89 02             	mov    %rax,(%rdx)
14003340a:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
14003340e:	e9 c7 fe ff ff       	jmp    0x1400332da
140033413:	49 8b 06             	mov    (%r14),%rax
140033416:	48 8b 0e             	mov    (%rsi),%rcx
140033419:	48 89 06             	mov    %rax,(%rsi)
14003341c:	49 8b 46 08          	mov    0x8(%r14),%rax
140033420:	49 89 0e             	mov    %rcx,(%r14)
140033423:	48 8b 4e 08          	mov    0x8(%rsi),%rcx
140033427:	48 89 46 08          	mov    %rax,0x8(%rsi)
14003342b:	49 89 4e 08          	mov    %rcx,0x8(%r14)
14003342f:	e9 a2 fe ff ff       	jmp    0x1400332d6
140033434:	ff 15 7e 90 ad 00    	call   *0xad907e(%rip)        # 0x140b0c4b8
14003343a:	cc                   	int3
14003343b:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
140033440:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140033445:	48 8b 6c 24 60       	mov    0x60(%rsp),%rbp
14003344a:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
14003344f:	4c 89 38             	mov    %r15,(%rax)
140033452:	48 89 78 08          	mov    %rdi,0x8(%rax)
140033456:	48 83 c4 20          	add    $0x20,%rsp
14003345a:	41 5f                	pop    %r15
14003345c:	41 5e                	pop    %r14
14003345e:	41 5d                	pop    %r13
140033460:	41 5c                	pop    %r12
140033462:	5f                   	pop    %rdi
140033463:	c3                   	ret
140033464:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140033469:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14003346e:	57                   	push   %rdi
14003346f:	48 83 ec 20          	sub    $0x20,%rsp
140033473:	49 8b d8             	mov    %r8,%rbx
140033476:	48 8b f2             	mov    %rdx,%rsi
140033479:	48 8b f9             	mov    %rcx,%rdi
14003347c:	48 3b ca             	cmp    %rdx,%rcx
14003347f:	74 18                	je     0x140033499
140033481:	48 8b d7             	mov    %rdi,%rdx
140033484:	48 8b cb             	mov    %rbx,%rcx
140033487:	e8 58 2e fd ff       	call   0x1400062e4
14003348c:	48 83 c3 10          	add    $0x10,%rbx
140033490:	48 83 c7 10          	add    $0x10,%rdi
140033494:	48 3b fe             	cmp    %rsi,%rdi
140033497:	75 e8                	jne    0x140033481
140033499:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14003349e:	48 8b c3             	mov    %rbx,%rax
1400334a1:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1400334a6:	48 83 c4 20          	add    $0x20,%rsp
1400334aa:	5f                   	pop    %rdi
1400334ab:	c3                   	ret
1400334ac:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1400334b1:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
1400334b6:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
1400334bb:	49 8d 58 ff          	lea    -0x1(%r8),%rbx
1400334bf:	4c 8b d1             	mov    %rcx,%r10
1400334c2:	48 d1 fb             	sar    $1,%rbx
1400334c5:	48 8b fa             	mov    %rdx,%rdi
1400334c8:	4c 8b da             	mov    %rdx,%r11
1400334cb:	48 3b d3             	cmp    %rbx,%rdx
1400334ce:	7d 2b                	jge    0x1400334fb
1400334d0:	4b 8d 0c 1b          	lea    (%r11,%r11,1),%rcx
1400334d4:	45 33 db             	xor    %r11d,%r11d
1400334d7:	41 8b 44 8a 04       	mov    0x4(%r10,%rcx,4),%eax
1400334dc:	41 39 44 8a 08       	cmp    %eax,0x8(%r10,%rcx,4)
1400334e1:	41 0f 9d c3          	setge  %r11b
1400334e5:	49 ff c3             	inc    %r11
1400334e8:	4c 03 d9             	add    %rcx,%r11
1400334eb:	43 8b 04 9a          	mov    (%r10,%r11,4),%eax
1400334ef:	41 89 04 92          	mov    %eax,(%r10,%rdx,4)
1400334f3:	49 8b d3             	mov    %r11,%rdx
1400334f6:	4c 3b db             	cmp    %rbx,%r11
1400334f9:	7c d5                	jl     0x1400334d0
1400334fb:	4c 3b db             	cmp    %rbx,%r11
1400334fe:	75 13                	jne    0x140033513
140033500:	41 f6 c0 01          	test   $0x1,%r8b
140033504:	75 0d                	jne    0x140033513
140033506:	43 8b 44 82 fc       	mov    -0x4(%r10,%r8,4),%eax
14003350b:	41 89 04 92          	mov    %eax,(%r10,%rdx,4)
14003350f:	49 8d 50 ff          	lea    -0x1(%r8),%rdx
140033513:	48 8d 42 ff          	lea    -0x1(%rdx),%rax
140033517:	eb 13                	jmp    0x14003352c
140033519:	41 8b 0c 82          	mov    (%r10,%rax,4),%ecx
14003351d:	41 3b 09             	cmp    (%r9),%ecx
140033520:	7d 12                	jge    0x140033534
140033522:	41 89 0c 92          	mov    %ecx,(%r10,%rdx,4)
140033526:	48 8b d0             	mov    %rax,%rdx
140033529:	48 ff c8             	dec    %rax
14003352c:	48 d1 f8             	sar    $1,%rax
14003352f:	48 3b fa             	cmp    %rdx,%rdi
140033532:	7c e5                	jl     0x140033519
140033534:	41 8b 01             	mov    (%r9),%eax
140033537:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
14003353c:	48 8b 74 24 10       	mov    0x10(%rsp),%rsi
140033541:	48 8b 7c 24 18       	mov    0x18(%rsp),%rdi
140033546:	41 89 04 92          	mov    %eax,(%r10,%rdx,4)
14003354a:	c3                   	ret
14003354b:	90                   	nop
14003354c:	48 8b c4             	mov    %rsp,%rax
14003354f:	48 89 58 08          	mov    %rbx,0x8(%rax)
140033553:	48 89 68 10          	mov    %rbp,0x10(%rax)
140033557:	48 89 70 18          	mov    %rsi,0x18(%rax)
14003355b:	4c 89 48 20          	mov    %r9,0x20(%rax)
14003355f:	57                   	push   %rdi
140033560:	41 54                	push   %r12
140033562:	41 55                	push   %r13
140033564:	41 56                	push   %r14
140033566:	41 57                	push   %r15
140033568:	48 83 ec 20          	sub    $0x20,%rsp
14003356c:	4c 8b 7c 24 70       	mov    0x70(%rsp),%r15
140033571:	4d 8d 60 ff          	lea    -0x1(%r8),%r12
140033575:	4d 8b f4             	mov    %r12,%r14
140033578:	49 8b e8             	mov    %r8,%rbp
14003357b:	49 d1 fe             	sar    $1,%r14
14003357e:	48 8b da             	mov    %rdx,%rbx
140033581:	48 8b f1             	mov    %rcx,%rsi
140033584:	4c 8b ea             	mov    %rdx,%r13
140033587:	48 8b fa             	mov    %rdx,%rdi
14003358a:	49 3b d6             	cmp    %r14,%rdx
14003358d:	7d 56                	jge    0x1400335e5
14003358f:	49 8b 4f 38          	mov    0x38(%r15),%rcx
140033593:	48 03 ff             	add    %rdi,%rdi
140033596:	48 85 c9             	test   %rcx,%rcx
140033599:	0f 84 e8 00 00 00    	je     0x140033687
14003359f:	48 8b 01             	mov    (%rcx),%rax
1400335a2:	48 8d 57 02          	lea    0x2(%rdi),%rdx
1400335a6:	48 c1 e2 04          	shl    $0x4,%rdx
1400335aa:	48 03 d6             	add    %rsi,%rdx
1400335ad:	48 8b 40 10          	mov    0x10(%rax),%rax
1400335b1:	4c 8d 42 f0          	lea    -0x10(%rdx),%r8
1400335b5:	ff 15 7d 96 ad 00    	call   *0xad967d(%rip)        # 0x140b0cc38
1400335bb:	f6 d8                	neg    %al
1400335bd:	48 1b c9             	sbb    %rcx,%rcx
1400335c0:	48 03 db             	add    %rbx,%rbx
1400335c3:	48 83 c1 02          	add    $0x2,%rcx
1400335c7:	48 03 f9             	add    %rcx,%rdi
1400335ca:	48 8b d7             	mov    %rdi,%rdx
1400335cd:	48 c1 e2 04          	shl    $0x4,%rdx
1400335d1:	48 8d 0c de          	lea    (%rsi,%rbx,8),%rcx
1400335d5:	48 03 d6             	add    %rsi,%rdx
1400335d8:	e8 07 2d fd ff       	call   0x1400062e4
1400335dd:	48 8b df             	mov    %rdi,%rbx
1400335e0:	49 3b fe             	cmp    %r14,%rdi
1400335e3:	7c aa                	jl     0x14003358f
1400335e5:	49 3b fe             	cmp    %r14,%rdi
1400335e8:	75 20                	jne    0x14003360a
1400335ea:	40 f6 c5 01          	test   $0x1,%bpl
1400335ee:	75 1a                	jne    0x14003360a
1400335f0:	48 03 db             	add    %rbx,%rbx
1400335f3:	48 c1 e5 04          	shl    $0x4,%rbp
1400335f7:	48 8d 56 f0          	lea    -0x10(%rsi),%rdx
1400335fb:	48 03 d5             	add    %rbp,%rdx
1400335fe:	48 8d 0c de          	lea    (%rsi,%rbx,8),%rcx
140033602:	e8 dd 2c fd ff       	call   0x1400062e4
140033607:	49 8b dc             	mov    %r12,%rbx
14003360a:	4c 8b 74 24 68       	mov    0x68(%rsp),%r14
14003360f:	48 8d 7b ff          	lea    -0x1(%rbx),%rdi
140033613:	eb 3f                	jmp    0x140033654
140033615:	49 8b 4f 38          	mov    0x38(%r15),%rcx
140033619:	48 85 c9             	test   %rcx,%rcx
14003361c:	74 69                	je     0x140033687
14003361e:	48 8b 01             	mov    (%rcx),%rax
140033621:	48 8b ef             	mov    %rdi,%rbp
140033624:	48 c1 e5 04          	shl    $0x4,%rbp
140033628:	4d 8b c6             	mov    %r14,%r8
14003362b:	48 03 ee             	add    %rsi,%rbp
14003362e:	48 8b d5             	mov    %rbp,%rdx
140033631:	48 8b 40 10          	mov    0x10(%rax),%rax
140033635:	ff 15 fd 95 ad 00    	call   *0xad95fd(%rip)        # 0x140b0cc38
14003363b:	84 c0                	test   %al,%al
14003363d:	74 1d                	je     0x14003365c
14003363f:	48 03 db             	add    %rbx,%rbx
140033642:	48 8b d5             	mov    %rbp,%rdx
140033645:	48 8d 0c de          	lea    (%rsi,%rbx,8),%rcx
140033649:	e8 96 2c fd ff       	call   0x1400062e4
14003364e:	48 8b df             	mov    %rdi,%rbx
140033651:	48 ff cf             	dec    %rdi
140033654:	48 d1 ff             	sar    $1,%rdi
140033657:	4c 3b eb             	cmp    %rbx,%r13
14003365a:	7c b9                	jl     0x140033615
14003365c:	48 03 db             	add    %rbx,%rbx
14003365f:	49 8b d6             	mov    %r14,%rdx
140033662:	48 8d 0c de          	lea    (%rsi,%rbx,8),%rcx
140033666:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14003366b:	48 8b 6c 24 58       	mov    0x58(%rsp),%rbp
140033670:	48 8b 74 24 60       	mov    0x60(%rsp),%rsi
140033675:	48 83 c4 20          	add    $0x20,%rsp
140033679:	41 5f                	pop    %r15
14003367b:	41 5e                	pop    %r14
14003367d:	41 5d                	pop    %r13
14003367f:	41 5c                	pop    %r12
140033681:	5f                   	pop    %rdi
140033682:	e9 5d 2c fd ff       	jmp    0x1400062e4
140033687:	ff 15 2b 8e ad 00    	call   *0xad8e2b(%rip)        # 0x140b0c4b8
14003368d:	cc                   	int3
14003368e:	90                   	nop
14003368f:	90                   	nop
140033690:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140033695:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14003369a:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14003369f:	57                   	push   %rdi
1400336a0:	41 56                	push   %r14
1400336a2:	41 57                	push   %r15
1400336a4:	48 83 ec 20          	sub    $0x20,%rsp
1400336a8:	4c 8b f9             	mov    %rcx,%r15
1400336ab:	49 8b d9             	mov    %r9,%rbx
1400336ae:	49 8b 49 38          	mov    0x38(%r9),%rcx
1400336b2:	49 8b e8             	mov    %r8,%rbp
1400336b5:	48 8b f2             	mov    %rdx,%rsi
1400336b8:	48 85 c9             	test   %rcx,%rcx
1400336bb:	0f 84 c5 00 00 00    	je     0x140033786
1400336c1:	48 8b 01             	mov    (%rcx),%rax
1400336c4:	48 8d 7a 08          	lea    0x8(%rdx),%rdi
1400336c8:	4d 8b c7             	mov    %r15,%r8
1400336cb:	4d 8d 77 08          	lea    0x8(%r15),%r14
1400336cf:	48 8b 40 10          	mov    0x10(%rax),%rax
1400336d3:	ff 15 5f 95 ad 00    	call   *0xad955f(%rip)        # 0x140b0cc38
1400336d9:	84 c0                	test   %al,%al
1400336db:	74 18                	je     0x1400336f5
1400336dd:	49 8b 07             	mov    (%r15),%rax
1400336e0:	48 8b 0e             	mov    (%rsi),%rcx
1400336e3:	48 89 06             	mov    %rax,(%rsi)
1400336e6:	49 8b 06             	mov    (%r14),%rax
1400336e9:	49 89 0f             	mov    %rcx,(%r15)
1400336ec:	48 8b 0f             	mov    (%rdi),%rcx
1400336ef:	48 89 07             	mov    %rax,(%rdi)
1400336f2:	49 89 0e             	mov    %rcx,(%r14)
1400336f5:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
1400336f9:	48 85 c9             	test   %rcx,%rcx
1400336fc:	0f 84 84 00 00 00    	je     0x140033786
140033702:	48 8b 01             	mov    (%rcx),%rax
140033705:	4c 8b c6             	mov    %rsi,%r8
140033708:	48 8b d5             	mov    %rbp,%rdx
14003370b:	48 8b 40 10          	mov    0x10(%rax),%rax
14003370f:	ff 15 23 95 ad 00    	call   *0xad9523(%rip)        # 0x140b0cc38
140033715:	84 c0                	test   %al,%al
140033717:	74 54                	je     0x14003376d
140033719:	48 8b 06             	mov    (%rsi),%rax
14003371c:	48 8b 4d 00          	mov    0x0(%rbp),%rcx
140033720:	48 89 45 00          	mov    %rax,0x0(%rbp)
140033724:	48 8b 07             	mov    (%rdi),%rax
140033727:	48 89 0e             	mov    %rcx,(%rsi)
14003372a:	48 8b 4d 08          	mov    0x8(%rbp),%rcx
14003372e:	48 89 45 08          	mov    %rax,0x8(%rbp)
140033732:	48 89 0f             	mov    %rcx,(%rdi)
140033735:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
140033739:	48 85 c9             	test   %rcx,%rcx