41ecc8:	8b 54 24 10          	mov    0x10(%esp),%edx
41eccc:	8b 44 24 0c          	mov    0xc(%esp),%eax
41ecd0:	d1 e9                	shr    $1,%ecx
41ecd2:	d1 db                	rcr    $1,%ebx
41ecd4:	d1 ea                	shr    $1,%edx
41ecd6:	d1 d8                	rcr    $1,%eax
41ecd8:	0b c9                	or     %ecx,%ecx
41ecda:	75 f4                	jne    0x41ecd0
41ecdc:	f7 f3                	div    %ebx
41ecde:	8b f0                	mov    %eax,%esi
41ece0:	f7 64 24 18          	mull   0x18(%esp)
41ece4:	8b c8                	mov    %eax,%ecx
41ece6:	8b 44 24 14          	mov    0x14(%esp),%eax
41ecea:	f7 e6                	mul    %esi
41ecec:	03 d1                	add    %ecx,%edx
41ecee:	72 0e                	jb     0x41ecfe
41ecf0:	3b 54 24 10          	cmp    0x10(%esp),%edx
41ecf4:	77 08                	ja     0x41ecfe
41ecf6:	72 07                	jb     0x41ecff
41ecf8:	3b 44 24 0c          	cmp    0xc(%esp),%eax
41ecfc:	76 01                	jbe    0x41ecff
41ecfe:	4e                   	dec    %esi
41ecff:	33 d2                	xor    %edx,%edx
41ed01:	8b c6                	mov    %esi,%eax
41ed03:	5e                   	pop    %esi
41ed04:	5b                   	pop    %ebx
41ed05:	c2 10 00             	ret    $0x10
41ed08:	cc                   	int3
41ed09:	cc                   	int3
41ed0a:	cc                   	int3
41ed0b:	cc                   	int3
41ed0c:	cc                   	int3
41ed0d:	cc                   	int3
41ed0e:	cc                   	int3
41ed0f:	cc                   	int3
41ed10:	8b 54 24 04          	mov    0x4(%esp),%edx
41ed14:	8b 4c 24 08          	mov    0x8(%esp),%ecx
41ed18:	f7 c2 03 00 00 00    	test   $0x3,%edx
41ed1e:	75 3c                	jne    0x41ed5c
41ed20:	8b 02                	mov    (%edx),%eax
41ed22:	3a 01                	cmp    (%ecx),%al
41ed24:	75 2e                	jne    0x41ed54
41ed26:	0a c0                	or     %al,%al
41ed28:	74 26                	je     0x41ed50
41ed2a:	3a 61 01             	cmp    0x1(%ecx),%ah
41ed2d:	75 25                	jne    0x41ed54
41ed2f:	0a e4                	or     %ah,%ah
41ed31:	74 1d                	je     0x41ed50
41ed33:	c1 e8 10             	shr    $0x10,%eax
41ed36:	3a 41 02             	cmp    0x2(%ecx),%al
41ed39:	75 19                	jne    0x41ed54
41ed3b:	0a c0                	or     %al,%al
41ed3d:	74 11                	je     0x41ed50
41ed3f:	3a 61 03             	cmp    0x3(%ecx),%ah
41ed42:	75 10                	jne    0x41ed54
41ed44:	83 c1 04             	add    $0x4,%ecx
41ed47:	83 c2 04             	add    $0x4,%edx
41ed4a:	0a e4                	or     %ah,%ah
41ed4c:	75 d2                	jne    0x41ed20
41ed4e:	8b ff                	mov    %edi,%edi
41ed50:	33 c0                	xor    %eax,%eax
41ed52:	c3                   	ret
41ed53:	90                   	nop
41ed54:	1b c0                	sbb    %eax,%eax
41ed56:	d1 e0                	shl    $1,%eax
41ed58:	83 c0 01             	add    $0x1,%eax
41ed5b:	c3                   	ret
41ed5c:	f7 c2 01 00 00 00    	test   $0x1,%edx
41ed62:	74 18                	je     0x41ed7c
41ed64:	8a 02                	mov    (%edx),%al
41ed66:	83 c2 01             	add    $0x1,%edx
41ed69:	3a 01                	cmp    (%ecx),%al
41ed6b:	75 e7                	jne    0x41ed54
41ed6d:	83 c1 01             	add    $0x1,%ecx
41ed70:	0a c0                	or     %al,%al
41ed72:	74 dc                	je     0x41ed50
41ed74:	f7 c2 02 00 00 00    	test   $0x2,%edx
41ed7a:	74 a4                	je     0x41ed20
41ed7c:	66 8b 02             	mov    (%edx),%ax
41ed7f:	83 c2 02             	add    $0x2,%edx
41ed82:	3a 01                	cmp    (%ecx),%al
41ed84:	75 ce                	jne    0x41ed54
41ed86:	0a c0                	or     %al,%al
41ed88:	74 c6                	je     0x41ed50
41ed8a:	3a 61 01             	cmp    0x1(%ecx),%ah
41ed8d:	75 c5                	jne    0x41ed54
41ed8f:	0a e4                	or     %ah,%ah
41ed91:	74 bd                	je     0x41ed50
41ed93:	83 c1 02             	add    $0x2,%ecx
41ed96:	eb 88                	jmp    0x41ed20
41ed98:	56                   	push   %esi
41ed99:	8b 74 24 08          	mov    0x8(%esp),%esi
41ed9d:	8b 06                	mov    (%esi),%eax
41ed9f:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
41eda5:	75 1c                	jne    0x41edc3
41eda7:	83 78 10 03          	cmpl   $0x3,0x10(%eax)
41edab:	75 16                	jne    0x41edc3
41edad:	8b 40 14             	mov    0x14(%eax),%eax
41edb0:	3d 20 05 93 19       	cmp    $0x19930520,%eax
41edb5:	74 07                	je     0x41edbe
41edb7:	3d 21 05 93 19       	cmp    $0x19930521,%eax
41edbc:	75 05                	jne    0x41edc3
41edbe:	e8 c6 e1 ff ff       	call   0x41cf89
41edc3:	a1 e4 c9 4a 00       	mov    0x4ac9e4,%eax
41edc8:	85 c0                	test   %eax,%eax
41edca:	74 14                	je     0x41ede0
41edcc:	50                   	push   %eax
41edcd:	e8 9f 4a 00 00       	call   0x423871
41edd2:	85 c0                	test   %eax,%eax
41edd4:	59                   	pop    %ecx
41edd5:	74 09                	je     0x41ede0
41edd7:	56                   	push   %esi
41edd8:	ff 15 e4 c9 4a 00    	call   *0x4ac9e4
41edde:	eb 02                	jmp    0x41ede2
41ede0:	33 c0                	xor    %eax,%eax
41ede2:	5e                   	pop    %esi
41ede3:	c2 04 00             	ret    $0x4
41ede6:	68 98 ed 41 00       	push   $0x41ed98
41edeb:	ff 15 78 01 4b 00    	call   *0x4b0178
41edf1:	a3 e4 c9 4a 00       	mov    %eax,0x4ac9e4
41edf6:	33 c0                	xor    %eax,%eax
41edf8:	c3                   	ret
41edf9:	ff 35 e4 c9 4a 00    	push   0x4ac9e4
41edff:	ff 15 78 01 4b 00    	call   *0x4b0178
41ee05:	c3                   	ret
41ee06:	b8 d0 8f 4a 00       	mov    $0x4a8fd0,%eax
41ee0b:	c3                   	ret
41ee0c:	a1 00 e1 4a 00       	mov    0x4ae100,%eax
41ee11:	85 c0                	test   %eax,%eax
41ee13:	56                   	push   %esi
41ee14:	6a 14                	push   $0x14
41ee16:	5e                   	pop    %esi
41ee17:	75 07                	jne    0x41ee20
41ee19:	b8 00 02 00 00       	mov    $0x200,%eax
41ee1e:	eb 06                	jmp    0x41ee26
41ee20:	3b c6                	cmp    %esi,%eax
41ee22:	7d 07                	jge    0x41ee2b
41ee24:	8b c6                	mov    %esi,%eax
41ee26:	a3 00 e1 4a 00       	mov    %eax,0x4ae100
41ee2b:	6a 04                	push   $0x4
41ee2d:	50                   	push   %eax
41ee2e:	e8 15 bd ff ff       	call   0x41ab48
41ee33:	85 c0                	test   %eax,%eax
41ee35:	59                   	pop    %ecx
41ee36:	59                   	pop    %ecx
41ee37:	a3 c0 cd 4a 00       	mov    %eax,0x4acdc0
41ee3c:	75 1e                	jne    0x41ee5c
41ee3e:	6a 04                	push   $0x4
41ee40:	56                   	push   %esi
41ee41:	89 35 00 e1 4a 00    	mov    %esi,0x4ae100
41ee47:	e8 fc bc ff ff       	call   0x41ab48
41ee4c:	85 c0                	test   %eax,%eax
41ee4e:	59                   	pop    %ecx
41ee4f:	59                   	pop    %ecx
41ee50:	a3 c0 cd 4a 00       	mov    %eax,0x4acdc0
41ee55:	75 05                	jne    0x41ee5c
41ee57:	6a 1a                	push   $0x1a
41ee59:	58                   	pop    %eax
41ee5a:	5e                   	pop    %esi
41ee5b:	c3                   	ret
41ee5c:	33 d2                	xor    %edx,%edx
41ee5e:	b9 d0 8f 4a 00       	mov    $0x4a8fd0,%ecx
41ee63:	eb 05                	jmp    0x41ee6a
41ee65:	a1 c0 cd 4a 00       	mov    0x4acdc0,%eax
41ee6a:	89 0c 02             	mov    %ecx,(%edx,%eax,1)
41ee6d:	83 c1 20             	add    $0x20,%ecx
41ee70:	83 c2 04             	add    $0x4,%edx
41ee73:	81 f9 50 92 4a 00    	cmp    $0x4a9250,%ecx
41ee79:	7c ea                	jl     0x41ee65
41ee7b:	33 c9                	xor    %ecx,%ecx
41ee7d:	ba e0 8f 4a 00       	mov    $0x4a8fe0,%edx
41ee82:	8b f1                	mov    %ecx,%esi
41ee84:	8b c1                	mov    %ecx,%eax
41ee86:	83 e0 1f             	and    $0x1f,%eax
41ee89:	c1 fe 05             	sar    $0x5,%esi
41ee8c:	8b 34 b5 c0 cc 4a 00 	mov    0x4accc0(,%esi,4),%esi
41ee93:	8d 04 c0             	lea    (%eax,%eax,8),%eax
41ee96:	8b 04 86             	mov    (%esi,%eax,4),%eax
41ee99:	83 f8 ff             	cmp    $0xffffffff,%eax
41ee9c:	74 04                	je     0x41eea2
41ee9e:	85 c0                	test   %eax,%eax
41eea0:	75 03                	jne    0x41eea5
41eea2:	83 0a ff             	orl    $0xffffffff,(%edx)
41eea5:	83 c2 20             	add    $0x20,%edx
41eea8:	41                   	inc    %ecx
41eea9:	81 fa 40 90 4a 00    	cmp    $0x4a9040,%edx
41eeaf:	7c d1                	jl     0x41ee82
41eeb1:	33 c0                	xor    %eax,%eax
41eeb3:	5e                   	pop    %esi
41eeb4:	c3                   	ret
41eeb5:	e8 a2 ad ff ff       	call   0x419c5c
41eeba:	80 3d 3c c7 4a 00 00 	cmpb   $0x0,0x4ac73c
41eec1:	74 05                	je     0x41eec8
41eec3:	e9 fa 5f 00 00       	jmp    0x424ec2
41eec8:	c3                   	ret
41eec9:	8b 44 24 04          	mov    0x4(%esp),%eax
41eecd:	b9 d0 8f 4a 00       	mov    $0x4a8fd0,%ecx
41eed2:	3b c1                	cmp    %ecx,%eax
41eed4:	72 17                	jb     0x41eeed
41eed6:	3d 30 92 4a 00       	cmp    $0x4a9230,%eax
41eedb:	77 10                	ja     0x41eeed
41eedd:	2b c1                	sub    %ecx,%eax
41eedf:	c1 f8 05             	sar    $0x5,%eax
41eee2:	83 c0 10             	add    $0x10,%eax
41eee5:	50                   	push   %eax
41eee6:	e8 83 be ff ff       	call   0x41ad6e
41eeeb:	59                   	pop    %ecx
41eeec:	c3                   	ret
41eeed:	83 c0 20             	add    $0x20,%eax
41eef0:	50                   	push   %eax
41eef1:	ff 15 10 03 4b 00    	call   *0x4b0310
41eef7:	c3                   	ret
41eef8:	8b 44 24 04          	mov    0x4(%esp),%eax
41eefc:	83 f8 14             	cmp    $0x14,%eax
41eeff:	7d 0b                	jge    0x41ef0c
41ef01:	83 c0 10             	add    $0x10,%eax
41ef04:	50                   	push   %eax
41ef05:	e8 64 be ff ff       	call   0x41ad6e
41ef0a:	59                   	pop    %ecx
41ef0b:	c3                   	ret
41ef0c:	8b 44 24 08          	mov    0x8(%esp),%eax
41ef10:	83 c0 20             	add    $0x20,%eax
41ef13:	50                   	push   %eax
41ef14:	ff 15 10 03 4b 00    	call   *0x4b0310
41ef1a:	c3                   	ret
41ef1b:	8b 44 24 04          	mov    0x4(%esp),%eax
41ef1f:	b9 d0 8f 4a 00       	mov    $0x4a8fd0,%ecx
41ef24:	3b c1                	cmp    %ecx,%eax
41ef26:	72 17                	jb     0x41ef3f
41ef28:	3d 30 92 4a 00       	cmp    $0x4a9230,%eax
41ef2d:	77 10                	ja     0x41ef3f
41ef2f:	2b c1                	sub    %ecx,%eax
41ef31:	c1 f8 05             	sar    $0x5,%eax
41ef34:	83 c0 10             	add    $0x10,%eax
41ef37:	50                   	push   %eax
41ef38:	e8 64 bd ff ff       	call   0x41aca1
41ef3d:	59                   	pop    %ecx
41ef3e:	c3                   	ret
41ef3f:	83 c0 20             	add    $0x20,%eax
41ef42:	50                   	push   %eax
41ef43:	ff 15 0c 03 4b 00    	call   *0x4b030c
41ef49:	c3                   	ret
41ef4a:	8b 44 24 04          	mov    0x4(%esp),%eax
41ef4e:	83 f8 14             	cmp    $0x14,%eax
41ef51:	7d 0b                	jge    0x41ef5e
41ef53:	83 c0 10             	add    $0x10,%eax
41ef56:	50                   	push   %eax
41ef57:	e8 45 bd ff ff       	call   0x41aca1
41ef5c:	59                   	pop    %ecx
41ef5d:	c3                   	ret
41ef5e:	8b 44 24 08          	mov    0x8(%esp),%eax
41ef62:	83 c0 20             	add    $0x20,%eax
41ef65:	50                   	push   %eax
41ef66:	ff 15 0c 03 4b 00    	call   *0x4b030c
41ef6c:	c3                   	ret
41ef6d:	56                   	push   %esi
41ef6e:	8b 74 24 08          	mov    0x8(%esp),%esi
41ef72:	ff 76 10             	push   0x10(%esi)
41ef75:	e8 97 5e 00 00       	call   0x424e11
41ef7a:	85 c0                	test   %eax,%eax
41ef7c:	59                   	pop    %ecx
41ef7d:	74 72                	je     0x41eff1
41ef7f:	81 fe f0 8f 4a 00    	cmp    $0x4a8ff0,%esi
41ef85:	75 04                	jne    0x41ef8b
41ef87:	33 c0                	xor    %eax,%eax
41ef89:	eb 0b                	jmp    0x41ef96
41ef8b:	81 fe 10 90 4a 00    	cmp    $0x4a9010,%esi
41ef91:	75 5e                	jne    0x41eff1
41ef93:	33 c0                	xor    %eax,%eax
41ef95:	40                   	inc    %eax
41ef96:	ff 05 e8 c9 4a 00    	incl   0x4ac9e8
41ef9c:	66 f7 46 0c 0c 01    	testw  $0x10c,0xc(%esi)
41efa2:	75 4d                	jne    0x41eff1
41efa4:	53                   	push   %ebx
41efa5:	57                   	push   %edi
41efa6:	8d 3c 85 ec c9 4a 00 	lea    0x4ac9ec(,%eax,4),%edi
41efad:	83 3f 00             	cmpl   $0x0,(%edi)
41efb0:	bb 00 10 00 00       	mov    $0x1000,%ebx
41efb5:	75 20                	jne    0x41efd7
41efb7:	53                   	push   %ebx
41efb8:	e8 cf 73 ff ff       	call   0x41638c
41efbd:	85 c0                	test   %eax,%eax
41efbf:	59                   	pop    %ecx
41efc0:	89 07                	mov    %eax,(%edi)
41efc2:	75 13                	jne    0x41efd7
41efc4:	8d 46 14             	lea    0x14(%esi),%eax
41efc7:	6a 02                	push   $0x2
41efc9:	89 46 08             	mov    %eax,0x8(%esi)
41efcc:	89 06                	mov    %eax,(%esi)
41efce:	58                   	pop    %eax
41efcf:	89 46 18             	mov    %eax,0x18(%esi)
41efd2:	89 46 04             	mov    %eax,0x4(%esi)
41efd5:	eb 0d                	jmp    0x41efe4
41efd7:	8b 3f                	mov    (%edi),%edi
41efd9:	89 7e 08             	mov    %edi,0x8(%esi)
41efdc:	89 3e                	mov    %edi,(%esi)
41efde:	89 5e 18             	mov    %ebx,0x18(%esi)
41efe1:	89 5e 04             	mov    %ebx,0x4(%esi)
41efe4:	66 81 4e 0c 02 11    	orw    $0x1102,0xc(%esi)
41efea:	5f                   	pop    %edi
41efeb:	33 c0                	xor    %eax,%eax
41efed:	5b                   	pop    %ebx
41efee:	40                   	inc    %eax
41efef:	5e                   	pop    %esi
41eff0:	c3                   	ret
41eff1:	33 c0                	xor    %eax,%eax
41eff3:	5e                   	pop    %esi
41eff4:	c3                   	ret
41eff5:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
41effa:	74 22                	je     0x41f01e
41effc:	56                   	push   %esi
41effd:	8b 74 24 0c          	mov    0xc(%esp),%esi
41f001:	f6 46 0d 10          	testb  $0x10,0xd(%esi)
41f005:	74 16                	je     0x41f01d
41f007:	56                   	push   %esi
41f008:	e8 9f aa ff ff       	call   0x419aac
41f00d:	80 66 0d ee          	andb   $0xee,0xd(%esi)
41f011:	83 66 18 00          	andl   $0x0,0x18(%esi)
41f015:	83 26 00             	andl   $0x0,(%esi)
41f018:	83 66 08 00          	andl   $0x0,0x8(%esi)
41f01c:	59                   	pop    %ecx
41f01d:	5e                   	pop    %esi
41f01e:	c3                   	ret
41f01f:	55                   	push   %ebp
41f020:	8d ac 24 74 ff ff ff 	lea    -0x8c(%esp),%ebp
41f027:	81 ec 0c 01 00 00    	sub    $0x10c,%esp
41f02d:	a1 40 8b 4a 00       	mov    0x4a8b40,%eax
41f032:	8b 8d 94 00 00 00    	mov    0x94(%ebp),%ecx
41f038:	53                   	push   %ebx
41f039:	56                   	push   %esi
41f03a:	89 85 88 00 00 00    	mov    %eax,0x88(%ebp)
41f040:	33 d2                	xor    %edx,%edx
41f042:	57                   	push   %edi
41f043:	33 c0                	xor    %eax,%eax
41f045:	3b 0c c5 50 92 4a 00 	cmp    0x4a9250(,%eax,8),%ecx
41f04c:	74 06                	je     0x41f054
41f04e:	40                   	inc    %eax
41f04f:	83 f8 13             	cmp    $0x13,%eax
41f052:	72 f1                	jb     0x41f045
41f054:	8b f0                	mov    %eax,%esi
41f056:	c1 e6 03             	shl    $0x3,%esi
41f059:	3b 8e 50 92 4a 00    	cmp    0x4a9250(%esi),%ecx
41f05f:	0f 85 15 01 00 00    	jne    0x41f17a
41f065:	a1 fc c6 4a 00       	mov    0x4ac6fc,%eax
41f06a:	83 f8 01             	cmp    $0x1,%eax
41f06d:	0f 84 df 00 00 00    	je     0x41f152
41f073:	3b c2                	cmp    %edx,%eax
41f075:	75 0d                	jne    0x41f084
41f077:	83 3d 30 8b 4a 00 01 	cmpl   $0x1,0x4a8b30
41f07e:	0f 84 ce 00 00 00    	je     0x41f152