554b61:	8b 55 e0             	mov    -0x20(%ebp),%edx
554b64:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554b67:	4a                   	dec    %edx
554b68:	8b 47 44             	mov    0x44(%edi),%eax
554b6b:	89 45 c4             	mov    %eax,-0x3c(%ebp)
554b6e:	39 4e 70             	cmp    %ecx,0x70(%esi)
554b71:	7f 12                	jg     0x554b85
554b73:	52                   	push   %edx
554b74:	50                   	push   %eax
554b75:	ff 75 dc             	push   -0x24(%ebp)
554b78:	6a 4d                	push   $0x4d
554b7a:	56                   	push   %esi
554b7b:	e8 80 19 fb ff       	call   0x506500
554b80:	83 c4 14             	add    $0x14,%esp
554b83:	eb 30                	jmp    0x554bb5
554b85:	8b 5d dc             	mov    -0x24(%ebp),%ebx
554b88:	8d 41 01             	lea    0x1(%ecx),%eax
554b8b:	89 46 6c             	mov    %eax,0x6c(%esi)
554b8e:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554b91:	8b 46 68             	mov    0x68(%esi),%eax
554b94:	89 5c 88 04          	mov    %ebx,0x4(%eax,%ecx,4)
554b98:	8b 5d c4             	mov    -0x3c(%ebp),%ebx
554b9b:	89 5c 88 08          	mov    %ebx,0x8(%eax,%ecx,4)
554b9f:	8b 5d 08             	mov    0x8(%ebp),%ebx
554ba2:	c7 04 88 4d 00 00 00 	movl   $0x4d,(%eax,%ecx,4)
554ba9:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
554bad:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554bb4:	00
554bb5:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554bb8:	39 4e 70             	cmp    %ecx,0x70(%esi)
554bbb:	7f 19                	jg     0x554bd6
554bbd:	8b 55 e4             	mov    -0x1c(%ebp),%edx
554bc0:	6a 00                	push   $0x0
554bc2:	52                   	push   %edx
554bc3:	ff 75 18             	push   0x18(%ebp)
554bc6:	6a 78                	push   $0x78
554bc8:	56                   	push   %esi
554bc9:	e8 32 19 fb ff       	call   0x506500
554bce:	8b 55 e4             	mov    -0x1c(%ebp),%edx
554bd1:	83 c4 14             	add    $0x14,%esp
554bd4:	eb 31                	jmp    0x554c07
554bd6:	8b 55 18             	mov    0x18(%ebp),%edx
554bd9:	8d 41 01             	lea    0x1(%ecx),%eax
554bdc:	89 46 6c             	mov    %eax,0x6c(%esi)
554bdf:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554be2:	8b 46 68             	mov    0x68(%esi),%eax
554be5:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
554be9:	8b 55 e4             	mov    -0x1c(%ebp),%edx
554bec:	c7 04 88 78 00 00 00 	movl   $0x78,(%eax,%ecx,4)
554bf3:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
554bf7:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
554bfe:	00
554bff:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554c06:	00
554c07:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554c0a:	39 4e 70             	cmp    %ecx,0x70(%esi)
554c0d:	7f 14                	jg     0x554c23
554c0f:	52                   	push   %edx
554c10:	ff 75 d8             	push   -0x28(%ebp)
554c13:	ff 75 18             	push   0x18(%ebp)
554c16:	6a 79                	push   $0x79
554c18:	56                   	push   %esi
554c19:	e8 e2 18 fb ff       	call   0x506500
554c1e:	83 c4 14             	add    $0x14,%esp
554c21:	eb 30                	jmp    0x554c53
554c23:	8b 5d 18             	mov    0x18(%ebp),%ebx
554c26:	8d 41 01             	lea    0x1(%ecx),%eax
554c29:	89 46 6c             	mov    %eax,0x6c(%esi)
554c2c:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554c2f:	8b 46 68             	mov    0x68(%esi),%eax
554c32:	89 5c 88 04          	mov    %ebx,0x4(%eax,%ecx,4)
554c36:	8b 5d d8             	mov    -0x28(%ebp),%ebx
554c39:	89 5c 88 08          	mov    %ebx,0x8(%eax,%ecx,4)
554c3d:	8b 5d 08             	mov    0x8(%ebp),%ebx
554c40:	c7 04 88 79 00 00 00 	movl   $0x79,(%eax,%ecx,4)
554c47:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
554c4b:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554c52:	00
554c53:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554c56:	8b 57 54             	mov    0x54(%edi),%edx
554c59:	89 4d d8             	mov    %ecx,-0x28(%ebp)
554c5c:	39 4e 70             	cmp    %ecx,0x70(%esi)
554c5f:	7f 16                	jg     0x554c77
554c61:	ff 75 e4             	push   -0x1c(%ebp)
554c64:	6a 00                	push   $0x0
554c66:	52                   	push   %edx
554c67:	6a 34                	push   $0x34
554c69:	56                   	push   %esi
554c6a:	e8 91 18 fb ff       	call   0x506500
554c6f:	83 c4 14             	add    $0x14,%esp
554c72:	89 45 d8             	mov    %eax,-0x28(%ebp)
554c75:	eb 31                	jmp    0x554ca8
554c77:	8b 5d 08             	mov    0x8(%ebp),%ebx
554c7a:	8d 41 01             	lea    0x1(%ecx),%eax
554c7d:	89 46 6c             	mov    %eax,0x6c(%esi)
554c80:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554c83:	8b 46 68             	mov    0x68(%esi),%eax
554c86:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
554c8a:	8b 55 e4             	mov    -0x1c(%ebp),%edx
554c8d:	c7 04 88 34 00 00 00 	movl   $0x34,(%eax,%ecx,4)
554c94:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
554c9b:	00
554c9c:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
554ca0:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554ca7:	00
554ca8:	57                   	push   %edi
554ca9:	53                   	push   %ebx
554caa:	e8 31 32 01 00       	call   0x567ee0
554caf:	89 45 a4             	mov    %eax,-0x5c(%ebp)
554cb2:	83 c4 08             	add    $0x8,%esp
554cb5:	8b 45 0c             	mov    0xc(%ebp),%eax
554cb8:	85 c0                	test   %eax,%eax
554cba:	74 26                	je     0x554ce2
554cbc:	50                   	push   %eax
554cbd:	ff 77 18             	push   0x18(%edi)
554cc0:	53                   	push   %ebx
554cc1:	e8 0a ef fc ff       	call   0x523bd0
554cc6:	8b 55 0c             	mov    0xc(%ebp),%edx
554cc9:	33 c0                	xor    %eax,%eax
554ccb:	80 7f 10 59          	cmpb   $0x59,0x10(%edi)
554ccf:	b9 03 00 00 00       	mov    $0x3,%ecx
554cd4:	0f 44 c1             	cmove  %ecx,%eax
554cd7:	50                   	push   %eax
554cd8:	52                   	push   %edx
554cd9:	53                   	push   %ebx
554cda:	e8 71 1e 01 00       	call   0x566b50
554cdf:	83 c4 18             	add    $0x18,%esp
554ce2:	8b 45 fc             	mov    -0x4(%ebp),%eax
554ce5:	85 c0                	test   %eax,%eax
554ce7:	74 28                	je     0x554d11
554ce9:	50                   	push   %eax
554cea:	ff 77 1c             	push   0x1c(%edi)
554ced:	53                   	push   %ebx
554cee:	e8 dd ee fc ff       	call   0x523bd0
554cf3:	80 7f 10 59          	cmpb   $0x59,0x10(%edi)
554cf7:	b9 04 00 00 00       	mov    $0x4,%ecx
554cfc:	b8 01 00 00 00       	mov    $0x1,%eax
554d01:	0f 44 c1             	cmove  %ecx,%eax
554d04:	50                   	push   %eax
554d05:	ff 75 fc             	push   -0x4(%ebp)
554d08:	53                   	push   %ebx
554d09:	e8 42 1e 01 00       	call   0x566b50
554d0e:	83 c4 18             	add    $0x18,%esp
554d11:	80 7f 10 59          	cmpb   $0x59,0x10(%edi)
554d15:	8b 55 0c             	mov    0xc(%ebp),%edx
554d18:	0f 84 af 01 00 00    	je     0x554ecd
554d1e:	8a 47 11             	mov    0x11(%edi),%al
554d21:	3a 47 12             	cmp    0x12(%edi),%al
554d24:	0f 85 a3 01 00 00    	jne    0x554ecd
554d2a:	85 d2                	test   %edx,%edx
554d2c:	0f 84 9b 01 00 00    	je     0x554ecd
554d32:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554d35:	33 d2                	xor    %edx,%edx
554d37:	3c 56                	cmp    $0x56,%al
554d39:	89 4d c8             	mov    %ecx,-0x38(%ebp)
554d3c:	0f 94 c2             	sete   %dl
554d3f:	8d 14 55 37 00 00 00 	lea    0x37(,%edx,2),%edx
554d46:	39 4e 70             	cmp    %ecx,0x70(%esi)
554d49:	7f 17                	jg     0x554d62
554d4b:	ff 75 fc             	push   -0x4(%ebp)
554d4e:	6a 00                	push   $0x0
554d50:	ff 75 0c             	push   0xc(%ebp)
554d53:	52                   	push   %edx
554d54:	56                   	push   %esi
554d55:	e8 a6 17 fb ff       	call   0x506500
554d5a:	83 c4 14             	add    $0x14,%esp
554d5d:	89 45 c8             	mov    %eax,-0x38(%ebp)
554d60:	eb 39                	jmp    0x554d9b
554d62:	8d 41 01             	lea    0x1(%ecx),%eax
554d65:	89 46 6c             	mov    %eax,0x6c(%esi)
554d68:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554d6b:	8b 46 68             	mov    0x68(%esi),%eax
554d6e:	88 14 88             	mov    %dl,(%eax,%ecx,4)
554d71:	33 d2                	xor    %edx,%edx
554d73:	66 89 54 88 02       	mov    %dx,0x2(%eax,%ecx,4)
554d78:	8b 55 0c             	mov    0xc(%ebp),%edx
554d7b:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
554d7f:	8b 55 fc             	mov    -0x4(%ebp),%edx
554d82:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
554d89:	00
554d8a:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
554d8e:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554d95:	00
554d96:	c6 44 88 01 00       	movb   $0x0,0x1(%eax,%ecx,4)
554d9b:	8d 45 90             	lea    -0x70(%ebp),%eax
554d9e:	6a 00                	push   $0x0
554da0:	50                   	push   %eax
554da1:	e8 1a 12 01 00       	call   0x565fc0
554da6:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554da9:	83 c4 08             	add    $0x8,%esp
554dac:	39 4e 70             	cmp    %ecx,0x70(%esi)
554daf:	7f 14                	jg     0x554dc5
554db1:	6a 00                	push   $0x0
554db3:	6a 01                	push   $0x1
554db5:	ff 75 14             	push   0x14(%ebp)
554db8:	6a 25                	push   $0x25
554dba:	56                   	push   %esi
554dbb:	e8 40 17 fb ff       	call   0x506500
554dc0:	83 c4 14             	add    $0x14,%esp
554dc3:	eb 32                	jmp    0x554df7
554dc5:	8b 55 14             	mov    0x14(%ebp),%edx
554dc8:	8d 41 01             	lea    0x1(%ecx),%eax
554dcb:	89 46 6c             	mov    %eax,0x6c(%esi)
554dce:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554dd1:	8b 46 68             	mov    0x68(%esi),%eax
554dd4:	c7 04 88 25 00 00 00 	movl   $0x25,(%eax,%ecx,4)
554ddb:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
554ddf:	c7 44 88 08 01 00 00 	movl   $0x1,0x8(%eax,%ecx,4)
554de6:	00
554de7:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
554dee:	00
554def:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554df6:	00
554df7:	8d 45 90             	lea    -0x70(%ebp),%eax
554dfa:	50                   	push   %eax
554dfb:	e8 00 34 01 00       	call   0x568200
554e00:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554e03:	83 c4 04             	add    $0x4,%esp
554e06:	39 4e 70             	cmp    %ecx,0x70(%esi)
554e09:	7f 17                	jg     0x554e22
554e0b:	6a 00                	push   $0x0
554e0d:	6a 00                	push   $0x0
554e0f:	ff 75 14             	push   0x14(%ebp)
554e12:	68 8a 00 00 00       	push   $0x8a
554e17:	56                   	push   %esi
554e18:	e8 e3 16 fb ff       	call   0x506500
554e1d:	83 c4 14             	add    $0x14,%esp
554e20:	eb 32                	jmp    0x554e54
554e22:	8b 55 14             	mov    0x14(%ebp),%edx
554e25:	8d 41 01             	lea    0x1(%ecx),%eax
554e28:	89 46 6c             	mov    %eax,0x6c(%esi)
554e2b:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554e2e:	8b 46 68             	mov    0x68(%esi),%eax
554e31:	c7 04 88 8a 00 00 00 	movl   $0x8a,(%eax,%ecx,4)
554e38:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
554e3c:	c7 44 88 08 00 00 00 	movl   $0x0,0x8(%eax,%ecx,4)
554e43:	00
554e44:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
554e4b:	00
554e4c:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554e53:	00
554e54:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554e57:	39 4e 70             	cmp    %ecx,0x70(%esi)
554e5a:	7f 14                	jg     0x554e70
554e5c:	6a 00                	push   $0x0
554e5e:	ff 75 e8             	push   -0x18(%ebp)
554e61:	6a 00                	push   $0x0
554e63:	6a 0b                	push   $0xb
554e65:	56                   	push   %esi
554e66:	e8 95 16 fb ff       	call   0x506500
554e6b:	83 c4 14             	add    $0x14,%esp
554e6e:	eb 32                	jmp    0x554ea2
554e70:	8b 55 e8             	mov    -0x18(%ebp),%edx
554e73:	8d 41 01             	lea    0x1(%ecx),%eax
554e76:	89 46 6c             	mov    %eax,0x6c(%esi)
554e79:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554e7c:	8b 46 68             	mov    0x68(%esi),%eax
554e7f:	c7 04 88 0b 00 00 00 	movl   $0xb,(%eax,%ecx,4)
554e86:	c7 44 88 04 00 00 00 	movl   $0x0,0x4(%eax,%ecx,4)
554e8d:	00
554e8e:	89 54 88 08          	mov    %edx,0x8(%eax,%ecx,4)
554e92:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
554e99:	00
554e9a:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554ea1:	00
554ea2:	8b 4d c8             	mov    -0x38(%ebp),%ecx
554ea5:	8b 56 6c             	mov    0x6c(%esi),%edx
554ea8:	85 c9                	test   %ecx,%ecx
554eaa:	79 03                	jns    0x554eaf
554eac:	8d 4a ff             	lea    -0x1(%edx),%ecx
554eaf:	8b 06                	mov    (%esi),%eax
554eb1:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
554eb5:	74 07                	je     0x554ebe
554eb7:	b8 ec 02 73 00       	mov    $0x7302ec,%eax
554ebc:	eb 09                	jmp    0x554ec7
554ebe:	8b 46 68             	mov    0x68(%esi),%eax
554ec1:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554ec4:	8d 04 88             	lea    (%eax,%ecx,4),%eax
554ec7:	89 50 08             	mov    %edx,0x8(%eax)
554eca:	8b 55 0c             	mov    0xc(%ebp),%edx
554ecd:	80 7f 11 56          	cmpb   $0x56,0x11(%edi)
554ed1:	75 52                	jne    0x554f25
554ed3:	80 7f 10 59          	cmpb   $0x59,0x10(%edi)
554ed7:	74 4c                	je     0x554f25
554ed9:	8b 45 fc             	mov    -0x4(%ebp),%eax
554edc:	85 c0                	test   %eax,%eax
554ede:	74 45                	je     0x554f25
554ee0:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554ee3:	39 4e 70             	cmp    %ecx,0x70(%esi)
554ee6:	7f 10                	jg     0x554ef8
554ee8:	52                   	push   %edx
554ee9:	50                   	push   %eax
554eea:	52                   	push   %edx
554eeb:	6a 6a                	push   $0x6a
554eed:	56                   	push   %esi
554eee:	e8 0d 16 fb ff       	call   0x506500
554ef3:	83 c4 14             	add    $0x14,%esp
554ef6:	eb 2d                	jmp    0x554f25
554ef8:	8b 5d fc             	mov    -0x4(%ebp),%ebx
554efb:	8d 41 01             	lea    0x1(%ecx),%eax
554efe:	89 46 6c             	mov    %eax,0x6c(%esi)
554f01:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554f04:	8b 46 68             	mov    0x68(%esi),%eax
554f07:	89 5c 88 08          	mov    %ebx,0x8(%eax,%ecx,4)
554f0b:	8b 5d 08             	mov    0x8(%ebp),%ebx
554f0e:	c7 04 88 6a 00 00 00 	movl   $0x6a,(%eax,%ecx,4)
554f15:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
554f19:	89 54 88 0c          	mov    %edx,0xc(%eax,%ecx,4)
554f1d:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554f24:	00
554f25:	80 7f 11 5a          	cmpb   $0x5a,0x11(%edi)
554f29:	74 52                	je     0x554f7d
554f2b:	8b 55 14             	mov    0x14(%ebp),%edx
554f2e:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554f31:	83 c2 02             	add    $0x2,%edx
554f34:	39 4e 70             	cmp    %ecx,0x70(%esi)
554f37:	7f 12                	jg     0x554f4b
554f39:	6a 00                	push   $0x0
554f3b:	6a 01                	push   $0x1
554f3d:	52                   	push   %edx
554f3e:	6a 25                	push   $0x25
554f40:	56                   	push   %esi
554f41:	e8 ba 15 fb ff       	call   0x506500
554f46:	83 c4 14             	add    $0x14,%esp
554f49:	eb 32                	jmp    0x554f7d
554f4b:	8b 5d 08             	mov    0x8(%ebp),%ebx
554f4e:	8d 41 01             	lea    0x1(%ecx),%eax
554f51:	89 46 6c             	mov    %eax,0x6c(%esi)
554f54:	8d 0c 89             	lea    (%ecx,%ecx,4),%ecx
554f57:	8b 46 68             	mov    0x68(%esi),%eax
554f5a:	c7 04 88 25 00 00 00 	movl   $0x25,(%eax,%ecx,4)
554f61:	89 54 88 04          	mov    %edx,0x4(%eax,%ecx,4)
554f65:	c7 44 88 08 01 00 00 	movl   $0x1,0x8(%eax,%ecx,4)
554f6c:	00
554f6d:	c7 44 88 0c 00 00 00 	movl   $0x0,0xc(%eax,%ecx,4)
554f74:	00
554f75:	c7 44 88 10 00 00 00 	movl   $0x0,0x10(%eax,%ecx,4)
554f7c:	00
554f7d:	8b 4e 6c             	mov    0x6c(%esi),%ecx
554f80:	39 4e 70             	cmp    %ecx,0x70(%esi)
554f83:	7f 17                	jg     0x554f9c
554f85:	6a 00                	push   $0x0
554f87:	6a 01                	push   $0x1
554f89:	ff 75 14             	push   0x14(%ebp)
554f8c:	6a 25                	push   $0x25
554f8e:	56                   	push   %esi
554f8f:	e8 6c 15 fb ff       	call   0x506500
554f94:	8b 55 14             	mov    0x14(%ebp),%edx
554f97:	83 c4 14             	add    $0x14,%esp
554f9a:	eb 32                	jmp    0x554fce