480474:	59                   	pop    %ecx
480475:	ff b7 9c 00 00 00    	push   0x9c(%edi)
48047b:	e8 c2 02 00 00       	call   0x480742
480480:	89 b7 9c 00 00 00    	mov    %esi,0x9c(%edi)
480486:	33 c0                	xor    %eax,%eax
480488:	59                   	pop    %ecx
480489:	5f                   	pop    %edi
48048a:	5e                   	pop    %esi
48048b:	5d                   	pop    %ebp
48048c:	c3                   	ret
48048d:	8b ff                	mov    %edi,%edi
48048f:	55                   	push   %ebp
480490:	8b ec                	mov    %esp,%ebp
480492:	51                   	push   %ecx
480493:	8b 4d 08             	mov    0x8(%ebp),%ecx
480496:	33 d2                	xor    %edx,%edx
480498:	53                   	push   %ebx
480499:	56                   	push   %esi
48049a:	57                   	push   %edi
48049b:	8b c1                	mov    %ecx,%eax
48049d:	66 39 11             	cmp    %dx,(%ecx)
4804a0:	74 30                	je     0x4804d2
4804a2:	8b 7d 0c             	mov    0xc(%ebp),%edi
4804a5:	0f b7 1f             	movzwl (%edi),%ebx
4804a8:	8b f7                	mov    %edi,%esi
4804aa:	66 85 db             	test   %bx,%bx
4804ad:	74 1b                	je     0x4804ca
4804af:	0f b7 10             	movzwl (%eax),%edx
4804b2:	89 55 fc             	mov    %edx,-0x4(%ebp)
4804b5:	8b d3                	mov    %ebx,%edx
4804b7:	66 39 55 fc          	cmp    %dx,-0x4(%ebp)
4804bb:	74 15                	je     0x4804d2
4804bd:	83 c6 02             	add    $0x2,%esi
4804c0:	0f b7 16             	movzwl (%esi),%edx
4804c3:	66 85 d2             	test   %dx,%dx
4804c6:	75 ef                	jne    0x4804b7
4804c8:	33 d2                	xor    %edx,%edx
4804ca:	83 c0 02             	add    $0x2,%eax
4804cd:	66 39 10             	cmp    %dx,(%eax)
4804d0:	75 d6                	jne    0x4804a8
4804d2:	5f                   	pop    %edi
4804d3:	2b c1                	sub    %ecx,%eax
4804d5:	5e                   	pop    %esi
4804d6:	d1 f8                	sar    $1,%eax
4804d8:	5b                   	pop    %ebx
4804d9:	8b e5                	mov    %ebp,%esp
4804db:	5d                   	pop    %ebp
4804dc:	c3                   	ret
4804dd:	8b ff                	mov    %edi,%edi
4804df:	55                   	push   %ebp
4804e0:	8b ec                	mov    %esp,%ebp
4804e2:	8b 45 08             	mov    0x8(%ebp),%eax
4804e5:	33 c9                	xor    %ecx,%ecx
4804e7:	53                   	push   %ebx
4804e8:	56                   	push   %esi
4804e9:	57                   	push   %edi
4804ea:	66 39 08             	cmp    %cx,(%eax)
4804ed:	74 2c                	je     0x48051b
4804ef:	8b 75 0c             	mov    0xc(%ebp),%esi
4804f2:	0f b7 3e             	movzwl (%esi),%edi
4804f5:	8b ce                	mov    %esi,%ecx
4804f7:	66 85 ff             	test   %di,%di
4804fa:	74 15                	je     0x480511
4804fc:	0f b7 18             	movzwl (%eax),%ebx
4804ff:	8b d7                	mov    %edi,%edx
480501:	66 3b d3             	cmp    %bx,%dx
480504:	74 17                	je     0x48051d
480506:	83 c1 02             	add    $0x2,%ecx
480509:	0f b7 11             	movzwl (%ecx),%edx
48050c:	66 85 d2             	test   %dx,%dx
48050f:	75 f0                	jne    0x480501
480511:	83 c0 02             	add    $0x2,%eax
480514:	33 c9                	xor    %ecx,%ecx
480516:	66 39 08             	cmp    %cx,(%eax)
480519:	75 da                	jne    0x4804f5
48051b:	33 c0                	xor    %eax,%eax
48051d:	5f                   	pop    %edi
48051e:	5e                   	pop    %esi
48051f:	5b                   	pop    %ebx
480520:	5d                   	pop    %ebp
480521:	c3                   	ret
480522:	8b ff                	mov    %edi,%edi
480524:	55                   	push   %ebp
480525:	8b ec                	mov    %esp,%ebp
480527:	8b 45 08             	mov    0x8(%ebp),%eax
48052a:	f0 ff 40 0c          	lock incl 0xc(%eax)
48052e:	8b 48 7c             	mov    0x7c(%eax),%ecx
480531:	85 c9                	test   %ecx,%ecx
480533:	74 03                	je     0x480538
480535:	f0 ff 01             	lock incl (%ecx)
480538:	8b 88 84 00 00 00    	mov    0x84(%eax),%ecx
48053e:	85 c9                	test   %ecx,%ecx
480540:	74 03                	je     0x480545
480542:	f0 ff 01             	lock incl (%ecx)
480545:	8b 88 80 00 00 00    	mov    0x80(%eax),%ecx
48054b:	85 c9                	test   %ecx,%ecx
48054d:	74 03                	je     0x480552
48054f:	f0 ff 01             	lock incl (%ecx)
480552:	8b 88 8c 00 00 00    	mov    0x8c(%eax),%ecx
480558:	85 c9                	test   %ecx,%ecx
48055a:	74 03                	je     0x48055f
48055c:	f0 ff 01             	lock incl (%ecx)
48055f:	56                   	push   %esi
480560:	6a 06                	push   $0x6
480562:	8d 48 28             	lea    0x28(%eax),%ecx
480565:	5e                   	pop    %esi
480566:	81 79 f8 f0 82 4b 00 	cmpl   $0x4b82f0,-0x8(%ecx)
48056d:	74 09                	je     0x480578
48056f:	8b 11                	mov    (%ecx),%edx
480571:	85 d2                	test   %edx,%edx
480573:	74 03                	je     0x480578
480575:	f0 ff 02             	lock incl (%edx)
480578:	83 79 f4 00          	cmpl   $0x0,-0xc(%ecx)
48057c:	74 0a                	je     0x480588
48057e:	8b 51 fc             	mov    -0x4(%ecx),%edx
480581:	85 d2                	test   %edx,%edx
480583:	74 03                	je     0x480588
480585:	f0 ff 02             	lock incl (%edx)
480588:	83 c1 10             	add    $0x10,%ecx
48058b:	83 ee 01             	sub    $0x1,%esi
48058e:	75 d6                	jne    0x480566
480590:	ff b0 9c 00 00 00    	push   0x9c(%eax)
480596:	e8 4e 01 00 00       	call   0x4806e9
48059b:	59                   	pop    %ecx
48059c:	5e                   	pop    %esi
48059d:	5d                   	pop    %ebp
48059e:	c3                   	ret
48059f:	8b ff                	mov    %edi,%edi
4805a1:	55                   	push   %ebp
4805a2:	8b ec                	mov    %esp,%ebp
4805a4:	51                   	push   %ecx
4805a5:	53                   	push   %ebx
4805a6:	56                   	push   %esi
4805a7:	8b 75 08             	mov    0x8(%ebp),%esi
4805aa:	57                   	push   %edi
4805ab:	8b 86 88 00 00 00    	mov    0x88(%esi),%eax
4805b1:	85 c0                	test   %eax,%eax
4805b3:	74 6c                	je     0x480621
4805b5:	3d a8 81 4b 00       	cmp    $0x4b81a8,%eax
4805ba:	74 65                	je     0x480621
4805bc:	8b 46 7c             	mov    0x7c(%esi),%eax
4805bf:	85 c0                	test   %eax,%eax
4805c1:	74 5e                	je     0x480621
4805c3:	83 38 00             	cmpl   $0x0,(%eax)
4805c6:	75 59                	jne    0x480621
4805c8:	8b 86 84 00 00 00    	mov    0x84(%esi),%eax
4805ce:	85 c0                	test   %eax,%eax
4805d0:	74 18                	je     0x4805ea
4805d2:	83 38 00             	cmpl   $0x0,(%eax)
4805d5:	75 13                	jne    0x4805ea
4805d7:	50                   	push   %eax
4805d8:	e8 5c 1d ff ff       	call   0x472339
4805dd:	ff b6 88 00 00 00    	push   0x88(%esi)
4805e3:	e8 a4 f1 ff ff       	call   0x47f78c
4805e8:	59                   	pop    %ecx
4805e9:	59                   	pop    %ecx
4805ea:	8b 86 80 00 00 00    	mov    0x80(%esi),%eax
4805f0:	85 c0                	test   %eax,%eax
4805f2:	74 18                	je     0x48060c
4805f4:	83 38 00             	cmpl   $0x0,(%eax)
4805f7:	75 13                	jne    0x48060c
4805f9:	50                   	push   %eax
4805fa:	e8 3a 1d ff ff       	call   0x472339
4805ff:	ff b6 88 00 00 00    	push   0x88(%esi)
480605:	e8 76 f6 ff ff       	call   0x47fc80
48060a:	59                   	pop    %ecx
48060b:	59                   	pop    %ecx
48060c:	ff 76 7c             	push   0x7c(%esi)
48060f:	e8 25 1d ff ff       	call   0x472339
480614:	ff b6 88 00 00 00    	push   0x88(%esi)
48061a:	e8 1a 1d ff ff       	call   0x472339
48061f:	59                   	pop    %ecx
480620:	59                   	pop    %ecx
480621:	8b 86 8c 00 00 00    	mov    0x8c(%esi),%eax
480627:	85 c0                	test   %eax,%eax
480629:	74 45                	je     0x480670
48062b:	83 38 00             	cmpl   $0x0,(%eax)
48062e:	75 40                	jne    0x480670
480630:	8b 86 90 00 00 00    	mov    0x90(%esi),%eax
480636:	2d fe 00 00 00       	sub    $0xfe,%eax
48063b:	50                   	push   %eax
48063c:	e8 f8 1c ff ff       	call   0x472339
480641:	8b 86 94 00 00 00    	mov    0x94(%esi),%eax
480647:	bf 80 00 00 00       	mov    $0x80,%edi
48064c:	2b c7                	sub    %edi,%eax
48064e:	50                   	push   %eax
48064f:	e8 e5 1c ff ff       	call   0x472339
480654:	8b 86 98 00 00 00    	mov    0x98(%esi),%eax
48065a:	2b c7                	sub    %edi,%eax
48065c:	50                   	push   %eax
48065d:	e8 d7 1c ff ff       	call   0x472339
480662:	ff b6 8c 00 00 00    	push   0x8c(%esi)
480668:	e8 cc 1c ff ff       	call   0x472339
48066d:	83 c4 10             	add    $0x10,%esp
480670:	ff b6 9c 00 00 00    	push   0x9c(%esi)
480676:	e8 97 00 00 00       	call   0x480712
48067b:	59                   	pop    %ecx
48067c:	6a 06                	push   $0x6
48067e:	58                   	pop    %eax
48067f:	8d 9e a0 00 00 00    	lea    0xa0(%esi),%ebx
480685:	89 45 fc             	mov    %eax,-0x4(%ebp)
480688:	8d 7e 28             	lea    0x28(%esi),%edi
48068b:	81 7f f8 f0 82 4b 00 	cmpl   $0x4b82f0,-0x8(%edi)
480692:	74 1d                	je     0x4806b1
480694:	8b 07                	mov    (%edi),%eax
480696:	85 c0                	test   %eax,%eax
480698:	74 14                	je     0x4806ae
48069a:	83 38 00             	cmpl   $0x0,(%eax)
48069d:	75 0f                	jne    0x4806ae
48069f:	50                   	push   %eax
4806a0:	e8 94 1c ff ff       	call   0x472339
4806a5:	ff 33                	push   (%ebx)
4806a7:	e8 8d 1c ff ff       	call   0x472339
4806ac:	59                   	pop    %ecx
4806ad:	59                   	pop    %ecx
4806ae:	8b 45 fc             	mov    -0x4(%ebp),%eax
4806b1:	83 7f f4 00          	cmpl   $0x0,-0xc(%edi)
4806b5:	74 16                	je     0x4806cd
4806b7:	8b 47 fc             	mov    -0x4(%edi),%eax
4806ba:	85 c0                	test   %eax,%eax
4806bc:	74 0c                	je     0x4806ca
4806be:	83 38 00             	cmpl   $0x0,(%eax)
4806c1:	75 07                	jne    0x4806ca
4806c3:	50                   	push   %eax
4806c4:	e8 70 1c ff ff       	call   0x472339
4806c9:	59                   	pop    %ecx
4806ca:	8b 45 fc             	mov    -0x4(%ebp),%eax
4806cd:	83 c3 04             	add    $0x4,%ebx
4806d0:	83 c7 10             	add    $0x10,%edi
4806d3:	83 e8 01             	sub    $0x1,%eax
4806d6:	89 45 fc             	mov    %eax,-0x4(%ebp)
4806d9:	75 b0                	jne    0x48068b
4806db:	56                   	push   %esi
4806dc:	e8 58 1c ff ff       	call   0x472339
4806e1:	59                   	pop    %ecx
4806e2:	5f                   	pop    %edi
4806e3:	5e                   	pop    %esi
4806e4:	5b                   	pop    %ebx
4806e5:	8b e5                	mov    %ebp,%esp
4806e7:	5d                   	pop    %ebp
4806e8:	c3                   	ret
4806e9:	8b ff                	mov    %edi,%edi
4806eb:	55                   	push   %ebp
4806ec:	8b ec                	mov    %esp,%ebp
4806ee:	8b 4d 08             	mov    0x8(%ebp),%ecx
4806f1:	85 c9                	test   %ecx,%ecx
4806f3:	74 16                	je     0x48070b
4806f5:	81 f9 f8 dc 49 00    	cmp    $0x49dcf8,%ecx
4806fb:	74 0e                	je     0x48070b
4806fd:	33 c0                	xor    %eax,%eax
4806ff:	40                   	inc    %eax
480700:	f0 0f c1 81 b0 00 00 	lock xadd %eax,0xb0(%ecx)
480707:	00
480708:	40                   	inc    %eax
480709:	5d                   	pop    %ebp
48070a:	c3                   	ret
48070b:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
480710:	5d                   	pop    %ebp
480711:	c3                   	ret
480712:	8b ff                	mov    %edi,%edi
480714:	55                   	push   %ebp
480715:	8b ec                	mov    %esp,%ebp
480717:	56                   	push   %esi
480718:	8b 75 08             	mov    0x8(%ebp),%esi
48071b:	85 f6                	test   %esi,%esi
48071d:	74 20                	je     0x48073f
48071f:	81 fe f8 dc 49 00    	cmp    $0x49dcf8,%esi
480725:	74 18                	je     0x48073f
480727:	8b 86 b0 00 00 00    	mov    0xb0(%esi),%eax
48072d:	85 c0                	test   %eax,%eax
48072f:	75 0e                	jne    0x48073f
480731:	56                   	push   %esi
480732:	e8 f3 fb ff ff       	call   0x48032a
480737:	56                   	push   %esi
480738:	e8 fc 1b ff ff       	call   0x472339
48073d:	59                   	pop    %ecx
48073e:	59                   	pop    %ecx
48073f:	5e                   	pop    %esi
480740:	5d                   	pop    %ebp
480741:	c3                   	ret
480742:	8b ff                	mov    %edi,%edi
480744:	55                   	push   %ebp
480745:	8b ec                	mov    %esp,%ebp
480747:	8b 4d 08             	mov    0x8(%ebp),%ecx
48074a:	85 c9                	test   %ecx,%ecx
48074c:	74 16                	je     0x480764
48074e:	81 f9 f8 dc 49 00    	cmp    $0x49dcf8,%ecx
480754:	74 0e                	je     0x480764
480756:	83 c8 ff             	or     $0xffffffff,%eax
480759:	f0 0f c1 81 b0 00 00 	lock xadd %eax,0xb0(%ecx)
480760:	00
480761:	48                   	dec    %eax
480762:	5d                   	pop    %ebp
480763:	c3                   	ret
480764:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
480769:	5d                   	pop    %ebp
48076a:	c3                   	ret
48076b:	8b ff                	mov    %edi,%edi
48076d:	55                   	push   %ebp
48076e:	8b ec                	mov    %esp,%ebp
480770:	8b 45 08             	mov    0x8(%ebp),%eax
480773:	85 c0                	test   %eax,%eax
480775:	74 73                	je     0x4807ea
480777:	f0 ff 48 0c          	lock decl 0xc(%eax)
48077b:	8b 48 7c             	mov    0x7c(%eax),%ecx
48077e:	85 c9                	test   %ecx,%ecx
480780:	74 03                	je     0x480785
480782:	f0 ff 09             	lock decl (%ecx)
480785:	8b 88 84 00 00 00    	mov    0x84(%eax),%ecx
48078b:	85 c9                	test   %ecx,%ecx
48078d:	74 03                	je     0x480792
48078f:	f0 ff 09             	lock decl (%ecx)
480792:	8b 88 80 00 00 00    	mov    0x80(%eax),%ecx
480798:	85 c9                	test   %ecx,%ecx
48079a:	74 03                	je     0x48079f
48079c:	f0 ff 09             	lock decl (%ecx)
48079f:	8b 88 8c 00 00 00    	mov    0x8c(%eax),%ecx
4807a5:	85 c9                	test   %ecx,%ecx
4807a7:	74 03                	je     0x4807ac
4807a9:	f0 ff 09             	lock decl (%ecx)
4807ac:	56                   	push   %esi
4807ad:	6a 06                	push   $0x6
4807af:	8d 48 28             	lea    0x28(%eax),%ecx
4807b2:	5e                   	pop    %esi
4807b3:	81 79 f8 f0 82 4b 00 	cmpl   $0x4b82f0,-0x8(%ecx)
4807ba:	74 09                	je     0x4807c5
4807bc:	8b 11                	mov    (%ecx),%edx
4807be:	85 d2                	test   %edx,%edx
4807c0:	74 03                	je     0x4807c5
4807c2:	f0 ff 0a             	lock decl (%edx)
4807c5:	83 79 f4 00          	cmpl   $0x0,-0xc(%ecx)
4807c9:	74 0a                	je     0x4807d5
4807cb:	8b 51 fc             	mov    -0x4(%ecx),%edx
4807ce:	85 d2                	test   %edx,%edx
4807d0:	74 03                	je     0x4807d5
4807d2:	f0 ff 0a             	lock decl (%edx)
4807d5:	83 c1 10             	add    $0x10,%ecx
4807d8:	83 ee 01             	sub    $0x1,%esi
4807db:	75 d6                	jne    0x4807b3
4807dd:	ff b0 9c 00 00 00    	push   0x9c(%eax)
4807e3:	e8 5a ff ff ff       	call   0x480742
4807e8:	59                   	pop    %ecx
4807e9:	5e                   	pop    %esi
4807ea:	5d                   	pop    %ebp
4807eb:	c3                   	ret
4807ec:	6a 0c                	push   $0xc
4807ee:	68 c0 50 4b 00       	push   $0x4b50c0
4807f3:	e8 68 01 fc ff       	call   0x440960
4807f8:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
4807fc:	e8 ff 17 ff ff       	call   0x472000