44856a:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
44856e:	74 08                	je     0x448578
448570:	ff 76 04             	push   0x4(%esi)
448573:	e8 77 cf ff ff       	call   0x4454ef
448578:	83 3e 00             	cmpl   $0x0,(%esi)
44857b:	74 07                	je     0x448584
44857d:	ff 36                	push   (%esi)
44857f:	e8 6b cf ff ff       	call   0x4454ef
448584:	56                   	push   %esi
448585:	e8 0f b4 fb ff       	call   0x403999
44858a:	5e                   	pop    %esi
44858b:	5d                   	pop    %ebp
44858c:	c2 04 00             	ret    $0x4
44858f:	55                   	push   %ebp
448590:	8b ec                	mov    %esp,%ebp
448592:	83 ec 14             	sub    $0x14,%esp
448595:	a1 08 a0 46 00       	mov    0x46a008,%eax
44859a:	33 c5                	xor    %ebp,%eax
44859c:	89 45 fc             	mov    %eax,-0x4(%ebp)
44859f:	56                   	push   %esi
4485a0:	8b 75 08             	mov    0x8(%ebp),%esi
4485a3:	8d 45 ec             	lea    -0x14(%ebp),%eax
4485a6:	50                   	push   %eax
4485a7:	ff 15 bc b1 44 00    	call   *0x44b1bc
4485ad:	ff 75 0c             	push   0xc(%ebp)
4485b0:	8d 45 ec             	lea    -0x14(%ebp),%eax
4485b3:	50                   	push   %eax
4485b4:	56                   	push   %esi
4485b5:	e8 79 01 00 00       	call   0x448733
4485ba:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4485bd:	33 cd                	xor    %ebp,%ecx
4485bf:	5e                   	pop    %esi
4485c0:	e8 71 58 fe ff       	call   0x42de36
4485c5:	8b e5                	mov    %ebp,%esp
4485c7:	5d                   	pop    %ebp
4485c8:	c2 08 00             	ret    $0x8
4485cb:	55                   	push   %ebp
4485cc:	8b ec                	mov    %esp,%ebp
4485ce:	83 ec 1c             	sub    $0x1c,%esp
4485d1:	a1 08 a0 46 00       	mov    0x46a008,%eax
4485d6:	33 c5                	xor    %ebp,%eax
4485d8:	89 45 fc             	mov    %eax,-0x4(%ebp)
4485db:	8b 45 0c             	mov    0xc(%ebp),%eax
4485de:	8b 4d 08             	mov    0x8(%ebp),%ecx
4485e1:	53                   	push   %ebx
4485e2:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
4485e6:	33 db                	xor    %ebx,%ebx
4485e8:	56                   	push   %esi
4485e9:	57                   	push   %edi
4485ea:	89 45 e4             	mov    %eax,-0x1c(%ebp)
4485ed:	8d 7d ec             	lea    -0x14(%ebp),%edi
4485f0:	33 c0                	xor    %eax,%eax
4485f2:	ab                   	stos   %eax,%es:(%edi)
4485f3:	53                   	push   %ebx
4485f4:	51                   	push   %ecx
4485f5:	ab                   	stos   %eax,%es:(%edi)
4485f6:	ab                   	stos   %eax,%es:(%edi)
4485f7:	ab                   	stos   %eax,%es:(%edi)
4485f8:	8d 45 e8             	lea    -0x18(%ebp),%eax
4485fb:	50                   	push   %eax
4485fc:	e8 a4 9b fb ff       	call   0x4021a5
448601:	8b f0                	mov    %eax,%esi
448603:	85 f6                	test   %esi,%esi
448605:	0f 88 05 01 00 00    	js     0x448710
44860b:	8b 7d e8             	mov    -0x18(%ebp),%edi
44860e:	8b cf                	mov    %edi,%ecx
448610:	85 ff                	test   %edi,%edi
448612:	0f 84 b9 00 00 00    	je     0x4486d1
448618:	0f b7 07             	movzwl (%edi),%eax
44861b:	66 85 c0             	test   %ax,%ax
44861e:	0f 84 ad 00 00 00    	je     0x4486d1
448624:	6a 54                	push   $0x54
448626:	5a                   	pop    %edx
448627:	66 3b d0             	cmp    %ax,%dx
44862a:	74 14                	je     0x448640
44862c:	6a 3a                	push   $0x3a
44862e:	5a                   	pop    %edx
44862f:	66 3b d0             	cmp    %ax,%dx
448632:	74 0c                	je     0x448640
448634:	6a 2d                	push   $0x2d
448636:	5a                   	pop    %edx
448637:	66 3b d0             	cmp    %ax,%dx
44863a:	0f 85 87 00 00 00    	jne    0x4486c7
448640:	33 c0                	xor    %eax,%eax
448642:	33 d2                	xor    %edx,%edx
448644:	66 89 07             	mov    %ax,(%edi)
448647:	8b c3                	mov    %ebx,%eax
448649:	83 c7 02             	add    $0x2,%edi
44864c:	2b c2                	sub    %edx,%eax
44864e:	74 64                	je     0x4486b4
448650:	83 e8 01             	sub    $0x1,%eax
448653:	74 50                	je     0x4486a5
448655:	83 e8 01             	sub    $0x1,%eax
448658:	74 3c                	je     0x448696
44865a:	83 e8 01             	sub    $0x1,%eax
44865d:	74 28                	je     0x448687
44865f:	83 e8 01             	sub    $0x1,%eax
448662:	74 14                	je     0x448678
448664:	83 e8 01             	sub    $0x1,%eax
448667:	75 5b                	jne    0x4486c4
448669:	6a 0a                	push   $0xa
44866b:	52                   	push   %edx
44866c:	51                   	push   %ecx
44866d:	e8 1e de fe ff       	call   0x436490
448672:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
448676:	eb 49                	jmp    0x4486c1
448678:	6a 0a                	push   $0xa
44867a:	52                   	push   %edx
44867b:	51                   	push   %ecx
44867c:	e8 0f de fe ff       	call   0x436490
448681:	66 89 45 f6          	mov    %ax,-0xa(%ebp)
448685:	eb 3a                	jmp    0x4486c1
448687:	6a 0a                	push   $0xa
448689:	52                   	push   %edx
44868a:	51                   	push   %ecx
44868b:	e8 00 de fe ff       	call   0x436490
448690:	66 89 45 f4          	mov    %ax,-0xc(%ebp)
448694:	eb 2b                	jmp    0x4486c1
448696:	6a 0a                	push   $0xa
448698:	52                   	push   %edx
448699:	51                   	push   %ecx
44869a:	e8 f1 dd fe ff       	call   0x436490
44869f:	66 89 45 f2          	mov    %ax,-0xe(%ebp)
4486a3:	eb 1c                	jmp    0x4486c1
4486a5:	6a 0a                	push   $0xa
4486a7:	52                   	push   %edx
4486a8:	51                   	push   %ecx
4486a9:	e8 e2 dd fe ff       	call   0x436490
4486ae:	66 89 45 ee          	mov    %ax,-0x12(%ebp)
4486b2:	eb 0d                	jmp    0x4486c1
4486b4:	6a 0a                	push   $0xa
4486b6:	52                   	push   %edx
4486b7:	51                   	push   %ecx
4486b8:	e8 d3 dd fe ff       	call   0x436490
4486bd:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
4486c1:	83 c4 0c             	add    $0xc,%esp
4486c4:	8b cf                	mov    %edi,%ecx
4486c6:	43                   	inc    %ebx
4486c7:	47                   	inc    %edi
4486c8:	83 c7 01             	add    $0x1,%edi
4486cb:	0f 85 47 ff ff ff    	jne    0x448618
4486d1:	ff 75 e4             	push   -0x1c(%ebp)
4486d4:	8d 45 ec             	lea    -0x14(%ebp),%eax
4486d7:	50                   	push   %eax
4486d8:	ff 15 b8 b2 44 00    	call   *0x44b2b8
4486de:	85 c0                	test   %eax,%eax
4486e0:	75 2e                	jne    0x448710
4486e2:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4486e8:	0f b7 f0             	movzwl %ax,%esi
4486eb:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4486f1:	85 c0                	test   %eax,%eax
4486f3:	0f 4e f0             	cmovle %eax,%esi
4486f6:	b8 05 40 00 80       	mov    $0x80004005,%eax
4486fb:	85 f6                	test   %esi,%esi
4486fd:	0f 49 f0             	cmovns %eax,%esi
448700:	56                   	push   %esi
448701:	68 bf 00 00 00       	push   $0xbf
448706:	68 34 6c 46 00       	push   $0x466c34
44870b:	e8 c3 b0 fb ff       	call   0x4037d3
448710:	83 7d e8 00          	cmpl   $0x0,-0x18(%ebp)
448714:	74 08                	je     0x44871e
448716:	ff 75 e8             	push   -0x18(%ebp)
448719:	e8 d1 cd ff ff       	call   0x4454ef
44871e:	8b 4d fc             	mov    -0x4(%ebp),%ecx
448721:	8b c6                	mov    %esi,%eax
448723:	5f                   	pop    %edi
448724:	5e                   	pop    %esi
448725:	33 cd                	xor    %ebp,%ecx
448727:	5b                   	pop    %ebx
448728:	e8 09 57 fe ff       	call   0x42de36
44872d:	8b e5                	mov    %ebp,%esp
44872f:	5d                   	pop    %ebp
448730:	c2 08 00             	ret    $0x8
448733:	55                   	push   %ebp
448734:	8b ec                	mov    %esp,%ebp
448736:	81 ec c0 00 00 00    	sub    $0xc0,%esp
44873c:	a1 08 a0 46 00       	mov    0x46a008,%eax
448741:	33 c5                	xor    %ebp,%eax
448743:	89 45 fc             	mov    %eax,-0x4(%ebp)
448746:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
44874a:	56                   	push   %esi
44874b:	8b 75 0c             	mov    0xc(%ebp),%esi
44874e:	57                   	push   %edi
44874f:	8b 7d 08             	mov    0x8(%ebp),%edi
448752:	74 2d                	je     0x448781
448754:	0f b7 46 0c          	movzwl 0xc(%esi),%eax
448758:	50                   	push   %eax
448759:	0f b7 46 0a          	movzwl 0xa(%esi),%eax
44875d:	50                   	push   %eax
44875e:	0f b7 46 08          	movzwl 0x8(%esi),%eax
448762:	50                   	push   %eax
448763:	0f b7 46 06          	movzwl 0x6(%esi),%eax
448767:	50                   	push   %eax
448768:	0f b7 46 02          	movzwl 0x2(%esi),%eax
44876c:	50                   	push   %eax
44876d:	0f b7 06             	movzwl (%esi),%eax
448770:	50                   	push   %eax
448771:	68 48 6c 46 00       	push   $0x466c48
448776:	57                   	push   %edi
448777:	e8 a4 97 fb ff       	call   0x401f20
44877c:	83 c4 20             	add    $0x20,%esp
44877f:	eb 70                	jmp    0x4487f1
448781:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
448787:	50                   	push   %eax
448788:	ff 15 b4 b2 44 00    	call   *0x44b2b4
44878e:	8d 45 ec             	lea    -0x14(%ebp),%eax
448791:	50                   	push   %eax
448792:	56                   	push   %esi
448793:	8d 85 40 ff ff ff    	lea    -0xc0(%ebp),%eax
448799:	50                   	push   %eax
44879a:	ff 15 b0 b2 44 00    	call   *0x44b2b0
4487a0:	8b 85 40 ff ff ff    	mov    -0xc0(%ebp),%eax
4487a6:	6a 3c                	push   $0x3c
4487a8:	99                   	cltd
4487a9:	33 c2                	xor    %edx,%eax
4487ab:	59                   	pop    %ecx
4487ac:	2b c2                	sub    %edx,%eax
4487ae:	33 d2                	xor    %edx,%edx
4487b0:	f7 f1                	div    %ecx
4487b2:	83 bd 40 ff ff ff 00 	cmpl   $0x0,-0xc0(%ebp)
4487b9:	52                   	push   %edx
4487ba:	50                   	push   %eax
4487bb:	6a 2d                	push   $0x2d
4487bd:	58                   	pop    %eax
4487be:	6a 2b                	push   $0x2b
4487c0:	59                   	pop    %ecx
4487c1:	0f 4e c1             	cmovle %ecx,%eax
4487c4:	50                   	push   %eax
4487c5:	0f b7 45 f8          	movzwl -0x8(%ebp),%eax
4487c9:	50                   	push   %eax
4487ca:	0f b7 45 f6          	movzwl -0xa(%ebp),%eax
4487ce:	50                   	push   %eax
4487cf:	0f b7 45 f4          	movzwl -0xc(%ebp),%eax
4487d3:	50                   	push   %eax
4487d4:	0f b7 45 f2          	movzwl -0xe(%ebp),%eax
4487d8:	50                   	push   %eax
4487d9:	0f b7 45 ee          	movzwl -0x12(%ebp),%eax
4487dd:	50                   	push   %eax
4487de:	0f b7 45 ec          	movzwl -0x14(%ebp),%eax
4487e2:	50                   	push   %eax
4487e3:	68 98 6c 46 00       	push   $0x466c98
4487e8:	57                   	push   %edi
4487e9:	e8 32 97 fb ff       	call   0x401f20
4487ee:	83 c4 2c             	add    $0x2c,%esp
4487f1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4487f4:	5f                   	pop    %edi
4487f5:	33 cd                	xor    %ebp,%ecx
4487f7:	5e                   	pop    %esi
4487f8:	e8 39 56 fe ff       	call   0x42de36
4487fd:	8b e5                	mov    %ebp,%esp
4487ff:	5d                   	pop    %ebp
448800:	c2 0c 00             	ret    $0xc
448803:	55                   	push   %ebp
448804:	8b ec                	mov    %esp,%ebp
448806:	83 ec 18             	sub    $0x18,%esp
448809:	a1 08 a0 46 00       	mov    0x46a008,%eax
44880e:	33 c5                	xor    %ebp,%eax
448810:	89 45 fc             	mov    %eax,-0x4(%ebp)
448813:	53                   	push   %ebx
448814:	56                   	push   %esi
448815:	57                   	push   %edi
448816:	8b 4d 08             	mov    0x8(%ebp),%ecx
448819:	8d 7d ee             	lea    -0x12(%ebp),%edi
44881c:	33 c0                	xor    %eax,%eax
44881e:	8b 5d 0c             	mov    0xc(%ebp),%ebx
448821:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
448825:	33 f6                	xor    %esi,%esi
448827:	ab                   	stos   %eax,%es:(%edi)
448828:	56                   	push   %esi
448829:	c7 45 e8 10 00 00 00 	movl   $0x10,-0x18(%ebp)
448830:	ab                   	stos   %eax,%es:(%edi)
448831:	ab                   	stos   %eax,%es:(%edi)
448832:	66 ab                	stos   %ax,%es:(%edi)
448834:	8d 45 e8             	lea    -0x18(%ebp),%eax
448837:	50                   	push   %eax
448838:	8d 45 ec             	lea    -0x14(%ebp),%eax
44883b:	50                   	push   %eax
44883c:	68 0b 00 00 40       	push   $0x4000000b
448841:	51                   	push   %ecx
448842:	ff 15 88 a9 46 00    	call   *0x46a988
448848:	85 c0                	test   %eax,%eax
44884a:	75 23                	jne    0x44886f
44884c:	ff 15 e8 b0 44 00    	call   *0x44b0e8
448852:	0f b7 f0             	movzwl %ax,%esi
448855:	81 ce 00 00 07 80    	or     $0x80070000,%esi
44885b:	85 c0                	test   %eax,%eax
44885d:	0f 4e f0             	cmovle %eax,%esi
448860:	b8 05 40 00 80       	mov    $0x80004005,%eax
448865:	85 f6                	test   %esi,%esi
448867:	0f 49 f0             	cmovns %eax,%esi
44886a:	56                   	push   %esi
44886b:	6a 32                	push   $0x32
44886d:	eb 30                	jmp    0x44889f
44886f:	53                   	push   %ebx
448870:	8d 45 ec             	lea    -0x14(%ebp),%eax
448873:	50                   	push   %eax
448874:	ff 15 b8 b2 44 00    	call   *0x44b2b8
44887a:	85 c0                	test   %eax,%eax
44887c:	75 2b                	jne    0x4488a9
44887e:	ff 15 e8 b0 44 00    	call   *0x44b0e8
448884:	0f b7 f0             	movzwl %ax,%esi
448887:	81 ce 00 00 07 80    	or     $0x80070000,%esi
44888d:	85 c0                	test   %eax,%eax
44888f:	0f 4e f0             	cmovle %eax,%esi
448892:	b8 05 40 00 80       	mov    $0x80004005,%eax
448897:	85 f6                	test   %esi,%esi
448899:	0f 49 f0             	cmovns %eax,%esi
44889c:	56                   	push   %esi
44889d:	6a 37                	push   $0x37
44889f:	68 f8 6c 46 00       	push   $0x466cf8
4488a4:	e8 2a af fb ff       	call   0x4037d3
4488a9:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4488ac:	8b c6                	mov    %esi,%eax
4488ae:	5f                   	pop    %edi
4488af:	5e                   	pop    %esi
4488b0:	33 cd                	xor    %ebp,%ecx
4488b2:	5b                   	pop    %ebx
4488b3:	e8 7e 55 fe ff       	call   0x42de36
4488b8:	8b e5                	mov    %ebp,%esp
4488ba:	5d                   	pop    %ebp
4488bb:	c2 08 00             	ret    $0x8
4488be:	55                   	push   %ebp
4488bf:	8b ec                	mov    %esp,%ebp
4488c1:	51                   	push   %ecx
4488c2:	51                   	push   %ecx
4488c3:	56                   	push   %esi
4488c4:	33 f6                	xor    %esi,%esi
4488c6:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
4488cd:	56                   	push   %esi
4488ce:	8d 45 fc             	lea    -0x4(%ebp),%eax
4488d1:	50                   	push   %eax
4488d2:	8d 45 f8             	lea    -0x8(%ebp),%eax
4488d5:	50                   	push   %eax
4488d6:	68 05 00 00 20       	push   $0x20000005
4488db:	ff 75 08             	push   0x8(%ebp)
4488de:	ff 15 88 a9 46 00    	call   *0x46a988
4488e4:	85 c0                	test   %eax,%eax
4488e6:	75 27                	jne    0x44890f
4488e8:	ff 15 e8 b0 44 00    	call   *0x44b0e8
4488ee:	0f b7 f0             	movzwl %ax,%esi
4488f1:	81 ce 00 00 07 80    	or     $0x80070000,%esi
4488f7:	85 c0                	test   %eax,%eax
4488f9:	0f 4e f0             	cmovle %eax,%esi
4488fc:	85 f6                	test   %esi,%esi
4488fe:	79 0f                	jns    0x44890f
448900:	56                   	push   %esi
448901:	6a 18                	push   $0x18
448903:	68 f8 6c 46 00       	push   $0x466cf8
448908:	e8 c6 ae fb ff       	call   0x4037d3
44890d:	eb 0c                	jmp    0x44891b