499995:	8b 0f                	mov    (%edi),%ecx
499997:	46                   	inc    %esi
499998:	8d 49 10             	lea    0x10(%ecx),%ecx
49999b:	e8 10 46 fc ff       	call   0x45dfb0
4999a0:	3b f0                	cmp    %eax,%esi
4999a2:	7c bc                	jl     0x499960
4999a4:	8b 75 bc             	mov    -0x44(%ebp),%esi
4999a7:	89 75 d4             	mov    %esi,-0x2c(%ebp)
4999aa:	eb 03                	jmp    0x4999af
4999ac:	8b 75 d4             	mov    -0x2c(%ebp),%esi
4999af:	8b 4d b8             	mov    -0x48(%ebp),%ecx
4999b2:	8d 45 bc             	lea    -0x44(%ebp),%eax
4999b5:	50                   	push   %eax
4999b6:	8d 45 a8             	lea    -0x58(%ebp),%eax
4999b9:	50                   	push   %eax
4999ba:	8d 49 0c             	lea    0xc(%ecx),%ecx
4999bd:	e8 1e 04 fe ff       	call   0x479de0
4999c2:	8b 45 b0             	mov    -0x50(%ebp),%eax
4999c5:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
4999c9:	0f 85 8a 01 00 00    	jne    0x499b59
4999cf:	8b 50 14             	mov    0x14(%eax),%edx
4999d2:	8b 48 10             	mov    0x10(%eax),%ecx
4999d5:	8b c6                	mov    %esi,%eax
4999d7:	89 55 ec             	mov    %edx,-0x14(%ebp)
4999da:	3b c3                	cmp    %ebx,%eax
4999dc:	74 25                	je     0x499a03
4999de:	66 90                	xchg   %ax,%ax
4999e0:	3b ca                	cmp    %edx,%ecx
4999e2:	74 1b                	je     0x4999ff
4999e4:	8b 10                	mov    (%eax),%edx
4999e6:	3b 11                	cmp    (%ecx),%edx
4999e8:	0f 8c 6b 01 00 00    	jl     0x499b59
4999ee:	7f 1b                	jg     0x499a0b
4999f0:	8b 55 ec             	mov    -0x14(%ebp),%edx
4999f3:	83 c0 04             	add    $0x4,%eax
4999f6:	83 c1 04             	add    $0x4,%ecx
4999f9:	3b c3                	cmp    %ebx,%eax
4999fb:	75 e3                	jne    0x4999e0
4999fd:	eb 04                	jmp    0x499a03
4999ff:	3b c3                	cmp    %ebx,%eax
499a01:	75 08                	jne    0x499a0b
499a03:	3b ca                	cmp    %edx,%ecx
499a05:	0f 85 4e 01 00 00    	jne    0x499b59
499a0b:	8b 4d b8             	mov    -0x48(%ebp),%ecx
499a0e:	8b 45 b0             	mov    -0x50(%ebp),%eax
499a11:	3b 41 0c             	cmp    0xc(%ecx),%eax
499a14:	0f 84 3f 01 00 00    	je     0x499b59
499a1a:	80 7d f3 00          	cmpb   $0x0,-0xd(%ebp)
499a1e:	c6 45 f2 01          	movb   $0x1,-0xe(%ebp)
499a22:	89 45 ec             	mov    %eax,-0x14(%ebp)
499a25:	0f 85 8c 00 00 00    	jne    0x499ab7
499a2b:	8b 75 d0             	mov    -0x30(%ebp),%esi
499a2e:	8d 4d d8             	lea    -0x28(%ebp),%ecx
499a31:	c6 45 f3 01          	movb   $0x1,-0xd(%ebp)
499a35:	ff 76 04             	push   0x4(%esi)
499a38:	e8 53 3e fc ff       	call   0x45d890
499a3d:	8b 76 0c             	mov    0xc(%esi),%esi
499a40:	8d 46 04             	lea    0x4(%esi),%eax
499a43:	f7 de                	neg    %esi
499a45:	1b f6                	sbb    %esi,%esi
499a47:	23 f0                	and    %eax,%esi
499a49:	8b 45 b0             	mov    -0x50(%ebp),%eax
499a4c:	89 45 ec             	mov    %eax,-0x14(%ebp)
499a4f:	3b f7                	cmp    %edi,%esi
499a51:	74 64                	je     0x499ab7
499a53:	89 45 ec             	mov    %eax,-0x14(%ebp)
499a56:	8b 06                	mov    (%esi),%eax
499a58:	89 45 e8             	mov    %eax,-0x18(%ebp)
499a5b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499a5e:	85 c0                	test   %eax,%eax
499a60:	74 1a                	je     0x499a7c
499a62:	8b 10                	mov    (%eax),%edx
499a64:	8b 4d dc             	mov    -0x24(%ebp),%ecx
499a67:	3b ca                	cmp    %edx,%ecx
499a69:	7d 0c                	jge    0x499a77
499a6b:	8b 44 88 04          	mov    0x4(%eax,%ecx,4),%eax
499a6f:	41                   	inc    %ecx
499a70:	89 4d dc             	mov    %ecx,-0x24(%ebp)
499a73:	8b c8                	mov    %eax,%ecx
499a75:	eb 31                	jmp    0x499aa8
499a77:	3b 55 e0             	cmp    -0x20(%ebp),%edx
499a7a:	75 10                	jne    0x499a8c
499a7c:	8b 45 e0             	mov    -0x20(%ebp),%eax
499a7f:	8d 4d d8             	lea    -0x28(%ebp),%ecx
499a82:	40                   	inc    %eax
499a83:	50                   	push   %eax
499a84:	e8 07 3e fc ff       	call   0x45d890
499a89:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499a8c:	ff 00                	incl   (%eax)
499a8e:	ff 75 d8             	push   -0x28(%ebp)
499a91:	e8 aa e3 02 00       	call   0x4c7e40
499a96:	8b 55 dc             	mov    -0x24(%ebp),%edx
499a99:	8b c8                	mov    %eax,%ecx
499a9b:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499a9e:	83 c4 04             	add    $0x4,%esp
499aa1:	89 4c 90 04          	mov    %ecx,0x4(%eax,%edx,4)
499aa5:	ff 45 dc             	incl   -0x24(%ebp)
499aa8:	ff 75 e8             	push   -0x18(%ebp)
499aab:	e8 b0 10 03 00       	call   0x4cab60
499ab0:	83 c6 04             	add    $0x4,%esi
499ab3:	3b f7                	cmp    %edi,%esi
499ab5:	75 9f                	jne    0x499a56
499ab7:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499aba:	8b 55 e0             	mov    -0x20(%ebp),%edx
499abd:	85 c0                	test   %eax,%eax
499abf:	74 17                	je     0x499ad8
499ac1:	8b 30                	mov    (%eax),%esi
499ac3:	8b 4d dc             	mov    -0x24(%ebp),%ecx
499ac6:	3b ce                	cmp    %esi,%ecx
499ac8:	7d 0a                	jge    0x499ad4
499aca:	8b 74 88 04          	mov    0x4(%eax,%ecx,4),%esi
499ace:	41                   	inc    %ecx
499acf:	89 4d dc             	mov    %ecx,-0x24(%ebp)
499ad2:	eb 2f                	jmp    0x499b03
499ad4:	3b f2                	cmp    %edx,%esi
499ad6:	75 0f                	jne    0x499ae7
499ad8:	8d 42 01             	lea    0x1(%edx),%eax
499adb:	50                   	push   %eax
499adc:	8d 4d d8             	lea    -0x28(%ebp),%ecx
499adf:	e8 ac 3d fc ff       	call   0x45d890
499ae4:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499ae7:	ff 00                	incl   (%eax)
499ae9:	ff 75 d8             	push   -0x28(%ebp)
499aec:	e8 4f e3 02 00       	call   0x4c7e40
499af1:	8b 55 dc             	mov    -0x24(%ebp),%edx
499af4:	8b f0                	mov    %eax,%esi
499af6:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
499af9:	83 c4 04             	add    $0x4,%esp
499afc:	89 74 91 04          	mov    %esi,0x4(%ecx,%edx,4)
499b00:	ff 45 dc             	incl   -0x24(%ebp)
499b03:	ff 37                	push   (%edi)
499b05:	8b ce                	mov    %esi,%ecx
499b07:	e8 54 10 03 00       	call   0x4cab60
499b0c:	8d 46 10             	lea    0x10(%esi),%eax
499b0f:	8b c8                	mov    %eax,%ecx
499b11:	89 45 e8             	mov    %eax,-0x18(%ebp)
499b14:	e8 47 37 fc ff       	call   0x45d260
499b19:	8b 45 ec             	mov    -0x14(%ebp),%eax
499b1c:	8b 70 1c             	mov    0x1c(%eax),%esi
499b1f:	3b 70 20             	cmp    0x20(%eax),%esi
499b22:	0f 84 92 00 00 00    	je     0x499bba
499b28:	8b 7d e8             	mov    -0x18(%ebp),%edi
499b2b:	8b d8                	mov    %eax,%ebx
499b2d:	0f 1f 00             	nopl   (%eax)
499b30:	8b 06                	mov    (%esi),%eax
499b32:	8b cf                	mov    %edi,%ecx
499b34:	89 45 e8             	mov    %eax,-0x18(%ebp)
499b37:	8d 45 e8             	lea    -0x18(%ebp),%eax
499b3a:	50                   	push   %eax
499b3b:	e8 e0 33 fc ff       	call   0x45cf20
499b40:	83 c6 04             	add    $0x4,%esi
499b43:	3b 73 20             	cmp    0x20(%ebx),%esi
499b46:	75 e8                	jne    0x499b30
499b48:	8b 7d b4             	mov    -0x4c(%ebp),%edi
499b4b:	8b 5d c0             	mov    -0x40(%ebp),%ebx
499b4e:	83 c7 04             	add    $0x4,%edi
499b51:	8b 4d d0             	mov    -0x30(%ebp),%ecx
499b54:	e9 6d fd ff ff       	jmp    0x4998c6
499b59:	80 7d f3 00          	cmpb   $0x0,-0xd(%ebp)
499b5d:	74 5b                	je     0x499bba
499b5f:	8b 07                	mov    (%edi),%eax
499b61:	8b 55 e0             	mov    -0x20(%ebp),%edx
499b64:	89 45 e8             	mov    %eax,-0x18(%ebp)
499b67:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499b6a:	85 c0                	test   %eax,%eax
499b6c:	74 17                	je     0x499b85
499b6e:	8b 30                	mov    (%eax),%esi
499b70:	8b 4d dc             	mov    -0x24(%ebp),%ecx
499b73:	3b ce                	cmp    %esi,%ecx
499b75:	7d 0a                	jge    0x499b81
499b77:	8b 74 88 04          	mov    0x4(%eax,%ecx,4),%esi
499b7b:	41                   	inc    %ecx
499b7c:	89 4d dc             	mov    %ecx,-0x24(%ebp)
499b7f:	eb 2f                	jmp    0x499bb0
499b81:	3b f2                	cmp    %edx,%esi
499b83:	75 0f                	jne    0x499b94
499b85:	8d 42 01             	lea    0x1(%edx),%eax
499b88:	50                   	push   %eax
499b89:	8d 4d d8             	lea    -0x28(%ebp),%ecx
499b8c:	e8 ff 3c fc ff       	call   0x45d890
499b91:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499b94:	ff 00                	incl   (%eax)
499b96:	ff 75 d8             	push   -0x28(%ebp)
499b99:	e8 a2 e2 02 00       	call   0x4c7e40
499b9e:	8b 55 dc             	mov    -0x24(%ebp),%edx
499ba1:	8b f0                	mov    %eax,%esi
499ba3:	8b 45 e4             	mov    -0x1c(%ebp),%eax
499ba6:	83 c4 04             	add    $0x4,%esp
499ba9:	89 74 90 04          	mov    %esi,0x4(%eax,%edx,4)
499bad:	ff 45 dc             	incl   -0x24(%ebp)
499bb0:	ff 75 e8             	push   -0x18(%ebp)
499bb3:	8b ce                	mov    %esi,%ecx
499bb5:	e8 a6 0f 03 00       	call   0x4cab60
499bba:	8b 4d d0             	mov    -0x30(%ebp),%ecx
499bbd:	83 c7 04             	add    $0x4,%edi
499bc0:	e9 01 fd ff ff       	jmp    0x4998c6
499bc5:	80 7d f3 00          	cmpb   $0x0,-0xd(%ebp)
499bc9:	74 64                	je     0x499c2f
499bcb:	8b 5d d0             	mov    -0x30(%ebp),%ebx
499bce:	8d 45 d8             	lea    -0x28(%ebp),%eax
499bd1:	3b d8                	cmp    %eax,%ebx
499bd3:	74 5a                	je     0x499c2f
499bd5:	85 f6                	test   %esi,%esi
499bd7:	7e 1f                	jle    0x499bf8
499bd9:	8b 7d e8             	mov    -0x18(%ebp),%edi
499bdc:	33 f6                	xor    %esi,%esi
499bde:	66 90                	xchg   %ax,%ax
499be0:	8b 4c b2 04          	mov    0x4(%edx,%esi,4),%ecx
499be4:	e8 f7 7f 02 00       	call   0x4c1be0
499be9:	8b 55 c8             	mov    -0x38(%ebp),%edx
499bec:	46                   	inc    %esi
499bed:	3b f7                	cmp    %edi,%esi
499bef:	7c ef                	jl     0x499be0
499bf1:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
499bf8:	8b 7d dc             	mov    -0x24(%ebp),%edi
499bfb:	85 ff                	test   %edi,%edi
499bfd:	74 30                	je     0x499c2f
499bff:	8b 75 e4             	mov    -0x1c(%ebp),%esi
499c02:	8b cb                	mov    %ebx,%ecx
499c04:	57                   	push   %edi
499c05:	83 c6 04             	add    $0x4,%esi
499c08:	e8 f3 36 fc ff       	call   0x45d300
499c0d:	8b 4b 0c             	mov    0xc(%ebx),%ecx
499c10:	8b 09                	mov    (%ecx),%ecx
499c12:	2b 4b 04             	sub    0x4(%ebx),%ecx
499c15:	51                   	push   %ecx
499c16:	57                   	push   %edi
499c17:	56                   	push   %esi
499c18:	50                   	push   %eax
499c19:	8b cb                	mov    %ebx,%ecx
499c1b:	e8 b0 eb fd ff       	call   0x4787d0
499c20:	8b 4b 0c             	mov    0xc(%ebx),%ecx
499c23:	01 7b 04             	add    %edi,0x4(%ebx)
499c26:	8b 43 04             	mov    0x4(%ebx),%eax
499c29:	39 01                	cmp    %eax,(%ecx)
499c2b:	7d 02                	jge    0x499c2f
499c2d:	89 01                	mov    %eax,(%ecx)
499c2f:	8b 55 d4             	mov    -0x2c(%ebp),%edx
499c32:	85 d2                	test   %edx,%edx
499c34:	74 2c                	je     0x499c62
499c36:	8b 4d cc             	mov    -0x34(%ebp),%ecx
499c39:	8b c2                	mov    %edx,%eax
499c3b:	2b ca                	sub    %edx,%ecx
499c3d:	83 e1 fc             	and    $0xfffffffc,%ecx
499c40:	81 f9 00 10 00 00    	cmp    $0x1000,%ecx
499c46:	72 10                	jb     0x499c58
499c48:	8b 52 fc             	mov    -0x4(%edx),%edx
499c4b:	83 c1 23             	add    $0x23,%ecx
499c4e:	2b c2                	sub    %edx,%eax
499c50:	83 c0 fc             	add    $0xfffffffc,%eax
499c53:	83 f8 1f             	cmp    $0x1f,%eax
499c56:	77 74                	ja     0x499ccc
499c58:	51                   	push   %ecx
499c59:	52                   	push   %edx
499c5a:	e8 f6 75 13 00       	call   0x5d1255
499c5f:	83 c4 08             	add    $0x8,%esp
499c62:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
499c65:	85 c9                	test   %ecx,%ecx
499c67:	74 4f                	je     0x499cb8
499c69:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
499c6d:	75 49                	jne    0x499cb8
499c6f:	8b 19                	mov    (%ecx),%ebx
499c71:	8d 41 04             	lea    0x4(%ecx),%eax
499c74:	33 f6                	xor    %esi,%esi
499c76:	89 45 e8             	mov    %eax,-0x18(%ebp)
499c79:	85 db                	test   %ebx,%ebx
499c7b:	7e 27                	jle    0x499ca4
499c7d:	0f 1f 00             	nopl   (%eax)
499c80:	8b 3c b0             	mov    (%eax,%esi,4),%edi
499c83:	85 ff                	test   %edi,%edi
499c85:	74 15                	je     0x499c9c
499c87:	8b cf                	mov    %edi,%ecx
499c89:	e8 92 0c 03 00       	call   0x4ca920
499c8e:	6a 48                	push   $0x48
499c90:	57                   	push   %edi
499c91:	e8 bf 75 13 00       	call   0x5d1255
499c96:	8b 45 e8             	mov    -0x18(%ebp),%eax
499c99:	83 c4 08             	add    $0x8,%esp
499c9c:	46                   	inc    %esi
499c9d:	3b f3                	cmp    %ebx,%esi
499c9f:	7c df                	jl     0x499c80
499ca1:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
499ca4:	8b 45 e0             	mov    -0x20(%ebp),%eax
499ca7:	8d 04 85 04 00 00 00 	lea    0x4(,%eax,4),%eax
499cae:	50                   	push   %eax
499caf:	51                   	push   %ecx
499cb0:	e8 a0 75 13 00       	call   0x5d1255
499cb5:	83 c4 08             	add    $0x8,%esp
499cb8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
499cbb:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
499cc2:	59                   	pop    %ecx
499cc3:	5f                   	pop    %edi
499cc4:	5e                   	pop    %esi
499cc5:	5b                   	pop    %ebx
499cc6:	8b e5                	mov    %ebp,%esp
499cc8:	5d                   	pop    %ebp
499cc9:	c2 04 00             	ret    $0x4
499ccc:	e8 1f c5 13 00       	call   0x5d61f0
499cd1:	cc                   	int3
499cd2:	cc                   	int3
499cd3:	cc                   	int3
499cd4:	cc                   	int3
499cd5:	cc                   	int3
499cd6:	cc                   	int3
499cd7:	cc                   	int3
499cd8:	cc                   	int3
499cd9:	cc                   	int3
499cda:	cc                   	int3
499cdb:	cc                   	int3
499cdc:	cc                   	int3
499cdd:	cc                   	int3
499cde:	cc                   	int3
499cdf:	cc                   	int3
499ce0:	55                   	push   %ebp
499ce1:	8b ec                	mov    %esp,%ebp
499ce3:	6a ff                	push   $0xffffffff
499ce5:	68 93 cd 5f 00       	push   $0x5fcd93
499cea:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
499cf0:	50                   	push   %eax
499cf1:	81 ec c0 00 00 00    	sub    $0xc0,%esp
499cf7:	a1 c0 14 69 00       	mov    0x6914c0,%eax
499cfc:	33 c5                	xor    %ebp,%eax
499cfe:	89 45 f0             	mov    %eax,-0x10(%ebp)
499d01:	56                   	push   %esi
499d02:	57                   	push   %edi
499d03:	50                   	push   %eax
499d04:	8d 45 f4             	lea    -0xc(%ebp),%eax
499d07:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
499d0d:	89 8d 6c ff ff ff    	mov    %ecx,-0x94(%ebp)
499d13:	8b 75 08             	mov    0x8(%ebp),%esi
499d16:	8b 45 0c             	mov    0xc(%ebp),%eax
499d19:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
499d1f:	89 b5 78 ff ff ff    	mov    %esi,-0x88(%ebp)
499d25:	8b 56 10             	mov    0x10(%esi),%edx
499d28:	c7 45 80 00 00 00 00 	movl   $0x0,-0x80(%ebp)
499d2f:	8a 42 14             	mov    0x14(%edx),%al
499d32:	24 01                	and    $0x1,%al
499d34:	74 0a                	je     0x499d40
499d36:	80 7a 2c 00          	cmpb   $0x0,0x2c(%edx)
499d3a:	0f 85 c7 04 00 00    	jne    0x49a207
499d40:	6a 2c                	push   $0x2c
499d42:	c7 45 88 00 00 00 00 	movl   $0x0,-0x78(%ebp)
499d49:	c7 45 8c 00 00 00 00 	movl   $0x0,-0x74(%ebp)
499d50:	e8 d0 74 13 00       	call   0x5d1225
499d55:	83 c4 04             	add    $0x4,%esp
499d58:	89 00                	mov    %eax,(%eax)
499d5a:	89 40 04             	mov    %eax,0x4(%eax)
499d5d:	89 40 08             	mov    %eax,0x8(%eax)
499d60:	66 c7 40 0c 01 01    	movw   $0x101,0xc(%eax)
499d66:	89 45 88             	mov    %eax,-0x78(%ebp)