449478:	f6 c3 02             	test   $0x2,%bl
44947b:	74 15                	je     0x449492
44947d:	ba 03 00 00 00       	mov    $0x3,%edx
449482:	8b 46 78             	mov    0x78(%esi),%eax
449485:	8b 08                	mov    (%eax),%ecx
449487:	ff 51 10             	call   *0x10(%ecx)
44948a:	89 86 69 01 00 00    	mov    %eax,0x169(%esi)
449490:	eb 40                	jmp    0x4494d2
449492:	ba 01 00 00 00       	mov    $0x1,%edx
449497:	8b 46 78             	mov    0x78(%esi),%eax
44949a:	8b 08                	mov    (%eax),%ecx
44949c:	ff 51 10             	call   *0x10(%ecx)
44949f:	89 86 69 01 00 00    	mov    %eax,0x169(%esi)
4494a5:	eb 2b                	jmp    0x4494d2
4494a7:	ba 01 00 00 00       	mov    $0x1,%edx
4494ac:	8b 46 78             	mov    0x78(%esi),%eax
4494af:	8b 08                	mov    (%eax),%ecx
4494b1:	ff 51 10             	call   *0x10(%ecx)
4494b4:	8b d8                	mov    %eax,%ebx
4494b6:	ba 03 00 00 00       	mov    $0x3,%edx
4494bb:	8b 46 78             	mov    0x78(%esi),%eax
4494be:	8b 08                	mov    (%eax),%ecx
4494c0:	ff 51 10             	call   *0x10(%ecx)
4494c3:	d1 f8                	sar    $1,%eax
4494c5:	79 03                	jns    0x4494ca
4494c7:	83 d0 00             	adc    $0x0,%eax
4494ca:	03 d8                	add    %eax,%ebx
4494cc:	89 9e 69 01 00 00    	mov    %ebx,0x169(%esi)
4494d2:	8b 46 30             	mov    0x30(%esi),%eax
4494d5:	85 c0                	test   %eax,%eax
4494d7:	74 10                	je     0x4494e9
4494d9:	8d 8e 75 01 00 00    	lea    0x175(%esi),%ecx
4494df:	8b d6                	mov    %esi,%edx
4494e1:	8b 18                	mov    (%eax),%ebx
4494e3:	ff 93 d0 00 00 00    	call   *0xd0(%ebx)
4494e9:	59                   	pop    %ecx
4494ea:	5a                   	pop    %edx
4494eb:	5f                   	pop    %edi
4494ec:	5e                   	pop    %esi
4494ed:	5b                   	pop    %ebx
4494ee:	c3                   	ret
4494ef:	00 03                	add    %al,(%ebx)
4494f1:	00 00                	add    %al,(%eax)
4494f3:	00 53 56             	add    %dl,0x56(%ebx)
4494f6:	8b d8                	mov    %eax,%ebx
4494f8:	8b 43 48             	mov    0x48(%ebx),%eax
4494fb:	50                   	push   %eax
4494fc:	8b 43 4c             	mov    0x4c(%ebx),%eax
4494ff:	50                   	push   %eax
449500:	8b 4b 44             	mov    0x44(%ebx),%ecx
449503:	8b c3                	mov    %ebx,%eax
449505:	8b 30                	mov    (%eax),%esi
449507:	ff 96 88 00 00 00    	call   *0x88(%esi)
44950d:	80 8b 8c 00 00 00 01 	orb    $0x1,0x8c(%ebx)
449514:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
449518:	74 09                	je     0x449523
44951a:	8b 43 40             	mov    0x40(%ebx),%eax
44951d:	89 83 80 01 00 00    	mov    %eax,0x180(%ebx)
449523:	5e                   	pop    %esi
449524:	5b                   	pop    %ebx
449525:	c3                   	ret
449526:	8b c0                	mov    %eax,%eax
449528:	53                   	push   %ebx
449529:	56                   	push   %esi
44952a:	8b d8                	mov    %eax,%ebx
44952c:	8b 43 48             	mov    0x48(%ebx),%eax
44952f:	50                   	push   %eax
449530:	8b 43 4c             	mov    0x4c(%ebx),%eax
449533:	50                   	push   %eax
449534:	8b ca                	mov    %edx,%ecx
449536:	8b c3                	mov    %ebx,%eax
449538:	8b 53 40             	mov    0x40(%ebx),%edx
44953b:	8b 30                	mov    (%eax),%esi
44953d:	ff 96 88 00 00 00    	call   *0x88(%esi)
449543:	80 8b 8c 00 00 00 02 	orb    $0x2,0x8c(%ebx)
44954a:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
44954e:	74 09                	je     0x449559
449550:	8b 43 44             	mov    0x44(%ebx),%eax
449553:	89 83 84 01 00 00    	mov    %eax,0x184(%ebx)
449559:	5e                   	pop    %esi
44955a:	5b                   	pop    %ebx
44955b:	c3                   	ret
44955c:	53                   	push   %ebx
44955d:	56                   	push   %esi
44955e:	8b d8                	mov    %eax,%ebx
449560:	52                   	push   %edx
449561:	8b 43 4c             	mov    0x4c(%ebx),%eax
449564:	50                   	push   %eax
449565:	8b 4b 44             	mov    0x44(%ebx),%ecx
449568:	8b c3                	mov    %ebx,%eax
44956a:	8b 53 40             	mov    0x40(%ebx),%edx
44956d:	8b 30                	mov    (%eax),%esi
44956f:	ff 96 88 00 00 00    	call   *0x88(%esi)
449575:	80 8b 8c 00 00 00 04 	orb    $0x4,0x8c(%ebx)
44957c:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
449580:	74 09                	je     0x44958b
449582:	8b 43 48             	mov    0x48(%ebx),%eax
449585:	89 83 88 01 00 00    	mov    %eax,0x188(%ebx)
44958b:	5e                   	pop    %esi
44958c:	5b                   	pop    %ebx
44958d:	c3                   	ret
44958e:	8b c0                	mov    %eax,%eax
449590:	53                   	push   %ebx
449591:	56                   	push   %esi
449592:	8b d8                	mov    %eax,%ebx
449594:	8b 43 48             	mov    0x48(%ebx),%eax
449597:	50                   	push   %eax
449598:	52                   	push   %edx
449599:	8b 4b 44             	mov    0x44(%ebx),%ecx
44959c:	8b c3                	mov    %ebx,%eax
44959e:	8b 53 40             	mov    0x40(%ebx),%edx
4495a1:	8b 30                	mov    (%eax),%esi
4495a3:	ff 96 88 00 00 00    	call   *0x88(%esi)
4495a9:	80 8b 8c 00 00 00 08 	orb    $0x8,0x8c(%ebx)
4495b0:	f6 43 1c 02          	testb  $0x2,0x1c(%ebx)
4495b4:	74 09                	je     0x4495bf
4495b6:	8b 43 4c             	mov    0x4c(%ebx),%eax
4495b9:	89 83 8c 01 00 00    	mov    %eax,0x18c(%ebx)
4495bf:	5e                   	pop    %esi
4495c0:	5b                   	pop    %ebx
4495c1:	c3                   	ret
4495c2:	8b c0                	mov    %eax,%eax
4495c4:	55                   	push   %ebp
4495c5:	8b ec                	mov    %esp,%ebp
4495c7:	83 c4 e8             	add    $0xffffffe8,%esp
4495ca:	56                   	push   %esi
4495cb:	57                   	push   %edi
4495cc:	8b f1                	mov    %ecx,%esi
4495ce:	8d 7d e8             	lea    -0x18(%ebp),%edi
4495d1:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4495d2:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4495d3:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4495d4:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4495d5:	8b fa                	mov    %edx,%edi
4495d7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4495da:	8b 45 fc             	mov    -0x4(%ebp),%eax
4495dd:	3b b8 94 00 00 00    	cmp    0x94(%eax),%edi
4495e3:	74 55                	je     0x44963a
4495e5:	8b 45 fc             	mov    -0x4(%ebp),%eax
4495e8:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
4495ee:	85 c0                	test   %eax,%eax
4495f0:	74 28                	je     0x44961a
4495f2:	83 b8 ac 01 00 00 00 	cmpl   $0x0,0x1ac(%eax)
4495f9:	74 1f                	je     0x44961a
4495fb:	8b 80 ac 01 00 00    	mov    0x1ac(%eax),%eax
449601:	8b 55 fc             	mov    -0x4(%ebp),%edx
449604:	e8 6b ed fc ff       	call   0x418374
449609:	8b 45 fc             	mov    -0x4(%ebp),%eax
44960c:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
449612:	8b 55 fc             	mov    -0x4(%ebp),%edx
449615:	e8 0a 55 fd ff       	call   0x41eb24
44961a:	85 ff                	test   %edi,%edi
44961c:	74 1c                	je     0x44963a
44961e:	83 ff ff             	cmp    $0xffffffff,%edi
449621:	74 17                	je     0x44963a
449623:	83 bf ac 01 00 00 00 	cmpl   $0x0,0x1ac(%edi)
44962a:	74 0e                	je     0x44963a
44962c:	8b 87 ac 01 00 00    	mov    0x1ac(%edi),%eax
449632:	8b 55 fc             	mov    -0x4(%ebp),%edx
449635:	e8 3e ea fc ff       	call   0x418078
44963a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44963d:	66 81 48 54 00 04    	orw    $0x400,0x54(%eax)
449643:	33 d2                	xor    %edx,%edx
449645:	55                   	push   %ebp
449646:	68 e4 96 44 00       	push   $0x4496e4
44964b:	64 ff 32             	push   %fs:(%edx)
44964e:	64 89 22             	mov    %esp,%fs:(%edx)
449651:	83 ff ff             	cmp    $0xffffffff,%edi
449654:	74 11                	je     0x449667
449656:	8d 4d e8             	lea    -0x18(%ebp),%ecx
449659:	8b d7                	mov    %edi,%edx
44965b:	8b 45 fc             	mov    -0x4(%ebp),%eax
44965e:	66 be e4 ff          	mov    $0xffe4,%si
449662:	e8 b1 a4 fb ff       	call   0x403b18
449667:	8b 45 fc             	mov    -0x4(%ebp),%eax
44966a:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
449670:	3b f8                	cmp    %eax,%edi
449672:	74 59                	je     0x4496cd
449674:	89 45 f8             	mov    %eax,-0x8(%ebp)
449677:	83 ff ff             	cmp    $0xffffffff,%edi
44967a:	74 31                	je     0x4496ad
44967c:	8b 45 fc             	mov    -0x4(%ebp),%eax
44967f:	89 b8 94 00 00 00    	mov    %edi,0x94(%eax)
449685:	85 ff                	test   %edi,%edi
449687:	74 2f                	je     0x4496b8
449689:	8d 4d e8             	lea    -0x18(%ebp),%ecx
44968c:	8b 55 fc             	mov    -0x4(%ebp),%edx
44968f:	8b c7                	mov    %edi,%eax
449691:	66 be c4 ff          	mov    $0xffc4,%si
449695:	e8 7e a4 fb ff       	call   0x403b18
44969a:	8b 45 fc             	mov    -0x4(%ebp),%eax
44969d:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
4496a3:	8b 55 fc             	mov    -0x4(%ebp),%edx
4496a6:	e8 39 52 fd ff       	call   0x41e8e4
4496ab:	eb 0b                	jmp    0x4496b8
4496ad:	8b 45 fc             	mov    -0x4(%ebp),%eax
4496b0:	33 d2                	xor    %edx,%edx
4496b2:	89 90 94 00 00 00    	mov    %edx,0x94(%eax)
4496b8:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
4496bc:	74 0f                	je     0x4496cd
4496be:	8b 55 fc             	mov    -0x4(%ebp),%edx
4496c1:	8b 45 f8             	mov    -0x8(%ebp),%eax
4496c4:	66 be be ff          	mov    $0xffbe,%si
4496c8:	e8 4b a4 fb ff       	call   0x403b18
4496cd:	33 c0                	xor    %eax,%eax
4496cf:	5a                   	pop    %edx
4496d0:	59                   	pop    %ecx
4496d1:	59                   	pop    %ecx
4496d2:	64 89 10             	mov    %edx,%fs:(%eax)
4496d5:	68 eb 96 44 00       	push   $0x4496eb
4496da:	8b 45 fc             	mov    -0x4(%ebp),%eax
4496dd:	66 81 60 54 ff fb    	andw   $0xfbff,0x54(%eax)
4496e3:	c3                   	ret
4496e4:	e9 c7 a9 fb ff       	jmp    0x4040b0
4496e9:	eb ef                	jmp    0x4496da
4496eb:	5f                   	pop    %edi
4496ec:	5e                   	pop    %esi
4496ed:	8b e5                	mov    %ebp,%esp
4496ef:	5d                   	pop    %ebp
4496f0:	c3                   	ret
4496f1:	8d 40 00             	lea    0x0(%eax),%eax
4496f4:	53                   	push   %ebx
4496f5:	56                   	push   %esi
4496f6:	57                   	push   %edi
4496f7:	8b f9                	mov    %ecx,%edi
4496f9:	8b f2                	mov    %edx,%esi
4496fb:	8b d8                	mov    %eax,%ebx
4496fd:	8b c3                	mov    %ebx,%eax
4496ff:	8b 15 bc 59 44 00    	mov    0x4459bc,%edx
449705:	e8 9e a3 fb ff       	call   0x403aa8
44970a:	84 c0                	test   %al,%al
44970c:	75 0d                	jne    0x44971b
44970e:	33 c9                	xor    %ecx,%ecx
449710:	0f b6 53 57          	movzbl 0x57(%ebx),%edx
449714:	8b c3                	mov    %ebx,%eax
449716:	e8 ad 0b 00 00       	call   0x44a2c8
44971b:	3b 73 30             	cmp    0x30(%ebx),%esi
44971e:	74 0b                	je     0x44972b
449720:	8b d7                	mov    %edi,%edx
449722:	8b c3                	mov    %ebx,%eax
449724:	e8 ab 1a 00 00       	call   0x44b1d4
449729:	eb 09                	jmp    0x449734
44972b:	8b d7                	mov    %edi,%edx
44972d:	8b c3                	mov    %ebx,%eax
44972f:	e8 70 00 00 00       	call   0x4497a4
449734:	85 f6                	test   %esi,%esi
449736:	74 05                	je     0x44973d
449738:	83 fe ff             	cmp    $0xffffffff,%esi
44973b:	75 09                	jne    0x449746
44973d:	33 d2                	xor    %edx,%edx
44973f:	8b c3                	mov    %ebx,%eax
449741:	8b 08                	mov    (%eax),%ecx
449743:	ff 51 6c             	call   *0x6c(%ecx)
449746:	5f                   	pop    %edi
449747:	5e                   	pop    %esi
449748:	5b                   	pop    %ebx
449749:	c3                   	ret
44974a:	8b c0                	mov    %eax,%eax
44974c:	f6 40 1c 01          	testb  $0x1,0x1c(%eax)
449750:	75 07                	jne    0x449759
449752:	c6 80 58 01 00 00 01 	movb   $0x1,0x158(%eax)
449759:	89 90 60 01 00 00    	mov    %edx,0x160(%eax)
44975f:	c3                   	ret
449760:	53                   	push   %ebx
449761:	56                   	push   %esi
449762:	8b f2                	mov    %edx,%esi
449764:	8b d8                	mov    %eax,%ebx
449766:	f6 43 1c 01          	testb  $0x1,0x1c(%ebx)
44976a:	75 07                	jne    0x449773
44976c:	c6 83 58 01 00 00 00 	movb   $0x0,0x158(%ebx)
449773:	8d 83 5c 01 00 00    	lea    0x15c(%ebx),%eax
449779:	8b d6                	mov    %esi,%edx
44977b:	e8 1c b0 fb ff       	call   0x40479c
449780:	5e                   	pop    %esi
449781:	5b                   	pop    %ebx
449782:	c3                   	ret
449783:	90                   	nop
449784:	8b 48 40             	mov    0x40(%eax),%ecx
449787:	89 0a                	mov    %ecx,(%edx)
449789:	8b 48 44             	mov    0x44(%eax),%ecx
44978c:	89 4a 04             	mov    %ecx,0x4(%edx)
44978f:	8b 48 40             	mov    0x40(%eax),%ecx
449792:	03 48 48             	add    0x48(%eax),%ecx
449795:	89 4a 08             	mov    %ecx,0x8(%edx)
449798:	8b 48 44             	mov    0x44(%eax),%ecx
44979b:	03 48 4c             	add    0x4c(%eax),%ecx
44979e:	89 4a 0c             	mov    %ecx,0xc(%edx)
4497a1:	c3                   	ret
4497a2:	8b c0                	mov    %eax,%eax
4497a4:	53                   	push   %ebx
4497a5:	56                   	push   %esi
4497a6:	57                   	push   %edi
4497a7:	8b 4a 08             	mov    0x8(%edx),%ecx
4497aa:	8b 32                	mov    (%edx),%esi
4497ac:	2b ce                	sub    %esi,%ecx
4497ae:	51                   	push   %ecx
4497af:	8b 4a 0c             	mov    0xc(%edx),%ecx
4497b2:	8b 7a 04             	mov    0x4(%edx),%edi
4497b5:	2b cf                	sub    %edi,%ecx
4497b7:	51                   	push   %ecx
4497b8:	8b cf                	mov    %edi,%ecx
4497ba:	8b d6                	mov    %esi,%edx
4497bc:	8b 18                	mov    (%eax),%ebx
4497be:	ff 93 88 00 00 00    	call   *0x88(%ebx)
4497c4:	5f                   	pop    %edi
4497c5:	5e                   	pop    %esi
4497c6:	5b                   	pop    %ebx
4497c7:	c3                   	ret
4497c8:	33 c9                	xor    %ecx,%ecx
4497ca:	89 0a                	mov    %ecx,(%edx)
4497cc:	33 c9                	xor    %ecx,%ecx
4497ce:	89 4a 04             	mov    %ecx,0x4(%edx)
4497d1:	8b 48 48             	mov    0x48(%eax),%ecx
4497d4:	89 4a 08             	mov    %ecx,0x8(%edx)
4497d7:	8b 40 4c             	mov    0x4c(%eax),%eax
4497da:	89 42 0c             	mov    %eax,0xc(%edx)
4497dd:	c3                   	ret
4497de:	8b c0                	mov    %eax,%eax
4497e0:	53                   	push   %ebx
4497e1:	83 c4 f0             	add    $0xfffffff0,%esp
4497e4:	8b d8                	mov    %eax,%ebx
4497e6:	8b d4                	mov    %esp,%edx
4497e8:	8b c3                	mov    %ebx,%eax
4497ea:	8b 08                	mov    (%eax),%ecx
4497ec:	ff 51 44             	call   *0x44(%ecx)
4497ef:	8b 44 24 08          	mov    0x8(%esp),%eax
4497f3:	83 c4 10             	add    $0x10,%esp
4497f6:	5b                   	pop    %ebx
4497f7:	c3                   	ret
4497f8:	53                   	push   %ebx
4497f9:	56                   	push   %esi
4497fa:	83 c4 f8             	add    $0xfffffff8,%esp
4497fd:	8b f2                	mov    %edx,%esi
4497ff:	8b d8                	mov    %eax,%ebx
449801:	8b c3                	mov    %ebx,%eax
449803:	e8 1c 00 00 00       	call   0x449824
449808:	8b d0                	mov    %eax,%edx
44980a:	8b cc                	mov    %esp,%ecx
44980c:	8b c6                	mov    %esi,%eax
44980e:	e8 45 d5 fc ff       	call   0x416d58
449813:	8b d4                	mov    %esp,%edx
449815:	8b c3                	mov    %ebx,%eax
449817:	e8 e4 04 00 00       	call   0x449d00
44981c:	59                   	pop    %ecx
44981d:	5a                   	pop    %edx
44981e:	5e                   	pop    %esi
44981f:	5b                   	pop    %ebx
449820:	c3                   	ret
449821:	8d 40 00             	lea    0x0(%eax),%eax
449824:	53                   	push   %ebx