41e8e9:	8b fa                	mov    %edx,%edi
41e8eb:	8b f0                	mov    %eax,%esi
41e8ed:	85 db                	test   %ebx,%ebx
41e8ef:	74 26                	je     0x41e917
41e8f1:	8b d7                	mov    %edi,%edx
41e8f3:	8b cb                	mov    %ebx,%ecx
41e8f5:	8b c6                	mov    %esi,%eax
41e8f7:	8b 30                	mov    (%eax),%esi
41e8f9:	ff 56 08             	call   *0x8(%esi)
41e8fc:	3b d8                	cmp    %eax,%ebx
41e8fe:	74 17                	je     0x41e917
41e900:	8b 0d a0 71 6a 00    	mov    0x6a71a0,%ecx
41e906:	b2 01                	mov    $0x1,%dl
41e908:	a1 94 90 41 00       	mov    0x419094,%eax
41e90d:	e8 f2 e5 fe ff       	call   0x40cf04
41e912:	e8 2d 59 fe ff       	call   0x404244
41e917:	5f                   	pop    %edi
41e918:	5e                   	pop    %esi
41e919:	5b                   	pop    %ebx
41e91a:	c3                   	ret
41e91b:	90                   	nop
41e91c:	53                   	push   %ebx
41e91d:	56                   	push   %esi
41e91e:	57                   	push   %edi
41e91f:	8b d9                	mov    %ecx,%ebx
41e921:	8b fa                	mov    %edx,%edi
41e923:	8b f0                	mov    %eax,%esi
41e925:	85 db                	test   %ebx,%ebx
41e927:	74 26                	je     0x41e94f
41e929:	8b d7                	mov    %edi,%edx
41e92b:	8b cb                	mov    %ebx,%ecx
41e92d:	8b c6                	mov    %esi,%eax
41e92f:	8b 30                	mov    (%eax),%esi
41e931:	ff 56 0c             	call   *0xc(%esi)
41e934:	3b d8                	cmp    %eax,%ebx
41e936:	74 17                	je     0x41e94f
41e938:	8b 0d 2c 6f 6a 00    	mov    0x6a6f2c,%ecx
41e93e:	b2 01                	mov    $0x1,%dl
41e940:	a1 ec 90 41 00       	mov    0x4190ec,%eax
41e945:	e8 ba e5 fe ff       	call   0x40cf04
41e94a:	e8 f5 58 fe ff       	call   0x404244
41e94f:	5f                   	pop    %edi
41e950:	5e                   	pop    %esi
41e951:	5b                   	pop    %ebx
41e952:	c3                   	ret
41e953:	90                   	nop
41e954:	55                   	push   %ebp
41e955:	8b ec                	mov    %esp,%ebp
41e957:	83 c4 e8             	add    $0xffffffe8,%esp
41e95a:	53                   	push   %ebx
41e95b:	56                   	push   %esi
41e95c:	57                   	push   %edi
41e95d:	8b fa                	mov    %edx,%edi
41e95f:	89 45 fc             	mov    %eax,-0x4(%ebp)
41e962:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41e966:	75 1e                	jne    0x41e986
41e968:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41e96c:	75 18                	jne    0x41e986
41e96e:	6a 00                	push   $0x0
41e970:	6a 00                	push   $0x0
41e972:	8b c7                	mov    %edi,%eax
41e974:	e8 5f fd ff ff       	call   0x41e6d8
41e979:	8b c7                	mov    %edi,%eax
41e97b:	e8 6c fd ff ff       	call   0x41e6ec
41e980:	89 45 08             	mov    %eax,0x8(%ebp)
41e983:	89 55 0c             	mov    %edx,0xc(%ebp)
41e986:	8b 45 08             	mov    0x8(%ebp),%eax
41e989:	89 45 f0             	mov    %eax,-0x10(%ebp)
41e98c:	8b 45 0c             	mov    0xc(%ebp),%eax
41e98f:	89 45 f4             	mov    %eax,-0xc(%ebp)
41e992:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41e996:	75 0b                	jne    0x41e9a3
41e998:	81 7d 08 00 f0 00 00 	cmpl   $0xf000,0x8(%ebp)
41e99f:	76 0d                	jbe    0x41e9ae
41e9a1:	eb 02                	jmp    0x41e9a5
41e9a3:	7e 09                	jle    0x41e9ae
41e9a5:	c7 45 ec 00 f0 00 00 	movl   $0xf000,-0x14(%ebp)
41e9ac:	eb 06                	jmp    0x41e9b4
41e9ae:	8b 45 08             	mov    0x8(%ebp),%eax
41e9b1:	89 45 ec             	mov    %eax,-0x14(%ebp)
41e9b4:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e9b7:	e8 f0 3d fe ff       	call   0x4027ac
41e9bc:	89 45 e8             	mov    %eax,-0x18(%ebp)
41e9bf:	33 c0                	xor    %eax,%eax
41e9c1:	55                   	push   %ebp
41e9c2:	68 31 ea 41 00       	push   $0x41ea31
41e9c7:	64 ff 30             	push   %fs:(%eax)
41e9ca:	64 89 20             	mov    %esp,%fs:(%eax)
41e9cd:	eb 3d                	jmp    0x41ea0c
41e9cf:	8b 45 ec             	mov    -0x14(%ebp),%eax
41e9d2:	99                   	cltd
41e9d3:	3b 55 0c             	cmp    0xc(%ebp),%edx
41e9d6:	75 07                	jne    0x41e9df
41e9d8:	3b 45 08             	cmp    0x8(%ebp),%eax
41e9db:	73 09                	jae    0x41e9e6
41e9dd:	eb 02                	jmp    0x41e9e1
41e9df:	7d 05                	jge    0x41e9e6
41e9e1:	8b 5d ec             	mov    -0x14(%ebp),%ebx
41e9e4:	eb 03                	jmp    0x41e9e9
41e9e6:	8b 5d 08             	mov    0x8(%ebp),%ebx
41e9e9:	8b 75 e8             	mov    -0x18(%ebp),%esi
41e9ec:	8b d6                	mov    %esi,%edx
41e9ee:	8b cb                	mov    %ebx,%ecx
41e9f0:	8b c7                	mov    %edi,%eax
41e9f2:	e8 ed fe ff ff       	call   0x41e8e4
41e9f7:	8b d6                	mov    %esi,%edx
41e9f9:	8b cb                	mov    %ebx,%ecx
41e9fb:	8b 45 fc             	mov    -0x4(%ebp),%eax
41e9fe:	e8 19 ff ff ff       	call   0x41e91c
41ea03:	8b c3                	mov    %ebx,%eax
41ea05:	99                   	cltd
41ea06:	29 45 08             	sub    %eax,0x8(%ebp)
41ea09:	19 55 0c             	sbb    %edx,0xc(%ebp)
41ea0c:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41ea10:	75 bd                	jne    0x41e9cf
41ea12:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41ea16:	75 b7                	jne    0x41e9cf
41ea18:	33 c0                	xor    %eax,%eax
41ea1a:	5a                   	pop    %edx
41ea1b:	59                   	pop    %ecx
41ea1c:	59                   	pop    %ecx
41ea1d:	64 89 10             	mov    %edx,%fs:(%eax)
41ea20:	68 38 ea 41 00       	push   $0x41ea38
41ea25:	8b 55 ec             	mov    -0x14(%ebp),%edx
41ea28:	8b 45 e8             	mov    -0x18(%ebp),%eax
41ea2b:	e8 9c 3d fe ff       	call   0x4027cc
41ea30:	c3                   	ret
41ea31:	e9 d6 57 fe ff       	jmp    0x40420c
41ea36:	eb ed                	jmp    0x41ea25
41ea38:	8b 45 f0             	mov    -0x10(%ebp),%eax
41ea3b:	8b 55 f4             	mov    -0xc(%ebp),%edx
41ea3e:	5f                   	pop    %edi
41ea3f:	5e                   	pop    %esi
41ea40:	5b                   	pop    %ebx
41ea41:	8b e5                	mov    %ebp,%esp
41ea43:	5d                   	pop    %ebp
41ea44:	c2 08 00             	ret    $0x8
41ea47:	90                   	nop
41ea48:	55                   	push   %ebp
41ea49:	8b ec                	mov    %esp,%ebp
41ea4b:	83 c4 f8             	add    $0xfffffff8,%esp
41ea4e:	53                   	push   %ebx
41ea4f:	8b da                	mov    %edx,%ebx
41ea51:	68 00 10 00 00       	push   $0x1000
41ea56:	8b c8                	mov    %eax,%ecx
41ea58:	b2 01                	mov    $0x1,%dl
41ea5a:	a1 c4 a0 41 00       	mov    0x41a0c4,%eax
41ea5f:	e8 08 07 00 00       	call   0x41f16c
41ea64:	89 45 f8             	mov    %eax,-0x8(%ebp)
41ea67:	33 c0                	xor    %eax,%eax
41ea69:	55                   	push   %ebp
41ea6a:	68 98 ea 41 00       	push   $0x41ea98
41ea6f:	64 ff 30             	push   %fs:(%eax)
41ea72:	64 89 20             	mov    %esp,%fs:(%eax)
41ea75:	8b d3                	mov    %ebx,%edx
41ea77:	8b 45 f8             	mov    -0x8(%ebp),%eax
41ea7a:	e8 55 25 00 00       	call   0x420fd4
41ea7f:	89 45 fc             	mov    %eax,-0x4(%ebp)
41ea82:	33 c0                	xor    %eax,%eax
41ea84:	5a                   	pop    %edx
41ea85:	59                   	pop    %ecx
41ea86:	59                   	pop    %ecx
41ea87:	64 89 10             	mov    %edx,%fs:(%eax)
41ea8a:	68 9f ea 41 00       	push   $0x41ea9f
41ea8f:	8b 45 f8             	mov    -0x8(%ebp),%eax
41ea92:	e8 e1 4f fe ff       	call   0x403a78
41ea97:	c3                   	ret
41ea98:	e9 6f 57 fe ff       	jmp    0x40420c
41ea9d:	eb f0                	jmp    0x41ea8f
41ea9f:	8b 45 fc             	mov    -0x4(%ebp),%eax
41eaa2:	5b                   	pop    %ebx
41eaa3:	59                   	pop    %ecx
41eaa4:	59                   	pop    %ecx
41eaa5:	5d                   	pop    %ebp
41eaa6:	c3                   	ret
41eaa7:	90                   	nop
41eaa8:	53                   	push   %ebx
41eaa9:	33 c9                	xor    %ecx,%ecx
41eaab:	8b 18                	mov    (%eax),%ebx
41eaad:	ff 53 18             	call   *0x18(%ebx)
41eab0:	5b                   	pop    %ebx
41eab1:	c3                   	ret
41eab2:	8b c0                	mov    %eax,%eax
41eab4:	55                   	push   %ebp
41eab5:	8b ec                	mov    %esp,%ebp
41eab7:	51                   	push   %ecx
41eab8:	53                   	push   %ebx
41eab9:	56                   	push   %esi
41eaba:	8b f1                	mov    %ecx,%esi
41eabc:	8b da                	mov    %edx,%ebx
41eabe:	68 00 10 00 00       	push   $0x1000
41eac3:	8b c8                	mov    %eax,%ecx
41eac5:	b2 01                	mov    $0x1,%dl
41eac7:	a1 54 a1 41 00       	mov    0x41a154,%eax
41eacc:	e8 9b 06 00 00       	call   0x41f16c
41ead1:	89 45 fc             	mov    %eax,-0x4(%ebp)
41ead4:	33 c0                	xor    %eax,%eax
41ead6:	55                   	push   %ebp
41ead7:	68 04 eb 41 00       	push   $0x41eb04
41eadc:	64 ff 30             	push   %fs:(%eax)
41eadf:	64 89 20             	mov    %esp,%fs:(%eax)
41eae2:	8b ce                	mov    %esi,%ecx
41eae4:	8b d3                	mov    %ebx,%edx
41eae6:	8b 45 fc             	mov    -0x4(%ebp),%eax
41eae9:	e8 1a 3c 00 00       	call   0x422708
41eaee:	33 c0                	xor    %eax,%eax
41eaf0:	5a                   	pop    %edx
41eaf1:	59                   	pop    %ecx
41eaf2:	59                   	pop    %ecx
41eaf3:	64 89 10             	mov    %edx,%fs:(%eax)
41eaf6:	68 0b eb 41 00       	push   $0x41eb0b
41eafb:	8b 45 fc             	mov    -0x4(%ebp),%eax
41eafe:	e8 75 4f fe ff       	call   0x403a78
41eb03:	c3                   	ret
41eb04:	e9 03 57 fe ff       	jmp    0x40420c
41eb09:	eb f0                	jmp    0x41eafb
41eb0b:	5e                   	pop    %esi
41eb0c:	5b                   	pop    %ebx
41eb0d:	59                   	pop    %ecx
41eb0e:	5d                   	pop    %ebp
41eb0f:	c3                   	ret
41eb10:	53                   	push   %ebx
41eb11:	56                   	push   %esi
41eb12:	57                   	push   %edi
41eb13:	84 d2                	test   %dl,%dl
41eb15:	74 08                	je     0x41eb1f
41eb17:	83 c4 f0             	add    $0xfffffff0,%esp
41eb1a:	e8 bd 52 fe ff       	call   0x403ddc
41eb1f:	8b f1                	mov    %ecx,%esi
41eb21:	8b da                	mov    %edx,%ebx
41eb23:	8b f8                	mov    %eax,%edi
41eb25:	33 d2                	xor    %edx,%edx
41eb27:	8b c7                	mov    %edi,%eax
41eb29:	e8 1a 4f fe ff       	call   0x403a48
41eb2e:	89 77 04             	mov    %esi,0x4(%edi)
41eb31:	8b c7                	mov    %edi,%eax
41eb33:	84 db                	test   %bl,%bl
41eb35:	74 0f                	je     0x41eb46
41eb37:	e8 f8 52 fe ff       	call   0x403e34
41eb3c:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41eb43:	83 c4 0c             	add    $0xc,%esp
41eb46:	8b c7                	mov    %edi,%eax
41eb48:	5f                   	pop    %edi
41eb49:	5e                   	pop    %esi
41eb4a:	5b                   	pop    %ebx
41eb4b:	c3                   	ret
41eb4c:	8b 40 04             	mov    0x4(%eax),%eax
41eb4f:	e8 a8 ac fe ff       	call   0x4097fc
41eb54:	83 f8 ff             	cmp    $0xffffffff,%eax
41eb57:	75 02                	jne    0x41eb5b
41eb59:	33 c0                	xor    %eax,%eax
41eb5b:	c3                   	ret
41eb5c:	8b 40 04             	mov    0x4(%eax),%eax
41eb5f:	e8 c4 ac fe ff       	call   0x409828
41eb64:	83 f8 ff             	cmp    $0xffffffff,%eax
41eb67:	75 02                	jne    0x41eb6b
41eb69:	33 c0                	xor    %eax,%eax
41eb6b:	c3                   	ret
41eb6c:	55                   	push   %ebp
41eb6d:	8b ec                	mov    %esp,%ebp
41eb6f:	83 c4 f8             	add    $0xfffffff8,%esp
41eb72:	ff 75 0c             	push   0xc(%ebp)
41eb75:	ff 75 08             	push   0x8(%ebp)
41eb78:	83 e2 7f             	and    $0x7f,%edx
41eb7b:	8b 40 04             	mov    0x4(%eax),%eax
41eb7e:	e8 d1 ac fe ff       	call   0x409854
41eb83:	89 45 f8             	mov    %eax,-0x8(%ebp)
41eb86:	89 55 fc             	mov    %edx,-0x4(%ebp)
41eb89:	8b 45 f8             	mov    -0x8(%ebp),%eax
41eb8c:	8b 55 fc             	mov    -0x4(%ebp),%edx
41eb8f:	59                   	pop    %ecx
41eb90:	59                   	pop    %ecx
41eb91:	5d                   	pop    %ebp
41eb92:	c2 08 00             	ret    $0x8
41eb95:	8d 40 00             	lea    0x0(%eax),%eax
41eb98:	53                   	push   %ebx
41eb99:	8b da                	mov    %edx,%ebx
41eb9b:	8b c8                	mov    %eax,%ecx
41eb9d:	8b c3                	mov    %ebx,%eax
41eb9f:	99                   	cltd
41eba0:	52                   	push   %edx
41eba1:	50                   	push   %eax
41eba2:	8b c1                	mov    %ecx,%eax
41eba4:	8b 10                	mov    (%eax),%edx
41eba6:	ff 52 04             	call   *0x4(%edx)
41eba9:	5b                   	pop    %ebx
41ebaa:	c3                   	ret
41ebab:	90                   	nop
41ebac:	55                   	push   %ebp
41ebad:	8b ec                	mov    %esp,%ebp
41ebaf:	53                   	push   %ebx
41ebb0:	8b d8                	mov    %eax,%ebx
41ebb2:	ff 75 0c             	push   0xc(%ebp)
41ebb5:	ff 75 08             	push   0x8(%ebp)
41ebb8:	33 d2                	xor    %edx,%edx
41ebba:	8b c3                	mov    %ebx,%eax
41ebbc:	8b 08                	mov    (%eax),%ecx
41ebbe:	ff 51 14             	call   *0x14(%ecx)
41ebc1:	8b 43 04             	mov    0x4(%ebx),%eax
41ebc4:	50                   	push   %eax
41ebc5:	e8 ae 87 fe ff       	call   0x407378
41ebca:	e8 41 f8 fe ff       	call   0x40e410
41ebcf:	5b                   	pop    %ebx
41ebd0:	5d                   	pop    %ebp
41ebd1:	c2 08 00             	ret    $0x8
41ebd4:	55                   	push   %ebp
41ebd5:	8b ec                	mov    %esp,%ebp
41ebd7:	53                   	push   %ebx
41ebd8:	56                   	push   %esi
41ebd9:	84 d2                	test   %dl,%dl
41ebdb:	74 08                	je     0x41ebe5
41ebdd:	83 c4 f0             	add    $0xfffffff0,%esp
41ebe0:	e8 f7 51 fe ff       	call   0x403ddc
41ebe5:	8b da                	mov    %edx,%ebx
41ebe7:	8b f0                	mov    %eax,%esi
41ebe9:	66 8b 45 08          	mov    0x8(%ebp),%ax
41ebed:	50                   	push   %eax
41ebee:	6a 00                	push   $0x0
41ebf0:	33 d2                	xor    %edx,%edx
41ebf2:	8b c6                	mov    %esi,%eax
41ebf4:	e8 1f 00 00 00       	call   0x41ec18
41ebf9:	8b c6                	mov    %esi,%eax
41ebfb:	84 db                	test   %bl,%bl
41ebfd:	74 0f                	je     0x41ec0e
41ebff:	e8 30 52 fe ff       	call   0x403e34
41ec04:	64 8f 05 00 00 00 00 	pop    %fs:0x0
41ec0b:	83 c4 0c             	add    $0xc,%esp
41ec0e:	8b c6                	mov    %esi,%eax
41ec10:	5e                   	pop    %esi
41ec11:	5b                   	pop    %ebx
41ec12:	5d                   	pop    %ebp
41ec13:	c2 04 00             	ret    $0x4
41ec16:	8b c0                	mov    %eax,%eax
41ec18:	55                   	push   %ebp
41ec19:	8b ec                	mov    %esp,%ebp
41ec1b:	83 c4 f4             	add    $0xfffffff4,%esp
41ec1e:	53                   	push   %ebx
41ec1f:	56                   	push   %esi
41ec20:	57                   	push   %edi
41ec21:	84 d2                	test   %dl,%dl
41ec23:	74 08                	je     0x41ec2d
41ec25:	83 c4 f0             	add    $0xfffffff0,%esp
41ec28:	e8 af 51 fe ff       	call   0x403ddc
41ec2d:	8b f1                	mov    %ecx,%esi
41ec2f:	88 55 ff             	mov    %dl,-0x1(%ebp)
41ec32:	8b d8                	mov    %eax,%ebx
41ec34:	8b 7d 0c             	mov    0xc(%ebp),%edi
41ec37:	66 81 ff ff ff       	cmp    $0xffff,%di
41ec3c:	75 41                	jne    0x41ec7f
41ec3e:	8b 55 08             	mov    0x8(%ebp),%edx