6007a1:	e8 32 71 ff ff       	call   0x5f78d8
6007a6:	50                   	push   %eax
6007a7:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
6007ad:	e8 26 71 ff ff       	call   0x5f78d8
6007b2:	8a 4d 0c             	mov    0xc(%ebp),%cl
6007b5:	5a                   	pop    %edx
6007b6:	e8 99 4e fb ff       	call   0x5b5654
6007bb:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
6007c1:	e8 12 71 ff ff       	call   0x5f78d8
6007c6:	8a 40 43             	mov    0x43(%eax),%al
6007c9:	50                   	push   %eax
6007ca:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
6007d0:	e8 03 71 ff ff       	call   0x5f78d8
6007d5:	5a                   	pop    %edx
6007d6:	88 50 43             	mov    %dl,0x43(%eax)
6007d9:	8b 45 28             	mov    0x28(%ebp),%eax
6007dc:	50                   	push   %eax
6007dd:	53                   	push   %ebx
6007de:	56                   	push   %esi
6007df:	6a 00                	push   $0x0
6007e1:	6a 00                	push   $0x0
6007e3:	53                   	push   %ebx
6007e4:	56                   	push   %esi
6007e5:	6a 00                	push   $0x0
6007e7:	8b 45 08             	mov    0x8(%ebp),%eax
6007ea:	50                   	push   %eax
6007eb:	8b 4d f4             	mov    -0xc(%ebp),%ecx
6007ee:	8b 55 f8             	mov    -0x8(%ebp),%edx
6007f1:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
6007f7:	e8 7c fd ff ff       	call   0x600578
6007fc:	8b 85 58 ff ff ff    	mov    -0xa8(%ebp),%eax
600802:	e8 71 32 e0 ff       	call   0x403a78
600807:	8b 85 5c ff ff ff    	mov    -0xa4(%ebp),%eax
60080d:	e8 66 32 e0 ff       	call   0x403a78
600812:	e9 42 06 00 00       	jmp    0x600e59
600817:	8b 45 f4             	mov    -0xc(%ebp),%eax
60081a:	89 45 8c             	mov    %eax,-0x74(%ebp)
60081d:	8b 45 28             	mov    0x28(%ebp),%eax
600820:	89 45 88             	mov    %eax,-0x78(%ebp)
600823:	89 5d 84             	mov    %ebx,-0x7c(%ebp)
600826:	89 75 80             	mov    %esi,-0x80(%ebp)
600829:	8b 45 1c             	mov    0x1c(%ebp),%eax
60082c:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
600832:	8b 45 18             	mov    0x18(%ebp),%eax
600835:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
60083b:	8b 45 14             	mov    0x14(%ebp),%eax
60083e:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
600844:	8b 45 10             	mov    0x10(%ebp),%eax
600847:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
60084d:	85 db                	test   %ebx,%ebx
60084f:	0f 84 04 06 00 00    	je     0x600e59
600855:	85 f6                	test   %esi,%esi
600857:	0f 84 fc 05 00 00    	je     0x600e59
60085d:	8b 45 f8             	mov    -0x8(%ebp),%eax
600860:	8b 10                	mov    (%eax),%edx
600862:	ff 52 0c             	call   *0xc(%edx)
600865:	89 45 ec             	mov    %eax,-0x14(%ebp)
600868:	8b 45 f8             	mov    -0x8(%ebp),%eax
60086b:	8b 10                	mov    (%eax),%edx
60086d:	ff 52 08             	call   *0x8(%edx)
600870:	89 45 e8             	mov    %eax,-0x18(%ebp)
600873:	85 db                	test   %ebx,%ebx
600875:	0f 84 de 05 00 00    	je     0x600e59
60087b:	85 f6                	test   %esi,%esi
60087d:	0f 84 d6 05 00 00    	je     0x600e59
600883:	33 c0                	xor    %eax,%eax
600885:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
60088b:	33 c0                	xor    %eax,%eax
60088d:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
600893:	33 c9                	xor    %ecx,%ecx
600895:	55                   	push   %ebp
600896:	68 27 0e 60 00       	push   $0x600e27
60089b:	64 ff 31             	push   %fs:(%ecx)
60089e:	64 89 21             	mov    %esp,%fs:(%ecx)
6008a1:	db 85 70 ff ff ff    	fildl  -0x90(%ebp)
6008a7:	db 45 80             	fildl  -0x80(%ebp)
6008aa:	de f9                	fdivrp %st,%st(1)
6008ac:	d8 0d 64 0e 60 00    	fmuls  0x600e64
6008b2:	e8 15 24 e0 ff       	call   0x402ccc
6008b7:	89 45 c0             	mov    %eax,-0x40(%ebp)
6008ba:	db 85 74 ff ff ff    	fildl  -0x8c(%ebp)
6008c0:	db 45 84             	fildl  -0x7c(%ebp)
6008c3:	de f9                	fdivrp %st,%st(1)
6008c5:	d8 0d 64 0e 60 00    	fmuls  0x600e64
6008cb:	e8 fc 23 e0 ff       	call   0x402ccc
6008d0:	89 45 c4             	mov    %eax,-0x3c(%ebp)
6008d3:	8b 55 e8             	mov    -0x18(%ebp),%edx
6008d6:	4a                   	dec    %edx
6008d7:	8b 45 88             	mov    -0x78(%ebp),%eax
6008da:	03 45 80             	add    -0x80(%ebp),%eax
6008dd:	48                   	dec    %eax
6008de:	e8 39 8b fa ff       	call   0x5a941c
6008e3:	89 45 c8             	mov    %eax,-0x38(%ebp)
6008e6:	8b 55 ec             	mov    -0x14(%ebp),%edx
6008e9:	4a                   	dec    %edx
6008ea:	8b 45 8c             	mov    -0x74(%ebp),%eax
6008ed:	03 45 84             	add    -0x7c(%ebp),%eax
6008f0:	48                   	dec    %eax
6008f1:	e8 26 8b fa ff       	call   0x5a941c
6008f6:	89 45 cc             	mov    %eax,-0x34(%ebp)
6008f9:	c7 45 9c 02 00 00 80 	movl   $0x80000002,-0x64(%ebp)
600900:	c7 45 98 02 00 00 80 	movl   $0x80000002,-0x68(%ebp)
600907:	c7 45 94 fe ff ff 7f 	movl   $0x7ffffffe,-0x6c(%ebp)
60090e:	c7 45 90 fe ff ff 7f 	movl   $0x7ffffffe,-0x70(%ebp)
600915:	8b 55 8c             	mov    -0x74(%ebp),%edx
600918:	8b 45 9c             	mov    -0x64(%ebp),%eax
60091b:	e8 f4 8a fa ff       	call   0x5a9414
600920:	89 45 9c             	mov    %eax,-0x64(%ebp)
600923:	8b 55 cc             	mov    -0x34(%ebp),%edx
600926:	8b 45 94             	mov    -0x6c(%ebp),%eax
600929:	e8 ee 8a fa ff       	call   0x5a941c
60092e:	89 45 94             	mov    %eax,-0x6c(%ebp)
600931:	8b 55 88             	mov    -0x78(%ebp),%edx
600934:	8b 45 98             	mov    -0x68(%ebp),%eax
600937:	e8 d8 8a fa ff       	call   0x5a9414
60093c:	89 45 98             	mov    %eax,-0x68(%ebp)
60093f:	8b 55 c8             	mov    -0x38(%ebp),%edx
600942:	8b 45 90             	mov    -0x70(%ebp),%eax
600945:	e8 d2 8a fa ff       	call   0x5a941c
60094a:	89 45 90             	mov    %eax,-0x70(%ebp)
60094d:	33 d2                	xor    %edx,%edx
60094f:	8b 45 9c             	mov    -0x64(%ebp),%eax
600952:	e8 bd 8a fa ff       	call   0x5a9414
600957:	89 45 9c             	mov    %eax,-0x64(%ebp)
60095a:	8b 45 f8             	mov    -0x8(%ebp),%eax
60095d:	8b 10                	mov    (%eax),%edx
60095f:	ff 52 0c             	call   *0xc(%edx)
600962:	8b d0                	mov    %eax,%edx
600964:	4a                   	dec    %edx
600965:	8b 45 94             	mov    -0x6c(%ebp),%eax
600968:	e8 af 8a fa ff       	call   0x5a941c
60096d:	89 45 94             	mov    %eax,-0x6c(%ebp)
600970:	33 d2                	xor    %edx,%edx
600972:	8b 45 98             	mov    -0x68(%ebp),%eax
600975:	e8 9a 8a fa ff       	call   0x5a9414
60097a:	89 45 98             	mov    %eax,-0x68(%ebp)
60097d:	8b 45 f8             	mov    -0x8(%ebp),%eax
600980:	8b 10                	mov    (%eax),%edx
600982:	ff 52 08             	call   *0x8(%edx)
600985:	8b d0                	mov    %eax,%edx
600987:	4a                   	dec    %edx
600988:	8b 45 90             	mov    -0x70(%ebp),%eax
60098b:	e8 8c 8a fa ff       	call   0x5a941c
600990:	89 45 90             	mov    %eax,-0x70(%ebp)
600993:	8b 45 f8             	mov    -0x8(%ebp),%eax
600996:	8b 10                	mov    (%eax),%edx
600998:	ff 52 14             	call   *0x14(%edx)
60099b:	89 45 ac             	mov    %eax,-0x54(%ebp)
60099e:	8b 45 fc             	mov    -0x4(%ebp),%eax
6009a1:	e8 62 6f ff ff       	call   0x5f7908
6009a6:	84 c0                	test   %al,%al
6009a8:	74 0e                	je     0x6009b8
6009aa:	8b 45 fc             	mov    -0x4(%ebp),%eax
6009ad:	e8 26 6f ff ff       	call   0x5f78d8
6009b2:	80 78 43 00          	cmpb   $0x0,0x43(%eax)
6009b6:	74 04                	je     0x6009bc
6009b8:	33 c0                	xor    %eax,%eax
6009ba:	eb 02                	jmp    0x6009be
6009bc:	b0 01                	mov    $0x1,%al
6009be:	88 85 6f ff ff ff    	mov    %al,-0x91(%ebp)
6009c4:	81 7d c0 00 40 00 00 	cmpl   $0x4000,-0x40(%ebp)
6009cb:	75 22                	jne    0x6009ef
6009cd:	81 7d c4 00 40 00 00 	cmpl   $0x4000,-0x3c(%ebp)
6009d4:	75 19                	jne    0x6009ef
6009d6:	8b 45 fc             	mov    -0x4(%ebp),%eax
6009d9:	8b 10                	mov    (%eax),%edx
6009db:	ff 52 10             	call   *0x10(%edx)
6009de:	3c 01                	cmp    $0x1,%al
6009e0:	74 0d                	je     0x6009ef
6009e2:	80 bd 6f ff ff ff 00 	cmpb   $0x0,-0x91(%ebp)
6009e9:	0f 84 ad 00 00 00    	je     0x600a9c
6009ef:	8b 45 94             	mov    -0x6c(%ebp),%eax
6009f2:	2b 45 9c             	sub    -0x64(%ebp),%eax
6009f5:	40                   	inc    %eax
6009f6:	c1 e0 02             	shl    $0x2,%eax
6009f9:	e8 ae 1d e0 ff       	call   0x4027ac
6009fe:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
600a04:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
600a0a:	8b 55 9c             	mov    -0x64(%ebp),%edx
600a0d:	8b 4d 94             	mov    -0x6c(%ebp),%ecx
600a10:	2b ca                	sub    %edx,%ecx
600a12:	7c 27                	jl     0x600a3b
600a14:	41                   	inc    %ecx
600a15:	89 8d 54 ff ff ff    	mov    %ecx,-0xac(%ebp)
600a1b:	8b ca                	mov    %edx,%ecx
600a1d:	2b 4d 8c             	sub    -0x74(%ebp),%ecx
600a20:	0f af 4d c4          	imul   -0x3c(%ebp),%ecx
600a24:	c1 e9 0e             	shr    $0xe,%ecx
600a27:	03 8d 7c ff ff ff    	add    -0x84(%ebp),%ecx
600a2d:	89 08                	mov    %ecx,(%eax)
600a2f:	83 c0 04             	add    $0x4,%eax
600a32:	42                   	inc    %edx
600a33:	ff 8d 54 ff ff ff    	decl   -0xac(%ebp)
600a39:	75 e0                	jne    0x600a1b
600a3b:	8b 45 90             	mov    -0x70(%ebp),%eax
600a3e:	2b 45 98             	sub    -0x68(%ebp),%eax
600a41:	40                   	inc    %eax
600a42:	c1 e0 02             	shl    $0x2,%eax
600a45:	e8 62 1d e0 ff       	call   0x4027ac
600a4a:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
600a50:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
600a56:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
600a5c:	8b 45 98             	mov    -0x68(%ebp),%eax
600a5f:	8b 55 90             	mov    -0x70(%ebp),%edx
600a62:	2b d0                	sub    %eax,%edx
600a64:	7c 36                	jl     0x600a9c
600a66:	42                   	inc    %edx
600a67:	89 95 54 ff ff ff    	mov    %edx,-0xac(%ebp)
600a6d:	89 45 f0             	mov    %eax,-0x10(%ebp)
600a70:	8b 45 f0             	mov    -0x10(%ebp),%eax
600a73:	2b 45 88             	sub    -0x78(%ebp),%eax
600a76:	f7 6d c0             	imull  -0x40(%ebp)
600a79:	c1 e8 0e             	shr    $0xe,%eax
600a7c:	03 85 78 ff ff ff    	add    -0x88(%ebp),%eax
600a82:	8b 95 60 ff ff ff    	mov    -0xa0(%ebp),%edx
600a88:	89 02                	mov    %eax,(%edx)
600a8a:	83 85 60 ff ff ff 04 	addl   $0x4,-0xa0(%ebp)
600a91:	ff 45 f0             	incl   -0x10(%ebp)
600a94:	ff 8d 54 ff ff ff    	decl   -0xac(%ebp)
600a9a:	75 d4                	jne    0x600a70
600a9c:	80 bd 6f ff ff ff 00 	cmpb   $0x0,-0x91(%ebp)
600aa3:	0f 84 69 01 00 00    	je     0x600c12
600aa9:	81 7d c0 00 40 00 00 	cmpl   $0x4000,-0x40(%ebp)
600ab0:	0f 85 86 00 00 00    	jne    0x600b3c
600ab6:	81 7d c4 00 40 00 00 	cmpl   $0x4000,-0x3c(%ebp)
600abd:	75 7d                	jne    0x600b3c
600abf:	8b 45 94             	mov    -0x6c(%ebp),%eax
600ac2:	2b 45 9c             	sub    -0x64(%ebp),%eax
600ac5:	40                   	inc    %eax
600ac6:	89 45 a4             	mov    %eax,-0x5c(%ebp)
600ac9:	8b 45 98             	mov    -0x68(%ebp),%eax
600acc:	8b 55 90             	mov    -0x70(%ebp),%edx
600acf:	2b d0                	sub    %eax,%edx
600ad1:	0f 8c e9 00 00 00    	jl     0x600bc0
600ad7:	42                   	inc    %edx
600ad8:	89 95 54 ff ff ff    	mov    %edx,-0xac(%ebp)
600ade:	89 45 f0             	mov    %eax,-0x10(%ebp)
600ae1:	8b 45 f8             	mov    -0x8(%ebp),%eax
600ae4:	e8 ef 6d ff ff       	call   0x5f78d8
600ae9:	8b 55 f0             	mov    -0x10(%ebp),%edx
600aec:	8b 08                	mov    (%eax),%ecx
600aee:	ff 11                	call   *(%ecx)
600af0:	8b f0                	mov    %eax,%esi
600af2:	03 75 9c             	add    -0x64(%ebp),%esi
600af5:	8b 45 fc             	mov    -0x4(%ebp),%eax
600af8:	e8 db 6d ff ff       	call   0x5f78d8
600afd:	8b 55 f0             	mov    -0x10(%ebp),%edx
600b00:	2b 55 88             	sub    -0x78(%ebp),%edx
600b03:	03 95 78 ff ff ff    	add    -0x88(%ebp),%edx
600b09:	8b 08                	mov    (%eax),%ecx
600b0b:	ff 11                	call   *(%ecx)
600b0d:	89 45 d8             	mov    %eax,-0x28(%ebp)
600b10:	8b 45 9c             	mov    -0x64(%ebp),%eax
600b13:	2b 45 8c             	sub    -0x74(%ebp),%eax
600b16:	03 85 7c ff ff ff    	add    -0x84(%ebp),%eax
600b1c:	01 45 d8             	add    %eax,-0x28(%ebp)
600b1f:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
600b22:	8b 55 d8             	mov    -0x28(%ebp),%edx
600b25:	8b c6                	mov    %esi,%eax
600b27:	e8 94 73 e0 ff       	call   0x407ec0
600b2c:	ff 45 f0             	incl   -0x10(%ebp)
600b2f:	ff 8d 54 ff ff ff    	decl   -0xac(%ebp)
600b35:	75 aa                	jne    0x600ae1
600b37:	e9 84 00 00 00       	jmp    0x600bc0
600b3c:	8b 85 64 ff ff ff    	mov    -0x9c(%ebp),%eax
600b42:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
600b48:	8b 45 98             	mov    -0x68(%ebp),%eax
600b4b:	8b 55 90             	mov    -0x70(%ebp),%edx
600b4e:	2b d0                	sub    %eax,%edx
600b50:	7c 6e                	jl     0x600bc0
600b52:	42                   	inc    %edx
600b53:	89 95 54 ff ff ff    	mov    %edx,-0xac(%ebp)
600b59:	89 45 f0             	mov    %eax,-0x10(%ebp)
600b5c:	8b 45 f8             	mov    -0x8(%ebp),%eax
600b5f:	e8 74 6d ff ff       	call   0x5f78d8
600b64:	8b 55 f0             	mov    -0x10(%ebp),%edx
600b67:	8b 08                	mov    (%eax),%ecx
600b69:	ff 11                	call   *(%ecx)
600b6b:	89 45 d8             	mov    %eax,-0x28(%ebp)
600b6e:	8b 45 9c             	mov    -0x64(%ebp),%eax
600b71:	01 45 d8             	add    %eax,-0x28(%ebp)
600b74:	8b 45 fc             	mov    -0x4(%ebp),%eax
600b77:	e8 5c 6d ff ff       	call   0x5f78d8
600b7c:	8b 95 60 ff ff ff    	mov    -0xa0(%ebp),%edx
600b82:	8b 12                	mov    (%edx),%edx
600b84:	8b 08                	mov    (%eax),%ecx
600b86:	ff 11                	call   *(%ecx)
600b88:	8b f0                	mov    %eax,%esi
600b8a:	8b 85 68 ff ff ff    	mov    -0x98(%ebp),%eax
600b90:	8b 55 9c             	mov    -0x64(%ebp),%edx
600b93:	8b 5d 94             	mov    -0x6c(%ebp),%ebx
600b96:	2b da                	sub    %edx,%ebx
600b98:	7c 14                	jl     0x600bae
600b9a:	43                   	inc    %ebx
600b9b:	8b 10                	mov    (%eax),%edx
600b9d:	8a 14 16             	mov    (%esi,%edx,1),%dl
600ba0:	8b 4d d8             	mov    -0x28(%ebp),%ecx
600ba3:	88 11                	mov    %dl,(%ecx)
600ba5:	ff 45 d8             	incl   -0x28(%ebp)
600ba8:	83 c0 04             	add    $0x4,%eax
600bab:	4b                   	dec    %ebx
600bac:	75 ed                	jne    0x600b9b
600bae:	83 85 60 ff ff ff 04 	addl   $0x4,-0xa0(%ebp)
600bb5:	ff 45 f0             	incl   -0x10(%ebp)
600bb8:	ff 8d 54 ff ff ff    	decl   -0xac(%ebp)
600bbe:	75 9c                	jne    0x600b5c
600bc0:	8b 45 98             	mov    -0x68(%ebp),%eax
600bc3:	8b 55 90             	mov    -0x70(%ebp),%edx
600bc6:	2b d0                	sub    %eax,%edx
600bc8:	7c 6d                	jl     0x600c37
600bca:	42                   	inc    %edx
600bcb:	89 95 54 ff ff ff    	mov    %edx,-0xac(%ebp)
600bd1:	89 45 f0             	mov    %eax,-0x10(%ebp)
600bd4:	8b 45 f8             	mov    -0x8(%ebp),%eax
600bd7:	e8 fc 6c ff ff       	call   0x5f78d8
600bdc:	8b 55 f0             	mov    -0x10(%ebp),%edx
600bdf:	8b 08                	mov    (%eax),%ecx
600be1:	ff 11                	call   *(%ecx)
600be3:	8b f0                	mov    %eax,%esi
600be5:	03 75 9c             	add    -0x64(%ebp),%esi
600be8:	8b 55 9c             	mov    -0x64(%ebp),%edx
600beb:	8b 5d 94             	mov    -0x6c(%ebp),%ebx
600bee:	2b da                	sub    %edx,%ebx
600bf0:	7c 13                	jl     0x600c05
600bf2:	43                   	inc    %ebx
600bf3:	33 d2                	xor    %edx,%edx
600bf5:	8a 16                	mov    (%esi),%dl
600bf7:	8b 45 08             	mov    0x8(%ebp),%eax
600bfa:	e8 1d 88 fa ff       	call   0x5a941c
600bff:	88 06                	mov    %al,(%esi)
600c01:	46                   	inc    %esi
600c02:	4b                   	dec    %ebx
600c03:	75 ee                	jne    0x600bf3
600c05:	ff 45 f0             	incl   -0x10(%ebp)
600c08:	ff 8d 54 ff ff ff    	decl   -0xac(%ebp)
600c0e:	75 c4                	jne    0x600bd4
600c10:	eb 25                	jmp    0x600c37
600c12:	8b 45 94             	mov    -0x6c(%ebp),%eax
600c15:	50                   	push   %eax
600c16:	8b 45 90             	mov    -0x70(%ebp),%eax
600c19:	50                   	push   %eax
600c1a:	db 45 08             	fildl  0x8(%ebp)
600c1d:	83 c4 f8             	add    $0xfffffff8,%esp
600c20:	dd 1c 24             	fstpl  (%esp)
600c23:	9b                   	fwait
600c24:	8b 45 f8             	mov    -0x8(%ebp),%eax
600c27:	e8 ac 6c ff ff       	call   0x5f78d8
600c2c:	8b 4d 98             	mov    -0x68(%ebp),%ecx
600c2f:	8b 55 9c             	mov    -0x64(%ebp),%edx
600c32:	e8 81 b6 ff ff       	call   0x5fc2b8