41541c:	8b c6                	mov    %esi,%eax
41541e:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
415422:	72 02                	jb     0x415426
415424:	8b 06                	mov    (%esi),%eax
415426:	6a 00                	push   $0x0
415428:	6a 00                	push   $0x0
41542a:	6a ff                	push   $0xffffffff
41542c:	50                   	push   %eax
41542d:	6a 00                	push   $0x0
41542f:	68 e9 fd 00 00       	push   $0xfde9
415434:	ff 15 e0 e0 43 00    	call   *0x43e0e0
41543a:	8b d8                	mov    %eax,%ebx
41543c:	33 c9                	xor    %ecx,%ecx
41543e:	ba 02 00 00 00       	mov    $0x2,%edx
415443:	8d 43 01             	lea    0x1(%ebx),%eax
415446:	f7 e2                	mul    %edx
415448:	0f 90 c1             	seto   %cl
41544b:	f7 d9                	neg    %ecx
41544d:	0b c8                	or     %eax,%ecx
41544f:	51                   	push   %ecx
415450:	e8 09 e6 00 00       	call   0x423a5e
415455:	8b f8                	mov    %eax,%edi
415457:	83 c4 04             	add    $0x4,%esp
41545a:	85 ff                	test   %edi,%edi
41545c:	74 27                	je     0x415485
41545e:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
415462:	72 02                	jb     0x415466
415464:	8b 36                	mov    (%esi),%esi
415466:	53                   	push   %ebx
415467:	57                   	push   %edi
415468:	6a ff                	push   $0xffffffff
41546a:	56                   	push   %esi
41546b:	6a 00                	push   $0x0
41546d:	68 e9 fd 00 00       	push   $0xfde9
415472:	ff 15 e0 e0 43 00    	call   *0x43e0e0
415478:	85 c0                	test   %eax,%eax
41547a:	7f 12                	jg     0x41548e
41547c:	57                   	push   %edi
41547d:	e8 c1 e5 00 00       	call   0x423a43
415482:	83 c4 04             	add    $0x4,%esp
415485:	5f                   	pop    %edi
415486:	5e                   	pop    %esi
415487:	32 c0                	xor    %al,%al
415489:	5b                   	pop    %ebx
41548a:	8b e5                	mov    %ebp,%esp
41548c:	5d                   	pop    %ebp
41548d:	c3                   	ret
41548e:	8b cf                	mov    %edi,%ecx
415490:	33 c0                	xor    %eax,%eax
415492:	66 89 04 5f          	mov    %ax,(%edi,%ebx,2)
415496:	8d 51 02             	lea    0x2(%ecx),%edx
415499:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
4154a0:	66 8b 01             	mov    (%ecx),%ax
4154a3:	83 c1 02             	add    $0x2,%ecx
4154a6:	66 85 c0             	test   %ax,%ax
4154a9:	75 f5                	jne    0x4154a0
4154ab:	2b ca                	sub    %edx,%ecx
4154ad:	d1 f9                	sar    $1,%ecx
4154af:	51                   	push   %ecx
4154b0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4154b3:	57                   	push   %edi
4154b4:	e8 37 da fe ff       	call   0x402ef0
4154b9:	57                   	push   %edi
4154ba:	e8 84 e5 00 00       	call   0x423a43
4154bf:	83 c4 04             	add    $0x4,%esp
4154c2:	b0 01                	mov    $0x1,%al
4154c4:	5f                   	pop    %edi
4154c5:	5e                   	pop    %esi
4154c6:	5b                   	pop    %ebx
4154c7:	8b e5                	mov    %ebp,%esp
4154c9:	5d                   	pop    %ebp
4154ca:	c3                   	ret
4154cb:	cc                   	int3
4154cc:	cc                   	int3
4154cd:	cc                   	int3
4154ce:	cc                   	int3
4154cf:	cc                   	int3
4154d0:	55                   	push   %ebp
4154d1:	8b ec                	mov    %esp,%ebp
4154d3:	83 e4 f0             	and    $0xfffffff0,%esp
4154d6:	81 ec 58 04 00 00    	sub    $0x458,%esp
4154dc:	a1 14 50 45 00       	mov    0x455014,%eax
4154e1:	33 c4                	xor    %esp,%eax
4154e3:	89 84 24 54 04 00 00 	mov    %eax,0x454(%esp)
4154ea:	56                   	push   %esi
4154eb:	57                   	push   %edi
4154ec:	8d 44 24 20          	lea    0x20(%esp),%eax
4154f0:	89 4c 24 1c          	mov    %ecx,0x1c(%esp)
4154f4:	50                   	push   %eax
4154f5:	8b f2                	mov    %edx,%esi
4154f7:	ff 15 18 e1 43 00    	call   *0x43e118
4154fd:	0f 28 44 24 20       	movaps 0x20(%esp),%xmm0
415502:	8d 44 24 38          	lea    0x38(%esp),%eax
415506:	50                   	push   %eax
415507:	8d 44 24 44          	lea    0x44(%esp),%eax
41550b:	0f 29 44 24 44       	movaps %xmm0,0x44(%esp)
415510:	50                   	push   %eax
415511:	ff 15 20 e1 43 00    	call   *0x43e120
415517:	8b 54 24 3c          	mov    0x3c(%esp),%edx
41551b:	8b 4c 24 38          	mov    0x38(%esp),%ecx
41551f:	e8 dc 52 02 00       	call   0x43a800
415524:	69 c6 80 51 01 00    	imul   $0x15180,%esi,%eax
41552a:	66 0f 6e c8          	movd   %eax,%xmm1
41552e:	f3 0f e6 c9          	cvtdq2pd %xmm1,%xmm1
415532:	f2 0f 5e 0d 48 00 45 	divsd  0x450048,%xmm1
415539:	00
41553a:	f2 0f 58 c8          	addsd  %xmm0,%xmm1
41553e:	0f 57 c0             	xorps  %xmm0,%xmm0
415541:	66 0f 13 44 24 10    	movlpd %xmm0,0x10(%esp)
415547:	f2 0f 10 05 58 00 45 	movsd  0x450058,%xmm0
41554e:	00
41554f:	66 0f 2f c8          	comisd %xmm0,%xmm1
415553:	72 1d                	jb     0x415572
415555:	f2 0f 5c c8          	subsd  %xmm0,%xmm1
415559:	66 0f 2f c1          	comisd %xmm1,%xmm0
41555d:	76 13                	jbe    0x415572
41555f:	8b 74 24 10          	mov    0x10(%esp),%esi
415563:	8b 7c 24 14          	mov    0x14(%esp),%edi
415567:	83 c6 00             	add    $0x0,%esi
41556a:	81 d7 00 00 00 80    	adc    $0x80000000,%edi
415570:	eb 08                	jmp    0x41557a
415572:	8b 7c 24 14          	mov    0x14(%esp),%edi
415576:	8b 74 24 10          	mov    0x10(%esp),%esi
41557a:	0f 28 c1             	movaps %xmm1,%xmm0
41557d:	e8 ce 51 02 00       	call   0x43a750
415582:	03 c6                	add    %esi,%eax
415584:	89 44 24 38          	mov    %eax,0x38(%esp)
415588:	8d 44 24 40          	lea    0x40(%esp),%eax
41558c:	50                   	push   %eax
41558d:	8d 44 24 3c          	lea    0x3c(%esp),%eax
415591:	13 d7                	adc    %edi,%edx
415593:	50                   	push   %eax
415594:	89 54 24 44          	mov    %edx,0x44(%esp)
415598:	ff 15 14 e1 43 00    	call   *0x43e114
41559e:	0f 28 44 24 40       	movaps 0x40(%esp),%xmm0
4155a3:	8d 84 24 58 02 00 00 	lea    0x258(%esp),%eax
4155aa:	68 00 01 00 00       	push   $0x100
4155af:	50                   	push   %eax
4155b0:	68 4c fb 44 00       	push   $0x44fb4c
4155b5:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4155b9:	0f 29 44 24 2c       	movaps %xmm0,0x2c(%esp)
4155be:	50                   	push   %eax
4155bf:	6a 00                	push   $0x0
4155c1:	68 00 04 00 00       	push   $0x400
4155c6:	ff 15 24 e1 43 00    	call   *0x43e124
4155cc:	8d 84 24 58 02 00 00 	lea    0x258(%esp),%eax
4155d3:	50                   	push   %eax
4155d4:	68 60 fb 44 00       	push   $0x44fb60
4155d9:	8d 44 24 60          	lea    0x60(%esp),%eax
4155dd:	68 00 01 00 00       	push   $0x100
4155e2:	50                   	push   %eax
4155e3:	e8 38 f1 fe ff       	call   0x404720
4155e8:	83 c4 10             	add    $0x10,%esp
4155eb:	83 f8 ff             	cmp    $0xffffffff,%eax
4155ee:	75 16                	jne    0x415606
4155f0:	32 c0                	xor    %al,%al
4155f2:	5f                   	pop    %edi
4155f3:	5e                   	pop    %esi
4155f4:	8b 8c 24 54 04 00 00 	mov    0x454(%esp),%ecx
4155fb:	33 cc                	xor    %esp,%ecx
4155fd:	e8 a8 45 00 00       	call   0x419baa
415602:	8b e5                	mov    %ebp,%esp
415604:	5d                   	pop    %ebp
415605:	c3                   	ret
415606:	8d 54 24 58          	lea    0x58(%esp),%edx
41560a:	8d 72 02             	lea    0x2(%edx),%esi
41560d:	0f 1f 00             	nopl   (%eax)
415610:	66 8b 02             	mov    (%edx),%ax
415613:	83 c2 02             	add    $0x2,%edx
415616:	66 85 c0             	test   %ax,%ax
415619:	75 f5                	jne    0x415610
41561b:	8b 4c 24 1c          	mov    0x1c(%esp),%ecx
41561f:	8d 44 24 58          	lea    0x58(%esp),%eax
415623:	2b d6                	sub    %esi,%edx
415625:	d1 fa                	sar    $1,%edx
415627:	52                   	push   %edx
415628:	50                   	push   %eax
415629:	e8 c2 d8 fe ff       	call   0x402ef0
41562e:	8b 8c 24 5c 04 00 00 	mov    0x45c(%esp),%ecx
415635:	b0 01                	mov    $0x1,%al
415637:	5f                   	pop    %edi
415638:	5e                   	pop    %esi
415639:	33 cc                	xor    %esp,%ecx
41563b:	e8 6a 45 00 00       	call   0x419baa
415640:	8b e5                	mov    %ebp,%esp
415642:	5d                   	pop    %ebp
415643:	c3                   	ret
415644:	cc                   	int3
415645:	cc                   	int3
415646:	cc                   	int3
415647:	cc                   	int3
415648:	cc                   	int3
415649:	cc                   	int3
41564a:	cc                   	int3
41564b:	cc                   	int3
41564c:	cc                   	int3
41564d:	cc                   	int3
41564e:	cc                   	int3
41564f:	cc                   	int3
415650:	55                   	push   %ebp
415651:	8b ec                	mov    %esp,%ebp
415653:	83 e4 f8             	and    $0xfffffff8,%esp
415656:	81 ec 1c 06 00 00    	sub    $0x61c,%esp
41565c:	a1 14 50 45 00       	mov    0x455014,%eax
415661:	33 c4                	xor    %esp,%eax
415663:	89 84 24 18 06 00 00 	mov    %eax,0x618(%esp)
41566a:	56                   	push   %esi
41566b:	8d 44 24 08          	lea    0x8(%esp),%eax
41566f:	8b f1                	mov    %ecx,%esi
415671:	50                   	push   %eax
415672:	ff 15 18 e1 43 00    	call   *0x43e118
415678:	68 00 01 00 00       	push   $0x100
41567d:	8d 84 24 1c 02 00 00 	lea    0x21c(%esp),%eax
415684:	50                   	push   %eax
415685:	68 68 fb 44 00       	push   $0x44fb68
41568a:	8d 44 24 14          	lea    0x14(%esp),%eax
41568e:	50                   	push   %eax
41568f:	6a 08                	push   $0x8
415691:	68 00 04 00 00       	push   $0x400
415696:	ff 15 1c e1 43 00    	call   *0x43e11c
41569c:	68 00 01 00 00       	push   $0x100
4156a1:	8d 84 24 1c 04 00 00 	lea    0x41c(%esp),%eax
4156a8:	50                   	push   %eax
4156a9:	68 4c fb 44 00       	push   $0x44fb4c
4156ae:	8d 44 24 14          	lea    0x14(%esp),%eax
4156b2:	50                   	push   %eax
4156b3:	6a 00                	push   $0x0
4156b5:	68 00 04 00 00       	push   $0x400
4156ba:	ff 15 24 e1 43 00    	call   *0x43e124
4156c0:	8d 84 24 18 02 00 00 	lea    0x218(%esp),%eax
4156c7:	50                   	push   %eax
4156c8:	8d 84 24 1c 04 00 00 	lea    0x41c(%esp),%eax
4156cf:	50                   	push   %eax
4156d0:	68 84 fb 44 00       	push   $0x44fb84
4156d5:	8d 44 24 24          	lea    0x24(%esp),%eax
4156d9:	68 00 01 00 00       	push   $0x100
4156de:	50                   	push   %eax
4156df:	e8 3c f0 fe ff       	call   0x404720
4156e4:	83 c4 14             	add    $0x14,%esp
4156e7:	83 f8 ff             	cmp    $0xffffffff,%eax
4156ea:	75 15                	jne    0x415701
4156ec:	32 c0                	xor    %al,%al
4156ee:	5e                   	pop    %esi
4156ef:	8b 8c 24 18 06 00 00 	mov    0x618(%esp),%ecx
4156f6:	33 cc                	xor    %esp,%ecx
4156f8:	e8 ad 44 00 00       	call   0x419baa
4156fd:	8b e5                	mov    %ebp,%esp
4156ff:	5d                   	pop    %ebp
415700:	c3                   	ret
415701:	8d 44 24 18          	lea    0x18(%esp),%eax
415705:	8d 50 02             	lea    0x2(%eax),%edx
415708:	0f 1f 84 00 00 00 00 	nopl   0x0(%eax,%eax,1)
41570f:	00
415710:	66 8b 08             	mov    (%eax),%cx
415713:	83 c0 02             	add    $0x2,%eax
415716:	66 85 c9             	test   %cx,%cx
415719:	75 f5                	jne    0x415710
41571b:	2b c2                	sub    %edx,%eax
41571d:	8b ce                	mov    %esi,%ecx
41571f:	d1 f8                	sar    $1,%eax
415721:	50                   	push   %eax
415722:	8d 44 24 1c          	lea    0x1c(%esp),%eax
415726:	50                   	push   %eax
415727:	e8 c4 d7 fe ff       	call   0x402ef0
41572c:	8b 8c 24 1c 06 00 00 	mov    0x61c(%esp),%ecx
415733:	b0 01                	mov    $0x1,%al
415735:	5e                   	pop    %esi
415736:	33 cc                	xor    %esp,%ecx
415738:	e8 6d 44 00 00       	call   0x419baa
41573d:	8b e5                	mov    %ebp,%esp
41573f:	5d                   	pop    %ebp
415740:	c3                   	ret
415741:	cc                   	int3
415742:	cc                   	int3
415743:	cc                   	int3
415744:	cc                   	int3
415745:	cc                   	int3
415746:	cc                   	int3
415747:	cc                   	int3
415748:	cc                   	int3
415749:	cc                   	int3
41574a:	cc                   	int3
41574b:	cc                   	int3
41574c:	cc                   	int3
41574d:	cc                   	int3
41574e:	cc                   	int3
41574f:	cc                   	int3
415750:	55                   	push   %ebp
415751:	8b ec                	mov    %esp,%ebp
415753:	81 ec 0c 02 00 00    	sub    $0x20c,%esp
415759:	a1 14 50 45 00       	mov    0x455014,%eax
41575e:	33 c5                	xor    %ebp,%eax
415760:	89 45 fc             	mov    %eax,-0x4(%ebp)
415763:	56                   	push   %esi
415764:	57                   	push   %edi
415765:	8b f9                	mov    %ecx,%edi
415767:	8b f2                	mov    %edx,%esi
415769:	8b c7                	mov    %edi,%eax
41576b:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
41576f:	72 02                	jb     0x415773
415771:	8b 07                	mov    (%edi),%eax
415773:	50                   	push   %eax
415774:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
41577a:	68 04 01 00 00       	push   $0x104
41577f:	50                   	push   %eax
415780:	e8 e1 e0 00 00       	call   0x423866
415785:	83 c4 0c             	add    $0xc,%esp
415788:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
41578c:	72 02                	jb     0x415790
41578e:	8b 36                	mov    (%esi),%esi
415790:	56                   	push   %esi
415791:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
415797:	50                   	push   %eax
415798:	ff 15 30 e2 43 00    	call   *0x43e230
41579e:	8b f0                	mov    %eax,%esi
4157a0:	85 f6                	test   %esi,%esi
4157a2:	74 2a                	je     0x4157ce
4157a4:	8d 95 f4 fd ff ff    	lea    -0x20c(%ebp),%edx
4157aa:	8d 4a 02             	lea    0x2(%edx),%ecx
4157ad:	0f 1f 00             	nopl   (%eax)
4157b0:	66 8b 02             	mov    (%edx),%ax
4157b3:	83 c2 02             	add    $0x2,%edx
4157b6:	66 85 c0             	test   %ax,%ax
4157b9:	75 f5                	jne    0x4157b0
4157bb:	2b d1                	sub    %ecx,%edx
4157bd:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
4157c3:	d1 fa                	sar    $1,%edx
4157c5:	8b cf                	mov    %edi,%ecx
4157c7:	52                   	push   %edx
4157c8:	50                   	push   %eax
4157c9:	e8 22 d7 fe ff       	call   0x402ef0
4157ce:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4157d1:	83 fe 01             	cmp    $0x1,%esi
4157d4:	5f                   	pop    %edi
4157d5:	0f 94 c0             	sete   %al
4157d8:	33 cd                	xor    %ebp,%ecx
4157da:	5e                   	pop    %esi
4157db:	e8 ca 43 00 00       	call   0x419baa
4157e0:	8b e5                	mov    %ebp,%esp
4157e2:	5d                   	pop    %ebp
4157e3:	c3                   	ret
4157e4:	cc                   	int3
4157e5:	cc                   	int3
4157e6:	cc                   	int3
4157e7:	cc                   	int3
4157e8:	cc                   	int3
4157e9:	cc                   	int3
4157ea:	cc                   	int3
4157eb:	cc                   	int3
4157ec:	cc                   	int3