453550:	75 03                	jne    0x453555
453552:	33 c0                	xor    %eax,%eax
453554:	c3                   	ret
453555:	b0 01                	mov    $0x1,%al
453557:	c3                   	ret
453558:	55                   	push   %ebp
453559:	8b ec                	mov    %esp,%ebp
45355b:	56                   	push   %esi
45355c:	33 f6                	xor    %esi,%esi
45355e:	f6 c2 10             	test   $0x10,%dl
453561:	74 19                	je     0x45357c
453563:	51                   	push   %ecx
453564:	50                   	push   %eax
453565:	e8 02 31 fb ff       	call   0x40666c
45356a:	8b 55 0c             	mov    0xc(%ebp),%edx
45356d:	8b 52 fc             	mov    -0x4(%edx),%edx
453570:	b1 01                	mov    $0x1,%cl
453572:	92                   	xchg   %eax,%edx
453573:	e8 24 f8 ff ff       	call   0x452d9c
453578:	8b f0                	mov    %eax,%esi
45357a:	eb 1c                	jmp    0x453598
45357c:	51                   	push   %ecx
45357d:	50                   	push   %eax
45357e:	e8 91 30 fb ff       	call   0x406614
453583:	83 f8 ff             	cmp    $0xffffffff,%eax
453586:	74 10                	je     0x453598
453588:	8b 55 0c             	mov    0xc(%ebp),%edx
45358b:	8b 52 fc             	mov    -0x4(%edx),%edx
45358e:	33 c9                	xor    %ecx,%ecx
453590:	92                   	xchg   %eax,%edx
453591:	e8 06 f8 ff ff       	call   0x452d9c
453596:	8b f0                	mov    %eax,%esi
453598:	85 f6                	test   %esi,%esi
45359a:	74 0f                	je     0x4535ab
45359c:	33 c0                	xor    %eax,%eax
45359e:	8a 45 08             	mov    0x8(%ebp),%al
4535a1:	8b 56 30             	mov    0x30(%esi),%edx
4535a4:	e8 9b 32 00 00       	call   0x456844
4535a9:	eb 02                	jmp    0x4535ad
4535ab:	33 c0                	xor    %eax,%eax
4535ad:	5e                   	pop    %esi
4535ae:	5d                   	pop    %ebp
4535af:	c2 04 00             	ret    $0x4
4535b2:	8b c0                	mov    %eax,%eax
4535b4:	55                   	push   %ebp
4535b5:	8b ec                	mov    %esp,%ebp
4535b7:	6a 00                	push   $0x0
4535b9:	6a 00                	push   $0x0
4535bb:	6a 00                	push   $0x0
4535bd:	6a 00                	push   $0x0
4535bf:	53                   	push   %ebx
4535c0:	56                   	push   %esi
4535c1:	8b f1                	mov    %ecx,%esi
4535c3:	66 89 55 fe          	mov    %dx,-0x2(%ebp)
4535c7:	33 d2                	xor    %edx,%edx
4535c9:	55                   	push   %ebp
4535ca:	68 89 36 45 00       	push   $0x453689
4535cf:	64 ff 32             	push   %fs:(%edx)
4535d2:	64 89 22             	mov    %esp,%fs:(%edx)
4535d5:	f6 45 fe 10          	testb  $0x10,-0x2(%ebp)
4535d9:	74 19                	je     0x4535f4
4535db:	56                   	push   %esi
4535dc:	50                   	push   %eax
4535dd:	e8 8a 30 fb ff       	call   0x40666c
4535e2:	8b 55 0c             	mov    0xc(%ebp),%edx
4535e5:	8b 52 fc             	mov    -0x4(%edx),%edx
4535e8:	b1 01                	mov    $0x1,%cl
4535ea:	92                   	xchg   %eax,%edx
4535eb:	e8 ac f7 ff ff       	call   0x452d9c
4535f0:	8b d8                	mov    %eax,%ebx
4535f2:	eb 2a                	jmp    0x45361e
4535f4:	8b 55 0c             	mov    0xc(%ebp),%edx
4535f7:	8b 52 fc             	mov    -0x4(%edx),%edx
4535fa:	b1 01                	mov    $0x1,%cl
4535fc:	92                   	xchg   %eax,%edx
4535fd:	e8 9a f7 ff ff       	call   0x452d9c
453602:	8b d8                	mov    %eax,%ebx
453604:	85 db                	test   %ebx,%ebx
453606:	74 16                	je     0x45361e
453608:	8b c3                	mov    %ebx,%eax
45360a:	e8 39 e3 ff ff       	call   0x451948
45360f:	3b f0                	cmp    %eax,%esi
453611:	7d 0b                	jge    0x45361e
453613:	8b d6                	mov    %esi,%edx
453615:	8b c3                	mov    %ebx,%eax
453617:	e8 3c e3 ff ff       	call   0x451958
45361c:	8b d8                	mov    %eax,%ebx
45361e:	85 db                	test   %ebx,%ebx
453620:	74 4a                	je     0x45366c
453622:	83 7b 30 00          	cmpl   $0x0,0x30(%ebx)
453626:	74 44                	je     0x45366c
453628:	8d 45 f8             	lea    -0x8(%ebp),%eax
45362b:	8a 55 08             	mov    0x8(%ebp),%dl
45362e:	e8 4d 0b fb ff       	call   0x404180
453633:	8b 45 f8             	mov    -0x8(%ebp),%eax
453636:	50                   	push   %eax
453637:	8d 45 f4             	lea    -0xc(%ebp),%eax
45363a:	8b 53 30             	mov    0x30(%ebx),%edx
45363d:	8a 12                	mov    (%edx),%dl
45363f:	e8 3c 0b fb ff       	call   0x404180
453644:	8b 45 f4             	mov    -0xc(%ebp),%eax
453647:	5a                   	pop    %edx
453648:	e8 c3 46 fb ff       	call   0x407d10
45364d:	85 c0                	test   %eax,%eax
45364f:	75 11                	jne    0x453662
453651:	8d 55 f0             	lea    -0x10(%ebp),%edx
453654:	8b 43 30             	mov    0x30(%ebx),%eax
453657:	e8 a4 0d 00 00       	call   0x454400
45365c:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
453660:	74 04                	je     0x453666
453662:	33 c0                	xor    %eax,%eax
453664:	eb 02                	jmp    0x453668
453666:	b0 01                	mov    $0x1,%al
453668:	8b d8                	mov    %eax,%ebx
45366a:	eb 02                	jmp    0x45366e
45366c:	33 db                	xor    %ebx,%ebx
45366e:	33 c0                	xor    %eax,%eax
453670:	5a                   	pop    %edx
453671:	59                   	pop    %ecx
453672:	59                   	pop    %ecx
453673:	64 89 10             	mov    %edx,%fs:(%eax)
453676:	68 90 36 45 00       	push   $0x453690
45367b:	8d 45 f0             	lea    -0x10(%ebp),%eax
45367e:	ba 03 00 00 00       	mov    $0x3,%edx
453683:	e8 34 09 fb ff       	call   0x403fbc
453688:	c3                   	ret
453689:	e9 0e 03 fb ff       	jmp    0x40399c
45368e:	eb eb                	jmp    0x45367b
453690:	8b c3                	mov    %ebx,%eax
453692:	5e                   	pop    %esi
453693:	5b                   	pop    %ebx
453694:	8b e5                	mov    %ebp,%esp
453696:	5d                   	pop    %ebp
453697:	c2 04 00             	ret    $0x4
45369a:	8b c0                	mov    %eax,%eax
45369c:	55                   	push   %ebp
45369d:	8b ec                	mov    %esp,%ebp
45369f:	83 c4 e8             	add    $0xffffffe8,%esp
4536a2:	53                   	push   %ebx
4536a3:	56                   	push   %esi
4536a4:	57                   	push   %edi
4536a5:	8b da                	mov    %edx,%ebx
4536a7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4536aa:	33 c0                	xor    %eax,%eax
4536ac:	89 43 0c             	mov    %eax,0xc(%ebx)
4536af:	c7 45 f4 ff ff ff ff 	movl   $0xffffffff,-0xc(%ebp)
4536b6:	c7 45 f0 ff ff ff ff 	movl   $0xffffffff,-0x10(%ebp)
4536bd:	c7 45 ec ff ff ff ff 	movl   $0xffffffff,-0x14(%ebp)
4536c4:	8b 43 08             	mov    0x8(%ebx),%eax
4536c7:	50                   	push   %eax
4536c8:	e8 3f 2f fb ff       	call   0x40660c
4536cd:	89 45 f8             	mov    %eax,-0x8(%ebp)
4536d0:	8b 45 f8             	mov    -0x8(%ebp),%eax
4536d3:	48                   	dec    %eax
4536d4:	85 c0                	test   %eax,%eax
4536d6:	7c 77                	jl     0x45374f
4536d8:	40                   	inc    %eax
4536d9:	89 45 e8             	mov    %eax,-0x18(%ebp)
4536dc:	33 f6                	xor    %esi,%esi
4536de:	68 00 04 00 00       	push   $0x400
4536e3:	56                   	push   %esi
4536e4:	8b 43 08             	mov    0x8(%ebx),%eax
4536e7:	50                   	push   %eax
4536e8:	e8 37 2f fb ff       	call   0x406624
4536ed:	8b f8                	mov    %eax,%edi
4536ef:	55                   	push   %ebp
4536f0:	8a 43 04             	mov    0x4(%ebx),%al
4536f3:	50                   	push   %eax
4536f4:	8b 43 08             	mov    0x8(%ebx),%eax
4536f7:	8b ce                	mov    %esi,%ecx
4536f9:	8b d7                	mov    %edi,%edx
4536fb:	e8 58 fe ff ff       	call   0x453558
453700:	59                   	pop    %ecx
453701:	84 c0                	test   %al,%al
453703:	74 44                	je     0x453749
453705:	66 f7 c7 02 00       	test   $0x2,%di
45370a:	74 0f                	je     0x45371b
45370c:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
453710:	7d 37                	jge    0x453749
453712:	c7 45 f4 fe ff ff ff 	movl   $0xfffffffe,-0xc(%ebp)
453719:	eb 2e                	jmp    0x453749
45371b:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
45371f:	7d 0c                	jge    0x45372d
453721:	89 75 f4             	mov    %esi,-0xc(%ebp)
453724:	c7 43 0c 02 00 00 00 	movl   $0x2,0xc(%ebx)
45372b:	eb 07                	jmp    0x453734
45372d:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
453734:	66 f7 c7 80 00       	test   $0x80,%di
453739:	74 05                	je     0x453740
45373b:	89 75 f0             	mov    %esi,-0x10(%ebp)
45373e:	eb 09                	jmp    0x453749
453740:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
453744:	7c 03                	jl     0x453749
453746:	89 75 ec             	mov    %esi,-0x14(%ebp)
453749:	46                   	inc    %esi
45374a:	ff 4d e8             	decl   -0x18(%ebp)
45374d:	75 8f                	jne    0x4536de
45374f:	83 7d f4 ff          	cmpl   $0xffffffff,-0xc(%ebp)
453753:	7d 0c                	jge    0x453761
453755:	c7 43 0c 00 00 01 00 	movl   $0x10000,0xc(%ebx)
45375c:	e9 ac 00 00 00       	jmp    0x45380d
453761:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
453765:	7d 79                	jge    0x4537e0
453767:	8b 45 f8             	mov    -0x8(%ebp),%eax
45376a:	48                   	dec    %eax
45376b:	85 c0                	test   %eax,%eax
45376d:	7c 71                	jl     0x4537e0
45376f:	40                   	inc    %eax
453770:	89 45 e8             	mov    %eax,-0x18(%ebp)
453773:	33 f6                	xor    %esi,%esi
453775:	68 00 04 00 00       	push   $0x400
45377a:	56                   	push   %esi
45377b:	8b 43 08             	mov    0x8(%ebx),%eax
45377e:	50                   	push   %eax
45377f:	e8 a0 2e fb ff       	call   0x406624
453784:	8b f8                	mov    %eax,%edi
453786:	55                   	push   %ebp
453787:	8a 43 04             	mov    0x4(%ebx),%al
45378a:	50                   	push   %eax
45378b:	8b 43 08             	mov    0x8(%ebx),%eax
45378e:	8b ce                	mov    %esi,%ecx
453790:	8b d7                	mov    %edi,%edx
453792:	e8 1d fe ff ff       	call   0x4535b4
453797:	59                   	pop    %ecx
453798:	84 c0                	test   %al,%al
45379a:	74 3e                	je     0x4537da
45379c:	66 f7 c7 02 00       	test   $0x2,%di
4537a1:	74 09                	je     0x4537ac
4537a3:	c7 43 0c 00 00 01 00 	movl   $0x10000,0xc(%ebx)
4537aa:	eb 61                	jmp    0x45380d
4537ac:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
4537b0:	7d 0c                	jge    0x4537be
4537b2:	89 75 f4             	mov    %esi,-0xc(%ebp)
4537b5:	c7 43 0c 02 00 00 00 	movl   $0x2,0xc(%ebx)
4537bc:	eb 07                	jmp    0x4537c5
4537be:	c7 43 0c 03 00 00 00 	movl   $0x3,0xc(%ebx)
4537c5:	66 f7 c7 80 00       	test   $0x80,%di
4537ca:	74 05                	je     0x4537d1
4537cc:	89 75 f0             	mov    %esi,-0x10(%ebp)
4537cf:	eb 09                	jmp    0x4537da
4537d1:	83 7d f0 00          	cmpl   $0x0,-0x10(%ebp)
4537d5:	7c 03                	jl     0x4537da
4537d7:	89 75 ec             	mov    %esi,-0x14(%ebp)
4537da:	46                   	inc    %esi
4537db:	ff 4d e8             	decl   -0x18(%ebp)
4537de:	75 95                	jne    0x453775
4537e0:	8b 43 0c             	mov    0xc(%ebx),%eax
4537e3:	83 f8 02             	cmp    $0x2,%eax
4537e6:	75 0b                	jne    0x4537f3
4537e8:	c1 e0 10             	shl    $0x10,%eax
4537eb:	0b 45 f4             	or     -0xc(%ebp),%eax
4537ee:	89 43 0c             	mov    %eax,0xc(%ebx)
4537f1:	eb 1a                	jmp    0x45380d
4537f3:	83 f8 03             	cmp    $0x3,%eax
4537f6:	75 15                	jne    0x45380d
4537f8:	83 7d ec 00          	cmpl   $0x0,-0x14(%ebp)
4537fc:	7d 06                	jge    0x453804
4537fe:	8b 55 f4             	mov    -0xc(%ebp),%edx
453801:	89 55 ec             	mov    %edx,-0x14(%ebp)
453804:	c1 e0 10             	shl    $0x10,%eax
453807:	0b 45 ec             	or     -0x14(%ebp),%eax
45380a:	89 43 0c             	mov    %eax,0xc(%ebx)
45380d:	5f                   	pop    %edi
45380e:	5e                   	pop    %esi
45380f:	5b                   	pop    %ebx
453810:	8b e5                	mov    %ebp,%esp
453812:	5d                   	pop    %ebp
453813:	c3                   	ret
453814:	55                   	push   %ebp
453815:	8b ec                	mov    %esp,%ebp
453817:	51                   	push   %ecx
453818:	53                   	push   %ebx
453819:	56                   	push   %esi
45381a:	57                   	push   %edi
45381b:	8b f1                	mov    %ecx,%esi
45381d:	8b fa                	mov    %edx,%edi
45381f:	8b d8                	mov    %eax,%ebx
453821:	8b c3                	mov    %ebx,%eax
453823:	e8 f8 f6 ff ff       	call   0x452f20
453828:	84 c0                	test   %al,%al
45382a:	74 74                	je     0x4538a0
45382c:	33 c0                	xor    %eax,%eax
45382e:	89 45 fc             	mov    %eax,-0x4(%ebp)
453831:	8b 45 08             	mov    0x8(%ebp),%eax
453834:	50                   	push   %eax
453835:	56                   	push   %esi
453836:	57                   	push   %edi
453837:	e8 e8 2d fb ff       	call   0x406624
45383c:	a8 10                	test   $0x10,%al
45383e:	74 19                	je     0x453859
453840:	56                   	push   %esi
453841:	57                   	push   %edi
453842:	e8 25 2e fb ff       	call   0x40666c
453847:	8b f8                	mov    %eax,%edi
453849:	b1 01                	mov    $0x1,%cl
45384b:	8b d7                	mov    %edi,%edx
45384d:	8b c3                	mov    %ebx,%eax
45384f:	e8 48 f5 ff ff       	call   0x452d9c
453854:	89 45 fc             	mov    %eax,-0x4(%ebp)
453857:	eb 1c                	jmp    0x453875
453859:	56                   	push   %esi
45385a:	57                   	push   %edi
45385b:	e8 b4 2d fb ff       	call   0x406614
453860:	8b f0                	mov    %eax,%esi
453862:	83 fe ff             	cmp    $0xffffffff,%esi
453865:	74 0e                	je     0x453875
453867:	33 c9                	xor    %ecx,%ecx
453869:	8b d6                	mov    %esi,%edx
45386b:	8b c3                	mov    %ebx,%eax
45386d:	e8 2a f5 ff ff       	call   0x452d9c
453872:	89 45 fc             	mov    %eax,-0x4(%ebp)
453875:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
453879:	74 21                	je     0x45389c
45387b:	8b 45 10             	mov    0x10(%ebp),%eax
45387e:	c6 00 00             	movb   $0x0,(%eax)
453881:	8b 45 fc             	mov    -0x4(%ebp),%eax
453884:	8b 50 30             	mov    0x30(%eax),%edx
453887:	8b 4d 0c             	mov    0xc(%ebp),%ecx
45388a:	8b 45 10             	mov    0x10(%ebp),%eax
45388d:	e8 36 4e fb ff       	call   0x4086c8
453892:	8b 45 10             	mov    0x10(%ebp),%eax
453895:	e8 72 4d fb ff       	call   0x40860c
45389a:	eb 17                	jmp    0x4538b3
45389c:	33 c0                	xor    %eax,%eax
45389e:	eb 13                	jmp    0x4538b3
4538a0:	8b 45 08             	mov    0x8(%ebp),%eax
4538a3:	50                   	push   %eax
4538a4:	8b 45 0c             	mov    0xc(%ebp),%eax
4538a7:	50                   	push   %eax
4538a8:	8b 45 10             	mov    0x10(%ebp),%eax
4538ab:	50                   	push   %eax
4538ac:	56                   	push   %esi
4538ad:	57                   	push   %edi
4538ae:	e8 79 2d fb ff       	call   0x40662c
4538b3:	5f                   	pop    %edi
4538b4:	5e                   	pop    %esi
4538b5:	5b                   	pop    %ebx
4538b6:	59                   	pop    %ecx
4538b7:	5d                   	pop    %ebp
4538b8:	c2 0c 00             	ret    $0xc
4538bb:	90                   	nop
4538bc:	3a 50 30             	cmp    0x30(%eax),%dl
4538bf:	74 0c                	je     0x4538cd
4538c1:	88 50 30             	mov    %dl,0x30(%eax)
4538c4:	c6 40 41 00          	movb   $0x0,0x41(%eax)
4538c8:	e8 ef f8 ff ff       	call   0x4531bc
4538cd:	c3                   	ret
4538ce:	8b c0                	mov    %eax,%eax
4538d0:	3a 50 41             	cmp    0x41(%eax),%dl
4538d3:	74 08                	je     0x4538dd