140994d3b:	48 83 ec 20          	sub    $0x20,%rsp
140994d3f:	41 8b f8             	mov    %r8d,%edi
140994d42:	8b f2                	mov    %edx,%esi
140994d44:	48 8b d9             	mov    %rcx,%rbx
140994d47:	48 85 c9             	test   %rcx,%rcx
140994d4a:	0f 84 cf 00 00 00    	je     0x140994e1f
140994d50:	41 83 f8 01          	cmp    $0x1,%r8d
140994d54:	0f 87 c5 00 00 00    	ja     0x140994e1f
140994d5a:	83 fa 04             	cmp    $0x4,%edx
140994d5d:	0f 87 bc 00 00 00    	ja     0x140994e1f
140994d63:	48 8b 41 38          	mov    0x38(%rcx),%rax
140994d67:	48 8d 15 82 04 00 00 	lea    0x482(%rip),%rdx        # 0x1409951f0
140994d6e:	48 85 c0             	test   %rax,%rax
140994d71:	75 07                	jne    0x140994d7a
140994d73:	48 89 51 38          	mov    %rdx,0x38(%rcx)
140994d77:	48 8b c2             	mov    %rdx,%rax
140994d7a:	48 83 79 40 00       	cmpq   $0x0,0x40(%rcx)
140994d7f:	75 0b                	jne    0x140994d8c
140994d81:	48 8d 0d 78 04 00 00 	lea    0x478(%rip),%rcx        # 0x140995200
140994d88:	48 89 4b 40          	mov    %rcx,0x40(%rbx)
140994d8c:	48 3b c2             	cmp    %rdx,%rax
140994d8f:	75 0c                	jne    0x140994d9d
140994d91:	b9 90 fa 00 00       	mov    $0xfa90,%ecx
140994d96:	e8 91 d9 49 00       	call   0x140e3272c
140994d9b:	eb 15                	jmp    0x140994db2
140994d9d:	48 8b 4b 48          	mov    0x48(%rbx),%rcx
140994da1:	ba 90 fa 00 00       	mov    $0xfa90,%edx
140994da6:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140994dac:	ff 15 6e ec 5e 00    	call   *0x5eec6e(%rip)        # 0x140f83a20
140994db2:	48 85 c0             	test   %rax,%rax
140994db5:	75 15                	jne    0x140994dcc
140994db7:	b8 fd ff ff ff       	mov    $0xfffffffd,%eax
140994dbc:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140994dc1:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140994dc6:	48 83 c4 20          	add    $0x20,%rsp
140994dca:	5f                   	pop    %rdi
140994dcb:	c3                   	ret
140994dcc:	33 c9                	xor    %ecx,%ecx
140994dce:	48 89 18             	mov    %rbx,(%rax)
140994dd1:	48 89 43 30          	mov    %rax,0x30(%rbx)
140994dd5:	c7 40 08 0a 00 00 00 	movl   $0xa,0x8(%rax)
140994ddc:	48 89 48 20          	mov    %rcx,0x20(%rax)
140994de0:	89 88 74 0c 00 00    	mov    %ecx,0xc74(%rax)
140994de6:	48 89 4b 0c          	mov    %rcx,0xc(%rbx)
140994dea:	48 89 4b 24          	mov    %rcx,0x24(%rbx)
140994dee:	40 88 78 2c          	mov    %dil,0x2c(%rax)
140994df2:	48 89 88 60 0c 00 00 	mov    %rcx,0xc60(%rax)
140994df9:	48 89 88 58 0c 00 00 	mov    %rcx,0xc58(%rax)
140994e00:	48 89 88 50 0c 00 00 	mov    %rcx,0xc50(%rax)
140994e07:	89 48 30             	mov    %ecx,0x30(%rax)
140994e0a:	89 70 34             	mov    %esi,0x34(%rax)
140994e0d:	33 c0                	xor    %eax,%eax
140994e0f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140994e14:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140994e19:	48 83 c4 20          	add    $0x20,%rsp
140994e1d:	5f                   	pop    %rdi
140994e1e:	c3                   	ret
140994e1f:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140994e24:	b8 fe ff ff ff       	mov    $0xfffffffe,%eax
140994e29:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
140994e2e:	48 83 c4 20          	add    $0x20,%rsp
140994e32:	5f                   	pop    %rdi
140994e33:	c3                   	ret
140994e34:	cc                   	int3
140994e35:	cc                   	int3
140994e36:	cc                   	int3
140994e37:	cc                   	int3
140994e38:	cc                   	int3
140994e39:	cc                   	int3
140994e3a:	cc                   	int3
140994e3b:	cc                   	int3
140994e3c:	cc                   	int3
140994e3d:	cc                   	int3
140994e3e:	cc                   	int3
140994e3f:	cc                   	int3
140994e40:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140994e45:	57                   	push   %rdi
140994e46:	48 83 ec 20          	sub    $0x20,%rsp
140994e4a:	8b f9                	mov    %ecx,%edi
140994e4c:	e8 4f 00 00 00       	call   0x140994ea0
140994e51:	b9 02 00 00 00       	mov    $0x2,%ecx
140994e56:	48 8b d8             	mov    %rax,%rbx
140994e59:	e8 32 de 49 00       	call   0x140e32c90
140994e5e:	48 8b c8             	mov    %rax,%rcx
140994e61:	48 8d 15 48 14 6d 00 	lea    0x6d1448(%rip),%rdx        # 0x1410662b0
140994e68:	4c 8b cb             	mov    %rbx,%r9
140994e6b:	44 8b c7             	mov    %edi,%r8d
140994e6e:	e8 fd ac 9e ff       	call   0x14037fb70
140994e73:	81 ff ef 03 00 00    	cmp    $0x3ef,%edi
140994e79:	75 19                	jne    0x140994e94
140994e7b:	b9 02 00 00 00       	mov    $0x2,%ecx
140994e80:	e8 0b de 49 00       	call   0x140e32c90
140994e85:	48 8b c8             	mov    %rax,%rcx
140994e88:	48 8d 15 c1 15 6d 00 	lea    0x6d15c1(%rip),%rdx        # 0x141066450
140994e8f:	e8 dc ac 9e ff       	call   0x14037fb70
140994e94:	b9 03 00 00 00       	mov    $0x3,%ecx
140994e99:	e8 6e e8 49 00       	call   0x140e3370c
140994e9e:	cc                   	int3
140994e9f:	cc                   	int3
140994ea0:	48 8d 05 21 1a 6d 00 	lea    0x6d1a21(%rip),%rax        # 0x1410668c8
140994ea7:	c3                   	ret
140994ea8:	cc                   	int3
140994ea9:	cc                   	int3
140994eaa:	cc                   	int3
140994eab:	cc                   	int3
140994eac:	cc                   	int3
140994ead:	cc                   	int3
140994eae:	cc                   	int3
140994eaf:	cc                   	int3
140994eb0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140994eb5:	8b d9                	mov    %ecx,%ebx
140994eb7:	45 33 db             	xor    %r11d,%r11d
140994eba:	41 b8 00 01 00 00    	mov    $0x100,%r8d
140994ec0:	47 8d 14 18          	lea    (%r8,%r11,1),%r10d
140994ec4:	41 d1 fa             	sar    $1,%r10d
140994ec7:	49 63 c2             	movslq %r10d,%rax
140994eca:	3b 1c 82             	cmp    (%rdx,%rax,4),%ebx
140994ecd:	45 0f 4c c2          	cmovl  %r10d,%r8d
140994ed1:	45 0f 4c d3          	cmovl  %r11d,%r10d
140994ed5:	41 8b c8             	mov    %r8d,%ecx
140994ed8:	45 8b da             	mov    %r10d,%r11d
140994edb:	41 2b ca             	sub    %r10d,%ecx
140994ede:	83 f9 01             	cmp    $0x1,%ecx
140994ee1:	75 dd                	jne    0x140994ec0
140994ee3:	48 8b 5c 24 08       	mov    0x8(%rsp),%rbx
140994ee8:	41 8b c2             	mov    %r10d,%eax
140994eeb:	c3                   	ret
140994eec:	cc                   	int3
140994eed:	cc                   	int3
140994eee:	cc                   	int3
140994eef:	cc                   	int3
140994ef0:	8b 41 60             	mov    0x60(%rcx),%eax
140994ef3:	44 0f b6 41 5c       	movzbl 0x5c(%rcx),%r8d
140994ef8:	85 c0                	test   %eax,%eax
140994efa:	7e 30                	jle    0x140994f2c
140994efc:	8b 91 88 02 00 00    	mov    0x288(%rcx),%edx
140994f02:	4c 8d 1d a7 c5 a1 00 	lea    0xa1c5a7(%rip),%r11        # 0x1413b14b0
140994f09:	44 8b c8             	mov    %eax,%r9d
140994f0c:	0f 1f 40 00          	nopl   0x0(%rax)
140994f10:	8b c2                	mov    %edx,%eax
140994f12:	48 c1 e8 18          	shr    $0x18,%rax
140994f16:	49 33 c0             	xor    %r8,%rax
140994f19:	c1 e2 08             	shl    $0x8,%edx
140994f1c:	41 33 14 83          	xor    (%r11,%rax,4),%edx
140994f20:	89 91 88 02 00 00    	mov    %edx,0x288(%rcx)
140994f26:	49 83 e9 01          	sub    $0x1,%r9
140994f2a:	75 e4                	jne    0x140994f10
140994f2c:	8b 41 5c             	mov    0x5c(%rcx),%eax
140994f2f:	c6 84 08 80 00 00 00 	movb   $0x1,0x80(%rax,%rcx,1)
140994f36:	01
140994f37:	4c 63 49 60          	movslq 0x60(%rcx),%r9
140994f3b:	41 8b d1             	mov    %r9d,%edx
140994f3e:	83 ea 01             	sub    $0x1,%edx
140994f41:	0f 84 c7 00 00 00    	je     0x14099500e
140994f47:	83 ea 01             	sub    $0x1,%edx
140994f4a:	0f 84 b0 00 00 00    	je     0x140995000
140994f50:	83 fa 01             	cmp    $0x1,%edx
140994f53:	74 6b                	je     0x140994fc0
140994f55:	41 c6 44 09 7c 01    	movb   $0x1,0x7c(%r9,%rcx,1)
140994f5b:	48 8b 41 40          	mov    0x40(%rcx),%rax
140994f5f:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140994f63:	44 88 04 02          	mov    %r8b,(%rdx,%rax,1)
140994f67:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140994f6b:	8d 42 01             	lea    0x1(%rdx),%eax
140994f6e:	89 41 6c             	mov    %eax,0x6c(%rcx)
140994f71:	48 8b 41 40          	mov    0x40(%rcx),%rax
140994f75:	44 88 44 02 01       	mov    %r8b,0x1(%rdx,%rax,1)
140994f7a:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140994f7e:	8d 42 01             	lea    0x1(%rdx),%eax
140994f81:	89 41 6c             	mov    %eax,0x6c(%rcx)
140994f84:	48 8b 41 40          	mov    0x40(%rcx),%rax
140994f88:	44 88 44 02 01       	mov    %r8b,0x1(%rdx,%rax,1)
140994f8d:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140994f91:	8d 42 01             	lea    0x1(%rdx),%eax
140994f94:	89 41 6c             	mov    %eax,0x6c(%rcx)
140994f97:	48 8b 41 40          	mov    0x40(%rcx),%rax
140994f9b:	44 88 44 02 01       	mov    %r8b,0x1(%rdx,%rax,1)
140994fa0:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140994fa4:	8d 42 01             	lea    0x1(%rdx),%eax
140994fa7:	89 41 6c             	mov    %eax,0x6c(%rcx)
140994faa:	44 0f b6 41 60       	movzbl 0x60(%rcx),%r8d
140994faf:	48 8b 41 40          	mov    0x40(%rcx),%rax
140994fb3:	41 80 e8 04          	sub    $0x4,%r8b
140994fb7:	44 88 44 02 01       	mov    %r8b,0x1(%rdx,%rax,1)
140994fbc:	ff 41 6c             	incl   0x6c(%rcx)
140994fbf:	c3                   	ret
140994fc0:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140994fc4:	48 8b 41 40          	mov    0x40(%rcx),%rax
140994fc8:	44 88 04 02          	mov    %r8b,(%rdx,%rax,1)
140994fcc:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140994fd0:	8d 42 01             	lea    0x1(%rdx),%eax
140994fd3:	89 41 6c             	mov    %eax,0x6c(%rcx)
140994fd6:	48 8b 41 40          	mov    0x40(%rcx),%rax
140994fda:	44 88 44 02 01       	mov    %r8b,0x1(%rdx,%rax,1)
140994fdf:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140994fe3:	8d 42 01             	lea    0x1(%rdx),%eax
140994fe6:	89 41 6c             	mov    %eax,0x6c(%rcx)
140994fe9:	48 8b 41 40          	mov    0x40(%rcx),%rax
140994fed:	44 88 44 02 01       	mov    %r8b,0x1(%rdx,%rax,1)
140994ff2:	ff 41 6c             	incl   0x6c(%rcx)
140994ff5:	c3                   	ret
140994ff6:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%rax,%rax,1)
140994ffd:	00 00 00
140995000:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140995004:	48 8b 41 40          	mov    0x40(%rcx),%rax
140995008:	44 88 04 02          	mov    %r8b,(%rdx,%rax,1)
14099500c:	eb d1                	jmp    0x140994fdf
14099500e:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140995012:	48 8b 41 40          	mov    0x40(%rcx),%rax
140995016:	44 88 04 02          	mov    %r8b,(%rdx,%rax,1)
14099501a:	ff 41 6c             	incl   0x6c(%rcx)
14099501d:	c3                   	ret
14099501e:	cc                   	int3
14099501f:	cc                   	int3
140995020:	40 53                	rex push %rbx
140995022:	48 83 ec 20          	sub    $0x20,%rsp
140995026:	8b 41 70             	mov    0x70(%rcx),%eax
140995029:	32 db                	xor    %bl,%bl
14099502b:	39 41 6c             	cmp    %eax,0x6c(%rcx)
14099502e:	0f 8d a6 01 00 00    	jge    0x1409951da
140995034:	83 79 08 02          	cmpl   $0x2,0x8(%rcx)
140995038:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
14099503d:	48 8d 3d 6c c4 a1 00 	lea    0xa1c46c(%rip),%rdi        # 0x1413b14b0
140995044:	0f 85 c9 00 00 00    	jne    0x140995113
14099504a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140995050:	48 8b 01             	mov    (%rcx),%rax
140995053:	83 78 08 00          	cmpl   $0x0,0x8(%rax)
140995057:	0f 84 78 01 00 00    	je     0x1409951d5
14099505d:	48 8b 00             	mov    (%rax),%rax
140995060:	b3 01                	mov    $0x1,%bl
140995062:	44 8b 49 5c          	mov    0x5c(%rcx),%r9d
140995066:	44 0f b6 10          	movzbl (%rax),%r10d
14099506a:	8b 41 60             	mov    0x60(%rcx),%eax
14099506d:	45 3b d1             	cmp    %r9d,%r10d
140995070:	74 42                	je     0x1409950b4
140995072:	83 f8 01             	cmp    $0x1,%eax
140995075:	75 4b                	jne    0x1409950c2
140995077:	44 8b 81 88 02 00 00 	mov    0x288(%rcx),%r8d
14099507e:	41 8b d0             	mov    %r8d,%edx
140995081:	41 0f b6 c1          	movzbl %r9b,%eax
140995085:	48 c1 ea 18          	shr    $0x18,%rdx
140995089:	48 33 d0             	xor    %rax,%rdx
14099508c:	41 c1 e0 08          	shl    $0x8,%r8d
140995090:	44 33 04 97          	xor    (%rdi,%rdx,4),%r8d
140995094:	44 89 81 88 02 00 00 	mov    %r8d,0x288(%rcx)
14099509b:	41 88 9c 09 80 00 00 	mov    %bl,0x80(%r9,%rcx,1)
1409950a2:	00
1409950a3:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
1409950a7:	48 8b 41 40          	mov    0x40(%rcx),%rax
1409950ab:	44 88 0c 02          	mov    %r9b,(%rdx,%rax,1)
1409950af:	ff 41 6c             	incl   0x6c(%rcx)
1409950b2:	eb 23                	jmp    0x1409950d7
1409950b4:	3d ff 00 00 00       	cmp    $0xff,%eax
1409950b9:	74 07                	je     0x1409950c2
1409950bb:	ff c0                	inc    %eax
1409950bd:	89 41 60             	mov    %eax,0x60(%rcx)
1409950c0:	eb 19                	jmp    0x1409950db
1409950c2:	41 81 f9 00 01 00 00 	cmp    $0x100,%r9d
1409950c9:	73 05                	jae    0x1409950d0
1409950cb:	e8 20 fe ff ff       	call   0x140994ef0
1409950d0:	c7 41 60 01 00 00 00 	movl   $0x1,0x60(%rcx)
1409950d7:	44 89 51 5c          	mov    %r10d,0x5c(%rcx)
1409950db:	48 8b 01             	mov    (%rcx),%rax
1409950de:	48 ff 00             	incq   (%rax)
1409950e1:	48 8b 01             	mov    (%rcx),%rax
1409950e4:	ff 48 08             	decl   0x8(%rax)
1409950e7:	48 8b 11             	mov    (%rcx),%rdx
1409950ea:	ff 42 0c             	incl   0xc(%rdx)
1409950ed:	48 8b 11             	mov    (%rcx),%rdx
1409950f0:	83 7a 0c 00          	cmpl   $0x0,0xc(%rdx)
1409950f4:	75 03                	jne    0x1409950f9
1409950f6:	ff 42 10             	incl   0x10(%rdx)
1409950f9:	8b 51 70             	mov    0x70(%rcx),%edx
1409950fc:	39 51 6c             	cmp    %edx,0x6c(%rcx)
1409950ff:	0f 8c 4b ff ff ff    	jl     0x140995050
140995105:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
14099510a:	0f b6 c3             	movzbl %bl,%eax
14099510d:	48 83 c4 20          	add    $0x20,%rsp
140995111:	5b                   	pop    %rbx
140995112:	c3                   	ret
140995113:	48 8b 01             	mov    (%rcx),%rax
140995116:	83 78 08 00          	cmpl   $0x0,0x8(%rax)
14099511a:	0f 84 b5 00 00 00    	je     0x1409951d5
140995120:	83 79 10 00          	cmpl   $0x0,0x10(%rcx)
140995124:	0f 84 ab 00 00 00    	je     0x1409951d5
14099512a:	48 8b 00             	mov    (%rax),%rax
14099512d:	b3 01                	mov    $0x1,%bl
14099512f:	44 8b 49 5c          	mov    0x5c(%rcx),%r9d
140995133:	44 0f b6 10          	movzbl (%rax),%r10d
140995137:	8b 41 60             	mov    0x60(%rcx),%eax
14099513a:	45 3b d1             	cmp    %r9d,%r10d
14099513d:	74 42                	je     0x140995181
14099513f:	83 f8 01             	cmp    $0x1,%eax
140995142:	75 4b                	jne    0x14099518f
140995144:	44 8b 81 88 02 00 00 	mov    0x288(%rcx),%r8d
14099514b:	41 8b d0             	mov    %r8d,%edx
14099514e:	41 0f b6 c1          	movzbl %r9b,%eax
140995152:	48 c1 ea 18          	shr    $0x18,%rdx
140995156:	48 33 d0             	xor    %rax,%rdx
140995159:	41 c1 e0 08          	shl    $0x8,%r8d
14099515d:	44 33 04 97          	xor    (%rdi,%rdx,4),%r8d
140995161:	44 89 81 88 02 00 00 	mov    %r8d,0x288(%rcx)
140995168:	41 88 9c 09 80 00 00 	mov    %bl,0x80(%r9,%rcx,1)
14099516f:	00
140995170:	48 63 51 6c          	movslq 0x6c(%rcx),%rdx
140995174:	48 8b 41 40          	mov    0x40(%rcx),%rax
140995178:	44 88 0c 02          	mov    %r9b,(%rdx,%rax,1)
14099517c:	ff 41 6c             	incl   0x6c(%rcx)
14099517f:	eb 23                	jmp    0x1409951a4
140995181:	3d ff 00 00 00       	cmp    $0xff,%eax
140995186:	74 07                	je     0x14099518f
140995188:	ff c0                	inc    %eax
14099518a:	89 41 60             	mov    %eax,0x60(%rcx)
14099518d:	eb 19                	jmp    0x1409951a8
14099518f:	41 81 f9 00 01 00 00 	cmp    $0x100,%r9d
140995196:	73 05                	jae    0x14099519d
140995198:	e8 53 fd ff ff       	call   0x140994ef0
14099519d:	c7 41 60 01 00 00 00 	movl   $0x1,0x60(%rcx)
1409951a4:	44 89 51 5c          	mov    %r10d,0x5c(%rcx)
1409951a8:	48 8b 01             	mov    (%rcx),%rax
1409951ab:	48 ff 00             	incq   (%rax)
1409951ae:	48 8b 01             	mov    (%rcx),%rax
1409951b1:	ff 48 08             	decl   0x8(%rax)
1409951b4:	48 8b 01             	mov    (%rcx),%rax
1409951b7:	ff 40 0c             	incl   0xc(%rax)
1409951ba:	48 8b 01             	mov    (%rcx),%rax
1409951bd:	83 78 0c 00          	cmpl   $0x0,0xc(%rax)
1409951c1:	75 03                	jne    0x1409951c6
1409951c3:	ff 40 10             	incl   0x10(%rax)
1409951c6:	ff 49 10             	decl   0x10(%rcx)
1409951c9:	8b 41 70             	mov    0x70(%rcx),%eax
1409951cc:	39 41 6c             	cmp    %eax,0x6c(%rcx)
1409951cf:	0f 8c 3e ff ff ff    	jl     0x140995113
1409951d5:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
1409951da:	0f b6 c3             	movzbl %bl,%eax
1409951dd:	48 83 c4 20          	add    $0x20,%rsp
1409951e1:	5b                   	pop    %rbx
1409951e2:	c3                   	ret
1409951e3:	cc                   	int3
1409951e4:	cc                   	int3
1409951e5:	cc                   	int3
1409951e6:	cc                   	int3
1409951e7:	cc                   	int3
1409951e8:	cc                   	int3
1409951e9:	cc                   	int3
1409951ea:	cc                   	int3
1409951eb:	cc                   	int3
1409951ec:	cc                   	int3
1409951ed:	cc                   	int3
1409951ee:	cc                   	int3