575aff:	ff 74 24 48          	push   0x48(%esp)
575b03:	4f                   	dec    %edi
575b04:	57                   	push   %edi
575b05:	ff 76 50             	push   0x50(%esi)
575b08:	89 7e 4c             	mov    %edi,0x4c(%esi)
575b0b:	e8 90 f6 f6 ff       	call   0x4e51a0
575b10:	83 c4 10             	add    $0x10,%esp
575b13:	39 7e 4c             	cmp    %edi,0x4c(%esi)
575b16:	0f 8f d1 00 00 00    	jg     0x575bed
575b1c:	57                   	push   %edi
575b1d:	83 e5 fe             	and    $0xfffffffe,%ebp
575b20:	56                   	push   %esi
575b21:	89 6c 24 18          	mov    %ebp,0x18(%esp)
575b25:	e8 f6 13 00 00       	call   0x576f20
575b2a:	8b f8                	mov    %eax,%edi
575b2c:	83 c4 08             	add    $0x8,%esp
575b2f:	89 7c 24 20          	mov    %edi,0x20(%esp)
575b33:	8d 4f ff             	lea    -0x1(%edi),%ecx
575b36:	83 f9 01             	cmp    $0x1,%ecx
575b39:	0f 86 f9 00 00 00    	jbe    0x575c38
575b3f:	85 db                	test   %ebx,%ebx
575b41:	0f 85 b7 fe ff ff    	jne    0x5759fe
575b47:	8b 4c 24 10          	mov    0x10(%esp),%ecx
575b4b:	85 c9                	test   %ecx,%ecx
575b4d:	0f 85 bd fc ff ff    	jne    0x575810
575b53:	e9 e0 00 00 00       	jmp    0x575c38
575b58:	8b 9b 80 00 00 00    	mov    0x80(%ebx),%ebx
575b5e:	c1 eb 0d             	shr    $0xd,%ebx
575b61:	83 e3 01             	and    $0x1,%ebx
575b64:	8b 46 4c             	mov    0x4c(%esi),%eax
575b67:	48                   	dec    %eax
575b68:	50                   	push   %eax
575b69:	56                   	push   %esi
575b6a:	e8 b1 0a 00 00       	call   0x576620
575b6f:	8b f8                	mov    %eax,%edi
575b71:	83 c4 08             	add    $0x8,%esp
575b74:	89 7c 24 20          	mov    %edi,0x20(%esp)
575b78:	8d 47 ff             	lea    -0x1(%edi),%eax
575b7b:	83 f8 01             	cmp    $0x1,%eax
575b7e:	0f 86 b4 00 00 00    	jbe    0x575c38
575b84:	eb c1                	jmp    0x575b47
575b86:	8b 44 24 10          	mov    0x10(%esp),%eax
575b8a:	83 e0 fe             	and    $0xfffffffe,%eax
575b8d:	8b c8                	mov    %eax,%ecx
575b8f:	83 c9 02             	or     $0x2,%ecx
575b92:	83 7c 24 34 00       	cmpl   $0x0,0x34(%esp)
575b97:	0f 44 c8             	cmove  %eax,%ecx
575b9a:	89 4c 24 10          	mov    %ecx,0x10(%esp)
575b9e:	eb ab                	jmp    0x575b4b
575ba0:	68 0d 0c 00 00       	push   $0xc0d
575ba5:	68 54 a7 65 00       	push   $0x65a754
575baa:	6a 44                	push   $0x44
575bac:	6a 6a                	push   $0x6a
575bae:	6a 0b                	push   $0xb
575bb0:	e8 cb 33 f6 ff       	call   0x4d8f80
575bb5:	ff 74 24 58          	push   0x58(%esp)
575bb9:	e8 22 16 fe ff       	call   0x5571e0
575bbe:	83 c4 18             	add    $0x18,%esp
575bc1:	eb 69                	jmp    0x575c2c
575bc3:	ff 74 24 44          	push   0x44(%esp)
575bc7:	e8 14 16 fe ff       	call   0x5571e0
575bcc:	68 2b 0c 00 00       	push   $0xc2b
575bd1:	68 54 a7 65 00       	push   $0x65a754
575bd6:	6a 41                	push   $0x41
575bd8:	6a 6a                	push   $0x6a
575bda:	6a 0b                	push   $0xb
575bdc:	e8 9f 33 f6 ff       	call   0x4d8f80
575be1:	83 c4 18             	add    $0x18,%esp
575be4:	c7 46 60 11 00 00 00 	movl   $0x11,0x60(%esi)
575beb:	eb 46                	jmp    0x575c33
575bed:	68 53 0c 00 00       	push   $0xc53
575bf2:	eb 25                	jmp    0x575c19
575bf4:	c7 46 60 46 00 00 00 	movl   $0x46,0x60(%esi)
575bfb:	eb 36                	jmp    0x575c33
575bfd:	ff 74 24 44          	push   0x44(%esp)
575c01:	e8 da 15 fe ff       	call   0x5571e0
575c06:	68 a1 0c 00 00       	push   $0xca1
575c0b:	eb c4                	jmp    0x575bd1
575c0d:	68 98 0c 00 00       	push   $0xc98
575c12:	eb 05                	jmp    0x575c19
575c14:	68 80 0c 00 00       	push   $0xc80
575c19:	68 54 a7 65 00       	push   $0x65a754
575c1e:	6a 44                	push   $0x44
575c20:	6a 6a                	push   $0x6a
575c22:	6a 0b                	push   $0xb
575c24:	e8 57 33 f6 ff       	call   0x4d8f80
575c29:	83 c4 14             	add    $0x14,%esp
575c2c:	c7 46 60 01 00 00 00 	movl   $0x1,0x60(%esi)
575c33:	bf 02 00 00 00       	mov    $0x2,%edi
575c38:	ff 74 24 18          	push   0x18(%esp)
575c3c:	e8 df f2 f6 ff       	call   0x4e4f20
575c41:	ff 76 50             	push   0x50(%esi)
575c44:	e8 77 f4 f6 ff       	call   0x4e50c0
575c49:	8b 6c 24 1c          	mov    0x1c(%esp),%ebp
575c4d:	83 c4 08             	add    $0x8,%esp
575c50:	89 44 24 2c          	mov    %eax,0x2c(%esp)
575c54:	3b 44 24 28          	cmp    0x28(%esp),%eax
575c58:	0f 8f 17 01 00 00    	jg     0x575d75
575c5e:	83 ff 03             	cmp    $0x3,%edi
575c61:	0f 85 0e 01 00 00    	jne    0x575d75
575c67:	85 ed                	test   %ebp,%ebp
575c69:	0f 84 f5 00 00 00    	je     0x575d64
575c6f:	f6 45 14 04          	testb  $0x4,0x14(%ebp)
575c73:	0f 84 eb 00 00 00    	je     0x575d64
575c79:	8b 46 4c             	mov    0x4c(%esi),%eax
575c7c:	8b be 80 00 00 00    	mov    0x80(%esi),%edi
575c82:	48                   	dec    %eax
575c83:	50                   	push   %eax
575c84:	ff 76 50             	push   0x50(%esi)
575c87:	89 7c 24 3c          	mov    %edi,0x3c(%esp)
575c8b:	89 44 24 38          	mov    %eax,0x38(%esp)
575c8f:	e8 ec f5 f6 ff       	call   0x4e5280
575c94:	ff 77 04             	push   0x4(%edi)
575c97:	89 44 24 48          	mov    %eax,0x48(%esp)
575c9b:	e8 20 f4 f6 ff       	call   0x4e50c0
575ca0:	8b c8                	mov    %eax,%ecx
575ca2:	83 c4 0c             	add    $0xc,%esp
575ca5:	33 c0                	xor    %eax,%eax
575ca7:	89 4c 24 38          	mov    %ecx,0x38(%esp)
575cab:	89 44 24 44          	mov    %eax,0x44(%esp)
575caf:	85 c9                	test   %ecx,%ecx
575cb1:	0f 8e a4 00 00 00    	jle    0x575d5b
575cb7:	50                   	push   %eax
575cb8:	ff 77 04             	push   0x4(%edi)
575cbb:	e8 c0 f5 f6 ff       	call   0x4e5280
575cc0:	8b f8                	mov    %eax,%edi
575cc2:	83 c4 08             	add    $0x8,%esp
575cc5:	80 3f 02             	cmpb   $0x2,(%edi)
575cc8:	75 1f                	jne    0x575ce9
575cca:	80 7f 01 01          	cmpb   $0x1,0x1(%edi)
575cce:	75 19                	jne    0x575ce9
575cd0:	80 7f 02 00          	cmpb   $0x0,0x2(%edi)
575cd4:	75 13                	jne    0x575ce9
575cd6:	ff 77 0c             	push   0xc(%edi)
575cd9:	ff 74 24 40          	push   0x40(%esp)
575cdd:	e8 4e 5e ff ff       	call   0x56bb30
575ce2:	83 c4 08             	add    $0x8,%esp
575ce5:	85 c0                	test   %eax,%eax
575ce7:	7f 15                	jg     0x575cfe
575ce9:	8b 44 24 44          	mov    0x44(%esp),%eax
575ced:	40                   	inc    %eax
575cee:	89 44 24 44          	mov    %eax,0x44(%esp)
575cf2:	3b 44 24 38          	cmp    0x38(%esp),%eax
575cf6:	7d 63                	jge    0x575d5b
575cf8:	8b 7c 24 34          	mov    0x34(%esp),%edi
575cfc:	eb b9                	jmp    0x575cb7
575cfe:	8b 5c 24 34          	mov    0x34(%esp),%ebx
575d02:	ff 73 10             	push   0x10(%ebx)
575d05:	e8 d6 14 fe ff       	call   0x5571e0
575d0a:	8b 44 24 34          	mov    0x34(%esp),%eax
575d0e:	c7 43 10 00 00 00 00 	movl   $0x0,0x10(%ebx)
575d15:	c7 86 84 00 00 00 01 	movl   $0x1,0x84(%esi)
575d1c:	00 00 00
575d1f:	89 43 18             	mov    %eax,0x18(%ebx)
575d22:	89 7b 0c             	mov    %edi,0xc(%ebx)
575d25:	ff 76 50             	push   0x50(%esi)
575d28:	e8 93 f3 f6 ff       	call   0x4e50c0
575d2d:	8b f8                	mov    %eax,%edi
575d2f:	83 c4 08             	add    $0x8,%esp
575d32:	3b 7e 4c             	cmp    0x4c(%esi),%edi
575d35:	7e 17                	jle    0x575d4e
575d37:	ff 76 50             	push   0x50(%esi)
575d3a:	e8 91 f3 f6 ff       	call   0x4e50d0
575d3f:	50                   	push   %eax
575d40:	e8 9b 14 fe ff       	call   0x5571e0
575d45:	4f                   	dec    %edi
575d46:	83 c4 08             	add    $0x8,%esp
575d49:	3b 7e 4c             	cmp    0x4c(%esi),%edi
575d4c:	7f e9                	jg     0x575d37
575d4e:	5f                   	pop    %edi
575d4f:	5e                   	pop    %esi
575d50:	5d                   	pop    %ebp
575d51:	b8 01 00 00 00       	mov    $0x1,%eax
575d56:	5b                   	pop    %ebx
575d57:	83 c4 30             	add    $0x30,%esp
575d5a:	c3                   	ret
575d5b:	8b 44 24 2c          	mov    0x2c(%esp),%eax
575d5f:	bf 03 00 00 00       	mov    $0x3,%edi
575d64:	3b 46 4c             	cmp    0x4c(%esi),%eax
575d67:	75 0c                	jne    0x575d75
575d69:	50                   	push   %eax
575d6a:	56                   	push   %esi
575d6b:	e8 b0 11 00 00       	call   0x576f20
575d70:	83 c4 08             	add    $0x8,%esp
575d73:	8b f8                	mov    %eax,%edi
575d75:	83 ef 01             	sub    $0x1,%edi
575d78:	74 d4                	je     0x575d4e
575d7a:	83 ef 01             	sub    $0x1,%edi
575d7d:	0f 84 63 01 00 00    	je     0x575ee6
575d83:	ff 76 50             	push   0x50(%esi)
575d86:	e8 35 f3 f6 ff       	call   0x4e50c0
575d8b:	8b f8                	mov    %eax,%edi
575d8d:	83 c4 04             	add    $0x4,%esp
575d90:	3b 7c 24 28          	cmp    0x28(%esp),%edi
575d94:	7e 2c                	jle    0x575dc2
575d96:	8d 47 ff             	lea    -0x1(%edi),%eax
575d99:	50                   	push   %eax
575d9a:	ff 76 50             	push   0x50(%esi)
575d9d:	89 46 5c             	mov    %eax,0x5c(%esi)
575da0:	e8 db f4 f6 ff       	call   0x4e5280
575da5:	89 46 64             	mov    %eax,0x64(%esi)
575da8:	8b 46 1c             	mov    0x1c(%esi),%eax
575dab:	56                   	push   %esi
575dac:	6a 00                	push   $0x0
575dae:	c7 46 60 16 00 00 00 	movl   $0x16,0x60(%esi)
575db5:	ff d0                	call   *%eax
575db7:	83 c4 10             	add    $0x10,%esp
575dba:	5f                   	pop    %edi
575dbb:	5e                   	pop    %esi
575dbc:	5d                   	pop    %ebp
575dbd:	5b                   	pop    %ebx
575dbe:	83 c4 30             	add    $0x30,%esp
575dc1:	c3                   	ret
575dc2:	85 ed                	test   %ebp,%ebp
575dc4:	74 47                	je     0x575e0d
575dc6:	ff 75 04             	push   0x4(%ebp)
575dc9:	e8 f2 f2 f6 ff       	call   0x4e50c0
575dce:	83 c4 04             	add    $0x4,%esp
575dd1:	85 c0                	test   %eax,%eax
575dd3:	7e 38                	jle    0x575e0d
575dd5:	f6 45 14 03          	testb  $0x3,0x14(%ebp)
575dd9:	74 06                	je     0x575de1
575ddb:	83 7d 1c 00          	cmpl   $0x0,0x1c(%ebp)
575ddf:	7c 2c                	jl     0x575e0d
575de1:	8d 47 ff             	lea    -0x1(%edi),%eax
575de4:	50                   	push   %eax
575de5:	ff 76 50             	push   0x50(%esi)
575de8:	89 46 5c             	mov    %eax,0x5c(%esi)
575deb:	e8 90 f4 f6 ff       	call   0x4e5280
575df0:	89 46 64             	mov    %eax,0x64(%esi)
575df3:	8b 46 1c             	mov    0x1c(%esi),%eax
575df6:	56                   	push   %esi
575df7:	6a 00                	push   $0x0
575df9:	c7 46 60 41 00 00 00 	movl   $0x41,0x60(%esi)
575e00:	ff d0                	call   *%eax
575e02:	83 c4 10             	add    $0x10,%esp
575e05:	5f                   	pop    %edi
575e06:	5e                   	pop    %esi
575e07:	5d                   	pop    %ebp
575e08:	5b                   	pop    %ebx
575e09:	83 c4 30             	add    $0x30,%esp
575e0c:	c3                   	ret
575e0d:	85 db                	test   %ebx,%ebx
575e0f:	74 3c                	je     0x575e4d
575e11:	ff 76 50             	push   0x50(%esi)
575e14:	e8 a7 f2 f6 ff       	call   0x4e50c0
575e19:	83 c4 04             	add    $0x4,%esp
575e1c:	83 f8 01             	cmp    $0x1,%eax
575e1f:	75 2c                	jne    0x575e4d
575e21:	8d 47 ff             	lea    -0x1(%edi),%eax
575e24:	50                   	push   %eax
575e25:	ff 76 50             	push   0x50(%esi)
575e28:	89 46 5c             	mov    %eax,0x5c(%esi)
575e2b:	e8 50 f4 f6 ff       	call   0x4e5280
575e30:	89 46 64             	mov    %eax,0x64(%esi)
575e33:	8b 46 1c             	mov    0x1c(%esi),%eax
575e36:	56                   	push   %esi
575e37:	6a 00                	push   $0x0
575e39:	c7 46 60 12 00 00 00 	movl   $0x12,0x60(%esi)
575e40:	ff d0                	call   *%eax
575e42:	83 c4 10             	add    $0x10,%esp
575e45:	5f                   	pop    %edi
575e46:	5e                   	pop    %esi
575e47:	5d                   	pop    %ebp
575e48:	5b                   	pop    %ebx
575e49:	83 c4 30             	add    $0x30,%esp
575e4c:	c3                   	ret
575e4d:	8b 4e 50             	mov    0x50(%esi),%ecx
575e50:	8d 47 ff             	lea    -0x1(%edi),%eax
575e53:	89 46 5c             	mov    %eax,0x5c(%esi)
575e56:	50                   	push   %eax
575e57:	51                   	push   %ecx
575e58:	85 db                	test   %ebx,%ebx
575e5a:	74 22                	je     0x575e7e
575e5c:	e8 1f f4 f6 ff       	call   0x4e5280
575e61:	89 46 64             	mov    %eax,0x64(%esi)
575e64:	8b 46 1c             	mov    0x1c(%esi),%eax
575e67:	56                   	push   %esi
575e68:	6a 00                	push   $0x0
575e6a:	c7 46 60 13 00 00 00 	movl   $0x13,0x60(%esi)
575e71:	ff d0                	call   *%eax
575e73:	83 c4 10             	add    $0x10,%esp
575e76:	5f                   	pop    %edi
575e77:	5e                   	pop    %esi
575e78:	5d                   	pop    %ebp
575e79:	5b                   	pop    %ebx
575e7a:	83 c4 30             	add    $0x30,%esp
575e7d:	c3                   	ret
575e7e:	39 7e 4c             	cmp    %edi,0x4c(%esi)
575e81:	7d 22                	jge    0x575ea5
575e83:	e8 f8 f3 f6 ff       	call   0x4e5280
575e88:	89 46 64             	mov    %eax,0x64(%esi)
575e8b:	8b 46 1c             	mov    0x1c(%esi),%eax
575e8e:	56                   	push   %esi
575e8f:	6a 00                	push   $0x0
575e91:	c7 46 60 02 00 00 00 	movl   $0x2,0x60(%esi)
575e98:	ff d0                	call   *%eax
575e9a:	83 c4 10             	add    $0x10,%esp
575e9d:	5f                   	pop    %edi
575e9e:	5e                   	pop    %esi
575e9f:	5d                   	pop    %ebp
575ea0:	5b                   	pop    %ebx
575ea1:	83 c4 30             	add    $0x30,%esp
575ea4:	c3                   	ret
575ea5:	e8 d6 f3 f6 ff       	call   0x4e5280
575eaa:	89 46 64             	mov    %eax,0x64(%esi)
575ead:	8b 46 1c             	mov    0x1c(%esi),%eax
575eb0:	56                   	push   %esi
575eb1:	6a 00                	push   $0x0
575eb3:	c7 46 60 14 00 00 00 	movl   $0x14,0x60(%esi)
575eba:	ff d0                	call   *%eax
575ebc:	83 c4 10             	add    $0x10,%esp
575ebf:	5f                   	pop    %edi
575ec0:	5e                   	pop    %esi
575ec1:	5d                   	pop    %ebp
575ec2:	5b                   	pop    %ebx
575ec3:	83 c4 30             	add    $0x30,%esp
575ec6:	c3                   	ret
575ec7:	68 80 0b 00 00       	push   $0xb80
575ecc:	68 54 a7 65 00       	push   $0x65a754
575ed1:	6a 44                	push   $0x44
575ed3:	6a 6a                	push   $0x6a
575ed5:	6a 0b                	push   $0xb
575ed7:	e8 a4 30 f6 ff       	call   0x4d8f80
575edc:	c7 46 60 01 00 00 00 	movl   $0x1,0x60(%esi)
575ee3:	83 c4 14             	add    $0x14,%esp
575ee6:	5f                   	pop    %edi
575ee7:	5e                   	pop    %esi
575ee8:	5d                   	pop    %ebp
575ee9:	33 c0                	xor    %eax,%eax
575eeb:	5b                   	pop    %ebx
575eec:	83 c4 30             	add    $0x30,%esp
575eef:	c3                   	ret
575ef0:	56                   	push   %esi
575ef1:	8b 74 24 08          	mov    0x8(%esp),%esi
575ef5:	57                   	push   %edi
575ef6:	8b 7c 24 10          	mov    0x10(%esp),%edi
575efa:	8b 46 10             	mov    0x10(%esi),%eax
575efd:	f6 40 14 10          	testb  $0x10,0x14(%eax)
575f01:	75 1f                	jne    0x575f22
575f03:	f7 47 48 00 02 00 00 	testl  $0x200,0x48(%edi)
575f0a:	74 16                	je     0x575f22
575f0c:	8b 46 1c             	mov    0x1c(%esi),%eax
575f0f:	56                   	push   %esi
575f10:	6a 00                	push   $0x0
575f12:	c7 46 60 24 00 00 00 	movl   $0x24,0x60(%esi)
575f19:	ff d0                	call   *%eax
575f1b:	83 c4 08             	add    $0x8,%esp
575f1e:	85 c0                	test   %eax,%eax
575f20:	74 3e                	je     0x575f60