4ffb17:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4ffb1b:	eb 5c                	jmp    0x4ffb79
4ffb1d:	8b 44 24 14          	mov    0x14(%esp),%eax
4ffb21:	ba 08 00 00 00       	mov    $0x8,%edx
4ffb26:	2b d7                	sub    %edi,%edx
4ffb28:	8b 5c 24 18          	mov    0x18(%esp),%ebx
4ffb2c:	8b ca                	mov    %edx,%ecx
4ffb2e:	8b 00                	mov    (%eax),%eax
4ffb30:	d3 e0                	shl    %cl,%eax
4ffb32:	8b ca                	mov    %edx,%ecx
4ffb34:	ba 01 00 00 00       	mov    $0x1,%edx
4ffb39:	d3 e2                	shl    %cl,%edx
4ffb3b:	8b ca                	mov    %edx,%ecx
4ffb3d:	8b 54 24 04          	mov    0x4(%esp),%edx
4ffb41:	8b f3                	mov    %ebx,%esi
4ffb43:	8b 5c 24 04          	mov    0x4(%esp),%ebx
4ffb47:	8d 94 02 d4 04 00 00 	lea    0x4d4(%edx,%eax,1),%edx
4ffb4e:	85 c9                	test   %ecx,%ecx
4ffb50:	8d 84 83 d4 00 00 00 	lea    0xd4(%ebx,%eax,4),%eax
4ffb57:	7e 0f                	jle    0x4ffb68
4ffb59:	89 38                	mov    %edi,(%eax)
4ffb5b:	83 c0 04             	add    $0x4,%eax
4ffb5e:	8a 1e                	mov    (%esi),%bl
4ffb60:	49                   	dec    %ecx
4ffb61:	88 1a                	mov    %bl,(%edx)
4ffb63:	42                   	inc    %edx
4ffb64:	85 c9                	test   %ecx,%ecx
4ffb66:	7f f1                	jg     0x4ffb59
4ffb68:	ff 44 24 0c          	incl   0xc(%esp)
4ffb6c:	83 44 24 14 04       	addl   $0x4,0x14(%esp)
4ffb71:	ff 44 24 18          	incl   0x18(%esp)
4ffb75:	ff 44 24 08          	incl   0x8(%esp)
4ffb79:	8b 44 24 10          	mov    0x10(%esp),%eax
4ffb7d:	33 d2                	xor    %edx,%edx
4ffb7f:	8a 10                	mov    (%eax),%dl
4ffb81:	3b 54 24 0c          	cmp    0xc(%esp),%edx
4ffb85:	7d 96                	jge    0x4ffb1d
4ffb87:	47                   	inc    %edi
4ffb88:	ff 44 24 1c          	incl   0x1c(%esp)
4ffb8c:	83 ff 08             	cmp    $0x8,%edi
4ffb8f:	0f 8e 56 ff ff ff    	jle    0x4ffaeb
4ffb95:	81 c4 28 05 00 00    	add    $0x528,%esp
4ffb9b:	5f                   	pop    %edi
4ffb9c:	5e                   	pop    %esi
4ffb9d:	5b                   	pop    %ebx
4ffb9e:	c3                   	ret
4ffb9f:	90                   	nop
4ffba0:	55                   	push   %ebp
4ffba1:	8b ec                	mov    %esp,%ebp
4ffba3:	83 c4 f4             	add    $0xfffffff4,%esp
4ffba6:	53                   	push   %ebx
4ffba7:	8b d8                	mov    %eax,%ebx
4ffba9:	56                   	push   %esi
4ffbaa:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4ffbad:	89 55 fc             	mov    %edx,-0x4(%ebp)
4ffbb0:	8b 33                	mov    (%ebx),%esi
4ffbb2:	8b 43 04             	mov    0x4(%ebx),%eax
4ffbb5:	89 45 f4             	mov    %eax,-0xc(%ebp)
4ffbb8:	83 7d f8 19          	cmpl   $0x19,-0x8(%ebp)
4ffbbc:	0f 8d ca 00 00 00    	jge    0x4ffc8c
4ffbc2:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
4ffbc6:	75 7c                	jne    0x4ffc44
4ffbc8:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4ffbcc:	75 22                	jne    0x4ffbf0
4ffbce:	8b 43 14             	mov    0x14(%ebx),%eax
4ffbd1:	8b 50 14             	mov    0x14(%eax),%edx
4ffbd4:	ff 52 0c             	call   *0xc(%edx)
4ffbd7:	85 c0                	test   %eax,%eax
4ffbd9:	75 07                	jne    0x4ffbe2
4ffbdb:	33 c0                	xor    %eax,%eax
4ffbdd:	e9 c3 00 00 00       	jmp    0x4ffca5
4ffbe2:	8b 53 14             	mov    0x14(%ebx),%edx
4ffbe5:	8b 42 14             	mov    0x14(%edx),%eax
4ffbe8:	8b 30                	mov    (%eax),%esi
4ffbea:	8b 40 04             	mov    0x4(%eax),%eax
4ffbed:	89 45 f4             	mov    %eax,-0xc(%ebp)
4ffbf0:	ff 4d f4             	decl   -0xc(%ebp)
4ffbf3:	33 c0                	xor    %eax,%eax
4ffbf5:	8a 06                	mov    (%esi),%al
4ffbf7:	46                   	inc    %esi
4ffbf8:	3d ff 00 00 00       	cmp    $0xff,%eax
4ffbfd:	75 74                	jne    0x4ffc73
4ffbff:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4ffc03:	75 22                	jne    0x4ffc27
4ffc05:	8b 43 14             	mov    0x14(%ebx),%eax
4ffc08:	8b 50 14             	mov    0x14(%eax),%edx
4ffc0b:	ff 52 0c             	call   *0xc(%edx)
4ffc0e:	85 c0                	test   %eax,%eax
4ffc10:	75 07                	jne    0x4ffc19
4ffc12:	33 c0                	xor    %eax,%eax
4ffc14:	e9 8c 00 00 00       	jmp    0x4ffca5
4ffc19:	8b 53 14             	mov    0x14(%ebx),%edx
4ffc1c:	8b 42 14             	mov    0x14(%edx),%eax
4ffc1f:	8b 30                	mov    (%eax),%esi
4ffc21:	8b 40 04             	mov    0x4(%eax),%eax
4ffc24:	89 45 f4             	mov    %eax,-0xc(%ebp)
4ffc27:	ff 4d f4             	decl   -0xc(%ebp)
4ffc2a:	33 c0                	xor    %eax,%eax
4ffc2c:	8a 06                	mov    (%esi),%al
4ffc2e:	46                   	inc    %esi
4ffc2f:	3d ff 00 00 00       	cmp    $0xff,%eax
4ffc34:	74 c9                	je     0x4ffbff
4ffc36:	85 c0                	test   %eax,%eax
4ffc38:	75 07                	jne    0x4ffc41
4ffc3a:	b8 ff 00 00 00       	mov    $0xff,%eax
4ffc3f:	eb 32                	jmp    0x4ffc73
4ffc41:	89 43 08             	mov    %eax,0x8(%ebx)
4ffc44:	8b 55 f8             	mov    -0x8(%ebp),%edx
4ffc47:	3b 55 08             	cmp    0x8(%ebp),%edx
4ffc4a:	7d 40                	jge    0x4ffc8c
4ffc4c:	8b 4b 18             	mov    0x18(%ebx),%ecx
4ffc4f:	83 39 00             	cmpl   $0x0,(%ecx)
4ffc52:	75 1d                	jne    0x4ffc71
4ffc54:	8b 43 14             	mov    0x14(%ebx),%eax
4ffc57:	8b 10                	mov    (%eax),%edx
4ffc59:	c7 42 14 71 00 00 00 	movl   $0x71,0x14(%edx)
4ffc60:	83 ca ff             	or     $0xffffffff,%edx
4ffc63:	8b 08                	mov    (%eax),%ecx
4ffc65:	ff 51 04             	call   *0x4(%ecx)
4ffc68:	8b 43 18             	mov    0x18(%ebx),%eax
4ffc6b:	c7 00 01 00 00 00    	movl   $0x1,(%eax)
4ffc71:	33 c0                	xor    %eax,%eax
4ffc73:	8b 55 fc             	mov    -0x4(%ebp),%edx
4ffc76:	c1 e2 08             	shl    $0x8,%edx
4ffc79:	0b c2                	or     %edx,%eax
4ffc7b:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ffc7e:	83 45 f8 08          	addl   $0x8,-0x8(%ebp)
4ffc82:	83 7d f8 19          	cmpl   $0x19,-0x8(%ebp)
4ffc86:	0f 8c 36 ff ff ff    	jl     0x4ffbc2
4ffc8c:	89 33                	mov    %esi,(%ebx)
4ffc8e:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4ffc91:	89 4b 04             	mov    %ecx,0x4(%ebx)
4ffc94:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ffc97:	89 43 0c             	mov    %eax,0xc(%ebx)
4ffc9a:	b8 01 00 00 00       	mov    $0x1,%eax
4ffc9f:	8b 55 f8             	mov    -0x8(%ebp),%edx
4ffca2:	89 53 10             	mov    %edx,0x10(%ebx)
4ffca5:	5e                   	pop    %esi
4ffca6:	5b                   	pop    %ebx
4ffca7:	8b e5                	mov    %ebp,%esp
4ffca9:	5d                   	pop    %ebp
4ffcaa:	c2 04 00             	ret    $0x4
4ffcad:	90                   	nop
4ffcae:	90                   	nop
4ffcaf:	90                   	nop
4ffcb0:	55                   	push   %ebp
4ffcb1:	8b ec                	mov    %esp,%ebp
4ffcb3:	83 c4 f4             	add    $0xfffffff4,%esp
4ffcb6:	53                   	push   %ebx
4ffcb7:	56                   	push   %esi
4ffcb8:	57                   	push   %edi
4ffcb9:	8b d9                	mov    %ecx,%ebx
4ffcbb:	89 55 f8             	mov    %edx,-0x8(%ebp)
4ffcbe:	89 45 fc             	mov    %eax,-0x4(%ebp)
4ffcc1:	8b 7d 08             	mov    0x8(%ebp),%edi
4ffcc4:	3b fb                	cmp    %ebx,%edi
4ffcc6:	7e 29                	jle    0x4ffcf1
4ffcc8:	57                   	push   %edi
4ffcc9:	8b cb                	mov    %ebx,%ecx
4ffccb:	8b 55 f8             	mov    -0x8(%ebp),%edx
4ffcce:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ffcd1:	e8 ca fe ff ff       	call   0x4ffba0
4ffcd6:	85 c0                	test   %eax,%eax
4ffcd8:	75 08                	jne    0x4ffce2
4ffcda:	83 c8 ff             	or     $0xffffffff,%eax
4ffcdd:	e9 c7 00 00 00       	jmp    0x4ffda9
4ffce2:	8b 55 fc             	mov    -0x4(%ebp),%edx
4ffce5:	8b 4a 0c             	mov    0xc(%edx),%ecx
4ffce8:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4ffceb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ffcee:	8b 58 10             	mov    0x10(%eax),%ebx
4ffcf1:	2b df                	sub    %edi,%ebx
4ffcf3:	8b 75 f8             	mov    -0x8(%ebp),%esi
4ffcf6:	8b cb                	mov    %ebx,%ecx
4ffcf8:	b8 01 00 00 00       	mov    $0x1,%eax
4ffcfd:	d3 fe                	sar    %cl,%esi
4ffcff:	8b cf                	mov    %edi,%ecx
4ffd01:	8b 55 0c             	mov    0xc(%ebp),%edx
4ffd04:	d3 e0                	shl    %cl,%eax
4ffd06:	48                   	dec    %eax
4ffd07:	23 f0                	and    %eax,%esi
4ffd09:	8d 44 ba 44          	lea    0x44(%edx,%edi,4),%eax
4ffd0d:	89 45 f4             	mov    %eax,-0xc(%ebp)
4ffd10:	eb 40                	jmp    0x4ffd52
4ffd12:	03 f6                	add    %esi,%esi
4ffd14:	83 fb 01             	cmp    $0x1,%ebx
4ffd17:	7d 27                	jge    0x4ffd40
4ffd19:	6a 01                	push   $0x1
4ffd1b:	8b cb                	mov    %ebx,%ecx
4ffd1d:	8b 55 f8             	mov    -0x8(%ebp),%edx
4ffd20:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ffd23:	e8 78 fe ff ff       	call   0x4ffba0
4ffd28:	85 c0                	test   %eax,%eax
4ffd2a:	75 05                	jne    0x4ffd31
4ffd2c:	83 c8 ff             	or     $0xffffffff,%eax
4ffd2f:	eb 78                	jmp    0x4ffda9
4ffd31:	8b 55 fc             	mov    -0x4(%ebp),%edx
4ffd34:	8b 4a 0c             	mov    0xc(%edx),%ecx
4ffd37:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4ffd3a:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ffd3d:	8b 58 10             	mov    0x10(%eax),%ebx
4ffd40:	4b                   	dec    %ebx
4ffd41:	8b cb                	mov    %ebx,%ecx
4ffd43:	8b 45 f8             	mov    -0x8(%ebp),%eax
4ffd46:	d3 f8                	sar    %cl,%eax
4ffd48:	83 e0 01             	and    $0x1,%eax
4ffd4b:	0b f0                	or     %eax,%esi
4ffd4d:	47                   	inc    %edi
4ffd4e:	83 45 f4 04          	addl   $0x4,-0xc(%ebp)
4ffd52:	8b 55 f4             	mov    -0xc(%ebp),%edx
4ffd55:	3b 32                	cmp    (%edx),%esi
4ffd57:	7f b9                	jg     0x4ffd12
4ffd59:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ffd5c:	8b 55 f8             	mov    -0x8(%ebp),%edx
4ffd5f:	83 ff 10             	cmp    $0x10,%edi
4ffd62:	89 50 0c             	mov    %edx,0xc(%eax)
4ffd65:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4ffd68:	89 59 10             	mov    %ebx,0x10(%ecx)
4ffd6b:	7e 1b                	jle    0x4ffd88
4ffd6d:	8b 45 fc             	mov    -0x4(%ebp),%eax
4ffd70:	8b 40 14             	mov    0x14(%eax),%eax
4ffd73:	8b 10                	mov    (%eax),%edx
4ffd75:	c7 42 14 72 00 00 00 	movl   $0x72,0x14(%edx)
4ffd7c:	83 ca ff             	or     $0xffffffff,%edx
4ffd7f:	8b 08                	mov    (%eax),%ecx
4ffd81:	ff 51 04             	call   *0x4(%ecx)
4ffd84:	33 c0                	xor    %eax,%eax
4ffd86:	eb 21                	jmp    0x4ffda9
4ffd88:	8b 55 0c             	mov    0xc(%ebp),%edx
4ffd8b:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4ffd8e:	2b 34 ba             	sub    (%edx,%edi,4),%esi
4ffd91:	8b 55 0c             	mov    0xc(%ebp),%edx
4ffd94:	8b 84 b9 8c 00 00 00 	mov    0x8c(%ecx,%edi,4),%eax
4ffd9b:	8b 8a d0 00 00 00    	mov    0xd0(%edx),%ecx
4ffda1:	8d 04 01             	lea    (%ecx,%eax,1),%eax
4ffda4:	0f b6 44 30 11       	movzbl 0x11(%eax,%esi,1),%eax
4ffda9:	5f                   	pop    %edi
4ffdaa:	5e                   	pop    %esi
4ffdab:	5b                   	pop    %ebx
4ffdac:	8b e5                	mov    %ebp,%esp
4ffdae:	5d                   	pop    %ebp
4ffdaf:	c2 08 00             	ret    $0x8
4ffdb2:	90                   	nop
4ffdb3:	90                   	nop
4ffdb4:	53                   	push   %ebx
4ffdb5:	8b d8                	mov    %eax,%ebx
4ffdb7:	56                   	push   %esi
4ffdb8:	8b b3 b4 01 00 00    	mov    0x1b4(%ebx),%esi
4ffdbe:	8b 46 0c             	mov    0xc(%esi),%eax
4ffdc1:	85 c0                	test   %eax,%eax
4ffdc3:	79 03                	jns    0x4ffdc8
4ffdc5:	83 c0 07             	add    $0x7,%eax
4ffdc8:	c1 f8 03             	sar    $0x3,%eax
4ffdcb:	8b 93 b0 01 00 00    	mov    0x1b0(%ebx),%edx
4ffdd1:	01 42 5c             	add    %eax,0x5c(%edx)
4ffdd4:	33 c9                	xor    %ecx,%ecx
4ffdd6:	89 4e 0c             	mov    %ecx,0xc(%esi)
4ffdd9:	8b c3                	mov    %ebx,%eax
4ffddb:	8b 90 b0 01 00 00    	mov    0x1b0(%eax),%edx
4ffde1:	ff 52 08             	call   *0x8(%edx)
4ffde4:	85 c0                	test   %eax,%eax
4ffde6:	75 05                	jne    0x4ffded
4ffde8:	33 c0                	xor    %eax,%eax
4ffdea:	5e                   	pop    %esi
4ffdeb:	5b                   	pop    %ebx
4ffdec:	c3                   	ret
4ffded:	33 d2                	xor    %edx,%edx
4ffdef:	8d 46 14             	lea    0x14(%esi),%eax
4ffdf2:	eb 08                	jmp    0x4ffdfc
4ffdf4:	33 c9                	xor    %ecx,%ecx
4ffdf6:	42                   	inc    %edx
4ffdf7:	89 08                	mov    %ecx,(%eax)
4ffdf9:	83 c0 04             	add    $0x4,%eax
4ffdfc:	3b 93 40 01 00 00    	cmp    0x140(%ebx),%edx
4ffe02:	7c f0                	jl     0x4ffdf4
4ffe04:	8b 93 10 01 00 00    	mov    0x110(%ebx),%edx
4ffe0a:	33 c0                	xor    %eax,%eax
4ffe0c:	89 56 24             	mov    %edx,0x24(%esi)
4ffe0f:	89 46 10             	mov    %eax,0x10(%esi)
4ffe12:	b8 01 00 00 00       	mov    $0x1,%eax
4ffe17:	5e                   	pop    %esi
4ffe18:	5b                   	pop    %ebx
4ffe19:	c3                   	ret
4ffe1a:	90                   	nop
4ffe1b:	90                   	nop
4ffe1c:	53                   	push   %ebx
4ffe1d:	56                   	push   %esi
4ffe1e:	57                   	push   %edi
4ffe1f:	55                   	push   %ebp
4ffe20:	83 c4 a4             	add    $0xffffffa4,%esp
4ffe23:	8b f2                	mov    %edx,%esi
4ffe25:	89 04 24             	mov    %eax,(%esp)
4ffe28:	8b 04 24             	mov    (%esp),%eax
4ffe2b:	8b 90 b4 01 00 00    	mov    0x1b4(%eax),%edx
4ffe31:	89 54 24 04          	mov    %edx,0x4(%esp)
4ffe35:	8b 0c 24             	mov    (%esp),%ecx
4ffe38:	83 b9 10 01 00 00 00 	cmpl   $0x0,0x110(%ecx)
4ffe3f:	74 1d                	je     0x4ffe5e
4ffe41:	8b 44 24 04          	mov    0x4(%esp),%eax
4ffe45:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
4ffe49:	75 13                	jne    0x4ffe5e
4ffe4b:	8b 04 24             	mov    (%esp),%eax
4ffe4e:	e8 61 ff ff ff       	call   0x4ffdb4
4ffe53:	85 c0                	test   %eax,%eax
4ffe55:	75 07                	jne    0x4ffe5e
4ffe57:	33 c0                	xor    %eax,%eax
4ffe59:	e9 50 04 00 00       	jmp    0x5002ae
4ffe5e:	8b 14 24             	mov    (%esp),%edx
4ffe61:	89 54 24 44          	mov    %edx,0x44(%esp)
4ffe65:	8b 0c 24             	mov    (%esp),%ecx
4ffe68:	8b 41 14             	mov    0x14(%ecx),%eax
4ffe6b:	8b 10                	mov    (%eax),%edx
4ffe6d:	89 54 24 30          	mov    %edx,0x30(%esp)
4ffe71:	8b 48 04             	mov    0x4(%eax),%ecx
4ffe74:	89 4c 24 34          	mov    %ecx,0x34(%esp)
4ffe78:	8b 04 24             	mov    (%esp),%eax
4ffe7b:	8b 90 98 01 00 00    	mov    0x198(%eax),%edx
4ffe81:	89 54 24 38          	mov    %edx,0x38(%esp)
4ffe85:	8b 44 24 04          	mov    0x4(%esp),%eax
4ffe89:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4ffe8d:	8b 58 0c             	mov    0xc(%eax),%ebx
4ffe90:	8b 44 24 04          	mov    0x4(%esp),%eax
4ffe94:	8b 79 08             	mov    0x8(%ecx),%edi
4ffe97:	83 c0 10             	add    $0x10,%eax
4ffe9a:	89 44 24 48          	mov    %eax,0x48(%esp)
4ffe9e:	b9 04 00 00 00       	mov    $0x4,%ecx
4ffea3:	8b 54 24 04          	mov    0x4(%esp),%edx
4ffea7:	56                   	push   %esi
4ffea8:	57                   	push   %edi
4ffea9:	8d 7c 24 54          	lea    0x54(%esp),%edi
4ffead:	8d 72 14             	lea    0x14(%edx),%esi
4ffeb0:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4ffeb2:	5f                   	pop    %edi
4ffeb3:	5e                   	pop    %esi
4ffeb4:	33 c0                	xor    %eax,%eax
4ffeb6:	89 44 24 08          	mov    %eax,0x8(%esp)
4ffeba:	8b c6                	mov    %esi,%eax
4ffebc:	8b 14 24             	mov    (%esp),%edx
4ffebf:	8d 8a 60 01 00 00    	lea    0x160(%edx),%ecx
4ffec5:	89 4c 24 2c          	mov    %ecx,0x2c(%esp)
4ffec9:	89 44 24 28          	mov    %eax,0x28(%esp)
4ffecd:	e9 7d 03 00 00       	jmp    0x50024f
4ffed2:	8b 54 24 28          	mov    0x28(%esp),%edx
4ffed6:	8b 0a                	mov    (%edx),%ecx
4ffed8:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4ffedc:	8b 44 24 2c          	mov    0x2c(%esp),%eax
4ffee0:	8b 10                	mov    (%eax),%edx
4ffee2:	89 54 24 0c          	mov    %edx,0xc(%esp)
4ffee6:	8b 0c 24             	mov    (%esp),%ecx
4ffee9:	8b 44 24 0c          	mov    0xc(%esp),%eax