449665:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
44966b:	50                   	push   %eax
44966c:	8b 45 e4             	mov    -0x1c(%ebp),%eax
44966f:	50                   	push   %eax
449670:	8b 45 fc             	mov    -0x4(%ebp),%eax
449673:	8b 80 8c 00 00 00    	mov    0x8c(%eax),%eax
449679:	50                   	push   %eax
44967a:	e8 ad cd fb ff       	call   0x40642c
44967f:	8b 55 e8             	mov    -0x18(%ebp),%edx
449682:	d1 fa                	sar    $1,%edx
449684:	79 03                	jns    0x449689
449686:	83 d2 00             	adc    $0x0,%edx
449689:	2b c2                	sub    %edx,%eax
44968b:	89 45 f0             	mov    %eax,-0x10(%ebp)
44968e:	8b 45 fc             	mov    -0x4(%ebp),%eax
449691:	c6 40 62 01          	movb   $0x1,0x62(%eax)
449695:	33 c0                	xor    %eax,%eax
449697:	55                   	push   %ebp
449698:	68 d1 96 44 00       	push   $0x4496d1
44969d:	64 ff 30             	push   %fs:(%eax)
4496a0:	64 89 20             	mov    %esp,%fs:(%eax)
4496a3:	8b 45 ec             	mov    -0x14(%ebp),%eax
4496a6:	50                   	push   %eax
4496a7:	8b 45 e8             	mov    -0x18(%ebp),%eax
4496aa:	50                   	push   %eax
4496ab:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4496ae:	8b 55 f4             	mov    -0xc(%ebp),%edx
4496b1:	8b 45 fc             	mov    -0x4(%ebp),%eax
4496b4:	8b 18                	mov    (%eax),%ebx
4496b6:	ff 93 84 00 00 00    	call   *0x84(%ebx)
4496bc:	33 c0                	xor    %eax,%eax
4496be:	5a                   	pop    %edx
4496bf:	59                   	pop    %ecx
4496c0:	59                   	pop    %ecx
4496c1:	64 89 10             	mov    %edx,%fs:(%eax)
4496c4:	68 d8 96 44 00       	push   $0x4496d8
4496c9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4496cc:	c6 40 62 00          	movb   $0x0,0x62(%eax)
4496d0:	c3                   	ret
4496d1:	e9 7e a3 fb ff       	jmp    0x403a54
4496d6:	eb f1                	jmp    0x4496c9
4496d8:	80 7d fb 00          	cmpb   $0x0,-0x5(%ebp)
4496dc:	0f 84 2c 02 00 00    	je     0x44990e
4496e2:	8b 45 08             	mov    0x8(%ebp),%eax
4496e5:	8b 40 f8             	mov    -0x8(%eax),%eax
4496e8:	8b 40 08             	mov    0x8(%eax),%eax
4496eb:	8b 55 08             	mov    0x8(%ebp),%edx
4496ee:	8b 52 f8             	mov    -0x8(%edx),%edx
4496f1:	2b 02                	sub    (%edx),%eax
4496f3:	89 45 ec             	mov    %eax,-0x14(%ebp)
4496f6:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
4496fa:	7c 0d                	jl     0x449709
4496fc:	8a 45 fb             	mov    -0x5(%ebp),%al
4496ff:	04 fd                	add    $0xfd,%al
449701:	2c 02                	sub    $0x2,%al
449703:	72 04                	jb     0x449709
449705:	2c 01                	sub    $0x1,%al
449707:	75 09                	jne    0x449712
449709:	8b 45 fc             	mov    -0x4(%ebp),%eax
44970c:	8b 40 48             	mov    0x48(%eax),%eax
44970f:	89 45 ec             	mov    %eax,-0x14(%ebp)
449712:	8b 45 08             	mov    0x8(%ebp),%eax
449715:	8b 40 f8             	mov    -0x8(%eax),%eax
449718:	8b 40 0c             	mov    0xc(%eax),%eax
44971b:	8b 55 08             	mov    0x8(%ebp),%edx
44971e:	8b 52 f8             	mov    -0x8(%edx),%edx
449721:	2b 42 04             	sub    0x4(%edx),%eax
449724:	89 45 e8             	mov    %eax,-0x18(%ebp)
449727:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
44972b:	7c 0c                	jl     0x449739
44972d:	8a 45 fb             	mov    -0x5(%ebp),%al
449730:	48                   	dec    %eax
449731:	2c 02                	sub    $0x2,%al
449733:	72 04                	jb     0x449739
449735:	2c 03                	sub    $0x3,%al
449737:	75 09                	jne    0x449742
449739:	8b 45 fc             	mov    -0x4(%ebp),%eax
44973c:	8b 40 4c             	mov    0x4c(%eax),%eax
44973f:	89 45 e8             	mov    %eax,-0x18(%ebp)
449742:	8b 45 08             	mov    0x8(%ebp),%eax
449745:	8b 40 f8             	mov    -0x8(%eax),%eax
449748:	8b 00                	mov    (%eax),%eax
44974a:	89 45 f4             	mov    %eax,-0xc(%ebp)
44974d:	8b 45 08             	mov    0x8(%ebp),%eax
449750:	8b 40 f8             	mov    -0x8(%eax),%eax
449753:	8b 40 04             	mov    0x4(%eax),%eax
449756:	89 45 f0             	mov    %eax,-0x10(%ebp)
449759:	33 c0                	xor    %eax,%eax
44975b:	8a 45 fb             	mov    -0x5(%ebp),%al
44975e:	83 f8 06             	cmp    $0x6,%eax
449761:	0f 87 af 00 00 00    	ja     0x449816
449767:	ff 24 85 6e 97 44 00 	jmp    *0x44976e(,%eax,4)
44976e:	16                   	push   %ss
44976f:	98                   	cwtl
449770:	44                   	inc    %esp
449771:	00 8a 97 44 00 98    	add    %cl,-0x67ffbb69(%edx)
449777:	97                   	xchg   %eax,%edi
449778:	44                   	inc    %esp
449779:	00 b2 97 44 00 bf    	add    %dh,-0x40ffbb69(%edx)
44977f:	97                   	xchg   %eax,%edi
449780:	44                   	inc    %esp
449781:	00 16                	add    %dl,(%esi)
449783:	98                   	cwtl
449784:	44                   	inc    %esp
449785:	00 d9                	add    %bl,%cl
449787:	97                   	xchg   %eax,%edi
449788:	44                   	inc    %esp
449789:	00 8b 45 08 8b 40    	add    %cl,0x408b0845(%ebx)
44978f:	f8                   	clc
449790:	8b 55 e8             	mov    -0x18(%ebp),%edx
449793:	01 50 04             	add    %edx,0x4(%eax)
449796:	eb 7e                	jmp    0x449816
449798:	8b 45 08             	mov    0x8(%ebp),%eax
44979b:	8b 40 f8             	mov    -0x8(%eax),%eax
44979e:	8b 55 e8             	mov    -0x18(%ebp),%edx
4497a1:	29 50 0c             	sub    %edx,0xc(%eax)
4497a4:	8b 45 08             	mov    0x8(%ebp),%eax
4497a7:	8b 40 f8             	mov    -0x8(%eax),%eax
4497aa:	8b 40 0c             	mov    0xc(%eax),%eax
4497ad:	89 45 f0             	mov    %eax,-0x10(%ebp)
4497b0:	eb 64                	jmp    0x449816
4497b2:	8b 45 08             	mov    0x8(%ebp),%eax
4497b5:	8b 40 f8             	mov    -0x8(%eax),%eax
4497b8:	8b 55 ec             	mov    -0x14(%ebp),%edx
4497bb:	01 10                	add    %edx,(%eax)
4497bd:	eb 57                	jmp    0x449816
4497bf:	8b 45 08             	mov    0x8(%ebp),%eax
4497c2:	8b 40 f8             	mov    -0x8(%eax),%eax
4497c5:	8b 55 ec             	mov    -0x14(%ebp),%edx
4497c8:	29 50 08             	sub    %edx,0x8(%eax)
4497cb:	8b 45 08             	mov    0x8(%ebp),%eax
4497ce:	8b 40 f8             	mov    -0x8(%eax),%eax
4497d1:	8b 40 08             	mov    0x8(%eax),%eax
4497d4:	89 45 f4             	mov    %eax,-0xc(%ebp)
4497d7:	eb 3d                	jmp    0x449816
4497d9:	8b 45 fc             	mov    -0x4(%ebp),%eax
4497dc:	8b 40 40             	mov    0x40(%eax),%eax
4497df:	89 45 f4             	mov    %eax,-0xc(%ebp)
4497e2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4497e5:	8b 40 44             	mov    0x44(%eax),%eax
4497e8:	89 45 f0             	mov    %eax,-0x10(%ebp)
4497eb:	8d 45 f0             	lea    -0x10(%ebp),%eax
4497ee:	50                   	push   %eax
4497ef:	8d 45 ec             	lea    -0x14(%ebp),%eax
4497f2:	50                   	push   %eax
4497f3:	8d 45 e8             	lea    -0x18(%ebp),%eax
4497f6:	50                   	push   %eax
4497f7:	8b 45 08             	mov    0x8(%ebp),%eax
4497fa:	8b 40 f8             	mov    -0x8(%eax),%eax
4497fd:	50                   	push   %eax
4497fe:	8d 45 d0             	lea    -0x30(%ebp),%eax
449801:	50                   	push   %eax
449802:	8d 4d f4             	lea    -0xc(%ebp),%ecx
449805:	8b 45 08             	mov    0x8(%ebp),%eax
449808:	8b 40 fc             	mov    -0x4(%eax),%eax
44980b:	8b 55 fc             	mov    -0x4(%ebp),%edx
44980e:	8b 18                	mov    (%eax),%ebx
449810:	ff 93 a8 00 00 00    	call   *0xa8(%ebx)
449816:	8b 45 fc             	mov    -0x4(%ebp),%eax
449819:	c6 40 62 01          	movb   $0x1,0x62(%eax)
44981d:	33 c0                	xor    %eax,%eax
44981f:	55                   	push   %ebp
449820:	68 59 98 44 00       	push   $0x449859
449825:	64 ff 30             	push   %fs:(%eax)
449828:	64 89 20             	mov    %esp,%fs:(%eax)
44982b:	8b 45 ec             	mov    -0x14(%ebp),%eax
44982e:	50                   	push   %eax
44982f:	8b 45 e8             	mov    -0x18(%ebp),%eax
449832:	50                   	push   %eax
449833:	8b 4d f0             	mov    -0x10(%ebp),%ecx
449836:	8b 55 f4             	mov    -0xc(%ebp),%edx
449839:	8b 45 fc             	mov    -0x4(%ebp),%eax
44983c:	8b 18                	mov    (%eax),%ebx
44983e:	ff 93 84 00 00 00    	call   *0x84(%ebx)
449844:	33 c0                	xor    %eax,%eax
449846:	5a                   	pop    %edx
449847:	59                   	pop    %ecx
449848:	59                   	pop    %ecx
449849:	64 89 10             	mov    %edx,%fs:(%eax)
44984c:	68 60 98 44 00       	push   $0x449860
449851:	8b 45 fc             	mov    -0x4(%ebp),%eax
449854:	c6 40 62 00          	movb   $0x0,0x62(%eax)
449858:	c3                   	ret
449859:	e9 f6 a1 fb ff       	jmp    0x403a54
44985e:	eb f1                	jmp    0x449851
449860:	8b 45 fc             	mov    -0x4(%ebp),%eax
449863:	8b 40 48             	mov    0x48(%eax),%eax
449866:	3b 45 ec             	cmp    -0x14(%ebp),%eax
449869:	75 0f                	jne    0x44987a
44986b:	8b 55 fc             	mov    -0x4(%ebp),%edx
44986e:	8b 52 4c             	mov    0x4c(%edx),%edx
449871:	3b 55 e8             	cmp    -0x18(%ebp),%edx
449874:	0f 84 94 00 00 00    	je     0x44990e
44987a:	33 d2                	xor    %edx,%edx
44987c:	8a 55 fb             	mov    -0x5(%ebp),%dl
44987f:	83 fa 05             	cmp    $0x5,%edx
449882:	0f 87 86 00 00 00    	ja     0x44990e
449888:	ff 24 95 8f 98 44 00 	jmp    *0x44988f(,%edx,4)
44988f:	0e                   	push   %cs
449890:	99                   	cltd
449891:	44                   	inc    %esp
449892:	00 a7 98 44 00 bb    	add    %ah,-0x44ffbb68(%edi)
449898:	98                   	cwtl
449899:	44                   	inc    %esp
44989a:	00 cf                	add    %cl,%bh
44989c:	98                   	cwtl
44989d:	44                   	inc    %esp
44989e:	00 de                	add    %bl,%dh
4498a0:	98                   	cwtl
4498a1:	44                   	inc    %esp
4498a2:	00 ee                	add    %ch,%dh
4498a4:	98                   	cwtl
4498a5:	44                   	inc    %esp
4498a6:	00 8b 45 fc 8b 55    	add    %cl,0x558bfc45(%ebx)
4498ac:	e8 2b 50 4c 8b       	call   0x8b90e8dc
4498b1:	45                   	inc    %ebp
4498b2:	08 8b 40 f8 29 50    	or     %cl,0x5029f840(%ebx)
4498b8:	04 eb                	add    $0xeb,%al
4498ba:	53                   	push   %ebx
4498bb:	8b 45 fc             	mov    -0x4(%ebp),%eax
4498be:	8b 55 e8             	mov    -0x18(%ebp),%edx
4498c1:	2b 50 4c             	sub    0x4c(%eax),%edx
4498c4:	8b 45 08             	mov    0x8(%ebp),%eax
4498c7:	8b 40 f8             	mov    -0x8(%eax),%eax
4498ca:	01 50 0c             	add    %edx,0xc(%eax)
4498cd:	eb 3f                	jmp    0x44990e
4498cf:	8b 55 ec             	mov    -0x14(%ebp),%edx
4498d2:	2b d0                	sub    %eax,%edx
4498d4:	8b 45 08             	mov    0x8(%ebp),%eax
4498d7:	8b 40 f8             	mov    -0x8(%eax),%eax
4498da:	29 10                	sub    %edx,(%eax)
4498dc:	eb 30                	jmp    0x44990e
4498de:	8b 55 ec             	mov    -0x14(%ebp),%edx
4498e1:	2b d0                	sub    %eax,%edx
4498e3:	8b 45 08             	mov    0x8(%ebp),%eax
4498e6:	8b 40 f8             	mov    -0x8(%eax),%eax
4498e9:	01 50 08             	add    %edx,0x8(%eax)
4498ec:	eb 20                	jmp    0x44990e
4498ee:	8b 55 ec             	mov    -0x14(%ebp),%edx
4498f1:	2b d0                	sub    %eax,%edx
4498f3:	8b 45 08             	mov    0x8(%ebp),%eax
4498f6:	8b 40 f8             	mov    -0x8(%eax),%eax
4498f9:	01 50 08             	add    %edx,0x8(%eax)
4498fc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4498ff:	8b 55 e8             	mov    -0x18(%ebp),%edx
449902:	2b 50 4c             	sub    0x4c(%eax),%edx
449905:	8b 45 08             	mov    0x8(%ebp),%eax
449908:	8b 40 f8             	mov    -0x8(%eax),%eax
44990b:	01 50 0c             	add    %edx,0xc(%eax)
44990e:	5f                   	pop    %edi
44990f:	5e                   	pop    %esi
449910:	5b                   	pop    %ebx
449911:	8b e5                	mov    %ebp,%esp
449913:	5d                   	pop    %ebp
449914:	c3                   	ret
449915:	8d 40 00             	lea    0x0(%eax),%eax
449918:	55                   	push   %ebp
449919:	8b ec                	mov    %esp,%ebp
44991b:	83 c4 e8             	add    $0xffffffe8,%esp
44991e:	53                   	push   %ebx
44991f:	56                   	push   %esi
449920:	57                   	push   %edi
449921:	8b d8                	mov    %eax,%ebx
449923:	8b 45 08             	mov    0x8(%ebp),%eax
449926:	8b 40 f4             	mov    -0xc(%eax),%eax
449929:	8b 10                	mov    (%eax),%edx
44992b:	ff 52 08             	call   *0x8(%edx)
44992e:	8b 45 08             	mov    0x8(%ebp),%eax
449931:	83 78 f0 00          	cmpl   $0x0,-0x10(%eax)
449935:	74 44                	je     0x44997b
449937:	84 db                	test   %bl,%bl
449939:	74 24                	je     0x44995f
44993b:	8b 45 08             	mov    0x8(%ebp),%eax
44993e:	8b 40 f0             	mov    -0x10(%eax),%eax
449941:	80 78 57 00          	cmpb   $0x0,0x57(%eax)
449945:	75 18                	jne    0x44995f
449947:	8b 45 08             	mov    0x8(%ebp),%eax
44994a:	8b 40 f0             	mov    -0x10(%eax),%eax
44994d:	f6 40 1c 10          	testb  $0x10,0x1c(%eax)
449951:	74 28                	je     0x44997b
449953:	8b 45 08             	mov    0x8(%ebp),%eax
449956:	8b 40 f0             	mov    -0x10(%eax),%eax
449959:	f6 40 51 04          	testb  $0x4,0x51(%eax)
44995d:	75 1c                	jne    0x44997b
44995f:	8b 45 08             	mov    0x8(%ebp),%eax
449962:	8b 40 f0             	mov    -0x10(%eax),%eax
449965:	3a 58 5b             	cmp    0x5b(%eax),%bl
449968:	75 11                	jne    0x44997b
44996a:	8b 45 08             	mov    0x8(%ebp),%eax
44996d:	8b 50 f0             	mov    -0x10(%eax),%edx
449970:	8b 45 08             	mov    0x8(%ebp),%eax
449973:	8b 40 f4             	mov    -0xc(%eax),%eax
449976:	e8 ad ec fc ff       	call   0x418628
44997b:	8b 45 08             	mov    0x8(%ebp),%eax
44997e:	8b 40 fc             	mov    -0x4(%eax),%eax
449981:	e8 86 07 00 00       	call   0x44a10c
449986:	48                   	dec    %eax
449987:	85 c0                	test   %eax,%eax
449989:	0f 8c 9c 00 00 00    	jl     0x449a2b
44998f:	40                   	inc    %eax
449990:	89 45 f8             	mov    %eax,-0x8(%ebp)
449993:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
44999a:	8b 45 08             	mov    0x8(%ebp),%eax
44999d:	8b 40 fc             	mov    -0x4(%eax),%eax
4499a0:	8b 55 fc             	mov    -0x4(%ebp),%edx
4499a3:	e8 28 07 00 00       	call   0x44a0d0
4499a8:	8b f8                	mov    %eax,%edi
4499aa:	3a 5f 5b             	cmp    0x5b(%edi),%bl
4499ad:	75 70                	jne    0x449a1f
4499af:	84 db                	test   %bl,%bl
4499b1:	74 24                	je     0x4499d7
4499b3:	80 7f 57 00          	cmpb   $0x0,0x57(%edi)
4499b7:	75 1e                	jne    0x4499d7
4499b9:	a1 84 9a 44 00       	mov    0x449a84,%eax
4499be:	23 47 50             	and    0x50(%edi),%eax
4499c1:	8b 15 84 9a 44 00    	mov    0x449a84,%edx
4499c7:	3b d0                	cmp    %eax,%edx
4499c9:	74 0c                	je     0x4499d7
4499cb:	f6 47 1c 10          	testb  $0x10,0x1c(%edi)
4499cf:	74 4e                	je     0x449a1f
4499d1:	f6 47 51 04          	testb  $0x4,0x51(%edi)
4499d5:	75 48                	jne    0x449a1f
4499d7:	8b 45 08             	mov    0x8(%ebp),%eax
4499da:	3b 78 f0             	cmp    -0x10(%eax),%edi
4499dd:	74 40                	je     0x449a1f
4499df:	33 f6                	xor    %esi,%esi
4499e1:	eb 01                	jmp    0x4499e4
4499e3:	46                   	inc    %esi
4499e4:	8b 45 08             	mov    0x8(%ebp),%eax
4499e7:	8b 40 f4             	mov    -0xc(%eax),%eax
4499ea:	3b 70 08             	cmp    0x8(%eax),%esi
4499ed:	7d 21                	jge    0x449a10
4499ef:	8b 45 08             	mov    0x8(%ebp),%eax
4499f2:	50                   	push   %eax
4499f3:	8b 45 08             	mov    0x8(%ebp),%eax
4499f6:	8b 40 f4             	mov    -0xc(%eax),%eax
4499f9:	8b d6                	mov    %esi,%edx
4499fb:	e8 84 ed fc ff       	call   0x418784
449a00:	8b d0                	mov    %eax,%edx
449a02:	8b cb                	mov    %ebx,%ecx
449a04:	8b c7                	mov    %edi,%eax
449a06:	e8 41 fa ff ff       	call   0x44944c
449a0b:	59                   	pop    %ecx
449a0c:	84 c0                	test   %al,%al
449a0e:	74 d3                	je     0x4499e3
449a10:	8b 45 08             	mov    0x8(%ebp),%eax
449a13:	8b 40 f4             	mov    -0xc(%eax),%eax
449a16:	8b cf                	mov    %edi,%ecx
449a18:	8b d6                	mov    %esi,%edx
449a1a:	e8 e1 ed fc ff       	call   0x418800