516ab0:	8b e5                	mov    %ebp,%esp
516ab2:	5d                   	pop    %ebp
516ab3:	c3                   	ret
516ab4:	bd 64 51 00 0a       	mov    $0xa005164,%ebp
516ab9:	65 51                	gs push %ecx
516abb:	00 69 67             	add    %ch,0x67(%ecx)
516abe:	51                   	push   %ecx
516abf:	00 3a                	add    %bh,(%edx)
516ac1:	6a 51                	push   $0x51
516ac3:	00 25 65 51 00 25    	add    %ah,0x25005165
516ac9:	65 51                	gs push %ecx
516acb:	00 f1                	add    %dh,%cl
516acd:	67 51                	addr16 push %ecx
516acf:	00 f1                	add    %dh,%cl
516ad1:	67 51                	addr16 push %ecx
516ad3:	00 a2 67 51 00 7e    	add    %ah,0x7e005167(%edx)
516ad9:	67 51                	addr16 push %ecx
516adb:	00 d6                	add    %dl,%dh
516add:	66 51                	push   %cx
516adf:	00 25 65 51 00 a2    	add    %ah,0xa2005165
516ae5:	67 51                	addr16 push %ecx
516ae7:	00 25 65 51 00 cc    	add    %ah,0xcc005165
516aed:	cc                   	int3
516aee:	cc                   	int3
516aef:	cc                   	int3
516af0:	55                   	push   %ebp
516af1:	8b ec                	mov    %esp,%ebp
516af3:	8b 45 08             	mov    0x8(%ebp),%eax
516af6:	2d 85 00 00 00       	sub    $0x85,%eax
516afb:	74 1f                	je     0x516b1c
516afd:	83 e8 01             	sub    $0x1,%eax
516b00:	74 13                	je     0x516b15
516b02:	83 e8 01             	sub    $0x1,%eax
516b05:	74 07                	je     0x516b0e
516b07:	b8 08 af 6b 00       	mov    $0x6baf08,%eax
516b0c:	5d                   	pop    %ebp
516b0d:	c3                   	ret
516b0e:	b8 f4 ae 6b 00       	mov    $0x6baef4,%eax
516b13:	5d                   	pop    %ebp
516b14:	c3                   	ret
516b15:	b8 00 af 6b 00       	mov    $0x6baf00,%eax
516b1a:	5d                   	pop    %ebp
516b1b:	c3                   	ret
516b1c:	b8 e8 ae 6b 00       	mov    $0x6baee8,%eax
516b21:	5d                   	pop    %ebp
516b22:	c3                   	ret
516b23:	cc                   	int3
516b24:	cc                   	int3
516b25:	cc                   	int3
516b26:	cc                   	int3
516b27:	cc                   	int3
516b28:	cc                   	int3
516b29:	cc                   	int3
516b2a:	cc                   	int3
516b2b:	cc                   	int3
516b2c:	cc                   	int3
516b2d:	cc                   	int3
516b2e:	cc                   	int3
516b2f:	cc                   	int3
516b30:	55                   	push   %ebp
516b31:	8b ec                	mov    %esp,%ebp
516b33:	8b 45 08             	mov    0x8(%ebp),%eax
516b36:	8b 10                	mov    (%eax),%edx
516b38:	83 ba 08 01 00 00 00 	cmpl   $0x0,0x108(%edx)
516b3f:	74 29                	je     0x516b6a
516b41:	8b 4d 0c             	mov    0xc(%ebp),%ecx
516b44:	83 79 34 00          	cmpl   $0x0,0x34(%ecx)
516b48:	75 20                	jne    0x516b6a
516b4a:	8b 41 38             	mov    0x38(%ecx),%eax
516b4d:	85 c0                	test   %eax,%eax
516b4f:	74 09                	je     0x516b5a
516b51:	8b c8                	mov    %eax,%ecx
516b53:	8b 41 38             	mov    0x38(%ecx),%eax
516b56:	85 c0                	test   %eax,%eax
516b58:	75 f7                	jne    0x516b51
516b5a:	8b 41 40             	mov    0x40(%ecx),%eax
516b5d:	85 c0                	test   %eax,%eax
516b5f:	74 09                	je     0x516b6a
516b61:	8b 40 04             	mov    0x4(%eax),%eax
516b64:	89 82 08 01 00 00    	mov    %eax,0x108(%edx)
516b6a:	5d                   	pop    %ebp
516b6b:	c3                   	ret
516b6c:	cc                   	int3
516b6d:	cc                   	int3
516b6e:	cc                   	int3
516b6f:	cc                   	int3
516b70:	55                   	push   %ebp
516b71:	8b ec                	mov    %esp,%ebp
516b73:	83 ec 38             	sub    $0x38,%esp
516b76:	a1 d4 89 72 00       	mov    0x7289d4,%eax
516b7b:	33 c5                	xor    %ebp,%eax
516b7d:	89 45 fc             	mov    %eax,-0x4(%ebp)
516b80:	8b 45 1c             	mov    0x1c(%ebp),%eax
516b83:	0f 57 c0             	xorps  %xmm0,%xmm0
516b86:	8b 55 0c             	mov    0xc(%ebp),%edx
516b89:	8b 4d 18             	mov    0x18(%ebp),%ecx
516b8c:	53                   	push   %ebx
516b8d:	8b 5d 14             	mov    0x14(%ebp),%ebx
516b90:	89 45 c8             	mov    %eax,-0x38(%ebp)
516b93:	8b 00                	mov    (%eax),%eax
516b95:	0f 11 45 e8          	movups %xmm0,-0x18(%ebp)
516b99:	56                   	push   %esi
516b9a:	8b 75 10             	mov    0x10(%ebp),%esi
516b9d:	89 45 f0             	mov    %eax,-0x10(%ebp)
516ba0:	8d 45 e8             	lea    -0x18(%ebp),%eax
516ba3:	57                   	push   %edi
516ba4:	8b 7d 08             	mov    0x8(%ebp),%edi
516ba7:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
516bae:	89 45 e4             	mov    %eax,-0x1c(%ebp)
516bb1:	8d 45 cc             	lea    -0x34(%ebp),%eax
516bb4:	0f 11 45 cc          	movups %xmm0,-0x34(%ebp)
516bb8:	53                   	push   %ebx
516bb9:	50                   	push   %eax
516bba:	66 0f d6 45 dc       	movq   %xmm0,-0x24(%ebp)
516bbf:	c7 45 f8 00 00 00 00 	movl   $0x0,-0x8(%ebp)
516bc6:	89 55 e8             	mov    %edx,-0x18(%ebp)
516bc9:	89 75 ec             	mov    %esi,-0x14(%ebp)
516bcc:	89 4d f4             	mov    %ecx,-0xc(%ebp)
516bcf:	89 7d cc             	mov    %edi,-0x34(%ebp)
516bd2:	c7 45 d0 10 6c 51 00 	movl   $0x516c10,-0x30(%ebp)
516bd9:	c7 45 d4 90 6d 51 00 	movl   $0x516d90,-0x2c(%ebp)
516be0:	e8 bb 91 03 00       	call   0x54fda0
516be5:	8b 4d c8             	mov    -0x38(%ebp),%ecx
516be8:	83 c4 08             	add    $0x8,%esp
516beb:	8b 45 f0             	mov    -0x10(%ebp),%eax
516bee:	89 01                	mov    %eax,(%ecx)
516bf0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
516bf3:	5f                   	pop    %edi
516bf4:	5e                   	pop    %esi
516bf5:	33 cd                	xor    %ebp,%ecx
516bf7:	5b                   	pop    %ebx
516bf8:	e8 dd a8 0c 00       	call   0x5e14da
516bfd:	8b e5                	mov    %ebp,%esp
516bff:	5d                   	pop    %ebp
516c00:	c3                   	ret
516c01:	cc                   	int3
516c02:	cc                   	int3
516c03:	cc                   	int3
516c04:	cc                   	int3
516c05:	cc                   	int3
516c06:	cc                   	int3
516c07:	cc                   	int3
516c08:	cc                   	int3
516c09:	cc                   	int3
516c0a:	cc                   	int3
516c0b:	cc                   	int3
516c0c:	cc                   	int3
516c0d:	cc                   	int3
516c0e:	cc                   	int3
516c0f:	cc                   	int3
516c10:	55                   	push   %ebp
516c11:	8b ec                	mov    %esp,%ebp
516c13:	83 ec 08             	sub    $0x8,%esp
516c16:	8b 45 08             	mov    0x8(%ebp),%eax
516c19:	53                   	push   %ebx
516c1a:	56                   	push   %esi
516c1b:	8b 75 0c             	mov    0xc(%ebp),%esi
516c1e:	57                   	push   %edi
516c1f:	8b 78 18             	mov    0x18(%eax),%edi
516c22:	8b 00                	mov    (%eax),%eax
516c24:	89 45 fc             	mov    %eax,-0x4(%ebp)
516c27:	83 7f 10 00          	cmpl   $0x0,0x10(%edi)
516c2b:	74 2e                	je     0x516c5b
516c2d:	33 c0                	xor    %eax,%eax
516c2f:	80 3e a4             	cmpb   $0xa4,(%esi)
516c32:	0f 85 4c 01 00 00    	jne    0x516d84
516c38:	8b 4f 04             	mov    0x4(%edi),%ecx
516c3b:	8b 11                	mov    (%ecx),%edx
516c3d:	85 d2                	test   %edx,%edx
516c3f:	7e 12                	jle    0x516c53
516c41:	8b 5e 1c             	mov    0x1c(%esi),%ebx
516c44:	83 c1 34             	add    $0x34,%ecx
516c47:	3b 19                	cmp    (%ecx),%ebx
516c49:	74 08                	je     0x516c53
516c4b:	40                   	inc    %eax
516c4c:	83 c1 48             	add    $0x48,%ecx
516c4f:	3b c2                	cmp    %edx,%eax
516c51:	7c f4                	jl     0x516c47
516c53:	3b c2                	cmp    %edx,%eax
516c55:	0f 84 27 01 00 00    	je     0x516d82
516c5b:	8a 06                	mov    (%esi),%al
516c5d:	3c a4                	cmp    $0xa4,%al
516c5f:	0f 82 1d 01 00 00    	jb     0x516d82
516c65:	3c a5                	cmp    $0xa5,%al
516c67:	76 29                	jbe    0x516c92
516c69:	3c a9                	cmp    $0xa9,%al
516c6b:	0f 85 11 01 00 00    	jne    0x516d82
516c71:	f7 46 04 00 00 00 01 	testl  $0x1000000,0x4(%esi)
516c78:	0f 84 04 01 00 00    	je     0x516d82
516c7e:	8b 07                	mov    (%edi),%eax
516c80:	85 c0                	test   %eax,%eax
516c82:	74 0e                	je     0x516c92
516c84:	8b 4e 2c             	mov    0x2c(%esi),%ecx
516c87:	3b c8                	cmp    %eax,%ecx
516c89:	74 50                	je     0x516cdb
516c8b:	8b 40 24             	mov    0x24(%eax),%eax
516c8e:	85 c0                	test   %eax,%eax
516c90:	75 f5                	jne    0x516c87
516c92:	83 c8 ff             	or     $0xffffffff,%eax
516c95:	89 45 f8             	mov    %eax,-0x8(%ebp)
516c98:	8b 47 08             	mov    0x8(%edi),%eax
516c9b:	85 c0                	test   %eax,%eax
516c9d:	74 51                	je     0x516cf0
516c9f:	33 db                	xor    %ebx,%ebx
516ca1:	39 18                	cmp    %ebx,(%eax)
516ca3:	7e 4b                	jle    0x516cf0
516ca5:	33 c9                	xor    %ecx,%ecx
516ca7:	89 4d 08             	mov    %ecx,0x8(%ebp)
516caa:	66 0f 1f 44 00 00    	nopw   0x0(%eax,%eax,1)
516cb0:	8b 47 08             	mov    0x8(%edi),%eax
516cb3:	6a ff                	push   $0xffffffff
516cb5:	56                   	push   %esi
516cb6:	ff 74 01 04          	push   0x4(%ecx,%eax,1)
516cba:	6a 00                	push   $0x0
516cbc:	e8 0f f8 00 00       	call   0x5264d0
516cc1:	83 c4 10             	add    $0x10,%esp
516cc4:	85 c0                	test   %eax,%eax
516cc6:	74 1f                	je     0x516ce7
516cc8:	8b 47 08             	mov    0x8(%edi),%eax
516ccb:	43                   	inc    %ebx
516ccc:	8b 4d 08             	mov    0x8(%ebp),%ecx
516ccf:	83 c1 14             	add    $0x14,%ecx
516cd2:	89 4d 08             	mov    %ecx,0x8(%ebp)
516cd5:	3b 18                	cmp    (%eax),%ebx
516cd7:	7c d7                	jl     0x516cb0
516cd9:	eb 15                	jmp    0x516cf0
516cdb:	5f                   	pop    %edi
516cdc:	5e                   	pop    %esi
516cdd:	b8 01 00 00 00       	mov    $0x1,%eax
516ce2:	5b                   	pop    %ebx
516ce3:	8b e5                	mov    %ebp,%esp
516ce5:	5d                   	pop    %ebp
516ce6:	c3                   	ret
516ce7:	8b c3                	mov    %ebx,%eax
516ce9:	89 45 f8             	mov    %eax,-0x8(%ebp)
516cec:	85 db                	test   %ebx,%ebx
516cee:	79 30                	jns    0x516d20
516cf0:	8b 5d fc             	mov    -0x4(%ebp),%ebx
516cf3:	6a 00                	push   $0x0
516cf5:	6a 00                	push   $0x0
516cf7:	56                   	push   %esi
516cf8:	ff 33                	push   (%ebx)
516cfa:	e8 61 9b fe ff       	call   0x500860
516cff:	83 c4 10             	add    $0x10,%esp
516d02:	85 c0                	test   %eax,%eax
516d04:	74 08                	je     0x516d0e
516d06:	80 38 a5             	cmpb   $0xa5,(%eax)
516d09:	75 03                	jne    0x516d0e
516d0b:	c6 00 a9             	movb   $0xa9,(%eax)
516d0e:	50                   	push   %eax
516d0f:	ff 77 08             	push   0x8(%edi)
516d12:	53                   	push   %ebx
516d13:	e8 68 08 01 00       	call   0x527580
516d18:	83 c4 0c             	add    $0xc,%esp
516d1b:	89 47 08             	mov    %eax,0x8(%edi)
516d1e:	eb 03                	jmp    0x516d23
516d20:	8b 5d fc             	mov    -0x4(%ebp),%ebx
516d23:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
516d27:	74 45                	je     0x516d6e
516d29:	81 4e 04 00 00 00 08 	orl    $0x8000000,0x4(%esi)
516d30:	56                   	push   %esi
516d31:	ff 33                	push   (%ebx)
516d33:	e8 78 fa 00 00       	call   0x5267b0
516d38:	81 66 04 ff ff ff f7 	andl   $0xf7ffffff,0x4(%esi)
516d3f:	6a 34                	push   $0x34
516d41:	6a 00                	push   $0x0
516d43:	56                   	push   %esi
516d44:	e8 b7 cc 0c 00       	call   0x5e3a00
516d49:	8b 45 f8             	mov    -0x8(%ebp),%eax
516d4c:	83 c4 14             	add    $0x14,%esp
516d4f:	c6 06 a4             	movb   $0xa4,(%esi)
516d52:	85 c0                	test   %eax,%eax
516d54:	79 06                	jns    0x516d5c
516d56:	8b 47 08             	mov    0x8(%edi),%eax
516d59:	8b 00                	mov    (%eax),%eax
516d5b:	48                   	dec    %eax
516d5c:	66 89 46 20          	mov    %ax,0x20(%esi)
516d60:	8b 07                	mov    (%edi),%eax
516d62:	8b 40 30             	mov    0x30(%eax),%eax
516d65:	89 46 1c             	mov    %eax,0x1c(%esi)
516d68:	8b 47 0c             	mov    0xc(%edi),%eax
516d6b:	89 46 2c             	mov    %eax,0x2c(%esi)
516d6e:	8b 03                	mov    (%ebx),%eax
516d70:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
516d74:	74 0c                	je     0x516d82
516d76:	5f                   	pop    %edi
516d77:	5e                   	pop    %esi
516d78:	b8 02 00 00 00       	mov    $0x2,%eax
516d7d:	5b                   	pop    %ebx
516d7e:	8b e5                	mov    %ebp,%esp
516d80:	5d                   	pop    %ebp
516d81:	c3                   	ret
516d82:	33 c0                	xor    %eax,%eax
516d84:	5f                   	pop    %edi
516d85:	5e                   	pop    %esi
516d86:	5b                   	pop    %ebx
516d87:	8b e5                	mov    %ebp,%esp
516d89:	5d                   	pop    %ebp
516d8a:	c3                   	ret
516d8b:	cc                   	int3
516d8c:	cc                   	int3
516d8d:	cc                   	int3
516d8e:	cc                   	int3
516d8f:	cc                   	int3
516d90:	55                   	push   %ebp
516d91:	8b ec                	mov    %esp,%ebp
516d93:	8b 4d 08             	mov    0x8(%ebp),%ecx
516d96:	8b 45 0c             	mov    0xc(%ebp),%eax
516d99:	56                   	push   %esi
516d9a:	57                   	push   %edi
516d9b:	8b 71 18             	mov    0x18(%ecx),%esi
516d9e:	8b 7e 10             	mov    0x10(%esi),%edi
516da1:	3b f8                	cmp    %eax,%edi
516da3:	75 06                	jne    0x516dab
516da5:	5f                   	pop    %edi
516da6:	33 c0                	xor    %eax,%eax
516da8:	5e                   	pop    %esi
516da9:	5d                   	pop    %ebp
516daa:	c3                   	ret
516dab:	50                   	push   %eax
516dac:	51                   	push   %ecx
516dad:	89 46 10             	mov    %eax,0x10(%esi)
516db0:	e8 3b 90 03 00       	call   0x54fdf0
516db5:	83 c4 08             	add    $0x8,%esp
516db8:	89 7e 10             	mov    %edi,0x10(%esi)
516dbb:	b8 01 00 00 00       	mov    $0x1,%eax
516dc0:	5f                   	pop    %edi
516dc1:	5e                   	pop    %esi
516dc2:	5d                   	pop    %ebp
516dc3:	c3                   	ret
516dc4:	cc                   	int3
516dc5:	cc                   	int3
516dc6:	cc                   	int3
516dc7:	cc                   	int3
516dc8:	cc                   	int3
516dc9:	cc                   	int3
516dca:	cc                   	int3
516dcb:	cc                   	int3
516dcc:	cc                   	int3
516dcd:	cc                   	int3
516dce:	cc                   	int3
516dcf:	cc                   	int3
516dd0:	55                   	push   %ebp
516dd1:	8b ec                	mov    %esp,%ebp
516dd3:	53                   	push   %ebx
516dd4:	56                   	push   %esi
516dd5:	57                   	push   %edi
516dd6:	8b 7d 08             	mov    0x8(%ebp),%edi
516dd9:	0f b6 07             	movzbl (%edi),%eax
516ddc:	99                   	cltd