43a6ae:	00
43a6af:	74 20                	je     0x43a6d1
43a6b1:	c6 06 01             	movb   $0x1,(%esi)
43a6b4:	51                   	push   %ecx
43a6b5:	8b 4d 10             	mov    0x10(%ebp),%ecx
43a6b8:	51                   	push   %ecx
43a6b9:	0f b6 4d 0c          	movzbl 0xc(%ebp),%ecx
43a6bd:	51                   	push   %ecx
43a6be:	56                   	push   %esi
43a6bf:	8b d8                	mov    %eax,%ebx
43a6c1:	8b ca                	mov    %edx,%ecx
43a6c3:	8b d0                	mov    %eax,%edx
43a6c5:	8b 83 e4 00 00 00    	mov    0xe4(%ebx),%eax
43a6cb:	ff 93 e0 00 00 00    	call   *0xe0(%ebx)
43a6d1:	5e                   	pop    %esi
43a6d2:	5b                   	pop    %ebx
43a6d3:	5d                   	pop    %ebp
43a6d4:	c2 0c 00             	ret    $0xc
43a6d7:	90                   	nop
43a6d8:	55                   	push   %ebp
43a6d9:	8b ec                	mov    %esp,%ebp
43a6db:	53                   	push   %ebx
43a6dc:	66 83 b8 da 00 00 00 	cmpw   $0x0,0xda(%eax)
43a6e3:	00
43a6e4:	74 17                	je     0x43a6fd
43a6e6:	51                   	push   %ecx
43a6e7:	8b 4d 08             	mov    0x8(%ebp),%ecx
43a6ea:	51                   	push   %ecx
43a6eb:	8b d8                	mov    %eax,%ebx
43a6ed:	8b ca                	mov    %edx,%ecx
43a6ef:	8b d0                	mov    %eax,%edx
43a6f1:	8b 83 dc 00 00 00    	mov    0xdc(%ebx),%eax
43a6f7:	ff 93 d8 00 00 00    	call   *0xd8(%ebx)
43a6fd:	5b                   	pop    %ebx
43a6fe:	5d                   	pop    %ebp
43a6ff:	c2 04 00             	ret    $0x4
43a702:	8b c0                	mov    %eax,%eax
43a704:	53                   	push   %ebx
43a705:	66 83 b8 02 01 00 00 	cmpw   $0x0,0x102(%eax)
43a70c:	00
43a70d:	74 12                	je     0x43a721
43a70f:	8b ca                	mov    %edx,%ecx
43a711:	8b d8                	mov    %eax,%ebx
43a713:	8b d0                	mov    %eax,%edx
43a715:	8b 83 04 01 00 00    	mov    0x104(%ebx),%eax
43a71b:	ff 93 00 01 00 00    	call   *0x100(%ebx)
43a721:	5b                   	pop    %ebx
43a722:	c3                   	ret
43a723:	90                   	nop
43a724:	55                   	push   %ebp
43a725:	8b ec                	mov    %esp,%ebp
43a727:	53                   	push   %ebx
43a728:	66 83 b8 0a 01 00 00 	cmpw   $0x0,0x10a(%eax)
43a72f:	00
43a730:	74 17                	je     0x43a749
43a732:	51                   	push   %ecx
43a733:	8b 4d 08             	mov    0x8(%ebp),%ecx
43a736:	51                   	push   %ecx
43a737:	8b d8                	mov    %eax,%ebx
43a739:	8b ca                	mov    %edx,%ecx
43a73b:	8b d0                	mov    %eax,%edx
43a73d:	8b 83 0c 01 00 00    	mov    0x10c(%ebx),%eax
43a743:	ff 93 08 01 00 00    	call   *0x108(%ebx)
43a749:	5b                   	pop    %ebx
43a74a:	5d                   	pop    %ebp
43a74b:	c2 04 00             	ret    $0x4
43a74e:	8b c0                	mov    %eax,%eax
43a750:	53                   	push   %ebx
43a751:	56                   	push   %esi
43a752:	57                   	push   %edi
43a753:	55                   	push   %ebp
43a754:	83 c4 ec             	add    $0xffffffec,%esp
43a757:	8b da                	mov    %edx,%ebx
43a759:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
43a75d:	74 0c                	je     0x43a76b
43a75f:	8b 43 08             	mov    0x8(%ebx),%eax
43a762:	80 b8 db 01 00 00 00 	cmpb   $0x0,0x1db(%eax)
43a769:	75 6d                	jne    0x43a7d8
43a76b:	8b 43 40             	mov    0x40(%ebx),%eax
43a76e:	e8 c9 f6 ff ff       	call   0x439e3c
43a773:	8b f8                	mov    %eax,%edi
43a775:	8b 43 40             	mov    0x40(%ebx),%eax
43a778:	e8 ab f6 ff ff       	call   0x439e28
43a77d:	8b e8                	mov    %eax,%ebp
43a77f:	89 7c 24 10          	mov    %edi,0x10(%esp)
43a783:	db 44 24 10          	fildl  0x10(%esp)
43a787:	dc 4b 28             	fmull  0x28(%ebx)
43a78a:	db 43 10             	fildl  0x10(%ebx)
43a78d:	de e1                	fsubp  %st,%st(1)
43a78f:	dd 1c 24             	fstpl  (%esp)
43a792:	9b                   	fwait
43a793:	89 6c 24 10          	mov    %ebp,0x10(%esp)
43a797:	db 44 24 10          	fildl  0x10(%esp)
43a79b:	dc 4b 30             	fmull  0x30(%ebx)
43a79e:	db 43 14             	fildl  0x14(%ebx)
43a7a1:	de e1                	fsubp  %st,%st(1)
43a7a3:	dd 5c 24 08          	fstpl  0x8(%esp)
43a7a7:	9b                   	fwait
43a7a8:	8d 73 4c             	lea    0x4c(%ebx),%esi
43a7ab:	dd 04 24             	fldl   (%esp)
43a7ae:	e8 75 88 fc ff       	call   0x403028
43a7b3:	89 06                	mov    %eax,(%esi)
43a7b5:	dd 44 24 08          	fldl   0x8(%esp)
43a7b9:	e8 6a 88 fc ff       	call   0x403028
43a7be:	89 46 04             	mov    %eax,0x4(%esi)
43a7c1:	03 3e                	add    (%esi),%edi
43a7c3:	89 7e 08             	mov    %edi,0x8(%esi)
43a7c6:	03 6e 04             	add    0x4(%esi),%ebp
43a7c9:	89 6e 0c             	mov    %ebp,0xc(%esi)
43a7cc:	8d 53 4c             	lea    0x4c(%ebx),%edx
43a7cf:	8b c3                	mov    %ebx,%eax
43a7d1:	8b 08                	mov    (%eax),%ecx
43a7d3:	ff 51 2c             	call   *0x2c(%ecx)
43a7d6:	eb 41                	jmp    0x43a819
43a7d8:	8d 43 4c             	lea    0x4c(%ebx),%eax
43a7db:	50                   	push   %eax
43a7dc:	8b 43 08             	mov    0x8(%ebx),%eax
43a7df:	e8 cc 70 00 00       	call   0x4418b0
43a7e4:	50                   	push   %eax
43a7e5:	e8 fe c7 fc ff       	call   0x406fe8
43a7ea:	8b 43 08             	mov    0x8(%ebx),%eax
43a7ed:	80 b8 db 01 00 00 00 	cmpb   $0x0,0x1db(%eax)
43a7f4:	74 23                	je     0x43a819
43a7f6:	83 b8 b0 01 00 00 00 	cmpl   $0x0,0x1b0(%eax)
43a7fd:	74 1a                	je     0x43a819
43a7ff:	0f b6 53 5c          	movzbl 0x5c(%ebx),%edx
43a803:	52                   	push   %edx
43a804:	8d 53 4c             	lea    0x4c(%ebx),%edx
43a807:	52                   	push   %edx
43a808:	8b 80 b0 01 00 00    	mov    0x1b0(%eax),%eax
43a80e:	8b 4b 60             	mov    0x60(%ebx),%ecx
43a811:	8b 53 40             	mov    0x40(%ebx),%edx
43a814:	8b 18                	mov    (%eax),%ebx
43a816:	ff 53 24             	call   *0x24(%ebx)
43a819:	83 c4 14             	add    $0x14,%esp
43a81c:	5d                   	pop    %ebp
43a81d:	5f                   	pop    %edi
43a81e:	5e                   	pop    %esi
43a81f:	5b                   	pop    %ebx
43a820:	c3                   	ret
43a821:	8d 40 00             	lea    0x0(%eax),%eax
43a824:	55                   	push   %ebp
43a825:	8b ec                	mov    %esp,%ebp
43a827:	56                   	push   %esi
43a828:	8b f2                	mov    %edx,%esi
43a82a:	8b d6                	mov    %esi,%edx
43a82c:	66 be d1 ff          	mov    $0xffd1,%si
43a830:	e8 bb 92 fc ff       	call   0x403af0
43a835:	5e                   	pop    %esi
43a836:	5d                   	pop    %ebp
43a837:	c2 04 00             	ret    $0x4
43a83a:	8b c0                	mov    %eax,%eax
43a83c:	55                   	push   %ebp
43a83d:	8b ec                	mov    %esp,%ebp
43a83f:	53                   	push   %ebx
43a840:	66 83 b8 fa 00 00 00 	cmpw   $0x0,0xfa(%eax)
43a847:	00
43a848:	74 17                	je     0x43a861
43a84a:	51                   	push   %ecx
43a84b:	8b 4d 08             	mov    0x8(%ebp),%ecx
43a84e:	51                   	push   %ecx
43a84f:	8b d8                	mov    %eax,%ebx
43a851:	8b ca                	mov    %edx,%ecx
43a853:	8b d0                	mov    %eax,%edx
43a855:	8b 83 fc 00 00 00    	mov    0xfc(%ebx),%eax
43a85b:	ff 93 f8 00 00 00    	call   *0xf8(%ebx)
43a861:	5b                   	pop    %ebx
43a862:	5d                   	pop    %ebp
43a863:	c2 04 00             	ret    $0x4
43a866:	8b c0                	mov    %eax,%eax
43a868:	53                   	push   %ebx
43a869:	66 83 b8 f2 00 00 00 	cmpw   $0x0,0xf2(%eax)
43a870:	00
43a871:	74 12                	je     0x43a885
43a873:	8b ca                	mov    %edx,%ecx
43a875:	8b d8                	mov    %eax,%ebx
43a877:	8b d0                	mov    %eax,%edx
43a879:	8b 83 f4 00 00 00    	mov    0xf4(%ebx),%eax
43a87f:	ff 93 f0 00 00 00    	call   *0xf0(%ebx)
43a885:	5b                   	pop    %ebx
43a886:	c3                   	ret
43a887:	90                   	nop
43a888:	53                   	push   %ebx
43a889:	56                   	push   %esi
43a88a:	57                   	push   %edi
43a88b:	55                   	push   %ebp
43a88c:	8b da                	mov    %edx,%ebx
43a88e:	8b e8                	mov    %eax,%ebp
43a890:	8b 7b 08             	mov    0x8(%ebx),%edi
43a893:	8b 07                	mov    (%edi),%eax
43a895:	50                   	push   %eax
43a896:	8b 47 04             	mov    0x4(%edi),%eax
43a899:	50                   	push   %eax
43a89a:	8b 47 08             	mov    0x8(%edi),%eax
43a89d:	50                   	push   %eax
43a89e:	0f b6 4f 0d          	movzbl 0xd(%edi),%ecx
43a8a2:	0f b6 57 0c          	movzbl 0xc(%edi),%edx
43a8a6:	8b c5                	mov    %ebp,%eax
43a8a8:	66 be d5 ff          	mov    $0xffd5,%si
43a8ac:	e8 3f 92 fc ff       	call   0x403af0
43a8b1:	83 e0 7f             	and    $0x7f,%eax
43a8b4:	89 43 0c             	mov    %eax,0xc(%ebx)
43a8b7:	5d                   	pop    %ebp
43a8b8:	5f                   	pop    %edi
43a8b9:	5e                   	pop    %esi
43a8ba:	5b                   	pop    %ebx
43a8bb:	c3                   	ret
43a8bc:	55                   	push   %ebp
43a8bd:	8b ec                	mov    %esp,%ebp
43a8bf:	83 c4 f4             	add    $0xfffffff4,%esp
43a8c2:	53                   	push   %ebx
43a8c3:	56                   	push   %esi
43a8c4:	57                   	push   %edi
43a8c5:	8b 75 08             	mov    0x8(%ebp),%esi
43a8c8:	8d 7d f7             	lea    -0x9(%ebp),%edi
43a8cb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a8cc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a8cd:	8b d9                	mov    %ecx,%ebx
43a8cf:	88 55 ff             	mov    %dl,-0x1(%ebp)
43a8d2:	8b f8                	mov    %eax,%edi
43a8d4:	c6 45 f6 00          	movb   $0x0,-0xa(%ebp)
43a8d8:	66 83 bf 42 01 00 00 	cmpw   $0x0,0x142(%edi)
43a8df:	00
43a8e0:	74 1b                	je     0x43a8fd
43a8e2:	53                   	push   %ebx
43a8e3:	8d 45 f7             	lea    -0x9(%ebp),%eax
43a8e6:	50                   	push   %eax
43a8e7:	8d 45 f6             	lea    -0xa(%ebp),%eax
43a8ea:	50                   	push   %eax
43a8eb:	0f b6 4d ff          	movzbl -0x1(%ebp),%ecx
43a8ef:	8b d7                	mov    %edi,%edx
43a8f1:	8b 87 44 01 00 00    	mov    0x144(%edi),%eax
43a8f7:	ff 97 40 01 00 00    	call   *0x140(%edi)
43a8fd:	80 7d f6 00          	cmpb   $0x0,-0xa(%ebp)
43a901:	75 7d                	jne    0x43a980
43a903:	01 9f 98 00 00 00    	add    %ebx,0x98(%edi)
43a909:	eb 65                	jmp    0x43a970
43a90b:	83 bf 98 00 00 00 00 	cmpl   $0x0,0x98(%edi)
43a912:	0f 9c c3             	setl   %bl
43a915:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
43a91b:	99                   	cltd
43a91c:	33 c2                	xor    %edx,%eax
43a91e:	2b c2                	sub    %edx,%eax
43a920:	83 e8 78             	sub    $0x78,%eax
43a923:	89 87 98 00 00 00    	mov    %eax,0x98(%edi)
43a929:	84 db                	test   %bl,%bl
43a92b:	74 2e                	je     0x43a95b
43a92d:	83 bf 98 00 00 00 00 	cmpl   $0x0,0x98(%edi)
43a934:	74 0e                	je     0x43a944
43a936:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
43a93c:	f7 d8                	neg    %eax
43a93e:	89 87 98 00 00 00    	mov    %eax,0x98(%edi)
43a944:	8d 4d f7             	lea    -0x9(%ebp),%ecx
43a947:	0f b6 55 ff          	movzbl -0x1(%ebp),%edx
43a94b:	8b c7                	mov    %edi,%eax
43a94d:	66 be e1 ff          	mov    $0xffe1,%si
43a951:	e8 9a 91 fc ff       	call   0x403af0
43a956:	88 45 f6             	mov    %al,-0xa(%ebp)
43a959:	eb 15                	jmp    0x43a970
43a95b:	8d 4d f7             	lea    -0x9(%ebp),%ecx
43a95e:	0f b6 55 ff          	movzbl -0x1(%ebp),%edx
43a962:	8b c7                	mov    %edi,%eax
43a964:	66 be e0 ff          	mov    $0xffe0,%si
43a968:	e8 83 91 fc ff       	call   0x403af0
43a96d:	88 45 f6             	mov    %al,-0xa(%ebp)
43a970:	8b 87 98 00 00 00    	mov    0x98(%edi),%eax
43a976:	99                   	cltd
43a977:	33 c2                	xor    %edx,%eax
43a979:	2b c2                	sub    %edx,%eax
43a97b:	83 f8 78             	cmp    $0x78,%eax
43a97e:	7d 8b                	jge    0x43a90b
43a980:	0f b6 45 f6          	movzbl -0xa(%ebp),%eax
43a984:	5f                   	pop    %edi
43a985:	5e                   	pop    %esi
43a986:	5b                   	pop    %ebx
43a987:	8b e5                	mov    %ebp,%esp
43a989:	5d                   	pop    %ebp
43a98a:	c2 04 00             	ret    $0x4
43a98d:	8d 40 00             	lea    0x0(%eax),%eax
43a990:	53                   	push   %ebx
43a991:	56                   	push   %esi
43a992:	57                   	push   %edi
43a993:	83 c4 f4             	add    $0xfffffff4,%esp
43a996:	8b f1                	mov    %ecx,%esi
43a998:	8d 7c 24 01          	lea    0x1(%esp),%edi
43a99c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a99d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a99e:	88 14 24             	mov    %dl,(%esp)
43a9a1:	c6 44 24 09 00       	movb   $0x0,0x9(%esp)
43a9a6:	66 83 b8 4a 01 00 00 	cmpw   $0x0,0x14a(%eax)
43a9ad:	00
43a9ae:	74 1f                	je     0x43a9cf
43a9b0:	8d 54 24 01          	lea    0x1(%esp),%edx
43a9b4:	52                   	push   %edx
43a9b5:	8d 54 24 0d          	lea    0xd(%esp),%edx
43a9b9:	52                   	push   %edx
43a9ba:	8b d8                	mov    %eax,%ebx
43a9bc:	0f b6 4c 24 08       	movzbl 0x8(%esp),%ecx
43a9c1:	8b d0                	mov    %eax,%edx
43a9c3:	8b 83 4c 01 00 00    	mov    0x14c(%ebx),%eax
43a9c9:	ff 93 48 01 00 00    	call   *0x148(%ebx)
43a9cf:	0f b6 44 24 09       	movzbl 0x9(%esp),%eax
43a9d4:	83 c4 0c             	add    $0xc,%esp
43a9d7:	5f                   	pop    %edi
43a9d8:	5e                   	pop    %esi
43a9d9:	5b                   	pop    %ebx
43a9da:	c3                   	ret
43a9db:	90                   	nop
43a9dc:	53                   	push   %ebx
43a9dd:	56                   	push   %esi
43a9de:	57                   	push   %edi
43a9df:	83 c4 f4             	add    $0xfffffff4,%esp
43a9e2:	8b f1                	mov    %ecx,%esi
43a9e4:	8d 7c 24 01          	lea    0x1(%esp),%edi
43a9e8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a9e9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
43a9ea:	88 14 24             	mov    %dl,(%esp)
43a9ed:	c6 44 24 09 00       	movb   $0x0,0x9(%esp)
43a9f2:	66 83 b8 52 01 00 00 	cmpw   $0x0,0x152(%eax)
43a9f9:	00
43a9fa:	74 1f                	je     0x43aa1b
43a9fc:	8d 54 24 01          	lea    0x1(%esp),%edx
43aa00:	52                   	push   %edx
43aa01:	8d 54 24 0d          	lea    0xd(%esp),%edx
43aa05:	52                   	push   %edx
43aa06:	8b d8                	mov    %eax,%ebx
43aa08:	0f b6 4c 24 08       	movzbl 0x8(%esp),%ecx
43aa0d:	8b d0                	mov    %eax,%edx
43aa0f:	8b 83 54 01 00 00    	mov    0x154(%ebx),%eax
43aa15:	ff 93 50 01 00 00    	call   *0x150(%ebx)
43aa1b:	0f b6 44 24 09       	movzbl 0x9(%esp),%eax
43aa20:	83 c4 0c             	add    $0xc,%esp
43aa23:	5f                   	pop    %edi
43aa24:	5e                   	pop    %esi
43aa25:	5b                   	pop    %ebx
43aa26:	c3                   	ret
43aa27:	90                   	nop
43aa28:	55                   	push   %ebp
43aa29:	8b ec                	mov    %esp,%ebp
43aa2b:	83 c4 e0             	add    $0xffffffe0,%esp
43aa2e:	53                   	push   %ebx
43aa2f:	56                   	push   %esi
43aa30:	57                   	push   %edi
43aa31:	88 4d ff             	mov    %cl,-0x1(%ebp)
43aa34:	8b f2                	mov    %edx,%esi
43aa36:	8b c6                	mov    %esi,%eax
43aa38:	8b 10                	mov    (%eax),%edx
43aa3a:	ff 52 38             	call   *0x38(%edx)
43aa3d:	8b d8                	mov    %eax,%ebx
43aa3f:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)