41eae4:	7f 06                	jg     0x41eaec
41eae6:	8b c3                	mov    %ebx,%eax
41eae8:	0b c7                	or     %edi,%eax
41eaea:	74 24                	je     0x41eb10
41eaec:	8b 45 b8             	mov    -0x48(%ebp),%eax
41eaef:	99                   	cltd
41eaf0:	52                   	push   %edx
41eaf1:	50                   	push   %eax
41eaf2:	57                   	push   %edi
41eaf3:	53                   	push   %ebx
41eaf4:	e8 67 4c 00 00       	call   0x423760
41eaf9:	83 c1 30             	add    $0x30,%ecx
41eafc:	83 f9 39             	cmp    $0x39,%ecx
41eaff:	89 5d 8c             	mov    %ebx,-0x74(%ebp)
41eb02:	8b d8                	mov    %eax,%ebx
41eb04:	8b fa                	mov    %edx,%edi
41eb06:	7e 03                	jle    0x41eb0b
41eb08:	03 4d 98             	add    -0x68(%ebp),%ecx
41eb0b:	88 0e                	mov    %cl,(%esi)
41eb0d:	4e                   	dec    %esi
41eb0e:	eb cc                	jmp    0x41eadc
41eb10:	8d 85 c7 01 00 00    	lea    0x1c7(%ebp),%eax
41eb16:	2b c6                	sub    %esi,%eax
41eb18:	46                   	inc    %esi
41eb19:	f6 45 c5 02          	testb  $0x2,-0x3b(%ebp)
41eb1d:	89 45 b8             	mov    %eax,-0x48(%ebp)
41eb20:	89 75 bc             	mov    %esi,-0x44(%ebp)
41eb23:	74 18                	je     0x41eb3d
41eb25:	8b ce                	mov    %esi,%ecx
41eb27:	80 39 30             	cmpb   $0x30,(%ecx)
41eb2a:	75 04                	jne    0x41eb30
41eb2c:	85 c0                	test   %eax,%eax
41eb2e:	75 0d                	jne    0x41eb3d
41eb30:	ff 4d bc             	decl   -0x44(%ebp)
41eb33:	8b 4d bc             	mov    -0x44(%ebp),%ecx
41eb36:	c6 01 30             	movb   $0x30,(%ecx)
41eb39:	40                   	inc    %eax
41eb3a:	89 45 b8             	mov    %eax,-0x48(%ebp)
41eb3d:	83 7d 9c 00          	cmpl   $0x0,-0x64(%ebp)
41eb41:	0f 85 f7 00 00 00    	jne    0x41ec3e
41eb47:	8b 5d c4             	mov    -0x3c(%ebp),%ebx
41eb4a:	f6 c3 40             	test   $0x40,%bl
41eb4d:	74 26                	je     0x41eb75
41eb4f:	f6 c7 01             	test   $0x1,%bh
41eb52:	74 06                	je     0x41eb5a
41eb54:	c6 45 b0 2d          	movb   $0x2d,-0x50(%ebp)
41eb58:	eb 14                	jmp    0x41eb6e
41eb5a:	f6 c3 01             	test   $0x1,%bl
41eb5d:	74 06                	je     0x41eb65
41eb5f:	c6 45 b0 2b          	movb   $0x2b,-0x50(%ebp)
41eb63:	eb 09                	jmp    0x41eb6e
41eb65:	f6 c3 02             	test   $0x2,%bl
41eb68:	74 0b                	je     0x41eb75
41eb6a:	c6 45 b0 20          	movb   $0x20,-0x50(%ebp)
41eb6e:	c7 45 ac 01 00 00 00 	movl   $0x1,-0x54(%ebp)
41eb75:	8b 75 a8             	mov    -0x58(%ebp),%esi
41eb78:	2b 75 ac             	sub    -0x54(%ebp),%esi
41eb7b:	2b 75 b8             	sub    -0x48(%ebp),%esi
41eb7e:	f6 c3 0c             	test   $0xc,%bl
41eb81:	75 14                	jne    0x41eb97
41eb83:	ff b5 dc 01 00 00    	push   0x1dc(%ebp)
41eb89:	8d 45 b4             	lea    -0x4c(%ebp),%eax
41eb8c:	56                   	push   %esi
41eb8d:	6a 20                	push   $0x20
41eb8f:	e8 92 f8 ff ff       	call   0x41e426
41eb94:	83 c4 0c             	add    $0xc,%esp
41eb97:	ff 75 ac             	push   -0x54(%ebp)
41eb9a:	8b bd dc 01 00 00    	mov    0x1dc(%ebp),%edi
41eba0:	8d 45 b4             	lea    -0x4c(%ebp),%eax
41eba3:	8d 4d b0             	lea    -0x50(%ebp),%ecx
41eba6:	e8 9f f8 ff ff       	call   0x41e44a
41ebab:	f6 c3 08             	test   $0x8,%bl
41ebae:	59                   	pop    %ecx
41ebaf:	74 14                	je     0x41ebc5
41ebb1:	f6 c3 04             	test   $0x4,%bl
41ebb4:	75 0f                	jne    0x41ebc5
41ebb6:	57                   	push   %edi
41ebb7:	56                   	push   %esi
41ebb8:	6a 30                	push   $0x30
41ebba:	8d 45 b4             	lea    -0x4c(%ebp),%eax
41ebbd:	e8 64 f8 ff ff       	call   0x41e426
41ebc2:	83 c4 0c             	add    $0xc,%esp
41ebc5:	83 7d a4 00          	cmpl   $0x0,-0x5c(%ebp)
41ebc9:	74 4a                	je     0x41ec15
41ebcb:	83 7d b8 00          	cmpl   $0x0,-0x48(%ebp)
41ebcf:	7e 44                	jle    0x41ec15
41ebd1:	8b 45 b8             	mov    -0x48(%ebp),%eax
41ebd4:	8b 5d bc             	mov    -0x44(%ebp),%ebx
41ebd7:	89 45 8c             	mov    %eax,-0x74(%ebp)
41ebda:	ff 4d 8c             	decl   -0x74(%ebp)
41ebdd:	33 c0                	xor    %eax,%eax
41ebdf:	66 8b 03             	mov    (%ebx),%ax
41ebe2:	50                   	push   %eax
41ebe3:	8d 85 c8 01 00 00    	lea    0x1c8(%ebp),%eax
41ebe9:	50                   	push   %eax
41ebea:	e8 ac 62 00 00       	call   0x424e9b
41ebef:	43                   	inc    %ebx
41ebf0:	59                   	pop    %ecx
41ebf1:	43                   	inc    %ebx
41ebf2:	85 c0                	test   %eax,%eax
41ebf4:	59                   	pop    %ecx
41ebf5:	7e 2d                	jle    0x41ec24
41ebf7:	8b bd dc 01 00 00    	mov    0x1dc(%ebp),%edi
41ebfd:	50                   	push   %eax
41ebfe:	8d 45 b4             	lea    -0x4c(%ebp),%eax
41ec01:	8d 8d c8 01 00 00    	lea    0x1c8(%ebp),%ecx
41ec07:	e8 3e f8 ff ff       	call   0x41e44a
41ec0c:	83 7d 8c 00          	cmpl   $0x0,-0x74(%ebp)
41ec10:	59                   	pop    %ecx
41ec11:	75 c7                	jne    0x41ebda
41ec13:	eb 0f                	jmp    0x41ec24
41ec15:	ff 75 b8             	push   -0x48(%ebp)
41ec18:	8b 4d bc             	mov    -0x44(%ebp),%ecx
41ec1b:	8d 45 b4             	lea    -0x4c(%ebp),%eax
41ec1e:	e8 27 f8 ff ff       	call   0x41e44a
41ec23:	59                   	pop    %ecx
41ec24:	f6 45 c4 04          	testb  $0x4,-0x3c(%ebp)
41ec28:	74 14                	je     0x41ec3e
41ec2a:	ff b5 dc 01 00 00    	push   0x1dc(%ebp)
41ec30:	8d 45 b4             	lea    -0x4c(%ebp),%eax
41ec33:	56                   	push   %esi
41ec34:	6a 20                	push   $0x20
41ec36:	e8 eb f7 ff ff       	call   0x41e426
41ec3b:	83 c4 0c             	add    $0xc,%esp
41ec3e:	83 7d a0 00          	cmpl   $0x0,-0x60(%ebp)
41ec42:	74 0d                	je     0x41ec51
41ec44:	ff 75 a0             	push   -0x60(%ebp)
41ec47:	e8 52 77 ff ff       	call   0x41639e
41ec4c:	83 65 a0 00          	andl   $0x0,-0x60(%ebp)
41ec50:	59                   	pop    %ecx
41ec51:	8b bd e0 01 00 00    	mov    0x1e0(%ebp),%edi
41ec57:	8a 1f                	mov    (%edi),%bl
41ec59:	84 db                	test   %bl,%bl
41ec5b:	0f 85 7c f8 ff ff    	jne    0x41e4dd
41ec61:	5f                   	pop    %edi
41ec62:	5e                   	pop    %esi
41ec63:	8b 8d d0 01 00 00    	mov    0x1d0(%ebp),%ecx
41ec69:	8b 45 b4             	mov    -0x4c(%ebp),%eax
41ec6c:	5b                   	pop    %ebx
41ec6d:	e8 6c 8f ff ff       	call   0x417bde
41ec72:	81 c5 d4 01 00 00    	add    $0x1d4,%ebp
41ec78:	c9                   	leave
41ec79:	c3                   	ret
41ec7a:	bc e6 41 00 2c       	mov    $0x2c0041e6,%esp
41ec7f:	e5 41                	in     $0x41,%eax
41ec81:	00 49 e5             	add    %cl,-0x1b(%ecx)
41ec84:	41                   	inc    %ecx
41ec85:	00 95 e5 41 00 d6    	add    %dl,-0x29ffbe1b(%ebp)
41ec8b:	e5 41                	in     $0x41,%eax
41ec8d:	00 df                	add    %bl,%bh
41ec8f:	e5 41                	in     $0x41,%eax
41ec91:	00 1d e6 41 00 fe    	add    %bl,0xfe0041e6
41ec97:	e6 41                	out    %al,$0x41
41ec99:	00 cc                	add    %cl,%ah
41ec9b:	cc                   	int3
41ec9c:	cc                   	int3
41ec9d:	cc                   	int3
41ec9e:	cc                   	int3
41ec9f:	cc                   	int3
41eca0:	53                   	push   %ebx
41eca1:	56                   	push   %esi
41eca2:	8b 44 24 18          	mov    0x18(%esp),%eax
41eca6:	0b c0                	or     %eax,%eax
41eca8:	75 18                	jne    0x41ecc2
41ecaa:	8b 4c 24 14          	mov    0x14(%esp),%ecx
41ecae:	8b 44 24 10          	mov    0x10(%esp),%eax
41ecb2:	33 d2                	xor    %edx,%edx
41ecb4:	f7 f1                	div    %ecx
41ecb6:	8b d8                	mov    %eax,%ebx
41ecb8:	8b 44 24 0c          	mov    0xc(%esp),%eax
41ecbc:	f7 f1                	div    %ecx
41ecbe:	8b d3                	mov    %ebx,%edx
41ecc0:	eb 41                	jmp    0x41ed03
41ecc2:	8b c8                	mov    %eax,%ecx
41ecc4:	8b 5c 24 14          	mov    0x14(%esp),%ebx
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