431426:	7e 76                	jle    0x43149e
431428:	85 ff                	test   %edi,%edi
43142a:	7e 72                	jle    0x43149e
43142c:	89 74 24 10          	mov    %esi,0x10(%esp)
431430:	db 44 24 10          	fildl  0x10(%esp)
431434:	89 7c 24 14          	mov    %edi,0x14(%esp)
431438:	db 44 24 14          	fildl  0x14(%esp)
43143c:	de f9                	fdivrp %st,%st(1)
43143e:	dd 5c 24 08          	fstpl  0x8(%esp)
431442:	9b                   	fwait
431443:	3b fe                	cmp    %esi,%edi
431445:	7d 2c                	jge    0x431473
431447:	8b 34 24             	mov    (%esp),%esi
43144a:	db 04 24             	fildl  (%esp)
43144d:	dc 74 24 08          	fdivl  0x8(%esp)
431451:	e8 7a 16 fd ff       	call   0x402ad0
431456:	8b f8                	mov    %eax,%edi
431458:	3b 7c 24 04          	cmp    0x4(%esp),%edi
43145c:	7e 47                	jle    0x4314a5
43145e:	8b 7c 24 04          	mov    0x4(%esp),%edi
431462:	db 44 24 04          	fildl  0x4(%esp)
431466:	dc 4c 24 08          	fmull  0x8(%esp)
43146a:	e8 61 16 fd ff       	call   0x402ad0
43146f:	8b f0                	mov    %eax,%esi
431471:	eb 32                	jmp    0x4314a5
431473:	8b 7c 24 04          	mov    0x4(%esp),%edi
431477:	db 44 24 04          	fildl  0x4(%esp)
43147b:	dc 4c 24 08          	fmull  0x8(%esp)
43147f:	e8 4c 16 fd ff       	call   0x402ad0
431484:	8b f0                	mov    %eax,%esi
431486:	3b 34 24             	cmp    (%esp),%esi
431489:	7e 1a                	jle    0x4314a5
43148b:	8b 34 24             	mov    (%esp),%esi
43148e:	db 04 24             	fildl  (%esp)
431491:	dc 74 24 08          	fdivl  0x8(%esp)
431495:	e8 36 16 fd ff       	call   0x402ad0
43149a:	8b f8                	mov    %eax,%edi
43149c:	eb 07                	jmp    0x4314a5
43149e:	8b 34 24             	mov    (%esp),%esi
4314a1:	8b 7c 24 04          	mov    0x4(%esp),%edi
4314a5:	33 c0                	xor    %eax,%eax
4314a7:	89 45 00             	mov    %eax,0x0(%ebp)
4314aa:	33 c0                	xor    %eax,%eax
4314ac:	89 45 04             	mov    %eax,0x4(%ebp)
4314af:	89 75 08             	mov    %esi,0x8(%ebp)
4314b2:	89 7d 0c             	mov    %edi,0xc(%ebp)
4314b5:	80 bb 79 01 00 00 00 	cmpb   $0x0,0x179(%ebx)
4314bc:	74 22                	je     0x4314e0
4314be:	8b 44 24 04          	mov    0x4(%esp),%eax
4314c2:	2b c7                	sub    %edi,%eax
4314c4:	d1 f8                	sar    $1,%eax
4314c6:	79 03                	jns    0x4314cb
4314c8:	83 d0 00             	adc    $0x0,%eax
4314cb:	50                   	push   %eax
4314cc:	8b 44 24 04          	mov    0x4(%esp),%eax
4314d0:	2b c6                	sub    %esi,%eax
4314d2:	d1 f8                	sar    $1,%eax
4314d4:	79 03                	jns    0x4314d9
4314d6:	83 d0 00             	adc    $0x0,%eax
4314d9:	50                   	push   %eax
4314da:	55                   	push   %ebp
4314db:	e8 64 55 fd ff       	call   0x406a44
4314e0:	83 c4 18             	add    $0x18,%esp
4314e3:	5d                   	pop    %ebp
4314e4:	5f                   	pop    %edi
4314e5:	5e                   	pop    %esi
4314e6:	5b                   	pop    %ebx
4314e7:	c3                   	ret
4314e8:	55                   	push   %ebp
4314e9:	8b ec                	mov    %esp,%ebp
4314eb:	83 c4 e8             	add    $0xffffffe8,%esp
4314ee:	53                   	push   %ebx
4314ef:	89 45 fc             	mov    %eax,-0x4(%ebp)
4314f2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4314f5:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
4314f9:	74 36                	je     0x431531
4314fb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4314fe:	8b 98 60 01 00 00    	mov    0x160(%eax),%ebx
431504:	8b 43 10             	mov    0x10(%ebx),%eax
431507:	b2 01                	mov    $0x1,%dl
431509:	e8 fe 2e ff ff       	call   0x42440c
43150e:	8b 43 14             	mov    0x14(%ebx),%eax
431511:	b2 01                	mov    $0x1,%dl
431513:	e8 14 32 ff ff       	call   0x42472c
431518:	8b 45 fc             	mov    -0x4(%ebp),%eax
43151b:	8b 40 48             	mov    0x48(%eax),%eax
43151e:	50                   	push   %eax
43151f:	8b 45 fc             	mov    -0x4(%ebp),%eax
431522:	8b 40 4c             	mov    0x4c(%eax),%eax
431525:	50                   	push   %eax
431526:	33 c9                	xor    %ecx,%ecx
431528:	33 d2                	xor    %edx,%edx
43152a:	8b c3                	mov    %ebx,%eax
43152c:	e8 83 35 ff ff       	call   0x424ab4
431531:	8b 45 fc             	mov    -0x4(%ebp),%eax
431534:	8a 80 7c 01 00 00    	mov    0x17c(%eax),%al
43153a:	88 45 fb             	mov    %al,-0x5(%ebp)
43153d:	8b 45 fc             	mov    -0x4(%ebp),%eax
431540:	c6 80 7c 01 00 00 01 	movb   $0x1,0x17c(%eax)
431547:	33 c0                	xor    %eax,%eax
431549:	55                   	push   %ebp
43154a:	68 99 15 43 00       	push   $0x431599
43154f:	64 ff 30             	push   %fs:(%eax)
431552:	64 89 20             	mov    %esp,%fs:(%eax)
431555:	8b 45 fc             	mov    -0x4(%ebp),%eax
431558:	8b 98 60 01 00 00    	mov    0x160(%eax),%ebx
43155e:	8d 55 e8             	lea    -0x18(%ebp),%edx
431561:	8b 45 fc             	mov    -0x4(%ebp),%eax
431564:	e8 53 fe ff ff       	call   0x4313bc
431569:	8d 55 e8             	lea    -0x18(%ebp),%edx
43156c:	8b 45 fc             	mov    -0x4(%ebp),%eax
43156f:	8b 80 68 01 00 00    	mov    0x168(%eax),%eax
431575:	8b 48 0c             	mov    0xc(%eax),%ecx
431578:	8b c3                	mov    %ebx,%eax
43157a:	e8 7d 35 ff ff       	call   0x424afc
43157f:	33 c0                	xor    %eax,%eax
431581:	5a                   	pop    %edx
431582:	59                   	pop    %ecx
431583:	59                   	pop    %ecx
431584:	64 89 10             	mov    %edx,%fs:(%eax)
431587:	68 a0 15 43 00       	push   $0x4315a0
43158c:	8b 45 fc             	mov    -0x4(%ebp),%eax
43158f:	8a 55 fb             	mov    -0x5(%ebp),%dl
431592:	88 90 7c 01 00 00    	mov    %dl,0x17c(%eax)
431598:	c3                   	ret
431599:	e9 b6 24 fd ff       	jmp    0x403a54
43159e:	eb ec                	jmp    0x43158c
4315a0:	5b                   	pop    %ebx
4315a1:	8b e5                	mov    %ebp,%esp
4315a3:	5d                   	pop    %ebp
4315a4:	c3                   	ret
4315a5:	8d 40 00             	lea    0x0(%eax),%eax
4315a8:	53                   	push   %ebx
4315a9:	56                   	push   %esi
4315aa:	57                   	push   %edi
4315ab:	55                   	push   %ebp
4315ac:	8b e8                	mov    %eax,%ebp
4315ae:	33 db                	xor    %ebx,%ebx
4315b0:	8b 85 68 01 00 00    	mov    0x168(%ebp),%eax
4315b6:	8b 70 0c             	mov    0xc(%eax),%esi
4315b9:	80 7d 57 00          	cmpb   $0x0,0x57(%ebp)
4315bd:	74 79                	je     0x431638
4315bf:	f6 45 1c 01          	testb  $0x1,0x1c(%ebp)
4315c3:	75 73                	jne    0x431638
4315c5:	85 f6                	test   %esi,%esi
4315c7:	74 6f                	je     0x431638
4315c9:	80 7e 22 00          	cmpb   $0x0,0x22(%esi)
4315cd:	74 69                	je     0x431638
4315cf:	8b c6                	mov    %esi,%eax
4315d1:	8b 10                	mov    (%eax),%edx
4315d3:	ff 52 24             	call   *0x24(%edx)
4315d6:	85 c0                	test   %eax,%eax
4315d8:	75 06                	jne    0x4315e0
4315da:	c6 46 22 00          	movb   $0x0,0x22(%esi)
4315de:	eb 58                	jmp    0x431638
4315e0:	8b c5                	mov    %ebp,%eax
4315e2:	e8 9d c5 02 00       	call   0x45db84
4315e7:	8b f8                	mov    %eax,%edi
4315e9:	85 ff                	test   %edi,%edi
4315eb:	74 4b                	je     0x431638
4315ed:	80 bf 2e 02 00 00 00 	cmpb   $0x0,0x22e(%edi)
4315f4:	74 42                	je     0x431638
4315f6:	8b c7                	mov    %edi,%eax
4315f8:	e8 e3 c0 01 00       	call   0x44d6e0
4315fd:	84 c0                	test   %al,%al
4315ff:	74 37                	je     0x431638
431601:	80 bd 7c 01 00 00 00 	cmpb   $0x0,0x17c(%ebp)
431608:	74 12                	je     0x43161c
43160a:	6a 00                	push   $0x0
43160c:	33 c9                	xor    %ecx,%ecx
43160e:	ba 0f 03 00 00       	mov    $0x30f,%edx
431613:	8b c7                	mov    %edi,%eax
431615:	e8 8e 67 01 00       	call   0x447da8
43161a:	eb 16                	jmp    0x431632
43161c:	6a 00                	push   $0x0
43161e:	6a 00                	push   $0x0
431620:	68 0f 03 00 00       	push   $0x30f
431625:	8b c7                	mov    %edi,%eax
431627:	e8 b0 bd 01 00       	call   0x44d3dc
43162c:	50                   	push   %eax
43162d:	e8 22 54 fd ff       	call   0x406a54
431632:	b3 01                	mov    $0x1,%bl
431634:	c6 46 22 00          	movb   $0x0,0x22(%esi)
431638:	8b c3                	mov    %ebx,%eax
43163a:	5d                   	pop    %ebp
43163b:	5f                   	pop    %edi
43163c:	5e                   	pop    %esi
43163d:	5b                   	pop    %ebx
43163e:	c3                   	ret
43163f:	90                   	nop
431640:	55                   	push   %ebp
431641:	8b ec                	mov    %esp,%ebp
431643:	51                   	push   %ecx
431644:	53                   	push   %ebx
431645:	56                   	push   %esi
431646:	57                   	push   %edi
431647:	88 4d ff             	mov    %cl,-0x1(%ebp)
43164a:	8b fa                	mov    %edx,%edi
43164c:	8b f0                	mov    %eax,%esi
43164e:	8b 5d 10             	mov    0x10(%ebp),%ebx
431651:	84 9e 7a 01 00 00    	test   %bl,0x17a(%esi)
431657:	74 21                	je     0x43167a
431659:	8b c6                	mov    %esi,%eax
43165b:	e8 48 ff ff ff       	call   0x4315a8
431660:	84 c0                	test   %al,%al
431662:	74 0c                	je     0x431670
431664:	8b c6                	mov    %esi,%eax
431666:	8b 10                	mov    (%eax),%edx
431668:	ff 92 88 00 00 00    	call   *0x88(%edx)
43166e:	eb 0a                	jmp    0x43167a
431670:	8b c6                	mov    %esi,%eax
431672:	8b 10                	mov    (%eax),%edx
431674:	ff 92 8c 00 00 00    	call   *0x8c(%edx)
43167a:	66 83 be 72 01 00 00 	cmpw   $0x0,0x172(%esi)
431681:	00
431682:	74 1e                	je     0x4316a2
431684:	8a 45 14             	mov    0x14(%ebp),%al
431687:	50                   	push   %eax
431688:	53                   	push   %ebx
431689:	8b 45 0c             	mov    0xc(%ebp),%eax
43168c:	50                   	push   %eax
43168d:	8b 45 08             	mov    0x8(%ebp),%eax
431690:	50                   	push   %eax
431691:	8a 4d ff             	mov    -0x1(%ebp),%cl
431694:	8b d7                	mov    %edi,%edx
431696:	8b 86 74 01 00 00    	mov    0x174(%esi),%eax
43169c:	ff 96 70 01 00 00    	call   *0x170(%esi)
4316a2:	5f                   	pop    %edi
4316a3:	5e                   	pop    %esi
4316a4:	5b                   	pop    %ebx
4316a5:	59                   	pop    %ecx
4316a6:	5d                   	pop    %ebp
4316a7:	c2 10 00             	ret    $0x10
4316aa:	8b c0                	mov    %eax,%eax
4316ac:	3a 90 79 01 00 00    	cmp    0x179(%eax),%dl
4316b2:	74 0d                	je     0x4316c1
4316b4:	88 90 79 01 00 00    	mov    %dl,0x179(%eax)
4316ba:	8b d0                	mov    %eax,%edx
4316bc:	e8 5b 00 00 00       	call   0x43171c
4316c1:	c3                   	ret
4316c2:	8b c0                	mov    %eax,%eax
4316c4:	56                   	push   %esi
4316c5:	8b f0                	mov    %eax,%esi
4316c7:	8b 86 68 01 00 00    	mov    0x168(%esi),%eax
4316cd:	8b 08                	mov    (%eax),%ecx
4316cf:	ff 51 08             	call   *0x8(%ecx)
4316d2:	5e                   	pop    %esi
4316d3:	c3                   	ret
4316d4:	3a 90 78 01 00 00    	cmp    0x178(%eax),%dl
4316da:	74 0d                	je     0x4316e9
4316dc:	88 90 78 01 00 00    	mov    %dl,0x178(%eax)
4316e2:	8b d0                	mov    %eax,%edx
4316e4:	e8 33 00 00 00       	call   0x43171c
4316e9:	c3                   	ret
4316ea:	8b c0                	mov    %eax,%eax
4316ec:	3a 90 7b 01 00 00    	cmp    0x17b(%eax),%dl
4316f2:	74 0d                	je     0x431701
4316f4:	88 90 7b 01 00 00    	mov    %dl,0x17b(%eax)
4316fa:	8b d0                	mov    %eax,%edx
4316fc:	e8 1b 00 00 00       	call   0x43171c
431701:	c3                   	ret
431702:	8b c0                	mov    %eax,%eax
431704:	3a 90 7d 01 00 00    	cmp    0x17d(%eax),%dl
43170a:	74 0d                	je     0x431719
43170c:	88 90 7d 01 00 00    	mov    %dl,0x17d(%eax)
431712:	8b d0                	mov    %eax,%edx
431714:	e8 03 00 00 00       	call   0x43171c
431719:	c3                   	ret
43171a:	8b c0                	mov    %eax,%eax
43171c:	53                   	push   %ebx
43171d:	56                   	push   %esi
43171e:	83 c4 f0             	add    $0xfffffff0,%esp
431721:	8b d8                	mov    %eax,%ebx
431723:	80 7b 5c 00          	cmpb   $0x0,0x5c(%ebx)
431727:	74 46                	je     0x43176f
431729:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
43172f:	e8 34 5c ff ff       	call   0x427368
431734:	85 c0                	test   %eax,%eax
431736:	7e 37                	jle    0x43176f
431738:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
43173e:	e8 3d 5c ff ff       	call   0x427380
431743:	85 c0                	test   %eax,%eax
431745:	7e 28                	jle    0x43176f
431747:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
43174d:	e8 16 5c ff ff       	call   0x427368
431752:	50                   	push   %eax
431753:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
431759:	e8 22 5c ff ff       	call   0x427380
43175e:	50                   	push   %eax
43175f:	8b 4b 44             	mov    0x44(%ebx),%ecx
431762:	8b 53 40             	mov    0x40(%ebx),%edx
431765:	8b c3                	mov    %ebx,%eax
431767:	8b 30                	mov    (%eax),%esi
431769:	ff 96 84 00 00 00    	call   *0x84(%esi)
43176f:	8b 83 68 01 00 00    	mov    0x168(%ebx),%eax
431775:	8b 70 0c             	mov    0xc(%eax),%esi
431778:	85 f6                	test   %esi,%esi
43177a:	0f 84 9c 00 00 00    	je     0x43181c
431780:	8b c6                	mov    %esi,%eax
431782:	8b 15 58 2d 42 00    	mov    0x422d58,%edx
431788:	e8 bf 1c fd ff       	call   0x40344c
43178d:	84 c0                	test   %al,%al
43178f:	75 1e                	jne    0x4317af
431791:	8b c6                	mov    %esi,%eax
431793:	8b 15 dc 2f 42 00    	mov    0x422fdc,%edx
431799:	e8 ae 1c fd ff       	call   0x40344c
43179e:	84 c0                	test   %al,%al
4317a0:	75 0d                	jne    0x4317af
4317a2:	8a 93 7b 01 00 00    	mov    0x17b(%ebx),%dl
4317a8:	8b c6                	mov    %esi,%eax
4317aa:	8b 08                	mov    (%eax),%ecx
4317ac:	ff 51 3c             	call   *0x3c(%ecx)
4317af:	8b d4                	mov    %esp,%edx
4317b1:	8b c3                	mov    %ebx,%eax
4317b3:	e8 04 fc ff ff       	call   0x4313bc
4317b8:	8b c6                	mov    %esi,%eax
4317ba:	8b 10                	mov    (%eax),%edx
4317bc:	ff 52 28             	call   *0x28(%edx)
4317bf:	84 c0                	test   %al,%al
4317c1:	75 2c                	jne    0x4317ef
4317c3:	83 3c 24 00          	cmpl   $0x0,(%esp)
4317c7:	7f 26                	jg     0x4317ef
4317c9:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
4317ce:	7f 1f                	jg     0x4317ef
4317d0:	8b 44 24 08          	mov    0x8(%esp),%eax
4317d4:	3b 43 48             	cmp    0x48(%ebx),%eax
4317d7:	7c 16                	jl     0x4317ef
4317d9:	8b 44 24 0c          	mov    0xc(%esp),%eax
4317dd:	3b 43 4c             	cmp    0x4c(%ebx),%eax
4317e0:	7c 0d                	jl     0x4317ef
4317e2:	a1 40 18 43 00       	mov    0x431840,%eax
4317e7:	0b 43 50             	or     0x50(%ebx),%eax
4317ea:	89 43 50             	mov    %eax,0x50(%ebx)
4317ed:	eb 0d                	jmp    0x4317fc
4317ef:	a1 40 18 43 00       	mov    0x431840,%eax
4317f4:	f7 d0                	not    %eax
4317f6:	23 43 50             	and    0x50(%ebx),%eax
4317f9:	89 43 50             	mov    %eax,0x50(%ebx)
4317fc:	8b c3                	mov    %ebx,%eax
4317fe:	e8 a5 fd ff ff       	call   0x4315a8
431803:	84 c0                	test   %al,%al
431805:	74 22                	je     0x431829
431807:	80 bb 7c 01 00 00 00 	cmpb   $0x0,0x17c(%ebx)
43180e:	74 19                	je     0x431829
431810:	8b c3                	mov    %ebx,%eax
431812:	8b 10                	mov    (%eax),%edx
431814:	ff 92 88 00 00 00    	call   *0x88(%edx)
43181a:	eb 0d                	jmp    0x431829
43181c:	a1 40 18 43 00       	mov    0x431840,%eax
431821:	f7 d0                	not    %eax