4343dc:	dd 45 f8             	fldl   -0x8(%ebp)
4343df:	d8 c9                	fmul   %st(1),%st
4343e1:	db 46 04             	fildl  0x4(%esi)
4343e4:	d9 e8                	fld1
4343e6:	d8 d3                	fcom   %st(3)
4343e8:	df e0                	fnstsw %ax
4343ea:	dd db                	fstp   %st(3)
4343ec:	f6 c4 01             	test   $0x1,%ah
4343ef:	75 0e                	jne    0x4343ff
4343f1:	dd da                	fstp   %st(2)
4343f3:	e8 29 cc 05 00       	call   0x491021
4343f8:	89 06                	mov    %eax,(%esi)
4343fa:	dc 4f 58             	fmull  0x58(%edi)
4343fd:	eb 10                	jmp    0x43440f
4343ff:	d9 c9                	fxch   %st(1)
434401:	d8 c2                	fadd   %st(2),%st
434403:	e8 19 cc 05 00       	call   0x491021
434408:	89 06                	mov    %eax,(%esi)
43440a:	dc 4f 58             	fmull  0x58(%edi)
43440d:	de c1                	faddp  %st,%st(1)
43440f:	e8 0d cc 05 00       	call   0x491021
434414:	5f                   	pop    %edi
434415:	89 46 04             	mov    %eax,0x4(%esi)
434418:	5e                   	pop    %esi
434419:	c9                   	leave
43441a:	c2 04 00             	ret    $0x4
43441d:	8b ff                	mov    %edi,%edi
43441f:	55                   	push   %ebp
434420:	8b ec                	mov    %esp,%ebp
434422:	56                   	push   %esi
434423:	8b f1                	mov    %ecx,%esi
434425:	57                   	push   %edi
434426:	8b 7d 08             	mov    0x8(%ebp),%edi
434429:	8b 46 48             	mov    0x48(%esi),%eax
43442c:	ff 70 30             	push   0x30(%eax)
43442f:	ff 70 2c             	push   0x2c(%eax)
434432:	6a 00                	push   $0x0
434434:	6a 00                	push   $0x0
434436:	57                   	push   %edi
434437:	ff 15 08 7e 4a 00    	call   *0x4a7e08
43443d:	57                   	push   %edi
43443e:	8b ce                	mov    %esi,%ecx
434440:	e8 7d fe ff ff       	call   0x4342c2
434445:	83 3d 18 58 4a 00 00 	cmpl   $0x0,0x4a5818
43444c:	74 06                	je     0x434454
43444e:	ff 47 08             	incl   0x8(%edi)
434451:	ff 47 0c             	incl   0xc(%edi)
434454:	5f                   	pop    %edi
434455:	5e                   	pop    %esi
434456:	5d                   	pop    %ebp
434457:	c2 04 00             	ret    $0x4
43445a:	8b ff                	mov    %edi,%edi
43445c:	55                   	push   %ebp
43445d:	8b ec                	mov    %esp,%ebp
43445f:	83 ec 1c             	sub    $0x1c,%esp
434462:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
434467:	33 c5                	xor    %ebp,%eax
434469:	89 45 f8             	mov    %eax,-0x8(%ebp)
43446c:	56                   	push   %esi
43446d:	57                   	push   %edi
43446e:	8b 7d 08             	mov    0x8(%ebp),%edi
434471:	8b f1                	mov    %ecx,%esi
434473:	57                   	push   %edi
434474:	e8 a4 ff ff ff       	call   0x43441d
434479:	8d 45 e8             	lea    -0x18(%ebp),%eax
43447c:	50                   	push   %eax
43447d:	ff 76 20             	push   0x20(%esi)
434480:	ff 15 ec 7d 4a 00    	call   *0x4a7dec
434486:	8d 45 e8             	lea    -0x18(%ebp),%eax
434489:	50                   	push   %eax
43448a:	57                   	push   %edi
43448b:	57                   	push   %edi
43448c:	ff 15 f0 7c 4a 00    	call   *0x4a7cf0
434492:	6a 05                	push   $0x5
434494:	6a 05                	push   $0x5
434496:	57                   	push   %edi
434497:	ff 15 28 7d 4a 00    	call   *0x4a7d28
43449d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4344a0:	8b c7                	mov    %edi,%eax
4344a2:	5f                   	pop    %edi
4344a3:	33 cd                	xor    %ebp,%ecx
4344a5:	5e                   	pop    %esi
4344a6:	e8 55 ba 05 00       	call   0x48ff00
4344ab:	c9                   	leave
4344ac:	c2 04 00             	ret    $0x4
4344af:	cc                   	int3
4344b0:	8b ff                	mov    %edi,%edi
4344b2:	55                   	push   %ebp
4344b3:	8b ec                	mov    %esp,%ebp
4344b5:	83 e4 f8             	and    $0xfffffff8,%esp
4344b8:	56                   	push   %esi
4344b9:	8b f1                	mov    %ecx,%esi
4344bb:	57                   	push   %edi
4344bc:	83 7e 48 00          	cmpl   $0x0,0x48(%esi)
4344c0:	74 67                	je     0x434529
4344c2:	ff 76 20             	push   0x20(%esi)
4344c5:	ff 15 3c 7e 4a 00    	call   *0x4a7e3c
4344cb:	8d be 98 00 00 00    	lea    0x98(%esi),%edi
4344d1:	83 7f 14 00          	cmpl   $0x0,0x14(%edi)
4344d5:	75 0a                	jne    0x4344e1
4344d7:	8b cf                	mov    %edi,%ecx
4344d9:	e8 22 52 00 00       	call   0x439700
4344de:	89 47 14             	mov    %eax,0x14(%edi)
4344e1:	8b ce                	mov    %esi,%ecx
4344e3:	e8 ea da ff ff       	call   0x431fd2
4344e8:	8b 0d 74 65 4a 00    	mov    0x4a6574,%ecx
4344ee:	3b ce                	cmp    %esi,%ecx
4344f0:	74 09                	je     0x4344fb
4344f2:	85 c9                	test   %ecx,%ecx
4344f4:	74 05                	je     0x4344fb
4344f6:	e8 e5 38 00 00       	call   0x437de0
4344fb:	8b 4e 48             	mov    0x48(%esi),%ecx
4344fe:	89 35 74 65 4a 00    	mov    %esi,0x4a6574
434504:	3b 0d 4c 65 4a 00    	cmp    0x4a654c,%ecx
43450a:	74 0b                	je     0x434517
43450c:	89 0d 4c 65 4a 00    	mov    %ecx,0x4a654c
434512:	e8 63 8e ff ff       	call   0x42d37a
434517:	8b ce                	mov    %esi,%ecx
434519:	ff 15 1c 77 4a 00    	call   *0x4a771c
43451f:	51                   	push   %ecx
434520:	6a 00                	push   $0x0
434522:	8b ce                	mov    %esi,%ecx
434524:	e8 38 36 00 00       	call   0x437b61
434529:	5f                   	pop    %edi
43452a:	5e                   	pop    %esi
43452b:	8b e5                	mov    %ebp,%esp
43452d:	5d                   	pop    %ebp
43452e:	c2 04 00             	ret    $0x4
434531:	cc                   	int3
434532:	cc                   	int3
434533:	cc                   	int3
434534:	cc                   	int3
434535:	cc                   	int3
434536:	cc                   	int3
434537:	cc                   	int3
434538:	cc                   	int3
434539:	cc                   	int3
43453a:	cc                   	int3
43453b:	cc                   	int3
43453c:	cc                   	int3
43453d:	cc                   	int3
43453e:	cc                   	int3
43453f:	cc                   	int3
434540:	83 3d 30 49 4a 00 00 	cmpl   $0x0,0x4a4930
434547:	56                   	push   %esi
434548:	8b f1                	mov    %ecx,%esi
43454a:	75 05                	jne    0x434551
43454c:	e8 5a 8d ff ff       	call   0x42d2ab
434551:	ff 15 fc 7c 4a 00    	call   *0x4a7cfc
434557:	50                   	push   %eax
434558:	ff 15 ec 76 4a 00    	call   *0x4a76ec
43455e:	3b c6                	cmp    %esi,%eax
434560:	75 07                	jne    0x434569
434562:	8b ce                	mov    %esi,%ecx
434564:	e8 f2 fa ff ff       	call   0x43405b
434569:	8d 8e 98 00 00 00    	lea    0x98(%esi),%ecx
43456f:	e8 72 51 00 00       	call   0x4396e6
434574:	8b ce                	mov    %esi,%ecx
434576:	ff 15 1c 77 4a 00    	call   *0x4a771c
43457c:	5e                   	pop    %esi
43457d:	c2 04 00             	ret    $0x4
434580:	8b ff                	mov    %edi,%edi
434582:	56                   	push   %esi
434583:	8b f1                	mov    %ecx,%esi
434585:	e8 0a f2 ff ff       	call   0x433794
43458a:	8b ce                	mov    %esi,%ecx
43458c:	ff 15 1c 77 4a 00    	call   *0x4a771c
434592:	5e                   	pop    %esi
434593:	c2 0c 00             	ret    $0xc
434596:	8b ff                	mov    %edi,%edi
434598:	55                   	push   %ebp
434599:	8b ec                	mov    %esp,%ebp
43459b:	53                   	push   %ebx
43459c:	56                   	push   %esi
43459d:	57                   	push   %edi
43459e:	8b d9                	mov    %ecx,%ebx
4345a0:	ff 15 44 7d 4a 00    	call   *0x4a7d44
4345a6:	50                   	push   %eax
4345a7:	ff 15 ec 76 4a 00    	call   *0x4a76ec
4345ad:	3b c3                	cmp    %ebx,%eax
4345af:	74 18                	je     0x4345c9
4345b1:	8b cb                	mov    %ebx,%ecx
4345b3:	ff 15 34 77 4a 00    	call   *0x4a7734
4345b9:	ff 73 20             	push   0x20(%ebx)
4345bc:	ff 15 48 7d 4a 00    	call   *0x4a7d48
4345c2:	50                   	push   %eax
4345c3:	ff 15 ec 76 4a 00    	call   *0x4a76ec
4345c9:	8b 45 08             	mov    0x8(%ebp),%eax
4345cc:	83 e0 03             	and    $0x3,%eax
4345cf:	3c 03                	cmp    $0x3,%al
4345d1:	75 62                	jne    0x434635
4345d3:	8b 0d 2c 47 4a 00    	mov    0x4a472c,%ecx
4345d9:	e8 06 8d fe ff       	call   0x41d2e4
4345de:	33 f6                	xor    %esi,%esi
4345e0:	56                   	push   %esi
4345e1:	56                   	push   %esi
4345e2:	51                   	push   %ecx
4345e3:	68 00 04 00 00       	push   $0x400
4345e8:	8b cb                	mov    %ebx,%ecx
4345ea:	e8 d8 13 00 00       	call   0x4359c7
4345ef:	68 16 7f 00 00       	push   $0x7f16
4345f4:	56                   	push   %esi
4345f5:	ff 15 4c 7e 4a 00    	call   *0x4a7e4c
4345fb:	50                   	push   %eax
4345fc:	ff 15 14 7d 4a 00    	call   *0x4a7d14
434602:	8b 3d 08 01 4a 00    	mov    0x4a0108,%edi
434608:	8b 07                	mov    (%edi),%eax
43460a:	8b b0 8c 00 00 00    	mov    0x8c(%eax),%esi
434610:	8b ce                	mov    %esi,%ecx
434612:	ff 15 2c 81 4a 00    	call   *0x4a812c
434618:	8b cf                	mov    %edi,%ecx
43461a:	ff d6                	call   *%esi
43461c:	85 c0                	test   %eax,%eax
43461e:	74 07                	je     0x434627
434620:	8b cb                	mov    %ebx,%ecx
434622:	e8 ed 1a 00 00       	call   0x436114
434627:	c7 05 70 47 4a 00 01 	movl   $0x1,0x4a4770
43462e:	00 00 00
434631:	33 c0                	xor    %eax,%eax
434633:	eb 03                	jmp    0x434638
434635:	33 c0                	xor    %eax,%eax
434637:	40                   	inc    %eax
434638:	5f                   	pop    %edi
434639:	5e                   	pop    %esi
43463a:	5b                   	pop    %ebx
43463b:	5d                   	pop    %ebp
43463c:	c2 04 00             	ret    $0x4
43463f:	8b ff                	mov    %edi,%edi
434641:	55                   	push   %ebp
434642:	8b ec                	mov    %esp,%ebp
434644:	83 3d 70 47 4a 00 00 	cmpl   $0x0,0x4a4770
43464b:	56                   	push   %esi
43464c:	8b f1                	mov    %ecx,%esi
43464e:	74 2c                	je     0x43467c
434650:	f6 45 08 03          	testb  $0x3,0x8(%ebp)
434654:	75 0e                	jne    0x434664
434656:	83 25 70 47 4a 00 00 	andl   $0x0,0x4a4770
43465d:	e8 52 09 00 00       	call   0x434fb4
434662:	eb 14                	jmp    0x434678
434664:	68 00 7f 00 00       	push   $0x7f00
434669:	6a 00                	push   $0x0
43466b:	ff 15 4c 7e 4a 00    	call   *0x4a7e4c
434671:	50                   	push   %eax
434672:	ff 15 14 7d 4a 00    	call   *0x4a7d14
434678:	33 c0                	xor    %eax,%eax
43467a:	eb 4d                	jmp    0x4346c9
43467c:	a1 08 01 4a 00       	mov    0x4a0108,%eax
434681:	81 78 40 59 02 00 00 	cmpl   $0x259,0x40(%eax)
434688:	74 11                	je     0x43469b
43468a:	81 78 40 5a 02 00 00 	cmpl   $0x25a,0x40(%eax)
434691:	74 08                	je     0x43469b
434693:	8b 4e 48             	mov    0x48(%esi),%ecx
434696:	e8 df 8c ff ff       	call   0x42d37a
43469b:	ff 15 38 77 4a 00    	call   *0x4a7738
4346a1:	8b 4d 08             	mov    0x8(%ebp),%ecx
4346a4:	83 e1 08             	and    $0x8,%ecx
4346a7:	89 0d 8c 4a 4a 00    	mov    %ecx,0x4a4a8c
4346ad:	8b 48 0c             	mov    0xc(%eax),%ecx
4346b0:	0f bf d1             	movswl %cx,%edx
4346b3:	c1 e9 10             	shr    $0x10,%ecx
4346b6:	0f bf c9             	movswl %cx,%ecx
4346b9:	51                   	push   %ecx
4346ba:	52                   	push   %edx
4346bb:	51                   	push   %ecx
4346bc:	ff 70 04             	push   0x4(%eax)
4346bf:	8b ce                	mov    %esi,%ecx
4346c1:	e8 01 13 00 00       	call   0x4359c7
4346c6:	33 c0                	xor    %eax,%eax
4346c8:	40                   	inc    %eax
4346c9:	5e                   	pop    %esi
4346ca:	5d                   	pop    %ebp
4346cb:	c2 04 00             	ret    $0x4
4346ce:	cc                   	int3
4346cf:	cc                   	int3
4346d0:	8b ff                	mov    %edi,%edi
4346d2:	55                   	push   %ebp
4346d3:	8b ec                	mov    %esp,%ebp
4346d5:	83 e4 f8             	and    $0xfffffff8,%esp
4346d8:	81 ec 94 00 00 00    	sub    $0x94,%esp
4346de:	53                   	push   %ebx
4346df:	8b d9                	mov    %ecx,%ebx
4346e1:	56                   	push   %esi
4346e2:	57                   	push   %edi
4346e3:	0f b7 7d 08          	movzwl 0x8(%ebp),%edi
4346e7:	8d b3 e4 00 00 00    	lea    0xe4(%ebx),%esi
4346ed:	89 7c 24 0c          	mov    %edi,0xc(%esp)
4346f1:	8b ce                	mov    %esi,%ecx
4346f3:	e8 bf 42 00 00       	call   0x4389b7
4346f8:	3b c7                	cmp    %edi,%eax
4346fa:	73 08                	jae    0x434704
4346fc:	57                   	push   %edi
4346fd:	8b ce                	mov    %esi,%ecx
4346ff:	e8 c9 42 00 00       	call   0x4389cd
434704:	6a 28                	push   $0x28
434706:	ff b3 e8 00 00 00    	push   0xe8(%ebx)
43470c:	57                   	push   %edi
43470d:	ff 75 0c             	push   0xc(%ebp)
434710:	ff 15 4c 7d 4a 00    	call   *0x4a7d4c
434716:	85 c0                	test   %eax,%eax
434718:	0f 84 a7 02 00 00    	je     0x4349c5
43471e:	0f b7 45 08          	movzwl 0x8(%ebp),%eax
434722:	33 c9                	xor    %ecx,%ecx
434724:	66 3b c8             	cmp    %ax,%cx
434727:	0f 83 98 02 00 00    	jae    0x4349c5
43472d:	8b 44 24 0c          	mov    0xc(%esp),%eax
434731:	33 ff                	xor    %edi,%edi
434733:	89 7c 24 10          	mov    %edi,0x10(%esp)
434737:	8b b3 e8 00 00 00    	mov    0xe8(%ebx),%esi
43473d:	8b 4c 37 10          	mov    0x10(%edi,%esi,1),%ecx
434741:	f6 c1 02             	test   $0x2,%cl
434744:	0f 84 fd 00 00 00    	je     0x434847
43474a:	8b 44 37 08          	mov    0x8(%edi,%esi,1),%eax
43474e:	89 44 24 2c          	mov    %eax,0x2c(%esp)
434752:	89 44 24 3c          	mov    %eax,0x3c(%esp)
434756:	8b 44 37 0c          	mov    0xc(%edi,%esi,1),%eax
43475a:	89 44 24 30          	mov    %eax,0x30(%esp)
43475e:	89 44 24 40          	mov    %eax,0x40(%esp)
434762:	8b 44 37 04          	mov    0x4(%edi,%esi,1),%eax
434766:	6a 64                	push   $0x64
434768:	59                   	pop    %ecx
434769:	99                   	cltd
43476a:	f7 f9                	idiv   %ecx
43476c:	6a 64                	push   $0x64
43476e:	8b c8                	mov    %eax,%ecx
434770:	8b 04 37             	mov    (%edi,%esi,1),%eax
434773:	5e                   	pop    %esi
434774:	99                   	cltd
434775:	f7 fe                	idiv   %esi
434777:	89 4c 24 18          	mov    %ecx,0x18(%esp)
43477b:	89 44 24 14          	mov    %eax,0x14(%esp)
43477f:	8d 44 24 14          	lea    0x14(%esp),%eax
434783:	50                   	push   %eax
434784:	ff 73 20             	push   0x20(%ebx)
434787:	ff 15 fc 7d 4a 00    	call   *0x4a7dfc
43478d:	83 bb e0 00 00 00 00 	cmpl   $0x0,0xe0(%ebx)
434794:	74 73                	je     0x434809
434796:	8d 4c 24 3c          	lea    0x3c(%esp),%ecx
43479a:	51                   	push   %ecx
43479b:	8d 4c 24 58          	lea    0x58(%esp),%ecx
43479f:	51                   	push   %ecx
4347a0:	8d 8b d8 00 00 00    	lea    0xd8(%ebx),%ecx
4347a6:	e8 8a 42 00 00       	call   0x438a35
4347ab:	8b 00                	mov    (%eax),%eax
4347ad:	3b 83 dc 00 00 00    	cmp    0xdc(%ebx),%eax
4347b3:	0f 85 f4 01 00 00    	jne    0x4349ad
4347b9:	ff 74 24 18          	push   0x18(%esp)
4347bd:	ff 74 24 18          	push   0x18(%esp)
4347c1:	51                   	push   %ecx
4347c2:	68 00 02 00 00       	push   $0x200
4347c7:	8b cb                	mov    %ebx,%ecx