1400585d2:	41 56                	push   %r14
1400585d4:	41 55                	push   %r13
1400585d6:	41 54                	push   %r12
1400585d8:	55                   	push   %rbp
1400585d9:	57                   	push   %rdi
1400585da:	56                   	push   %rsi
1400585db:	53                   	push   %rbx
1400585dc:	48 83 ec 68          	sub    $0x68,%rsp
1400585e0:	48 8b 3d 09 05 1e 00 	mov    0x1e0509(%rip),%rdi        # 0x140238af0
1400585e7:	8b 41 4c             	mov    0x4c(%rcx),%eax
1400585ea:	48 8b 1f             	mov    (%rdi),%rbx
1400585ed:	48 89 5c 24 58       	mov    %rbx,0x58(%rsp)
1400585f2:	8b 59 48             	mov    0x48(%rcx),%ebx
1400585f5:	49 89 ce             	mov    %rcx,%r14
1400585f8:	41 89 d9             	mov    %ebx,%r9d
1400585fb:	85 c0                	test   %eax,%eax
1400585fd:	0f 8e 0c 01 00 00    	jle    0x14005870f
140058603:	48 8d 44 24 54       	lea    0x54(%rsp),%rax
140058608:	48 8b 51 40          	mov    0x40(%rcx),%rdx
14005860c:	8b 71 30             	mov    0x30(%rcx),%esi
14005860f:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140058614:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
14005861b:	00 00 00 00
14005861f:	90                   	nop
140058620:	4d 63 d1             	movslq %r9d,%r10
140058623:	4d 8b 6e 38          	mov    0x38(%r14),%r13
140058627:	4d 8b 46 28          	mov    0x28(%r14),%r8
14005862b:	42 8b 44 d2 08       	mov    0x8(%rdx,%r10,8),%eax
140058630:	46 8b 5c d2 04       	mov    0x4(%rdx,%r10,8),%r11d
140058635:	49 8b 7e 20          	mov    0x20(%r14),%rdi
140058639:	44 8d 3c 30          	lea    (%rax,%rsi,1),%r15d
14005863d:	85 c0                	test   %eax,%eax
14005863f:	0f 8e f3 00 00 00    	jle    0x140058738
140058645:	44 89 5c 24 38       	mov    %r11d,0x38(%rsp)
14005864a:	31 db                	xor    %ebx,%ebx
14005864c:	48 63 ee             	movslq %esi,%rbp
14005864f:	45 89 dc             	mov    %r11d,%r12d
140058652:	44 89 4c 24 3c       	mov    %r9d,0x3c(%rsp)
140058657:	48 c1 e5 03          	shl    $0x3,%rbp
14005865b:	4c 89 54 24 48       	mov    %r10,0x48(%rsp)
140058660:	4c 89 74 24 40       	mov    %r14,0x40(%rsp)
140058665:	49 89 de             	mov    %rbx,%r14
140058668:	48 89 fb             	mov    %rdi,%rbx
14005866b:	4c 89 c7             	mov    %r8,%rdi
14005866e:	66 90                	xchg   %ax,%ax
140058670:	8b 4b 08             	mov    0x8(%rbx),%ecx
140058673:	44 89 e2             	mov    %r12d,%edx
140058676:	4c 8b 4c 24 30       	mov    0x30(%rsp),%r9
14005867b:	4c 89 74 24 20       	mov    %r14,0x20(%rsp)
140058680:	4d 8d 44 15 00       	lea    0x0(%r13,%rdx,1),%r8
140058685:	89 ca                	mov    %ecx,%edx
140058687:	48 89 f9             	mov    %rdi,%rcx
14005868a:	e8 71 fb ff ff       	call   0x140058200
14005868f:	81 78 34 00 40 00 00 	cmpl   $0x4000,0x34(%rax)
140058696:	49 89 c6             	mov    %rax,%r14
140058699:	75 07                	jne    0x1400586a2
14005869b:	c7 43 3c 01 00 00 00 	movl   $0x1,0x3c(%rbx)
1400586a2:	48 8b 13             	mov    (%rbx),%rdx
1400586a5:	48 89 d9             	mov    %rbx,%rcx
1400586a8:	83 c6 01             	add    $0x1,%esi
1400586ab:	4c 89 34 2a          	mov    %r14,(%rdx,%rbp,1)
1400586af:	4c 89 f2             	mov    %r14,%rdx
1400586b2:	48 83 c5 08          	add    $0x8,%rbp
1400586b6:	e8 25 a9 fd ff       	call   0x140032fe0
1400586bb:	44 03 64 24 54       	add    0x54(%rsp),%r12d
1400586c0:	44 39 fe             	cmp    %r15d,%esi
1400586c3:	7c ab                	jl     0x140058670
1400586c5:	4c 8b 74 24 40       	mov    0x40(%rsp),%r14
1400586ca:	4c 8b 54 24 48       	mov    0x48(%rsp),%r10
1400586cf:	44 8b 5c 24 38       	mov    0x38(%rsp),%r11d
1400586d4:	44 8b 4c 24 3c       	mov    0x3c(%rsp),%r9d
1400586d9:	49 8b 56 40          	mov    0x40(%r14),%rdx
1400586dd:	41 8b 5e 48          	mov    0x48(%r14),%ebx
1400586e1:	42 8b 74 d2 08       	mov    0x8(%rdx,%r10,8),%esi
1400586e6:	41 03 76 30          	add    0x30(%r14),%esi
1400586ea:	41 8b 46 50          	mov    0x50(%r14),%eax
1400586ee:	41 83 c1 01          	add    $0x1,%r9d
1400586f2:	41 89 76 30          	mov    %esi,0x30(%r14)
1400586f6:	44 29 d8             	sub    %r11d,%eax
1400586f9:	44 01 e0             	add    %r12d,%eax
1400586fc:	41 89 46 50          	mov    %eax,0x50(%r14)
140058700:	41 8b 46 4c          	mov    0x4c(%r14),%eax
140058704:	01 d8                	add    %ebx,%eax
140058706:	44 39 c8             	cmp    %r9d,%eax
140058709:	0f 8f 11 ff ff ff    	jg     0x140058620
14005870f:	48 8b 3d da 03 1e 00 	mov    0x1e03da(%rip),%rdi        # 0x140238af0
140058716:	48 8b 44 24 58       	mov    0x58(%rsp),%rax
14005871b:	48 2b 07             	sub    (%rdi),%rax
14005871e:	75 20                	jne    0x140058740
140058720:	31 c0                	xor    %eax,%eax
140058722:	48 83 c4 68          	add    $0x68,%rsp
140058726:	5b                   	pop    %rbx
140058727:	5e                   	pop    %rsi
140058728:	5f                   	pop    %rdi
140058729:	5d                   	pop    %rbp
14005872a:	41 5c                	pop    %r12
14005872c:	41 5d                	pop    %r13
14005872e:	41 5e                	pop    %r14
140058730:	41 5f                	pop    %r15
140058732:	c3                   	ret
140058733:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140058738:	44 89 fe             	mov    %r15d,%esi
14005873b:	45 89 dc             	mov    %r11d,%r12d
14005873e:	eb aa                	jmp    0x1400586ea
140058740:	e8 2b c1 18 00       	call   0x1401e4870
140058745:	90                   	nop
140058746:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
14005874d:	00 00 00
140058750:	57                   	push   %rdi
140058751:	56                   	push   %rsi
140058752:	53                   	push   %rbx
140058753:	48 83 ec 50          	sub    $0x50,%rsp
140058757:	48 8b 3d 92 03 1e 00 	mov    0x1e0392(%rip),%rdi        # 0x140238af0
14005875e:	48 8b 1f             	mov    (%rdi),%rbx
140058761:	48 89 5c 24 48       	mov    %rbx,0x48(%rsp)
140058766:	8b 59 38             	mov    0x38(%rcx),%ebx
140058769:	48 89 ce             	mov    %rcx,%rsi
14005876c:	81 e3 00 00 02 00    	and    $0x20000,%ebx
140058772:	0f 85 10 01 00 00    	jne    0x140058888
140058778:	44 8b 49 34          	mov    0x34(%rcx),%r9d
14005877c:	44 89 c8             	mov    %r9d,%eax
14005877f:	25 00 f0 00 00       	and    $0xf000,%eax
140058784:	3d 00 a0 00 00       	cmp    $0xa000,%eax
140058789:	0f 84 c1 00 00 00    	je     0x140058850
14005878f:	3d 00 e0 00 00       	cmp    $0xe000,%eax
140058794:	0f 84 86 00 00 00    	je     0x140058820
14005879a:	3d 00 80 00 00       	cmp    $0x8000,%eax
14005879f:	0f 85 ab 01 00 00    	jne    0x140058950
1400587a5:	0f b7 42 06          	movzwl 0x6(%rdx),%eax
1400587a9:	31 db                	xor    %ebx,%ebx
1400587ab:	89 c1                	mov    %eax,%ecx
1400587ad:	66 81 e1 00 f0       	and    $0xf000,%cx
1400587b2:	66 81 f9 00 80       	cmp    $0x8000,%cx
1400587b7:	48 8b 0d f2 0c 1e 00 	mov    0x1e0cf2(%rip),%rcx        # 0x1402394b0
1400587be:	0f 95 c3             	setne  %bl
1400587c1:	44 8b 01             	mov    (%rcx),%r8d
1400587c4:	c1 e3 06             	shl    $0x6,%ebx
1400587c7:	45 85 c0             	test   %r8d,%r8d
1400587ca:	0f 85 c0 00 00 00    	jne    0x140058890
1400587d0:	48 8d 4e 10          	lea    0x10(%rsi),%rcx
1400587d4:	e8 37 1d 04 00       	call   0x14009a510
1400587d9:	8b 56 30             	mov    0x30(%rsi),%edx
1400587dc:	09 d8                	or     %ebx,%eax
1400587de:	85 d2                	test   %edx,%edx
1400587e0:	75 57                	jne    0x140058839
1400587e2:	48 8b 15 17 0c 1e 00 	mov    0x1e0c17(%rip),%rdx        # 0x140239400
1400587e9:	48 8b 4e 50          	mov    0x50(%rsi),%rcx
1400587ed:	48 8b 12             	mov    (%rdx),%rdx
1400587f0:	48 8b 92 90 01 00 00 	mov    0x190(%rdx),%rdx
1400587f7:	4c 8b 82 80 00 00 00 	mov    0x80(%rdx),%r8
1400587fe:	48 8b 56 48          	mov    0x48(%rsi),%rdx
140058802:	49 33 48 08          	xor    0x8(%r8),%rcx
140058806:	49 33 10             	xor    (%r8),%rdx
140058809:	48 09 ca             	or     %rcx,%rdx
14005880c:	0f 84 96 00 00 00    	je     0x1400588a8
140058812:	83 c8 20             	or     $0x20,%eax
140058815:	eb 22                	jmp    0x140058839
140058817:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14005881e:	00 00
140058820:	0f b7 52 06          	movzwl 0x6(%rdx),%edx
140058824:	b8 40 00 00 00       	mov    $0x40,%eax
140058829:	66 81 e2 00 f0       	and    $0xf000,%dx
14005882e:	66 81 fa 00 40       	cmp    $0x4000,%dx
140058833:	0f 84 97 00 00 00    	je     0x1400588d0
140058839:	48 8b 54 24 48       	mov    0x48(%rsp),%rdx
14005883e:	48 2b 17             	sub    (%rdi),%rdx
140058841:	0f 85 04 01 00 00    	jne    0x14005894b
140058847:	48 83 c4 50          	add    $0x50,%rsp
14005884b:	5b                   	pop    %rbx
14005884c:	5e                   	pop    %rsi
14005884d:	5f                   	pop    %rdi
14005884e:	c3                   	ret
14005884f:	90                   	nop
140058850:	0f b7 42 06          	movzwl 0x6(%rdx),%eax
140058854:	66 25 00 f0          	and    $0xf000,%ax
140058858:	66 3d 00 a0          	cmp    $0xa000,%ax
14005885c:	0f 84 6e ff ff ff    	je     0x1400587d0
140058862:	48 8b 0d 27 08 1e 00 	mov    0x1e0827(%rip),%rcx        # 0x140239090
140058869:	8b 09                	mov    (%rcx),%ecx
14005886b:	85 c9                	test   %ecx,%ecx
14005886d:	0f 95 c3             	setne  %bl
140058870:	66 3d 00 80          	cmp    $0x8000,%ax
140058874:	0f 95 c0             	setne  %al
140058877:	09 c3                	or     %eax,%ebx
140058879:	0f b6 db             	movzbl %bl,%ebx
14005887c:	c1 e3 06             	shl    $0x6,%ebx
14005887f:	e9 4c ff ff ff       	jmp    0x1400587d0
140058884:	0f 1f 40 00          	nopl   0x0(%rax)
140058888:	b8 68 00 00 00       	mov    $0x68,%eax
14005888d:	eb aa                	jmp    0x140058839
14005888f:	90                   	nop
140058890:	41 31 c1             	xor    %eax,%r9d
140058893:	89 d8                	mov    %ebx,%eax
140058895:	83 c8 08             	or     $0x8,%eax
140058898:	41 83 e1 40          	and    $0x40,%r9d
14005889c:	0f 45 d8             	cmovne %eax,%ebx
14005889f:	e9 2c ff ff ff       	jmp    0x1400587d0
1400588a4:	0f 1f 40 00          	nopl   0x0(%rax)
1400588a8:	48 8b 56 58          	mov    0x58(%rsi),%rdx
1400588ac:	48 8b 4e 60          	mov    0x60(%rsi),%rcx
1400588b0:	49 33 50 10          	xor    0x10(%r8),%rdx
1400588b4:	49 33 48 18          	xor    0x18(%r8),%rcx
1400588b8:	48 09 ca             	or     %rcx,%rdx
1400588bb:	0f 85 51 ff ff ff    	jne    0x140058812
1400588c1:	e9 73 ff ff ff       	jmp    0x140058839
1400588c6:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
1400588cd:	00 00 00
1400588d0:	48 8b 05 29 0b 1e 00 	mov    0x1e0b29(%rip),%rax        # 0x140239400
1400588d7:	48 8d 51 6c          	lea    0x6c(%rcx),%rdx
1400588db:	4c 8d 4c 24 20       	lea    0x20(%rsp),%r9
1400588e0:	4c 8d 05 56 82 1a 00 	lea    0x1a8256(%rip),%r8        # 0x140200b3d
1400588e7:	48 8b 08             	mov    (%rax),%rcx
1400588ea:	e8 01 ce 00 00       	call   0x1400656f0
1400588ef:	85 c0                	test   %eax,%eax
1400588f1:	78 2d                	js     0x140058920
1400588f3:	48 8b 44 24 20       	mov    0x20(%rsp),%rax
1400588f8:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
1400588fd:	48 33 46 48          	xor    0x48(%rsi),%rax
140058901:	48 33 56 50          	xor    0x50(%rsi),%rdx
140058905:	48 09 d0             	or     %rdx,%rax
140058908:	74 26                	je     0x140058930
14005890a:	b8 01 00 00 00       	mov    $0x1,%eax
14005890f:	c1 e0 05             	shl    $0x5,%eax
140058912:	e9 22 ff ff ff       	jmp    0x140058839
140058917:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14005891e:	00 00
140058920:	31 c0                	xor    %eax,%eax
140058922:	e9 12 ff ff ff       	jmp    0x140058839
140058927:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14005892e:	00 00
140058930:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
140058935:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
14005893a:	48 33 46 58          	xor    0x58(%rsi),%rax
14005893e:	48 33 56 60          	xor    0x60(%rsi),%rdx
140058942:	48 09 d0             	or     %rdx,%rax
140058945:	75 c3                	jne    0x14005890a
140058947:	31 c0                	xor    %eax,%eax
140058949:	eb c4                	jmp    0x14005890f
14005894b:	e8 20 bf 18 00       	call   0x1401e4870
140058950:	4c 8d 05 6b 82 1a 00 	lea    0x1a826b(%rip),%r8        # 0x140200bc2
140058957:	ba 52 01 00 00       	mov    $0x152,%edx
14005895c:	48 8d 0d 77 82 1a 00 	lea    0x1a8277(%rip),%rcx        # 0x140200bda
140058963:	e8 28 ae 06 00       	call   0x1400c3790
140058968:	90                   	nop
140058969:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140058970:	41 57                	push   %r15
140058972:	41 56                	push   %r14
140058974:	41 55                	push   %r13
140058976:	41 54                	push   %r12
140058978:	55                   	push   %rbp
140058979:	57                   	push   %rdi
14005897a:	56                   	push   %rsi
14005897b:	53                   	push   %rbx
14005897c:	48 83 ec 28          	sub    $0x28,%rsp
140058980:	4c 8b 3d 79 0a 1e 00 	mov    0x1e0a79(%rip),%r15        # 0x140239400
140058987:	49 8b 17             	mov    (%r15),%rdx
14005898a:	8b 41 38             	mov    0x38(%rcx),%eax
14005898d:	48 89 c6             	mov    %rax,%rsi
140058990:	49 89 cd             	mov    %rcx,%r13
140058993:	48 8b 8a 90 01 00 00 	mov    0x190(%rdx),%rcx
14005899a:	48 c7 c2 f8 ff ff ff 	mov    $0xfffffffffffffff8,%rdx
1400589a1:	4d 8b 4d 30          	mov    0x30(%r13),%r9
1400589a5:	48 2b 51 10          	sub    0x10(%rcx),%rdx
1400589a9:	4c 01 ca             	add    %r9,%rdx
1400589ac:	48 39 c2             	cmp    %rax,%rdx
1400589af:	0f 82 db 01 00 00    	jb     0x140058b90
1400589b5:	48 8b 3d 24 06 1e 00 	mov    0x1e0624(%rip),%rdi        # 0x140238fe0
1400589bc:	48 8d 2d 5b 82 1a 00 	lea    0x1a825b(%rip),%rbp        # 0x140200c1e
1400589c3:	eb 63                	jmp    0x140058a28
1400589c5:	0f 1f 00             	nopl   (%rax)
1400589c8:	3d 54 4f 45 49       	cmp    $0x49454f54,%eax
1400589cd:	74 31                	je     0x140058a00
1400589cf:	0f 8f e3 00 00 00    	jg     0x140058ab8
1400589d5:	3d 45 49 4f 45       	cmp    $0x454f4945,%eax
1400589da:	74 24                	je     0x140058a00
1400589dc:	3d 4e 4d 53 46       	cmp    $0x46534d4e,%eax
1400589e1:	0f 85 f1 00 00 00    	jne    0x140058ad8
1400589e7:	48 89 ca             	mov    %rcx,%rdx
1400589ea:	41 89 d8             	mov    %ebx,%r8d
1400589ed:	4c 89 f1             	mov    %r14,%rcx
1400589f0:	e8 3b 35 fd ff       	call   0x14002bf30
1400589f5:	4d 8b 4d 30          	mov    0x30(%r13),%r9
1400589f9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140058a00:	49 8b 17             	mov    (%r15),%rdx
140058a03:	4c 89 c9             	mov    %r9,%rcx
140058a06:	8d 44 1e 08          	lea    0x8(%rsi,%rbx,1),%eax
140058a0a:	48 89 c6             	mov    %rax,%rsi
140058a0d:	48 8b 92 90 01 00 00 	mov    0x190(%rdx),%rdx
140058a14:	48 2b 4a 10          	sub    0x10(%rdx),%rcx
140058a18:	48 89 ca             	mov    %rcx,%rdx
140058a1b:	48 83 ea 08          	sub    $0x8,%rdx
140058a1f:	48 39 c2             	cmp    %rax,%rdx
140058a22:	0f 82 68 01 00 00    	jb     0x140058b90
140058a28:	4d 8b 45 28          	mov    0x28(%r13),%r8
140058a2c:	4d 8b 75 20          	mov    0x20(%r13),%r14
140058a30:	4d 8d 24 00          	lea    (%r8,%rax,1),%r12
140058a34:	41 8b 5c 00 04       	mov    0x4(%r8,%rax,1),%ebx
140058a39:	49 8d 4c 00 08       	lea    0x8(%r8,%rax,1),%rcx
140058a3e:	41 0f b6 14 24       	movzbl (%r12),%edx
140058a43:	41 0f be 44 24 01    	movsbl 0x1(%r12),%eax
140058a49:	0f cb                	bswap  %ebx
140058a4b:	41 89 d2             	mov    %edx,%r10d
140058a4e:	c1 e0 10             	shl    $0x10,%eax
140058a51:	41 c1 e2 18          	shl    $0x18,%r10d
140058a55:	44 09 d0             	or     %r10d,%eax
140058a58:	45 0f be 54 24 03    	movsbl 0x3(%r12),%r10d
140058a5e:	44 09 d0             	or     %r10d,%eax
140058a61:	45 0f be 54 24 02    	movsbl 0x2(%r12),%r10d
140058a67:	41 c1 e2 08          	shl    $0x8,%r10d
140058a6b:	44 09 d0             	or     %r10d,%eax
140058a6e:	3d 45 45 52 54       	cmp    $0x54524545,%eax
140058a73:	0f 84 a7 00 00 00    	je     0x140058b20
140058a79:	0f 8e 49 ff ff ff    	jle    0x1400589c8
140058a7f:	3d 6b 6e 69 6c       	cmp    $0x6c696e6b,%eax
140058a84:	0f 84 be 00 00 00    	je     0x140058b48
140058a8a:	3d 72 69 64 73       	cmp    $0x73646972,%eax
140058a8f:	0f 84 a3 00 00 00    	je     0x140058b38
140058a95:	3d 52 54 4e 55       	cmp    $0x554e5452,%eax
140058a9a:	75 3c                	jne    0x140058ad8
140058a9c:	89 da                	mov    %ebx,%edx
140058a9e:	e8 1d ff fc ff       	call   0x1400289c0
140058aa3:	49 89 86 c8 00 00 00 	mov    %rax,0xc8(%r14)
140058aaa:	4d 8b 4d 30          	mov    0x30(%r13),%r9
140058aae:	e9 4d ff ff ff       	jmp    0x140058a00
140058ab3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140058ab8:	3d 43 55 45 52       	cmp    $0x52455543,%eax
140058abd:	75 19                	jne    0x140058ad8
140058abf:	89 da                	mov    %ebx,%edx
140058ac1:	e8 fa 8f 02 00       	call   0x140081ac0
140058ac6:	4d 8b 4d 30          	mov    0x30(%r13),%r9
140058aca:	49 89 46 18          	mov    %rax,0x18(%r14)
140058ace:	e9 2d ff ff ff       	jmp    0x140058a00
140058ad3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140058ad8:	83 ea 41             	sub    $0x41,%edx
140058adb:	8b 07                	mov    (%rdi),%eax
140058add:	49 89 fe             	mov    %rdi,%r14
140058ae0:	80 fa 19             	cmp    $0x19,%dl
140058ae3:	0f 87 ba 00 00 00    	ja     0x140058ba3
140058ae9:	49 89 ee             	mov    %rbp,%r14
140058aec:	85 c0                	test   %eax,%eax
140058aee:	74 0b                	je     0x140058afb
140058af0:	48 89 e9             	mov    %rbp,%rcx
140058af3:	e8 70 a8 18 00       	call   0x1401e3368
140058af8:	49 89 c6             	mov    %rax,%r14
140058afb:	b9 02 00 00 00       	mov    $0x2,%ecx
140058b00:	ff 15 1a be 19 00    	call   *0x19be1a(%rip)        # 0x1401f4920
140058b06:	4d 89 e0             	mov    %r12,%r8
140058b09:	4c 89 f2             	mov    %r14,%rdx
140058b0c:	48 89 c1             	mov    %rax,%rcx
140058b0f:	e8 6c 50 04 00       	call   0x14009db80