18012acfb:	8d 41 9f             	lea    -0x61(%rcx),%eax
18012acfe:	3c 19                	cmp    $0x19,%al
18012ad00:	77 06                	ja     0x18012ad08
18012ad02:	80 e9 20             	sub    $0x20,%cl
18012ad05:	41 88 08             	mov    %cl,(%r8)
18012ad08:	49 ff c0             	inc    %r8
18012ad0b:	41 8a 08             	mov    (%r8),%cl
18012ad0e:	84 c9                	test   %cl,%cl
18012ad10:	75 e9                	jne    0x18012acfb
18012ad12:	48 8b c2             	mov    %rdx,%rax
18012ad15:	48 83 c4 38          	add    $0x38,%rsp
18012ad19:	c3                   	ret
18012ad1a:	cc                   	int3
18012ad1b:	cc                   	int3
18012ad1c:	48 83 ec 38          	sub    $0x38,%rsp
18012ad20:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
18012ad25:	45 33 c9             	xor    %r9d,%r9d
18012ad28:	e8 07 00 00 00       	call   0x18012ad34
18012ad2d:	48 83 c4 38          	add    $0x38,%rsp
18012ad31:	c3                   	ret
18012ad32:	cc                   	int3
18012ad33:	cc                   	int3
18012ad34:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18012ad39:	48 89 7c 24 10       	mov    %rdi,0x10(%rsp)
18012ad3e:	55                   	push   %rbp
18012ad3f:	48 8b ec             	mov    %rsp,%rbp
18012ad42:	48 83 ec 60          	sub    $0x60,%rsp
18012ad46:	83 65 dc 00          	andl   $0x0,-0x24(%rbp)
18012ad4a:	0f 57 c0             	xorps  %xmm0,%xmm0
18012ad4d:	83 65 fc 00          	andl   $0x0,-0x4(%rbp)
18012ad51:	4d 8b d1             	mov    %r9,%r10
18012ad54:	49 8b c0             	mov    %r8,%rax
18012ad57:	48 8b d9             	mov    %rcx,%rbx
18012ad5a:	f3 0f 7f 45 ec       	movdqu %xmm0,-0x14(%rbp)
18012ad5f:	4d 85 c0             	test   %r8,%r8
18012ad62:	74 5f                	je     0x18012adc3
18012ad64:	48 85 d2             	test   %rdx,%rdx
18012ad67:	74 05                	je     0x18012ad6e
18012ad69:	48 85 c9             	test   %rcx,%rcx
18012ad6c:	74 55                	je     0x18012adc3
18012ad6e:	4c 8b 4d 30          	mov    0x30(%rbp),%r9
18012ad72:	b9 ff ff ff 7f       	mov    $0x7fffffff,%ecx
18012ad77:	48 3b d1             	cmp    %rcx,%rdx
18012ad7a:	c7 45 e8 42 00 00 00 	movl   $0x42,-0x18(%rbp)
18012ad81:	4d 8b c2             	mov    %r10,%r8
18012ad84:	48 89 5d e0          	mov    %rbx,-0x20(%rbp)
18012ad88:	0f 47 d1             	cmova  %ecx,%edx
18012ad8b:	48 89 5d d0          	mov    %rbx,-0x30(%rbp)
18012ad8f:	89 55 d8             	mov    %edx,-0x28(%rbp)
18012ad92:	48 8d 4d d0          	lea    -0x30(%rbp),%rcx
18012ad96:	48 8b d0             	mov    %rax,%rdx
18012ad99:	e8 ea 12 00 00       	call   0x18012c088
18012ad9e:	8b f8                	mov    %eax,%edi
18012ada0:	48 85 db             	test   %rbx,%rbx
18012ada3:	74 1a                	je     0x18012adbf
18012ada5:	83 6d d8 01          	subl   $0x1,-0x28(%rbp)
18012ada9:	78 09                	js     0x18012adb4
18012adab:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
18012adaf:	c6 01 00             	movb   $0x0,(%rcx)
18012adb2:	eb 0b                	jmp    0x18012adbf
18012adb4:	48 8d 55 d0          	lea    -0x30(%rbp),%rdx
18012adb8:	33 c9                	xor    %ecx,%ecx
18012adba:	e8 bd 12 00 00       	call   0x18012c07c
18012adbf:	8b c7                	mov    %edi,%eax
18012adc1:	eb 18                	jmp    0x18012addb
18012adc3:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18012adc9:	45 33 c9             	xor    %r9d,%r9d
18012adcc:	45 33 c0             	xor    %r8d,%r8d
18012adcf:	33 d2                	xor    %edx,%edx
18012add1:	33 c9                	xor    %ecx,%ecx
18012add3:	e8 54 ad ee ff       	call   0x180015b2c
18012add8:	83 c8 ff             	or     $0xffffffff,%eax
18012addb:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
18012ade0:	48 8b 7c 24 78       	mov    0x78(%rsp),%rdi
18012ade5:	48 83 c4 60          	add    $0x60,%rsp
18012ade9:	5d                   	pop    %rbp
18012adea:	c3                   	ret
18012adeb:	cc                   	int3
18012adec:	4c 8b c9             	mov    %rcx,%r9
18012adef:	4c 8b d2             	mov    %rdx,%r10
18012adf2:	4c 2b ca             	sub    %rdx,%r9
18012adf5:	47 0f b7 04 11       	movzwl (%r9,%r10,1),%r8d
18012adfa:	41 0f b7 0a          	movzwl (%r10),%ecx
18012adfe:	4d 8d 52 02          	lea    0x2(%r10),%r10
18012ae02:	41 8d 40 bf          	lea    -0x41(%r8),%eax
18012ae06:	66 83 f8 19          	cmp    $0x19,%ax
18012ae0a:	41 8d 50 20          	lea    0x20(%r8),%edx
18012ae0e:	8d 41 bf             	lea    -0x41(%rcx),%eax
18012ae11:	66 41 0f 47 d0       	cmova  %r8w,%dx
18012ae16:	66 83 f8 19          	cmp    $0x19,%ax
18012ae1a:	44 8d 41 20          	lea    0x20(%rcx),%r8d
18012ae1e:	66 44 0f 47 c1       	cmova  %cx,%r8w
18012ae23:	66 85 d2             	test   %dx,%dx
18012ae26:	74 06                	je     0x18012ae2e
18012ae28:	66 41 3b d0          	cmp    %r8w,%dx
18012ae2c:	74 c7                	je     0x18012adf5
18012ae2e:	41 0f b7 c8          	movzwl %r8w,%ecx
18012ae32:	0f b7 c2             	movzwl %dx,%eax
18012ae35:	2b c1                	sub    %ecx,%eax
18012ae37:	c3                   	ret
18012ae38:	cc                   	int3
18012ae39:	cc                   	int3
18012ae3a:	cc                   	int3
18012ae3b:	cc                   	int3
18012ae3c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18012ae41:	45 33 c9             	xor    %r9d,%r9d
18012ae44:	49 8b d8             	mov    %r8,%rbx
18012ae47:	4c 8b da             	mov    %rdx,%r11
18012ae4a:	4c 8b d1             	mov    %rcx,%r10
18012ae4d:	4d 85 c0             	test   %r8,%r8
18012ae50:	74 4a                	je     0x18012ae9c
18012ae52:	4c 2b d2             	sub    %rdx,%r10
18012ae55:	43 0f b7 0c 1a       	movzwl (%r10,%r11,1),%ecx
18012ae5a:	8d 41 bf             	lea    -0x41(%rcx),%eax
18012ae5d:	66 83 f8 19          	cmp    $0x19,%ax
18012ae61:	8d 51 20             	lea    0x20(%rcx),%edx
18012ae64:	66 0f 47 d1          	cmova  %cx,%dx
18012ae68:	41 0f b7 0b          	movzwl (%r11),%ecx
18012ae6c:	4d 8d 5b 02          	lea    0x2(%r11),%r11
18012ae70:	8d 41 bf             	lea    -0x41(%rcx),%eax
18012ae73:	66 83 f8 19          	cmp    $0x19,%ax
18012ae77:	44 8d 41 20          	lea    0x20(%rcx),%r8d
18012ae7b:	66 44 0f 47 c1       	cmova  %cx,%r8w
18012ae80:	48 83 eb 01          	sub    $0x1,%rbx
18012ae84:	74 0b                	je     0x18012ae91
18012ae86:	66 85 d2             	test   %dx,%dx
18012ae89:	74 06                	je     0x18012ae91
18012ae8b:	66 41 3b d0          	cmp    %r8w,%dx
18012ae8f:	74 c4                	je     0x18012ae55
18012ae91:	41 0f b7 c0          	movzwl %r8w,%eax
18012ae95:	44 0f b7 ca          	movzwl %dx,%r9d
18012ae99:	44 2b c8             	sub    %eax,%r9d
18012ae9c:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
18012aea1:	41 8b c1             	mov    %r9d,%eax
18012aea4:	c3                   	ret
18012aea5:	cc                   	int3
18012aea6:	cc                   	int3
18012aea7:	cc                   	int3
18012aea8:	48 83 ec 38          	sub    $0x38,%rsp
18012aeac:	48 83 64 24 28 00    	andq   $0x0,0x28(%rsp)
18012aeb2:	45 8b c8             	mov    %r8d,%r9d
18012aeb5:	4c 8b c2             	mov    %rdx,%r8
18012aeb8:	c7 44 24 20 01 00 00 	movl   $0x1,0x20(%rsp)
18012aebf:	00
18012aec0:	48 8b d1             	mov    %rcx,%rdx
18012aec3:	48 8d 0d 36 72 01 00 	lea    0x17236(%rip),%rcx        # 0x180142100
18012aeca:	e8 09 00 00 00       	call   0x18012aed8
18012aecf:	48 83 c4 38          	add    $0x38,%rsp
18012aed3:	c3                   	ret
18012aed4:	cc                   	int3
18012aed5:	cc                   	int3
18012aed6:	cc                   	int3
18012aed7:	cc                   	int3
18012aed8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
18012aedd:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
18012aee2:	55                   	push   %rbp
18012aee3:	56                   	push   %rsi
18012aee4:	57                   	push   %rdi
18012aee5:	41 54                	push   %r12
18012aee7:	41 55                	push   %r13
18012aee9:	41 56                	push   %r14
18012aeeb:	41 57                	push   %r15
18012aeed:	48 83 ec 30          	sub    $0x30,%rsp
18012aef1:	45 8b f1             	mov    %r9d,%r14d
18012aef4:	4d 8b f8             	mov    %r8,%r15
18012aef7:	4c 8b e2             	mov    %rdx,%r12
18012aefa:	4d 85 c0             	test   %r8,%r8
18012aefd:	74 03                	je     0x18012af02
18012aeff:	49 89 10             	mov    %rdx,(%r8)
18012af02:	4d 85 e4             	test   %r12,%r12
18012af05:	0f 84 08 02 00 00    	je     0x18012b113
18012af0b:	45 85 f6             	test   %r14d,%r14d
18012af0e:	74 0d                	je     0x18012af1d
18012af10:	41 8d 41 fe          	lea    -0x2(%r9),%eax
18012af14:	83 f8 22             	cmp    $0x22,%eax
18012af17:	0f 87 f6 01 00 00    	ja     0x18012b113
18012af1d:	0f b7 2a             	movzwl (%rdx),%ebp
18012af20:	48 8d 5a 02          	lea    0x2(%rdx),%rbx
18012af24:	33 f6                	xor    %esi,%esi
18012af26:	0f b7 cd             	movzwl %bp,%ecx
18012af29:	8d 7e 08             	lea    0x8(%rsi),%edi
18012af2c:	eb 0f                	jmp    0x18012af3d
18012af2e:	0f b7 0b             	movzwl (%rbx),%ecx
18012af31:	48 83 c3 02          	add    $0x2,%rbx
18012af35:	66 3b cd             	cmp    %bp,%cx
18012af38:	74 f4                	je     0x18012af2e
18012af3a:	0f b7 e9             	movzwl %cx,%ebp
18012af3d:	45 33 c0             	xor    %r8d,%r8d
18012af40:	8b d7                	mov    %edi,%edx
18012af42:	e8 61 0f 00 00       	call   0x18012bea8
18012af47:	85 c0                	test   %eax,%eax
18012af49:	75 e3                	jne    0x18012af2e
18012af4b:	8b bc 24 90 00 00 00 	mov    0x90(%rsp),%edi
18012af52:	66 83 fd 2d          	cmp    $0x2d,%bp
18012af56:	75 05                	jne    0x18012af5d
18012af58:	83 cf 02             	or     $0x2,%edi
18012af5b:	eb 06                	jmp    0x18012af63
18012af5d:	66 83 fd 2b          	cmp    $0x2b,%bp
18012af61:	75 07                	jne    0x18012af6a
18012af63:	0f b7 2b             	movzwl (%rbx),%ebp
18012af66:	48 83 c3 02          	add    $0x2,%rbx
18012af6a:	45 85 f6             	test   %r14d,%r14d
18012af6d:	74 1a                	je     0x18012af89
18012af6f:	41 8d 46 fe          	lea    -0x2(%r14),%eax
18012af73:	83 f8 22             	cmp    $0x22,%eax
18012af76:	76 11                	jbe    0x18012af89
18012af78:	4d 85 ff             	test   %r15,%r15
18012af7b:	0f 84 a7 01 00 00    	je     0x18012b128
18012af81:	4d 89 27             	mov    %r12,(%r15)
18012af84:	e9 9f 01 00 00       	jmp    0x18012b128
18012af89:	41 bd df ff 00 00    	mov    $0xffdf,%r13d
18012af8f:	45 85 f6             	test   %r14d,%r14d
18012af92:	75 2f                	jne    0x18012afc3
18012af94:	0f b7 cd             	movzwl %bp,%ecx
18012af97:	e8 48 1a 00 00       	call   0x18012c9e4
18012af9c:	85 c0                	test   %eax,%eax
18012af9e:	74 08                	je     0x18012afa8
18012afa0:	41 be 0a 00 00 00    	mov    $0xa,%r14d
18012afa6:	eb 42                	jmp    0x18012afea
18012afa8:	0f b7 03             	movzwl (%rbx),%eax
18012afab:	66 83 e8 58          	sub    $0x58,%ax
18012afaf:	66 41 85 c5          	test   %ax,%r13w
18012afb3:	74 08                	je     0x18012afbd
18012afb5:	41 be 08 00 00 00    	mov    $0x8,%r14d
18012afbb:	eb 2d                	jmp    0x18012afea
18012afbd:	41 be 10 00 00 00    	mov    $0x10,%r14d
18012afc3:	41 83 fe 10          	cmp    $0x10,%r14d
18012afc7:	75 21                	jne    0x18012afea
18012afc9:	0f b7 cd             	movzwl %bp,%ecx
18012afcc:	e8 13 1a 00 00       	call   0x18012c9e4
18012afd1:	85 c0                	test   %eax,%eax
18012afd3:	75 15                	jne    0x18012afea
18012afd5:	0f b7 03             	movzwl (%rbx),%eax
18012afd8:	66 83 e8 58          	sub    $0x58,%ax
18012afdc:	66 41 85 c5          	test   %ax,%r13w
18012afe0:	75 08                	jne    0x18012afea
18012afe2:	0f b7 6b 02          	movzwl 0x2(%rbx),%ebp
18012afe6:	48 83 c3 04          	add    $0x4,%rbx
18012afea:	49 63 ce             	movslq %r14d,%rcx
18012afed:	33 d2                	xor    %edx,%edx
18012afef:	48 83 c8 ff          	or     $0xffffffffffffffff,%rax
18012aff3:	4d 63 e6             	movslq %r14d,%r12
18012aff6:	48 f7 f1             	div    %rcx
18012aff9:	48 89 94 24 80 00 00 	mov    %rdx,0x80(%rsp)
18012b000:	00
18012b001:	4c 8b e8             	mov    %rax,%r13
18012b004:	0f b7 cd             	movzwl %bp,%ecx
18012b007:	e8 d8 19 00 00       	call   0x18012c9e4
18012b00c:	8b c8                	mov    %eax,%ecx
18012b00e:	83 f8 ff             	cmp    $0xffffffff,%eax
18012b011:	75 26                	jne    0x18012b039
18012b013:	8d 45 bf             	lea    -0x41(%rbp),%eax
18012b016:	66 83 f8 19          	cmp    $0x19,%ax
18012b01a:	76 09                	jbe    0x18012b025
18012b01c:	8d 45 9f             	lea    -0x61(%rbp),%eax
18012b01f:	66 83 f8 19          	cmp    $0x19,%ax
18012b023:	77 37                	ja     0x18012b05c
18012b025:	0f b7 c5             	movzwl %bp,%eax
18012b028:	66 83 ed 61          	sub    $0x61,%bp
18012b02c:	66 83 fd 19          	cmp    $0x19,%bp
18012b030:	8d 48 e0             	lea    -0x20(%rax),%ecx
18012b033:	0f 47 c8             	cmova  %eax,%ecx
18012b036:	83 e9 37             	sub    $0x37,%ecx
18012b039:	41 3b ce             	cmp    %r14d,%ecx
18012b03c:	73 1e                	jae    0x18012b05c
18012b03e:	83 cf 08             	or     $0x8,%edi
18012b041:	49 3b f5             	cmp    %r13,%rsi
18012b044:	72 33                	jb     0x18012b079
18012b046:	75 0c                	jne    0x18012b054
18012b048:	8b d1                	mov    %ecx,%edx
18012b04a:	48 3b 94 24 80 00 00 	cmp    0x80(%rsp),%rdx
18012b051:	00
18012b052:	76 27                	jbe    0x18012b07b
18012b054:	83 cf 04             	or     $0x4,%edi
18012b057:	4d 85 ff             	test   %r15,%r15
18012b05a:	75 26                	jne    0x18012b082
18012b05c:	4c 8b 64 24 78       	mov    0x78(%rsp),%r12
18012b061:	48 83 eb 02          	sub    $0x2,%rbx
18012b065:	40 f6 c7 08          	test   $0x8,%dil
18012b069:	75 23                	jne    0x18012b08e
18012b06b:	4d 85 ff             	test   %r15,%r15
18012b06e:	49 0f 45 dc          	cmovne %r12,%rbx
18012b072:	33 f6                	xor    %esi,%esi
18012b074:	e9 82 00 00 00       	jmp    0x18012b0fb
18012b079:	8b d1                	mov    %ecx,%edx
18012b07b:	49 0f af f4          	imul   %r12,%rsi
18012b07f:	48 03 f2             	add    %rdx,%rsi
18012b082:	0f b7 2b             	movzwl (%rbx),%ebp
18012b085:	48 83 c3 02          	add    $0x2,%rbx
18012b089:	e9 76 ff ff ff       	jmp    0x18012b004
18012b08e:	48 b9 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rcx
18012b095:	ff ff 7f
18012b098:	40 f6 c7 04          	test   $0x4,%dil
18012b09c:	75 22                	jne    0x18012b0c0
18012b09e:	40 f6 c7 01          	test   $0x1,%dil
18012b0a2:	75 57                	jne    0x18012b0fb
18012b0a4:	40 f6 c7 02          	test   $0x2,%dil
18012b0a8:	74 11                	je     0x18012b0bb
18012b0aa:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
18012b0b1:	00 00 80
18012b0b4:	48 3b f0             	cmp    %rax,%rsi
18012b0b7:	77 07                	ja     0x18012b0c0
18012b0b9:	eb 40                	jmp    0x18012b0fb
18012b0bb:	48 3b f1             	cmp    %rcx,%rsi
18012b0be:	76 3b                	jbe    0x18012b0fb
18012b0c0:	48 8b 84 24 98 00 00 	mov    0x98(%rsp),%rax
18012b0c7:	00
18012b0c8:	48 85 c0             	test   %rax,%rax
18012b0cb:	75 0c                	jne    0x18012b0d9
18012b0cd:	c7 05 69 a5 06 00 22 	movl   $0x22,0x6a569(%rip)        # 0x180195640
18012b0d4:	00 00 00
18012b0d7:	eb 06                	jmp    0x18012b0df
18012b0d9:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
18012b0df:	40 f6 c7 01          	test   $0x1,%dil
18012b0e3:	74 06                	je     0x18012b0eb
18012b0e5:	48 83 ce ff          	or     $0xffffffffffffffff,%rsi
18012b0e9:	eb 10                	jmp    0x18012b0fb
18012b0eb:	40 8a c7             	mov    %dil,%al
18012b0ee:	24 02                	and    $0x2,%al
18012b0f0:	f6 d8                	neg    %al
18012b0f2:	48 1b f6             	sbb    %rsi,%rsi
18012b0f5:	48 f7 de             	neg    %rsi
18012b0f8:	48 03 f1             	add    %rcx,%rsi
18012b0fb:	4d 85 ff             	test   %r15,%r15
18012b0fe:	74 03                	je     0x18012b103
18012b100:	49 89 1f             	mov    %rbx,(%r15)
18012b103:	48 8b c6             	mov    %rsi,%rax
18012b106:	48 f7 d8             	neg    %rax
18012b109:	40 80 e7 02          	and    $0x2,%dil
18012b10d:	48 0f 44 c6          	cmove  %rsi,%rax
18012b111:	eb 17                	jmp    0x18012b12a
18012b113:	48 83 64 24 20 00    	andq   $0x0,0x20(%rsp)
18012b119:	45 33 c9             	xor    %r9d,%r9d
18012b11c:	45 33 c0             	xor    %r8d,%r8d
18012b11f:	33 d2                	xor    %edx,%edx
18012b121:	33 c9                	xor    %ecx,%ecx
18012b123:	e8 04 aa ee ff       	call   0x180015b2c
18012b128:	33 c0                	xor    %eax,%eax
18012b12a:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
18012b12f:	48 83 c4 30          	add    $0x30,%rsp
18012b133:	41 5f                	pop    %r15
18012b135:	41 5e                	pop    %r14
18012b137:	41 5d                	pop    %r13
18012b139:	41 5c                	pop    %r12
18012b13b:	5f                   	pop    %rdi
18012b13c:	5e                   	pop    %rsi
18012b13d:	5d                   	pop    %rbp
18012b13e:	c3                   	ret
18012b13f:	cc                   	int3
18012b140:	0f b7 11             	movzwl (%rcx),%edx