40c1ad:	8b 04 24             	mov    (%esp),%eax
40c1b0:	8b 00                	mov    (%eax),%eax
40c1b2:	8b 00                	mov    (%eax),%eax
40c1b4:	ff 90 64 01 00 00    	call   *0x164(%eax)
40c1ba:	db 45 0c             	fildl  0xc(%ebp)
40c1bd:	dd 5d e8             	fstpl  -0x18(%ebp)
40c1c0:	dd 45 e8             	fldl   -0x18(%ebp)
40c1c3:	dc 25 4f 3f 4e 00    	fsubl  0x4e3f4f
40c1c9:	dd 5d e0             	fstpl  -0x20(%ebp)
40c1cc:	68 10 00 00 00       	push   $0x10
40c1d1:	e8 c8 43 09 00       	call   0x4a059e
40c1d6:	83 c4 04             	add    $0x4,%esp
40c1d9:	89 45 dc             	mov    %eax,-0x24(%ebp)
40c1dc:	8b d8                	mov    %eax,%ebx
40c1de:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
40c1e4:	c7 43 04 00 00 00 00 	movl   $0x0,0x4(%ebx)
40c1eb:	c7 43 08 00 00 00 00 	movl   $0x0,0x8(%ebx)
40c1f2:	c7 43 0c 00 00 00 00 	movl   $0x0,0xc(%ebx)
40c1f9:	6a 00                	push   $0x0
40c1fb:	8d 45 dc             	lea    -0x24(%ebp),%eax
40c1fe:	50                   	push   %eax
40c1ff:	dd 45 e0             	fldl   -0x20(%ebp)
40c202:	e8 e8 4f ff ff       	call   0x4011ef
40c207:	50                   	push   %eax
40c208:	ff 75 08             	push   0x8(%ebp)
40c20b:	68 ec 00 00 00       	push   $0xec
40c210:	68 00 00 00 00       	push   $0x0
40c215:	e8 09 18 00 00       	call   0x40da23
40c21a:	89 45 d8             	mov    %eax,-0x28(%ebp)
40c21d:	8b 5d dc             	mov    -0x24(%ebp),%ebx
40c220:	53                   	push   %ebx
40c221:	e8 7e 43 09 00       	call   0x4a05a4
40c226:	83 c4 04             	add    $0x4,%esp
40c229:	8b 45 d8             	mov    -0x28(%ebp),%eax
40c22c:	50                   	push   %eax
40c22d:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c230:	53                   	push   %ebx
40c231:	e8 6e 43 09 00       	call   0x4a05a4
40c236:	83 c4 04             	add    $0x4,%esp
40c239:	58                   	pop    %eax
40c23a:	89 45 f8             	mov    %eax,-0x8(%ebp)
40c23d:	8b 1d 44 99 50 00    	mov    0x509944,%ebx
40c243:	e8 ab 74 ff ff       	call   0x4036f3
40c248:	b8 02 00 00 00       	mov    $0x2,%eax
40c24d:	3b c1                	cmp    %ecx,%eax
40c24f:	7c 17                	jl     0x40c268
40c251:	68 4a 0e 00 00       	push   $0xe4a
40c256:	68 25 25 01 04       	push   $0x4012525
40c25b:	68 01 00 00 00       	push   $0x1
40c260:	e8 45 43 09 00       	call   0x4a05aa
40c265:	83 c4 0c             	add    $0xc,%esp
40c268:	c1 e0 02             	shl    $0x2,%eax
40c26b:	03 d8                	add    %eax,%ebx
40c26d:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40c270:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c273:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40c276:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c279:	83 c3 04             	add    $0x4,%ebx
40c27c:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
40c27f:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c282:	83 c3 08             	add    $0x8,%ebx
40c285:	89 5d e0             	mov    %ebx,-0x20(%ebp)
40c288:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c28b:	83 c3 0c             	add    $0xc,%ebx
40c28e:	89 5d dc             	mov    %ebx,-0x24(%ebp)
40c291:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
40c298:	6a 00                	push   $0x0
40c29a:	ff 75 d8             	push   -0x28(%ebp)
40c29d:	8b 5d dc             	mov    -0x24(%ebp),%ebx
40c2a0:	d9 03                	flds   (%ebx)
40c2a2:	e8 48 4f ff ff       	call   0x4011ef
40c2a7:	50                   	push   %eax
40c2a8:	8b 5d e0             	mov    -0x20(%ebp),%ebx
40c2ab:	d9 03                	flds   (%ebx)
40c2ad:	e8 3d 4f ff ff       	call   0x4011ef
40c2b2:	50                   	push   %eax
40c2b3:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
40c2b6:	d9 03                	flds   (%ebx)
40c2b8:	e8 32 4f ff ff       	call   0x4011ef
40c2bd:	50                   	push   %eax
40c2be:	8b 5d e8             	mov    -0x18(%ebp),%ebx
40c2c1:	d9 03                	flds   (%ebx)
40c2c3:	e8 27 4f ff ff       	call   0x4011ef
40c2c8:	50                   	push   %eax
40c2c9:	ff 35 38 99 50 00    	push   0x509938
40c2cf:	ff 75 ec             	push   -0x14(%ebp)
40c2d2:	8b 04 24             	mov    (%esp),%eax
40c2d5:	8b 00                	mov    (%eax),%eax
40c2d7:	8b 00                	mov    (%eax),%eax
40c2d9:	ff 90 70 01 00 00    	call   *0x170(%eax)
40c2df:	89 45 f4             	mov    %eax,-0xc(%ebp)
40c2e2:	8b 1d 48 99 50 00    	mov    0x509948,%ebx
40c2e8:	e8 06 74 ff ff       	call   0x4036f3
40c2ed:	b8 06 00 00 00       	mov    $0x6,%eax
40c2f2:	3b c1                	cmp    %ecx,%eax
40c2f4:	7c 17                	jl     0x40c30d
40c2f6:	68 c3 0e 00 00       	push   $0xec3
40c2fb:	68 25 25 01 04       	push   $0x4012525
40c300:	68 01 00 00 00       	push   $0x1
40c305:	e8 a0 42 09 00       	call   0x4a05aa
40c30a:	83 c4 0c             	add    $0xc,%esp
40c30d:	c1 e0 02             	shl    $0x2,%eax
40c310:	03 d8                	add    %eax,%ebx
40c312:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40c315:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c318:	83 c3 08             	add    $0x8,%ebx
40c31b:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40c31e:	8b 5d fc             	mov    -0x4(%ebp),%ebx
40c321:	e8 cd 73 ff ff       	call   0x4036f3
40c326:	b8 06 00 00 00       	mov    $0x6,%eax
40c32b:	3b c1                	cmp    %ecx,%eax
40c32d:	7c 17                	jl     0x40c346
40c32f:	68 0b 0f 00 00       	push   $0xf0b
40c334:	68 25 25 01 04       	push   $0x4012525
40c339:	68 01 00 00 00       	push   $0x1
40c33e:	e8 67 42 09 00       	call   0x4a05aa
40c343:	83 c4 0c             	add    $0xc,%esp
40c346:	c1 e0 02             	shl    $0x2,%eax
40c349:	03 d8                	add    %eax,%ebx
40c34b:	89 5d e4             	mov    %ebx,-0x1c(%ebp)
40c34e:	c7 45 e0 00 00 00 00 	movl   $0x0,-0x20(%ebp)
40c355:	6a 00                	push   $0x0
40c357:	ff 75 e0             	push   -0x20(%ebp)
40c35a:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
40c361:	6a 00                	push   $0x0
40c363:	ff 75 dc             	push   -0x24(%ebp)
40c366:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
40c36d:	6a 00                	push   $0x0
40c36f:	ff 75 d8             	push   -0x28(%ebp)
40c372:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
40c379:	6a 00                	push   $0x0
40c37b:	8d 45 d4             	lea    -0x2c(%ebp),%eax
40c37e:	50                   	push   %eax
40c37f:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
40c386:	6a 00                	push   $0x0
40c388:	ff 75 d0             	push   -0x30(%ebp)
40c38b:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
40c392:	6a 00                	push   $0x0
40c394:	ff 75 cc             	push   -0x34(%ebp)
40c397:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
40c39e:	6a 00                	push   $0x0
40c3a0:	ff 75 c8             	push   -0x38(%ebp)
40c3a3:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
40c3aa:	6a 00                	push   $0x0
40c3ac:	ff 75 c4             	push   -0x3c(%ebp)
40c3af:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
40c3b6:	6a 00                	push   $0x0
40c3b8:	ff 75 c0             	push   -0x40(%ebp)
40c3bb:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
40c3c2:	6a 00                	push   $0x0
40c3c4:	ff 75 bc             	push   -0x44(%ebp)
40c3c7:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
40c3ce:	6a 00                	push   $0x0
40c3d0:	ff 75 b8             	push   -0x48(%ebp)
40c3d3:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
40c3da:	6a 00                	push   $0x0
40c3dc:	ff 75 b4             	push   -0x4c(%ebp)
40c3df:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
40c3e6:	6a 00                	push   $0x0
40c3e8:	8d 45 b0             	lea    -0x50(%ebp),%eax
40c3eb:	50                   	push   %eax
40c3ec:	c7 45 ac 00 00 00 00 	movl   $0x0,-0x54(%ebp)
40c3f3:	6a 00                	push   $0x0
40c3f5:	ff 75 ac             	push   -0x54(%ebp)
40c3f8:	c7 45 a8 00 00 00 00 	movl   $0x0,-0x58(%ebp)
40c3ff:	6a 00                	push   $0x0
40c401:	ff 75 a8             	push   -0x58(%ebp)
40c404:	6a 01                	push   $0x1
40c406:	ff 75 e4             	push   -0x1c(%ebp)
40c409:	68 37 00 00 00       	push   $0x37
40c40e:	8b 5d e8             	mov    -0x18(%ebp),%ebx
40c411:	d9 03                	flds   (%ebx)
40c413:	e8 d7 4d ff ff       	call   0x4011ef
40c418:	50                   	push   %eax
40c419:	68 05 00 00 00       	push   $0x5
40c41e:	68 00 00 00 00       	push   $0x0
40c423:	ff 75 f4             	push   -0xc(%ebp)
40c426:	ff 75 ec             	push   -0x14(%ebp)
40c429:	8b 04 24             	mov    (%esp),%eax
40c42c:	8b 00                	mov    (%eax),%eax
40c42e:	8b 00                	mov    (%eax),%eax
40c430:	ff 90 5c 02 00 00    	call   *0x25c(%eax)
40c436:	8b 5d b0             	mov    -0x50(%ebp),%ebx
40c439:	85 db                	test   %ebx,%ebx
40c43b:	74 09                	je     0x40c446
40c43d:	53                   	push   %ebx
40c43e:	e8 61 41 09 00       	call   0x4a05a4
40c443:	83 c4 04             	add    $0x4,%esp
40c446:	8b 5d d4             	mov    -0x2c(%ebp),%ebx
40c449:	85 db                	test   %ebx,%ebx
40c44b:	74 09                	je     0x40c456
40c44d:	53                   	push   %ebx
40c44e:	e8 51 41 09 00       	call   0x4a05a4
40c453:	83 c4 04             	add    $0x4,%esp
40c456:	8b 1d 4c 99 50 00    	mov    0x50994c,%ebx
40c45c:	e8 92 72 ff ff       	call   0x4036f3
40c461:	b8 02 00 00 00       	mov    $0x2,%eax
40c466:	3b c1                	cmp    %ecx,%eax
40c468:	7c 17                	jl     0x40c481
40c46a:	68 78 10 00 00       	push   $0x1078
40c46f:	68 25 25 01 04       	push   $0x4012525
40c474:	68 01 00 00 00       	push   $0x1
40c479:	e8 2c 41 09 00       	call   0x4a05aa
40c47e:	83 c4 0c             	add    $0xc,%esp
40c481:	c1 e0 02             	shl    $0x2,%eax
40c484:	03 d8                	add    %eax,%ebx
40c486:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40c489:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c48c:	83 c3 08             	add    $0x8,%ebx
40c48f:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40c492:	8b 5d e8             	mov    -0x18(%ebp),%ebx
40c495:	d9 03                	flds   (%ebx)
40c497:	dc 25 6a bb 4c 00    	fsubl  0x4cbb6a
40c49d:	dd 5d e0             	fstpl  -0x20(%ebp)
40c4a0:	b8 60 3f 4e 00       	mov    $0x4e3f60,%eax
40c4a5:	89 45 dc             	mov    %eax,-0x24(%ebp)
40c4a8:	8d 45 dc             	lea    -0x24(%ebp),%eax
40c4ab:	50                   	push   %eax
40c4ac:	68 2e 00 00 00       	push   $0x2e
40c4b1:	dd 45 e0             	fldl   -0x20(%ebp)
40c4b4:	e8 36 4d ff ff       	call   0x4011ef
40c4b9:	50                   	push   %eax
40c4ba:	68 ed 00 00 00       	push   $0xed
40c4bf:	68 1e 00 00 00       	push   $0x1e
40c4c4:	ff 75 f4             	push   -0xc(%ebp)
40c4c7:	ff 75 ec             	push   -0x14(%ebp)
40c4ca:	8b 04 24             	mov    (%esp),%eax
40c4cd:	8b 00                	mov    (%eax),%eax
40c4cf:	8b 00                	mov    (%eax),%eax
40c4d1:	ff 90 70 01 00 00    	call   *0x170(%eax)
40c4d7:	8b 5d dc             	mov    -0x24(%ebp),%ebx
40c4da:	85 db                	test   %ebx,%ebx
40c4dc:	74 09                	je     0x40c4e7
40c4de:	53                   	push   %ebx
40c4df:	e8 c0 40 09 00       	call   0x4a05a4
40c4e4:	83 c4 04             	add    $0x4,%esp
40c4e7:	8b 1d 50 99 50 00    	mov    0x509950,%ebx
40c4ed:	e8 01 72 ff ff       	call   0x4036f3
40c4f2:	b8 04 00 00 00       	mov    $0x4,%eax
40c4f7:	3b c1                	cmp    %ecx,%eax
40c4f9:	7c 17                	jl     0x40c512
40c4fb:	68 5f 11 00 00       	push   $0x115f
40c500:	68 25 25 01 04       	push   $0x4012525
40c505:	68 01 00 00 00       	push   $0x1
40c50a:	e8 9b 40 09 00       	call   0x4a05aa
40c50f:	83 c4 0c             	add    $0xc,%esp
40c512:	c1 e0 02             	shl    $0x2,%eax
40c515:	03 d8                	add    %eax,%ebx
40c517:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40c51a:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c51d:	83 c3 0c             	add    $0xc,%ebx
40c520:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40c523:	8b 5d e8             	mov    -0x18(%ebp),%ebx
40c526:	d9 03                	flds   (%ebx)
40c528:	dc 25 1c 3f 4e 00    	fsubl  0x4e3f1c
40c52e:	dd 5d e0             	fstpl  -0x20(%ebp)
40c531:	c7 45 dc 00 00 00 00 	movl   $0x0,-0x24(%ebp)
40c538:	6a 00                	push   $0x0
40c53a:	ff 75 dc             	push   -0x24(%ebp)
40c53d:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
40c544:	6a 00                	push   $0x0
40c546:	ff 75 d8             	push   -0x28(%ebp)
40c549:	c7 45 d4 00 00 00 00 	movl   $0x0,-0x2c(%ebp)
40c550:	6a 00                	push   $0x0
40c552:	ff 75 d4             	push   -0x2c(%ebp)
40c555:	c7 45 d0 00 00 00 00 	movl   $0x0,-0x30(%ebp)
40c55c:	6a 00                	push   $0x0
40c55e:	ff 75 d0             	push   -0x30(%ebp)
40c561:	c7 45 cc 00 00 00 00 	movl   $0x0,-0x34(%ebp)
40c568:	6a 00                	push   $0x0
40c56a:	ff 75 cc             	push   -0x34(%ebp)
40c56d:	c7 45 c8 00 00 00 00 	movl   $0x0,-0x38(%ebp)
40c574:	6a 00                	push   $0x0
40c576:	ff 75 c8             	push   -0x38(%ebp)
40c579:	c7 45 c4 00 00 00 00 	movl   $0x0,-0x3c(%ebp)
40c580:	6a 00                	push   $0x0
40c582:	ff 75 c4             	push   -0x3c(%ebp)
40c585:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
40c58c:	6a 00                	push   $0x0
40c58e:	ff 75 c0             	push   -0x40(%ebp)
40c591:	c7 45 bc 00 00 00 00 	movl   $0x0,-0x44(%ebp)
40c598:	6a 00                	push   $0x0
40c59a:	8d 45 bc             	lea    -0x44(%ebp),%eax
40c59d:	50                   	push   %eax
40c59e:	c7 45 b8 00 00 00 00 	movl   $0x0,-0x48(%ebp)
40c5a5:	6a 00                	push   $0x0
40c5a7:	ff 75 b8             	push   -0x48(%ebp)
40c5aa:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
40c5b1:	6a 00                	push   $0x0
40c5b3:	ff 75 b4             	push   -0x4c(%ebp)
40c5b6:	c7 45 b0 00 00 00 00 	movl   $0x0,-0x50(%ebp)
40c5bd:	6a 00                	push   $0x0
40c5bf:	ff 75 b0             	push   -0x50(%ebp)
40c5c2:	c7 45 ac 00 00 00 00 	movl   $0x0,-0x54(%ebp)
40c5c9:	6a 00                	push   $0x0
40c5cb:	ff 75 ac             	push   -0x54(%ebp)
40c5ce:	c7 45 a8 00 00 00 00 	movl   $0x0,-0x58(%ebp)
40c5d5:	6a 00                	push   $0x0
40c5d7:	ff 75 a8             	push   -0x58(%ebp)
40c5da:	c7 45 a4 00 00 00 00 	movl   $0x0,-0x5c(%ebp)
40c5e1:	6a 00                	push   $0x0
40c5e3:	ff 75 a4             	push   -0x5c(%ebp)
40c5e6:	6a 01                	push   $0x1
40c5e8:	b8 57 3f 4e 00       	mov    $0x4e3f57,%eax
40c5ed:	89 45 a0             	mov    %eax,-0x60(%ebp)
40c5f0:	8d 45 a0             	lea    -0x60(%ebp),%eax
40c5f3:	50                   	push   %eax
40c5f4:	68 32 00 00 00       	push   $0x32
40c5f9:	68 3c 00 00 00       	push   $0x3c
40c5fe:	dd 45 e0             	fldl   -0x20(%ebp)
40c601:	e8 e9 4b ff ff       	call   0x4011ef
40c606:	50                   	push   %eax
40c607:	68 1c 00 00 00       	push   $0x1c
40c60c:	ff 75 f4             	push   -0xc(%ebp)
40c60f:	ff 75 ec             	push   -0x14(%ebp)
40c612:	8b 04 24             	mov    (%esp),%eax
40c615:	8b 00                	mov    (%eax),%eax
40c617:	8b 00                	mov    (%eax),%eax
40c619:	ff 90 74 01 00 00    	call   *0x174(%eax)
40c61f:	8b 5d a0             	mov    -0x60(%ebp),%ebx
40c622:	85 db                	test   %ebx,%ebx
40c624:	74 09                	je     0x40c62f
40c626:	53                   	push   %ebx
40c627:	e8 78 3f 09 00       	call   0x4a05a4
40c62c:	83 c4 04             	add    $0x4,%esp
40c62f:	8b 5d bc             	mov    -0x44(%ebp),%ebx
40c632:	85 db                	test   %ebx,%ebx
40c634:	74 09                	je     0x40c63f
40c636:	53                   	push   %ebx
40c637:	e8 68 3f 09 00       	call   0x4a05a4
40c63c:	83 c4 04             	add    $0x4,%esp
40c63f:	8b 1d 50 99 50 00    	mov    0x509950,%ebx
40c645:	e8 a9 70 ff ff       	call   0x4036f3
40c64a:	b8 05 00 00 00       	mov    $0x5,%eax
40c64f:	3b c1                	cmp    %ecx,%eax
40c651:	7c 17                	jl     0x40c66a
40c653:	68 d9 11 00 00       	push   $0x11d9
40c658:	68 25 25 01 04       	push   $0x4012525
40c65d:	68 01 00 00 00       	push   $0x1
40c662:	e8 43 3f 09 00       	call   0x4a05aa
40c667:	83 c4 0c             	add    $0xc,%esp
40c66a:	c1 e0 02             	shl    $0x2,%eax
40c66d:	03 d8                	add    %eax,%ebx
40c66f:	89 5d ec             	mov    %ebx,-0x14(%ebp)
40c672:	8b 5d f8             	mov    -0x8(%ebp),%ebx
40c675:	83 c3 08             	add    $0x8,%ebx
40c678:	89 5d e8             	mov    %ebx,-0x18(%ebp)
40c67b:	8b 5d e8             	mov    -0x18(%ebp),%ebx
40c67e:	d9 03                	flds   (%ebx)
40c680:	dc 25 29 3f 4e 00    	fsubl  0x4e3f29