43e621:	89 45 fc             	mov    %eax,-0x4(%ebp)
43e624:	8d 45 fc             	lea    -0x4(%ebp),%eax
43e627:	50                   	push   %eax
43e628:	56                   	push   %esi
43e629:	e8 7d ff ff ff       	call   0x43e5ab
43e62e:	59                   	pop    %ecx
43e62f:	59                   	pop    %ecx
43e630:	eb 1b                	jmp    0x43e64d
43e632:	e8 ec 57 ff ff       	call   0x433e23
43e637:	83 20 00             	andl   $0x0,(%eax)
43e63a:	e8 f7 57 ff ff       	call   0x433e36
43e63f:	c7 00 09 00 00 00    	movl   $0x9,(%eax)
43e645:	e8 30 57 ff ff       	call   0x433d7a
43e64a:	83 c8 ff             	or     $0xffffffff,%eax
43e64d:	5e                   	pop    %esi
43e64e:	8b e5                	mov    %ebp,%esp
43e650:	5d                   	pop    %ebp
43e651:	c3                   	ret
43e652:	8b ff                	mov    %edi,%edi
43e654:	55                   	push   %ebp
43e655:	8b ec                	mov    %esp,%ebp
43e657:	56                   	push   %esi
43e658:	57                   	push   %edi
43e659:	8b 7d 08             	mov    0x8(%ebp),%edi
43e65c:	57                   	push   %edi
43e65d:	e8 ec a6 ff ff       	call   0x438d4e
43e662:	59                   	pop    %ecx
43e663:	83 f8 ff             	cmp    $0xffffffff,%eax
43e666:	75 04                	jne    0x43e66c
43e668:	33 f6                	xor    %esi,%esi
43e66a:	eb 4e                	jmp    0x43e6ba
43e66c:	a1 58 b1 46 00       	mov    0x46b158,%eax
43e671:	83 ff 01             	cmp    $0x1,%edi
43e674:	75 09                	jne    0x43e67f
43e676:	f6 80 88 00 00 00 01 	testb  $0x1,0x88(%eax)
43e67d:	75 0b                	jne    0x43e68a
43e67f:	83 ff 02             	cmp    $0x2,%edi
43e682:	75 1c                	jne    0x43e6a0
43e684:	f6 40 58 01          	testb  $0x1,0x58(%eax)
43e688:	74 16                	je     0x43e6a0
43e68a:	6a 02                	push   $0x2
43e68c:	e8 bd a6 ff ff       	call   0x438d4e
43e691:	6a 01                	push   $0x1
43e693:	8b f0                	mov    %eax,%esi
43e695:	e8 b4 a6 ff ff       	call   0x438d4e
43e69a:	59                   	pop    %ecx
43e69b:	59                   	pop    %ecx
43e69c:	3b c6                	cmp    %esi,%eax
43e69e:	74 c8                	je     0x43e668
43e6a0:	57                   	push   %edi
43e6a1:	e8 a8 a6 ff ff       	call   0x438d4e
43e6a6:	59                   	pop    %ecx
43e6a7:	50                   	push   %eax
43e6a8:	ff 15 d4 b0 44 00    	call   *0x44b0d4
43e6ae:	85 c0                	test   %eax,%eax
43e6b0:	75 b6                	jne    0x43e668
43e6b2:	ff 15 e8 b0 44 00    	call   *0x44b0e8
43e6b8:	8b f0                	mov    %eax,%esi
43e6ba:	57                   	push   %edi
43e6bb:	e8 fd a5 ff ff       	call   0x438cbd
43e6c0:	59                   	pop    %ecx
43e6c1:	8b cf                	mov    %edi,%ecx
43e6c3:	83 e7 3f             	and    $0x3f,%edi
43e6c6:	c1 f9 06             	sar    $0x6,%ecx
43e6c9:	6b d7 30             	imul   $0x30,%edi,%edx
43e6cc:	8b 0c 8d 58 b1 46 00 	mov    0x46b158(,%ecx,4),%ecx
43e6d3:	c6 44 11 28 00       	movb   $0x0,0x28(%ecx,%edx,1)
43e6d8:	85 f6                	test   %esi,%esi
43e6da:	74 0c                	je     0x43e6e8
43e6dc:	56                   	push   %esi
43e6dd:	e8 1e 57 ff ff       	call   0x433e00
43e6e2:	59                   	pop    %ecx
43e6e3:	83 c8 ff             	or     $0xffffffff,%eax
43e6e6:	eb 02                	jmp    0x43e6ea
43e6e8:	33 c0                	xor    %eax,%eax
43e6ea:	5f                   	pop    %edi
43e6eb:	5e                   	pop    %esi
43e6ec:	5d                   	pop    %ebp
43e6ed:	c3                   	ret
43e6ee:	8b ff                	mov    %edi,%edi
43e6f0:	55                   	push   %ebp
43e6f1:	8b ec                	mov    %esp,%ebp
43e6f3:	8b 45 08             	mov    0x8(%ebp),%eax
43e6f6:	33 c9                	xor    %ecx,%ecx
43e6f8:	89 08                	mov    %ecx,(%eax)
43e6fa:	8b 45 08             	mov    0x8(%ebp),%eax
43e6fd:	89 48 04             	mov    %ecx,0x4(%eax)
43e700:	8b 45 08             	mov    0x8(%ebp),%eax
43e703:	89 48 08             	mov    %ecx,0x8(%eax)
43e706:	8b 45 08             	mov    0x8(%ebp),%eax
43e709:	83 48 10 ff          	orl    $0xffffffff,0x10(%eax)
43e70d:	8b 45 08             	mov    0x8(%ebp),%eax
43e710:	89 48 14             	mov    %ecx,0x14(%eax)
43e713:	8b 45 08             	mov    0x8(%ebp),%eax
43e716:	89 48 18             	mov    %ecx,0x18(%eax)
43e719:	8b 45 08             	mov    0x8(%ebp),%eax
43e71c:	89 48 1c             	mov    %ecx,0x1c(%eax)
43e71f:	8b 45 08             	mov    0x8(%ebp),%eax
43e722:	83 c0 0c             	add    $0xc,%eax
43e725:	87 08                	xchg   %ecx,(%eax)
43e727:	5d                   	pop    %ebp
43e728:	c3                   	ret
43e729:	cc                   	int3
43e72a:	cc                   	int3
43e72b:	cc                   	int3
43e72c:	cc                   	int3
43e72d:	cc                   	int3
43e72e:	cc                   	int3
43e72f:	cc                   	int3
43e730:	55                   	push   %ebp
43e731:	8b ec                	mov    %esp,%ebp
43e733:	57                   	push   %edi
43e734:	56                   	push   %esi
43e735:	53                   	push   %ebx
43e736:	8b 4d 10             	mov    0x10(%ebp),%ecx
43e739:	0b c9                	or     %ecx,%ecx
43e73b:	74 4d                	je     0x43e78a
43e73d:	8b 75 08             	mov    0x8(%ebp),%esi
43e740:	8b 7d 0c             	mov    0xc(%ebp),%edi
43e743:	b7 41                	mov    $0x41,%bh
43e745:	b3 5a                	mov    $0x5a,%bl
43e747:	b6 20                	mov    $0x20,%dh
43e749:	8d 49 00             	lea    0x0(%ecx),%ecx
43e74c:	8a 26                	mov    (%esi),%ah
43e74e:	0a e4                	or     %ah,%ah
43e750:	8a 07                	mov    (%edi),%al
43e752:	74 27                	je     0x43e77b
43e754:	0a c0                	or     %al,%al
43e756:	74 23                	je     0x43e77b
43e758:	83 c6 01             	add    $0x1,%esi
43e75b:	83 c7 01             	add    $0x1,%edi
43e75e:	3a e7                	cmp    %bh,%ah
43e760:	72 06                	jb     0x43e768
43e762:	3a e3                	cmp    %bl,%ah
43e764:	77 02                	ja     0x43e768
43e766:	02 e6                	add    %dh,%ah
43e768:	3a c7                	cmp    %bh,%al
43e76a:	72 06                	jb     0x43e772
43e76c:	3a c3                	cmp    %bl,%al
43e76e:	77 02                	ja     0x43e772
43e770:	02 c6                	add    %dh,%al
43e772:	3a e0                	cmp    %al,%ah
43e774:	75 0b                	jne    0x43e781
43e776:	83 e9 01             	sub    $0x1,%ecx
43e779:	75 d1                	jne    0x43e74c
43e77b:	33 c9                	xor    %ecx,%ecx
43e77d:	3a e0                	cmp    %al,%ah
43e77f:	74 09                	je     0x43e78a
43e781:	b9 ff ff ff ff       	mov    $0xffffffff,%ecx
43e786:	72 02                	jb     0x43e78a
43e788:	f7 d9                	neg    %ecx
43e78a:	8b c1                	mov    %ecx,%eax
43e78c:	5b                   	pop    %ebx
43e78d:	5e                   	pop    %esi
43e78e:	5f                   	pop    %edi
43e78f:	c9                   	leave
43e790:	c3                   	ret
43e791:	8b ff                	mov    %edi,%edi
43e793:	55                   	push   %ebp
43e794:	8b ec                	mov    %esp,%ebp
43e796:	51                   	push   %ecx
43e797:	51                   	push   %ecx
43e798:	dd 45 08             	fldl   0x8(%ebp)
43e79b:	51                   	push   %ecx
43e79c:	51                   	push   %ecx
43e79d:	dd 1c 24             	fstpl  (%esp)
43e7a0:	e8 00 0b 00 00       	call   0x43f2a5
43e7a5:	59                   	pop    %ecx
43e7a6:	59                   	pop    %ecx
43e7a7:	a8 90                	test   $0x90,%al
43e7a9:	75 4a                	jne    0x43e7f5
43e7ab:	dd 45 08             	fldl   0x8(%ebp)
43e7ae:	51                   	push   %ecx
43e7af:	51                   	push   %ecx
43e7b0:	dd 1c 24             	fstpl  (%esp)
43e7b3:	e8 79 02 00 00       	call   0x43ea31
43e7b8:	dd 45 08             	fldl   0x8(%ebp)
43e7bb:	dd e1                	fucom  %st(1)
43e7bd:	df e0                	fnstsw %ax
43e7bf:	59                   	pop    %ecx
43e7c0:	59                   	pop    %ecx
43e7c1:	dd d9                	fstp   %st(1)
43e7c3:	f6 c4 44             	test   $0x44,%ah
43e7c6:	7a 2b                	jp     0x43e7f3
43e7c8:	dc 0d 80 5f 46 00    	fmull  0x465f80
43e7ce:	51                   	push   %ecx
43e7cf:	51                   	push   %ecx
43e7d0:	dd 55 f8             	fstl   -0x8(%ebp)
43e7d3:	dd 1c 24             	fstpl  (%esp)
43e7d6:	e8 56 02 00 00       	call   0x43ea31
43e7db:	dd 45 f8             	fldl   -0x8(%ebp)
43e7de:	da e9                	fucompp
43e7e0:	df e0                	fnstsw %ax
43e7e2:	59                   	pop    %ecx
43e7e3:	59                   	pop    %ecx
43e7e4:	f6 c4 44             	test   $0x44,%ah
43e7e7:	7a 05                	jp     0x43e7ee
43e7e9:	6a 02                	push   $0x2
43e7eb:	58                   	pop    %eax
43e7ec:	eb 09                	jmp    0x43e7f7
43e7ee:	33 c0                	xor    %eax,%eax
43e7f0:	40                   	inc    %eax
43e7f1:	eb 04                	jmp    0x43e7f7
43e7f3:	dd d8                	fstp   %st(0)
43e7f5:	33 c0                	xor    %eax,%eax
43e7f7:	8b e5                	mov    %ebp,%esp
43e7f9:	5d                   	pop    %ebp
43e7fa:	c3                   	ret
43e7fb:	8b ff                	mov    %edi,%edi
43e7fd:	55                   	push   %ebp
43e7fe:	8b ec                	mov    %esp,%ebp
43e800:	dd 45 08             	fldl   0x8(%ebp)
43e803:	b9 00 00 f0 7f       	mov    $0x7ff00000,%ecx
43e808:	d9 e1                	fabs
43e80a:	b8 00 00 f0 ff       	mov    $0xfff00000,%eax
43e80f:	39 4d 14             	cmp    %ecx,0x14(%ebp)
43e812:	75 3b                	jne    0x43e84f
43e814:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
43e818:	75 75                	jne    0x43e88f
43e81a:	d9 e8                	fld1
43e81c:	d8 d1                	fcom   %st(1)
43e81e:	df e0                	fnstsw %ax
43e820:	f6 c4 05             	test   $0x5,%ah
43e823:	7a 0f                	jp     0x43e834
43e825:	dd d9                	fstp   %st(1)
43e827:	dd d8                	fstp   %st(0)
43e829:	dd 05 10 61 46 00    	fldl   0x466110
43e82f:	e9 e9 00 00 00       	jmp    0x43e91d
43e834:	d8 d1                	fcom   %st(1)
43e836:	df e0                	fnstsw %ax
43e838:	dd d9                	fstp   %st(1)
43e83a:	f6 c4 41             	test   $0x41,%ah
43e83d:	8b 45 18             	mov    0x18(%ebp),%eax
43e840:	0f 85 da 00 00 00    	jne    0x43e920
43e846:	dd d8                	fstp   %st(0)
43e848:	d9 ee                	fldz
43e84a:	e9 d1 00 00 00       	jmp    0x43e920
43e84f:	39 45 14             	cmp    %eax,0x14(%ebp)
43e852:	75 3b                	jne    0x43e88f
43e854:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
43e858:	75 35                	jne    0x43e88f
43e85a:	d9 e8                	fld1
43e85c:	d8 d1                	fcom   %st(1)
43e85e:	df e0                	fnstsw %ax
43e860:	f6 c4 05             	test   $0x5,%ah
43e863:	7a 0b                	jp     0x43e870
43e865:	dd d9                	fstp   %st(1)
43e867:	dd d8                	fstp   %st(0)
43e869:	d9 ee                	fldz
43e86b:	e9 ad 00 00 00       	jmp    0x43e91d
43e870:	d8 d1                	fcom   %st(1)
43e872:	df e0                	fnstsw %ax
43e874:	dd d9                	fstp   %st(1)
43e876:	f6 c4 41             	test   $0x41,%ah
43e879:	8b 45 18             	mov    0x18(%ebp),%eax
43e87c:	0f 85 9e 00 00 00    	jne    0x43e920
43e882:	dd d8                	fstp   %st(0)
43e884:	dd 05 10 61 46 00    	fldl   0x466110
43e88a:	e9 91 00 00 00       	jmp    0x43e920
43e88f:	dd d8                	fstp   %st(0)
43e891:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
43e894:	75 2e                	jne    0x43e8c4
43e896:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
43e89a:	0f 85 82 00 00 00    	jne    0x43e922
43e8a0:	d9 ee                	fldz
43e8a2:	dd 45 10             	fldl   0x10(%ebp)
43e8a5:	d8 d1                	fcom   %st(1)
43e8a7:	df e0                	fnstsw %ax
43e8a9:	f6 c4 41             	test   $0x41,%ah
43e8ac:	0f 84 73 ff ff ff    	je     0x43e825
43e8b2:	d8 d9                	fcomp  %st(1)
43e8b4:	df e0                	fnstsw %ax
43e8b6:	f6 c4 05             	test   $0x5,%ah
43e8b9:	8b 45 18             	mov    0x18(%ebp),%eax
43e8bc:	7b 62                	jnp    0x43e920
43e8be:	dd d8                	fstp   %st(0)
43e8c0:	d9 e8                	fld1
43e8c2:	eb 5c                	jmp    0x43e920
43e8c4:	39 45 0c             	cmp    %eax,0xc(%ebp)
43e8c7:	75 59                	jne    0x43e922
43e8c9:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
43e8cd:	75 53                	jne    0x43e922
43e8cf:	dd 45 10             	fldl   0x10(%ebp)
43e8d2:	51                   	push   %ecx
43e8d3:	51                   	push   %ecx
43e8d4:	dd 1c 24             	fstpl  (%esp)
43e8d7:	e8 b5 fe ff ff       	call   0x43e791
43e8dc:	d9 ee                	fldz
43e8de:	dd 45 10             	fldl   0x10(%ebp)
43e8e1:	59                   	pop    %ecx
43e8e2:	59                   	pop    %ecx
43e8e3:	d8 d1                	fcom   %st(1)
43e8e5:	8b c8                	mov    %eax,%ecx
43e8e7:	df e0                	fnstsw %ax
43e8e9:	f6 c4 41             	test   $0x41,%ah
43e8ec:	75 13                	jne    0x43e901
43e8ee:	dd d9                	fstp   %st(1)
43e8f0:	dd d8                	fstp   %st(0)
43e8f2:	dd 05 10 61 46 00    	fldl   0x466110
43e8f8:	83 f9 01             	cmp    $0x1,%ecx
43e8fb:	75 20                	jne    0x43e91d
43e8fd:	d9 e0                	fchs
43e8ff:	eb 1c                	jmp    0x43e91d
43e901:	d8 d9                	fcomp  %st(1)
43e903:	df e0                	fnstsw %ax
43e905:	f6 c4 05             	test   $0x5,%ah
43e908:	7a 0f                	jp     0x43e919
43e90a:	83 f9 01             	cmp    $0x1,%ecx
43e90d:	75 0e                	jne    0x43e91d
43e90f:	dd d8                	fstp   %st(0)
43e911:	dd 05 20 61 46 00    	fldl   0x466120
43e917:	eb 04                	jmp    0x43e91d
43e919:	dd d8                	fstp   %st(0)
43e91b:	d9 e8                	fld1
43e91d:	8b 45 18             	mov    0x18(%ebp),%eax
43e920:	dd 18                	fstpl  (%eax)
43e922:	33 c0                	xor    %eax,%eax
43e924:	5d                   	pop    %ebp
43e925:	c3                   	ret
43e926:	8b ff                	mov    %edi,%edi
43e928:	53                   	push   %ebx
43e929:	8b dc                	mov    %esp,%ebx
43e92b:	51                   	push   %ecx
43e92c:	51                   	push   %ecx
43e92d:	83 e4 f0             	and    $0xfffffff0,%esp
43e930:	83 c4 04             	add    $0x4,%esp
43e933:	55                   	push   %ebp
43e934:	8b 6b 04             	mov    0x4(%ebx),%ebp
43e937:	89 6c 24 04          	mov    %ebp,0x4(%esp)
43e93b:	8b ec                	mov    %esp,%ebp
43e93d:	81 ec 88 00 00 00    	sub    $0x88,%esp
43e943:	a1 08 a0 46 00       	mov    0x46a008,%eax
43e948:	33 c5                	xor    %ebp,%eax
43e94a:	89 45 fc             	mov    %eax,-0x4(%ebp)
43e94d:	8b 43 10             	mov    0x10(%ebx),%eax
43e950:	56                   	push   %esi
43e951:	8b 73 0c             	mov    0xc(%ebx),%esi
43e954:	57                   	push   %edi
43e955:	0f b7 08             	movzwl (%eax),%ecx
43e958:	89 8d 7c ff ff ff    	mov    %ecx,-0x84(%ebp)
43e95e:	8b 06                	mov    (%esi),%eax
43e960:	83 e8 01             	sub    $0x1,%eax
43e963:	74 29                	je     0x43e98e
43e965:	83 e8 01             	sub    $0x1,%eax
43e968:	74 20                	je     0x43e98a
43e96a:	83 e8 01             	sub    $0x1,%eax
43e96d:	74 17                	je     0x43e986
43e96f:	83 e8 01             	sub    $0x1,%eax
43e972:	74 0e                	je     0x43e982
43e974:	83 e8 01             	sub    $0x1,%eax