439683:	53                   	push   %ebx
439684:	56                   	push   %esi
439685:	57                   	push   %edi
439686:	8b f9                	mov    %ecx,%edi
439688:	8b d8                	mov    %eax,%ebx
43968a:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
43968e:	75 0e                	jne    0x43969e
439690:	8b 43 38             	mov    0x38(%ebx),%eax
439693:	66 be df ff          	mov    $0xffdf,%si
439697:	e8 4c 9f fc ff       	call   0x4035e8
43969c:	33 d2                	xor    %edx,%edx
43969e:	8b 45 0c             	mov    0xc(%ebp),%eax
4396a1:	50                   	push   %eax
4396a2:	8b cf                	mov    %edi,%ecx
4396a4:	8b c3                	mov    %ebx,%eax
4396a6:	8b 18                	mov    (%eax),%ebx
4396a8:	ff 53 24             	call   *0x24(%ebx)
4396ab:	5f                   	pop    %edi
4396ac:	5e                   	pop    %esi
4396ad:	5b                   	pop    %ebx
4396ae:	5d                   	pop    %ebp
4396af:	c2 08 00             	ret    $0x8
4396b2:	8b c0                	mov    %eax,%eax
4396b4:	55                   	push   %ebp
4396b5:	8b ec                	mov    %esp,%ebp
4396b7:	84 d2                	test   %dl,%dl
4396b9:	74 09                	je     0x4396c4
4396bb:	8b 40 38             	mov    0x38(%eax),%eax
4396be:	66 8b 40 7a          	mov    0x7a(%eax),%ax
4396c2:	eb 04                	jmp    0x4396c8
4396c4:	66 b8 f3 ff          	mov    $0xfff3,%ax
4396c8:	5d                   	pop    %ebp
4396c9:	c2 04 00             	ret    $0x4
4396cc:	8b 40 38             	mov    0x38(%eax),%eax
4396cf:	8b 10                	mov    (%eax),%edx
4396d1:	ff 52 4c             	call   *0x4c(%edx)
4396d4:	c3                   	ret
4396d5:	8d 40 00             	lea    0x0(%eax),%eax
4396d8:	53                   	push   %ebx
4396d9:	8b d8                	mov    %eax,%ebx
4396db:	8b 43 38             	mov    0x38(%ebx),%eax
4396de:	8b 10                	mov    (%eax),%edx
4396e0:	ff 52 4c             	call   *0x4c(%edx)
4396e3:	85 c0                	test   %eax,%eax
4396e5:	74 0d                	je     0x4396f4
4396e7:	8b 43 38             	mov    0x38(%ebx),%eax
4396ea:	8b 10                	mov    (%eax),%edx
4396ec:	ff 52 4c             	call   *0x4c(%edx)
4396ef:	e8 40 ab 00 00       	call   0x444234
4396f4:	5b                   	pop    %ebx
4396f5:	c3                   	ret
4396f6:	8b c0                	mov    %eax,%eax
4396f8:	53                   	push   %ebx
4396f9:	8b d8                	mov    %eax,%ebx
4396fb:	8b 43 38             	mov    0x38(%ebx),%eax
4396fe:	8b 10                	mov    (%eax),%edx
439700:	ff 52 4c             	call   *0x4c(%edx)
439703:	85 c0                	test   %eax,%eax
439705:	74 0d                	je     0x439714
439707:	8b 43 38             	mov    0x38(%ebx),%eax
43970a:	8b 10                	mov    (%eax),%edx
43970c:	ff 52 4c             	call   *0x4c(%edx)
43970f:	e8 08 ab 00 00       	call   0x44421c
439714:	5b                   	pop    %ebx
439715:	c3                   	ret
439716:	8b c0                	mov    %eax,%eax
439718:	c3                   	ret
439719:	8d 40 00             	lea    0x0(%eax),%eax
43971c:	55                   	push   %ebp
43971d:	8b ec                	mov    %esp,%ebp
43971f:	51                   	push   %ecx
439720:	53                   	push   %ebx
439721:	56                   	push   %esi
439722:	84 d2                	test   %dl,%dl
439724:	74 08                	je     0x43972e
439726:	83 c4 f0             	add    $0xfffffff0,%esp
439729:	e8 0a a0 fc ff       	call   0x403738
43972e:	88 55 ff             	mov    %dl,-0x1(%ebp)
439731:	8b d8                	mov    %eax,%ebx
439733:	33 d2                	xor    %edx,%edx
439735:	8b c3                	mov    %ebx,%eax
439737:	e8 c8 fe ff ff       	call   0x439604
43973c:	b2 01                	mov    $0x1,%dl
43973e:	a1 a8 5f 42 00       	mov    0x425fa8,%eax
439743:	e8 20 e2 fe ff       	call   0x427968
439748:	8b f0                	mov    %eax,%esi
43974a:	89 73 40             	mov    %esi,0x40(%ebx)
43974d:	ba ff ff ff 00       	mov    $0xffffff,%edx
439752:	33 c0                	xor    %eax,%eax
439754:	e8 77 32 ff ff       	call   0x42c9d0
439759:	8b d0                	mov    %eax,%edx
43975b:	8b c6                	mov    %esi,%eax
43975d:	e8 82 e3 fe ff       	call   0x427ae4
439762:	8b c3                	mov    %ebx,%eax
439764:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
439768:	74 0f                	je     0x439779
43976a:	e8 21 a0 fc ff       	call   0x403790
43976f:	64 8f 05 00 00 00 00 	pop    %fs:0x0
439776:	83 c4 0c             	add    $0xc,%esp
439779:	8b c3                	mov    %ebx,%eax
43977b:	5e                   	pop    %esi
43977c:	5b                   	pop    %ebx
43977d:	59                   	pop    %ecx
43977e:	5d                   	pop    %ebp
43977f:	c3                   	ret
439780:	53                   	push   %ebx
439781:	56                   	push   %esi
439782:	e8 19 a0 fc ff       	call   0x4037a0
439787:	8b da                	mov    %edx,%ebx
439789:	8b f0                	mov    %eax,%esi
43978b:	8b 46 40             	mov    0x40(%esi),%eax
43978e:	e8 59 9c fc ff       	call   0x4033ec
439793:	8b d3                	mov    %ebx,%edx
439795:	80 e2 fc             	and    $0xfc,%dl
439798:	8b c6                	mov    %esi,%eax
43979a:	e8 3d 9c fc ff       	call   0x4033dc
43979f:	84 db                	test   %bl,%bl
4397a1:	7e 07                	jle    0x4397aa
4397a3:	8b c6                	mov    %esi,%eax
4397a5:	e8 de 9f fc ff       	call   0x403788
4397aa:	5e                   	pop    %esi
4397ab:	5b                   	pop    %ebx
4397ac:	c3                   	ret
4397ad:	8d 40 00             	lea    0x0(%eax),%eax
4397b0:	53                   	push   %ebx
4397b1:	56                   	push   %esi
4397b2:	57                   	push   %edi
4397b3:	8b f2                	mov    %edx,%esi
4397b5:	8b d8                	mov    %eax,%ebx
4397b7:	8b d6                	mov    %esi,%edx
4397b9:	8b c3                	mov    %ebx,%eax
4397bb:	e8 68 fe ff ff       	call   0x439628
4397c0:	8b c6                	mov    %esi,%eax
4397c2:	8b 15 48 6e 43 00    	mov    0x436e48,%edx
4397c8:	e8 ab 9d fc ff       	call   0x403578
4397cd:	84 c0                	test   %al,%al
4397cf:	74 37                	je     0x439808
4397d1:	8b c6                	mov    %esi,%eax
4397d3:	8a 50 54             	mov    0x54(%eax),%dl
4397d6:	88 53 54             	mov    %dl,0x54(%ebx)
4397d9:	8b 50 58             	mov    0x58(%eax),%edx
4397dc:	89 53 58             	mov    %edx,0x58(%ebx)
4397df:	8a 50 6c             	mov    0x6c(%eax),%dl
4397e2:	88 53 6c             	mov    %dl,0x6c(%ebx)
4397e5:	56                   	push   %esi
4397e6:	8d 70 44             	lea    0x44(%eax),%esi
4397e9:	8d 7b 44             	lea    0x44(%ebx),%edi
4397ec:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4397ed:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4397ee:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4397ef:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4397f0:	5e                   	pop    %esi
4397f1:	56                   	push   %esi
4397f2:	8d 70 5c             	lea    0x5c(%eax),%esi
4397f5:	8d 7b 5c             	lea    0x5c(%ebx),%edi
4397f8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4397f9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4397fa:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4397fb:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4397fc:	5e                   	pop    %esi
4397fd:	8b 50 40             	mov    0x40(%eax),%edx
439800:	8b 43 40             	mov    0x40(%ebx),%eax
439803:	8b 08                	mov    (%eax),%ecx
439805:	ff 51 08             	call   *0x8(%ecx)
439808:	5f                   	pop    %edi
439809:	5e                   	pop    %esi
43980a:	5b                   	pop    %ebx
43980b:	c3                   	ret
43980c:	55                   	push   %ebp
43980d:	8b ec                	mov    %esp,%ebp
43980f:	56                   	push   %esi
439810:	57                   	push   %edi
439811:	8b fa                	mov    %edx,%edi
439813:	8b f0                	mov    %eax,%esi
439815:	8b 45 08             	mov    0x8(%ebp),%eax
439818:	50                   	push   %eax
439819:	8b d7                	mov    %edi,%edx
43981b:	8b 46 38             	mov    0x38(%esi),%eax
43981e:	66 be e5 ff          	mov    $0xffe5,%si
439822:	e8 c1 9d fc ff       	call   0x4035e8
439827:	5f                   	pop    %edi
439828:	5e                   	pop    %esi
439829:	5d                   	pop    %ebp
43982a:	c2 04 00             	ret    $0x4
43982d:	8d 40 00             	lea    0x0(%eax),%eax
439830:	53                   	push   %ebx
439831:	56                   	push   %esi
439832:	8b da                	mov    %edx,%ebx
439834:	8b c8                	mov    %eax,%ecx
439836:	8b c1                	mov    %ecx,%eax
439838:	99                   	cltd
439839:	33 c2                	xor    %edx,%eax
43983b:	2b c2                	sub    %edx,%eax
43983d:	8b f0                	mov    %eax,%esi
43983f:	8b c3                	mov    %ebx,%eax
439841:	99                   	cltd
439842:	33 c2                	xor    %edx,%eax
439844:	2b c2                	sub    %edx,%eax
439846:	3b f0                	cmp    %eax,%esi
439848:	7d 05                	jge    0x43984f
43984a:	8b c1                	mov    %ecx,%eax
43984c:	5e                   	pop    %esi
43984d:	5b                   	pop    %ebx
43984e:	c3                   	ret
43984f:	8b c3                	mov    %ebx,%eax
439851:	5e                   	pop    %esi
439852:	5b                   	pop    %ebx
439853:	c3                   	ret
439854:	53                   	push   %ebx
439855:	56                   	push   %esi
439856:	57                   	push   %edi
439857:	83 c4 f0             	add    $0xfffffff0,%esp
43985a:	8b f2                	mov    %edx,%esi
43985c:	8d 3c 24             	lea    (%esp),%edi
43985f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
439860:	a5                   	movsl  %ds:(%esi),%es:(%edi)
439861:	a5                   	movsl  %ds:(%esi),%es:(%edi)
439862:	a5                   	movsl  %ds:(%esi),%es:(%edi)
439863:	8b d8                	mov    %eax,%ebx
439865:	8b 43 0c             	mov    0xc(%ebx),%eax
439868:	8b 14 24             	mov    (%esp),%edx
43986b:	3b c2                	cmp    %edx,%eax
43986d:	7c 06                	jl     0x439875
43986f:	3b 44 24 08          	cmp    0x8(%esp),%eax
439873:	7e 14                	jle    0x439889
439875:	2b d0                	sub    %eax,%edx
439877:	8b 4c 24 08          	mov    0x8(%esp),%ecx
43987b:	2b c8                	sub    %eax,%ecx
43987d:	8b c1                	mov    %ecx,%eax
43987f:	92                   	xchg   %eax,%edx
439880:	e8 ab ff ff ff       	call   0x439830
439885:	8b f0                	mov    %eax,%esi
439887:	eb 02                	jmp    0x43988b
439889:	33 f6                	xor    %esi,%esi
43988b:	8b 43 10             	mov    0x10(%ebx),%eax
43988e:	8b 54 24 04          	mov    0x4(%esp),%edx
439892:	3b c2                	cmp    %edx,%eax
439894:	7c 06                	jl     0x43989c
439896:	3b 44 24 0c          	cmp    0xc(%esp),%eax
43989a:	7e 12                	jle    0x4398ae
43989c:	2b d0                	sub    %eax,%edx
43989e:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
4398a2:	2b c8                	sub    %eax,%ecx
4398a4:	8b c1                	mov    %ecx,%eax
4398a6:	92                   	xchg   %eax,%edx
4398a7:	e8 84 ff ff ff       	call   0x439830
4398ac:	eb 02                	jmp    0x4398b0
4398ae:	33 c0                	xor    %eax,%eax
4398b0:	85 f6                	test   %esi,%esi
4398b2:	75 04                	jne    0x4398b8
4398b4:	85 c0                	test   %eax,%eax
4398b6:	74 0f                	je     0x4398c7
4398b8:	f7 d8                	neg    %eax
4398ba:	50                   	push   %eax
4398bb:	f7 de                	neg    %esi
4398bd:	56                   	push   %esi
4398be:	8d 43 44             	lea    0x44(%ebx),%eax
4398c1:	50                   	push   %eax
4398c2:	e8 01 d6 fc ff       	call   0x406ec8
4398c7:	83 c4 10             	add    $0x10,%esp
4398ca:	5f                   	pop    %edi
4398cb:	5e                   	pop    %esi
4398cc:	5b                   	pop    %ebx
4398cd:	c3                   	ret
4398ce:	8b c0                	mov    %eax,%eax
4398d0:	56                   	push   %esi
4398d1:	8b f0                	mov    %eax,%esi
4398d3:	8b d6                	mov    %esi,%edx
4398d5:	8b 46 38             	mov    0x38(%esi),%eax
4398d8:	66 be db ff          	mov    $0xffdb,%si
4398dc:	e8 07 9d fc ff       	call   0x4035e8
4398e1:	5e                   	pop    %esi
4398e2:	c3                   	ret
4398e3:	90                   	nop
4398e4:	56                   	push   %esi
4398e5:	8b f0                	mov    %eax,%esi
4398e7:	8b d6                	mov    %esi,%edx
4398e9:	8b 46 38             	mov    0x38(%esi),%eax
4398ec:	66 be da ff          	mov    $0xffda,%si
4398f0:	e8 f3 9c fc ff       	call   0x4035e8
4398f5:	5e                   	pop    %esi
4398f6:	c3                   	ret
4398f7:	90                   	nop
4398f8:	55                   	push   %ebp
4398f9:	8b ec                	mov    %esp,%ebp
4398fb:	33 c0                	xor    %eax,%eax
4398fd:	5d                   	pop    %ebp
4398fe:	c2 04 00             	ret    $0x4
439901:	8d 40 00             	lea    0x0(%eax),%eax
439904:	b8 04 00 00 00       	mov    $0x4,%eax
439909:	c3                   	ret
43990a:	8b c0                	mov    %eax,%eax
43990c:	c3                   	ret
43990d:	8d 40 00             	lea    0x0(%eax),%eax
439910:	55                   	push   %ebp
439911:	8b ec                	mov    %esp,%ebp
439913:	83 c4 f0             	add    $0xfffffff0,%esp
439916:	53                   	push   %ebx
439917:	56                   	push   %esi
439918:	57                   	push   %edi
439919:	8b 5d 0c             	mov    0xc(%ebp),%ebx
43991c:	8b 75 08             	mov    0x8(%ebp),%esi
43991f:	8b fb                	mov    %ebx,%edi
439921:	3b 77 04             	cmp    0x4(%edi),%esi
439924:	75 04                	jne    0x43992a
439926:	33 c0                	xor    %eax,%eax
439928:	eb 46                	jmp    0x439970
43992a:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
43992e:	75 20                	jne    0x439950
439930:	8d 45 f0             	lea    -0x10(%ebp),%eax
439933:	50                   	push   %eax
439934:	56                   	push   %esi
439935:	e8 a6 d4 fc ff       	call   0x406de0
43993a:	ff 77 10             	push   0x10(%edi)
43993d:	ff 77 0c             	push   0xc(%edi)
439940:	8d 45 f0             	lea    -0x10(%ebp),%eax
439943:	50                   	push   %eax
439944:	e8 9f d5 fc ff       	call   0x406ee8
439949:	85 c0                	test   %eax,%eax
43994b:	74 03                	je     0x439950
43994d:	89 77 08             	mov    %esi,0x8(%edi)
439950:	8b d3                	mov    %ebx,%edx
439952:	3b 72 08             	cmp    0x8(%edx),%esi
439955:	75 08                	jne    0x43995f
439957:	33 c0                	xor    %eax,%eax
439959:	c6 42 14 01          	movb   $0x1,0x14(%edx)
43995d:	eb 11                	jmp    0x439970
43995f:	3b 32                	cmp    (%edx),%esi
439961:	75 0a                	jne    0x43996d
439963:	83 c8 ff             	or     $0xffffffff,%eax
439966:	33 c9                	xor    %ecx,%ecx
439968:	89 4a 08             	mov    %ecx,0x8(%edx)
43996b:	eb 03                	jmp    0x439970
43996d:	83 c8 ff             	or     $0xffffffff,%eax
439970:	5f                   	pop    %edi
439971:	5e                   	pop    %esi
439972:	5b                   	pop    %ebx
439973:	8b e5                	mov    %ebp,%esp
439975:	5d                   	pop    %ebp
439976:	c2 08 00             	ret    $0x8
439979:	8d 40 00             	lea    0x0(%eax),%eax
43997c:	55                   	push   %ebp
43997d:	8b ec                	mov    %esp,%ebp
43997f:	83 c4 c4             	add    $0xffffffc4,%esp
439982:	53                   	push   %ebx
439983:	56                   	push   %esi
439984:	57                   	push   %edi
439985:	8b d8                	mov    %eax,%ebx
439987:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
43998b:	8b 45 08             	mov    0x8(%ebp),%eax