10040a80c:	4c 01 f5             	add    %r14,%rbp
10040a80f:	8b 45 00             	mov    0x0(%rbp),%eax
10040a812:	85 c0                	test   %eax,%eax
10040a814:	0f 85 26 04 00 00    	jne    10040ac40 <.text+0x9c40>
10040a81a:	8b 44 24 48          	mov    0x48(%rsp),%eax
10040a81e:	89 45 00             	mov    %eax,0x0(%rbp)
10040a821:	40 88 77 48          	mov    %sil,0x48(%rdi)
10040a825:	49 8b 04 24          	mov    (%r12),%rax
10040a829:	48 89 5f 08          	mov    %rbx,0x8(%rdi)
10040a82d:	48 8d 78 01          	lea    0x1(%rax),%rdi
10040a831:	49 89 3c 24          	mov    %rdi,(%r12)
10040a835:	49 39 f9             	cmp    %rdi,%r9
10040a838:	76 0e                	jbe    10040a848 <.text+0x9848>
10040a83a:	49 8b 4c 24 08       	mov    0x8(%r12),%rcx
10040a83f:	e9 85 fb ff ff       	jmp    10040a3c9 <.text+0x93c9>
10040a844:	0f 1f 40 00          	nopl   0x0(%rax)
10040a848:	4d 85 c9             	test   %r9,%r9
10040a84b:	0f 88 b5 03 00 00    	js     10040ac06 <.text+0x9c06>
10040a851:	48 b8 ba e8 a2 8b 2e 	movabs $0x2e8ba2e8ba2e8ba,%rax
10040a858:	ba e8 02
10040a85b:	4b 8d 34 09          	lea    (%r9,%r9,1),%rsi
10040a85f:	48 39 c6             	cmp    %rax,%rsi
10040a862:	0f 87 9e 03 00 00    	ja     10040ac06 <.text+0x9c06>
10040a868:	4b 8d 04 89          	lea    (%r9,%r9,4),%rax
10040a86c:	4d 8b 74 24 08       	mov    0x8(%r12),%r14
10040a871:	4c 89 5c 24 48       	mov    %r11,0x48(%rsp)
10040a876:	49 8d 14 41          	lea    (%r9,%rax,2),%rdx
10040a87a:	48 c1 e2 04          	shl    $0x4,%rdx
10040a87e:	4c 39 74 24 40       	cmp    %r14,0x40(%rsp)
10040a883:	0f 84 5c 01 00 00    	je     10040a9e5 <.text+0x99e5>
10040a889:	4c 89 f1             	mov    %r14,%rcx
10040a88c:	e8 7f 0a 00 00       	call   10040b310 <.text+0xa310>
10040a891:	4c 8b 5c 24 48       	mov    0x48(%rsp),%r11
10040a896:	48 85 c0             	test   %rax,%rax
10040a899:	48 89 c1             	mov    %rax,%rcx
10040a89c:	0f 84 64 03 00 00    	je     10040ac06 <.text+0x9c06>
10040a8a2:	4d 8b 74 24 08       	mov    0x8(%r12),%r14
10040a8a7:	4c 39 74 24 40       	cmp    %r14,0x40(%rsp)
10040a8ac:	0f 84 4b 07 00 00    	je     10040affd <.text+0x9ffd>
10040a8b2:	49 89 4c 24 08       	mov    %rcx,0x8(%r12)
10040a8b7:	49 8b 3c 24          	mov    (%r12),%rdi
10040a8bb:	49 89 f1             	mov    %rsi,%r9
10040a8be:	e9 06 fb ff ff       	jmp    10040a3c9 <.text+0x93c9>
10040a8c3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
10040a8c8:	48 89 da             	mov    %rbx,%rdx
10040a8cb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
10040a8d0:	0f b6 4a 01          	movzbl 0x1(%rdx),%ecx
10040a8d4:	48 83 c2 01          	add    $0x1,%rdx
10040a8d8:	44 8d 41 d0          	lea    -0x30(%rcx),%r8d
10040a8dc:	41 80 f8 09          	cmp    $0x9,%r8b
10040a8e0:	76 ee                	jbe    10040a8d0 <.text+0x98d0>
10040a8e2:	48 c7 c5 ff ff ff ff 	mov    $0xffffffffffffffff,%rbp
10040a8e9:	80 f9 24             	cmp    $0x24,%cl
10040a8ec:	0f 85 83 fb ff ff    	jne    10040a475 <.text+0x9475>
10040a8f2:	45 31 d2             	xor    %r10d,%r10d
10040a8f5:	48 83 c0 02          	add    $0x2,%rax
10040a8f9:	49 b8 99 99 99 99 99 	movabs $0x1999999999999999,%r8
10040a900:	99 99 19
10040a903:	4c 89 d3             	mov    %r10,%rbx
10040a906:	eb 15                	jmp    10040a91d <.text+0x991d>
10040a908:	0f 1f 84 00 00 00 00 	nopl   0x0(%rax,%rax,1)
10040a90f:	00
10040a910:	80 fa 09             	cmp    $0x9,%dl
10040a913:	0f 87 11 06 00 00    	ja     10040af2a <.text+0x9f2a>
10040a919:	48 83 c0 01          	add    $0x1,%rax
10040a91d:	8d 56 d0             	lea    -0x30(%rsi),%edx
10040a920:	48 8d 48 ff          	lea    -0x1(%rax),%rcx
10040a924:	48 0f be d2          	movsbq %dl,%rdx
10040a928:	4c 39 c3             	cmp    %r8,%rbx
10040a92b:	0f 87 ed 05 00 00    	ja     10040af1e <.text+0x9f1e>
10040a931:	4c 8d 14 9b          	lea    (%rbx,%rbx,4),%r10
10040a935:	4d 01 d2             	add    %r10,%r10
10040a938:	0f b6 30             	movzbl (%rax),%esi
10040a93b:	49 01 d2             	add    %rdx,%r10
10040a93e:	4c 89 d3             	mov    %r10,%rbx
10040a941:	8d 56 d0             	lea    -0x30(%rsi),%edx
10040a944:	73 ca                	jae    10040a910 <.text+0x9910>
10040a946:	80 fa 09             	cmp    $0x9,%dl
10040a949:	77 15                	ja     10040a960 <.text+0x9960>
10040a94b:	48 89 c1             	mov    %rax,%rcx
10040a94e:	48 0f be d2          	movsbq %dl,%rdx
10040a952:	48 83 c0 01          	add    $0x1,%rax
10040a956:	49 c7 c2 ff ff ff ff 	mov    $0xffffffffffffffff,%r10
10040a95d:	eb d9                	jmp    10040a938 <.text+0x9938>
10040a95f:	90                   	nop
10040a960:	4d 8b 75 08          	mov    0x8(%r13),%r14
10040a964:	4d 39 f3             	cmp    %r14,%r11
10040a967:	74 08                	je     10040a971 <.text+0x9971>
10040a969:	4c 89 f1             	mov    %r14,%rcx
10040a96c:	e8 6f 08 00 00       	call   10040b1e0 <.text+0xa1e0>
10040a971:	49 8b 4c 24 08       	mov    0x8(%r12),%rcx
10040a976:	48 39 4c 24 40       	cmp    %rcx,0x40(%rsp)
10040a97b:	74 05                	je     10040a982 <.text+0x9982>
10040a97d:	e8 5e 08 00 00       	call   10040b1e0 <.text+0xa1e0>
10040a982:	e8 29 07 00 00       	call   10040b0b0 <.text+0xa0b0>
10040a987:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
10040a98d:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
10040a992:	e9 5e fa ff ff       	jmp    10040a3f5 <.text+0x93f5>
10040a997:	48 89 5f 30          	mov    %rbx,0x30(%rdi)
10040a99b:	0f b6 43 01          	movzbl 0x1(%rbx),%eax
10040a99f:	48 8d 53 01          	lea    0x1(%rbx),%rdx
10040a9a3:	83 e8 30             	sub    $0x30,%eax
10040a9a6:	3c 09                	cmp    $0x9,%al
10040a9a8:	0f 87 e4 05 00 00    	ja     10040af92 <.text+0x9f92>
10040a9ae:	66 90                	xchg   %ax,%ax
10040a9b0:	0f b6 42 01          	movzbl 0x1(%rdx),%eax
10040a9b4:	48 83 c2 01          	add    $0x1,%rdx
10040a9b8:	83 e8 30             	sub    $0x30,%eax
10040a9bb:	3c 09                	cmp    $0x9,%al
10040a9bd:	76 f1                	jbe    10040a9b0 <.text+0x99b0>
10040a9bf:	48 89 d0             	mov    %rdx,%rax
10040a9c2:	48 29 d8             	sub    %rbx,%rax
10040a9c5:	48 89 d3             	mov    %rdx,%rbx
10040a9c8:	48 8b 74 24 30       	mov    0x30(%rsp),%rsi
10040a9cd:	48 89 57 38          	mov    %rdx,0x38(%rdi)
10040a9d1:	48 39 c6             	cmp    %rax,%rsi
10040a9d4:	48 0f 43 c6          	cmovae %rsi,%rax
10040a9d8:	0f b6 32             	movzbl (%rdx),%esi
10040a9db:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
10040a9e0:	e9 e2 fa ff ff       	jmp    10040a4c7 <.text+0x94c7>
10040a9e5:	48 89 d1             	mov    %rdx,%rcx
10040a9e8:	e8 63 08 00 00       	call   10040b250 <.text+0xa250>
10040a9ed:	4c 8b 5c 24 48       	mov    0x48(%rsp),%r11
10040a9f2:	48 85 c0             	test   %rax,%rax
10040a9f5:	48 89 c1             	mov    %rax,%rcx
10040a9f8:	0f 84 13 06 00 00    	je     10040b011 <.text+0xa011>
10040a9fe:	48 8d 04 bf          	lea    (%rdi,%rdi,4),%rax
10040aa02:	4c 89 f2             	mov    %r14,%rdx
10040aa05:	4c 89 5c 24 48       	mov    %r11,0x48(%rsp)
10040aa0a:	4c 8d 04 47          	lea    (%rdi,%rax,2),%r8
10040aa0e:	49 c1 e0 03          	shl    $0x3,%r8
10040aa12:	e8 79 08 00 00       	call   10040b290 <.text+0xa290>
10040aa17:	4c 8b 5c 24 48       	mov    0x48(%rsp),%r11
10040aa1c:	48 89 c1             	mov    %rax,%rcx
10040aa1f:	e9 8e fe ff ff       	jmp    10040a8b2 <.text+0x98b2>
10040aa24:	48 89 d0             	mov    %rdx,%rax
10040aa27:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
10040aa2e:	00 00
10040aa30:	44 0f b6 40 01       	movzbl 0x1(%rax),%r8d
10040aa35:	48 83 c0 01          	add    $0x1,%rax
10040aa39:	45 8d 50 d0          	lea    -0x30(%r8),%r10d
10040aa3d:	41 80 fa 09          	cmp    $0x9,%r10b
10040aa41:	76 ed                	jbe    10040aa30 <.text+0x9a30>
10040aa43:	41 80 f8 24          	cmp    $0x24,%r8b
10040aa47:	0f 85 98 fb ff ff    	jne    10040a5e5 <.text+0x95e5>
10040aa4d:	48 8d 53 02          	lea    0x2(%rbx),%rdx
10040aa51:	45 31 d2             	xor    %r10d,%r10d
10040aa54:	49 b8 99 99 99 99 99 	movabs $0x1999999999999999,%r8
10040aa5b:	99 99 19
10040aa5e:	eb 0c                	jmp    10040aa6c <.text+0x9a6c>
10040aa60:	3c 09                	cmp    $0x9,%al
10040aa62:	0f 87 43 05 00 00    	ja     10040afab <.text+0x9fab>
10040aa68:	48 83 c2 01          	add    $0x1,%rdx
10040aa6c:	8d 41 d0             	lea    -0x30(%rcx),%eax
10040aa6f:	48 8d 5a ff          	lea    -0x1(%rdx),%rbx
10040aa73:	48 0f be c0          	movsbq %al,%rax
10040aa77:	4d 39 c2             	cmp    %r8,%r10
10040aa7a:	0f 87 1f 05 00 00    	ja     10040af9f <.text+0x9f9f>
10040aa80:	4b 8d 0c 92          	lea    (%r10,%r10,4),%rcx
10040aa84:	48 01 c9             	add    %rcx,%rcx
10040aa87:	48 89 ce             	mov    %rcx,%rsi
10040aa8a:	0f b6 0a             	movzbl (%rdx),%ecx
10040aa8d:	48 01 c6             	add    %rax,%rsi
10040aa90:	49 89 f2             	mov    %rsi,%r10
10040aa93:	8d 41 d0             	lea    -0x30(%rcx),%eax
10040aa96:	73 c8                	jae    10040aa60 <.text+0x9a60>
10040aa98:	3c 09                	cmp    $0x9,%al
10040aa9a:	0f 87 c0 fe ff ff    	ja     10040a960 <.text+0x9960>
10040aaa0:	48 89 d3             	mov    %rdx,%rbx
10040aaa3:	48 0f be c0          	movsbq %al,%rax
10040aaa7:	48 83 c2 01          	add    $0x1,%rdx
10040aaab:	48 c7 c1 ff ff ff ff 	mov    $0xffffffffffffffff,%rcx
10040aab2:	eb d3                	jmp    10040aa87 <.text+0x9a87>
10040aab4:	c7 44 24 48 0c 00 00 	movl   $0xc,0x48(%rsp)
10040aabb:	00
10040aabc:	83 fa 0f             	cmp    $0xf,%edx
10040aabf:	0f 8f eb fc ff ff    	jg     10040a7b0 <.text+0x97b0>
10040aac5:	31 c0                	xor    %eax,%eax
10040aac7:	83 e2 04             	and    $0x4,%edx
10040aaca:	0f 95 c0             	setne  %al
10040aacd:	83 c0 0b             	add    $0xb,%eax
10040aad0:	89 44 24 48          	mov    %eax,0x48(%rsp)
10040aad4:	e9 d7 fc ff ff       	jmp    10040a7b0 <.text+0x97b0>
10040aad9:	c7 44 24 48 0a 00 00 	movl   $0xa,0x48(%rsp)
10040aae0:	00
10040aae1:	83 fa 0f             	cmp    $0xf,%edx
10040aae4:	0f 8f c6 fc ff ff    	jg     10040a7b0 <.text+0x97b0>
10040aaea:	f6 c2 04             	test   $0x4,%dl
10040aaed:	0f 85 bd fc ff ff    	jne    10040a7b0 <.text+0x97b0>
10040aaf3:	c7 44 24 48 08 00 00 	movl   $0x8,0x48(%rsp)
10040aafa:	00
10040aafb:	83 fa 07             	cmp    $0x7,%edx
10040aafe:	0f 8f ac fc ff ff    	jg     10040a7b0 <.text+0x97b0>
10040ab04:	c7 44 24 48 02 00 00 	movl   $0x2,0x48(%rsp)
10040ab0b:	00
10040ab0c:	f6 c2 02             	test   $0x2,%dl
10040ab0f:	0f 85 9b fc ff ff    	jne    10040a7b0 <.text+0x97b0>
10040ab15:	83 e2 01             	and    $0x1,%edx
10040ab18:	83 fa 01             	cmp    $0x1,%edx
10040ab1b:	19 c0                	sbb    %eax,%eax
10040ab1d:	83 e0 02             	and    $0x2,%eax
10040ab20:	83 c0 04             	add    $0x4,%eax
10040ab23:	89 44 24 48          	mov    %eax,0x48(%rsp)
10040ab27:	e9 84 fc ff ff       	jmp    10040a7b0 <.text+0x97b0>
10040ab2c:	0f 1f 40 00          	nopl   0x0(%rax)
10040ab30:	c7 44 24 48 09 00 00 	movl   $0x9,0x48(%rsp)
10040ab37:	00
10040ab38:	83 fa 0f             	cmp    $0xf,%edx
10040ab3b:	0f 8f 6f fc ff ff    	jg     10040a7b0 <.text+0x97b0>
10040ab41:	f6 c2 04             	test   $0x4,%dl
10040ab44:	0f 85 66 fc ff ff    	jne    10040a7b0 <.text+0x97b0>
10040ab4a:	c7 44 24 48 07 00 00 	movl   $0x7,0x48(%rsp)
10040ab51:	00
10040ab52:	83 fa 07             	cmp    $0x7,%edx
10040ab55:	0f 8f 55 fc ff ff    	jg     10040a7b0 <.text+0x97b0>
10040ab5b:	c7 44 24 48 01 00 00 	movl   $0x1,0x48(%rsp)
10040ab62:	00
10040ab63:	f6 c2 02             	test   $0x2,%dl
10040ab66:	0f 85 44 fc ff ff    	jne    10040a7b0 <.text+0x97b0>
10040ab6c:	83 e2 01             	and    $0x1,%edx
10040ab6f:	83 fa 01             	cmp    $0x1,%edx
10040ab72:	19 c0                	sbb    %eax,%eax
10040ab74:	83 e0 02             	and    $0x2,%eax
10040ab77:	83 c0 03             	add    $0x3,%eax
10040ab7a:	89 44 24 48          	mov    %eax,0x48(%rsp)
10040ab7e:	e9 2d fc ff ff       	jmp    10040a7b0 <.text+0x97b0>
10040ab83:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
10040ab88:	c7 44 24 48 16 00 00 	movl   $0x16,0x48(%rsp)
10040ab8f:	00
10040ab90:	83 fa 0f             	cmp    $0xf,%edx
10040ab93:	0f 8f 17 fc ff ff    	jg     10040a7b0 <.text+0x97b0>
10040ab99:	f6 c2 04             	test   $0x4,%dl
10040ab9c:	0f 85 0e fc ff ff    	jne    10040a7b0 <.text+0x97b0>
10040aba2:	c7 44 24 48 15 00 00 	movl   $0x15,0x48(%rsp)
10040aba9:	00
10040abaa:	83 fa 07             	cmp    $0x7,%edx
10040abad:	0f 8f fd fb ff ff    	jg     10040a7b0 <.text+0x97b0>
10040abb3:	c7 44 24 48 12 00 00 	movl   $0x12,0x48(%rsp)
10040abba:	00
10040abbb:	f6 c2 02             	test   $0x2,%dl
10040abbe:	0f 85 ec fb ff ff    	jne    10040a7b0 <.text+0x97b0>
10040abc4:	83 e2 01             	and    $0x1,%edx
10040abc7:	b8 14 00 00 00       	mov    $0x14,%eax
10040abcc:	29 d0                	sub    %edx,%eax
10040abce:	89 44 24 48          	mov    %eax,0x48(%rsp)
10040abd2:	e9 d9 fb ff ff       	jmp    10040a7b0 <.text+0x97b0>
10040abd7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
10040abde:	00 00
10040abe0:	31 c0                	xor    %eax,%eax
10040abe2:	83 fa 07             	cmp    $0x7,%edx
10040abe5:	0f 9f c0             	setg   %al
10040abe8:	83 c0 0d             	add    $0xd,%eax
10040abeb:	89 44 24 48          	mov    %eax,0x48(%rsp)
10040abef:	e9 bc fb ff ff       	jmp    10040a7b0 <.text+0x97b0>
10040abf4:	c7 44 24 48 0e 00 00 	movl   $0xe,0x48(%rsp)
10040abfb:	00
10040abfc:	be 63 00 00 00       	mov    $0x63,%esi
10040ac01:	e9 aa fb ff ff       	jmp    10040a7b0 <.text+0x97b0>
10040ac06:	4d 8b 55 08          	mov    0x8(%r13),%r10
10040ac0a:	4d 39 d3             	cmp    %r10,%r11
10040ac0d:	74 08                	je     10040ac17 <.text+0x9c17>
10040ac0f:	4c 89 d1             	mov    %r10,%rcx
10040ac12:	e8 c9 05 00 00       	call   10040b1e0 <.text+0xa1e0>
10040ac17:	49 8b 4c 24 08       	mov    0x8(%r12),%rcx
10040ac1c:	48 39 4c 24 40       	cmp    %rcx,0x40(%rsp)
10040ac21:	74 05                	je     10040ac28 <.text+0x9c28>
10040ac23:	e8 b8 05 00 00       	call   10040b1e0 <.text+0xa1e0>
10040ac28:	e8 83 04 00 00       	call   10040b0b0 <.text+0xa0b0>
10040ac2d:	c7 00 0c 00 00 00    	movl   $0xc,(%rax)
10040ac33:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
10040ac38:	e9 b8 f7 ff ff       	jmp    10040a3f5 <.text+0x93f5>
10040ac3d:	0f 1f 00             	nopl   (%rax)
10040ac40:	3b 44 24 48          	cmp    0x48(%rsp),%eax
10040ac44:	0f 84 d7 fb ff ff    	je     10040a821 <.text+0x9821>
10040ac4a:	e9 15 fd ff ff       	jmp    10040a964 <.text+0x9964>
10040ac4f:	90                   	nop
10040ac50:	4d 01 ff             	add    %r15,%r15
10040ac53:	48 8d 45 01          	lea    0x1(%rbp),%rax
10040ac57:	49 39 ef             	cmp    %rbp,%r15
10040ac5a:	4c 0f 46 f8          	cmovbe %rax,%r15
10040ac5e:	4c 89 f8             	mov    %r15,%rax
10040ac61:	48 c1 e8 3b          	shr    $0x3b,%rax
10040ac65:	75 a3                	jne    10040ac0a <.text+0x9c0a>
10040ac67:	4c 89 fa             	mov    %r15,%rdx
10040ac6a:	4c 89 4c 24 58       	mov    %r9,0x58(%rsp)
10040ac6f:	4c 89 5c 24 50       	mov    %r11,0x50(%rsp)
10040ac74:	48 c1 e2 05          	shl    $0x5,%rdx
10040ac78:	4d 39 f3             	cmp    %r14,%r11
10040ac7b:	0f 84 af 00 00 00    	je     10040ad30 <.text+0x9d30>
10040ac81:	4c 89 f1             	mov    %r14,%rcx
10040ac84:	e8 87 06 00 00       	call   10040b310 <.text+0xa310>
10040ac89:	4c 8b 5c 24 50       	mov    0x50(%rsp),%r11
10040ac8e:	4c 8b 4c 24 58       	mov    0x58(%rsp),%r9
10040ac93:	48 85 c0             	test   %rax,%rax
10040ac96:	49 89 c6             	mov    %rax,%r14
10040ac99:	0f 84 67 ff ff ff    	je     10040ac06 <.text+0x9c06>
10040ac9f:	4d 3b 5d 08          	cmp    0x8(%r13),%r11
10040aca3:	0f 84 49 03 00 00    	je     10040aff2 <.text+0x9ff2>
10040aca9:	4d 89 75 08          	mov    %r14,0x8(%r13)
10040acad:	e9 1c fb ff ff       	jmp    10040a7ce <.text+0x97ce>
10040acb2:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
10040acb8:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
10040acbd:	48 89 4f 50          	mov    %rcx,0x50(%rdi)
10040acc1:	48 8d 41 01          	lea    0x1(%rcx),%rax
10040acc5:	48 83 f9 ff          	cmp    $0xffffffffffffffff,%rcx
10040acc9:	0f 84 91 fc ff ff    	je     10040a960 <.text+0x9960>
10040accf:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
10040acd4:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
10040acd9:	e9 e0 fa ff ff       	jmp    10040a7be <.text+0x97be>
10040acde:	48 89 5f 18          	mov    %rbx,0x18(%rdi)
10040ace2:	0f b6 03             	movzbl (%rbx),%eax
10040ace5:	83 e8 30             	sub    $0x30,%eax
10040ace8:	3c 09                	cmp    $0x9,%al
10040acea:	77 2d                	ja     10040ad19 <.text+0x9d19>
10040acec:	48 89 da             	mov    %rbx,%rdx
10040acef:	90                   	nop
10040acf0:	0f b6 42 01          	movzbl 0x1(%rdx),%eax
10040acf4:	48 83 c2 01          	add    $0x1,%rdx
10040acf8:	83 e8 30             	sub    $0x30,%eax
10040acfb:	3c 09                	cmp    $0x9,%al
10040acfd:	76 f1                	jbe    10040acf0 <.text+0x9cf0>
10040acff:	48 8b 74 24 28       	mov    0x28(%rsp),%rsi
10040ad04:	48 89 d0             	mov    %rdx,%rax
10040ad07:	48 29 d8             	sub    %rbx,%rax
10040ad0a:	48 89 d3             	mov    %rdx,%rbx
10040ad0d:	48 39 c6             	cmp    %rax,%rsi
10040ad10:	48 0f 43 c6          	cmovae %rsi,%rax
10040ad14:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
10040ad19:	48 89 5f 20          	mov    %rbx,0x20(%rdi)
10040ad1d:	0f b6 33             	movzbl (%rbx),%esi
10040ad20:	e9 98 f7 ff ff       	jmp    10040a4bd <.text+0x94bd>
10040ad25:	83 f8 05             	cmp    $0x5,%eax
10040ad28:	74 f3                	je     10040ad1d <.text+0x9d1d>
10040ad2a:	e9 35 fc ff ff       	jmp    10040a964 <.text+0x9964>
10040ad2f:	90                   	nop
10040ad30:	48 89 d1             	mov    %rdx,%rcx
10040ad33:	e8 18 05 00 00       	call   10040b250 <.text+0xa250>
10040ad38:	4c 8b 5c 24 50       	mov    0x50(%rsp),%r11
10040ad3d:	4c 8b 4c 24 58       	mov    0x58(%rsp),%r9
10040ad42:	48 85 c0             	test   %rax,%rax
10040ad45:	48 89 c1             	mov    %rax,%rcx
10040ad48:	0f 84 c9 fe ff ff    	je     10040ac17 <.text+0x9c17>
10040ad4e:	4d 8b 45 00          	mov    0x0(%r13),%r8
10040ad52:	4c 89 f2             	mov    %r14,%rdx
10040ad55:	4c 89 4c 24 58       	mov    %r9,0x58(%rsp)
10040ad5a:	4c 89 5c 24 50       	mov    %r11,0x50(%rsp)
10040ad5f:	49 c1 e0 05          	shl    $0x5,%r8
10040ad63:	e8 28 05 00 00       	call   10040b290 <.text+0xa290>
10040ad68:	4c 8b 4c 24 58       	mov    0x58(%rsp),%r9
10040ad6d:	4c 8b 5c 24 50       	mov    0x50(%rsp),%r11