480280:	0b d8                	or     %eax,%ebx
480282:	8d 86 a8 00 00 00    	lea    0xa8(%esi),%eax
480288:	50                   	push   %eax
480289:	68 03 10 00 00       	push   $0x1003
48028e:	57                   	push   %edi
48028f:	8d 45 ec             	lea    -0x14(%ebp),%eax
480292:	6a 01                	push   $0x1
480294:	50                   	push   %eax
480295:	e8 f9 a6 ff ff       	call   0x47a993
48029a:	0b d8                	or     %eax,%ebx
48029c:	8d 86 ac 00 00 00    	lea    0xac(%esi),%eax
4802a2:	50                   	push   %eax
4802a3:	68 09 10 00 00       	push   $0x1009
4802a8:	57                   	push   %edi
4802a9:	8d 45 ec             	lea    -0x14(%ebp),%eax
4802ac:	6a 00                	push   $0x0
4802ae:	50                   	push   %eax
4802af:	e8 df a6 ff ff       	call   0x47a993
4802b4:	83 c4 50             	add    $0x50,%esp
4802b7:	0b d8                	or     %eax,%ebx
4802b9:	8d 86 54 01 00 00    	lea    0x154(%esi),%eax
4802bf:	50                   	push   %eax
4802c0:	6a 1f                	push   $0x1f
4802c2:	57                   	push   %edi
4802c3:	6a 02                	push   $0x2
4802c5:	8d 45 ec             	lea    -0x14(%ebp),%eax
4802c8:	50                   	push   %eax
4802c9:	e8 c5 a6 ff ff       	call   0x47a993
4802ce:	0b d8                	or     %eax,%ebx
4802d0:	8d 86 58 01 00 00    	lea    0x158(%esi),%eax
4802d6:	50                   	push   %eax
4802d7:	6a 20                	push   $0x20
4802d9:	57                   	push   %edi
4802da:	8d 45 ec             	lea    -0x14(%ebp),%eax
4802dd:	6a 02                	push   $0x2
4802df:	50                   	push   %eax
4802e0:	e8 ae a6 ff ff       	call   0x47a993
4802e5:	0b d8                	or     %eax,%ebx
4802e7:	8d 86 5c 01 00 00    	lea    0x15c(%esi),%eax
4802ed:	50                   	push   %eax
4802ee:	68 03 10 00 00       	push   $0x1003
4802f3:	57                   	push   %edi
4802f4:	8d 45 ec             	lea    -0x14(%ebp),%eax
4802f7:	6a 02                	push   $0x2
4802f9:	50                   	push   %eax
4802fa:	e8 94 a6 ff ff       	call   0x47a993
4802ff:	83 c4 3c             	add    $0x3c,%esp
480302:	0b c3                	or     %ebx,%eax
480304:	f7 d8                	neg    %eax
480306:	1b c0                	sbb    %eax,%eax
480308:	5f                   	pop    %edi
480309:	5e                   	pop    %esi
48030a:	40                   	inc    %eax
48030b:	5b                   	pop    %ebx
48030c:	8b e5                	mov    %ebp,%esp
48030e:	5d                   	pop    %ebp
48030f:	c3                   	ret
480310:	33 c0                	xor    %eax,%eax
480312:	39 01                	cmp    %eax,(%ecx)
480314:	0f 95 c0             	setne  %al
480317:	c3                   	ret
480318:	8b ff                	mov    %edi,%edi
48031a:	56                   	push   %esi
48031b:	8b f1                	mov    %ecx,%esi
48031d:	ff 36                	push   (%esi)
48031f:	e8 15 20 ff ff       	call   0x472339
480324:	83 26 00             	andl   $0x0,(%esi)
480327:	59                   	pop    %ecx
480328:	5e                   	pop    %esi
480329:	c3                   	ret
48032a:	8b ff                	mov    %edi,%edi
48032c:	55                   	push   %ebp
48032d:	8b ec                	mov    %esp,%ebp
48032f:	56                   	push   %esi
480330:	8b 75 08             	mov    0x8(%ebp),%esi
480333:	85 f6                	test   %esi,%esi
480335:	0f 84 d0 00 00 00    	je     0x48040b
48033b:	6a 07                	push   $0x7
48033d:	56                   	push   %esi
48033e:	e8 b0 fc ff ff       	call   0x47fff3
480343:	8d 46 1c             	lea    0x1c(%esi),%eax
480346:	6a 07                	push   $0x7
480348:	50                   	push   %eax
480349:	e8 a5 fc ff ff       	call   0x47fff3
48034e:	8d 46 38             	lea    0x38(%esi),%eax
480351:	6a 0c                	push   $0xc
480353:	50                   	push   %eax
480354:	e8 9a fc ff ff       	call   0x47fff3
480359:	8d 46 68             	lea    0x68(%esi),%eax
48035c:	6a 0c                	push   $0xc
48035e:	50                   	push   %eax
48035f:	e8 8f fc ff ff       	call   0x47fff3
480364:	8d 86 98 00 00 00    	lea    0x98(%esi),%eax
48036a:	6a 02                	push   $0x2
48036c:	50                   	push   %eax
48036d:	e8 81 fc ff ff       	call   0x47fff3
480372:	ff b6 a0 00 00 00    	push   0xa0(%esi)
480378:	e8 bc 1f ff ff       	call   0x472339
48037d:	ff b6 a4 00 00 00    	push   0xa4(%esi)
480383:	e8 b1 1f ff ff       	call   0x472339
480388:	ff b6 a8 00 00 00    	push   0xa8(%esi)
48038e:	e8 a6 1f ff ff       	call   0x472339
480393:	8d 86 b4 00 00 00    	lea    0xb4(%esi),%eax
480399:	6a 07                	push   $0x7
48039b:	50                   	push   %eax
48039c:	e8 52 fc ff ff       	call   0x47fff3
4803a1:	8d 86 d0 00 00 00    	lea    0xd0(%esi),%eax
4803a7:	6a 07                	push   $0x7
4803a9:	50                   	push   %eax
4803aa:	e8 44 fc ff ff       	call   0x47fff3
4803af:	83 c4 44             	add    $0x44,%esp
4803b2:	8d 86 ec 00 00 00    	lea    0xec(%esi),%eax
4803b8:	6a 0c                	push   $0xc
4803ba:	50                   	push   %eax
4803bb:	e8 33 fc ff ff       	call   0x47fff3
4803c0:	8d 86 1c 01 00 00    	lea    0x11c(%esi),%eax
4803c6:	6a 0c                	push   $0xc
4803c8:	50                   	push   %eax
4803c9:	e8 25 fc ff ff       	call   0x47fff3
4803ce:	8d 86 4c 01 00 00    	lea    0x14c(%esi),%eax
4803d4:	6a 02                	push   $0x2
4803d6:	50                   	push   %eax
4803d7:	e8 17 fc ff ff       	call   0x47fff3
4803dc:	ff b6 54 01 00 00    	push   0x154(%esi)
4803e2:	e8 52 1f ff ff       	call   0x472339
4803e7:	ff b6 58 01 00 00    	push   0x158(%esi)
4803ed:	e8 47 1f ff ff       	call   0x472339
4803f2:	ff b6 5c 01 00 00    	push   0x15c(%esi)
4803f8:	e8 3c 1f ff ff       	call   0x472339
4803fd:	ff b6 60 01 00 00    	push   0x160(%esi)
480403:	e8 31 1f ff ff       	call   0x472339
480408:	83 c4 28             	add    $0x28,%esp
48040b:	5e                   	pop    %esi
48040c:	5d                   	pop    %ebp
48040d:	c3                   	ret
48040e:	8b ff                	mov    %edi,%edi
480410:	55                   	push   %ebp
480411:	8b ec                	mov    %esp,%ebp
480413:	56                   	push   %esi
480414:	57                   	push   %edi
480415:	8b 7d 08             	mov    0x8(%ebp),%edi
480418:	83 bf b4 00 00 00 00 	cmpl   $0x0,0xb4(%edi)
48041f:	75 07                	jne    0x480428
480421:	be f8 dc 49 00       	mov    $0x49dcf8,%esi
480426:	eb 4d                	jmp    0x480475
480428:	68 64 01 00 00       	push   $0x164
48042d:	6a 01                	push   $0x1
48042f:	e8 1f 1e ff ff       	call   0x472253
480434:	8b f0                	mov    %eax,%esi
480436:	59                   	pop    %ecx
480437:	59                   	pop    %ecx
480438:	85 f6                	test   %esi,%esi
48043a:	75 08                	jne    0x480444
48043c:	50                   	push   %eax
48043d:	e8 f7 1e ff ff       	call   0x472339
480442:	eb 1a                	jmp    0x48045e
480444:	57                   	push   %edi
480445:	56                   	push   %esi
480446:	e8 48 fc ff ff       	call   0x480093
48044b:	59                   	pop    %ecx
48044c:	59                   	pop    %ecx
48044d:	84 c0                	test   %al,%al
48044f:	75 12                	jne    0x480463
480451:	56                   	push   %esi
480452:	e8 d3 fe ff ff       	call   0x48032a
480457:	56                   	push   %esi
480458:	e8 dc 1e ff ff       	call   0x472339
48045d:	59                   	pop    %ecx
48045e:	33 c0                	xor    %eax,%eax
480460:	40                   	inc    %eax
480461:	eb 25                	jmp    0x480488
480463:	6a 00                	push   $0x0
480465:	c7 86 b0 00 00 00 01 	movl   $0x1,0xb0(%esi)
48046c:	00 00 00
48046f:	e8 c5 1e ff ff       	call   0x472339
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