4967e4:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
4967e8:	8d 45 d8             	lea    -0x28(%ebp),%eax
4967eb:	ff 75 e8             	push   -0x18(%ebp)
4967ee:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
4967f2:	8d 4d c0             	lea    -0x40(%ebp),%ecx
4967f5:	50                   	push   %eax
4967f6:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
4967fa:	e8 81 26 fc ff       	call   0x458e80
4967ff:	83 4d 88 08          	orl    $0x8,-0x78(%ebp)
496803:	0f 10 00             	movups (%eax),%xmm0
496806:	f3 0f 7e 48 10       	movq   0x10(%eax),%xmm1
49680b:	0f 11 45 90          	movups %xmm0,-0x70(%ebp)
49680f:	c7 40 10 00 00 00 00 	movl   $0x0,0x10(%eax)
496816:	66 0f d6 4d a0       	movq   %xmm1,-0x60(%ebp)
49681b:	c7 40 14 0f 00 00 00 	movl   $0xf,0x14(%eax)
496822:	c6 00 00             	movb   $0x0,(%eax)
496825:	8b 8d 60 ff ff ff    	mov    -0xa0(%ebp),%ecx
49682b:	c6 45 fc 07          	movb   $0x7,-0x4(%ebp)
49682f:	8b 41 04             	mov    0x4(%ecx),%eax
496832:	3b 41 08             	cmp    0x8(%ecx),%eax
496835:	74 17                	je     0x49684e
496837:	0f 11 00             	movups %xmm0,(%eax)
49683a:	ba 0f 00 00 00       	mov    $0xf,%edx
49683f:	c6 45 90 00          	movb   $0x0,-0x70(%ebp)
496843:	66 0f d6 48 10       	movq   %xmm1,0x10(%eax)
496848:	83 41 04 18          	addl   $0x18,0x4(%ecx)
49684c:	eb 0d                	jmp    0x49685b
49684e:	8d 55 90             	lea    -0x70(%ebp),%edx
496851:	52                   	push   %edx
496852:	50                   	push   %eax
496853:	e8 a8 2b fd ff       	call   0x469400
496858:	8b 55 a4             	mov    -0x5c(%ebp),%edx
49685b:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
49685f:	83 fa 10             	cmp    $0x10,%edx
496862:	72 2c                	jb     0x496890
496864:	8b 4d 90             	mov    -0x70(%ebp),%ecx
496867:	42                   	inc    %edx
496868:	8b c1                	mov    %ecx,%eax
49686a:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
496870:	72 14                	jb     0x496886
496872:	8b 49 fc             	mov    -0x4(%ecx),%ecx
496875:	83 c2 23             	add    $0x23,%edx
496878:	2b c1                	sub    %ecx,%eax
49687a:	83 c0 fc             	add    $0xfffffffc,%eax
49687d:	83 f8 1f             	cmp    $0x1f,%eax
496880:	0f 87 59 01 00 00    	ja     0x4969df
496886:	52                   	push   %edx
496887:	51                   	push   %ecx
496888:	e8 c8 a9 13 00       	call   0x5d1255
49688d:	83 c4 08             	add    $0x8,%esp
496890:	8b 55 d4             	mov    -0x2c(%ebp),%edx
496893:	c6 45 fc 04          	movb   $0x4,-0x4(%ebp)
496897:	83 fa 10             	cmp    $0x10,%edx
49689a:	72 2c                	jb     0x4968c8
49689c:	8b 4d c0             	mov    -0x40(%ebp),%ecx
49689f:	42                   	inc    %edx
4968a0:	8b c1                	mov    %ecx,%eax
4968a2:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4968a8:	72 14                	jb     0x4968be
4968aa:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4968ad:	83 c2 23             	add    $0x23,%edx
4968b0:	2b c1                	sub    %ecx,%eax
4968b2:	83 c0 fc             	add    $0xfffffffc,%eax
4968b5:	83 f8 1f             	cmp    $0x1f,%eax
4968b8:	0f 87 21 01 00 00    	ja     0x4969df
4968be:	52                   	push   %edx
4968bf:	51                   	push   %ecx
4968c0:	e8 90 a9 13 00       	call   0x5d1255
4968c5:	83 c4 08             	add    $0x8,%esp
4968c8:	8b 55 bc             	mov    -0x44(%ebp),%edx
4968cb:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4968cf:	83 fa 10             	cmp    $0x10,%edx
4968d2:	72 2c                	jb     0x496900
4968d4:	8b 4d a8             	mov    -0x58(%ebp),%ecx
4968d7:	42                   	inc    %edx
4968d8:	8b c1                	mov    %ecx,%eax
4968da:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
4968e0:	72 14                	jb     0x4968f6
4968e2:	8b 49 fc             	mov    -0x4(%ecx),%ecx
4968e5:	83 c2 23             	add    $0x23,%edx
4968e8:	2b c1                	sub    %ecx,%eax
4968ea:	83 c0 fc             	add    $0xfffffffc,%eax
4968ed:	83 f8 1f             	cmp    $0x1f,%eax
4968f0:	0f 87 e9 00 00 00    	ja     0x4969df
4968f6:	52                   	push   %edx
4968f7:	51                   	push   %ecx
4968f8:	e8 58 a9 13 00       	call   0x5d1255
4968fd:	83 c4 08             	add    $0x8,%esp
496900:	8b 55 ec             	mov    -0x14(%ebp),%edx
496903:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
496907:	83 fa 10             	cmp    $0x10,%edx
49690a:	72 2c                	jb     0x496938
49690c:	8b 4d d8             	mov    -0x28(%ebp),%ecx
49690f:	42                   	inc    %edx
496910:	8b c1                	mov    %ecx,%eax
496912:	81 fa 00 10 00 00    	cmp    $0x1000,%edx
496918:	72 14                	jb     0x49692e
49691a:	8b 49 fc             	mov    -0x4(%ecx),%ecx
49691d:	83 c2 23             	add    $0x23,%edx
496920:	2b c1                	sub    %ecx,%eax
496922:	83 c0 fc             	add    $0xfffffffc,%eax
496925:	83 f8 1f             	cmp    $0x1f,%eax
496928:	0f 87 b1 00 00 00    	ja     0x4969df
49692e:	52                   	push   %edx
49692f:	51                   	push   %ecx
496930:	e8 20 a9 13 00       	call   0x5d1255
496935:	83 c4 08             	add    $0x8,%esp
496938:	47                   	inc    %edi
496939:	89 bd 78 ff ff ff    	mov    %edi,-0x88(%ebp)
49693f:	3b bd 64 ff ff ff    	cmp    -0x9c(%ebp),%edi
496945:	0f 8c 65 fa ff ff    	jl     0x4963b0
49694b:	8b 95 74 ff ff ff    	mov    -0x8c(%ebp),%edx
496951:	83 c2 04             	add    $0x4,%edx
496954:	89 95 74 ff ff ff    	mov    %edx,-0x8c(%ebp)
49695a:	3b 95 6c ff ff ff    	cmp    -0x94(%ebp),%edx
496960:	74 0b                	je     0x49696d
496962:	8b bd 70 ff ff ff    	mov    -0x90(%ebp),%edi
496968:	e9 f3 f9 ff ff       	jmp    0x496360
49696d:	8b 95 54 ff ff ff    	mov    -0xac(%ebp),%edx
496973:	8b b5 60 ff ff ff    	mov    -0xa0(%ebp),%esi
496979:	8b 06                	mov    (%esi),%eax
49697b:	3b 46 04             	cmp    0x4(%esi),%eax
49697e:	0f 95 c0             	setne  %al
496981:	88 45 8f             	mov    %al,-0x71(%ebp)
496984:	85 d2                	test   %edx,%edx
496986:	74 32                	je     0x4969ba
496988:	8b 8d 5c ff ff ff    	mov    -0xa4(%ebp),%ecx
49698e:	8b c2                	mov    %edx,%eax
496990:	2b ca                	sub    %edx,%ecx
496992:	83 e1 fc             	and    $0xfffffffc,%ecx
496995:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
49699b:	72 10                	jb     0x4969ad
49699d:	8b 52 fc             	mov    -0x4(%edx),%edx
4969a0:	83 c1 23             	add    $0x23,%ecx
4969a3:	2b c2                	sub    %edx,%eax
4969a5:	83 c0 fc             	add    $0xfffffffc,%eax
4969a8:	83 f8 1f             	cmp    $0x1f,%eax
4969ab:	77 32                	ja     0x4969df
4969ad:	51                   	push   %ecx
4969ae:	52                   	push   %edx
4969af:	e8 a1 a8 13 00       	call   0x5d1255
4969b4:	8a 45 8f             	mov    -0x71(%ebp),%al
4969b7:	83 c4 08             	add    $0x8,%esp
4969ba:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4969bd:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4969c4:	59                   	pop    %ecx
4969c5:	5f                   	pop    %edi
4969c6:	5e                   	pop    %esi
4969c7:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4969ca:	33 cd                	xor    %ebp,%ecx
4969cc:	e8 55 b0 13 00       	call   0x5d1a26
4969d1:	8b e5                	mov    %ebp,%esp
4969d3:	5d                   	pop    %ebp
4969d4:	c3                   	ret
4969d5:	e8 16 0c fb ff       	call   0x4475f0
4969da:	e8 31 0c fb ff       	call   0x447610
4969df:	e8 0c f8 13 00       	call   0x5d61f0
4969e4:	cc                   	int3
4969e5:	cc                   	int3
4969e6:	cc                   	int3
4969e7:	cc                   	int3
4969e8:	cc                   	int3
4969e9:	cc                   	int3
4969ea:	cc                   	int3
4969eb:	cc                   	int3
4969ec:	cc                   	int3
4969ed:	cc                   	int3
4969ee:	cc                   	int3
4969ef:	cc                   	int3
4969f0:	55                   	push   %ebp
4969f1:	8b ec                	mov    %esp,%ebp
4969f3:	6a ff                	push   $0xffffffff
4969f5:	68 10 c7 5f 00       	push   $0x5fc710
4969fa:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
496a00:	50                   	push   %eax
496a01:	83 ec 20             	sub    $0x20,%esp
496a04:	53                   	push   %ebx
496a05:	56                   	push   %esi
496a06:	57                   	push   %edi
496a07:	a1 c0 14 69 00       	mov    0x6914c0,%eax
496a0c:	33 c5                	xor    %ebp,%eax
496a0e:	50                   	push   %eax
496a0f:	8d 45 f4             	lea    -0xc(%ebp),%eax
496a12:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
496a18:	8b d1                	mov    %ecx,%edx
496a1a:	89 55 ec             	mov    %edx,-0x14(%ebp)
496a1d:	8b 82 14 01 00 00    	mov    0x114(%edx),%eax
496a23:	8b 8a 1c 01 00 00    	mov    0x11c(%edx),%ecx
496a29:	89 45 e8             	mov    %eax,-0x18(%ebp)
496a2c:	8b 58 f4             	mov    -0xc(%eax),%ebx
496a2f:	8d 82 1c 01 00 00    	lea    0x11c(%edx),%eax
496a35:	89 45 e4             	mov    %eax,-0x1c(%ebp)
496a38:	8b 40 04             	mov    0x4(%eax),%eax
496a3b:	2b c1                	sub    %ecx,%eax
496a3d:	c1 f8 02             	sar    $0x2,%eax
496a40:	3b d8                	cmp    %eax,%ebx
496a42:	0f 83 b8 00 00 00    	jae    0x496b00
496a48:	8d ba c8 00 00 00    	lea    0xc8(%edx),%edi
496a4e:	66 90                	xchg   %ax,%ax
496a50:	8b 14 99             	mov    (%ecx,%ebx,4),%edx
496a53:	33 c9                	xor    %ecx,%ecx
496a55:	89 55 dc             	mov    %edx,-0x24(%ebp)
496a58:	89 4d e0             	mov    %ecx,-0x20(%ebp)
496a5b:	85 d2                	test   %edx,%edx
496a5d:	74 11                	je     0x496a70
496a5f:	8b ca                	mov    %edx,%ecx
496a61:	8d 71 01             	lea    0x1(%ecx),%esi
496a64:	8a 01                	mov    (%ecx),%al
496a66:	41                   	inc    %ecx
496a67:	84 c0                	test   %al,%al
496a69:	75 f9                	jne    0x496a64
496a6b:	2b ce                	sub    %esi,%ecx
496a6d:	89 4d e0             	mov    %ecx,-0x20(%ebp)
496a70:	03 ca                	add    %edx,%ecx
496a72:	33 f6                	xor    %esi,%esi
496a74:	3b d1                	cmp    %ecx,%edx
496a76:	73 0d                	jae    0x496a85
496a78:	0f be 02             	movsbl (%edx),%eax
496a7b:	8d 34 b6             	lea    (%esi,%esi,4),%esi
496a7e:	42                   	inc    %edx
496a7f:	03 f0                	add    %eax,%esi
496a81:	3b d1                	cmp    %ecx,%edx
496a83:	72 f3                	jb     0x496a78
496a85:	56                   	push   %esi
496a86:	8d 45 dc             	lea    -0x24(%ebp),%eax
496a89:	8b cf                	mov    %edi,%ecx
496a8b:	50                   	push   %eax
496a8c:	8d 45 d4             	lea    -0x2c(%ebp),%eax
496a8f:	50                   	push   %eax
496a90:	e8 6b 31 fe ff       	call   0x479c00
496a95:	8b 50 04             	mov    0x4(%eax),%edx
496a98:	85 d2                	test   %edx,%edx
496a9a:	74 4b                	je     0x496ae7
496a9c:	8b 4f 18             	mov    0x18(%edi),%ecx
496a9f:	8b 47 0c             	mov    0xc(%edi),%eax
496aa2:	23 ce                	and    %esi,%ecx
496aa4:	8d 0c c8             	lea    (%eax,%ecx,8),%ecx
496aa7:	8b 01                	mov    (%ecx),%eax
496aa9:	39 51 04             	cmp    %edx,0x4(%ecx)
496aac:	75 16                	jne    0x496ac4
496aae:	3b c2                	cmp    %edx,%eax
496ab0:	75 0a                	jne    0x496abc
496ab2:	8b 47 04             	mov    0x4(%edi),%eax
496ab5:	89 01                	mov    %eax,(%ecx)
496ab7:	89 41 04             	mov    %eax,0x4(%ecx)
496aba:	eb 10                	jmp    0x496acc
496abc:	8b 42 04             	mov    0x4(%edx),%eax
496abf:	89 41 04             	mov    %eax,0x4(%ecx)
496ac2:	eb 08                	jmp    0x496acc
496ac4:	3b c2                	cmp    %edx,%eax
496ac6:	75 04                	jne    0x496acc
496ac8:	8b 02                	mov    (%edx),%eax
496aca:	89 01                	mov    %eax,(%ecx)
496acc:	8b 0a                	mov    (%edx),%ecx
496ace:	ff 4f 08             	decl   0x8(%edi)
496ad1:	8b 42 04             	mov    0x4(%edx),%eax
496ad4:	6a 18                	push   $0x18
496ad6:	52                   	push   %edx
496ad7:	89 08                	mov    %ecx,(%eax)
496ad9:	8b 42 04             	mov    0x4(%edx),%eax
496adc:	89 41 04             	mov    %eax,0x4(%ecx)
496adf:	e8 71 a7 13 00       	call   0x5d1255
496ae4:	83 c4 08             	add    $0x8,%esp
496ae7:	8b 75 e4             	mov    -0x1c(%ebp),%esi
496aea:	43                   	inc    %ebx
496aeb:	8b 46 04             	mov    0x4(%esi),%eax
496aee:	8b 0e                	mov    (%esi),%ecx
496af0:	2b c1                	sub    %ecx,%eax
496af2:	c1 f8 02             	sar    $0x2,%eax
496af5:	3b d8                	cmp    %eax,%ebx
496af7:	0f 82 53 ff ff ff    	jb     0x496a50
496afd:	8b 55 ec             	mov    -0x14(%ebp),%edx
496b00:	8b 5d e8             	mov    -0x18(%ebp),%ebx
496b03:	8b 82 2c 01 00 00    	mov    0x12c(%edx),%eax
496b09:	8b 8a 28 01 00 00    	mov    0x128(%edx),%ecx
496b0f:	2b c1                	sub    %ecx,%eax
496b11:	c1 f8 02             	sar    $0x2,%eax
496b14:	8b 7b f8             	mov    -0x8(%ebx),%edi
496b17:	3b f8                	cmp    %eax,%edi
496b19:	0f 83 c7 00 00 00    	jae    0x496be6
496b1f:	8d 9a e8 00 00 00    	lea    0xe8(%edx),%ebx
496b25:	8b 14 b9             	mov    (%ecx,%edi,4),%edx
496b28:	33 c9                	xor    %ecx,%ecx
496b2a:	89 55 dc             	mov    %edx,-0x24(%ebp)
496b2d:	89 4d e0             	mov    %ecx,-0x20(%ebp)
496b30:	85 d2                	test   %edx,%edx
496b32:	74 18                	je     0x496b4c
496b34:	8b ca                	mov    %edx,%ecx
496b36:	8d 71 01             	lea    0x1(%ecx),%esi
496b39:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
496b40:	8a 01                	mov    (%ecx),%al
496b42:	41                   	inc    %ecx
496b43:	84 c0                	test   %al,%al
496b45:	75 f9                	jne    0x496b40
496b47:	2b ce                	sub    %esi,%ecx
496b49:	89 4d e0             	mov    %ecx,-0x20(%ebp)
496b4c:	03 ca                	add    %edx,%ecx
496b4e:	33 f6                	xor    %esi,%esi
496b50:	3b d1                	cmp    %ecx,%edx
496b52:	73 0d                	jae    0x496b61
496b54:	0f be 02             	movsbl (%edx),%eax
496b57:	8d 34 b6             	lea    (%esi,%esi,4),%esi
496b5a:	42                   	inc    %edx
496b5b:	03 f0                	add    %eax,%esi
496b5d:	3b d1                	cmp    %ecx,%edx
496b5f:	72 f3                	jb     0x496b54
496b61:	56                   	push   %esi
496b62:	8d 45 dc             	lea    -0x24(%ebp),%eax
496b65:	8b cb                	mov    %ebx,%ecx
496b67:	50                   	push   %eax
496b68:	8d 45 d4             	lea    -0x2c(%ebp),%eax
496b6b:	50                   	push   %eax
496b6c:	e8 8f 30 fe ff       	call   0x479c00
496b71:	8b 50 04             	mov    0x4(%eax),%edx
496b74:	85 d2                	test   %edx,%edx
496b76:	74 4b                	je     0x496bc3
496b78:	8b 4b 18             	mov    0x18(%ebx),%ecx
496b7b:	8b 43 0c             	mov    0xc(%ebx),%eax
496b7e:	23 ce                	and    %esi,%ecx
496b80:	8d 0c c8             	lea    (%eax,%ecx,8),%ecx
496b83:	8b 01                	mov    (%ecx),%eax
496b85:	39 51 04             	cmp    %edx,0x4(%ecx)
496b88:	75 16                	jne    0x496ba0
496b8a:	3b c2                	cmp    %edx,%eax
496b8c:	75 0a                	jne    0x496b98
496b8e:	8b 43 04             	mov    0x4(%ebx),%eax
496b91:	89 01                	mov    %eax,(%ecx)
496b93:	89 41 04             	mov    %eax,0x4(%ecx)
496b96:	eb 10                	jmp    0x496ba8
496b98:	8b 42 04             	mov    0x4(%edx),%eax
496b9b:	89 41 04             	mov    %eax,0x4(%ecx)
496b9e:	eb 08                	jmp    0x496ba8
496ba0:	3b c2                	cmp    %edx,%eax
496ba2:	75 04                	jne    0x496ba8
496ba4:	8b 02                	mov    (%edx),%eax
496ba6:	89 01                	mov    %eax,(%ecx)
496ba8:	8b 0a                	mov    (%edx),%ecx
496baa:	ff 4b 08             	decl   0x8(%ebx)
496bad:	8b 42 04             	mov    0x4(%edx),%eax
496bb0:	6a 14                	push   $0x14
496bb2:	52                   	push   %edx
496bb3:	89 08                	mov    %ecx,(%eax)
496bb5:	8b 42 04             	mov    0x4(%edx),%eax
496bb8:	89 41 04             	mov    %eax,0x4(%ecx)
496bbb:	e8 95 a6 13 00       	call   0x5d1255
496bc0:	83 c4 08             	add    $0x8,%esp
496bc3:	8b 45 ec             	mov    -0x14(%ebp),%eax
496bc6:	47                   	inc    %edi
496bc7:	8b 88 28 01 00 00    	mov    0x128(%eax),%ecx
496bcd:	8b 80 2c 01 00 00    	mov    0x12c(%eax),%eax