41c985:	56                   	push   %esi
41c986:	8b f1                	mov    %ecx,%esi
41c988:	e8 15 00 00 00       	call   0x41c9a2
41c98d:	f6 45 08 01          	testb  $0x1,0x8(%ebp)
41c991:	74 08                	je     0x41c99b
41c993:	56                   	push   %esi
41c994:	ff 15 10 74 4a 00    	call   *0x4a7410
41c99a:	59                   	pop    %ecx
41c99b:	8b c6                	mov    %esi,%eax
41c99d:	5e                   	pop    %esi
41c99e:	5d                   	pop    %ebp
41c99f:	c2 04 00             	ret    $0x4
41c9a2:	8b ff                	mov    %edi,%edi
41c9a4:	56                   	push   %esi
41c9a5:	8b f1                	mov    %ecx,%esi
41c9a7:	83 66 70 00          	andl   $0x0,0x70(%esi)
41c9ab:	8d 8e b8 00 00 00    	lea    0xb8(%esi),%ecx
41c9b1:	c7 06 3c 12 40 00    	movl   $0x40123c,(%esi)
41c9b7:	c7 86 a0 00 00 00 2c 	movl   $0x40122c,0xa0(%esi)
41c9be:	12 40 00
41c9c1:	e8 bc ec 04 00       	call   0x46b682
41c9c6:	8d 8e b4 00 00 00    	lea    0xb4(%esi),%ecx
41c9cc:	ff 15 1c 74 4a 00    	call   *0x4a741c
41c9d2:	8d 8e b0 00 00 00    	lea    0xb0(%esi),%ecx
41c9d8:	ff 15 1c 74 4a 00    	call   *0x4a741c
41c9de:	8d 8e ac 00 00 00    	lea    0xac(%esi),%ecx
41c9e4:	ff 15 1c 74 4a 00    	call   *0x4a741c
41c9ea:	8d 8e a8 00 00 00    	lea    0xa8(%esi),%ecx
41c9f0:	ff 15 1c 74 4a 00    	call   *0x4a741c
41c9f6:	8d 8e a4 00 00 00    	lea    0xa4(%esi),%ecx
41c9fc:	ff 15 1c 74 4a 00    	call   *0x4a741c
41ca02:	8b ce                	mov    %esi,%ecx
41ca04:	5e                   	pop    %esi
41ca05:	e9 e8 de 04 00       	jmp    0x46a8f2
41ca0a:	68 f8 00 00 00       	push   $0xf8
41ca0f:	b8 7c 15 49 00       	mov    $0x49157c,%eax
41ca14:	e8 ed 3a 07 00       	call   0x490506
41ca19:	8b 1d 2c 47 4a 00    	mov    0x4a472c,%ebx
41ca1f:	8b cb                	mov    %ebx,%ecx
41ca21:	8b 45 08             	mov    0x8(%ebp),%eax
41ca24:	68 01 e8 00 00       	push   $0xe801
41ca29:	68 00 82 00 50       	push   $0x50008200
41ca2e:	50                   	push   %eax
41ca2f:	89 5d 88             	mov    %ebx,-0x78(%ebp)
41ca32:	ff 15 2c 73 4a 00    	call   *0x4a732c
41ca38:	53                   	push   %ebx
41ca39:	8d 8d fc fe ff ff    	lea    -0x104(%ebp),%ecx
41ca3f:	ff 15 d8 76 4a 00    	call   *0x4a76d8
41ca45:	6a 5a                	push   $0x5a
41ca47:	ff b5 04 ff ff ff    	push   -0xfc(%ebp)
41ca4d:	ff 15 64 71 4a 00    	call   *0x4a7164
41ca53:	89 45 84             	mov    %eax,-0x7c(%ebp)
41ca56:	33 ff                	xor    %edi,%edi
41ca58:	db 45 84             	fildl  -0x7c(%ebp)
41ca5b:	57                   	push   %edi
41ca5c:	dd 9d 6c ff ff ff    	fstpl  -0x94(%ebp)
41ca62:	dd 85 6c ff ff ff    	fldl   -0x94(%ebp)
41ca68:	dc 35 90 42 41 00    	fdivl  0x414290
41ca6e:	dc 0d 60 42 41 00    	fmull  0x414260
41ca74:	e8 a8 45 07 00       	call   0x491021
41ca79:	50                   	push   %eax
41ca7a:	68 08 04 00 00       	push   $0x408
41ca7f:	ff 73 20             	push   0x20(%ebx)
41ca82:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
41ca88:	8d 8d fc fe ff ff    	lea    -0x104(%ebp),%ecx
41ca8e:	ff 15 dc 76 4a 00    	call   *0x4a76dc
41ca94:	8b 03                	mov    (%ebx),%eax
41ca96:	6a 06                	push   $0x6
41ca98:	68 04 39 4a 00       	push   $0x4a3904
41ca9d:	8b b0 f0 00 00 00    	mov    0xf0(%eax),%esi
41caa3:	8b ce                	mov    %esi,%ecx
41caa5:	ff 15 2c 81 4a 00    	call   *0x4a812c
41caab:	8b cb                	mov    %ebx,%ecx
41caad:	ff d6                	call   *%esi
41caaf:	8b cb                	mov    %ebx,%ecx
41cab1:	e8 d0 03 00 00       	call   0x41ce86
41cab6:	53                   	push   %ebx
41cab7:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
41caba:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
41cac0:	ff 15 24 74 4a 00    	call   *0x4a7424
41cac6:	6a 58                	push   $0x58
41cac8:	89 7d fc             	mov    %edi,-0x4(%ebp)
41cacb:	ff 75 94             	push   -0x6c(%ebp)
41cace:	ff 15 64 71 4a 00    	call   *0x4a7164
41cad4:	89 45 84             	mov    %eax,-0x7c(%ebp)
41cad7:	db 45 84             	fildl  -0x7c(%ebp)
41cada:	6a 5a                	push   $0x5a
41cadc:	dd 5d 80             	fstpl  -0x80(%ebp)
41cadf:	dd 45 80             	fldl   -0x80(%ebp)
41cae2:	dc 35 90 42 41 00    	fdivl  0x414290
41cae8:	ff 75 94             	push   -0x6c(%ebp)
41caeb:	dd 9d 50 ff ff ff    	fstpl  -0xb0(%ebp)
41caf1:	ff 15 64 71 4a 00    	call   *0x4a7164
41caf7:	89 45 84             	mov    %eax,-0x7c(%ebp)
41cafa:	db 45 84             	fildl  -0x7c(%ebp)
41cafd:	dd 5d 80             	fstpl  -0x80(%ebp)
41cb00:	dd 45 80             	fldl   -0x80(%ebp)
41cb03:	dc 35 90 42 41 00    	fdivl  0x414290
41cb09:	dd 05 40 42 41 00    	fldl   0x414240
41cb0f:	dd 85 50 ff ff ff    	fldl   -0xb0(%ebp)
41cb15:	d8 c9                	fmul   %st(1),%st
41cb17:	e8 05 45 07 00       	call   0x491021
41cb1c:	de c9                	fmulp  %st,%st(1)
41cb1e:	8b d8                	mov    %eax,%ebx
41cb20:	e8 fc 44 07 00       	call   0x491021
41cb25:	57                   	push   %edi
41cb26:	8b f0                	mov    %eax,%esi
41cb28:	ff 15 70 72 4a 00    	call   *0x4a7270
41cb2e:	8b f8                	mov    %eax,%edi
41cb30:	8b 45 88             	mov    -0x78(%ebp),%eax
41cb33:	05 70 03 00 00       	add    $0x370,%eax
41cb38:	50                   	push   %eax
41cb39:	56                   	push   %esi
41cb3a:	53                   	push   %ebx
41cb3b:	68 d6 c3 00 00       	push   $0xc3d6
41cb40:	57                   	push   %edi
41cb41:	ff 15 3c 70 4a 00    	call   *0x4a703c
41cb47:	8b 45 88             	mov    -0x78(%ebp),%eax
41cb4a:	05 74 03 00 00       	add    $0x374,%eax
41cb4f:	50                   	push   %eax
41cb50:	56                   	push   %esi
41cb51:	53                   	push   %ebx
41cb52:	68 d7 c3 00 00       	push   $0xc3d7
41cb57:	57                   	push   %edi
41cb58:	ff 15 3c 70 4a 00    	call   *0x4a703c
41cb5e:	8b 45 88             	mov    -0x78(%ebp),%eax
41cb61:	05 78 03 00 00       	add    $0x378,%eax
41cb66:	50                   	push   %eax
41cb67:	56                   	push   %esi
41cb68:	53                   	push   %ebx
41cb69:	68 d8 c3 00 00       	push   $0xc3d8
41cb6e:	57                   	push   %edi
41cb6f:	ff 15 3c 70 4a 00    	call   *0x4a703c
41cb75:	8b 45 88             	mov    -0x78(%ebp),%eax
41cb78:	05 7c 03 00 00       	add    $0x37c,%eax
41cb7d:	50                   	push   %eax
41cb7e:	56                   	push   %esi
41cb7f:	53                   	push   %ebx
41cb80:	68 d9 c3 00 00       	push   $0xc3d9
41cb85:	57                   	push   %edi
41cb86:	ff 15 3c 70 4a 00    	call   *0x4a703c
41cb8c:	8b 5d 88             	mov    -0x78(%ebp),%ebx
41cb8f:	33 ff                	xor    %edi,%edi
41cb91:	8b f7                	mov    %edi,%esi
41cb93:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
41cb99:	8b cb                	mov    %ebx,%ecx
41cb9b:	50                   	push   %eax
41cb9c:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41cba2:	50                   	push   %eax
41cba3:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
41cba9:	50                   	push   %eax
41cbaa:	56                   	push   %esi
41cbab:	ff 15 2c 74 4a 00    	call   *0x4a742c
41cbb1:	db 85 74 ff ff ff    	fildl  -0x8c(%ebp)
41cbb7:	dd 9d 50 ff ff ff    	fstpl  -0xb0(%ebp)
41cbbd:	dd 85 50 ff ff ff    	fldl   -0xb0(%ebp)
41cbc3:	dc 0d 18 44 41 00    	fmull  0x414418
41cbc9:	e8 53 44 07 00       	call   0x491021
41cbce:	6a 10                	push   $0x10
41cbd0:	59                   	pop    %ecx
41cbd1:	2b c8                	sub    %eax,%ecx
41cbd3:	51                   	push   %ecx
41cbd4:	ff b5 7c ff ff ff    	push   -0x84(%ebp)
41cbda:	8b cb                	mov    %ebx,%ecx
41cbdc:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
41cbe2:	56                   	push   %esi
41cbe3:	ff 15 30 74 4a 00    	call   *0x4a7430
41cbe9:	6a 01                	push   $0x1
41cbeb:	68 80 fa 40 00       	push   $0x40fa80
41cbf0:	56                   	push   %esi
41cbf1:	8b cb                	mov    %ebx,%ecx
41cbf3:	ff 15 34 74 4a 00    	call   *0x4a7434
41cbf9:	46                   	inc    %esi
41cbfa:	83 fe 06             	cmp    $0x6,%esi
41cbfd:	72 94                	jb     0x41cb93
41cbff:	8d 85 74 ff ff ff    	lea    -0x8c(%ebp),%eax
41cc05:	8b cb                	mov    %ebx,%ecx
41cc07:	50                   	push   %eax
41cc08:	8d 85 7c ff ff ff    	lea    -0x84(%ebp),%eax
41cc0e:	50                   	push   %eax
41cc0f:	8d 85 78 ff ff ff    	lea    -0x88(%ebp),%eax
41cc15:	50                   	push   %eax
41cc16:	6a 04                	push   $0x4
41cc18:	ff 15 2c 74 4a 00    	call   *0x4a742c
41cc1e:	8b 85 7c ff ff ff    	mov    -0x84(%ebp),%eax
41cc24:	8b cb                	mov    %ebx,%ecx
41cc26:	57                   	push   %edi
41cc27:	0d 00 00 00 08       	or     $0x8000000,%eax
41cc2c:	50                   	push   %eax
41cc2d:	ff b5 78 ff ff ff    	push   -0x88(%ebp)
41cc33:	6a 04                	push   $0x4
41cc35:	ff 15 30 74 4a 00    	call   *0x4a7430
41cc3b:	ff b3 70 03 00 00    	push   0x370(%ebx)
41cc41:	be 0f 04 00 00       	mov    $0x40f,%esi
41cc46:	57                   	push   %edi
41cc47:	56                   	push   %esi
41cc48:	ff 73 20             	push   0x20(%ebx)
41cc4b:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
41cc51:	ff b3 74 03 00 00    	push   0x374(%ebx)
41cc57:	6a 01                	push   $0x1
41cc59:	56                   	push   %esi
41cc5a:	ff 73 20             	push   0x20(%ebx)
41cc5d:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
41cc63:	ff b3 78 03 00 00    	push   0x378(%ebx)
41cc69:	6a 02                	push   $0x2
41cc6b:	56                   	push   %esi
41cc6c:	ff 73 20             	push   0x20(%ebx)
41cc6f:	ff 15 f8 7d 4a 00    	call   *0x4a7df8
41cc75:	83 ec 0c             	sub    $0xc,%esp
41cc78:	89 7d e0             	mov    %edi,-0x20(%ebp)
41cc7b:	8d 45 e0             	lea    -0x20(%ebp),%eax
41cc7e:	89 7d e4             	mov    %edi,-0x1c(%ebp)
41cc81:	8d 8b b8 00 00 00    	lea    0xb8(%ebx),%ecx
41cc87:	c7 45 e8 c8 00 00 00 	movl   $0xc8,-0x18(%ebp)
41cc8e:	c7 45 ec 19 00 00 00 	movl   $0x19,-0x14(%ebp)
41cc95:	50                   	push   %eax
41cc96:	53                   	push   %ebx
41cc97:	8d 83 a0 00 00 00    	lea    0xa0(%ebx),%eax
41cc9d:	50                   	push   %eax
41cc9e:	e8 52 ea 04 00       	call   0x46b6f5
41cca3:	8b cb                	mov    %ebx,%ecx
41cca5:	e8 bf 03 00 00       	call   0x41d069
41ccaa:	dd 05 60 41 41 00    	fldl   0x414160
41ccb0:	33 c9                	xor    %ecx,%ecx
41ccb2:	dd 9b 50 03 00 00    	fstpl  0x350(%ebx)
41ccb8:	dd 05 28 42 41 00    	fldl   0x414228
41ccbe:	33 d2                	xor    %edx,%edx
41ccc0:	dd 9b 58 03 00 00    	fstpl  0x358(%ebx)
41ccc6:	89 bd 60 ff ff ff    	mov    %edi,-0xa0(%ebp)
41cccc:	89 8d 64 ff ff ff    	mov    %ecx,-0x9c(%ebp)
41ccd2:	89 95 68 ff ff ff    	mov    %edx,-0x98(%ebp)
41ccd8:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
41ccdc:	be 00 00 41 00       	mov    $0x410000,%esi
41cce1:	85 ff                	test   %edi,%edi
41cce3:	74 1f                	je     0x41cd04
41cce5:	8b c1                	mov    %ecx,%eax
41cce7:	2b d7                	sub    %edi,%edx
41cce9:	2b c7                	sub    %edi,%eax
41cceb:	c1 fa 03             	sar    $0x3,%edx
41ccee:	c1 f8 03             	sar    $0x3,%eax
41ccf1:	3b c2                	cmp    %edx,%eax
41ccf3:	73 0f                	jae    0x41cd04
41ccf5:	dd 06                	fldl   (%esi)
41ccf7:	dd 19                	fstpl  (%ecx)
41ccf9:	83 c1 08             	add    $0x8,%ecx
41ccfc:	89 8d 64 ff ff ff    	mov    %ecx,-0x9c(%ebp)
41cd02:	eb 14                	jmp    0x41cd18
41cd04:	56                   	push   %esi
41cd05:	51                   	push   %ecx
41cd06:	51                   	push   %ecx
41cd07:	8d 8d 5c ff ff ff    	lea    -0xa4(%ebp),%ecx
41cd0d:	e8 88 0e 00 00       	call   0x41db9a
41cd12:	8b 8d 64 ff ff ff    	mov    -0x9c(%ebp),%ecx
41cd18:	83 c6 08             	add    $0x8,%esi
41cd1b:	81 fe 58 00 41 00    	cmp    $0x410058,%esi
41cd21:	74 0e                	je     0x41cd31
41cd23:	8b 95 68 ff ff ff    	mov    -0x98(%ebp),%edx
41cd29:	8b bd 60 ff ff ff    	mov    -0xa0(%ebp),%edi
41cd2f:	eb b0                	jmp    0x41cce1
41cd31:	8d b3 b8 00 00 00    	lea    0xb8(%ebx),%esi
41cd37:	8d 96 84 02 00 00    	lea    0x284(%esi),%edx
41cd3d:	8b 42 04             	mov    0x4(%edx),%eax
41cd40:	3b 42 08             	cmp    0x8(%edx),%eax
41cd43:	74 03                	je     0x41cd48
41cd45:	89 42 08             	mov    %eax,0x8(%edx)
41cd48:	ff b5 70 ff ff ff    	push   -0x90(%ebp)
41cd4e:	51                   	push   %ecx
41cd4f:	ff b5 60 ff ff ff    	push   -0xa0(%ebp)
41cd55:	8b ca                	mov    %edx,%ecx
41cd57:	50                   	push   %eax
41cd58:	e8 10 fc 04 00       	call   0x46c96d
41cd5d:	8b ce                	mov    %esi,%ecx
41cd5f:	e8 b8 f8 04 00       	call   0x46c61c
41cd64:	33 ff                	xor    %edi,%edi
41cd66:	89 bd 44 ff ff ff    	mov    %edi,-0xbc(%ebp)
41cd6c:	89 bd 48 ff ff ff    	mov    %edi,-0xb8(%ebp)
41cd72:	89 bd 4c ff ff ff    	mov    %edi,-0xb4(%ebp)
41cd78:	8d 85 58 ff ff ff    	lea    -0xa8(%ebp),%eax
41cd7e:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
41cd82:	50                   	push   %eax
41cd83:	51                   	push   %ecx
41cd84:	57                   	push   %edi
41cd85:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
41cd8b:	89 b5 58 ff ff ff    	mov    %esi,-0xa8(%ebp)
41cd91:	e8 2c 0c 00 00       	call   0x41d9c2
41cd96:	89 bd 14 ff ff ff    	mov    %edi,-0xec(%ebp)
41cd9c:	89 bd 18 ff ff ff    	mov    %edi,-0xe8(%ebp)
41cda2:	89 bd 1c ff ff ff    	mov    %edi,-0xe4(%ebp)
41cda8:	89 bd 24 ff ff ff    	mov    %edi,-0xdc(%ebp)
41cdae:	89 bd 28 ff ff ff    	mov    %edi,-0xd8(%ebp)
41cdb4:	89 bd 2c ff ff ff    	mov    %edi,-0xd4(%ebp)
41cdba:	89 bd 34 ff ff ff    	mov    %edi,-0xcc(%ebp)
41cdc0:	89 bd 38 ff ff ff    	mov    %edi,-0xc8(%ebp)
41cdc6:	89 bd 3c ff ff ff    	mov    %edi,-0xc4(%ebp)
41cdcc:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
41cdd2:	c6 45 fc 05          	movb   $0x5,-0x4(%ebp)
41cdd6:	50                   	push   %eax
41cdd7:	8d 8d 20 ff ff ff    	lea    -0xe0(%ebp),%ecx
41cddd:	e8 ae 10 00 00       	call   0x41de90
41cde2:	8d 85 10 ff ff ff    	lea    -0xf0(%ebp),%eax
41cde8:	50                   	push   %eax
41cde9:	8d 8d 30 ff ff ff    	lea    -0xd0(%ebp),%ecx
41cdef:	e8 9c 10 00 00       	call   0x41de90
41cdf4:	c6 45 fc 06          	movb   $0x6,-0x4(%ebp)
41cdf8:	8d 85 20 ff ff ff    	lea    -0xe0(%ebp),%eax
41cdfe:	8b b3 84 00 00 00    	mov    0x84(%ebx),%esi
41ce04:	50                   	push   %eax
41ce05:	8d 8e a0 00 00 00    	lea    0xa0(%esi),%ecx
41ce0b:	e8 80 10 00 00       	call   0x41de90
41ce10:	8d 85 30 ff ff ff    	lea    -0xd0(%ebp),%eax
41ce16:	50                   	push   %eax
41ce17:	8d 8e b0 00 00 00    	lea    0xb0(%esi),%ecx
41ce1d:	e8 6e 10 00 00       	call   0x41de90
41ce22:	8d 8d 20 ff ff ff    	lea    -0xe0(%ebp),%ecx
41ce28:	e8 38 10 00 00       	call   0x41de65
41ce2d:	8d 8d 10 ff ff ff    	lea    -0xf0(%ebp),%ecx
41ce33:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
41ce37:	e8 d4 0a 00 00       	call   0x41d910
41ce3c:	8b 03                	mov    (%ebx),%eax
41ce3e:	6a 05                	push   $0x5
41ce40:	8b b0 ec 00 00 00    	mov    0xec(%eax),%esi
41ce46:	8b ce                	mov    %esi,%ecx
41ce48:	ff 15 2c 81 4a 00    	call   *0x4a812c
41ce4e:	8b cb                	mov    %ebx,%ecx
41ce50:	ff d6                	call   *%esi
41ce52:	8b cb                	mov    %ebx,%ecx
41ce54:	e8 b0 06 00 00       	call   0x41d509
41ce59:	8d 8d 40 ff ff ff    	lea    -0xc0(%ebp),%ecx
41ce5f:	e8 ac 0a 00 00       	call   0x41d910
41ce64:	8d 8d 5c ff ff ff    	lea    -0xa4(%ebp),%ecx
41ce6a:	e8 a1 0a 00 00       	call   0x41d910
41ce6f:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
41ce72:	ff 15 28 74 4a 00    	call   *0x4a7428
41ce78:	8b 85 70 ff ff ff    	mov    -0x90(%ebp),%eax
41ce7e:	e8 32 36 07 00       	call   0x4904b5
41ce83:	c2 04 00             	ret    $0x4
41ce86:	6a 14                	push   $0x14
41ce88:	b8 a9 15 49 00       	mov    $0x4915a9,%eax
41ce8d:	e8 aa 36 07 00       	call   0x49053c
41ce92:	8b f1                	mov    %ecx,%esi
41ce94:	89 75 ec             	mov    %esi,-0x14(%ebp)
41ce97:	33 db                	xor    %ebx,%ebx
41ce99:	8d 4d e0             	lea    -0x20(%ebp),%ecx
41ce9c:	43                   	inc    %ebx
41ce9d:	ff 15 38 74 4a 00    	call   *0x4a7438
41cea3:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
41cea7:	8d 8e a4 00 00 00    	lea    0xa4(%esi),%ecx
41cead:	68 7b c3 00 00       	push   $0xc37b
41ceb2:	88 5d fc             	mov    %bl,-0x4(%ebp)
41ceb5:	ff 15 40 74 4a 00    	call   *0x4a7440