519c15:	80 3f 2e             	cmpb   $0x2e,(%edi)
519c18:	0f 84 60 01 00 00    	je     0x519d7e
519c1e:	38 5e 18             	cmp    %bl,0x18(%esi)
519c21:	8d 4e 18             	lea    0x18(%esi),%ecx
519c24:	0f 84 a2 00 00 00    	je     0x519ccc
519c2a:	8b 46 2c             	mov    0x2c(%esi),%eax
519c2d:	85 c0                	test   %eax,%eax
519c2f:	74 0e                	je     0x519c3f
519c31:	83 f8 04             	cmp    $0x4,%eax
519c34:	74 09                	je     0x519c3f
519c36:	83 f8 05             	cmp    $0x5,%eax
519c39:	0f 85 3f 01 00 00    	jne    0x519d7e
519c3f:	6a 08                	push   $0x8
519c41:	51                   	push   %ecx
519c42:	57                   	push   %edi
519c43:	e8 11 bd 0c 00       	call   0x5e5959
519c48:	83 c4 0c             	add    $0xc,%esp
519c4b:	85 c0                	test   %eax,%eax
519c4d:	0f 85 2b 01 00 00    	jne    0x519d7e
519c53:	80 7f 08 2e          	cmpb   $0x2e,0x8(%edi)
519c57:	0f 85 21 01 00 00    	jne    0x519d7e
519c5d:	8a 4f 09             	mov    0x9(%edi),%cl
519c60:	83 c7 09             	add    $0x9,%edi
519c63:	8b 46 2c             	mov    0x2c(%esi),%eax
519c66:	80 f9 72             	cmp    $0x72,%cl
519c69:	75 12                	jne    0x519c7d
519c6b:	47                   	inc    %edi
519c6c:	85 c0                	test   %eax,%eax
519c6e:	74 09                	je     0x519c79
519c70:	83 f8 05             	cmp    $0x5,%eax
519c73:	0f 85 05 01 00 00    	jne    0x519d7e
519c79:	8a 0f                	mov    (%edi),%cl
519c7b:	eb 09                	jmp    0x519c86
519c7d:	83 f8 05             	cmp    $0x5,%eax
519c80:	0f 84 f8 00 00 00    	je     0x519d7e
519c86:	0f be c1             	movsbl %cl,%eax
519c89:	6a 04                	push   $0x4
519c8b:	50                   	push   %eax
519c8c:	e8 0f a4 fc ff       	call   0x4e40a0
519c91:	83 c4 08             	add    $0x8,%esp
519c94:	85 c0                	test   %eax,%eax
519c96:	0f 84 e2 00 00 00    	je     0x519d7e
519c9c:	0f be 07             	movsbl (%edi),%eax
519c9f:	6a 04                	push   $0x4
519ca1:	50                   	push   %eax
519ca2:	e8 f9 a3 fc ff       	call   0x4e40a0
519ca7:	83 c4 08             	add    $0x8,%esp
519caa:	85 c0                	test   %eax,%eax
519cac:	74 16                	je     0x519cc4
519cae:	66 90                	xchg   %ax,%ax
519cb0:	0f be 47 01          	movsbl 0x1(%edi),%eax
519cb4:	47                   	inc    %edi
519cb5:	6a 04                	push   $0x4
519cb7:	50                   	push   %eax
519cb8:	e8 e3 a3 fc ff       	call   0x4e40a0
519cbd:	83 c4 08             	add    $0x8,%esp
519cc0:	85 c0                	test   %eax,%eax
519cc2:	75 ec                	jne    0x519cb0
519cc4:	38 1f                	cmp    %bl,(%edi)
519cc6:	0f 85 b2 00 00 00    	jne    0x519d7e
519ccc:	8b 56 14             	mov    0x14(%esi),%edx
519ccf:	8b 5e 24             	mov    0x24(%esi),%ebx
519cd2:	89 5c 24 24          	mov    %ebx,0x24(%esp)
519cd6:	8a 02                	mov    (%edx),%al
519cd8:	84 c0                	test   %al,%al
519cda:	74 12                	je     0x519cee
519cdc:	8b ca                	mov    %edx,%ecx
519cde:	8d 79 01             	lea    0x1(%ecx),%edi
519ce1:	8a 01                	mov    (%ecx),%al
519ce3:	41                   	inc    %ecx
519ce4:	84 c0                	test   %al,%al
519ce6:	75 f9                	jne    0x519ce1
519ce8:	2b cf                	sub    %edi,%ecx
519cea:	8a 44 11 ff          	mov    -0x1(%ecx,%edx,1),%al
519cee:	3c 5c                	cmp    $0x5c,%al
519cf0:	75 07                	jne    0x519cf9
519cf2:	b9 01 00 00 00       	mov    $0x1,%ecx
519cf7:	eb 07                	jmp    0x519d00
519cf9:	33 c9                	xor    %ecx,%ecx
519cfb:	3c 2f                	cmp    $0x2f,%al
519cfd:	0f 94 c1             	sete   %cl
519d00:	85 c9                	test   %ecx,%ecx
519d02:	bd 64 25 60 00       	mov    $0x602564,%ebp
519d07:	b8 80 c6 60 00       	mov    $0x60c680,%eax
519d0c:	8d 4a 01             	lea    0x1(%edx),%ecx
519d0f:	0f 44 e8             	cmove  %eax,%ebp
519d12:	8a 02                	mov    (%edx),%al
519d14:	42                   	inc    %edx
519d15:	84 c0                	test   %al,%al
519d17:	75 f9                	jne    0x519d12
519d19:	2b d1                	sub    %ecx,%edx
519d1b:	8b cd                	mov    %ebp,%ecx
519d1d:	8d 79 01             	lea    0x1(%ecx),%edi
519d20:	8a 01                	mov    (%ecx),%al
519d22:	41                   	inc    %ecx
519d23:	84 c0                	test   %al,%al
519d25:	75 f9                	jne    0x519d20
519d27:	2b cf                	sub    %edi,%ecx
519d29:	8b fb                	mov    %ebx,%edi
519d2b:	8d 5f 01             	lea    0x1(%edi),%ebx
519d2e:	66 90                	xchg   %ax,%ax
519d30:	8a 07                	mov    (%edi),%al
519d32:	47                   	inc    %edi
519d33:	84 c0                	test   %al,%al
519d35:	75 f9                	jne    0x519d30
519d37:	2b fb                	sub    %ebx,%edi
519d39:	68 b6 04 00 00       	push   $0x4b6
519d3e:	68 a0 06 64 00       	push   $0x6406a0
519d43:	8d 04 39             	lea    (%ecx,%edi,1),%eax
519d46:	8d 7a 01             	lea    0x1(%edx),%edi
519d49:	03 f8                	add    %eax,%edi
519d4b:	57                   	push   %edi
519d4c:	e8 ef 6c fc ff       	call   0x4e0a40
519d51:	8b d8                	mov    %eax,%ebx
519d53:	83 c4 0c             	add    $0xc,%esp
519d56:	85 db                	test   %ebx,%ebx
519d58:	0f 84 8e 00 00 00    	je     0x519dec
519d5e:	57                   	push   %edi
519d5f:	ff 76 14             	push   0x14(%esi)
519d62:	53                   	push   %ebx
519d63:	e8 f8 86 fc ff       	call   0x4e2460
519d68:	57                   	push   %edi
519d69:	55                   	push   %ebp
519d6a:	53                   	push   %ebx
519d6b:	e8 f0 86 fc ff       	call   0x4e2460
519d70:	57                   	push   %edi
519d71:	ff 74 24 40          	push   0x40(%esp)
519d75:	53                   	push   %ebx
519d76:	e8 e5 86 fc ff       	call   0x4e2460
519d7b:	83 c4 24             	add    $0x24,%esp
519d7e:	ff 76 14             	push   0x14(%esi)
519d81:	8d 7e 0c             	lea    0xc(%esi),%edi
519d84:	57                   	push   %edi
519d85:	e8 96 01 04 00       	call   0x559f20
519d8a:	83 c4 08             	add    $0x8,%esp
519d8d:	89 46 24             	mov    %eax,0x24(%esi)
519d90:	e8 f3 0e 0c 00       	call   0x5dac88
519d95:	83 7e 24 00          	cmpl   $0x0,0x24(%esi)
519d99:	8b 00                	mov    (%eax),%eax
519d9b:	89 46 28             	mov    %eax,0x28(%esi)
519d9e:	75 0b                	jne    0x519dab
519da0:	85 c0                	test   %eax,%eax
519da2:	75 07                	jne    0x519dab
519da4:	c7 46 10 01 00 00 00 	movl   $0x1,0x10(%esi)
519dab:	85 db                	test   %ebx,%ebx
519dad:	75 70                	jne    0x519e1f
519daf:	83 3e 02             	cmpl   $0x2,(%esi)
519db2:	8b 46 10             	mov    0x10(%esi),%eax
519db5:	74 27                	je     0x519dde
519db7:	85 c0                	test   %eax,%eax
519db9:	74 13                	je     0x519dce
519dbb:	ff 76 14             	push   0x14(%esi)
519dbe:	8b 40 08             	mov    0x8(%eax),%eax
519dc1:	ff d0                	call   *%eax
519dc3:	83 c4 04             	add    $0x4,%esp
519dc6:	85 c0                	test   %eax,%eax
519dc8:	0f 84 3a fe ff ff    	je     0x519c08
519dce:	6a 00                	push   $0x0
519dd0:	6a 00                	push   $0x0
519dd2:	6a 02                	push   $0x2
519dd4:	ff 37                	push   (%edi)
519dd6:	e8 55 ed fd ff       	call   0x4f8b30
519ddb:	83 c4 10             	add    $0x10,%esp
519dde:	85 c0                	test   %eax,%eax
519de0:	0f 84 22 fe ff ff    	je     0x519c08
519de6:	33 db                	xor    %ebx,%ebx
519de8:	8b c3                	mov    %ebx,%eax
519dea:	eb 1a                	jmp    0x519e06
519dec:	68 b8 04 00 00       	push   $0x4b8
519df1:	68 a0 06 64 00       	push   $0x6406a0
519df6:	6a 41                	push   $0x41
519df8:	6a 7e                	push   $0x7e
519dfa:	6a 2c                	push   $0x2c
519dfc:	e8 7f f1 fb ff       	call   0x4d8f80
519e01:	83 c4 14             	add    $0x14,%esp
519e04:	33 c0                	xor    %eax,%eax
519e06:	8b 8c 24 54 01 00 00 	mov    0x154(%esp),%ecx
519e0d:	5f                   	pop    %edi
519e0e:	5e                   	pop    %esi
519e0f:	5d                   	pop    %ebp
519e10:	5b                   	pop    %ebx
519e11:	33 cc                	xor    %esp,%ecx
519e13:	e8 0e 7c 0b 00       	call   0x5d1a26
519e18:	81 c4 48 01 00 00    	add    $0x148,%esp
519e1e:	c3                   	ret
519e1f:	53                   	push   %ebx
519e20:	e8 3b f1 03 00       	call   0x558f60
519e25:	83 c4 04             	add    $0x4,%esp
519e28:	89 44 24 20          	mov    %eax,0x20(%esp)
519e2c:	85 c0                	test   %eax,%eax
519e2e:	0f 85 05 04 00 00    	jne    0x51a239
519e34:	68 2f 05 00 00       	push   $0x52f
519e39:	68 a0 06 64 00       	push   $0x6406a0
519e3e:	53                   	push   %ebx
519e3f:	e8 3c 69 fc ff       	call   0x4e0780
519e44:	68 30 05 00 00       	push   $0x530
519e49:	68 a0 06 64 00       	push   $0x6406a0
519e4e:	6a 2c                	push   $0x2c
519e50:	6a 77                	push   $0x77
519e52:	6a 2c                	push   $0x2c
519e54:	e8 27 f1 fb ff       	call   0x4d8f80
519e59:	83 c4 20             	add    $0x20,%esp
519e5c:	eb a6                	jmp    0x519e04
519e5e:	39 5e 10             	cmp    %ebx,0x10(%esi)
519e61:	75 a1                	jne    0x519e04
519e63:	68 13 05 00 00       	push   $0x513
519e68:	68 a0 06 64 00       	push   $0x6406a0
519e6d:	6a 02                	push   $0x2
519e6f:	6a 77                	push   $0x77
519e71:	6a 2c                	push   $0x2c
519e73:	e8 08 f1 fb ff       	call   0x4d8f80
519e78:	e8 0b 0e 0c 00       	call   0x5dac88
519e7d:	8b 4e 28             	mov    0x28(%esi),%ecx
519e80:	89 08                	mov    %ecx,(%eax)
519e82:	ff 46 04             	incl   0x4(%esi)
519e85:	e8 fe 0d 0c 00       	call   0x5dac88
519e8a:	68 00 01 00 00       	push   $0x100
519e8f:	8d 4c 24 6c          	lea    0x6c(%esp),%ecx
519e93:	51                   	push   %ecx
519e94:	ff 30                	push   (%eax)
519e96:	e8 85 86 fc ff       	call   0x4e2520
519e9b:	83 c4 20             	add    $0x20,%esp
519e9e:	85 c0                	test   %eax,%eax
519ea0:	0f 84 5e ff ff ff    	je     0x519e04
519ea6:	8d 44 24 54          	lea    0x54(%esp),%eax
519eaa:	50                   	push   %eax
519eab:	6a 01                	push   $0x1
519ead:	e8 be e7 fb ff       	call   0x4d8670
519eb2:	83 c4 08             	add    $0x8,%esp
519eb5:	e9 4a ff ff ff       	jmp    0x519e04
519eba:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
519ec0:	8b 4e 10             	mov    0x10(%esi),%ecx
519ec3:	33 c0                	xor    %eax,%eax
519ec5:	89 44 24 30          	mov    %eax,0x30(%esp)
519ec9:	85 c9                	test   %ecx,%ecx
519ecb:	74 3b                	je     0x519f08
519ecd:	ff 74 24 28          	push   0x28(%esp)
519ed1:	8d 44 24 34          	lea    0x34(%esp),%eax
519ed5:	55                   	push   %ebp
519ed6:	50                   	push   %eax
519ed7:	8b 41 04             	mov    0x4(%ecx),%eax
519eda:	8d 7e 14             	lea    0x14(%esi),%edi
519edd:	57                   	push   %edi
519ede:	6a 00                	push   $0x0
519ee0:	6a 00                	push   $0x0
519ee2:	6a 00                	push   $0x0
519ee4:	6a 00                	push   $0x0
519ee6:	ff d0                	call   *%eax
519ee8:	83 c4 20             	add    $0x20,%esp
519eeb:	8b d8                	mov    %eax,%ebx
519eed:	89 5c 24 20          	mov    %ebx,0x20(%esp)
519ef1:	85 c0                	test   %eax,%eax
519ef3:	75 13                	jne    0x519f08
519ef5:	8b 46 10             	mov    0x10(%esi),%eax
519ef8:	57                   	push   %edi
519ef9:	8b 40 0c             	mov    0xc(%eax),%eax
519efc:	ff d0                	call   *%eax
519efe:	83 c4 04             	add    $0x4,%esp
519f01:	89 1f                	mov    %ebx,(%edi)
519f03:	89 5e 10             	mov    %ebx,0x10(%esi)
519f06:	eb 0e                	jmp    0x519f16
519f08:	89 44 24 20          	mov    %eax,0x20(%esp)
519f0c:	8b d8                	mov    %eax,%ebx
519f0e:	85 c0                	test   %eax,%eax
519f10:	0f 85 f0 fe ff ff    	jne    0x519e06
519f16:	83 3e 02             	cmpl   $0x2,(%esi)
519f19:	8b 46 10             	mov    0x10(%esi),%eax
519f1c:	74 24                	je     0x519f42
519f1e:	85 c0                	test   %eax,%eax
519f20:	74 0f                	je     0x519f31
519f22:	ff 76 14             	push   0x14(%esi)
519f25:	8b 40 08             	mov    0x8(%eax),%eax
519f28:	ff d0                	call   *%eax
519f2a:	83 c4 04             	add    $0x4,%esp
519f2d:	85 c0                	test   %eax,%eax
519f2f:	74 1f                	je     0x519f50
519f31:	6a 00                	push   $0x0
519f33:	6a 00                	push   $0x0
519f35:	6a 02                	push   $0x2
519f37:	ff 76 0c             	push   0xc(%esi)
519f3a:	e8 f1 eb fd ff       	call   0x4f8b30
519f3f:	83 c4 10             	add    $0x10,%esp
519f42:	85 c0                	test   %eax,%eax
519f44:	0f 85 ba fe ff ff    	jne    0x519e04
519f4a:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
519f50:	8b 46 0c             	mov    0xc(%esi),%eax
519f53:	83 cf ff             	or     $0xffffffff,%edi
519f56:	83 3e 01             	cmpl   $0x1,(%esi)
519f59:	c7 44 24 10 00 00 00 	movl   $0x0,0x10(%esp)
519f60:	00
519f61:	c7 44 24 14 00 00 00 	movl   $0x0,0x14(%esp)
519f68:	00
519f69:	c7 44 24 18 00 00 00 	movl   $0x0,0x18(%esp)
519f70:	00
519f71:	c7 44 24 1c 00 00 00 	movl   $0x0,0x1c(%esp)
519f78:	00
519f79:	89 7c 24 2c          	mov    %edi,0x2c(%esp)
519f7d:	0f 85 b2 00 00 00    	jne    0x51a035
519f83:	f6 46 08 01          	testb  $0x1,0x8(%esi)
519f87:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
519f8b:	74 1d                	je     0x519faa
519f8d:	6a 03                	push   $0x3
519f8f:	51                   	push   %ecx
519f90:	8d 4c 24 20          	lea    0x20(%esp),%ecx
519f94:	51                   	push   %ecx
519f95:	8d 4c 24 20          	lea    0x20(%esp),%ecx
519f99:	51                   	push   %ecx
519f9a:	8d 4c 24 20          	lea    0x20(%esp),%ecx
519f9e:	51                   	push   %ecx
519f9f:	50                   	push   %eax
519fa0:	e8 cb b3 03 00       	call   0x555370
519fa5:	83 c4 18             	add    $0x18,%esp
519fa8:	eb 19                	jmp    0x519fc3
519faa:	51                   	push   %ecx
519fab:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
519faf:	51                   	push   %ecx
519fb0:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
519fb4:	51                   	push   %ecx
519fb5:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
519fb9:	51                   	push   %ecx
519fba:	50                   	push   %eax
519fbb:	e8 90 b3 03 00       	call   0x555350
519fc0:	83 c4 14             	add    $0x14,%esp
519fc3:	85 c0                	test   %eax,%eax
519fc5:	7e 65                	jle    0x51a02c
519fc7:	8b 54 24 14          	mov    0x14(%esp),%edx
519fcb:	8b ca                	mov    %edx,%ecx
519fcd:	8d 59 01             	lea    0x1(%ecx),%ebx
519fd0:	8a 01                	mov    (%ecx),%al
519fd2:	41                   	inc    %ecx
519fd3:	84 c0                	test   %al,%al
519fd5:	75 f9                	jne    0x519fd0
519fd7:	2b cb                	sub    %ebx,%ecx
519fd9:	83 f9 0a             	cmp    $0xa,%ecx
519fdc:	0f 86 99 00 00 00    	jbe    0x51a07b
519fe2:	8d 44 24 40          	lea    0x40(%esp),%eax
519fe6:	50                   	push   %eax
519fe7:	52                   	push   %edx
519fe8:	e8 c3 b0 03 00       	call   0x5550b0
519fed:	83 c4 08             	add    $0x8,%esp
519ff0:	85 c0                	test   %eax,%eax
519ff2:	74 38                	je     0x51a02c
519ff4:	8b 44 24 28          	mov    0x28(%esp),%eax
519ff8:	89 44 24 38          	mov    %eax,0x38(%esp)
519ffc:	8d 44 24 34          	lea    0x34(%esp),%eax
51a000:	50                   	push   %eax
51a001:	68 d0 a3 51 00       	push   $0x51a3d0
51a006:	8d 44 24 24          	lea    0x24(%esp),%eax
51a00a:	89 6c 24 3c          	mov    %ebp,0x3c(%esp)
51a00e:	50                   	push   %eax