4fc9b9:	8b c8                	mov    %eax,%ecx
4fc9bb:	83 c4 1c             	add    $0x1c,%esp
4fc9be:	85 c9                	test   %ecx,%ecx
4fc9c0:	75 2c                	jne    0x4fc9ee
4fc9c2:	53                   	push   %ebx
4fc9c3:	e8 b8 99 ff ff       	call   0x4f6380
4fc9c8:	8b c8                	mov    %eax,%ecx
4fc9ca:	83 c4 04             	add    $0x4,%esp
4fc9cd:	85 c9                	test   %ecx,%ecx
4fc9cf:	75 1d                	jne    0x4fc9ee
4fc9d1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4fc9d4:	38 48 11             	cmp    %cl,0x11(%eax)
4fc9d7:	74 1a                	je     0x4fc9f3
4fc9d9:	53                   	push   %ebx
4fc9da:	e8 61 a5 01 00       	call   0x516f40
4fc9df:	8b 4d 10             	mov    0x10(%ebp),%ecx
4fc9e2:	83 c4 04             	add    $0x4,%esp
4fc9e5:	5f                   	pop    %edi
4fc9e6:	5e                   	pop    %esi
4fc9e7:	89 01                	mov    %eax,(%ecx)
4fc9e9:	5b                   	pop    %ebx
4fc9ea:	8b e5                	mov    %ebp,%esp
4fc9ec:	5d                   	pop    %ebp
4fc9ed:	c3                   	ret
4fc9ee:	8b 45 10             	mov    0x10(%ebp),%eax
4fc9f1:	89 08                	mov    %ecx,(%eax)
4fc9f3:	5f                   	pop    %edi
4fc9f4:	5e                   	pop    %esi
4fc9f5:	5b                   	pop    %ebx
4fc9f6:	8b e5                	mov    %ebp,%esp
4fc9f8:	5d                   	pop    %ebp
4fc9f9:	c3                   	ret
4fc9fa:	cc                   	int3
4fc9fb:	cc                   	int3
4fc9fc:	cc                   	int3
4fc9fd:	cc                   	int3
4fc9fe:	cc                   	int3
4fc9ff:	cc                   	int3
4fca00:	55                   	push   %ebp
4fca01:	8b ec                	mov    %esp,%ebp
4fca03:	56                   	push   %esi
4fca04:	8b 75 08             	mov    0x8(%ebp),%esi
4fca07:	57                   	push   %edi
4fca08:	8b 3e                	mov    (%esi),%edi
4fca0a:	80 7f 51 00          	cmpb   $0x0,0x51(%edi)
4fca0e:	74 0b                	je     0x4fca1b
4fca10:	5f                   	pop    %edi
4fca11:	c7 46 0c 07 00 00 00 	movl   $0x7,0xc(%esi)
4fca18:	5e                   	pop    %esi
4fca19:	5d                   	pop    %ebp
4fca1a:	c3                   	ret
4fca1b:	8b 46 04             	mov    0x4(%esi),%eax
4fca1e:	83 38 00             	cmpl   $0x0,(%eax)
4fca21:	0f 85 92 00 00 00    	jne    0x4fcab9
4fca27:	f6 46 10 01          	testb  $0x1,0x10(%esi)
4fca2b:	74 1c                	je     0x4fca49
4fca2d:	ff 75 10             	push   0x10(%ebp)
4fca30:	57                   	push   %edi
4fca31:	e8 7a 4c 02 00       	call   0x5216b0
4fca36:	8b 4e 04             	mov    0x4(%esi),%ecx
4fca39:	83 c4 08             	add    $0x8,%esp
4fca3c:	89 01                	mov    %eax,(%ecx)
4fca3e:	5f                   	pop    %edi
4fca3f:	c7 46 0c 01 00 00 00 	movl   $0x1,0xc(%esi)
4fca46:	5e                   	pop    %esi
4fca47:	5d                   	pop    %ebp
4fca48:	c3                   	ret
4fca49:	8b 47 20             	mov    0x20(%edi),%eax
4fca4c:	83 e0 01             	and    $0x1,%eax
4fca4f:	83 c8 00             	or     $0x0,%eax
4fca52:	74 14                	je     0x4fca68
4fca54:	68 f9 ef 01 00       	push   $0x1eff9
4fca59:	e8 52 33 02 00       	call   0x51fdb0
4fca5e:	83 c4 04             	add    $0x4,%esp
4fca61:	89 46 0c             	mov    %eax,0xc(%esi)
4fca64:	5f                   	pop    %edi
4fca65:	5e                   	pop    %esi
4fca66:	5d                   	pop    %ebp
4fca67:	c3                   	ret
4fca68:	8b 45 0c             	mov    0xc(%ebp),%eax
4fca6b:	b9 d8 ac 6b 00       	mov    $0x6bacd8,%ecx
4fca70:	85 c0                	test   %eax,%eax
4fca72:	0f 45 c8             	cmovne %eax,%ecx
4fca75:	51                   	push   %ecx
4fca76:	68 dc ac 6b 00       	push   $0x6bacdc
4fca7b:	57                   	push   %edi
4fca7c:	e8 bf 44 03 00       	call   0x530f40
4fca81:	8b 4d 10             	mov    0x10(%ebp),%ecx
4fca84:	83 c4 0c             	add    $0xc,%esp
4fca87:	8b d0                	mov    %eax,%edx
4fca89:	85 c9                	test   %ecx,%ecx
4fca8b:	74 17                	je     0x4fcaa4
4fca8d:	80 39 00             	cmpb   $0x0,(%ecx)
4fca90:	74 12                	je     0x4fcaa4
4fca92:	51                   	push   %ecx
4fca93:	52                   	push   %edx
4fca94:	68 fc ac 6b 00       	push   $0x6bacfc
4fca99:	57                   	push   %edi
4fca9a:	e8 a1 44 03 00       	call   0x530f40
4fca9f:	83 c4 10             	add    $0x10,%esp
4fcaa2:	8b d0                	mov    %eax,%edx
4fcaa4:	8b 46 04             	mov    0x4(%esi),%eax
4fcaa7:	68 00 f0 01 00       	push   $0x1f000
4fcaac:	89 10                	mov    %edx,(%eax)
4fcaae:	e8 fd 32 02 00       	call   0x51fdb0
4fcab3:	89 46 0c             	mov    %eax,0xc(%esi)
4fcab6:	83 c4 04             	add    $0x4,%esp
4fcab9:	5f                   	pop    %edi
4fcaba:	5e                   	pop    %esi
4fcabb:	5d                   	pop    %ebp
4fcabc:	c3                   	ret
4fcabd:	cc                   	int3
4fcabe:	cc                   	int3
4fcabf:	cc                   	int3
4fcac0:	55                   	push   %ebp
4fcac1:	8b ec                	mov    %esp,%ebp
4fcac3:	53                   	push   %ebx
4fcac4:	8b 5d 08             	mov    0x8(%ebp),%ebx
4fcac7:	56                   	push   %esi
4fcac8:	57                   	push   %edi
4fcac9:	8b 7d 0c             	mov    0xc(%ebp),%edi
4fcacc:	8b 73 08             	mov    0x8(%ebx),%esi
4fcacf:	85 ff                	test   %edi,%edi
4fcad1:	7f 3b                	jg     0x4fcb0e
4fcad3:	b8 00 24 00 00       	mov    $0x2400,%eax
4fcad8:	66 85 46 08          	test   %ax,0x8(%esi)
4fcadc:	74 18                	je     0x4fcaf6
4fcade:	56                   	push   %esi
4fcadf:	e8 6c e3 05 00       	call   0x55ae50
4fcae4:	83 c4 04             	add    $0x4,%esp
4fcae7:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
4fcaee:	8b 46 10             	mov    0x10(%esi),%eax
4fcaf1:	5f                   	pop    %edi
4fcaf2:	5e                   	pop    %esi
4fcaf3:	5b                   	pop    %ebx
4fcaf4:	5d                   	pop    %ebp
4fcaf5:	c3                   	ret
4fcaf6:	b8 01 00 00 00       	mov    $0x1,%eax
4fcafb:	c7 46 10 00 00 00 00 	movl   $0x0,0x10(%esi)
4fcb02:	66 89 46 08          	mov    %ax,0x8(%esi)
4fcb06:	8b 46 10             	mov    0x10(%esi),%eax
4fcb09:	5f                   	pop    %edi
4fcb0a:	5e                   	pop    %esi
4fcb0b:	5b                   	pop    %ebx
4fcb0c:	5d                   	pop    %ebp
4fcb0d:	c3                   	ret
4fcb0e:	39 7e 18             	cmp    %edi,0x18(%esi)
4fcb11:	7d 0e                	jge    0x4fcb21
4fcb13:	6a 00                	push   $0x0
4fcb15:	57                   	push   %edi
4fcb16:	56                   	push   %esi
4fcb17:	e8 d4 e9 04 00       	call   0x54b4f0
4fcb1c:	83 c4 0c             	add    $0xc,%esp
4fcb1f:	eb 0b                	jmp    0x4fcb2c
4fcb21:	8b 46 14             	mov    0x14(%esi),%eax
4fcb24:	66 83 66 08 2d       	andw   $0x2d,0x8(%esi)
4fcb29:	89 46 10             	mov    %eax,0x10(%esi)
4fcb2c:	b8 00 20 00 00       	mov    $0x2000,%eax
4fcb31:	66 89 46 08          	mov    %ax,0x8(%esi)
4fcb35:	8b 43 04             	mov    0x4(%ebx),%eax
4fcb38:	89 06                	mov    %eax,(%esi)
4fcb3a:	8b 46 10             	mov    0x10(%esi),%eax
4fcb3d:	85 c0                	test   %eax,%eax
4fcb3f:	74 0f                	je     0x4fcb50
4fcb41:	57                   	push   %edi
4fcb42:	6a 00                	push   $0x0
4fcb44:	50                   	push   %eax
4fcb45:	e8 b6 6e 0e 00       	call   0x5e3a00
4fcb4a:	8b 46 10             	mov    0x10(%esi),%eax
4fcb4d:	83 c4 0c             	add    $0xc,%esp
4fcb50:	5f                   	pop    %edi
4fcb51:	5e                   	pop    %esi
4fcb52:	5b                   	pop    %ebx
4fcb53:	5d                   	pop    %ebp
4fcb54:	c3                   	ret
4fcb55:	cc                   	int3
4fcb56:	cc                   	int3
4fcb57:	cc                   	int3
4fcb58:	cc                   	int3
4fcb59:	cc                   	int3
4fcb5a:	cc                   	int3
4fcb5b:	cc                   	int3
4fcb5c:	cc                   	int3
4fcb5d:	cc                   	int3
4fcb5e:	cc                   	int3
4fcb5f:	cc                   	int3
4fcb60:	55                   	push   %ebp
4fcb61:	8b ec                	mov    %esp,%ebp
4fcb63:	83 ec 08             	sub    $0x8,%esp
4fcb66:	53                   	push   %ebx
4fcb67:	0f b6 5d 10          	movzbl 0x10(%ebp),%ebx
4fcb6b:	83 fb 04             	cmp    $0x4,%ebx
4fcb6e:	74 37                	je     0x4fcba7
4fcb70:	83 fb 08             	cmp    $0x8,%ebx
4fcb73:	74 32                	je     0x4fcba7
4fcb75:	83 fb 01             	cmp    $0x1,%ebx
4fcb78:	7c 05                	jl     0x4fcb7f
4fcb7a:	83 fb 03             	cmp    $0x3,%ebx
4fcb7d:	7e 2d                	jle    0x4fcbac
4fcb7f:	68 fc c4 6b 00       	push   $0x6bc4fc
4fcb84:	68 63 77 02 00       	push   $0x27763
4fcb89:	68 a8 c4 6b 00       	push   $0x6bc4a8
4fcb8e:	68 78 c4 6b 00       	push   $0x6bc478
4fcb93:	6a 15                	push   $0x15
4fcb95:	e8 46 34 fe ff       	call   0x4dffe0
4fcb9a:	83 c4 14             	add    $0x14,%esp
4fcb9d:	b8 15 00 00 00       	mov    $0x15,%eax
4fcba2:	5b                   	pop    %ebx
4fcba3:	8b e5                	mov    %ebp,%esp
4fcba5:	5d                   	pop    %ebp
4fcba6:	c3                   	ret
4fcba7:	bb 02 00 00 00       	mov    $0x2,%ebx
4fcbac:	8b 45 0c             	mov    0xc(%ebp),%eax
4fcbaf:	57                   	push   %edi
4fcbb0:	8b 7d 08             	mov    0x8(%ebp),%edi
4fcbb3:	85 c0                	test   %eax,%eax
4fcbb5:	74 17                	je     0x4fcbce
4fcbb7:	6a 00                	push   $0x0
4fcbb9:	50                   	push   %eax
4fcbba:	8d 87 94 01 00 00    	lea    0x194(%edi),%eax
4fcbc0:	50                   	push   %eax
4fcbc1:	e8 0a 54 00 00       	call   0x501fd0
4fcbc6:	83 c4 0c             	add    $0xc,%esp
4fcbc9:	8b 48 08             	mov    0x8(%eax),%ecx
4fcbcc:	eb 03                	jmp    0x4fcbd1
4fcbce:	8b 4f 08             	mov    0x8(%edi),%ecx
4fcbd1:	56                   	push   %esi
4fcbd2:	85 c9                	test   %ecx,%ecx
4fcbd4:	0f 84 a8 00 00 00    	je     0x4fcc82
4fcbda:	0f b6 f3             	movzbl %bl,%esi
4fcbdd:	4e                   	dec    %esi
4fcbde:	8d 34 b6             	lea    (%esi,%esi,4),%esi
4fcbe1:	8d 34 b1             	lea    (%ecx,%esi,4),%esi
4fcbe4:	89 75 fc             	mov    %esi,-0x4(%ebp)
4fcbe7:	85 f6                	test   %esi,%esi
4fcbe9:	0f 84 93 00 00 00    	je     0x4fcc82
4fcbef:	83 7e 0c 00          	cmpl   $0x0,0xc(%esi)
4fcbf3:	0f 84 89 00 00 00    	je     0x4fcc82
4fcbf9:	83 bf b0 00 00 00 00 	cmpl   $0x0,0xb0(%edi)
4fcc00:	74 1c                	je     0x4fcc1e
4fcc02:	68 c0 c3 6b 00       	push   $0x6bc3c0
4fcc07:	6a 05                	push   $0x5
4fcc09:	57                   	push   %edi
4fcc0a:	e8 c1 66 02 00       	call   0x5232d0
4fcc0f:	83 c4 0c             	add    $0xc,%esp
4fcc12:	b8 05 00 00 00       	mov    $0x5,%eax
4fcc17:	5e                   	pop    %esi
4fcc18:	5f                   	pop    %edi
4fcc19:	5b                   	pop    %ebx
4fcc1a:	8b e5                	mov    %ebp,%esp
4fcc1c:	5d                   	pop    %ebp
4fcc1d:	c3                   	ret
4fcc1e:	6a 00                	push   $0x0
4fcc20:	57                   	push   %edi
4fcc21:	e8 6a 68 02 00       	call   0x523490
4fcc26:	0f b6 46 04          	movzbl 0x4(%esi),%eax
4fcc2a:	83 c4 08             	add    $0x8,%esp
4fcc2d:	83 e0 f7             	and    $0xfffffff7,%eax
4fcc30:	3b c3                	cmp    %ebx,%eax
4fcc32:	75 4e                	jne    0x4fcc82
4fcc34:	ff 75 0c             	push   0xc(%ebp)
4fcc37:	8d 87 94 01 00 00    	lea    0x194(%edi),%eax
4fcc3d:	50                   	push   %eax
4fcc3e:	e8 3d 0e 03 00       	call   0x52da80
4fcc43:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fcc46:	b9 03 00 00 00       	mov    $0x3,%ecx
4fcc4b:	83 c4 08             	add    $0x8,%esp
4fcc4e:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4fcc51:	8d 70 10             	lea    0x10(%eax),%esi
4fcc54:	8a 46 f4             	mov    -0xc(%esi),%al
4fcc57:	3a 42 04             	cmp    0x4(%edx),%al
4fcc5a:	75 1b                	jne    0x4fcc77
4fcc5c:	8b 06                	mov    (%esi),%eax
4fcc5e:	85 c0                	test   %eax,%eax
4fcc60:	74 0e                	je     0x4fcc70
4fcc62:	ff 76 f8             	push   -0x8(%esi)
4fcc65:	ff d0                	call   *%eax
4fcc67:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4fcc6a:	83 c4 04             	add    $0x4,%esp
4fcc6d:	8b 55 fc             	mov    -0x4(%ebp),%edx
4fcc70:	c7 46 fc 00 00 00 00 	movl   $0x0,-0x4(%esi)
4fcc77:	83 c6 14             	add    $0x14,%esi
4fcc7a:	83 e9 01             	sub    $0x1,%ecx
4fcc7d:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4fcc80:	75 d2                	jne    0x4fcc54
4fcc82:	8b 45 0c             	mov    0xc(%ebp),%eax
4fcc85:	85 c0                	test   %eax,%eax
4fcc87:	74 10                	je     0x4fcc99
4fcc89:	6a 01                	push   $0x1
4fcc8b:	50                   	push   %eax
4fcc8c:	57                   	push   %edi
4fcc8d:	e8 be 51 00 00       	call   0x501e50
4fcc92:	83 c4 0c             	add    $0xc,%esp
4fcc95:	8b c8                	mov    %eax,%ecx
4fcc97:	eb 03                	jmp    0x4fcc9c
4fcc99:	8b 4f 08             	mov    0x8(%edi),%ecx
4fcc9c:	85 c9                	test   %ecx,%ecx
4fcc9e:	74 4e                	je     0x4fccee
4fcca0:	0f b6 c3             	movzbl %bl,%eax
4fcca3:	8d 04 80             	lea    (%eax,%eax,4),%eax
4fcca6:	8d 0c 81             	lea    (%ecx,%eax,4),%ecx
4fcca9:	83 c1 ec             	add    $0xffffffec,%ecx
4fccac:	74 40                	je     0x4fccee
4fccae:	8b 45 18             	mov    0x18(%ebp),%eax
4fccb1:	89 41 0c             	mov    %eax,0xc(%ecx)
4fccb4:	8b 45 14             	mov    0x14(%ebp),%eax
4fccb7:	89 41 08             	mov    %eax,0x8(%ecx)
4fccba:	8b 45 1c             	mov    0x1c(%ebp),%eax
4fccbd:	89 41 10             	mov    %eax,0x10(%ecx)
4fccc0:	8a 45 10             	mov    0x10(%ebp),%al
4fccc3:	24 08                	and    $0x8,%al
4fccc5:	0a c3                	or     %bl,%al
4fccc7:	88 41 04             	mov    %al,0x4(%ecx)
4fccca:	83 bf 0c 01 00 00 00 	cmpl   $0x0,0x10c(%edi)
4fccd1:	c7 47 40 00 00 00 00 	movl   $0x0,0x40(%edi)
4fccd8:	74 0b                	je     0x4fcce5
4fccda:	6a 00                	push   $0x0
4fccdc:	57                   	push   %edi
4fccdd:	e8 0e 65 02 00       	call   0x5231f0
4fcce2:	83 c4 08             	add    $0x8,%esp
4fcce5:	5e                   	pop    %esi
4fcce6:	5f                   	pop    %edi
4fcce7:	33 c0                	xor    %eax,%eax
4fcce9:	5b                   	pop    %ebx
4fccea:	8b e5                	mov    %ebp,%esp
4fccec:	5d                   	pop    %ebp
4fcced:	c3                   	ret
4fccee:	5e                   	pop    %esi
4fccef:	5f                   	pop    %edi
4fccf0:	b8 07 00 00 00       	mov    $0x7,%eax
4fccf5:	5b                   	pop    %ebx
4fccf6:	8b e5                	mov    %ebp,%esp
4fccf8:	5d                   	pop    %ebp
4fccf9:	c3                   	ret
4fccfa:	cc                   	int3
4fccfb:	cc                   	int3
4fccfc:	cc                   	int3
4fccfd:	cc                   	int3
4fccfe:	cc                   	int3
4fccff:	cc                   	int3
4fcd00:	55                   	push   %ebp
4fcd01:	8b ec                	mov    %esp,%ebp
4fcd03:	53                   	push   %ebx
4fcd04:	8b 5d 08             	mov    0x8(%ebp),%ebx
4fcd07:	56                   	push   %esi
4fcd08:	33 f6                	xor    %esi,%esi
4fcd0a:	57                   	push   %edi
4fcd0b:	8b 43 0c             	mov    0xc(%ebx),%eax
4fcd0e:	bf 01 00 00 00       	mov    $0x1,%edi
4fcd13:	85 c0                	test   %eax,%eax