41e987:	68 2c 20 40 00       	push   $0x40202c
41e98c:	ff d3                	call   *%ebx
41e98e:	8b 35 10 00 42 00    	mov    0x420010,%esi
41e994:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41e997:	51                   	push   %ecx
41e998:	56                   	push   %esi
41e999:	8b 06                	mov    (%esi),%eax
41e99b:	ff 50 50             	call   *0x50(%eax)
41e99e:	85 c0                	test   %eax,%eax
41e9a0:	db e2                	fnclex
41e9a2:	7d 0b                	jge    0x41e9af
41e9a4:	6a 50                	push   $0x50
41e9a6:	68 9c 1a 40 00       	push   $0x401a9c
41e9ab:	56                   	push   %esi
41e9ac:	50                   	push   %eax
41e9ad:	ff d7                	call   *%edi
41e9af:	8b 55 dc             	mov    -0x24(%ebp),%edx
41e9b2:	d9 85 50 ff ff ff    	flds   -0xb0(%ebp)
41e9b8:	52                   	push   %edx
41e9b9:	ff 15 dc 10 40 00    	call   *0x4010dc
41e9bf:	50                   	push   %eax
41e9c0:	e8 bb 03 00 00       	call   0x41ed80
41e9c5:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41e9c8:	a3 24 00 42 00       	mov    %eax,0x420024
41e9cd:	ff 15 fc 10 40 00    	call   *0x4010fc
41e9d3:	a1 10 00 42 00       	mov    0x420010,%eax
41e9d8:	85 c0                	test   %eax,%eax
41e9da:	75 0c                	jne    0x41e9e8
41e9dc:	68 10 00 42 00       	push   $0x420010
41e9e1:	68 2c 20 40 00       	push   $0x40202c
41e9e6:	ff d3                	call   *%ebx
41e9e8:	8b 35 10 00 42 00    	mov    0x420010,%esi
41e9ee:	8d 8d 50 ff ff ff    	lea    -0xb0(%ebp),%ecx
41e9f4:	51                   	push   %ecx
41e9f5:	56                   	push   %esi
41e9f6:	8b 06                	mov    (%esi),%eax
41e9f8:	ff 90 e0 00 00 00    	call   *0xe0(%eax)
41e9fe:	85 c0                	test   %eax,%eax
41ea00:	db e2                	fnclex
41ea02:	7d 0e                	jge    0x41ea12
41ea04:	68 e0 00 00 00       	push   $0xe0
41ea09:	68 9c 1a 40 00       	push   $0x401a9c
41ea0e:	56                   	push   %esi
41ea0f:	50                   	push   %eax
41ea10:	ff d7                	call   *%edi
41ea12:	a1 10 00 42 00       	mov    0x420010,%eax
41ea17:	85 c0                	test   %eax,%eax
41ea19:	75 0c                	jne    0x41ea27
41ea1b:	68 10 00 42 00       	push   $0x420010
41ea20:	68 2c 20 40 00       	push   $0x40202c
41ea25:	ff d3                	call   *%ebx
41ea27:	8b 35 10 00 42 00    	mov    0x420010,%esi
41ea2d:	8d 45 dc             	lea    -0x24(%ebp),%eax
41ea30:	50                   	push   %eax
41ea31:	56                   	push   %esi
41ea32:	8b 16                	mov    (%esi),%edx
41ea34:	ff 52 50             	call   *0x50(%edx)
41ea37:	85 c0                	test   %eax,%eax
41ea39:	db e2                	fnclex
41ea3b:	7d 0b                	jge    0x41ea48
41ea3d:	6a 50                	push   $0x50
41ea3f:	68 9c 1a 40 00       	push   $0x401a9c
41ea44:	56                   	push   %esi
41ea45:	50                   	push   %eax
41ea46:	ff d7                	call   *%edi
41ea48:	8b 4d dc             	mov    -0x24(%ebp),%ecx
41ea4b:	d9 85 50 ff ff ff    	flds   -0xb0(%ebp)
41ea51:	51                   	push   %ecx
41ea52:	ff 15 dc 10 40 00    	call   *0x4010dc
41ea58:	50                   	push   %eax
41ea59:	e8 d2 00 00 00       	call   0x41eb30
41ea5e:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41ea61:	a3 24 00 42 00       	mov    %eax,0x420024
41ea66:	ff 15 fc 10 40 00    	call   *0x4010fc
41ea6c:	8d 55 ec             	lea    -0x14(%ebp),%edx
41ea6f:	8d 45 c8             	lea    -0x38(%ebp),%eax
41ea72:	89 55 90             	mov    %edx,-0x70(%ebp)
41ea75:	50                   	push   %eax
41ea76:	8d 4d 88             	lea    -0x78(%ebp),%ecx
41ea79:	6a 01                	push   $0x1
41ea7b:	8d 55 b8             	lea    -0x48(%ebp),%edx
41ea7e:	51                   	push   %ecx
41ea7f:	52                   	push   %edx
41ea80:	b8 d7 c7 40 00       	mov    $0x40c7d7,%eax
41ea85:	ff e0                	jmp    *%eax
41ea87:	64 64 64 c7 45 d0 3c 	fs fs movl $0x3c,%fs:-0x30(%ebp)
41ea8e:	00 00 00
41ea91:	c7 45 c8 02 00 00 00 	movl   $0x2,-0x38(%ebp)
41ea98:	c7 45 88 08 40 00 00 	movl   $0x4008,-0x78(%ebp)
41ea9f:	ff 15 60 10 40 00    	call   *0x401060
41eaa5:	8d 45 b8             	lea    -0x48(%ebp),%eax
41eaa8:	50                   	push   %eax
41eaa9:	ff 15 14 10 40 00    	call   *0x401014
41eaaf:	8b d0                	mov    %eax,%edx
41eab1:	8d 4d e0             	lea    -0x20(%ebp),%ecx
41eab4:	ff 15 e8 10 40 00    	call   *0x4010e8
41eaba:	8d 4d b8             	lea    -0x48(%ebp),%ecx
41eabd:	8d 55 c8             	lea    -0x38(%ebp),%edx
41eac0:	51                   	push   %ecx
41eac1:	52                   	push   %edx
41eac2:	6a 02                	push   $0x2
41eac4:	ff 15 20 10 40 00    	call   *0x401020
41eaca:	83 c4 0c             	add    $0xc,%esp
41eacd:	9b                   	fwait
41eace:	68 14 eb 41 00       	push   $0x41eb14
41ead3:	eb 2e                	jmp    0x41eb03
41ead5:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41ead8:	ff 15 fc 10 40 00    	call   *0x4010fc
41eade:	8d 4d d8             	lea    -0x28(%ebp),%ecx
41eae1:	ff 15 00 11 40 00    	call   *0x401100
41eae7:	8d 45 98             	lea    -0x68(%ebp),%eax
41eaea:	8d 4d a8             	lea    -0x58(%ebp),%ecx
41eaed:	50                   	push   %eax
41eaee:	8d 55 b8             	lea    -0x48(%ebp),%edx
41eaf1:	51                   	push   %ecx
41eaf2:	8d 45 c8             	lea    -0x38(%ebp),%eax
41eaf5:	52                   	push   %edx
41eaf6:	50                   	push   %eax
41eaf7:	6a 04                	push   $0x4
41eaf9:	ff 15 20 10 40 00    	call   *0x401020
41eaff:	83 c4 14             	add    $0x14,%esp
41eb02:	c3                   	ret
41eb03:	8b 35 fc 10 40 00    	mov    0x4010fc,%esi
41eb09:	8d 4d ec             	lea    -0x14(%ebp),%ecx
41eb0c:	ff d6                	call   *%esi
41eb0e:	8d 4d e0             	lea    -0x20(%ebp),%ecx
41eb11:	ff d6                	call   *%esi
41eb13:	c3                   	ret
41eb14:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41eb17:	5f                   	pop    %edi
41eb18:	5e                   	pop    %esi
41eb19:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41eb20:	5b                   	pop    %ebx
41eb21:	8b e5                	mov    %ebp,%esp
41eb23:	5d                   	pop    %ebp
41eb24:	c3                   	ret
41eb25:	90                   	nop
41eb26:	90                   	nop
41eb27:	90                   	nop
41eb28:	90                   	nop
41eb29:	90                   	nop
41eb2a:	90                   	nop
41eb2b:	90                   	nop
41eb2c:	90                   	nop
41eb2d:	90                   	nop
41eb2e:	90                   	nop
41eb2f:	90                   	nop
41eb30:	55                   	push   %ebp
41eb31:	8b ec                	mov    %esp,%ebp
41eb33:	83 ec 08             	sub    $0x8,%esp
41eb36:	68 d6 11 40 00       	push   $0x4011d6
41eb3b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41eb41:	50                   	push   %eax
41eb42:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
41eb49:	81 ec a0 00 00 00    	sub    $0xa0,%esp
41eb4f:	53                   	push   %ebx
41eb50:	56                   	push   %esi
41eb51:	57                   	push   %edi
41eb52:	89 65 f8             	mov    %esp,-0x8(%ebp)
41eb55:	c7 45 fc b0 11 40 00 	movl   $0x4011b0,-0x4(%ebp)
41eb5c:	8b 55 0c             	mov    0xc(%ebp),%edx
41eb5f:	33 f6                	xor    %esi,%esi
41eb61:	8d 4d ec             	lea    -0x14(%ebp),%ecx
41eb64:	89 75 ec             	mov    %esi,-0x14(%ebp)
41eb67:	89 75 e8             	mov    %esi,-0x18(%ebp)
41eb6a:	89 75 e4             	mov    %esi,-0x1c(%ebp)
41eb6d:	89 75 e0             	mov    %esi,-0x20(%ebp)
41eb70:	89 75 dc             	mov    %esi,-0x24(%ebp)
41eb73:	89 75 cc             	mov    %esi,-0x34(%ebp)
41eb76:	89 75 bc             	mov    %esi,-0x44(%ebp)
41eb79:	89 75 ac             	mov    %esi,-0x54(%ebp)
41eb7c:	89 75 9c             	mov    %esi,-0x64(%ebp)
41eb7f:	89 b5 7c ff ff ff    	mov    %esi,-0x84(%ebp)
41eb85:	ff 15 b4 10 40 00    	call   *0x4010b4
41eb8b:	8d 45 cc             	lea    -0x34(%ebp),%eax
41eb8e:	8d 4d bc             	lea    -0x44(%ebp),%ecx
41eb91:	bf 02 00 00 00       	mov    $0x2,%edi
41eb96:	50                   	push   %eax
41eb97:	51                   	push   %ecx
41eb98:	89 7d d4             	mov    %edi,-0x2c(%ebp)
41eb9b:	89 7d cc             	mov    %edi,-0x34(%ebp)
41eb9e:	ff 15 d8 10 40 00    	call   *0x4010d8
41eba4:	8d 55 bc             	lea    -0x44(%ebp),%edx
41eba7:	52                   	push   %edx
41eba8:	ff 15 14 10 40 00    	call   *0x401014
41ebae:	8b d0                	mov    %eax,%edx
41ebb0:	8d 4d e8             	lea    -0x18(%ebp),%ecx
41ebb3:	ff 15 e8 10 40 00    	call   *0x4010e8
41ebb9:	8b 1d 20 10 40 00    	mov    0x401020,%ebx
41ebbf:	8d 45 bc             	lea    -0x44(%ebp),%eax
41ebc2:	8d 4d cc             	lea    -0x34(%ebp),%ecx
41ebc5:	50                   	push   %eax
41ebc6:	51                   	push   %ecx
41ebc7:	57                   	push   %edi
41ebc8:	ff d3                	call   *%ebx
41ebca:	83 c4 0c             	add    $0xc,%esp
41ebcd:	8d 55 cc             	lea    -0x34(%ebp),%edx
41ebd0:	8d 45 bc             	lea    -0x44(%ebp),%eax
41ebd3:	c7 45 d4 9a 99 99 99 	movl   $0x9999999a,-0x2c(%ebp)
41ebda:	56                   	push   %esi
41ebdb:	52                   	push   %edx
41ebdc:	50                   	push   %eax
41ebdd:	c7 45 d8 99 99 f1 3f 	movl   $0x3ff19999,-0x28(%ebp)
41ebe4:	c7 45 cc 05 00 00 00 	movl   $0x5,-0x34(%ebp)
41ebeb:	ff 15 90 10 40 00    	call   *0x401090
41ebf1:	8d 4d bc             	lea    -0x44(%ebp),%ecx
41ebf4:	8d 95 7c ff ff ff    	lea    -0x84(%ebp),%edx
41ebfa:	51                   	push   %ecx
41ebfb:	52                   	push   %edx
41ebfc:	c7 45 84 01 00 00 00 	movl   $0x1,-0x7c(%ebp)
41ec03:	c7 85 7c ff ff ff 02 	movl   $0x8002,-0x84(%ebp)
41ec0a:	80 00 00
41ec0d:	ff 15 cc 10 40 00    	call   *0x4010cc
41ec13:	8b f8                	mov    %eax,%edi
41ec15:	8d 45 bc             	lea    -0x44(%ebp),%eax
41ec18:	8d 4d cc             	lea    -0x34(%ebp),%ecx
41ec1b:	50                   	push   %eax
41ec1c:	51                   	push   %ecx
41ec1d:	6a 02                	push   $0x2
41ec1f:	ff d3                	call   *%ebx
41ec21:	83 c4 0c             	add    $0xc,%esp
41ec24:	66 3b fe             	cmp    %si,%di
41ec27:	74 06                	je     0x41ec2f
41ec29:	ff 15 1c 10 40 00    	call   *0x40101c
41ec2f:	56                   	push   %esi
41ec30:	56                   	push   %esi
41ec31:	ff 15 00 10 40 00    	call   *0x401000
41ec37:	ff 15 58 10 40 00    	call   *0x401058
41ec3d:	dc 1d a8 11 40 00    	fcompl 0x4011a8
41ec43:	df e0                	fnstsw %ax
41ec45:	f6 c4 40             	test   $0x40,%ah
41ec48:	0f 85 85 00 00 00    	jne    0x41ecd3
41ec4e:	ff 15 c4 10 40 00    	call   *0x4010c4
41ec54:	8d 55 dc             	lea    -0x24(%ebp),%edx
41ec57:	50                   	push   %eax
41ec58:	52                   	push   %edx
41ec59:	ff 15 48 10 40 00    	call   *0x401048
41ec5f:	b9 04 00 02 80       	mov    $0x80020004,%ecx
41ec64:	8d 55 ac             	lea    -0x54(%ebp),%edx
41ec67:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
41ec6a:	89 4d b4             	mov    %ecx,-0x4c(%ebp)
41ec6d:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
41ec70:	89 4d d4             	mov    %ecx,-0x2c(%ebp)
41ec73:	8d 4d 9c             	lea    -0x64(%ebp),%ecx
41ec76:	8b f8                	mov    %eax,%edi
41ec78:	51                   	push   %ecx
41ec79:	52                   	push   %edx
41ec7a:	8d 4d bc             	lea    -0x44(%ebp),%ecx
41ec7d:	b8 0a 00 00 00       	mov    $0xa,%eax
41ec82:	8d 55 cc             	lea    -0x34(%ebp),%edx
41ec85:	51                   	push   %ecx
41ec86:	89 45 9c             	mov    %eax,-0x64(%ebp)
41ec89:	89 45 ac             	mov    %eax,-0x54(%ebp)
41ec8c:	89 45 bc             	mov    %eax,-0x44(%ebp)
41ec8f:	89 45 cc             	mov    %eax,-0x34(%ebp)
41ec92:	8b 07                	mov    (%edi),%eax
41ec94:	52                   	push   %edx
41ec95:	68 f4 26 00 00       	push   $0x26f4
41ec9a:	57                   	push   %edi
41ec9b:	ff 50 44             	call   *0x44(%eax)
41ec9e:	3b c6                	cmp    %esi,%eax
41eca0:	db e2                	fnclex
41eca2:	7d 0f                	jge    0x41ecb3
41eca4:	6a 44                	push   $0x44
41eca6:	68 78 1d 40 00       	push   $0x401d78
41ecab:	57                   	push   %edi
41ecac:	50                   	push   %eax
41ecad:	ff 15 38 10 40 00    	call   *0x401038
41ecb3:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41ecb6:	ff 15 00 11 40 00    	call   *0x401100
41ecbc:	8d 45 9c             	lea    -0x64(%ebp),%eax
41ecbf:	8d 4d ac             	lea    -0x54(%ebp),%ecx
41ecc2:	50                   	push   %eax
41ecc3:	8d 55 bc             	lea    -0x44(%ebp),%edx
41ecc6:	51                   	push   %ecx
41ecc7:	8d 45 cc             	lea    -0x34(%ebp),%eax
41ecca:	52                   	push   %edx
41eccb:	50                   	push   %eax
41eccc:	6a 04                	push   $0x4
41ecce:	ff d3                	call   *%ebx
41ecd0:	83 c4 14             	add    $0x14,%esp
41ecd3:	6a 02                	push   $0x2
41ecd5:	68 60 1f 40 00       	push   $0x401f60
41ecda:	68 80 1f 40 00       	push   $0x401f80
41ecdf:	ff 15 30 10 40 00    	call   *0x401030
41ece5:	8b d0                	mov    %eax,%edx
41ece7:	8d 4d e0             	lea    -0x20(%ebp),%ecx
41ecea:	ff 15 e8 10 40 00    	call   *0x4010e8
41ecf0:	50                   	push   %eax
41ecf1:	68 8c 1f 40 00       	push   $0x401f8c
41ecf6:	56                   	push   %esi
41ecf7:	ff 15 d0 10 40 00    	call   *0x4010d0
41ecfd:	33 c9                	xor    %ecx,%ecx
41ecff:	83 f8 05             	cmp    $0x5,%eax
41ed02:	0f 95 c1             	setne  %cl
41ed05:	f7 d9                	neg    %ecx
41ed07:	8b f9                	mov    %ecx,%edi
41ed09:	8d 4d e0             	lea    -0x20(%ebp),%ecx
41ed0c:	ff 15 fc 10 40 00    	call   *0x4010fc
41ed12:	66 3b fe             	cmp    %si,%di
41ed15:	74 06                	je     0x41ed1d
41ed17:	ff 15 1c 10 40 00    	call   *0x40101c
41ed1d:	9b                   	fwait
41ed1e:	68 64 ed 41 00       	push   $0x41ed64
41ed23:	eb 2e                	jmp    0x41ed53
41ed25:	8d 4d e0             	lea    -0x20(%ebp),%ecx
41ed28:	ff 15 fc 10 40 00    	call   *0x4010fc
41ed2e:	8d 4d dc             	lea    -0x24(%ebp),%ecx
41ed31:	ff 15 00 11 40 00    	call   *0x401100
41ed37:	8d 55 9c             	lea    -0x64(%ebp),%edx
41ed3a:	8d 45 ac             	lea    -0x54(%ebp),%eax
41ed3d:	52                   	push   %edx
41ed3e:	8d 4d bc             	lea    -0x44(%ebp),%ecx
41ed41:	50                   	push   %eax
41ed42:	8d 55 cc             	lea    -0x34(%ebp),%edx
41ed45:	51                   	push   %ecx
41ed46:	52                   	push   %edx
41ed47:	6a 04                	push   $0x4
41ed49:	ff 15 20 10 40 00    	call   *0x401020
41ed4f:	83 c4 14             	add    $0x14,%esp
41ed52:	c3                   	ret
41ed53:	8b 35 fc 10 40 00    	mov    0x4010fc,%esi
41ed59:	8d 4d ec             	lea    -0x14(%ebp),%ecx
41ed5c:	ff d6                	call   *%esi
41ed5e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
41ed61:	ff d6                	call   *%esi
41ed63:	c3                   	ret
41ed64:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41ed67:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41ed6a:	5f                   	pop    %edi
41ed6b:	5e                   	pop    %esi
41ed6c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
41ed73:	5b                   	pop    %ebx
41ed74:	8b e5                	mov    %ebp,%esp
41ed76:	5d                   	pop    %ebp
41ed77:	c2 08 00             	ret    $0x8
41ed7a:	90                   	nop
41ed7b:	90                   	nop
41ed7c:	90                   	nop
41ed7d:	90                   	nop
41ed7e:	90                   	nop
41ed7f:	90                   	nop
41ed80:	55                   	push   %ebp
41ed81:	8b ec                	mov    %esp,%ebp
41ed83:	83 ec 08             	sub    $0x8,%esp
41ed86:	68 d6 11 40 00       	push   $0x4011d6
41ed8b:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
41ed91:	50                   	push   %eax
41ed92:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
41ed99:	83 ec 0c             	sub    $0xc,%esp