45798e:	79 03                	jns    0x457993
457990:	83 d2 00             	adc    $0x0,%edx
457993:	8b 45 08             	mov    0x8(%ebp),%eax
457996:	03 50 f4             	add    -0xc(%eax),%edx
457999:	42                   	inc    %edx
45799a:	8b 45 08             	mov    0x8(%ebp),%eax
45799d:	89 50 f4             	mov    %edx,-0xc(%eax)
4579a0:	8b 45 08             	mov    0x8(%ebp),%eax
4579a3:	8b 40 c8             	mov    -0x38(%eax),%eax
4579a6:	8b 40 4c             	mov    0x4c(%eax),%eax
4579a9:	8b 10                	mov    (%eax),%edx
4579ab:	ff 52 20             	call   *0x20(%edx)
4579ae:	8b 55 08             	mov    0x8(%ebp),%edx
4579b1:	03 42 f4             	add    -0xc(%edx),%eax
4579b4:	8b 55 08             	mov    0x8(%ebp),%edx
4579b7:	89 42 fc             	mov    %eax,-0x4(%edx)
4579ba:	8b 45 08             	mov    0x8(%ebp),%eax
4579bd:	8b 40 c8             	mov    -0x38(%eax),%eax
4579c0:	8b 48 4c             	mov    0x4c(%eax),%ecx
4579c3:	8b 45 08             	mov    0x8(%ebp),%eax
4579c6:	8d 50 f0             	lea    -0x10(%eax),%edx
4579c9:	8b 45 08             	mov    0x8(%ebp),%eax
4579cc:	8b 40 d8             	mov    -0x28(%eax),%eax
4579cf:	e8 28 d1 fc ff       	call   0x424afc
4579d4:	8b 45 08             	mov    0x8(%ebp),%eax
4579d7:	8b 55 08             	mov    0x8(%ebp),%edx
4579da:	8d 70 a4             	lea    -0x5c(%eax),%esi
4579dd:	8d 7a f0             	lea    -0x10(%edx),%edi
4579e0:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4579e1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4579e2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4579e3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4579e4:	8b 45 08             	mov    0x8(%ebp),%eax
4579e7:	8b 40 c8             	mov    -0x38(%eax),%eax
4579ea:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
4579ee:	74 6b                	je     0x457a5b
4579f0:	8b 45 08             	mov    0x8(%ebp),%eax
4579f3:	ff 48 f8             	decl   -0x8(%eax)
4579f6:	8b 45 08             	mov    0x8(%ebp),%eax
4579f9:	ff 48 fc             	decl   -0x4(%eax)
4579fc:	eb 5d                	jmp    0x457a5b
4579fe:	8b 45 08             	mov    0x8(%ebp),%eax
457a01:	83 78 c0 00          	cmpl   $0x0,-0x40(%eax)
457a05:	74 35                	je     0x457a3c
457a07:	8b 45 08             	mov    0x8(%ebp),%eax
457a0a:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
457a0e:	75 2c                	jne    0x457a3c
457a10:	8b 45 08             	mov    0x8(%ebp),%eax
457a13:	8b 40 f0             	mov    -0x10(%eax),%eax
457a16:	8b 55 08             	mov    0x8(%ebp),%edx
457a19:	8b 52 c0             	mov    -0x40(%edx),%edx
457a1c:	03 42 34             	add    0x34(%edx),%eax
457a1f:	8b 55 08             	mov    0x8(%ebp),%edx
457a22:	89 42 f8             	mov    %eax,-0x8(%edx)
457a25:	8b 45 08             	mov    0x8(%ebp),%eax
457a28:	8b 40 f4             	mov    -0xc(%eax),%eax
457a2b:	8b 55 08             	mov    0x8(%ebp),%edx
457a2e:	8b 52 c0             	mov    -0x40(%edx),%edx
457a31:	03 42 30             	add    0x30(%edx),%eax
457a34:	8b 55 08             	mov    0x8(%ebp),%edx
457a37:	89 42 fc             	mov    %eax,-0x4(%edx)
457a3a:	eb 18                	jmp    0x457a54
457a3c:	8b 45 08             	mov    0x8(%ebp),%eax
457a3f:	8b 40 f0             	mov    -0x10(%eax),%eax
457a42:	8b 55 08             	mov    0x8(%ebp),%edx
457a45:	89 42 f8             	mov    %eax,-0x8(%edx)
457a48:	8b 45 08             	mov    0x8(%ebp),%eax
457a4b:	8b 40 f4             	mov    -0xc(%eax),%eax
457a4e:	8b 55 08             	mov    0x8(%ebp),%edx
457a51:	89 42 fc             	mov    %eax,-0x4(%edx)
457a54:	8b 45 08             	mov    0x8(%ebp),%eax
457a57:	c6 40 c7 00          	movb   $0x0,-0x39(%eax)
457a5b:	8b 45 08             	mov    0x8(%ebp),%eax
457a5e:	ff 48 f0             	decl   -0x10(%eax)
457a61:	8b 45 08             	mov    0x8(%ebp),%eax
457a64:	ff 48 f4             	decl   -0xc(%eax)
457a67:	8b 45 08             	mov    0x8(%ebp),%eax
457a6a:	83 40 f8 02          	addl   $0x2,-0x8(%eax)
457a6e:	8b 45 08             	mov    0x8(%ebp),%eax
457a71:	83 40 fc 02          	addl   $0x2,-0x4(%eax)
457a75:	8b 45 08             	mov    0x8(%ebp),%eax
457a78:	8b 40 c8             	mov    -0x38(%eax),%eax
457a7b:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
457a7f:	75 12                	jne    0x457a93
457a81:	8b 45 08             	mov    0x8(%ebp),%eax
457a84:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
457a88:	74 3e                	je     0x457ac8
457a8a:	8b 45 08             	mov    0x8(%ebp),%eax
457a8d:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
457a91:	74 35                	je     0x457ac8
457a93:	8b 45 08             	mov    0x8(%ebp),%eax
457a96:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
457a9a:	75 2c                	jne    0x457ac8
457a9c:	6a 0f                	push   $0xf
457a9e:	8b 45 08             	mov    0x8(%ebp),%eax
457aa1:	8b 40 c8             	mov    -0x38(%eax),%eax
457aa4:	0f b6 40 38          	movzbl 0x38(%eax),%eax
457aa8:	8b 04 85 94 9d 46 00 	mov    0x469d94(,%eax,4),%eax
457aaf:	50                   	push   %eax
457ab0:	8b 45 08             	mov    0x8(%ebp),%eax
457ab3:	83 c0 f0             	add    $0xfffffff0,%eax
457ab6:	50                   	push   %eax
457ab7:	8b 45 08             	mov    0x8(%ebp),%eax
457aba:	8b 40 d8             	mov    -0x28(%eax),%eax
457abd:	e8 5a d2 fc ff       	call   0x424d1c
457ac2:	50                   	push   %eax
457ac3:	e8 c4 ec fa ff       	call   0x40678c
457ac8:	8b 45 08             	mov    0x8(%ebp),%eax
457acb:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
457acf:	74 4c                	je     0x457b1d
457ad1:	8b 45 08             	mov    0x8(%ebp),%eax
457ad4:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
457ad8:	74 0d                	je     0x457ae7
457ada:	8b 45 08             	mov    0x8(%ebp),%eax
457add:	8b 40 f8             	mov    -0x8(%eax),%eax
457ae0:	40                   	inc    %eax
457ae1:	8b 55 08             	mov    0x8(%ebp),%edx
457ae4:	89 42 e0             	mov    %eax,-0x20(%edx)
457ae7:	8b 45 08             	mov    0x8(%ebp),%eax
457aea:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
457aee:	74 09                	je     0x457af9
457af0:	8b 45 08             	mov    0x8(%ebp),%eax
457af3:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
457af7:	75 13                	jne    0x457b0c
457af9:	8b 45 08             	mov    0x8(%ebp),%eax
457afc:	8b 40 d8             	mov    -0x28(%eax),%eax
457aff:	8b 40 14             	mov    0x14(%eax),%eax
457b02:	ba 0d 00 00 ff       	mov    $0xff00000d,%edx
457b07:	e8 04 cb fc ff       	call   0x424610
457b0c:	8b 45 08             	mov    0x8(%ebp),%eax
457b0f:	8d 50 e0             	lea    -0x20(%eax),%edx
457b12:	8b 45 08             	mov    0x8(%ebp),%eax
457b15:	8b 40 d8             	mov    -0x28(%eax),%eax
457b18:	e8 97 ce fc ff       	call   0x4249b4
457b1d:	8b 45 08             	mov    0x8(%ebp),%eax
457b20:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
457b24:	74 77                	je     0x457b9d
457b26:	8b 45 08             	mov    0x8(%ebp),%eax
457b29:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
457b2d:	74 6e                	je     0x457b9d
457b2f:	8b 45 08             	mov    0x8(%ebp),%eax
457b32:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
457b36:	75 65                	jne    0x457b9d
457b38:	8b 45 08             	mov    0x8(%ebp),%eax
457b3b:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
457b3f:	74 1e                	je     0x457b5f
457b41:	6a 0f                	push   $0xf
457b43:	6a 02                	push   $0x2
457b45:	8b 45 08             	mov    0x8(%ebp),%eax
457b48:	83 c0 e0             	add    $0xffffffe0,%eax
457b4b:	50                   	push   %eax
457b4c:	8b 45 08             	mov    0x8(%ebp),%eax
457b4f:	8b 40 d8             	mov    -0x28(%eax),%eax
457b52:	e8 c5 d1 fc ff       	call   0x424d1c
457b57:	50                   	push   %eax
457b58:	e8 2f ec fa ff       	call   0x40678c
457b5d:	eb 25                	jmp    0x457b84
457b5f:	8b 45 08             	mov    0x8(%ebp),%eax
457b62:	f6 40 0c 40          	testb  $0x40,0xc(%eax)
457b66:	74 1c                	je     0x457b84
457b68:	6a 0f                	push   $0xf
457b6a:	6a 04                	push   $0x4
457b6c:	8b 45 08             	mov    0x8(%ebp),%eax
457b6f:	83 c0 e0             	add    $0xffffffe0,%eax
457b72:	50                   	push   %eax
457b73:	8b 45 08             	mov    0x8(%ebp),%eax
457b76:	8b 40 d8             	mov    -0x28(%eax),%eax
457b79:	e8 9e d1 fc ff       	call   0x424d1c
457b7e:	50                   	push   %eax
457b7f:	e8 08 ec fa ff       	call   0x40678c
457b84:	8b 45 08             	mov    0x8(%ebp),%eax
457b87:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
457b8b:	75 10                	jne    0x457b9d
457b8d:	6a ff                	push   $0xffffffff
457b8f:	6a 00                	push   $0x0
457b91:	8b 45 08             	mov    0x8(%ebp),%eax
457b94:	83 c0 e0             	add    $0xffffffe0,%eax
457b97:	50                   	push   %eax
457b98:	e8 a7 ee fa ff       	call   0x406a44
457b9d:	8b 45 08             	mov    0x8(%ebp),%eax
457ba0:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
457ba4:	74 09                	je     0x457baf
457ba6:	8b 45 08             	mov    0x8(%ebp),%eax
457ba9:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
457bad:	75 0d                	jne    0x457bbc
457baf:	8b 45 08             	mov    0x8(%ebp),%eax
457bb2:	8b 40 f8             	mov    -0x8(%eax),%eax
457bb5:	40                   	inc    %eax
457bb6:	8b 55 08             	mov    0x8(%ebp),%edx
457bb9:	89 42 e0             	mov    %eax,-0x20(%edx)
457bbc:	8b 45 08             	mov    0x8(%ebp),%eax
457bbf:	83 40 e0 02          	addl   $0x2,-0x20(%eax)
457bc3:	8b 45 08             	mov    0x8(%ebp),%eax
457bc6:	ff 48 e8             	decl   -0x18(%eax)
457bc9:	8b 45 08             	mov    0x8(%ebp),%eax
457bcc:	0f b6 40 cf          	movzbl -0x31(%eax),%eax
457bd0:	66 8b 04 45 8c 9d 46 	mov    0x469d8c(,%eax,2),%ax
457bd7:	00
457bd8:	66 83 c8 60          	or     $0x60,%ax
457bdc:	0f b7 c0             	movzwl %ax,%eax
457bdf:	8b 55 08             	mov    0x8(%ebp),%edx
457be2:	89 42 9c             	mov    %eax,-0x64(%edx)
457be5:	8b 45 08             	mov    0x8(%ebp),%eax
457be8:	80 78 9b 00          	cmpb   $0x0,-0x65(%eax)
457bec:	74 13                	je     0x457c01
457bee:	8b 45 08             	mov    0x8(%ebp),%eax
457bf1:	f6 40 0d 01          	testb  $0x1,0xd(%eax)
457bf5:	74 0a                	je     0x457c01
457bf7:	8b 45 08             	mov    0x8(%ebp),%eax
457bfa:	81 48 9c 00 00 10 00 	orl    $0x100000,-0x64(%eax)
457c01:	8b 45 08             	mov    0x8(%ebp),%eax
457c04:	8b 55 08             	mov    0x8(%ebp),%edx
457c07:	8d 70 e0             	lea    -0x20(%eax),%esi
457c0a:	8d 7a a4             	lea    -0x5c(%edx),%edi
457c0d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
457c0e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
457c0f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
457c10:	a5                   	movsl  %ds:(%esi),%es:(%edi)
457c11:	8b 45 08             	mov    0x8(%ebp),%eax
457c14:	f6 40 0c 20          	testb  $0x20,0xc(%eax)
457c18:	74 14                	je     0x457c2e
457c1a:	8b 45 08             	mov    0x8(%ebp),%eax
457c1d:	8b 40 d8             	mov    -0x28(%eax),%eax
457c20:	8b 40 0c             	mov    0xc(%eax),%eax
457c23:	8a 15 90 7d 45 00    	mov    0x457d90,%dl
457c29:	e8 e2 c4 fc ff       	call   0x424110
457c2e:	8b 45 08             	mov    0x8(%ebp),%eax
457c31:	83 c0 e0             	add    $0xffffffe0,%eax
457c34:	50                   	push   %eax
457c35:	8b 45 08             	mov    0x8(%ebp),%eax
457c38:	8a 40 d7             	mov    -0x29(%eax),%al
457c3b:	50                   	push   %eax
457c3c:	8b 45 08             	mov    0x8(%ebp),%eax
457c3f:	8b 40 9c             	mov    -0x64(%eax),%eax
457c42:	0d 00 04 00 00       	or     $0x400,%eax
457c47:	0d 00 01 00 00       	or     $0x100,%eax
457c4c:	50                   	push   %eax
457c4d:	8b 45 08             	mov    0x8(%ebp),%eax
457c50:	8b 40 c8             	mov    -0x38(%eax),%eax
457c53:	8b 48 30             	mov    0x30(%eax),%ecx
457c56:	8b 45 08             	mov    0x8(%ebp),%eax
457c59:	8b 50 d8             	mov    -0x28(%eax),%edx
457c5c:	8b 45 08             	mov    0x8(%ebp),%eax
457c5f:	8b 40 c8             	mov    -0x38(%eax),%eax
457c62:	e8 d5 f5 ff ff       	call   0x45723c
457c67:	8b 45 08             	mov    0x8(%ebp),%eax
457c6a:	8b 40 b0             	mov    -0x50(%eax),%eax
457c6d:	8b 55 08             	mov    0x8(%ebp),%edx
457c70:	2b 42 a8             	sub    -0x58(%edx),%eax
457c73:	8b 55 08             	mov    0x8(%ebp),%edx
457c76:	8b 52 ec             	mov    -0x14(%edx),%edx
457c79:	8b 4d 08             	mov    0x8(%ebp),%ecx
457c7c:	2b 51 e4             	sub    -0x1c(%ecx),%edx
457c7f:	2b c2                	sub    %edx,%eax
457c81:	d1 f8                	sar    $1,%eax
457c83:	79 03                	jns    0x457c88
457c85:	83 d0 00             	adc    $0x0,%eax
457c88:	50                   	push   %eax
457c89:	6a 00                	push   $0x0
457c8b:	8b 45 08             	mov    0x8(%ebp),%eax
457c8e:	83 c0 e0             	add    $0xffffffe0,%eax
457c91:	50                   	push   %eax
457c92:	e8 ad ed fa ff       	call   0x406a44
457c97:	8b 45 08             	mov    0x8(%ebp),%eax
457c9a:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
457c9e:	74 2b                	je     0x457ccb
457ca0:	8b 45 08             	mov    0x8(%ebp),%eax
457ca3:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
457ca7:	74 22                	je     0x457ccb
457ca9:	8b 45 08             	mov    0x8(%ebp),%eax
457cac:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
457cb0:	74 19                	je     0x457ccb
457cb2:	8b 45 08             	mov    0x8(%ebp),%eax
457cb5:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
457cb9:	75 10                	jne    0x457ccb
457cbb:	6a 00                	push   $0x0
457cbd:	6a 01                	push   $0x1
457cbf:	8b 45 08             	mov    0x8(%ebp),%eax
457cc2:	83 c0 e0             	add    $0xffffffe0,%eax
457cc5:	50                   	push   %eax
457cc6:	e8 79 ed fa ff       	call   0x406a44
457ccb:	8b 45 08             	mov    0x8(%ebp),%eax
457cce:	83 c0 e0             	add    $0xffffffe0,%eax
457cd1:	50                   	push   %eax
457cd2:	8b 45 08             	mov    0x8(%ebp),%eax
457cd5:	8a 40 d7             	mov    -0x29(%eax),%al
457cd8:	50                   	push   %eax
457cd9:	8b 45 08             	mov    0x8(%ebp),%eax
457cdc:	8b 40 9c             	mov    -0x64(%eax),%eax
457cdf:	50                   	push   %eax
457ce0:	8b 45 08             	mov    0x8(%ebp),%eax
457ce3:	8b 40 c8             	mov    -0x38(%eax),%eax
457ce6:	8b 48 30             	mov    0x30(%eax),%ecx
457ce9:	8b 45 08             	mov    0x8(%ebp),%eax
457cec:	8b 50 d8             	mov    -0x28(%eax),%edx
457cef:	8b 45 08             	mov    0x8(%ebp),%eax
457cf2:	8b 40 c8             	mov    -0x38(%eax),%eax
457cf5:	e8 42 f5 ff ff       	call   0x45723c
457cfa:	8b 45 08             	mov    0x8(%ebp),%eax
457cfd:	8b 40 c8             	mov    -0x38(%eax),%eax
457d00:	66 8b 58 60          	mov    0x60(%eax),%bx
457d04:	66 85 db             	test   %bx,%bx
457d07:	74 55                	je     0x457d5e
457d09:	8b 45 08             	mov    0x8(%ebp),%eax
457d0c:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
457d10:	75 4c                	jne    0x457d5e
457d12:	8b 45 08             	mov    0x8(%ebp),%eax
457d15:	8b 40 e8             	mov    -0x18(%eax),%eax
457d18:	8b 55 08             	mov    0x8(%ebp),%edx
457d1b:	89 42 e0             	mov    %eax,-0x20(%edx)
457d1e:	8b 45 08             	mov    0x8(%ebp),%eax
457d21:	8b 40 ac             	mov    -0x54(%eax),%eax
457d24:	83 e8 0a             	sub    $0xa,%eax
457d27:	8b 55 08             	mov    0x8(%ebp),%edx
457d2a:	89 42 e8             	mov    %eax,-0x18(%edx)
457d2d:	8b 45 08             	mov    0x8(%ebp),%eax
457d30:	83 c0 e0             	add    $0xffffffe0,%eax
457d33:	50                   	push   %eax
457d34:	8b 45 08             	mov    0x8(%ebp),%eax
457d37:	8a 40 d7             	mov    -0x29(%eax),%al
457d3a:	50                   	push   %eax
457d3b:	6a 02                	push   $0x2
457d3d:	8d 55 fc             	lea    -0x4(%ebp),%edx
457d40:	8b 45 08             	mov    0x8(%ebp),%eax
457d43:	8b c3                	mov    %ebx,%eax
457d45:	e8 b6 e5 ff ff       	call   0x456300
457d4a:	8b 4d fc             	mov    -0x4(%ebp),%ecx
457d4d:	8b 45 08             	mov    0x8(%ebp),%eax
457d50:	8b 50 d8             	mov    -0x28(%eax),%edx
457d53:	8b 45 08             	mov    0x8(%ebp),%eax
457d56:	8b 40 c8             	mov    -0x38(%eax),%eax
457d59:	e8 de f4 ff ff       	call   0x45723c
457d5e:	33 c0                	xor    %eax,%eax
457d60:	5a                   	pop    %edx
457d61:	59                   	pop    %ecx
457d62:	59                   	pop    %ecx
457d63:	64 89 10             	mov    %edx,%fs:(%eax)
457d66:	68 7b 7d 45 00       	push   $0x457d7b
457d6b:	8d 45 fc             	lea    -0x4(%ebp),%eax
457d6e:	e8 dd c2 fa ff       	call   0x404050
457d73:	c3                   	ret
457d74:	e9 db bc fa ff       	jmp    0x403a54
457d79:	eb f0                	jmp    0x457d6b
457d7b:	5f                   	pop    %edi
457d7c:	5e                   	pop    %esi
457d7d:	5b                   	pop    %ebx
457d7e:	59                   	pop    %ecx
457d7f:	5d                   	pop    %ebp
457d80:	c3                   	ret
457d81:	00 00                	add    %al,(%eax)