1800497a0:	e8 93 d8 ff ff       	call   0x180047038
1800497a5:	8b c3                	mov    %ebx,%eax
1800497a7:	48 8b 9c 24 10 01 00 	mov    0x110(%rsp),%rbx
1800497ae:	00
1800497af:	48 81 c4 00 01 00 00 	add    $0x100,%rsp
1800497b6:	5d                   	pop    %rbp
1800497b7:	c3                   	ret
1800497b8:	cc                   	int3
1800497b9:	cc                   	int3
1800497ba:	cc                   	int3
1800497bb:	cc                   	int3
1800497bc:	48 8d 41 08          	lea    0x8(%rcx),%rax
1800497c0:	c3                   	ret
1800497c1:	cc                   	int3
1800497c2:	cc                   	int3
1800497c3:	cc                   	int3
1800497c4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
1800497c9:	57                   	push   %rdi
1800497ca:	48 83 ec 20          	sub    $0x20,%rsp
1800497ce:	8b 91 08 01 00 00    	mov    0x108(%rcx),%edx
1800497d4:	48 8b f9             	mov    %rcx,%rdi
1800497d7:	32 db                	xor    %bl,%bl
1800497d9:	e8 46 53 0f 00       	call   0x18013eb24
1800497de:	84 c0                	test   %al,%al
1800497e0:	74 29                	je     0x18004980b
1800497e2:	48 8d 97 18 01 00 00 	lea    0x118(%rdi),%rdx
1800497e9:	48 8b 0a             	mov    (%rdx),%rcx
1800497ec:	48 3b ca             	cmp    %rdx,%rcx
1800497ef:	74 1a                	je     0x18004980b
1800497f1:	48 8b 41 10          	mov    0x10(%rcx),%rax
1800497f5:	38 98 f8 01 00 00    	cmp    %bl,0x1f8(%rax)
1800497fb:	75 07                	jne    0x180049804
1800497fd:	8b 41 20             	mov    0x20(%rcx),%eax
180049800:	a8 01                	test   $0x1,%al
180049802:	74 05                	je     0x180049809
180049804:	48 8b 09             	mov    (%rcx),%rcx
180049807:	eb e3                	jmp    0x1800497ec
180049809:	b3 01                	mov    $0x1,%bl
18004980b:	8a c3                	mov    %bl,%al
18004980d:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
180049812:	48 83 c4 20          	add    $0x20,%rsp
180049816:	5f                   	pop    %rdi
180049817:	c3                   	ret
180049818:	cc                   	int3
180049819:	cc                   	int3
18004981a:	cc                   	int3
18004981b:	cc                   	int3
18004981c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180049821:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
180049826:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
18004982b:	57                   	push   %rdi
18004982c:	48 83 ec 30          	sub    $0x30,%rsp
180049830:	8b 91 08 01 00 00    	mov    0x108(%rcx),%edx
180049836:	48 8b d9             	mov    %rcx,%rbx
180049839:	33 ed                	xor    %ebp,%ebp
18004983b:	e8 e4 52 0f 00       	call   0x18013eb24
180049840:	84 c0                	test   %al,%al
180049842:	0f 84 8c 00 00 00    	je     0x1800498d4
180049848:	48 8d bb 18 01 00 00 	lea    0x118(%rbx),%rdi
18004984f:	48 8b 37             	mov    (%rdi),%rsi
180049852:	eb 31                	jmp    0x180049885
180049854:	48 8b 4e 10          	mov    0x10(%rsi),%rcx
180049858:	8d 45 01             	lea    0x1(%rbp),%eax
18004985b:	f6 81 cc 01 00 00 02 	testb  $0x2,0x1cc(%rcx)
180049862:	0f 44 c5             	cmove  %ebp,%eax
180049865:	80 b9 f8 01 00 00 00 	cmpb   $0x0,0x1f8(%rcx)
18004986c:	8b e8                	mov    %eax,%ebp
18004986e:	75 12                	jne    0x180049882
180049870:	8b 46 20             	mov    0x20(%rsi),%eax
180049873:	a8 01                	test   $0x1,%al
180049875:	75 0b                	jne    0x180049882
180049877:	48 8b d6             	mov    %rsi,%rdx
18004987a:	48 8b cb             	mov    %rbx,%rcx
18004987d:	e8 6a 00 00 00       	call   0x1800498ec
180049882:	48 8b 36             	mov    (%rsi),%rsi
180049885:	48 3b f7             	cmp    %rdi,%rsi
180049888:	75 ca                	jne    0x180049854
18004988a:	83 bb 08 01 00 00 02 	cmpl   $0x2,0x108(%rbx)
180049891:	75 41                	jne    0x1800498d4
180049893:	48 8b cb             	mov    %rbx,%rcx
180049896:	e8 85 06 00 00       	call   0x180049f20
18004989b:	3b 83 0c 01 00 00    	cmp    0x10c(%rbx),%eax
1800498a1:	75 31                	jne    0x1800498d4
1800498a3:	83 fd 01             	cmp    $0x1,%ebp
1800498a6:	75 2c                	jne    0x1800498d4
1800498a8:	0f 10 05 79 2d 10 00 	movups 0x102d79(%rip),%xmm0        # 0x18014c628
1800498af:	48 8b 1f             	mov    (%rdi),%rbx
1800498b2:	f3 0f 7f 44 24 20    	movdqu %xmm0,0x20(%rsp)
1800498b8:	eb 15                	jmp    0x1800498cf
1800498ba:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
1800498be:	48 8d 54 24 20       	lea    0x20(%rsp),%rdx
1800498c3:	e8 24 74 00 00       	call   0x180050cec
1800498c8:	85 c0                	test   %eax,%eax
1800498ca:	78 08                	js     0x1800498d4
1800498cc:	48 8b 1b             	mov    (%rbx),%rbx
1800498cf:	48 3b df             	cmp    %rdi,%rbx
1800498d2:	75 e6                	jne    0x1800498ba
1800498d4:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
1800498d9:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
1800498de:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
1800498e3:	48 83 c4 30          	add    $0x30,%rsp
1800498e7:	5f                   	pop    %rdi
1800498e8:	c3                   	ret
1800498e9:	cc                   	int3
1800498ea:	cc                   	int3
1800498eb:	cc                   	int3
1800498ec:	48 8b c4             	mov    %rsp,%rax
1800498ef:	48 89 58 08          	mov    %rbx,0x8(%rax)
1800498f3:	48 89 68 10          	mov    %rbp,0x10(%rax)
1800498f7:	48 89 70 18          	mov    %rsi,0x18(%rax)
1800498fb:	48 89 78 20          	mov    %rdi,0x20(%rax)
1800498ff:	41 56                	push   %r14
180049901:	48 83 ec 20          	sub    $0x20,%rsp
180049905:	48 8b f9             	mov    %rcx,%rdi
180049908:	48 8b f2             	mov    %rdx,%rsi
18004990b:	48 8b 4a 10          	mov    0x10(%rdx),%rcx
18004990f:	48 8b 52 18          	mov    0x18(%rdx),%rdx
180049913:	44 8b 47 1c          	mov    0x1c(%rdi),%r8d
180049917:	48 8b 01             	mov    (%rcx),%rax
18004991a:	44 0f af 47 18       	imul   0x18(%rdi),%r8d
18004991f:	48 8b 40 68          	mov    0x68(%rax),%rax
180049923:	ff d0                	call   *%rax
180049925:	0f 1f 00             	nopl   (%rax)
180049928:	45 33 c0             	xor    %r8d,%r8d
18004992b:	4c 8d b7 b8 00 00 00 	lea    0xb8(%rdi),%r14
180049932:	41 b9 00 00 01 00    	mov    $0x10000,%r9d
180049938:	49 8b ce             	mov    %r14,%rcx
18004993b:	41 8d 50 03          	lea    0x3(%r8),%edx
18004993f:	e8 58 d2 ff ff       	call   0x180046b9c
180049944:	8b d8                	mov    %eax,%ebx
180049946:	bd 01 00 00 00       	mov    $0x1,%ebp
18004994b:	85 c0                	test   %eax,%eax
18004994d:	78 3b                	js     0x18004998a
18004994f:	8d 55 04             	lea    0x4(%rbp),%edx
180049952:	4c 8b c6             	mov    %rsi,%r8
180049955:	48 8b cf             	mov    %rdi,%rcx
180049958:	e8 f3 f6 ff ff       	call   0x180049050
18004995d:	8b d8                	mov    %eax,%ebx
18004995f:	85 c0                	test   %eax,%eax
180049961:	78 27                	js     0x18004998a
180049963:	48 8b d6             	mov    %rsi,%rdx
180049966:	48 8b cf             	mov    %rdi,%rcx
180049969:	e8 12 f8 ff ff       	call   0x180049180
18004996e:	8b d8                	mov    %eax,%ebx
180049970:	85 c0                	test   %eax,%eax
180049972:	78 16                	js     0x18004998a
180049974:	8b d5                	mov    %ebp,%edx
180049976:	4c 8b c6             	mov    %rsi,%r8
180049979:	48 8b cf             	mov    %rdi,%rcx
18004997c:	e8 cf f6 ff ff       	call   0x180049050
180049981:	8b d8                	mov    %eax,%ebx
180049983:	85 c0                	test   %eax,%eax
180049985:	78 03                	js     0x18004998a
180049987:	09 6e 20             	or     %ebp,0x20(%rsi)
18004998a:	66 89 6f 28          	mov    %bp,0x28(%rdi)
18004998e:	41 83 3e 03          	cmpl   $0x3,(%r14)
180049992:	75 09                	jne    0x18004999d
180049994:	49 8b 4e 08          	mov    0x8(%r14),%rcx
180049998:	e8 bf cf ff ff       	call   0x18004695c
18004999d:	41 83 26 00          	andl   $0x0,(%r14)
1800499a1:	48 8b cf             	mov    %rdi,%rcx
1800499a4:	49 83 66 08 00       	andq   $0x0,0x8(%r14)
1800499a9:	48 8b 07             	mov    (%rdi),%rax
1800499ac:	48 8b 76 10          	mov    0x10(%rsi),%rsi
1800499b0:	48 8b 40 10          	mov    0x10(%rax),%rax
1800499b4:	ff d0                	call   *%rax
1800499b6:	0f 1f 00             	nopl   (%rax)
1800499b9:	4c 8d 86 bc 01 00 00 	lea    0x1bc(%rsi),%r8
1800499c0:	48 8b d0             	mov    %rax,%rdx
1800499c3:	85 db                	test   %ebx,%ebx
1800499c5:	79 0f                	jns    0x1800499d6
1800499c7:	44 8b cb             	mov    %ebx,%r9d
1800499ca:	b9 51 04 00 00       	mov    $0x451,%ecx
1800499cf:	e8 a4 d1 ff ff       	call   0x180046b78
1800499d4:	eb 0a                	jmp    0x1800499e0
1800499d6:	b9 50 04 00 00       	mov    $0x450,%ecx
1800499db:	e8 98 d1 ff ff       	call   0x180046b78
1800499e0:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1800499e5:	8b c3                	mov    %ebx,%eax
1800499e7:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1800499ec:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1800499f1:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
1800499f6:	48 83 c4 20          	add    $0x20,%rsp
1800499fa:	41 5e                	pop    %r14
1800499fc:	c3                   	ret
1800499fd:	cc                   	int3
1800499fe:	cc                   	int3
1800499ff:	cc                   	int3
180049a00:	8b 41 48             	mov    0x48(%rcx),%eax
180049a03:	89 41 4c             	mov    %eax,0x4c(%rcx)
180049a06:	33 c0                	xor    %eax,%eax
180049a08:	48 89 81 9c 00 00 00 	mov    %rax,0x9c(%rcx)
180049a0f:	89 81 a4 00 00 00    	mov    %eax,0xa4(%rcx)
180049a15:	c3                   	ret
180049a16:	cc                   	int3
180049a17:	cc                   	int3
180049a18:	48 ff 41 38          	incq   0x38(%rcx)
180049a1c:	c3                   	ret
180049a1d:	cc                   	int3
180049a1e:	cc                   	int3
180049a1f:	cc                   	int3
180049a20:	48 89 5c 24 10       	mov    %rbx,0x10(%rsp)
180049a25:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
180049a2a:	57                   	push   %rdi
180049a2b:	48 83 ec 20          	sub    $0x20,%rsp
180049a2f:	8b 99 98 00 00 00    	mov    0x98(%rcx),%ebx
180049a35:	48 8b f9             	mov    %rcx,%rdi
180049a38:	2b 99 9c 00 00 00    	sub    0x9c(%rcx),%ebx
180049a3e:	03 99 a0 00 00 00    	add    0xa0(%rcx),%ebx
180049a44:	e8 d7 04 00 00       	call   0x180049f20
180049a49:	8b d0                	mov    %eax,%edx
180049a4b:	48 8b cf             	mov    %rdi,%rcx
180049a4e:	e8 d1 50 0f 00       	call   0x18013eb24
180049a53:	84 c0                	test   %al,%al
180049a55:	75 0a                	jne    0x180049a61
180049a57:	be 35 00 38 c0       	mov    $0xc0380035,%esi
180049a5c:	e9 4d 01 00 00       	jmp    0x180049bae
180049a61:	8b 4f 18             	mov    0x18(%rdi),%ecx
180049a64:	33 d2                	xor    %edx,%edx
180049a66:	b8 00 02 00 00       	mov    $0x200,%eax
180049a6b:	f7 77 1c             	divl   0x1c(%rdi)
180049a6e:	2b c8                	sub    %eax,%ecx
180049a70:	2b cb                	sub    %ebx,%ecx
180049a72:	3b cb                	cmp    %ebx,%ecx
180049a74:	76 0a                	jbe    0x180049a80
180049a76:	be 01 00 38 c0       	mov    $0xc0380001,%esi
180049a7b:	e9 2e 01 00 00       	jmp    0x180049bae
180049a80:	45 33 c0             	xor    %r8d,%r8d
180049a83:	48 8d 8f b8 00 00 00 	lea    0xb8(%rdi),%rcx
180049a8a:	41 b9 00 00 01 00    	mov    $0x10000,%r9d
180049a90:	41 8d 50 03          	lea    0x3(%r8),%edx
180049a94:	e8 03 d1 ff ff       	call   0x180046b9c
180049a99:	8b f0                	mov    %eax,%esi
180049a9b:	85 c0                	test   %eax,%eax
180049a9d:	0f 88 0b 01 00 00    	js     0x180049bae
180049aa3:	48 8b cf             	mov    %rdi,%rcx
180049aa6:	e8 3d 01 00 00       	call   0x180049be8
180049aab:	8b f0                	mov    %eax,%esi
180049aad:	48 8b cf             	mov    %rdi,%rcx
180049ab0:	85 c0                	test   %eax,%eax
180049ab2:	0f 88 95 00 00 00    	js     0x180049b4d
180049ab8:	33 d2                	xor    %edx,%edx
180049aba:	e8 c1 f6 ff ff       	call   0x180049180
180049abf:	48 8b 4f 38          	mov    0x38(%rdi),%rcx
180049ac3:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
180049ac8:	48 83 64 24 30 00    	andq   $0x0,0x30(%rsp)
180049ace:	48 89 4f 30          	mov    %rcx,0x30(%rdi)
180049ad2:	48 8d 4f 50          	lea    0x50(%rdi),%rcx
180049ad6:	e8 91 a0 ff ff       	call   0x180043b6c
180049adb:	48 8b d0             	mov    %rax,%rdx
180049ade:	48 85 c0             	test   %rax,%rax
180049ae1:	75 0a                	jne    0x180049aed
180049ae3:	b8 00 02 00 00       	mov    $0x200,%eax
180049ae8:	f7 77 1c             	divl   0x1c(%rdi)
180049aeb:	eb 2c                	jmp    0x180049b19
180049aed:	44 8b 87 90 00 00 00 	mov    0x90(%rdi),%r8d
180049af4:	41 8d 48 ff          	lea    -0x1(%r8),%ecx
180049af8:	48 63 c1             	movslq %ecx,%rax
180049afb:	85 c9                	test   %ecx,%ecx
180049afd:	78 0e                	js     0x180049b0d
180049aff:	83 3c c2 ff          	cmpl   $0xffffffff,(%rdx,%rax,8)
180049b03:	75 08                	jne    0x180049b0d
180049b05:	ff c9                	dec    %ecx
180049b07:	48 83 e8 01          	sub    $0x1,%rax
180049b0b:	79 f2                	jns    0x180049aff
180049b0d:	44 0f af 44 24 30    	imul   0x30(%rsp),%r8d
180049b13:	41 8d 40 01          	lea    0x1(%r8),%eax
180049b17:	03 c1                	add    %ecx,%eax
180049b19:	ba 01 00 00 00       	mov    $0x1,%edx
180049b1e:	89 47 4c             	mov    %eax,0x4c(%rdi)
180049b21:	45 33 c0             	xor    %r8d,%r8d
180049b24:	89 47 48             	mov    %eax,0x48(%rdi)
180049b27:	48 8b cf             	mov    %rdi,%rcx
180049b2a:	e8 21 f5 ff ff       	call   0x180049050
180049b2f:	b2 01                	mov    $0x1,%dl
180049b31:	48 8b cf             	mov    %rdi,%rcx
180049b34:	e8 5f eb ff ff       	call   0x180048698
180049b39:	8b 8f a0 00 00 00    	mov    0xa0(%rdi),%ecx
180049b3f:	2b 8f 9c 00 00 00    	sub    0x9c(%rdi),%ecx
180049b45:	01 8f 98 00 00 00    	add    %ecx,0x98(%rdi)
180049b4b:	eb 61                	jmp    0x180049bae
180049b4d:	e8 ce 03 00 00       	call   0x180049f20
180049b52:	8b d8                	mov    %eax,%ebx
180049b54:	45 33 c0             	xor    %r8d,%r8d
180049b57:	b8 02 00 00 00       	mov    $0x2,%eax
180049b5c:	48 8b cf             	mov    %rdi,%rcx
180049b5f:	66 89 47 28          	mov    %ax,0x28(%rdi)
180049b63:	8d 50 02             	lea    0x2(%rax),%edx
180049b66:	e8 e5 f4 ff ff       	call   0x180049050
180049b6b:	33 d2                	xor    %edx,%edx
180049b6d:	48 8b cf             	mov    %rdi,%rcx
180049b70:	e8 0b f6 ff ff       	call   0x180049180
180049b75:	48 8b 4f 30          	mov    0x30(%rdi),%rcx
180049b79:	ba 01 00 00 00       	mov    $0x1,%edx
180049b7e:	48 89 4f 38          	mov    %rcx,0x38(%rdi)
180049b82:	45 33 c0             	xor    %r8d,%r8d
180049b85:	48 8b cf             	mov    %rdi,%rcx
180049b88:	e8 c3 f4 ff ff       	call   0x180049050
180049b8d:	33 d2                	xor    %edx,%edx
180049b8f:	48 8b cf             	mov    %rdi,%rcx
180049b92:	e8 01 eb ff ff       	call   0x180048698
180049b97:	48 8b cf             	mov    %rdi,%rcx
180049b9a:	e8 81 03 00 00       	call   0x180049f20
180049b9f:	b9 04 00 38 c0       	mov    $0xc0380004,%ecx
180049ba4:	3b d8                	cmp    %eax,%ebx
180049ba6:	8d 71 31             	lea    0x31(%rcx),%esi
180049ba9:	0f 44 ce             	cmove  %esi,%ecx
180049bac:	8b f1                	mov    %ecx,%esi
180049bae:	83 bf b8 00 00 00 03 	cmpl   $0x3,0xb8(%rdi)
180049bb5:	75 0c                	jne    0x180049bc3
180049bb7:	48 8b 8f c0 00 00 00 	mov    0xc0(%rdi),%rcx
180049bbe:	e8 99 cd ff ff       	call   0x18004695c
180049bc3:	83 a7 b8 00 00 00 00 	andl   $0x0,0xb8(%rdi)
180049bca:	8b c6                	mov    %esi,%eax
180049bcc:	48 83 a7 c0 00 00 00 	andq   $0x0,0xc0(%rdi)
180049bd3:	00
180049bd4:	48 8b 5c 24 38       	mov    0x38(%rsp),%rbx
180049bd9:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
180049bde:	48 83 c4 20          	add    $0x20,%rsp
180049be2:	5f                   	pop    %rdi
180049be3:	c3                   	ret
180049be4:	cc                   	int3
180049be5:	cc                   	int3
180049be6:	cc                   	int3
180049be7:	cc                   	int3
180049be8:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
180049bed:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
180049bf2:	57                   	push   %rdi
180049bf3:	48 83 ec 20          	sub    $0x20,%rsp
180049bf7:	33 ff                	xor    %edi,%edi
180049bf9:	33 f6                	xor    %esi,%esi
180049bfb:	83 b9 0c 01 00 00 02 	cmpl   $0x2,0x10c(%rcx)
180049c02:	48 8b d9             	mov    %rcx,%rbx
180049c05:	75 18                	jne    0x180049c1f
180049c07:	e8 14 03 00 00       	call   0x180049f20
180049c0c:	83 f8 01             	cmp    $0x1,%eax
180049c0f:	75 0e                	jne    0x180049c1f
180049c11:	48 8b cb             	mov    %rbx,%rcx
180049c14:	e8 c3 00 00 00       	call   0x180049cdc
180049c19:	8b f8                	mov    %eax,%edi
180049c1b:	85 c0                	test   %eax,%eax
180049c1d:	78 76                	js     0x180049c95
180049c1f:	48 21 73 40          	and    %rsi,0x40(%rbx)
180049c23:	ba 02 00 00 00       	mov    $0x2,%edx
180049c28:	48 ff 43 38          	incq   0x38(%rbx)
180049c2c:	45 33 c0             	xor    %r8d,%r8d
180049c2f:	48 8b cb             	mov    %rbx,%rcx
180049c32:	e8 19 f4 ff ff       	call   0x180049050
180049c37:	33 d2                	xor    %edx,%edx
180049c39:	48 8b cb             	mov    %rbx,%rcx