54343f:	85 d2                	test   %edx,%edx
543441:	74 3c                	je     0x54347f
543443:	b9 08 00 00 00       	mov    $0x8,%ecx
543448:	8b 83 18 01 00 00    	mov    0x118(%ebx),%eax
54344e:	2b c8                	sub    %eax,%ecx
543450:	bf 01 00 00 00       	mov    $0x1,%edi
543455:	d3 e7                	shl    %cl,%edi
543457:	33 f6                	xor    %esi,%esi
543459:	3b fe                	cmp    %esi,%edi
54345b:	7e 15                	jle    0x543472
54345d:	8b 83 34 01 00 00    	mov    0x134(%ebx),%eax
543463:	8b 14 b0             	mov    (%eax,%esi,4),%edx
543466:	8b c3                	mov    %ebx,%eax
543468:	e8 6f 79 00 00       	call   0x54addc
54346d:	46                   	inc    %esi
54346e:	3b fe                	cmp    %esi,%edi
543470:	7f eb                	jg     0x54345d
543472:	8b 93 34 01 00 00    	mov    0x134(%ebx),%edx
543478:	8b c3                	mov    %ebx,%eax
54347a:	e8 5d 79 00 00       	call   0x54addc
54347f:	8b 93 38 01 00 00    	mov    0x138(%ebx),%edx
543485:	85 d2                	test   %edx,%edx
543487:	74 3c                	je     0x5434c5
543489:	b9 08 00 00 00       	mov    $0x8,%ecx
54348e:	8b 83 18 01 00 00    	mov    0x118(%ebx),%eax
543494:	2b c8                	sub    %eax,%ecx
543496:	bf 01 00 00 00       	mov    $0x1,%edi
54349b:	d3 e7                	shl    %cl,%edi
54349d:	33 f6                	xor    %esi,%esi
54349f:	3b fe                	cmp    %esi,%edi
5434a1:	7e 15                	jle    0x5434b8
5434a3:	8b 83 38 01 00 00    	mov    0x138(%ebx),%eax
5434a9:	8b 14 b0             	mov    (%eax,%esi,4),%edx
5434ac:	8b c3                	mov    %ebx,%eax
5434ae:	e8 29 79 00 00       	call   0x54addc
5434b3:	46                   	inc    %esi
5434b4:	3b fe                	cmp    %esi,%edi
5434b6:	7f eb                	jg     0x5434a3
5434b8:	8b 93 38 01 00 00    	mov    0x138(%ebx),%edx
5434be:	8b c3                	mov    %ebx,%eax
5434c0:	e8 17 79 00 00       	call   0x54addc
5434c5:	8d 43 34             	lea    0x34(%ebx),%eax
5434c8:	e8 fb 48 fe ff       	call   0x527dc8
5434cd:	8b 93 70 01 00 00    	mov    0x170(%ebx),%edx
5434d3:	8b c3                	mov    %ebx,%eax
5434d5:	e8 02 79 00 00       	call   0x54addc
5434da:	8b 93 a4 01 00 00    	mov    0x1a4(%ebx),%edx
5434e0:	8b c3                	mov    %ebx,%eax
5434e2:	e8 f5 78 00 00       	call   0x54addc
5434e7:	8b 33                	mov    (%ebx),%esi
5434e9:	8b 7b 04             	mov    0x4(%ebx),%edi
5434ec:	8b 6b 08             	mov    0x8(%ebx),%ebp
5434ef:	8b 83 08 02 00 00    	mov    0x208(%ebx),%eax
5434f5:	89 04 24             	mov    %eax,(%esp)
5434f8:	68 1c 02 00 00       	push   $0x21c
5434fd:	6a 00                	push   $0x0
5434ff:	53                   	push   %ebx
543500:	e8 1f 2e fe ff       	call   0x526324
543505:	83 c4 0c             	add    $0xc,%esp
543508:	89 33                	mov    %esi,(%ebx)
54350a:	89 7b 04             	mov    %edi,0x4(%ebx)
54350d:	89 6b 08             	mov    %ebp,0x8(%ebx)
543510:	8b 14 24             	mov    (%esp),%edx
543513:	89 93 08 02 00 00    	mov    %edx,0x208(%ebx)
543519:	5a                   	pop    %edx
54351a:	5d                   	pop    %ebp
54351b:	5f                   	pop    %edi
54351c:	5e                   	pop    %esi
54351d:	5b                   	pop    %ebx
54351e:	c3                   	ret
54351f:	90                   	nop
543520:	89 90 58 01 00 00    	mov    %edx,0x158(%eax)
543526:	c3                   	ret
543527:	90                   	nop
543528:	55                   	push   %ebp
543529:	8b ec                	mov    %esp,%ebp
54352b:	83 c4 f8             	add    $0xfffffff8,%esp
54352e:	53                   	push   %ebx
54352f:	56                   	push   %esi
543530:	57                   	push   %edi
543531:	8b f9                	mov    %ecx,%edi
543533:	8b f2                	mov    %edx,%esi
543535:	8b d8                	mov    %eax,%ebx
543537:	f7 c7 00 04 00 00    	test   $0x400,%edi
54353d:	74 07                	je     0x543546
54353f:	8b c3                	mov    %ebx,%eax
543541:	e8 de 17 00 00       	call   0x544d24
543546:	8b d6                	mov    %esi,%edx
543548:	8b c3                	mov    %ebx,%eax
54354a:	e8 91 ee ff ff       	call   0x5423e0
54354f:	f7 c7 01 00 00 00    	test   $0x1,%edi
543555:	74 07                	je     0x54355e
543557:	8b c3                	mov    %ebx,%eax
543559:	e8 a2 1c 00 00       	call   0x545200
54355e:	f7 c7 02 00 00 00    	test   $0x2,%edi
543564:	74 07                	je     0x54356d
543566:	8b c3                	mov    %ebx,%eax
543568:	e8 9b 1c 00 00       	call   0x545208
54356d:	f7 c7 08 00 00 00    	test   $0x8,%edi
543573:	74 07                	je     0x54357c
543575:	8b c3                	mov    %ebx,%eax
543577:	e8 00 17 00 00       	call   0x544c7c
54357c:	f7 c7 10 00 00 00    	test   $0x10,%edi
543582:	74 2f                	je     0x5435b3
543584:	8a 93 e7 00 00 00    	mov    0xe7(%ebx),%dl
54358a:	80 fa 08             	cmp    $0x8,%dl
54358d:	72 1d                	jb     0x5435ac
54358f:	8a 8b e6 00 00 00    	mov    0xe6(%ebx),%cl
543595:	80 f9 03             	cmp    $0x3,%cl
543598:	74 12                	je     0x5435ac
54359a:	b9 10 00 00 00       	mov    $0x10,%ecx
54359f:	8b d6                	mov    %esi,%edx
5435a1:	8b c3                	mov    %ebx,%eax
5435a3:	e8 bc ac 00 00       	call   0x54e264
5435a8:	85 c0                	test   %eax,%eax
5435aa:	74 07                	je     0x5435b3
5435ac:	8b c3                	mov    %ebx,%eax
5435ae:	e8 2d 27 00 00       	call   0x545ce0
5435b3:	f7 c7 20 00 00 00    	test   $0x20,%edi
5435b9:	74 07                	je     0x5435c2
5435bb:	8b c3                	mov    %ebx,%eax
5435bd:	e8 6a 17 00 00       	call   0x544d2c
5435c2:	f7 c7 40 00 00 00    	test   $0x40,%edi
5435c8:	74 28                	je     0x5435f2
5435ca:	b9 02 00 00 00       	mov    $0x2,%ecx
5435cf:	8b d6                	mov    %esi,%edx
5435d1:	8b c3                	mov    %ebx,%eax
5435d3:	e8 8c ac 00 00       	call   0x54e264
5435d8:	85 c0                	test   %eax,%eax
5435da:	74 16                	je     0x5435f2
5435dc:	8d 4d f8             	lea    -0x8(%ebp),%ecx
5435df:	8b d6                	mov    %esi,%edx
5435e1:	8b c3                	mov    %ebx,%eax
5435e3:	e8 34 b4 00 00       	call   0x54ea1c
5435e8:	8b 55 f8             	mov    -0x8(%ebp),%edx
5435eb:	8b c3                	mov    %ebx,%eax
5435ed:	e8 9e 16 00 00       	call   0x544c90
5435f2:	f7 c7 80 00 00 00    	test   $0x80,%edi
5435f8:	74 07                	je     0x543601
5435fa:	8b c3                	mov    %ebx,%eax
5435fc:	e8 4b 16 00 00       	call   0x544c4c
543601:	f7 c7 00 01 00 00    	test   $0x100,%edi
543607:	74 07                	je     0x543610
543609:	8b c3                	mov    %ebx,%eax
54360b:	e8 0c 17 00 00       	call   0x544d1c
543610:	f7 c7 00 02 00 00    	test   $0x200,%edi
543616:	74 07                	je     0x54361f
543618:	8b c3                	mov    %ebx,%eax
54361a:	e8 35 16 00 00       	call   0x544c54
54361f:	8b d6                	mov    %esi,%edx
543621:	8b c3                	mov    %ebx,%eax
543623:	e8 50 f2 ff ff       	call   0x542878
543628:	6a 00                	push   $0x0
54362a:	b9 40 00 00 00       	mov    $0x40,%ecx
54362f:	8b d6                	mov    %esi,%edx
543631:	8b c3                	mov    %ebx,%eax
543633:	e8 f4 b7 00 00       	call   0x54ee2c
543638:	8b 96 f8 00 00 00    	mov    0xf8(%esi),%edx
54363e:	85 d2                	test   %edx,%edx
543640:	75 4c                	jne    0x54368e
543642:	8b 56 04             	mov    0x4(%esi),%edx
543645:	8b c3                	mov    %ebx,%eax
543647:	c1 e2 02             	shl    $0x2,%edx
54364a:	e8 19 77 00 00       	call   0x54ad68
54364f:	89 86 f8 00 00 00    	mov    %eax,0xf8(%esi)
543655:	83 8e b8 00 00 00 40 	orl    $0x40,0xb8(%esi)
54365c:	33 c9                	xor    %ecx,%ecx
54365e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
543661:	eb 21                	jmp    0x543684
543663:	8b d6                	mov    %esi,%edx
543665:	8b c3                	mov    %ebx,%eax
543667:	e8 0c ac 00 00       	call   0x54e278
54366c:	8b d0                	mov    %eax,%edx
54366e:	8b c3                	mov    %ebx,%eax
543670:	e8 f3 76 00 00       	call   0x54ad68
543675:	8b 8e f8 00 00 00    	mov    0xf8(%esi),%ecx
54367b:	8b 55 fc             	mov    -0x4(%ebp),%edx
54367e:	89 04 91             	mov    %eax,(%ecx,%edx,4)
543681:	ff 45 fc             	incl   -0x4(%ebp)
543684:	8b 45 fc             	mov    -0x4(%ebp),%eax
543687:	8b 4e 04             	mov    0x4(%esi),%ecx
54368a:	3b c1                	cmp    %ecx,%eax
54368c:	7c d5                	jl     0x543663
54368e:	8b 96 f8 00 00 00    	mov    0xf8(%esi),%edx
543694:	8b c3                	mov    %ebx,%eax
543696:	e8 71 f7 ff ff       	call   0x542e0c
54369b:	81 4e 08 00 80 00 00 	orl    $0x8000,0x8(%esi)
5436a2:	8b d6                	mov    %esi,%edx
5436a4:	8b c3                	mov    %ebx,%eax
5436a6:	e8 cd f7 ff ff       	call   0x542e78
5436ab:	85 ff                	test   %edi,%edi
5436ad:	74 05                	je     0x5436b4
5436af:	8b 4d 08             	mov    0x8(%ebp),%ecx
5436b2:	85 c9                	test   %ecx,%ecx
5436b4:	5f                   	pop    %edi
5436b5:	5e                   	pop    %esi
5436b6:	5b                   	pop    %ebx
5436b7:	59                   	pop    %ecx
5436b8:	59                   	pop    %ecx
5436b9:	5d                   	pop    %ebp
5436ba:	c2 04 00             	ret    $0x4
5436bd:	8d 40 00             	lea    0x0(%eax),%eax
5436c0:	53                   	push   %ebx
5436c1:	8b da                	mov    %edx,%ebx
5436c3:	85 c0                	test   %eax,%eax
5436c5:	74 17                	je     0x5436de
5436c7:	85 db                	test   %ebx,%ebx
5436c9:	74 13                	je     0x5436de
5436cb:	6a 0a                	push   $0xa
5436cd:	51                   	push   %ecx
5436ce:	8d 43 5a             	lea    0x5a(%ebx),%eax
5436d1:	50                   	push   %eax
5436d2:	e8 09 2d fe ff       	call   0x5263e0
5436d7:	83 c4 0c             	add    $0xc,%esp
5436da:	83 4b 08 20          	orl    $0x20,0x8(%ebx)
5436de:	5b                   	pop    %ebx
5436df:	c3                   	ret
5436e0:	55                   	push   %ebp
5436e1:	8b ec                	mov    %esp,%ebp
5436e3:	53                   	push   %ebx
5436e4:	8b da                	mov    %edx,%ebx
5436e6:	8b d0                	mov    %eax,%edx
5436e8:	85 d2                	test   %edx,%edx
5436ea:	0f 84 2a 02 00 00    	je     0x54391a
5436f0:	85 db                	test   %ebx,%ebx
5436f2:	0f 84 22 02 00 00    	je     0x54391a
5436f8:	dd 45 40             	fldl   0x40(%ebp)
5436fb:	d8 1d 20 39 54 00    	fcomps 0x543920
543701:	df e0                	fnstsw %ax
543703:	9e                   	sahf
543704:	72 62                	jb     0x543768
543706:	dd 45 38             	fldl   0x38(%ebp)
543709:	d8 1d 20 39 54 00    	fcomps 0x543920
54370f:	df e0                	fnstsw %ax
543711:	9e                   	sahf
543712:	72 54                	jb     0x543768
543714:	dd 45 30             	fldl   0x30(%ebp)
543717:	d8 1d 20 39 54 00    	fcomps 0x543920
54371d:	df e0                	fnstsw %ax
54371f:	9e                   	sahf
543720:	72 46                	jb     0x543768
543722:	dd 45 28             	fldl   0x28(%ebp)
543725:	d8 1d 20 39 54 00    	fcomps 0x543920
54372b:	df e0                	fnstsw %ax
54372d:	9e                   	sahf
54372e:	72 38                	jb     0x543768
543730:	dd 45 20             	fldl   0x20(%ebp)
543733:	d8 1d 20 39 54 00    	fcomps 0x543920
543739:	df e0                	fnstsw %ax
54373b:	9e                   	sahf
54373c:	72 2a                	jb     0x543768
54373e:	dd 45 18             	fldl   0x18(%ebp)
543741:	d8 1d 20 39 54 00    	fcomps 0x543920
543747:	df e0                	fnstsw %ax
543749:	9e                   	sahf
54374a:	72 1c                	jb     0x543768
54374c:	dd 45 10             	fldl   0x10(%ebp)
54374f:	d8 1d 20 39 54 00    	fcomps 0x543920
543755:	df e0                	fnstsw %ax
543757:	9e                   	sahf
543758:	72 0e                	jb     0x543768
54375a:	dd 45 08             	fldl   0x8(%ebp)
54375d:	d8 1d 20 39 54 00    	fcomps 0x543920
543763:	df e0                	fnstsw %ax
543765:	9e                   	sahf
543766:	73 13                	jae    0x54377b
543768:	b9 d0 a4 69 00       	mov    $0x69a4d0,%ecx
54376d:	8b c2                	mov    %edx,%eax
54376f:	8b d1                	mov    %ecx,%edx
543771:	e8 e6 77 00 00       	call   0x54af5c
543776:	e9 9f 01 00 00       	jmp    0x54391a
54377b:	dd 45 40             	fldl   0x40(%ebp)
54377e:	dc 1d 24 39 54 00    	fcompl 0x543924
543784:	df e0                	fnstsw %ax
543786:	9e                   	sahf
543787:	77 62                	ja     0x5437eb
543789:	dd 45 38             	fldl   0x38(%ebp)
54378c:	dc 1d 24 39 54 00    	fcompl 0x543924
543792:	df e0                	fnstsw %ax
543794:	9e                   	sahf
543795:	77 54                	ja     0x5437eb
543797:	dd 45 30             	fldl   0x30(%ebp)
54379a:	dc 1d 24 39 54 00    	fcompl 0x543924
5437a0:	df e0                	fnstsw %ax
5437a2:	9e                   	sahf
5437a3:	77 46                	ja     0x5437eb
5437a5:	dd 45 28             	fldl   0x28(%ebp)
5437a8:	dc 1d 24 39 54 00    	fcompl 0x543924
5437ae:	df e0                	fnstsw %ax
5437b0:	9e                   	sahf
5437b1:	77 38                	ja     0x5437eb
5437b3:	dd 45 20             	fldl   0x20(%ebp)
5437b6:	dc 1d 24 39 54 00    	fcompl 0x543924
5437bc:	df e0                	fnstsw %ax
5437be:	9e                   	sahf
5437bf:	77 2a                	ja     0x5437eb
5437c1:	dd 45 18             	fldl   0x18(%ebp)
5437c4:	dc 1d 24 39 54 00    	fcompl 0x543924
5437ca:	df e0                	fnstsw %ax
5437cc:	9e                   	sahf
5437cd:	77 1c                	ja     0x5437eb
5437cf:	dd 45 10             	fldl   0x10(%ebp)
5437d2:	dc 1d 24 39 54 00    	fcompl 0x543924
5437d8:	df e0                	fnstsw %ax
5437da:	9e                   	sahf
5437db:	77 0e                	ja     0x5437eb
5437dd:	dd 45 08             	fldl   0x8(%ebp)
5437e0:	dc 1d 24 39 54 00    	fcompl 0x543924
5437e6:	df e0                	fnstsw %ax
5437e8:	9e                   	sahf
5437e9:	76 13                	jbe    0x5437fe
5437eb:	b9 04 a5 69 00       	mov    $0x69a504,%ecx
5437f0:	8b c2                	mov    %edx,%eax
5437f2:	8b d1                	mov    %ecx,%edx
5437f4:	e8 63 77 00 00       	call   0x54af5c
5437f9:	e9 1c 01 00 00       	jmp    0x54391a
5437fe:	dd 45 40             	fldl   0x40(%ebp)
543801:	d9 9b 80 00 00 00    	fstps  0x80(%ebx)
543807:	dd 45 38             	fldl   0x38(%ebp)
54380a:	d9 9b 84 00 00 00    	fstps  0x84(%ebx)
543810:	dd 45 30             	fldl   0x30(%ebp)
543813:	d9 9b 88 00 00 00    	fstps  0x88(%ebx)
543819:	dd 45 28             	fldl   0x28(%ebp)
54381c:	d9 9b 8c 00 00 00    	fstps  0x8c(%ebx)
543822:	dd 45 20             	fldl   0x20(%ebp)
543825:	d9 9b 90 00 00 00    	fstps  0x90(%ebx)
54382b:	dd 45 18             	fldl   0x18(%ebp)
54382e:	d9 9b 94 00 00 00    	fstps  0x94(%ebx)
543834:	dd 45 10             	fldl   0x10(%ebp)
543837:	d9 9b 98 00 00 00    	fstps  0x98(%ebx)
54383d:	dd 45 08             	fldl   0x8(%ebp)
543840:	d9 9b 9c 00 00 00    	fstps  0x9c(%ebx)
543846:	dd 45 40             	fldl   0x40(%ebp)
543849:	d8 0d 2c 39 54 00    	fmuls  0x54392c
54384f:	d8 05 30 39 54 00    	fadds  0x543930
543855:	e8 be 2c fe ff       	call   0x526518
54385a:	89 83 00 01 00 00    	mov    %eax,0x100(%ebx)
543860:	dd 45 38             	fldl   0x38(%ebp)
543863:	d8 0d 2c 39 54 00    	fmuls  0x54392c
543869:	d8 05 30 39 54 00    	fadds  0x543930
54386f:	e8 a4 2c fe ff       	call   0x526518
543874:	89 83 04 01 00 00    	mov    %eax,0x104(%ebx)
54387a:	dd 45 30             	fldl   0x30(%ebp)
54387d:	d8 0d 2c 39 54 00    	fmuls  0x54392c
543883:	d8 05 30 39 54 00    	fadds  0x543930
543889:	e8 8a 2c fe ff       	call   0x526518
54388e:	89 83 08 01 00 00    	mov    %eax,0x108(%ebx)
543894:	dd 45 28             	fldl   0x28(%ebp)
543897:	d8 0d 2c 39 54 00    	fmuls  0x54392c
54389d:	d8 05 30 39 54 00    	fadds  0x543930