539a80:	8d 40 10             	lea    0x10(%eax),%eax
539a83:	41                   	inc    %ecx
539a84:	39 10                	cmp    %edx,(%eax)
539a86:	75 f8                	jne    0x539a80
539a88:	8b c1                	mov    %ecx,%eax
539a8a:	5d                   	pop    %ebp
539a8b:	c3                   	ret
539a8c:	b8 c0 bd f0 ff       	mov    $0xfff0bdc0,%eax
539a91:	5d                   	pop    %ebp
539a92:	c3                   	ret
539a93:	cc                   	int3
539a94:	cc                   	int3
539a95:	cc                   	int3
539a96:	cc                   	int3
539a97:	cc                   	int3
539a98:	cc                   	int3
539a99:	cc                   	int3
539a9a:	cc                   	int3
539a9b:	cc                   	int3
539a9c:	cc                   	int3
539a9d:	cc                   	int3
539a9e:	cc                   	int3
539a9f:	cc                   	int3
539aa0:	55                   	push   %ebp
539aa1:	8b ec                	mov    %esp,%ebp
539aa3:	81 ec 20 01 00 00    	sub    $0x120,%esp
539aa9:	a1 d4 89 72 00       	mov    0x7289d4,%eax
539aae:	33 c5                	xor    %ebp,%eax
539ab0:	89 45 fc             	mov    %eax,-0x4(%ebp)
539ab3:	8b 45 10             	mov    0x10(%ebp),%eax
539ab6:	53                   	push   %ebx
539ab7:	56                   	push   %esi
539ab8:	8b 75 0c             	mov    0xc(%ebp),%esi
539abb:	57                   	push   %edi
539abc:	8b 7d 08             	mov    0x8(%ebp),%edi
539abf:	89 85 f8 fe ff ff    	mov    %eax,-0x108(%ebp)
539ac5:	89 bd 14 ff ff ff    	mov    %edi,-0xec(%ebp)
539acb:	89 b5 38 ff ff ff    	mov    %esi,-0xc8(%ebp)
539ad1:	8b 5f 08             	mov    0x8(%edi),%ebx
539ad4:	8b 07                	mov    (%edi),%eax
539ad6:	c7 85 44 ff ff ff 01 	movl   $0x1,-0xbc(%ebp)
539add:	00 00 00
539ae0:	c7 85 e4 fe ff ff 00 	movl   $0x0,-0x11c(%ebp)
539ae7:	00 00 00
539aea:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
539af0:	89 9d 10 ff ff ff    	mov    %ebx,-0xf0(%ebp)
539af6:	85 db                	test   %ebx,%ebx
539af8:	75 26                	jne    0x539b20
539afa:	39 5f 74             	cmp    %ebx,0x74(%edi)
539afd:	75 0a                	jne    0x539b09
539aff:	f6 40 4c 08          	testb  $0x8,0x4c(%eax)
539b03:	75 04                	jne    0x539b09
539b05:	c6 47 17 01          	movb   $0x1,0x17(%edi)
539b09:	57                   	push   %edi
539b0a:	e8 01 89 00 00       	call   0x542410
539b0f:	8b d8                	mov    %eax,%ebx
539b11:	83 c4 04             	add    $0x4,%esp
539b14:	8b 85 3c ff ff ff    	mov    -0xc4(%ebp),%eax
539b1a:	89 9d 10 ff ff ff    	mov    %ebx,-0xf0(%ebp)
539b20:	85 f6                	test   %esi,%esi
539b22:	0f 84 bd 24 00 00    	je     0x53bfe5
539b28:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
539b2c:	0f 85 b3 24 00 00    	jne    0x53bfe5
539b32:	83 7f 24 00          	cmpl   $0x0,0x24(%edi)
539b36:	0f 85 a9 24 00 00    	jne    0x53bfe5
539b3c:	6a 00                	push   $0x0
539b3e:	6a 00                	push   $0x0
539b40:	6a 00                	push   $0x0
539b42:	6a 15                	push   $0x15
539b44:	57                   	push   %edi
539b45:	e8 56 fc fd ff       	call   0x5197a0
539b4a:	83 c4 14             	add    $0x14,%esp
539b4d:	85 c0                	test   %eax,%eax
539b4f:	0f 85 90 24 00 00    	jne    0x53bfe5
539b55:	6a 30                	push   $0x30
539b57:	50                   	push   %eax
539b58:	8d 45 b4             	lea    -0x4c(%ebp),%eax
539b5b:	50                   	push   %eax
539b5c:	e8 9f 9e 0a 00       	call   0x5e3a00
539b61:	8b 85 f8 fe ff ff    	mov    -0x108(%ebp),%eax
539b67:	83 c4 0c             	add    $0xc,%esp
539b6a:	80 38 08             	cmpb   $0x8,(%eax)
539b6d:	77 21                	ja     0x539b90
539b6f:	8b 46 30             	mov    0x30(%esi),%eax
539b72:	85 c0                	test   %eax,%eax
539b74:	74 0f                	je     0x539b85
539b76:	50                   	push   %eax
539b77:	ff b5 3c ff ff ff    	push   -0xc4(%ebp)
539b7d:	e8 7e 74 fc ff       	call   0x501000
539b82:	83 c4 08             	add    $0x8,%esp
539b85:	83 66 04 fe          	andl   $0xfffffffe,0x4(%esi)
539b89:	c7 46 30 00 00 00 00 	movl   $0x0,0x30(%esi)
539b90:	6a 00                	push   $0x0
539b92:	56                   	push   %esi
539b93:	57                   	push   %edi
539b94:	e8 97 2a 00 00       	call   0x53c630
539b99:	83 c4 0c             	add    $0xc,%esp
539b9c:	83 7f 24 00          	cmpl   $0x0,0x24(%edi)
539ba0:	0f 85 3b 02 00 00    	jne    0x539de1
539ba6:	8b 85 3c ff ff ff    	mov    -0xc4(%ebp),%eax
539bac:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
539bb0:	0f 85 61 22 00 00    	jne    0x53be17
539bb6:	8b 85 f8 fe ff ff    	mov    -0x108(%ebp),%eax
539bbc:	80 38 09             	cmpb   $0x9,(%eax)
539bbf:	75 0a                	jne    0x539bcb
539bc1:	56                   	push   %esi
539bc2:	57                   	push   %edi
539bc3:	e8 c8 a8 fc ff       	call   0x504490
539bc8:	83 c4 08             	add    $0x8,%esp
539bcb:	56                   	push   %esi
539bcc:	57                   	push   %edi
539bcd:	e8 8e c6 01 00       	call   0x556260
539bd2:	83 c4 08             	add    $0x8,%esp
539bd5:	89 85 44 ff ff ff    	mov    %eax,-0xbc(%ebp)
539bdb:	85 c0                	test   %eax,%eax
539bdd:	0f 85 fe 01 00 00    	jne    0x539de1
539be3:	8b 46 04             	mov    0x4(%esi),%eax
539be6:	0f 57 c0             	xorps  %xmm0,%xmm0
539be9:	8b 4e 20             	mov    0x20(%esi),%ecx
539bec:	33 d2                	xor    %edx,%edx
539bee:	c1 e8 03             	shr    $0x3,%eax
539bf1:	83 e0 01             	and    $0x1,%eax
539bf4:	89 8d 48 ff ff ff    	mov    %ecx,-0xb8(%ebp)
539bfa:	89 85 34 ff ff ff    	mov    %eax,-0xcc(%ebp)
539c00:	8b 46 30             	mov    0x30(%esi),%eax
539c03:	0f 11 85 70 ff ff ff 	movups %xmm0,-0x90(%ebp)
539c0a:	89 85 4c ff ff ff    	mov    %eax,-0xb4(%ebp)
539c10:	0f 11 45 80          	movups %xmm0,-0x80(%ebp)
539c14:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
539c1a:	66 0f d6 45 90       	movq   %xmm0,-0x70(%ebp)
539c1f:	89 95 20 ff ff ff    	mov    %edx,-0xe0(%ebp)
539c25:	39 56 34             	cmp    %edx,0x34(%esi)
539c28:	0f 85 55 01 00 00    	jne    0x539d83
539c2e:	66 90                	xchg   %ax,%ax
539c30:	3b 11                	cmp    (%ecx),%edx
539c32:	0f 8d 4b 01 00 00    	jge    0x539d83
539c38:	8d 04 d5 01 00 00 00 	lea    0x1(,%edx,8),%eax
539c3f:	03 c2                	add    %edx,%eax
539c41:	f6 44 c1 24 08       	testb  $0x8,0x24(%ecx,%eax,8)
539c46:	8b 5c c1 14          	mov    0x14(%ecx,%eax,8),%ebx
539c4a:	8d 04 c1             	lea    (%ecx,%eax,8),%eax
539c4d:	89 9d 18 ff ff ff    	mov    %ebx,-0xe8(%ebp)
539c53:	8b 58 10             	mov    0x10(%eax),%ebx
539c56:	89 9d 40 ff ff ff    	mov    %ebx,-0xc0(%ebp)
539c5c:	8b 9d 10 ff ff ff    	mov    -0xf0(%ebp),%ebx
539c62:	89 85 04 ff ff ff    	mov    %eax,-0xfc(%ebp)
539c68:	74 47                	je     0x539cb1
539c6a:	ff 70 2c             	push   0x2c(%eax)
539c6d:	ff 76 24             	push   0x24(%esi)
539c70:	e8 2b d6 fe ff       	call   0x5272a0
539c75:	83 c4 08             	add    $0x8,%esp
539c78:	85 c0                	test   %eax,%eax
539c7a:	74 29                	je     0x539ca5
539c7c:	8b 85 3c ff ff ff    	mov    -0xc4(%ebp),%eax
539c82:	b9 00 20 00 00       	mov    $0x2000,%ecx
539c87:	66 85 48 4c          	test   %cx,0x4c(%eax)
539c8b:	75 18                	jne    0x539ca5
539c8d:	8b 85 04 ff ff ff    	mov    -0xfc(%ebp),%eax
539c93:	ff 70 2c             	push   0x2c(%eax)
539c96:	80 60 24 d7          	andb   $0xd7,0x24(%eax)
539c9a:	ff 76 24             	push   0x24(%esi)
539c9d:	e8 5e ed 01 00       	call   0x558a00
539ca2:	83 c4 08             	add    $0x8,%esp
539ca5:	8b 95 20 ff ff ff    	mov    -0xe0(%ebp),%edx
539cab:	8b 8d 48 ff ff ff    	mov    -0xb8(%ebp),%ecx
539cb1:	8b 85 18 ff ff ff    	mov    -0xe8(%ebp),%eax
539cb7:	85 c0                	test   %eax,%eax
539cb9:	0f 84 b3 00 00 00    	je     0x539d72
539cbf:	8b 8d 40 ff ff ff    	mov    -0xc0(%ebp),%ecx
539cc5:	8b 40 1c             	mov    0x1c(%eax),%eax
539cc8:	0f bf 49 2a          	movswl 0x2a(%ecx),%ecx
539ccc:	3b 08                	cmp    (%eax),%ecx
539cce:	8b 85 18 ff ff ff    	mov    -0xe8(%ebp),%eax
539cd4:	0f 85 e7 00 00 00    	jne    0x539dc1
539cda:	f6 40 04 08          	testb  $0x8,0x4(%eax)
539cde:	0f 85 88 00 00 00    	jne    0x539d6c
539ce4:	83 78 30 00          	cmpl   $0x0,0x30(%eax)
539ce8:	74 1e                	je     0x539d08
539cea:	85 d2                	test   %edx,%edx
539cec:	75 1a                	jne    0x539d08
539cee:	f7 46 04 00 00 04 00 	testl  $0x40000,0x4(%esi)
539cf5:	74 11                	je     0x539d08
539cf7:	8b 8d 48 ff ff ff    	mov    -0xb8(%ebp),%ecx
539cfd:	83 39 01             	cmpl   $0x1,(%ecx)
539d00:	74 70                	je     0x539d72
539d02:	f6 41 74 0a          	testb  $0xa,0x74(%ecx)
539d06:	75 6a                	jne    0x539d72
539d08:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
539d0e:	52                   	push   %edx
539d0f:	56                   	push   %esi
539d10:	57                   	push   %edi
539d11:	e8 6a 9a fc ff       	call   0x503780
539d16:	83 c4 10             	add    $0x10,%esp
539d19:	85 c0                	test   %eax,%eax
539d1b:	74 14                	je     0x539d31
539d1d:	83 7f 24 00          	cmpl   $0x0,0x24(%edi)
539d21:	0f 85 ba 00 00 00    	jne    0x539de1
539d27:	c7 85 20 ff ff ff ff 	movl   $0xffffffff,-0xe0(%ebp)
539d2e:	ff ff ff
539d31:	8b 85 3c ff ff ff    	mov    -0xc4(%ebp),%eax
539d37:	8b 4e 20             	mov    0x20(%esi),%ecx
539d3a:	89 8d 48 ff ff ff    	mov    %ecx,-0xb8(%ebp)
539d40:	80 78 51 00          	cmpb   $0x0,0x51(%eax)
539d44:	0f 85 cd 20 00 00    	jne    0x53be17
539d4a:	8b 85 f8 fe ff ff    	mov    -0x108(%ebp),%eax
539d50:	8b 95 20 ff ff ff    	mov    -0xe0(%ebp),%edx
539d56:	80 38 08             	cmpb   $0x8,(%eax)
539d59:	76 17                	jbe    0x539d72
539d5b:	8b 46 30             	mov    0x30(%esi),%eax
539d5e:	89 85 4c ff ff ff    	mov    %eax,-0xb4(%ebp)
539d64:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
539d6a:	eb 06                	jmp    0x539d72
539d6c:	8b 8d 48 ff ff ff    	mov    -0xb8(%ebp),%ecx
539d72:	42                   	inc    %edx
539d73:	83 7e 34 00          	cmpl   $0x0,0x34(%esi)
539d77:	89 95 20 ff ff ff    	mov    %edx,-0xe0(%ebp)
539d7d:	0f 84 ad fe ff ff    	je     0x539c30
539d83:	83 7e 34 00          	cmpl   $0x0,0x34(%esi)
539d87:	0f 84 81 00 00 00    	je     0x539e0e
539d8d:	ff b5 f8 fe ff ff    	push   -0x108(%ebp)
539d93:	56                   	push   %esi
539d94:	57                   	push   %edi
539d95:	e8 56 00 fd ff       	call   0x509df0
539d9a:	83 c4 0c             	add    $0xc,%esp
539d9d:	8b d8                	mov    %eax,%ebx
539d9f:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
539da3:	75 09                	jne    0x539dae
539da5:	57                   	push   %edi
539da6:	e8 85 fe 00 00       	call   0x549c30
539dab:	83 c4 04             	add    $0x4,%esp
539dae:	5f                   	pop    %edi
539daf:	5e                   	pop    %esi
539db0:	8b c3                	mov    %ebx,%eax
539db2:	5b                   	pop    %ebx
539db3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
539db6:	33 cd                	xor    %ebp,%ecx
539db8:	e8 1d 77 0a 00       	call   0x5e14da
539dbd:	8b e5                	mov    %ebp,%esp
539dbf:	5d                   	pop    %ebp
539dc0:	c3                   	ret
539dc1:	8b 40 1c             	mov    0x1c(%eax),%eax
539dc4:	ff 30                	push   (%eax)
539dc6:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
539dcc:	ff 30                	push   (%eax)
539dce:	0f bf 40 2a          	movswl 0x2a(%eax),%eax
539dd2:	50                   	push   %eax
539dd3:	68 00 b3 6b 00       	push   $0x6bb300
539dd8:	57                   	push   %edi
539dd9:	e8 82 94 fe ff       	call   0x523260
539dde:	83 c4 14             	add    $0x14,%esp
539de1:	8b 9d 3c ff ff ff    	mov    -0xc4(%ebp),%ebx
539de7:	8b 75 d0             	mov    -0x30(%ebp),%esi
539dea:	85 f6                	test   %esi,%esi
539dec:	0f 84 b9 20 00 00    	je     0x53beab
539df2:	83 bb f8 01 00 00 00 	cmpl   $0x0,0x1f8(%ebx)
539df9:	0f 84 1f 20 00 00    	je     0x53be1e
539dff:	56                   	push   %esi
539e00:	53                   	push   %ebx
539e01:	e8 6a f6 fc ff       	call   0x509470
539e06:	83 c4 08             	add    $0x8,%esp
539e09:	e9 9d 20 00 00       	jmp    0x53beab
539e0e:	83 39 01             	cmpl   $0x1,(%ecx)
539e11:	7e 1d                	jle    0x539e30
539e13:	8b 85 3c ff ff ff    	mov    -0xc4(%ebp),%eax
539e19:	66 83 78 4c 00       	cmpw   $0x0,0x4c(%eax)
539e1e:	7c 10                	jl     0x539e30
539e20:	56                   	push   %esi
539e21:	57                   	push   %edi
539e22:	e8 39 69 fd ff       	call   0x510760
539e27:	8b 8d 48 ff ff ff    	mov    -0xb8(%ebp),%ecx
539e2d:	83 c4 08             	add    $0x8,%esp
539e30:	33 c0                	xor    %eax,%eax
539e32:	89 85 28 ff ff ff    	mov    %eax,-0xd8(%ebp)
539e38:	39 01                	cmp    %eax,(%ecx)
539e3a:	0f 8e fa 02 00 00    	jle    0x53a13a
539e40:	8d 04 c0             	lea    (%eax,%eax,8),%eax
539e43:	8d 40 01             	lea    0x1(%eax),%eax
539e46:	8d 34 c1             	lea    (%ecx,%eax,8),%esi
539e49:	8b 46 38             	mov    0x38(%esi),%eax
539e4c:	0b 46 3c             	or     0x3c(%esi),%eax
539e4f:	89 b5 18 ff ff ff    	mov    %esi,-0xe8(%ebp)
539e55:	75 21                	jne    0x539e78
539e57:	8b 46 08             	mov    0x8(%esi),%eax
539e5a:	85 c0                	test   %eax,%eax
539e5c:	74 1a                	je     0x539e78
539e5e:	ff 76 04             	push   0x4(%esi)
539e61:	68 ad 57 6e 00       	push   $0x6e57ad
539e66:	50                   	push   %eax
539e67:	6a 14                	push   $0x14
539e69:	57                   	push   %edi
539e6a:	e8 31 f9 fd ff       	call   0x5197a0
539e6f:	8b 8d 48 ff ff ff    	mov    -0xb8(%ebp),%ecx
539e75:	83 c4 14             	add    $0x14,%esp
539e78:	8b 46 14             	mov    0x14(%esi),%eax
539e7b:	89 85 2c ff ff ff    	mov    %eax,-0xd4(%ebp)
539e81:	85 c0                	test   %eax,%eax
539e83:	0f 84 96 02 00 00    	je     0x53a11f
539e89:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
539e8f:	c7 85 40 ff ff ff 00 	movl   $0x0,-0xc0(%ebp)
539e96:	00 00 00
539e99:	50                   	push   %eax
539e9a:	ff b5 38 ff ff ff    	push   -0xc8(%ebp)
539ea0:	e8 bb cb fc ff       	call   0x506a60
539ea5:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
539eab:	b9 00 10 00 00       	mov    $0x1000,%ecx
539eb0:	01 87 d0 00 00 00    	add    %eax,0xd0(%edi)
539eb6:	83 c4 08             	add    $0x8,%esp
539eb9:	8b 85 3c ff ff ff    	mov    -0xc4(%ebp),%eax
539ebf:	66 85 48 4c          	test   %cx,0x4c(%eax)
539ec3:	75 26                	jne    0x539eeb
539ec5:	0f b6 46 24          	movzbl 0x24(%esi),%eax
539ec9:	c1 e8 05             	shr    $0x5,%eax
539ecc:	83 e0 01             	and    $0x1,%eax
539ecf:	50                   	push   %eax
539ed0:	ff 76 2c             	push   0x2c(%esi)
539ed3:	8b 85 38 ff ff ff    	mov    -0xc8(%ebp),%eax
539ed9:	ff 70 24             	push   0x24(%eax)
539edc:	ff b5 2c ff ff ff    	push   -0xd4(%ebp)
539ee2:	57                   	push   %edi
539ee3:	e8 68 6d fd ff       	call   0x510c50
539ee8:	83 c4 14             	add    $0x14,%esp
539eeb:	83 bd 28 ff ff ff 00 	cmpl   $0x0,-0xd8(%ebp)
539ef2:	8b 87 f0 00 00 00    	mov    0xf0(%edi),%eax
539ef8:	89 85 24 ff ff ff    	mov    %eax,-0xdc(%ebp)
539efe:	8b 46 08             	mov    0x8(%esi),%eax
539f01:	89 87 f0 00 00 00    	mov    %eax,0xf0(%edi)
539f07:	0f 85 bf 00 00 00    	jne    0x539fcc
539f0d:	8b 85 48 ff ff ff    	mov    -0xb8(%ebp),%eax
539f13:	83 38 01             	cmpl   $0x1,(%eax)
539f16:	74 0a                	je     0x539f22
539f18:	f6 40 74 0a          	testb  $0xa,0x74(%eax)
539f1c:	0f 84 aa 00 00 00    	je     0x539fcc
539f22:	8b 73 6c             	mov    0x6c(%ebx),%esi
539f25:	8b 47 2c             	mov    0x2c(%edi),%eax
539f28:	46                   	inc    %esi
539f29:	8b 8d 18 ff ff ff    	mov    -0xe8(%ebp),%ecx
539f2f:	40                   	inc    %eax
539f30:	56                   	push   %esi
539f31:	6a 00                	push   $0x0
539f33:	50                   	push   %eax
539f34:	6a 0d                	push   $0xd
539f36:	89 47 2c             	mov    %eax,0x2c(%edi)
539f39:	53                   	push   %ebx
539f3a:	89 41 1c             	mov    %eax,0x1c(%ecx)
539f3d:	e8 fe 7b 00 00       	call   0x541b40
539f42:	8b 85 18 ff ff ff    	mov    -0xe8(%ebp),%eax
539f48:	c6 45 e4 0d          	movb   $0xd,-0x1c(%ebp)
539f4c:	c7 45 f4 00 00 00 00 	movl   $0x0,-0xc(%ebp)
539f53:	c7 45 ec 00 00 00 00 	movl   $0x0,-0x14(%ebp)
539f5a:	89 70 18             	mov    %esi,0x18(%eax)