140172c91:	75 45                	jne    0x140172cd8
140172c93:	48 8b 0f             	mov    (%rdi),%rcx
140172c96:	48 85 c9             	test   %rcx,%rcx
140172c99:	74 32                	je     0x140172ccd
140172c9b:	48 8b 41 38          	mov    0x38(%rcx),%rax
140172c9f:	48 8b 10             	mov    (%rax),%rdx
140172ca2:	48 85 d2             	test   %rdx,%rdx
140172ca5:	74 0d                	je     0x140172cb4
140172ca7:	48 8b 41 50          	mov    0x50(%rcx),%rax
140172cab:	39 18                	cmp    %ebx,(%rax)
140172cad:	7e 05                	jle    0x140172cb4
140172caf:	0f b7 02             	movzwl (%rdx),%eax
140172cb2:	eb 0d                	jmp    0x140172cc1
140172cb4:	48 8b 01             	mov    (%rcx),%rax
140172cb7:	48 8b 40 30          	mov    0x30(%rax),%rax
140172cbb:	ff 15 5f b9 08 00    	call   *0x8b95f(%rip)        # 0x1401fe620
140172cc1:	66 44 3b f8          	cmp    %ax,%r15w
140172cc5:	74 06                	je     0x140172ccd
140172cc7:	66 89 47 0a          	mov    %ax,0xa(%rdi)
140172ccb:	eb 07                	jmp    0x140172cd4
140172ccd:	48 89 1f             	mov    %rbx,(%rdi)
140172cd0:	0f b7 47 0a          	movzwl 0xa(%rdi),%eax
140172cd4:	c6 47 08 01          	movb   $0x1,0x8(%rdi)
140172cd8:	66 3b 45 ff          	cmp    -0x1(%rbp),%ax
140172cdc:	75 4f                	jne    0x140172d2d
140172cde:	48 8b 0f             	mov    (%rdi),%rcx
140172ce1:	48 85 c9             	test   %rcx,%rcx
140172ce4:	74 3d                	je     0x140172d23
140172ce6:	48 8b 41 38          	mov    0x38(%rcx),%rax
140172cea:	48 39 18             	cmp    %rbx,(%rax)
140172ced:	74 1d                	je     0x140172d0c
140172cef:	48 8b 41 50          	mov    0x50(%rcx),%rax
140172cf3:	39 18                	cmp    %ebx,(%rax)
140172cf5:	7e 15                	jle    0x140172d0c
140172cf7:	ff 08                	decl   (%rax)
140172cf9:	48 8b 49 38          	mov    0x38(%rcx),%rcx
140172cfd:	48 8b 11             	mov    (%rcx),%rdx
140172d00:	48 8d 42 02          	lea    0x2(%rdx),%rax
140172d04:	48 89 01             	mov    %rax,(%rcx)
140172d07:	0f b7 02             	movzwl (%rdx),%eax
140172d0a:	eb 0d                	jmp    0x140172d19
140172d0c:	48 8b 01             	mov    (%rcx),%rax
140172d0f:	48 8b 40 38          	mov    0x38(%rax),%rax
140172d13:	ff 15 07 b9 08 00    	call   *0x8b907(%rip)        # 0x1401fe620
140172d19:	66 44 3b f8          	cmp    %ax,%r15w
140172d1d:	74 04                	je     0x140172d23
140172d1f:	8a c3                	mov    %bl,%al
140172d21:	eb 05                	jmp    0x140172d28
140172d23:	48 89 1f             	mov    %rbx,(%rdi)
140172d26:	b0 01                	mov    $0x1,%al
140172d28:	88 47 08             	mov    %al,0x8(%rdi)
140172d2b:	eb 05                	jmp    0x140172d32
140172d2d:	c6 44 24 30 01       	movb   $0x1,0x30(%rsp)
140172d32:	b9 00 03 00 00       	mov    $0x300,%ecx
140172d37:	41 bf 24 00 00 00    	mov    $0x24,%r15d
140172d3d:	48 8b 44 24 68       	mov    0x68(%rsp),%rax
140172d42:	81 38 00 ca 9a 3b    	cmpl   $0x3b9aca00,(%rax)
140172d48:	44 0f 44 f9          	cmove  %ecx,%r15d
140172d4c:	44 89 7c 24 3c       	mov    %r15d,0x3c(%rsp)
140172d51:	48 8d 5d af          	lea    -0x51(%rbp),%rbx
140172d55:	48 83 7d c7 10       	cmpq   $0x10,-0x39(%rbp)
140172d5a:	48 0f 43 5d af       	cmovae -0x51(%rbp),%rbx
140172d5f:	48 89 5c 24 58       	mov    %rbx,0x58(%rsp)
140172d64:	8a 03                	mov    (%rbx),%al
140172d66:	fe c8                	dec    %al
140172d68:	3c 7d                	cmp    $0x7d,%al
140172d6a:	0f 87 92 03 00 00    	ja     0x140173102
140172d70:	33 f6                	xor    %esi,%esi
140172d72:	48 39 75 bf          	cmp    %rsi,-0x41(%rbp)
140172d76:	75 06                	jne    0x140172d7e
140172d78:	44 0f b7 e6          	movzwl %si,%r12d
140172d7c:	eb 15                	jmp    0x140172d93
140172d7e:	49 8b 04 24          	mov    (%r12),%rax
140172d82:	49 8b cc             	mov    %r12,%rcx
140172d85:	48 8b 40 20          	mov    0x20(%rax),%rax
140172d89:	ff 15 91 b8 08 00    	call   *0x8b891(%rip)        # 0x1401fe620
140172d8f:	44 0f b7 e0          	movzwl %ax,%r12d
140172d93:	48 89 75 8f          	mov    %rsi,-0x71(%rbp)
140172d97:	41 bd 0f 00 00 00    	mov    $0xf,%r13d
140172d9d:	4c 89 6d a7          	mov    %r13,-0x59(%rbp)
140172da1:	48 c7 45 9f 01 00 00 	movq   $0x1,-0x61(%rbp)
140172da8:	00
140172da9:	33 c0                	xor    %eax,%eax
140172dab:	66 89 45 8f          	mov    %ax,-0x71(%rbp)
140172daf:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
140172db4:	48 8b cf             	mov    %rdi,%rcx
140172db7:	e8 54 f6 00 00       	call   0x140182410
140172dbc:	45 33 c0             	xor    %r8d,%r8d
140172dbf:	4c 8b 7d 8f          	mov    -0x71(%rbp),%r15
140172dc3:	84 c0                	test   %al,%al
140172dc5:	0f 85 39 02 00 00    	jne    0x140173004
140172dcb:	8a 5c 24 31          	mov    0x31(%rsp),%bl
140172dcf:	44 38 47 08          	cmp    %r8b,0x8(%rdi)
140172dd3:	75 49                	jne    0x140172e1e
140172dd5:	48 8b 0f             	mov    (%rdi),%rcx
140172dd8:	48 85 c9             	test   %rcx,%rcx
140172ddb:	74 3a                	je     0x140172e17
140172ddd:	48 8b 41 38          	mov    0x38(%rcx),%rax
140172de1:	48 8b 10             	mov    (%rax),%rdx
140172de4:	48 85 d2             	test   %rdx,%rdx
140172de7:	74 0e                	je     0x140172df7
140172de9:	48 8b 41 50          	mov    0x50(%rcx),%rax
140172ded:	44 39 00             	cmp    %r8d,(%rax)
140172df0:	7e 05                	jle    0x140172df7
140172df2:	0f b7 02             	movzwl (%rdx),%eax
140172df5:	eb 10                	jmp    0x140172e07
140172df7:	48 8b 01             	mov    (%rcx),%rax
140172dfa:	48 8b 40 30          	mov    0x30(%rax),%rax
140172dfe:	ff 15 1c b8 08 00    	call   *0x8b81c(%rip)        # 0x1401fe620
140172e04:	45 33 c0             	xor    %r8d,%r8d
140172e07:	b9 ff ff 00 00       	mov    $0xffff,%ecx
140172e0c:	66 3b c8             	cmp    %ax,%cx
140172e0f:	74 06                	je     0x140172e17
140172e11:	66 89 47 0a          	mov    %ax,0xa(%rdi)
140172e15:	eb 03                	jmp    0x140172e1a
140172e17:	4c 89 07             	mov    %r8,(%rdi)
140172e1a:	c6 47 08 01          	movb   $0x1,0x8(%rdi)
140172e1e:	0f b7 4f 0a          	movzwl 0xa(%rdi),%ecx
140172e22:	48 8d 45 cf          	lea    -0x31(%rbp),%rax
140172e26:	66 39 08             	cmp    %cx,(%rax)
140172e29:	74 0d                	je     0x140172e38
140172e2b:	48 83 c0 02          	add    $0x2,%rax
140172e2f:	48 8d 55 07          	lea    0x7(%rbp),%rdx
140172e33:	48 3b c2             	cmp    %rdx,%rax
140172e36:	75 ee                	jne    0x140172e26
140172e38:	48 8d 4d cf          	lea    -0x31(%rbp),%rcx
140172e3c:	48 2b c1             	sub    %rcx,%rax
140172e3f:	48 d1 f8             	sar    $1,%rax
140172e42:	48 83 f8 16          	cmp    $0x16,%rax
140172e46:	73 64                	jae    0x140172eac
140172e48:	c6 44 24 30 01       	movb   $0x1,0x30(%rsp)
140172e4d:	8b 4c 24 38          	mov    0x38(%rsp),%ecx
140172e51:	39 4c 24 3c          	cmp    %ecx,0x3c(%rsp)
140172e55:	7f 06                	jg     0x140172e5d
140172e57:	ff 44 24 34          	incl   0x34(%rsp)
140172e5b:	eb 24                	jmp    0x140172e81
140172e5d:	48 85 c0             	test   %rax,%rax
140172e60:	75 04                	jne    0x140172e66
140172e62:	85 c9                	test   %ecx,%ecx
140172e64:	74 1b                	je     0x140172e81
140172e66:	48 8d 15 43 d8 0a 00 	lea    0xad843(%rip),%rdx        # 0x1402206b0
140172e6d:	8a 04 10             	mov    (%rax,%rdx,1),%al
140172e70:	41 88 06             	mov    %al,(%r14)
140172e73:	49 ff c6             	inc    %r14
140172e76:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
140172e7b:	ff c1                	inc    %ecx
140172e7d:	89 4c 24 38          	mov    %ecx,0x38(%rsp)
140172e81:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
140172e85:	49 83 fd 10          	cmp    $0x10,%r13
140172e89:	0f 93 c1             	setae  %cl
140172e8c:	49 0f 43 c7          	cmovae %r15,%rax
140172e90:	80 3c 30 7f          	cmpb   $0x7f,(%rax,%rsi,1)
140172e94:	0f 84 d9 00 00 00    	je     0x140172f73
140172e9a:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
140172e9e:	84 c9                	test   %cl,%cl
140172ea0:	49 0f 45 c7          	cmovne %r15,%rax
140172ea4:	fe 04 30             	incb   (%rax,%rsi,1)
140172ea7:	e9 bf 00 00 00       	jmp    0x140172f6b
140172eac:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
140172eb0:	49 83 fd 10          	cmp    $0x10,%r13
140172eb4:	41 0f 93 c6          	setae  %r14b
140172eb8:	49 0f 43 c7          	cmovae %r15,%rax
140172ebc:	44 38 04 30          	cmp    %r8b,(%rax,%rsi,1)
140172ec0:	0f 84 1b 01 00 00    	je     0x140172fe1
140172ec6:	66 45 85 e4          	test   %r12w,%r12w
140172eca:	0f 84 11 01 00 00    	je     0x140172fe1
140172ed0:	44 38 47 08          	cmp    %r8b,0x8(%rdi)
140172ed4:	75 49                	jne    0x140172f1f
140172ed6:	48 8b 0f             	mov    (%rdi),%rcx
140172ed9:	48 85 c9             	test   %rcx,%rcx
140172edc:	74 3a                	je     0x140172f18
140172ede:	48 8b 41 38          	mov    0x38(%rcx),%rax
140172ee2:	48 8b 10             	mov    (%rax),%rdx
140172ee5:	48 85 d2             	test   %rdx,%rdx
140172ee8:	74 0e                	je     0x140172ef8
140172eea:	48 8b 41 50          	mov    0x50(%rcx),%rax
140172eee:	44 39 00             	cmp    %r8d,(%rax)
140172ef1:	7e 05                	jle    0x140172ef8
140172ef3:	0f b7 02             	movzwl (%rdx),%eax
140172ef6:	eb 10                	jmp    0x140172f08
140172ef8:	48 8b 01             	mov    (%rcx),%rax
140172efb:	48 8b 40 30          	mov    0x30(%rax),%rax
140172eff:	ff 15 1b b7 08 00    	call   *0x8b71b(%rip)        # 0x1401fe620
140172f05:	45 33 c0             	xor    %r8d,%r8d
140172f08:	b9 ff ff 00 00       	mov    $0xffff,%ecx
140172f0d:	66 3b c8             	cmp    %ax,%cx
140172f10:	74 06                	je     0x140172f18
140172f12:	66 89 47 0a          	mov    %ax,0xa(%rdi)
140172f16:	eb 03                	jmp    0x140172f1b
140172f18:	4c 89 07             	mov    %r8,(%rdi)
140172f1b:	c6 47 08 01          	movb   $0x1,0x8(%rdi)
140172f1f:	66 44 39 67 0a       	cmp    %r12w,0xa(%rdi)
140172f24:	0f 85 b7 00 00 00    	jne    0x140172fe1
140172f2a:	48 8b 4d 9f          	mov    -0x61(%rbp),%rcx
140172f2e:	49 3b cd             	cmp    %r13,%rcx
140172f31:	73 1a                	jae    0x140172f4d
140172f33:	48 8d 41 01          	lea    0x1(%rcx),%rax
140172f37:	48 89 45 9f          	mov    %rax,-0x61(%rbp)
140172f3b:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
140172f3f:	45 84 f6             	test   %r14b,%r14b
140172f42:	49 0f 45 c7          	cmovne %r15,%rax
140172f46:	66 83 24 08 00       	andw   $0x0,(%rax,%rcx,1)
140172f4b:	eb 16                	jmp    0x140172f63
140172f4d:	45 33 c9             	xor    %r9d,%r9d
140172f50:	44 8a c3             	mov    %bl,%r8b
140172f53:	41 8d 51 01          	lea    0x1(%r9),%edx
140172f57:	48 8d 4d 8f          	lea    -0x71(%rbp),%rcx
140172f5b:	e8 c8 5d ff ff       	call   0x140168d28
140172f60:	45 33 c0             	xor    %r8d,%r8d
140172f63:	48 ff c6             	inc    %rsi
140172f66:	4c 8b 74 24 48       	mov    0x48(%rsp),%r14
140172f6b:	4c 8b 7d 8f          	mov    -0x71(%rbp),%r15
140172f6f:	4c 8b 6d a7          	mov    -0x59(%rbp),%r13
140172f73:	48 8b 0f             	mov    (%rdi),%rcx
140172f76:	48 85 c9             	test   %rcx,%rcx
140172f79:	74 46                	je     0x140172fc1
140172f7b:	48 8b 41 38          	mov    0x38(%rcx),%rax
140172f7f:	4c 39 00             	cmp    %r8,(%rax)
140172f82:	74 1e                	je     0x140172fa2
140172f84:	48 8b 41 50          	mov    0x50(%rcx),%rax
140172f88:	44 39 00             	cmp    %r8d,(%rax)
140172f8b:	7e 15                	jle    0x140172fa2
140172f8d:	ff 08                	decl   (%rax)
140172f8f:	48 8b 49 38          	mov    0x38(%rcx),%rcx
140172f93:	48 8b 11             	mov    (%rcx),%rdx
140172f96:	48 8d 42 02          	lea    0x2(%rdx),%rax
140172f9a:	48 89 01             	mov    %rax,(%rcx)
140172f9d:	0f b7 02             	movzwl (%rdx),%eax
140172fa0:	eb 10                	jmp    0x140172fb2
140172fa2:	48 8b 01             	mov    (%rcx),%rax
140172fa5:	48 8b 40 38          	mov    0x38(%rax),%rax
140172fa9:	ff 15 71 b6 08 00    	call   *0x8b671(%rip)        # 0x1401fe620
140172faf:	45 33 c0             	xor    %r8d,%r8d
140172fb2:	b9 ff ff 00 00       	mov    $0xffff,%ecx
140172fb7:	66 3b c8             	cmp    %ax,%cx
140172fba:	74 05                	je     0x140172fc1
140172fbc:	41 8a c0             	mov    %r8b,%al
140172fbf:	eb 05                	jmp    0x140172fc6
140172fc1:	4c 89 07             	mov    %r8,(%rdi)
140172fc4:	b0 01                	mov    $0x1,%al
140172fc6:	88 47 08             	mov    %al,0x8(%rdi)
140172fc9:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
140172fce:	48 8b cf             	mov    %rdi,%rcx
140172fd1:	e8 3a f4 00 00       	call   0x140182410
140172fd6:	45 33 c0             	xor    %r8d,%r8d
140172fd9:	84 c0                	test   %al,%al
140172fdb:	0f 84 ee fd ff ff    	je     0x140172dcf
140172fe1:	33 db                	xor    %ebx,%ebx
140172fe3:	48 85 f6             	test   %rsi,%rsi
140172fe6:	74 14                	je     0x140172ffc
140172fe8:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
140172fec:	49 83 fd 10          	cmp    $0x10,%r13
140172ff0:	49 0f 43 c7          	cmovae %r15,%rax
140172ff4:	38 1c 30             	cmp    %bl,(%rax,%rsi,1)
140172ff7:	7e 4e                	jle    0x140173047
140172ff9:	48 ff c6             	inc    %rsi
140172ffc:	45 33 c0             	xor    %r8d,%r8d
140172fff:	48 8b 5c 24 58       	mov    0x58(%rsp),%rbx
140173004:	48 85 f6             	test   %rsi,%rsi
140173007:	74 4a                	je     0x140173053
140173009:	8a 0b                	mov    (%rbx),%cl
14017300b:	80 f9 7f             	cmp    $0x7f,%cl
14017300e:	74 43                	je     0x140173053
140173010:	48 83 ee 01          	sub    $0x1,%rsi
140173014:	74 11                	je     0x140173027
140173016:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
14017301a:	49 83 fd 10          	cmp    $0x10,%r13
14017301e:	49 0f 43 c7          	cmovae %r15,%rax
140173022:	3a 0c 30             	cmp    (%rax,%rsi,1),%cl
140173025:	75 27                	jne    0x14017304e
140173027:	48 85 f6             	test   %rsi,%rsi
14017302a:	75 10                	jne    0x14017303c
14017302c:	48 8d 45 8f          	lea    -0x71(%rbp),%rax
140173030:	49 83 fd 10          	cmp    $0x10,%r13
140173034:	49 0f 43 c7          	cmovae %r15,%rax
140173038:	3a 08                	cmp    (%rax),%cl
14017303a:	7c 12                	jl     0x14017304e
14017303c:	44 38 43 01          	cmp    %r8b,0x1(%rbx)
140173040:	7e c2                	jle    0x140173004
140173042:	48 ff c3             	inc    %rbx
140173045:	eb bd                	jmp    0x140173004
140173047:	c6 44 24 31 01       	movb   $0x1,0x31(%rsp)
14017304c:	eb 07                	jmp    0x140173055
14017304e:	c6 44 24 31 01       	movb   $0x1,0x31(%rsp)
140173053:	33 db                	xor    %ebx,%ebx
140173055:	49 83 fd 10          	cmp    $0x10,%r13
140173059:	72 31                	jb     0x14017308c
14017305b:	49 8d 55 01          	lea    0x1(%r13),%rdx
14017305f:	49 8b c7             	mov    %r15,%rax
140173062:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
140173069:	72 19                	jb     0x140173084
14017306b:	48 83 c2 27          	add    $0x27,%rdx
14017306f:	4d 8b 7f f8          	mov    -0x8(%r15),%r15
140173073:	49 2b c7             	sub    %r15,%rax
140173076:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14017307a:	48 83 f8 1f          	cmp    $0x1f,%rax
14017307e:	0f 87 2c 09 00 00    	ja     0x1401739b0
140173084:	49 8b cf             	mov    %r15,%rcx
140173087:	e8 c0 35 01 00       	call   0x14018664c
14017308c:	44 8b 7c 24 3c       	mov    0x3c(%rsp),%r15d
140173091:	8b 74 24 38          	mov    0x38(%rsp),%esi
140173095:	4c 8b 74 24 48       	mov    0x48(%rsp),%r14
14017309a:	4c 8b 64 24 50       	mov    0x50(%rsp),%r12
14017309f:	44 8a 6c 24 30       	mov    0x30(%rsp),%r13b
1401730a4:	45 84 ed             	test   %r13b,%r13b
1401730a7:	74 0b                	je     0x1401730b4
1401730a9:	85 f6                	test   %esi,%esi
1401730ab:	75 07                	jne    0x1401730b4
1401730ad:	41 c6 06 30          	movb   $0x30,(%r14)
1401730b1:	49 ff c6             	inc    %r14
1401730b4:	48 8b 54 24 40       	mov    0x40(%rsp),%rdx
1401730b9:	48 8b cf             	mov    %rdi,%rcx
1401730bc:	e8 4f f3 00 00       	call   0x140182410
1401730c1:	84 c0                	test   %al,%al
1401730c3:	0f 85 06 02 00 00    	jne    0x1401732cf
1401730c9:	38 5f 08             	cmp    %bl,0x8(%rdi)
1401730cc:	0f 85 7c 01 00 00    	jne    0x14017324e
1401730d2:	48 8b 0f             	mov    (%rdi),%rcx
1401730d5:	48 85 c9             	test   %rcx,%rcx
1401730d8:	0f 84 69 01 00 00    	je     0x140173247
1401730de:	48 8b 41 38          	mov    0x38(%rcx),%rax
1401730e2:	48 8b 10             	mov    (%rax),%rdx
1401730e5:	48 85 d2             	test   %rdx,%rdx
1401730e8:	0f 84 3c 01 00 00    	je     0x14017322a
1401730ee:	48 8b 41 50          	mov    0x50(%rcx),%rax
1401730f2:	39 18                	cmp    %ebx,(%rax)
1401730f4:	0f 8e 30 01 00 00    	jle    0x14017322a
1401730fa:	0f b7 02             	movzwl (%rdx),%eax
1401730fd:	e9 35 01 00 00       	jmp    0x140173237
140173102:	49 8b d5             	mov    %r13,%rdx
140173105:	48 8b cf             	mov    %rdi,%rcx
140173108:	e8 03 f3 00 00       	call   0x140182410
14017310d:	33 db                	xor    %ebx,%ebx
14017310f:	84 c0                	test   %al,%al
140173111:	75 8c                	jne    0x14017309f
140173113:	44 8b e6             	mov    %esi,%r12d
140173116:	38 5f 08             	cmp    %bl,0x8(%rdi)
140173119:	75 45                	jne    0x140173160
14017311b:	48 8b 0f             	mov    (%rdi),%rcx
14017311e:	48 85 c9             	test   %rcx,%rcx
140173121:	74 36                	je     0x140173159
140173123:	48 8b 41 38          	mov    0x38(%rcx),%rax
140173127:	48 8b 10             	mov    (%rax),%rdx
14017312a:	48 85 d2             	test   %rdx,%rdx
14017312d:	74 0d                	je     0x14017313c
14017312f:	48 8b 41 50          	mov    0x50(%rcx),%rax
140173133:	39 18                	cmp    %ebx,(%rax)
140173135:	7e 05                	jle    0x14017313c
140173137:	0f b7 02             	movzwl (%rdx),%eax
14017313a:	eb 0d                	jmp    0x140173149