1800da96d:	48 8d 05 14 b6 f5 ff 	lea    -0xa49ec(%rip),%rax        # 0x180035f88
1800da974:	48 89 45 47          	mov    %rax,0x47(%rbp)
1800da978:	e8 07 35 04 00       	call   0x18011de84
1800da97d:	8b d8                	mov    %eax,%ebx
1800da97f:	85 c0                	test   %eax,%eax
1800da981:	78 70                	js     0x1800da9f3
1800da983:	48 8b 5f 08          	mov    0x8(%rdi),%rbx
1800da987:	48 8b cb             	mov    %rbx,%rcx
1800da98a:	e8 45 03 05 00       	call   0x18012acd4
1800da98f:	33 c9                	xor    %ecx,%ecx
1800da991:	48 8d 15 29 b7 0b 00 	lea    0xbb729(%rip),%rdx        # 0x1801960c1
1800da998:	44 8a 03             	mov    (%rbx),%r8b
1800da99b:	48 ff c3             	inc    %rbx
1800da99e:	41 8d 40 d3          	lea    -0x2d(%r8),%eax
1800da9a2:	3c 2d                	cmp    $0x2d,%al
1800da9a4:	77 1d                	ja     0x1800da9c3
1800da9a6:	49 b9 f9 1f f0 ff ff 	movabs $0x3ffffff01ff9,%r9
1800da9ad:	3f 00 00
1800da9b0:	49 0f a3 c1          	bt     %rax,%r9
1800da9b4:	73 0d                	jae    0x1800da9c3
1800da9b6:	44 88 02             	mov    %r8b,(%rdx)
1800da9b9:	ff c1                	inc    %ecx
1800da9bb:	48 ff c2             	inc    %rdx
1800da9be:	83 f9 18             	cmp    $0x18,%ecx
1800da9c1:	72 d5                	jb     0x1800da998
1800da9c3:	33 db                	xor    %ebx,%ebx
1800da9c5:	89 0d 11 b7 0b 00    	mov    %ecx,0xbb711(%rip)        # 0x1801960dc
1800da9cb:	38 1d a7 b6 0b 00    	cmp    %bl,0xbb6a7(%rip)        # 0x180196078
1800da9d1:	75 20                	jne    0x1800da9f3
1800da9d3:	48 8b 05 8e ae 0b 00 	mov    0xbae8e(%rip),%rax        # 0x180195868
1800da9da:	33 c9                	xor    %ecx,%ecx
1800da9dc:	ff d0                	call   *%rax
1800da9de:	0f 1f 00             	nopl   (%rax)
1800da9e1:	84 c0                	test   %al,%al
1800da9e3:	75 07                	jne    0x1800da9ec
1800da9e5:	bb 01 00 00 c0       	mov    $0xc0000001,%ebx
1800da9ea:	eb 07                	jmp    0x1800da9f3
1800da9ec:	c6 05 85 b6 0b 00 01 	movb   $0x1,0xbb685(%rip)        # 0x180196078
1800da9f3:	48 8b 4f 08          	mov    0x8(%rdi),%rcx
1800da9f7:	48 85 c9             	test   %rcx,%rcx
1800da9fa:	74 05                	je     0x1800daa01
1800da9fc:	e8 fb f5 fb ff       	call   0x180099ffc
1800daa01:	4c 8d 9c 24 d0 00 00 	lea    0xd0(%rsp),%r11
1800daa08:	00
1800daa09:	8b c3                	mov    %ebx,%eax
1800daa0b:	49 8b 5b 10          	mov    0x10(%r11),%rbx
1800daa0f:	49 8b 7b 18          	mov    0x18(%r11),%rdi
1800daa13:	49 8b e3             	mov    %r11,%rsp
1800daa16:	5d                   	pop    %rbp
1800daa17:	c3                   	ret
1800daa18:	cc                   	int3
1800daa19:	cc                   	int3
1800daa1a:	cc                   	int3
1800daa1b:	cc                   	int3
1800daa1c:	4c 8b dc             	mov    %rsp,%r11
1800daa1f:	49 89 5b 20          	mov    %rbx,0x20(%r11)
1800daa23:	55                   	push   %rbp
1800daa24:	56                   	push   %rsi
1800daa25:	57                   	push   %rdi
1800daa26:	41 54                	push   %r12
1800daa28:	41 55                	push   %r13
1800daa2a:	41 56                	push   %r14
1800daa2c:	41 57                	push   %r15
1800daa2e:	48 83 ec 30          	sub    $0x30,%rsp
1800daa32:	33 c0                	xor    %eax,%eax
1800daa34:	49 89 4b b8          	mov    %rcx,-0x48(%r11)
1800daa38:	48 8b fa             	mov    %rdx,%rdi
1800daa3b:	66 41 89 43 18       	mov    %ax,0x18(%r11)
1800daa40:	bd 00 10 00 00       	mov    $0x1000,%ebp
1800daa45:	49 8d 73 18          	lea    0x18(%r11),%rsi
1800daa49:	44 3b c5             	cmp    %ebp,%r8d
1800daa4c:	49 8d 5b 08          	lea    0x8(%r11),%rbx
1800daa50:	4c 8b f1             	mov    %rcx,%r14
1800daa53:	4d 8d 7b b8          	lea    -0x48(%r11),%r15
1800daa57:	41 0f 46 e8          	cmovbe %r8d,%ebp
1800daa5b:	4d 8d 63 08          	lea    0x8(%r11),%r12
1800daa5f:	8d 55 ff             	lea    -0x1(%rbp),%edx
1800daa62:	48 03 d1             	add    %rcx,%rdx
1800daa65:	49 89 53 c0          	mov    %rdx,-0x40(%r11)
1800daa69:	48 33 d1             	xor    %rcx,%rdx
1800daa6c:	48 81 e2 00 f0 ff ff 	and    $0xfffffffffffff000,%rdx
1800daa73:	48 f7 da             	neg    %rdx
1800daa76:	48 1b c0             	sbb    %rax,%rax
1800daa79:	48 f7 d8             	neg    %rax
1800daa7c:	48 ff c0             	inc    %rax
1800daa7f:	48 89 44 24 78       	mov    %rax,0x78(%rsp)
1800daa84:	4c 8b e8             	mov    %rax,%r13
1800daa87:	49 8b 0f             	mov    (%r15),%rcx
1800daa8a:	49 8b d4             	mov    %r12,%rdx
1800daa8d:	e8 3e 01 00 00       	call   0x1800dabd0
1800daa92:	48 85 c0             	test   %rax,%rax
1800daa95:	74 18                	je     0x1800daaaf
1800daa97:	f6 03 01             	testb  $0x1,(%rbx)
1800daa9a:	75 13                	jne    0x1800daaaf
1800daa9c:	49 8b 0f             	mov    (%r15),%rcx
1800daa9f:	ba 01 00 00 00       	mov    $0x1,%edx
1800daaa4:	44 8b c2             	mov    %edx,%r8d
1800daaa7:	c6 06 01             	movb   $0x1,(%rsi)
1800daaaa:	e8 ed 00 fc ff       	call   0x18009ab9c
1800daaaf:	49 83 c4 04          	add    $0x4,%r12
1800daab3:	49 83 c7 08          	add    $0x8,%r15
1800daab7:	48 83 c3 04          	add    $0x4,%rbx
1800daabb:	48 ff c6             	inc    %rsi
1800daabe:	49 83 ed 01          	sub    $0x1,%r13
1800daac2:	75 c3                	jne    0x1800daa87
1800daac4:	41 83 cd ff          	or     $0xffffffff,%r13d
1800daac8:	8b f5                	mov    %ebp,%esi
1800daaca:	45 33 e4             	xor    %r12d,%r12d
1800daacd:	40 f6 c7 03          	test   $0x3,%dil
1800daad1:	74 66                	je     0x1800dab39
1800daad3:	85 f6                	test   %esi,%esi
1800daad5:	74 62                	je     0x1800dab39
1800daad7:	33 d2                	xor    %edx,%edx
1800daad9:	49 8b ce             	mov    %r14,%rcx
1800daadc:	e8 ef 00 00 00       	call   0x1800dabd0
1800daae1:	33 d2                	xor    %edx,%edx
1800daae3:	48 8b cf             	mov    %rdi,%rcx
1800daae6:	48 8b d8             	mov    %rax,%rbx
1800daae9:	e8 e2 00 00 00       	call   0x1800dabd0
1800daaee:	48 85 db             	test   %rbx,%rbx
1800daaf1:	74 46                	je     0x1800dab39
1800daaf3:	48 85 c0             	test   %rax,%rax
1800daaf6:	74 41                	je     0x1800dab39
1800daaf8:	8a 07                	mov    (%rdi),%al
1800daafa:	48 ff c7             	inc    %rdi
1800daafd:	41 88 06             	mov    %al,(%r14)
1800dab00:	49 ff c6             	inc    %r14
1800dab03:	41 03 f5             	add    %r13d,%esi
1800dab06:	eb c5                	jmp    0x1800daacd
1800dab08:	33 d2                	xor    %edx,%edx
1800dab0a:	49 8b ce             	mov    %r14,%rcx
1800dab0d:	e8 be 00 00 00       	call   0x1800dabd0
1800dab12:	33 d2                	xor    %edx,%edx
1800dab14:	48 8b cf             	mov    %rdi,%rcx
1800dab17:	48 8b d8             	mov    %rax,%rbx
1800dab1a:	e8 b1 00 00 00       	call   0x1800dabd0
1800dab1f:	48 85 db             	test   %rbx,%rbx
1800dab22:	74 1a                	je     0x1800dab3e
1800dab24:	48 85 c0             	test   %rax,%rax
1800dab27:	74 15                	je     0x1800dab3e
1800dab29:	8b 07                	mov    (%rdi),%eax
1800dab2b:	48 83 c7 04          	add    $0x4,%rdi
1800dab2f:	41 89 06             	mov    %eax,(%r14)
1800dab32:	49 83 c6 04          	add    $0x4,%r14
1800dab36:	83 c6 fc             	add    $0xfffffffc,%esi
1800dab39:	83 fe 03             	cmp    $0x3,%esi
1800dab3c:	77 ca                	ja     0x1800dab08
1800dab3e:	85 f6                	test   %esi,%esi
1800dab40:	74 35                	je     0x1800dab77
1800dab42:	4c 2b f7             	sub    %rdi,%r14
1800dab45:	4d 8d 3c 3e          	lea    (%r14,%rdi,1),%r15
1800dab49:	33 d2                	xor    %edx,%edx
1800dab4b:	49 8b cf             	mov    %r15,%rcx
1800dab4e:	e8 7d 00 00 00       	call   0x1800dabd0
1800dab53:	33 d2                	xor    %edx,%edx
1800dab55:	48 8b cf             	mov    %rdi,%rcx
1800dab58:	48 8b d8             	mov    %rax,%rbx
1800dab5b:	e8 70 00 00 00       	call   0x1800dabd0
1800dab60:	48 85 db             	test   %rbx,%rbx
1800dab63:	74 12                	je     0x1800dab77
1800dab65:	48 85 c0             	test   %rax,%rax
1800dab68:	74 0d                	je     0x1800dab77
1800dab6a:	8a 07                	mov    (%rdi),%al
1800dab6c:	48 ff c7             	inc    %rdi
1800dab6f:	41 88 07             	mov    %al,(%r15)
1800dab72:	41 03 f5             	add    %r13d,%esi
1800dab75:	75 ce                	jne    0x1800dab45
1800dab77:	4c 8b 7c 24 78       	mov    0x78(%rsp),%r15
1800dab7c:	48 8d 9c 24 80 00 00 	lea    0x80(%rsp),%rbx
1800dab83:	00
1800dab84:	48 8d 7c 24 20       	lea    0x20(%rsp),%rdi
1800dab89:	4c 8d 74 24 70       	lea    0x70(%rsp),%r14
1800dab8e:	44 38 23             	cmp    %r12b,(%rbx)
1800dab91:	74 0e                	je     0x1800daba1
1800dab93:	41 8b 16             	mov    (%r14),%edx
1800dab96:	45 33 c0             	xor    %r8d,%r8d
1800dab99:	48 8b 0f             	mov    (%rdi),%rcx
1800dab9c:	e8 fb ff fb ff       	call   0x18009ab9c
1800daba1:	48 ff c3             	inc    %rbx
1800daba4:	49 83 c6 04          	add    $0x4,%r14
1800daba8:	48 83 c7 08          	add    $0x8,%rdi
1800dabac:	49 83 ef 01          	sub    $0x1,%r15
1800dabb0:	75 dc                	jne    0x1800dab8e
1800dabb2:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
1800dabb9:	00
1800dabba:	2b ee                	sub    %esi,%ebp
1800dabbc:	8b c5                	mov    %ebp,%eax
1800dabbe:	48 83 c4 30          	add    $0x30,%rsp
1800dabc2:	41 5f                	pop    %r15
1800dabc4:	41 5e                	pop    %r14
1800dabc6:	41 5d                	pop    %r13
1800dabc8:	41 5c                	pop    %r12
1800dabca:	5f                   	pop    %rdi
1800dabcb:	5e                   	pop    %rsi
1800dabcc:	5d                   	pop    %rbp
1800dabcd:	c3                   	ret
1800dabce:	cc                   	int3
1800dabcf:	cc                   	int3
1800dabd0:	48 83 ec 28          	sub    $0x28,%rsp
1800dabd4:	48 8b c1             	mov    %rcx,%rax
1800dabd7:	4c 8b d1             	mov    %rcx,%r10
1800dabda:	48 b9 00 00 00 00 00 	movabs $0xffff800000000000,%rcx
1800dabe1:	80 ff ff
1800dabe4:	4c 8b ca             	mov    %rdx,%r9
1800dabe7:	48 23 c1             	and    %rcx,%rax
1800dabea:	48 b9 00 00 00 00 00 	movabs $0x800000000000,%rcx
1800dabf1:	80 00 00
1800dabf4:	48 03 c1             	add    %rcx,%rax
1800dabf7:	48 b9 ff ff ff ff ff 	movabs $0xffff7fffffffffff,%rcx
1800dabfe:	7f ff ff
1800dac01:	48 85 c1             	test   %rax,%rcx
1800dac04:	74 04                	je     0x1800dac0a
1800dac06:	33 c0                	xor    %eax,%eax
1800dac08:	eb 5a                	jmp    0x1800dac64
1800dac0a:	8b 05 d4 f9 0b 00    	mov    0xbf9d4(%rip),%eax        # 0x18019a5e4
1800dac10:	33 c9                	xor    %ecx,%ecx
1800dac12:	83 f8 03             	cmp    $0x3,%eax
1800dac15:	75 53                	jne    0x1800dac6a
1800dac17:	44 8b c1             	mov    %ecx,%r8d
1800dac1a:	48 8d 15 6f 4b 09 00 	lea    0x94b6f(%rip),%rdx        # 0x18016f790
1800dac21:	38 4a f9             	cmp    %cl,-0x7(%rdx)
1800dac24:	74 10                	je     0x1800dac36
1800dac26:	4c 3b 12             	cmp    (%rdx),%r10
1800dac29:	72 0b                	jb     0x1800dac36
1800dac2b:	8b 42 08             	mov    0x8(%rdx),%eax
1800dac2e:	48 03 02             	add    (%rdx),%rax
1800dac31:	4c 3b d0             	cmp    %rax,%r10
1800dac34:	72 67                	jb     0x1800dac9d
1800dac36:	41 ff c0             	inc    %r8d
1800dac39:	48 83 c2 18          	add    $0x18,%rdx
1800dac3d:	41 83 f8 06          	cmp    $0x6,%r8d
1800dac41:	72 de                	jb     0x1800dac21
1800dac43:	4d 85 d2             	test   %r10,%r10
1800dac46:	74 12                	je     0x1800dac5a
1800dac48:	45 33 c0             	xor    %r8d,%r8d
1800dac4b:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1800dac50:	49 8b ca             	mov    %r10,%rcx
1800dac53:	e8 34 29 fc ff       	call   0x18009d58c
1800dac58:	8a c8                	mov    %al,%cl
1800dac5a:	f6 d9                	neg    %cl
1800dac5c:	48 1b c0             	sbb    %rax,%rax
1800dac5f:	48 23 44 24 30       	and    0x30(%rsp),%rax
1800dac64:	48 83 c4 28          	add    $0x28,%rsp
1800dac68:	c3                   	ret
1800dac69:	cc                   	int3
1800dac6a:	83 f8 02             	cmp    $0x2,%eax
1800dac6d:	75 d4                	jne    0x1800dac43
1800dac6f:	44 8b c1             	mov    %ecx,%r8d
1800dac72:	48 8d 15 27 b2 0b 00 	lea    0xbb227(%rip),%rdx        # 0x180195ea0
1800dac79:	38 4a f9             	cmp    %cl,-0x7(%rdx)
1800dac7c:	74 10                	je     0x1800dac8e
1800dac7e:	4c 3b 12             	cmp    (%rdx),%r10
1800dac81:	72 0b                	jb     0x1800dac8e
1800dac83:	8b 42 08             	mov    0x8(%rdx),%eax
1800dac86:	48 03 02             	add    (%rdx),%rax
1800dac89:	4c 3b d0             	cmp    %rax,%r10
1800dac8c:	72 0f                	jb     0x1800dac9d
1800dac8e:	41 ff c0             	inc    %r8d
1800dac91:	48 83 c2 18          	add    $0x18,%rdx
1800dac95:	41 83 f8 06          	cmp    $0x6,%r8d
1800dac99:	73 a8                	jae    0x1800dac43
1800dac9b:	eb dc                	jmp    0x1800dac79
1800dac9d:	4d 85 c9             	test   %r9,%r9
1800daca0:	74 07                	je     0x1800daca9
1800daca2:	41 c7 01 01 00 00 00 	movl   $0x1,(%r9)
1800daca9:	49 8b c2             	mov    %r10,%rax
1800dacac:	eb b6                	jmp    0x1800dac64
1800dacae:	cc                   	int3
1800dacaf:	cc                   	int3
1800dacb0:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1800dacb5:	57                   	push   %rdi
1800dacb6:	48 83 ec 20          	sub    $0x20,%rsp
1800dacba:	48 8b 05 af f5 0b 00 	mov    0xbf5af(%rip),%rax        # 0x18019a270
1800dacc1:	48 8b fa             	mov    %rdx,%rdi
1800dacc4:	48 8b d9             	mov    %rcx,%rbx
1800dacc7:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
1800daccc:	48 c1 e9 0c          	shr    $0xc,%rcx
1800dacd0:	ba 3f 01 00 00       	mov    $0x13f,%edx
1800dacd5:	41 b8 00 00 00 40    	mov    $0x40000000,%r8d
1800dacdb:	e8 bc 18 fc ff       	call   0x18009c59c
1800dace0:	48 85 c0             	test   %rax,%rax
1800dace3:	75 07                	jne    0x1800dacec
1800dace5:	b9 41 01 00 c0       	mov    $0xc0000141,%ecx
1800dacea:	eb 57                	jmp    0x1800dad43
1800dacec:	33 c9                	xor    %ecx,%ecx
1800dacee:	39 0d 84 1c 09 00    	cmp    %ecx,0x91c84(%rip)        # 0x18016c978
1800dacf4:	75 0b                	jne    0x1800dad01
1800dacf6:	48 8b 05 0b a3 0c 00 	mov    0xca30b(%rip),%rax        # 0x1801a5008
1800dacfd:	39 08                	cmp    %ecx,(%rax)
1800dacff:	75 3f                	jne    0x1800dad40
1800dad01:	48 8b c3             	mov    %rbx,%rax
1800dad04:	48 c7 44 24 40 00 10 	movq   $0x1000,0x40(%rsp)
1800dad0b:	00 00
1800dad0d:	48 25 00 f0 ff ff    	and    $0xfffffffffffff000,%rax
1800dad13:	4c 8d 44 24 40       	lea    0x40(%rsp),%r8
1800dad18:	45 33 c9             	xor    %r9d,%r9d
1800dad1b:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
1800dad20:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
1800dad25:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
1800dad2a:	e8 39 04 fc ff       	call   0x18009b168
1800dad2f:	8b c8                	mov    %eax,%ecx
1800dad31:	85 c0                	test   %eax,%eax
1800dad33:	78 0e                	js     0x1800dad43
1800dad35:	81 e3 ff 0f 00 00    	and    $0xfff,%ebx
1800dad3b:	48 03 5c 24 30       	add    0x30(%rsp),%rbx
1800dad40:	48 89 1f             	mov    %rbx,(%rdi)
1800dad43:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
1800dad48:	8b c1                	mov    %ecx,%eax
1800dad4a:	48 83 c4 20          	add    $0x20,%rsp
1800dad4e:	5f                   	pop    %rdi
1800dad4f:	c3                   	ret
1800dad50:	cc                   	int3
1800dad51:	cc                   	int3
1800dad52:	cc                   	int3
1800dad53:	cc                   	int3
1800dad54:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
1800dad59:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
1800dad5e:	55                   	push   %rbp
1800dad5f:	57                   	push   %rdi
1800dad60:	41 56                	push   %r14
1800dad62:	48 8b ec             	mov    %rsp,%rbp
1800dad65:	48 83 ec 50          	sub    $0x50,%rsp
1800dad69:	44 0f b7 01          	movzwl (%rcx),%r8d
1800dad6d:	48 8d 35 8c e4 0b 00 	lea    0xbe48c(%rip),%rsi        # 0x180199200
1800dad74:	48 8b da             	mov    %rdx,%rbx
1800dad77:	48 8b 51 08          	mov    0x8(%rcx),%rdx
1800dad7b:	48 8b ce             	mov    %rsi,%rcx
1800dad7e:	e8 99 fc ff ff       	call   0x1800daa1c
1800dad83:	44 8b c0             	mov    %eax,%r8d
1800dad86:	41 be 10 00 00 00    	mov    $0x10,%r14d
1800dad8c:	44 8b c8             	mov    %eax,%r9d
1800dad8f:	4d 03 c6             	add    %r14,%r8
1800dad92:	8b 05 fc 1b 09 00    	mov    0x91bfc(%rip),%eax        # 0x18016c994
1800dad98:	44 89 4d 20          	mov    %r9d,0x20(%rbp)
1800dad9c:	4c 3b c0             	cmp    %rax,%r8
1800dad9f:	76 08                	jbe    0x1800dada9
1800dada1:	44 8d 48 f0          	lea    -0x10(%rax),%r9d
1800dada5:	44 89 4d 20          	mov    %r9d,0x20(%rbp)
1800dada9:	0f b7 43 02          	movzwl 0x2(%rbx),%eax
1800dadad:	4c 8d 45 e0          	lea    -0x20(%rbp),%r8
1800dadb1:	89 45 dc             	mov    %eax,-0x24(%rbp)
1800dadb4:	48 8d 55 f0          	lea    -0x10(%rbp),%rdx
1800dadb8:	48 8d 45 d0          	lea    -0x30(%rbp),%rax
1800dadbc:	48 c7 45 d0 31 32 00 	movq   $0x3231,-0x30(%rbp)
1800dadc3:	00
1800dadc4:	48 89 45 f8          	mov    %rax,-0x8(%rbp)
1800dadc8:	b9 03 00 00 00       	mov    $0x3,%ecx
1800dadcd:	48 8b 05 fc f7 0b 00 	mov    0xbf7fc(%rip),%rax        # 0x18019a5d0
1800dadd4:	44 89 4d d8          	mov    %r9d,-0x28(%rbp)
1800dadd8:	66 44 89 75 f0       	mov    %r14w,-0x10(%rbp)