45041a:	01 01                	add    %eax,(%ecx)
45041c:	01 01                	add    %eax,(%ecx)
45041e:	01 01                	add    %eax,(%ecx)
450420:	01 01                	add    %eax,(%ecx)
450422:	01 01                	add    %eax,(%ecx)
450424:	01 01                	add    %eax,(%ecx)
450426:	01 01                	add    %eax,(%ecx)
450428:	01 01                	add    %eax,(%ecx)
45042a:	01 01                	add    %eax,(%ecx)
45042c:	01 01                	add    %eax,(%ecx)
45042e:	01 01                	add    %eax,(%ecx)
450430:	01 01                	add    %eax,(%ecx)
450432:	01 00                	add    %eax,(%eax)
450434:	00 8b ff 7c f9 44    	add    %cl,0x44f97cff(%ebx)
45043a:	00 9a f9 44 00 b8    	add    %bl,-0x47ffbb07(%edx)
450440:	f9                   	stc
450441:	44                   	inc    %esp
450442:	00 d6                	add    %dl,%dh
450444:	f9                   	stc
450445:	44                   	inc    %esp
450446:	00 f4                	add    %dh,%ah
450448:	f9                   	stc
450449:	44                   	inc    %esp
45044a:	00 12                	add    %dl,(%edx)
45044c:	fa                   	cli
45044d:	44                   	inc    %esp
45044e:	00 89 51 41 00 96    	add    %cl,-0x69ffbeaf(%ecx)
450454:	51                   	push   %ecx
450455:	41                   	inc    %ecx
450456:	00 96 51 41 00 fe    	add    %dl,-0x1ffbeaf(%esi)
45045c:	e4 44                	in     $0x44,%al
45045e:	00 fe                	add    %bh,%dh
450460:	e4 44                	in     $0x44,%al
450462:	00 90 f7 44 00 ef    	add    %dl,-0x10ffbb09(%eax)
450468:	f7 44 00 7b f8 44 00 	testl  $0x70044f8,0x7b(%eax,%eax,1)
45046f:	07
450470:	f9                   	stc
450471:	44                   	inc    %esp
450472:	00 49 f9             	add    %cl,-0x7(%ecx)
450475:	44                   	inc    %esp
450476:	00 41 fd             	add    %al,-0x3(%ecx)
450479:	44                   	inc    %esp
45047a:	00 5c fd 44          	add    %bl,0x44(%ebp,%edi,8)
45047e:	00 77 fd             	add    %dh,-0x3(%edi)
450481:	44                   	inc    %esp
450482:	00 8e fd 44 00 a9    	add    %cl,-0x56ffbb03(%esi)
450488:	fd                   	std
450489:	44                   	inc    %esp
45048a:	00 c0                	add    %al,%al
45048c:	fd                   	std
45048d:	44                   	inc    %esp
45048e:	00 06                	add    %al,(%esi)
450490:	fb                   	sti
450491:	44                   	inc    %esp
450492:	00 d9                	add    %bl,%cl
450494:	fd                   	std
450495:	44                   	inc    %esp
450496:	00 d9                	add    %bl,%cl
450498:	fd                   	std
450499:	44                   	inc    %esp
45049a:	00 fe                	add    %bh,%dh
45049c:	e4 44                	in     $0x44,%al
45049e:	00 fe                	add    %bh,%dh
4504a0:	e4 44                	in     $0x44,%al
4504a2:	00 55 fb             	add    %dl,-0x5(%ebp)
4504a5:	44                   	inc    %esp
4504a6:	00 b4 fb 44 00 40 fc 	add    %dh,-0x3bfffbc(%ebx,%edi,8)
4504ad:	44                   	inc    %esp
4504ae:	00 cc                	add    %cl,%ah
4504b0:	fc                   	cld
4504b1:	44                   	inc    %esp
4504b2:	00 0e                	add    %cl,(%esi)
4504b4:	fd                   	std
4504b5:	44                   	inc    %esp
4504b6:	00 83 f8 ff 0f 85    	add    %al,-0x7af00008(%ebx)
4504bc:	b5 51                	mov    $0x51,%ch
4504be:	fc                   	cld
4504bf:	ff 83 7e 2c 00 0f    	incl   0xf002c7e(%ebx)
4504c5:	84 ab 51 fc ff 83    	test   %ch,-0x7c0003af(%ebx)
4504cb:	66 2c 00             	data16 sub $0x0,%al
4504ce:	ff 07                	incl   (%edi)
4504d0:	e9 39 51 fc ff       	jmp    0x41560e
4504d5:	8b 46 1c             	mov    0x1c(%esi),%eax
4504d8:	3b d0                	cmp    %eax,%edx
4504da:	75 08                	jne    0x4504e4
4504dc:	8d 48 01             	lea    0x1(%eax),%ecx
4504df:	e9 86 51 fc ff       	jmp    0x41566a
4504e4:	c7 46 2c 10 00 00 10 	movl   $0x10000010,0x2c(%esi)
4504eb:	e9 7a 51 fc ff       	jmp    0x41566a
4504f0:	48                   	dec    %eax
4504f1:	89 01                	mov    %eax,(%ecx)
4504f3:	8b cb                	mov    %ebx,%ecx
4504f5:	e8 8f 7c fb ff       	call   0x408189
4504fa:	33 c9                	xor    %ecx,%ecx
4504fc:	c7 43 08 08 00 00 00 	movl   $0x8,0x8(%ebx)
450503:	b8 08 00 00 00       	mov    $0x8,%eax
450508:	ba 02 00 00 00       	mov    $0x2,%edx
45050d:	f7 e2                	mul    %edx
45050f:	0f 90 c1             	seto   %cl
450512:	f7 d9                	neg    %ecx
450514:	0b c8                	or     %eax,%ecx
450516:	51                   	push   %ecx
450517:	e8 89 0a fd ff       	call   0x420fa5
45051c:	83 c4 04             	add    $0x4,%esp
45051f:	89 03                	mov    %eax,(%ebx)
450521:	e9 d3 51 fc ff       	jmp    0x4156f9
450526:	47                   	inc    %edi
450527:	89 7d fc             	mov    %edi,-0x4(%ebp)
45052a:	3b f8                	cmp    %eax,%edi
45052c:	0f 84 6e 52 fc ff    	je     0x4157a0
450532:	dd da                	fstp   %st(2)
450534:	8b ce                	mov    %esi,%ecx
450536:	dd d8                	fstp   %st(0)
450538:	57                   	push   %edi
450539:	dd d8                	fstp   %st(0)
45053b:	e8 e0 75 fb ff       	call   0x407b20
450540:	66 83 38 5c          	cmpw   $0x5c,(%eax)
450544:	0f 84 84 00 00 00    	je     0x4505ce
45054a:	57                   	push   %edi
45054b:	8b ce                	mov    %esi,%ecx
45054d:	e8 ce 75 fb ff       	call   0x407b20
450552:	66 83 38 24          	cmpw   $0x24,(%eax)
450556:	74 76                	je     0x4505ce
450558:	57                   	push   %edi
450559:	8b ce                	mov    %esi,%ecx
45055b:	e8 c0 75 fb ff       	call   0x407b20
450560:	0f b7 00             	movzwl (%eax),%eax
450563:	50                   	push   %eax
450564:	e8 36 39 fd ff       	call   0x423e9f
450569:	83 c4 04             	add    $0x4,%esp
45056c:	85 c0                	test   %eax,%eax
45056e:	74 2e                	je     0x45059e
450570:	6a 00                	push   $0x0
450572:	8d 45 fc             	lea    -0x4(%ebp),%eax
450575:	4f                   	dec    %edi
450576:	50                   	push   %eax
450577:	56                   	push   %esi
450578:	89 7d fc             	mov    %edi,-0x4(%ebp)
45057b:	e8 84 f4 00 00       	call   0x45fa04
450580:	8d 4d d8             	lea    -0x28(%ebp),%ecx
450583:	51                   	push   %ecx
450584:	8b 4d f4             	mov    -0xc(%ebp),%ecx
450587:	50                   	push   %eax
450588:	e8 a4 61 00 00       	call   0x456731
45058d:	8d 45 d8             	lea    -0x28(%ebp),%eax
450590:	8b cb                	mov    %ebx,%ecx
450592:	50                   	push   %eax
450593:	e8 f6 76 fb ff       	call   0x407c8e
450598:	ff 45 f0             	incl   -0x10(%ebp)
45059b:	8b 7d fc             	mov    -0x4(%ebp),%edi
45059e:	dd 05 10 6f 4b 00    	fldl   0x4b6f10
4505a4:	dd 05 08 6f 4b 00    	fldl   0x4b6f08
4505aa:	dd 05 00 6f 4b 00    	fldl   0x4b6f00
4505b0:	e9 eb 51 fc ff       	jmp    0x4157a0
4505b5:	6a 01                	push   $0x1
4505b7:	8d 45 fc             	lea    -0x4(%ebp),%eax
4505ba:	dd da                	fstp   %st(2)
4505bc:	50                   	push   %eax
4505bd:	dd d8                	fstp   %st(0)
4505bf:	56                   	push   %esi
4505c0:	dd d8                	fstp   %st(0)
4505c2:	e8 3d f4 00 00       	call   0x45fa04
4505c7:	85 c0                	test   %eax,%eax
4505c9:	79 b5                	jns    0x450580
4505cb:	8b 7d fc             	mov    -0x4(%ebp),%edi
4505ce:	57                   	push   %edi
4505cf:	47                   	inc    %edi
4505d0:	8b ce                	mov    %esi,%ecx
4505d2:	89 7d fc             	mov    %edi,-0x4(%ebp)
4505d5:	e8 46 75 fb ff       	call   0x407b20
4505da:	8b cb                	mov    %ebx,%ecx
4505dc:	0f b7 00             	movzwl (%eax),%eax
4505df:	50                   	push   %eax
4505e0:	e8 9f 74 fb ff       	call   0x407a84
4505e5:	eb b7                	jmp    0x45059e
4505e7:	dd da                	fstp   %st(2)
4505e9:	48                   	dec    %eax
4505ea:	89 01                	mov    %eax,(%ecx)
4505ec:	dd d8                	fstp   %st(0)
4505ee:	8b cb                	mov    %ebx,%ecx
4505f0:	dd d8                	fstp   %st(0)
4505f2:	e8 92 7b fb ff       	call   0x408189
4505f7:	8b 43 04             	mov    0x4(%ebx),%eax
4505fa:	83 c0 02             	add    $0x2,%eax
4505fd:	50                   	push   %eax
4505fe:	e8 6d 7b fb ff       	call   0x408170
450603:	33 c9                	xor    %ecx,%ecx
450605:	89 43 08             	mov    %eax,0x8(%ebx)
450608:	ba 02 00 00 00       	mov    $0x2,%edx
45060d:	f7 e2                	mul    %edx
45060f:	0f 90 c1             	seto   %cl
450612:	f7 d9                	neg    %ecx
450614:	0b c8                	or     %eax,%ecx
450616:	51                   	push   %ecx
450617:	e8 da 09 fd ff       	call   0x420ff6
45061c:	8b f0                	mov    %eax,%esi
45061e:	83 c4 04             	add    $0x4,%esp
450621:	8b 43 04             	mov    0x4(%ebx),%eax
450624:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
45062b:	50                   	push   %eax
45062c:	ff 33                	push   (%ebx)
45062e:	56                   	push   %esi
45062f:	e8 4c 0a fd ff       	call   0x421080
450634:	89 33                	mov    %esi,(%ebx)
450636:	83 c4 0c             	add    $0xc,%esp
450639:	8b 75 08             	mov    0x8(%ebp),%esi
45063c:	e9 1a 01 00 00       	jmp    0x45075b
450641:	3d c2 41 00 00       	cmp    $0x41c2,%eax
450646:	73 0d                	jae    0x450655
450648:	dd da                	fstp   %st(2)
45064a:	03 c0                	add    %eax,%eax
45064c:	dd d8                	fstp   %st(0)
45064e:	dd d8                	fstp   %st(0)
450650:	e9 b2 00 00 00       	jmp    0x450707
450655:	3d 00 00 00 02       	cmp    $0x2000000,%eax
45065a:	73 37                	jae    0x450693
45065c:	89 45 0c             	mov    %eax,0xc(%ebp)
45065f:	dd d9                	fstp   %st(1)
450661:	dd d8                	fstp   %st(0)
450663:	db 45 0c             	fildl  0xc(%ebp)
450666:	85 c0                	test   %eax,%eax
450668:	79 06                	jns    0x450670
45066a:	dc 05 c8 ba 4b 00    	faddl  0x4bbac8
450670:	dd 5d e8             	fstpl  -0x18(%ebp)
450673:	d9 7d 0e             	fnstcw 0xe(%ebp)
450676:	dc 4d e8             	fmull  -0x18(%ebp)
450679:	0f b7 45 0e          	movzwl 0xe(%ebp),%eax
45067d:	0d 00 0c 00 00       	or     $0xc00,%eax
450682:	89 45 ec             	mov    %eax,-0x14(%ebp)
450685:	d9 6d ec             	fldcw  -0x14(%ebp)
450688:	df 7d e8             	fistpll -0x18(%ebp)
45068b:	8b 45 e8             	mov    -0x18(%ebp),%eax
45068e:	d9 6d 0e             	fldcw  0xe(%ebp)
450691:	eb 71                	jmp    0x450704
450693:	dd da                	fstp   %st(2)
450695:	3d 00 00 00 08       	cmp    $0x8000000,%eax
45069a:	73 35                	jae    0x4506d1
45069c:	89 45 0c             	mov    %eax,0xc(%ebp)
45069f:	dd d9                	fstp   %st(1)
4506a1:	db 45 0c             	fildl  0xc(%ebp)
4506a4:	85 c0                	test   %eax,%eax
4506a6:	79 06                	jns    0x4506ae
4506a8:	dc 05 c8 ba 4b 00    	faddl  0x4bbac8
4506ae:	dd 5d e8             	fstpl  -0x18(%ebp)
4506b1:	d9 7d 0e             	fnstcw 0xe(%ebp)
4506b4:	dc 4d e8             	fmull  -0x18(%ebp)
4506b7:	0f b7 45 0e          	movzwl 0xe(%ebp),%eax
4506bb:	0d 00 0c 00 00       	or     $0xc00,%eax
4506c0:	89 45 ec             	mov    %eax,-0x14(%ebp)
4506c3:	d9 6d ec             	fldcw  -0x14(%ebp)
4506c6:	df 7d e8             	fistpll -0x18(%ebp)
4506c9:	8b 45 e8             	mov    -0x18(%ebp),%eax
4506cc:	d9 6d 0e             	fldcw  0xe(%ebp)
4506cf:	eb 33                	jmp    0x450704
4506d1:	89 45 0c             	mov    %eax,0xc(%ebp)
4506d4:	dd d8                	fstp   %st(0)
4506d6:	db 45 0c             	fildl  0xc(%ebp)
4506d9:	85 c0                	test   %eax,%eax
4506db:	79 06                	jns    0x4506e3
4506dd:	dc 05 c8 ba 4b 00    	faddl  0x4bbac8
4506e3:	dd 5d e8             	fstpl  -0x18(%ebp)
4506e6:	d9 7d 0e             	fnstcw 0xe(%ebp)
4506e9:	dc 4d e8             	fmull  -0x18(%ebp)
4506ec:	0f b7 45 0e          	movzwl 0xe(%ebp),%eax
4506f0:	0d 00 0c 00 00       	or     $0xc00,%eax
4506f5:	89 45 ec             	mov    %eax,-0x14(%ebp)
4506f8:	d9 6d ec             	fldcw  -0x14(%ebp)
4506fb:	df 7d e8             	fistpll -0x18(%ebp)
4506fe:	8b 45 e8             	mov    -0x18(%ebp),%eax
450701:	d9 6d 0e             	fldcw  0xe(%ebp)
450704:	8b 7d fc             	mov    -0x4(%ebp),%edi
450707:	50                   	push   %eax
450708:	89 43 08             	mov    %eax,0x8(%ebx)
45070b:	e8 60 7a fb ff       	call   0x408170
450710:	33 c9                	xor    %ecx,%ecx
450712:	89 43 08             	mov    %eax,0x8(%ebx)
450715:	ba 02 00 00 00       	mov    $0x2,%edx
45071a:	f7 e2                	mul    %edx
45071c:	0f 90 c1             	seto   %cl
45071f:	f7 d9                	neg    %ecx
450721:	0b c8                	or     %eax,%ecx
450723:	51                   	push   %ecx
450724:	e8 7c 08 fd ff       	call   0x420fa5
450729:	8b 13                	mov    (%ebx),%edx
45072b:	83 c4 04             	add    $0x4,%esp
45072e:	8b c8                	mov    %eax,%ecx
450730:	89 4d 0c             	mov    %ecx,0xc(%ebp)
450733:	85 d2                	test   %edx,%edx
450735:	74 22                	je     0x450759
450737:	8b 43 04             	mov    0x4(%ebx),%eax
45073a:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
450741:	50                   	push   %eax
450742:	52                   	push   %edx
450743:	51                   	push   %ecx
450744:	e8 37 09 fd ff       	call   0x421080
450749:	83 c4 0c             	add    $0xc,%esp
45074c:	ff 33                	push   (%ebx)
45074e:	e8 5d 29 fd ff       	call   0x4230b0
450753:	8b 4d 0c             	mov    0xc(%ebp),%ecx
450756:	83 c4 04             	add    $0x4,%esp
450759:	89 0b                	mov    %ecx,(%ebx)
45075b:	dd 05 10 6f 4b 00    	fldl   0x4b6f10
450761:	dd 05 08 6f 4b 00    	fldl   0x4b6f08
450767:	dd 05 00 6f 4b 00    	fldl   0x4b6f00
45076d:	e9 14 50 fc ff       	jmp    0x415786
450772:	3b fa                	cmp    %edx,%edi
450774:	0f 83 b0 50 fc ff    	jae    0x41582a
45077a:	83 f8 ff             	cmp    $0xffffffff,%eax
45077d:	74 09                	je     0x450788
45077f:	03 c7                	add    %edi,%eax
450781:	3b c2                	cmp    %edx,%eax
450783:	8b 45 0c             	mov    0xc(%ebp),%eax
450786:	76 03                	jbe    0x45078b
450788:	89 45 0c             	mov    %eax,0xc(%ebp)
45078b:	8b 11                	mov    (%ecx),%edx
45078d:	83 fa 01             	cmp    $0x1,%edx
450790:	7e 34                	jle    0x4507c6
450792:	8d 42 ff             	lea    -0x1(%edx),%eax
450795:	89 01                	mov    %eax,(%ecx)
450797:	8d 4d c8             	lea    -0x38(%ebp),%ecx
45079a:	e8 ea 79 fb ff       	call   0x408189
45079f:	8b 75 0c             	mov    0xc(%ebp),%esi
4507a2:	8d 46 01             	lea    0x1(%esi),%eax
4507a5:	50                   	push   %eax
4507a6:	e8 c5 79 fb ff       	call   0x408170
4507ab:	33 c9                	xor    %ecx,%ecx
4507ad:	ba 02 00 00 00       	mov    $0x2,%edx
4507b2:	f7 e2                	mul    %edx
4507b4:	0f 90 c1             	seto   %cl
4507b7:	f7 d9                	neg    %ecx
4507b9:	0b c8                	or     %eax,%ecx
4507bb:	51                   	push   %ecx
4507bc:	e8 35 08 fd ff       	call   0x420ff6
4507c1:	83 c4 04             	add    $0x4,%esp
4507c4:	eb 0f                	jmp    0x4507d5
4507c6:	50                   	push   %eax
4507c7:	8d 4d c8             	lea    -0x38(%ebp),%ecx
4507ca:	e8 b8 78 fb ff       	call   0x408087
4507cf:	8b 45 c8             	mov    -0x38(%ebp),%eax
4507d2:	8b 75 0c             	mov    0xc(%ebp),%esi
4507d5:	89 45 fc             	mov    %eax,-0x4(%ebp)
4507d8:	8b 45 08             	mov    0x8(%ebp),%eax
4507db:	89 75 f8             	mov    %esi,-0x8(%ebp)
4507de:	03 f6                	add    %esi,%esi
4507e0:	56                   	push   %esi
4507e1:	8b 00                	mov    (%eax),%eax
4507e3:	8d 04 78             	lea    (%eax,%edi,2),%eax
4507e6:	8b 7d fc             	mov    -0x4(%ebp),%edi
4507e9:	50                   	push   %eax
4507ea:	57                   	push   %edi