48643d:	74 1b                	je     0x48645a
48643f:	50                   	push   %eax
486440:	ff 75 fc             	push   -0x4(%ebp)
486443:	ff 75 20             	push   0x20(%ebp)
486446:	ff 75 18             	push   0x18(%ebp)
486449:	ff 75 14             	push   0x14(%ebp)
48644c:	ff 75 10             	push   0x10(%ebp)
48644f:	57                   	push   %edi
486450:	ff 75 08             	push   0x8(%ebp)
486453:	e8 91 fc ff ff       	call   0x4860e9
486458:	eb 33                	jmp    0x48648d
48645a:	ff 75 20             	push   0x20(%ebp)
48645d:	ff 75 18             	push   0x18(%ebp)
486460:	ff 75 14             	push   0x14(%ebp)
486463:	ff 75 10             	push   0x10(%ebp)
486466:	57                   	push   %edi
486467:	ff 75 08             	push   0x8(%ebp)
48646a:	e8 f6 fa ff ff       	call   0x485f65
48646f:	83 c4 20             	add    $0x20,%esp
486472:	eb 1c                	jmp    0x486490
486474:	50                   	push   %eax
486475:	ff 75 fc             	push   -0x4(%ebp)
486478:	ff 75 20             	push   0x20(%ebp)
48647b:	ff 75 18             	push   0x18(%ebp)
48647e:	ff 75 14             	push   0x14(%ebp)
486481:	ff 75 10             	push   0x10(%ebp)
486484:	57                   	push   %edi
486485:	ff 75 08             	push   0x8(%ebp)
486488:	e8 e1 f8 ff ff       	call   0x485d6e
48648d:	83 c4 28             	add    $0x28,%esp
486490:	5f                   	pop    %edi
486491:	5e                   	pop    %esi
486492:	5b                   	pop    %ebx
486493:	c9                   	leave
486494:	c3                   	ret
486495:	8b ff                	mov    %edi,%edi
486497:	55                   	push   %ebp
486498:	8b ec                	mov    %esp,%ebp
48649a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
48649d:	83 ec 0c             	sub    $0xc,%esp
4864a0:	8b 45 10             	mov    0x10(%ebp),%eax
4864a3:	53                   	push   %ebx
4864a4:	56                   	push   %esi
4864a5:	57                   	push   %edi
4864a6:	85 c9                	test   %ecx,%ecx
4864a8:	75 17                	jne    0x4864c1
4864aa:	85 c0                	test   %eax,%eax
4864ac:	74 13                	je     0x4864c1
4864ae:	8b 45 08             	mov    0x8(%ebp),%eax
4864b1:	85 c0                	test   %eax,%eax
4864b3:	0f 84 ff 00 00 00    	je     0x4865b8
4864b9:	83 20 00             	andl   $0x0,(%eax)
4864bc:	e9 f7 00 00 00       	jmp    0x4865b8
4864c1:	8b 5d 08             	mov    0x8(%ebp),%ebx
4864c4:	85 db                	test   %ebx,%ebx
4864c6:	74 03                	je     0x4864cb
4864c8:	83 0b ff             	orl    $0xffffffff,(%ebx)
4864cb:	8b 75 18             	mov    0x18(%ebp),%esi
4864ce:	33 ff                	xor    %edi,%edi
4864d0:	3d ff ff ff 7f       	cmp    $0x7fffffff,%eax
4864d5:	76 07                	jbe    0x4864de
4864d7:	6a 16                	push   $0x16
4864d9:	e9 04 01 00 00       	jmp    0x4865e2
4864de:	80 7e 14 00          	cmpb   $0x0,0x14(%esi)
4864e2:	75 0d                	jne    0x4864f1
4864e4:	8b ce                	mov    %esi,%ecx
4864e6:	e8 25 2c ff ff       	call   0x479110
4864eb:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4864ee:	8b 45 10             	mov    0x10(%ebp),%eax
4864f1:	8b 56 0c             	mov    0xc(%esi),%edx
4864f4:	8b 5a 08             	mov    0x8(%edx),%ebx
4864f7:	81 fb e9 fd 00 00    	cmp    $0xfde9,%ebx
4864fd:	89 5d f8             	mov    %ebx,-0x8(%ebp)
486500:	8b 5d 08             	mov    0x8(%ebp),%ebx
486503:	75 37                	jne    0x48653c
486505:	56                   	push   %esi
486506:	8d 45 f4             	lea    -0xc(%ebp),%eax
486509:	33 ff                	xor    %edi,%edi
48650b:	50                   	push   %eax
48650c:	0f b7 45 14          	movzwl 0x14(%ebp),%eax
486510:	50                   	push   %eax
486511:	51                   	push   %ecx
486512:	89 7d f4             	mov    %edi,-0xc(%ebp)
486515:	89 7d f8             	mov    %edi,-0x8(%ebp)
486518:	e8 ed c6 00 00       	call   0x492c0a
48651d:	83 c4 10             	add    $0x10,%esp
486520:	85 db                	test   %ebx,%ebx
486522:	74 02                	je     0x486526
486524:	89 03                	mov    %eax,(%ebx)
486526:	83 f8 04             	cmp    $0x4,%eax
486529:	0f 8e 89 00 00 00    	jle    0x4865b8
48652f:	80 7e 1c 00          	cmpb   $0x0,0x1c(%esi)
486533:	74 03                	je     0x486538
486535:	8b 7e 18             	mov    0x18(%esi),%edi
486538:	8b c7                	mov    %edi,%eax
48653a:	eb 36                	jmp    0x486572
48653c:	39 ba a8 00 00 00    	cmp    %edi,0xa8(%edx)
486542:	75 49                	jne    0x48658d
486544:	66 8b 55 14          	mov    0x14(%ebp),%dx
486548:	c7 45 fc ff 00 00 00 	movl   $0xff,-0x4(%ebp)
48654f:	66 3b 55 fc          	cmp    -0x4(%ebp),%dx
486553:	76 22                	jbe    0x486577
486555:	85 c9                	test   %ecx,%ecx
486557:	74 0f                	je     0x486568
486559:	85 c0                	test   %eax,%eax
48655b:	74 0b                	je     0x486568
48655d:	50                   	push   %eax
48655e:	57                   	push   %edi
48655f:	51                   	push   %ecx
486560:	e8 4b 56 fe ff       	call   0x46bbb0
486565:	83 c4 0c             	add    $0xc,%esp
486568:	6a 2a                	push   $0x2a
48656a:	58                   	pop    %eax
48656b:	89 46 18             	mov    %eax,0x18(%esi)
48656e:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
486572:	5f                   	pop    %edi
486573:	5e                   	pop    %esi
486574:	5b                   	pop    %ebx
486575:	c9                   	leave
486576:	c3                   	ret
486577:	85 c9                	test   %ecx,%ecx
486579:	74 06                	je     0x486581
48657b:	85 c0                	test   %eax,%eax
48657d:	74 61                	je     0x4865e0
48657f:	88 11                	mov    %dl,(%ecx)
486581:	85 db                	test   %ebx,%ebx
486583:	74 33                	je     0x4865b8
486585:	c7 03 01 00 00 00    	movl   $0x1,(%ebx)
48658b:	eb 2b                	jmp    0x4865b8
48658d:	8d 55 fc             	lea    -0x4(%ebp),%edx
486590:	89 7d fc             	mov    %edi,-0x4(%ebp)
486593:	52                   	push   %edx
486594:	57                   	push   %edi
486595:	50                   	push   %eax
486596:	51                   	push   %ecx
486597:	6a 01                	push   $0x1
486599:	8d 45 14             	lea    0x14(%ebp),%eax
48659c:	50                   	push   %eax
48659d:	57                   	push   %edi
48659e:	ff 75 f8             	push   -0x8(%ebp)
4865a1:	e8 64 87 00 00       	call   0x48ed0a
4865a6:	83 c4 20             	add    $0x20,%esp
4865a9:	85 c0                	test   %eax,%eax
4865ab:	74 0f                	je     0x4865bc
4865ad:	39 7d fc             	cmp    %edi,-0x4(%ebp)
4865b0:	75 b6                	jne    0x486568
4865b2:	85 db                	test   %ebx,%ebx
4865b4:	74 02                	je     0x4865b8
4865b6:	89 03                	mov    %eax,(%ebx)
4865b8:	33 c0                	xor    %eax,%eax
4865ba:	eb b6                	jmp    0x486572
4865bc:	ff 15 30 e1 49 00    	call   *0x49e130
4865c2:	83 f8 7a             	cmp    $0x7a,%eax
4865c5:	75 a1                	jne    0x486568
4865c7:	8b 45 0c             	mov    0xc(%ebp),%eax
4865ca:	85 c0                	test   %eax,%eax
4865cc:	74 12                	je     0x4865e0
4865ce:	39 7d 10             	cmp    %edi,0x10(%ebp)
4865d1:	76 0d                	jbe    0x4865e0
4865d3:	ff 75 10             	push   0x10(%ebp)
4865d6:	57                   	push   %edi
4865d7:	50                   	push   %eax
4865d8:	e8 d3 55 fe ff       	call   0x46bbb0
4865dd:	83 c4 0c             	add    $0xc,%esp
4865e0:	6a 22                	push   $0x22
4865e2:	5b                   	pop    %ebx
4865e3:	56                   	push   %esi
4865e4:	57                   	push   %edi
4865e5:	57                   	push   %edi
4865e6:	57                   	push   %edi
4865e7:	57                   	push   %edi
4865e8:	89 5e 18             	mov    %ebx,0x18(%esi)
4865eb:	57                   	push   %edi
4865ec:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
4865f0:	e8 af 2f ff ff       	call   0x4795a4
4865f5:	83 c4 18             	add    $0x18,%esp
4865f8:	8b c3                	mov    %ebx,%eax
4865fa:	e9 73 ff ff ff       	jmp    0x486572
4865ff:	8b ff                	mov    %edi,%edi
486601:	55                   	push   %ebp
486602:	8b ec                	mov    %esp,%ebp
486604:	51                   	push   %ecx
486605:	53                   	push   %ebx
486606:	56                   	push   %esi
486607:	57                   	push   %edi
486608:	8b 7d 0c             	mov    0xc(%ebp),%edi
48660b:	85 ff                	test   %edi,%edi
48660d:	0f 84 0a 01 00 00    	je     0x48671d
486613:	8b 5d 10             	mov    0x10(%ebp),%ebx
486616:	85 db                	test   %ebx,%ebx
486618:	0f 84 ff 00 00 00    	je     0x48671d
48661e:	80 3f 00             	cmpb   $0x0,(%edi)
486621:	75 15                	jne    0x486638
486623:	8b 45 08             	mov    0x8(%ebp),%eax
486626:	85 c0                	test   %eax,%eax
486628:	0f 84 fd 00 00 00    	je     0x48672b
48662e:	33 c9                	xor    %ecx,%ecx
486630:	66 89 08             	mov    %cx,(%eax)
486633:	e9 f3 00 00 00       	jmp    0x48672b
486638:	8b 75 14             	mov    0x14(%ebp),%esi
48663b:	80 7e 14 00          	cmpb   $0x0,0x14(%esi)
48663f:	75 07                	jne    0x486648
486641:	8b ce                	mov    %esi,%ecx
486643:	e8 c8 2a ff ff       	call   0x479110
486648:	8b 46 0c             	mov    0xc(%esi),%eax
48664b:	8b 48 08             	mov    0x8(%eax),%ecx
48664e:	89 4d fc             	mov    %ecx,-0x4(%ebp)
486651:	81 f9 e9 fd 00 00    	cmp    $0xfde9,%ecx
486657:	75 23                	jne    0x48667c
486659:	56                   	push   %esi
48665a:	68 e8 87 4c 00       	push   $0x4c87e8
48665f:	53                   	push   %ebx
486660:	57                   	push   %edi
486661:	ff 75 08             	push   0x8(%ebp)
486664:	e8 7d c6 00 00       	call   0x492ce6
486669:	83 c4 14             	add    $0x14,%esp
48666c:	85 c0                	test   %eax,%eax
48666e:	0f 89 b9 00 00 00    	jns    0x48672d
486674:	83 c8 ff             	or     $0xffffffff,%eax
486677:	e9 b1 00 00 00       	jmp    0x48672d
48667c:	33 d2                	xor    %edx,%edx
48667e:	39 90 a8 00 00 00    	cmp    %edx,0xa8(%eax)
486684:	75 13                	jne    0x486699
486686:	8b 4d 08             	mov    0x8(%ebp),%ecx
486689:	85 c9                	test   %ecx,%ecx
48668b:	0f 84 87 00 00 00    	je     0x486718
486691:	0f b6 07             	movzbl (%edi),%eax
486694:	66 89 01             	mov    %ax,(%ecx)
486697:	eb 7f                	jmp    0x486718
486699:	0f b6 0f             	movzbl (%edi),%ecx
48669c:	8b 00                	mov    (%eax),%eax
48669e:	66 39 14 48          	cmp    %dx,(%eax,%ecx,2)
4866a2:	7d 54                	jge    0x4866f8
4866a4:	8b 46 0c             	mov    0xc(%esi),%eax
4866a7:	8b 48 04             	mov    0x4(%eax),%ecx
4866aa:	83 f9 01             	cmp    $0x1,%ecx
4866ad:	7e 23                	jle    0x4866d2
4866af:	3b d9                	cmp    %ecx,%ebx
4866b1:	7c 1f                	jl     0x4866d2
4866b3:	33 c0                	xor    %eax,%eax
4866b5:	39 45 08             	cmp    %eax,0x8(%ebp)
4866b8:	0f 95 c0             	setne  %al
4866bb:	50                   	push   %eax
4866bc:	ff 75 08             	push   0x8(%ebp)
4866bf:	51                   	push   %ecx
4866c0:	57                   	push   %edi
4866c1:	6a 09                	push   $0x9
4866c3:	ff 75 fc             	push   -0x4(%ebp)
4866c6:	e8 85 85 00 00       	call   0x48ec50
4866cb:	83 c4 18             	add    $0x18,%esp
4866ce:	85 c0                	test   %eax,%eax
4866d0:	75 0e                	jne    0x4866e0
4866d2:	8b 46 0c             	mov    0xc(%esi),%eax
4866d5:	3b 58 04             	cmp    0x4(%eax),%ebx
4866d8:	72 0e                	jb     0x4866e8
4866da:	80 7f 01 00          	cmpb   $0x0,0x1(%edi)
4866de:	74 08                	je     0x4866e8
4866e0:	8b 46 0c             	mov    0xc(%esi),%eax
4866e3:	8b 40 04             	mov    0x4(%eax),%eax
4866e6:	eb 45                	jmp    0x48672d
4866e8:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
4866ec:	c7 46 18 2a 00 00 00 	movl   $0x2a,0x18(%esi)
4866f3:	e9 7c ff ff ff       	jmp    0x486674
4866f8:	33 c0                	xor    %eax,%eax
4866fa:	39 45 08             	cmp    %eax,0x8(%ebp)
4866fd:	0f 95 c0             	setne  %al
486700:	50                   	push   %eax
486701:	ff 75 08             	push   0x8(%ebp)
486704:	6a 01                	push   $0x1
486706:	57                   	push   %edi
486707:	6a 09                	push   $0x9
486709:	ff 75 fc             	push   -0x4(%ebp)
48670c:	e8 3f 85 00 00       	call   0x48ec50
486711:	83 c4 18             	add    $0x18,%esp
486714:	85 c0                	test   %eax,%eax
486716:	74 d0                	je     0x4866e8
486718:	33 c0                	xor    %eax,%eax
48671a:	40                   	inc    %eax
48671b:	eb 10                	jmp    0x48672d
48671d:	33 d2                	xor    %edx,%edx
48671f:	89 15 e8 87 4c 00    	mov    %edx,0x4c87e8
486725:	89 15 ec 87 4c 00    	mov    %edx,0x4c87ec
48672b:	33 c0                	xor    %eax,%eax
48672d:	5f                   	pop    %edi
48672e:	5e                   	pop    %esi
48672f:	5b                   	pop    %ebx
486730:	c9                   	leave
486731:	c3                   	ret
486732:	8b ff                	mov    %edi,%edi
486734:	55                   	push   %ebp
486735:	8b ec                	mov    %esp,%ebp
486737:	8b 45 08             	mov    0x8(%ebp),%eax
48673a:	85 c0                	test   %eax,%eax
48673c:	75 15                	jne    0x486753
48673e:	e8 f2 37 ff ff       	call   0x479f35
486743:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
486749:	e8 d3 2e ff ff       	call   0x479621
48674e:	83 c8 ff             	or     $0xffffffff,%eax
486751:	5d                   	pop    %ebp
486752:	c3                   	ret
486753:	8b 40 10             	mov    0x10(%eax),%eax
486756:	90                   	nop
486757:	5d                   	pop    %ebp
486758:	c3                   	ret
486759:	8b 0d 14 40 4c 00    	mov    0x4c4014,%ecx
48675f:	33 c0                	xor    %eax,%eax
486761:	83 c9 01             	or     $0x1,%ecx
486764:	39 0d f0 87 4c 00    	cmp    %ecx,0x4c87f0
48676a:	0f 94 c0             	sete   %al
48676d:	c3                   	ret
48676e:	6a 08                	push   $0x8
486770:	68 10 19 4c 00       	push   $0x4c1910
486775:	e8 c6 3f fe ff       	call   0x46a740
48677a:	8b 45 08             	mov    0x8(%ebp),%eax
48677d:	ff 30                	push   (%eax)
48677f:	e8 dd b6 ff ff       	call   0x481e61
486784:	59                   	pop    %ecx
486785:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
486789:	8b 45 0c             	mov    0xc(%ebp),%eax
48678c:	8b 00                	mov    (%eax),%eax
48678e:	8b 00                	mov    (%eax),%eax
486790:	8b 40 48             	mov    0x48(%eax),%eax
486793:	f0 ff 00             	lock incl (%eax)
486796:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
48679d:	e8 12 00 00 00       	call   0x4867b4
4867a2:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4867a5:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4867ac:	59                   	pop    %ecx
4867ad:	5f                   	pop    %edi
4867ae:	5e                   	pop    %esi
4867af:	5b                   	pop    %ebx
4867b0:	c9                   	leave
4867b1:	c2 0c 00             	ret    $0xc
4867b4:	8b 45 10             	mov    0x10(%ebp),%eax
4867b7:	ff 30                	push   (%eax)
4867b9:	e8 f3 b6 ff ff       	call   0x481eb1
4867be:	59                   	pop    %ecx
4867bf:	c3                   	ret
4867c0:	6a 08                	push   $0x8
4867c2:	68 50 19 4c 00       	push   $0x4c1950
4867c7:	e8 74 3f fe ff       	call   0x46a740
4867cc:	8b 45 08             	mov    0x8(%ebp),%eax
4867cf:	ff 30                	push   (%eax)
4867d1:	e8 8b b6 ff ff       	call   0x481e61
4867d6:	59                   	pop    %ecx
4867d7:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4867db:	8b 45 0c             	mov    0xc(%ebp),%eax
4867de:	8b 00                	mov    (%eax),%eax
4867e0:	8b 00                	mov    (%eax),%eax
4867e2:	8b 48 48             	mov    0x48(%eax),%ecx