4833bf:	89 7d cc             	mov    %edi,-0x34(%ebp)
4833c2:	e9 99 6f f8 ff       	jmp    0x40a360
4833c7:	0f b7 4f 02          	movzwl 0x2(%edi),%ecx
4833cb:	83 c7 04             	add    $0x4,%edi
4833ce:	89 4d d8             	mov    %ecx,-0x28(%ebp)
4833d1:	66 83 3f 76          	cmpw   $0x76,(%edi)
4833d5:	0f 85 cf 00 00 00    	jne    0x4834aa
4833db:	39 15 0c 33 4c 00    	cmp    %edx,0x4c330c
4833e1:	0f 84 ba 00 00 00    	je     0x4834a1
4833e7:	c7 85 5c ff ff ff 02 	movl   $0x2,-0xa4(%ebp)
4833ee:	00 00 00
4833f1:	0f b7 47 02          	movzwl 0x2(%edi),%eax
4833f5:	89 85 60 ff ff ff    	mov    %eax,-0xa0(%ebp)
4833fb:	8b 43 0c             	mov    0xc(%ebx),%eax
4833fe:	89 85 64 ff ff ff    	mov    %eax,-0x9c(%ebp)
483404:	8b 43 78             	mov    0x78(%ebx),%eax
483407:	89 85 68 ff ff ff    	mov    %eax,-0x98(%ebp)
48340d:	8b 43 7c             	mov    0x7c(%ebx),%eax
483410:	2b 43 78             	sub    0x78(%ebx),%eax
483413:	d1 f8                	sar    $1,%eax
483415:	89 85 6c ff ff ff    	mov    %eax,-0x94(%ebp)
48341b:	8b 45 08             	mov    0x8(%ebp),%eax
48341e:	2b 43 78             	sub    0x78(%ebx),%eax
483421:	d1 f8                	sar    $1,%eax
483423:	89 85 70 ff ff ff    	mov    %eax,-0x90(%ebp)
483429:	8b 45 f8             	mov    -0x8(%ebp),%eax
48342c:	2b 43 78             	sub    0x78(%ebx),%eax
48342f:	d1 f8                	sar    $1,%eax
483431:	89 85 74 ff ff ff    	mov    %eax,-0x8c(%ebp)
483437:	0f b7 47 04          	movzwl 0x4(%edi),%eax
48343b:	89 45 84             	mov    %eax,-0x7c(%ebp)
48343e:	0f b7 47 06          	movzwl 0x6(%edi),%eax
483442:	89 45 88             	mov    %eax,-0x78(%ebp)
483445:	8b 45 0c             	mov    0xc(%ebp),%eax
483448:	99                   	cltd
483449:	2b c2                	sub    %edx,%eax
48344b:	d1 f8                	sar    $1,%eax
48344d:	89 85 78 ff ff ff    	mov    %eax,-0x88(%ebp)
483453:	0f b7 83 94 00 00 00 	movzwl 0x94(%ebx),%eax
48345a:	89 85 7c ff ff ff    	mov    %eax,-0x84(%ebp)
483460:	85 c0                	test   %eax,%eax
483462:	75 0a                	jne    0x48346e
483464:	c7 85 7c ff ff ff ff 	movl   $0xffffffff,-0x84(%ebp)
48346b:	ff ff ff
48346e:	8b 83 ac 00 00 00    	mov    0xac(%ebx),%eax
483474:	89 45 80             	mov    %eax,-0x80(%ebp)
483477:	8b 83 b4 00 00 00    	mov    0xb4(%ebx),%eax
48347d:	89 45 8c             	mov    %eax,-0x74(%ebp)
483480:	8d 85 5c ff ff ff    	lea    -0xa4(%ebp),%eax
483486:	50                   	push   %eax
483487:	ff 15 0c 33 4c 00    	call   *0x4c330c
48348d:	83 c4 04             	add    $0x4,%esp
483490:	85 c0                	test   %eax,%eax
483492:	0f 8f dc 70 f8 ff    	jg     0x40a574
483498:	0f 88 29 70 f8 ff    	js     0x40a4c7
48349e:	8b 4d d8             	mov    -0x28(%ebp),%ecx
4834a1:	83 c7 08             	add    $0x8,%edi
4834a4:	83 e9 04             	sub    $0x4,%ecx
4834a7:	89 4d d8             	mov    %ecx,-0x28(%ebp)
4834aa:	0f b7 07             	movzwl (%edi),%eax
4834ad:	89 45 ec             	mov    %eax,-0x14(%ebp)
4834b0:	33 d2                	xor    %edx,%edx
4834b2:	05 73 ff ff ff       	add    $0xffffff73,%eax
4834b7:	89 55 d4             	mov    %edx,-0x2c(%ebp)
4834ba:	83 f8 04             	cmp    $0x4,%eax
4834bd:	0f 87 1c 01 00 00    	ja     0x4835df
4834c3:	ff 24 85 86 b8 48 00 	jmp    *0x48b886(,%eax,4)
4834ca:	8b 8b a8 00 00 00    	mov    0xa8(%ebx),%ecx
4834d0:	85 c9                	test   %ecx,%ecx
4834d2:	0f 84 92 01 00 00    	je     0x48366a
4834d8:	0f b7 47 02          	movzwl 0x2(%edi),%eax
4834dc:	3d ff ff 00 00       	cmp    $0xffff,%eax
4834e1:	0f 84 82 00 00 00    	je     0x483569
4834e7:	3b 41 04             	cmp    0x4(%ecx),%eax
4834ea:	74 7d                	je     0x483569
4834ec:	33 d2                	xor    %edx,%edx
4834ee:	e9 77 01 00 00       	jmp    0x48366a
4834f3:	8b 83 a8 00 00 00    	mov    0xa8(%ebx),%eax
4834f9:	85 c0                	test   %eax,%eax
4834fb:	0f 84 6c 01 00 00    	je     0x48366d
483501:	8b 43 24             	mov    0x24(%ebx),%eax
483504:	0f b7 4f 02          	movzwl 0x2(%edi),%ecx
483508:	0f af c8             	imul   %eax,%ecx
48350b:	89 45 e0             	mov    %eax,-0x20(%ebp)
48350e:	8b 43 30             	mov    0x30(%ebx),%eax
483511:	8d 04 48             	lea    (%eax,%ecx,2),%eax
483514:	0f b7 4f 04          	movzwl 0x4(%edi),%ecx
483518:	89 45 d4             	mov    %eax,-0x2c(%ebp)
48351b:	85 c9                	test   %ecx,%ecx
48351d:	0f 8e 47 01 00 00    	jle    0x48366a
483523:	8b 93 a8 00 00 00    	mov    0xa8(%ebx),%edx
483529:	8b 52 04             	mov    0x4(%edx),%edx
48352c:	89 55 f4             	mov    %edx,-0xc(%ebp)
48352f:	33 d2                	xor    %edx,%edx
483531:	0f b7 00             	movzwl (%eax),%eax
483534:	49                   	dec    %ecx
483535:	3b 45 f4             	cmp    -0xc(%ebp),%eax
483538:	74 2f                	je     0x483569
48353a:	8b 45 d4             	mov    -0x2c(%ebp),%eax
48353d:	8b 5d e0             	mov    -0x20(%ebp),%ebx
483540:	8d 04 58             	lea    (%eax,%ebx,2),%eax
483543:	8b 5d 10             	mov    0x10(%ebp),%ebx
483546:	89 45 d4             	mov    %eax,-0x2c(%ebp)
483549:	85 c9                	test   %ecx,%ecx
48354b:	7f e4                	jg     0x483531
48354d:	e9 18 01 00 00       	jmp    0x48366a
483552:	0f b7 57 02          	movzwl 0x2(%edi),%edx
483556:	03 d2                	add    %edx,%edx
483558:	89 55 c0             	mov    %edx,-0x40(%ebp)
48355b:	3b 55 0c             	cmp    0xc(%ebp),%edx
48355e:	7d 1d                	jge    0x48357d
483560:	8b 43 0c             	mov    0xc(%ebx),%eax
483563:	83 3c 90 00          	cmpl   $0x0,(%eax,%edx,4)
483567:	7c 14                	jl     0x48357d
483569:	8b 45 ec             	mov    -0x14(%ebp),%eax
48356c:	ba 01 00 00 00       	mov    $0x1,%edx
483571:	0f b6 88 60 e5 49 00 	movzbl 0x49e560(%eax),%ecx
483578:	e9 f0 00 00 00       	jmp    0x48366d
48357d:	33 d2                	xor    %edx,%edx
48357f:	e9 e9 00 00 00       	jmp    0x48366d
483584:	8b 43 24             	mov    0x24(%ebx),%eax
483587:	0f b7 4f 02          	movzwl 0x2(%edi),%ecx
48358b:	0f af c8             	imul   %eax,%ecx
48358e:	89 45 f4             	mov    %eax,-0xc(%ebp)
483591:	8b 43 30             	mov    0x30(%ebx),%eax
483594:	8d 04 48             	lea    (%eax,%ecx,2),%eax
483597:	0f b7 4f 04          	movzwl 0x4(%edi),%ecx
48359b:	89 45 d4             	mov    %eax,-0x2c(%ebp)
48359e:	85 c9                	test   %ecx,%ecx
4835a0:	0f 8e c4 00 00 00    	jle    0x48366a
4835a6:	33 d2                	xor    %edx,%edx
4835a8:	0f b7 18             	movzwl (%eax),%ebx
4835ab:	03 db                	add    %ebx,%ebx
4835ad:	49                   	dec    %ecx
4835ae:	3b 5d 0c             	cmp    0xc(%ebp),%ebx
4835b1:	89 5d c0             	mov    %ebx,-0x40(%ebp)
4835b4:	8b 5d 10             	mov    0x10(%ebp),%ebx
4835b7:	7d 11                	jge    0x4835ca
4835b9:	8b 43 0c             	mov    0xc(%ebx),%eax
4835bc:	8b 5d c0             	mov    -0x40(%ebp),%ebx
4835bf:	39 14 98             	cmp    %edx,(%eax,%ebx,4)
4835c2:	8b 5d 10             	mov    0x10(%ebp),%ebx
4835c5:	7d a2                	jge    0x483569
4835c7:	8b 45 d4             	mov    -0x2c(%ebp),%eax
4835ca:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4835cd:	8d 04 58             	lea    (%eax,%ebx,2),%eax
4835d0:	8b 5d 10             	mov    0x10(%ebp),%ebx
4835d3:	89 45 d4             	mov    %eax,-0x2c(%ebp)
4835d6:	85 c9                	test   %ecx,%ecx
4835d8:	7f ce                	jg     0x4835a8
4835da:	e9 8b 00 00 00       	jmp    0x48366a
4835df:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4835e2:	c7 83 9c 00 00 00 01 	movl   $0x1,0x9c(%ebx)
4835e9:	00 00 00
4835ec:	8b 45 18             	mov    0x18(%ebp),%eax
4835ef:	40                   	inc    %eax
4835f0:	50                   	push   %eax
4835f1:	6a 00                	push   $0x0
4835f3:	53                   	push   %ebx
4835f4:	ff 75 0c             	push   0xc(%ebp)
4835f7:	8b d7                	mov    %edi,%edx
4835f9:	ff 75 08             	push   0x8(%ebp)
4835fc:	e8 ff 6c f8 ff       	call   0x40a300
483601:	83 c4 14             	add    $0x14,%esp
483604:	83 f8 01             	cmp    $0x1,%eax
483607:	75 4f                	jne    0x483658
483609:	8b 83 90 00 00 00    	mov    0x90(%ebx),%eax
48360f:	3b 45 0c             	cmp    0xc(%ebp),%eax
483612:	7e 03                	jle    0x483617
483614:	89 45 0c             	mov    %eax,0xc(%ebp)
483617:	0f b7 47 02          	movzwl 0x2(%edi),%eax
48361b:	66 83 3c 47 77       	cmpw   $0x77,(%edi,%eax,2)
483620:	8d 3c 47             	lea    (%edi,%eax,2),%edi
483623:	ba 01 00 00 00       	mov    $0x1,%edx
483628:	75 0e                	jne    0x483638
48362a:	0f b7 47 02          	movzwl 0x2(%edi),%eax
48362e:	66 83 3c 47 77       	cmpw   $0x77,(%edi,%eax,2)
483633:	8d 3c 47             	lea    (%edi,%eax,2),%edi
483636:	74 f2                	je     0x48362a
483638:	8b 45 ec             	mov    -0x14(%ebp),%eax
48363b:	b9 02 00 00 00       	mov    $0x2,%ecx
483640:	0f b6 80 60 e5 49 00 	movzbl 0x49e560(%eax),%eax
483647:	2b c8                	sub    %eax,%ecx
483649:	8b 45 ec             	mov    -0x14(%ebp),%eax
48364c:	8d 3c 4f             	lea    (%edi,%ecx,2),%edi
48364f:	0f b6 88 60 e5 49 00 	movzbl 0x49e560(%eax),%ecx
483656:	eb 15                	jmp    0x48366d
483658:	85 c0                	test   %eax,%eax
48365a:	74 0b                	je     0x483667
48365c:	3d 20 fc ff ff       	cmp    $0xfffffc20,%eax
483661:	0f 85 60 6e f8 ff    	jne    0x40a4c7
483667:	8b 55 d4             	mov    -0x2c(%ebp),%edx
48366a:	8b 4d d8             	mov    -0x28(%ebp),%ecx
48366d:	8d 3c 4f             	lea    (%edi,%ecx,2),%edi
483670:	89 7d cc             	mov    %edi,-0x34(%ebp)
483673:	85 d2                	test   %edx,%edx
483675:	75 0b                	jne    0x483682
483677:	66 83 7f fc 77       	cmpw   $0x77,-0x4(%edi)
48367c:	0f 85 de 6c f8 ff    	jne    0x40a360
483682:	81 fe 8c 00 00 00    	cmp    $0x8c,%esi
483688:	0f 85 43 6d f8 ff    	jne    0x40a3d1
48368e:	8b 4d f8             	mov    -0x8(%ebp),%ecx
483691:	c7 83 9c 00 00 00 02 	movl   $0x2,0x9c(%ebx)
483698:	00 00 00
48369b:	8b 45 18             	mov    0x18(%ebp),%eax
48369e:	40                   	inc    %eax
48369f:	50                   	push   %eax
4836a0:	ff 75 14             	push   0x14(%ebp)
4836a3:	8b d7                	mov    %edi,%edx
4836a5:	53                   	push   %ebx
4836a6:	ff 75 0c             	push   0xc(%ebp)
4836a9:	ff 75 08             	push   0x8(%ebp)
4836ac:	e8 4f 6c f8 ff       	call   0x40a300
4836b1:	83 c4 14             	add    $0x14,%esp
4836b4:	e9 0e 6e f8 ff       	jmp    0x40a4c7
4836b9:	0f b7 57 02          	movzwl 0x2(%edi),%edx
4836bd:	8b 83 94 00 00 00    	mov    0x94(%ebx),%eax
4836c3:	25 00 00 ff ff       	and    $0xffff0000,%eax
4836c8:	0b c2                	or     %edx,%eax
4836ca:	8d 34 12             	lea    (%edx,%edx,1),%esi
4836cd:	89 83 94 00 00 00    	mov    %eax,0x94(%ebx)
4836d3:	89 75 c0             	mov    %esi,-0x40(%ebp)
4836d6:	3b 73 14             	cmp    0x14(%ebx),%esi
4836d9:	7c 16                	jl     0x4836f1
4836db:	0d 00 00 01 00       	or     $0x10000,%eax
4836e0:	83 c7 04             	add    $0x4,%edi
4836e3:	89 83 94 00 00 00    	mov    %eax,0x94(%ebx)
4836e9:	89 7d cc             	mov    %edi,-0x34(%ebp)
4836ec:	e9 6f 6c f8 ff       	jmp    0x40a360
4836f1:	8b 43 10             	mov    0x10(%ebx),%eax
4836f4:	8b 4b 0c             	mov    0xc(%ebx),%ecx
4836f7:	2b c2                	sub    %edx,%eax
4836f9:	8b 04 81             	mov    (%ecx,%eax,4),%eax
4836fc:	89 04 b1             	mov    %eax,(%ecx,%esi,4)
4836ff:	8b 4d f8             	mov    -0x8(%ebp),%ecx
483702:	2b 4b 78             	sub    0x78(%ebx),%ecx
483705:	8b 43 0c             	mov    0xc(%ebx),%eax
483708:	d1 f9                	sar    $1,%ecx
48370a:	89 4c b0 04          	mov    %ecx,0x4(%eax,%esi,4)
48370e:	39 75 0c             	cmp    %esi,0xc(%ebp)
483711:	7f 06                	jg     0x483719
483713:	8d 46 02             	lea    0x2(%esi),%eax
483716:	89 45 0c             	mov    %eax,0xc(%ebp)
483719:	83 c7 04             	add    $0x4,%edi
48371c:	89 7d cc             	mov    %edi,-0x34(%ebp)
48371f:	e9 3c 6c f8 ff       	jmp    0x40a360
483724:	83 bb 9c 00 00 00 01 	cmpl   $0x1,0x9c(%ebx)
48372b:	8b 83 b0 00 00 00    	mov    0xb0(%ebx),%eax
483731:	89 45 f4             	mov    %eax,-0xc(%ebp)
483734:	75 0d                	jne    0x483743
483736:	be 01 00 00 00       	mov    $0x1,%esi
48373b:	89 93 9c 00 00 00    	mov    %edx,0x9c(%ebx)
483741:	eb 02                	jmp    0x483745
483743:	33 f6                	xor    %esi,%esi
483745:	8b 45 18             	mov    0x18(%ebp),%eax
483748:	8b 4d f8             	mov    -0x8(%ebp),%ecx
48374b:	40                   	inc    %eax
48374c:	50                   	push   %eax
48374d:	6a 00                	push   $0x0
48374f:	53                   	push   %ebx
483750:	ff 75 0c             	push   0xc(%ebp)
483753:	8d 57 04             	lea    0x4(%edi),%edx
483756:	ff 75 08             	push   0x8(%ebp)
483759:	e8 a2 6b f8 ff       	call   0x40a300
48375e:	8b c8                	mov    %eax,%ecx
483760:	83 c4 14             	add    $0x14,%esp
483763:	83 f9 01             	cmp    $0x1,%ecx
483766:	74 56                	je     0x4837be
483768:	81 f9 19 fc ff ff    	cmp    $0xfffffc19,%ecx
48376e:	74 4e                	je     0x4837be
483770:	8b 45 f4             	mov    -0xc(%ebp),%eax
483773:	89 83 b0 00 00 00    	mov    %eax,0xb0(%ebx)
483779:	81 f9 20 fc ff ff    	cmp    $0xfffffc20,%ecx
48377f:	75 25                	jne    0x4837a6
483781:	0f b7 47 02          	movzwl 0x2(%edi),%eax
483785:	8d 04 47             	lea    (%edi,%eax,2),%eax
483788:	39 83 80 00 00 00    	cmp    %eax,0x80(%ebx)
48378e:	0f 83 00 fb ff ff    	jae    0x483294
483794:	66 83 3f 77          	cmpw   $0x77,(%edi)
483798:	74 14                	je     0x4837ae
48379a:	66 83 38 77          	cmpw   $0x77,(%eax)
48379e:	0f 85 f0 fa ff ff    	jne    0x483294
4837a4:	eb 08                	jmp    0x4837ae
4837a6:	85 c9                	test   %ecx,%ecx
4837a8:	0f 85 e6 fa ff ff    	jne    0x483294
4837ae:	0f b7 47 02          	movzwl 0x2(%edi),%eax
4837b2:	66 83 3c 47 77       	cmpw   $0x77,(%edi,%eax,2)
4837b7:	8d 3c 47             	lea    (%edi,%eax,2),%edi
4837ba:	74 89                	je     0x483745
4837bc:	eb 09                	jmp    0x4837c7
4837be:	8b 83 80 00 00 00    	mov    0x80(%ebx),%eax
4837c4:	89 45 08             	mov    %eax,0x8(%ebp)
4837c7:	66 83 3f 78          	cmpw   $0x78,(%edi)
4837cb:	0f 84 a3 6d f8 ff    	je     0x40a574
4837d1:	85 f6                	test   %esi,%esi
4837d3:	0f 85 e9 6c f8 ff    	jne    0x40a4c2
4837d9:	0f b7 47 02          	movzwl 0x2(%edi),%eax
4837dd:	66 83 3c 47 77       	cmpw   $0x77,(%edi,%eax,2)
4837e2:	8d 3c 47             	lea    (%edi,%eax,2),%edi
4837e5:	74 f2                	je     0x4837d9
4837e7:	8b 83 90 00 00 00    	mov    0x90(%ebx),%eax
4837ed:	83 c7 04             	add    $0x4,%edi
4837f0:	89 7d cc             	mov    %edi,-0x34(%ebp)
4837f3:	89 45 0c             	mov    %eax,0xc(%ebp)
4837f6:	e9 65 6b f8 ff       	jmp    0x40a360
4837fb:	83 bb 9c 00 00 00 01 	cmpl   $0x1,0x9c(%ebx)
483802:	8b 83 b0 00 00 00    	mov    0xb0(%ebx),%eax
483808:	89 45 f4             	mov    %eax,-0xc(%ebp)
48380b:	75 0d                	jne    0x48381a
48380d:	be 01 00 00 00       	mov    $0x1,%esi
483812:	89 93 9c 00 00 00    	mov    %edx,0x9c(%ebx)
483818:	eb 02                	jmp    0x48381c
48381a:	33 f6                	xor    %esi,%esi
48381c:	8b 45 18             	mov    0x18(%ebp),%eax
48381f:	8b 4d f8             	mov    -0x8(%ebp),%ecx
483822:	40                   	inc    %eax
483823:	50                   	push   %eax
483824:	6a 00                	push   $0x0
483826:	53                   	push   %ebx
483827:	ff 75 0c             	push   0xc(%ebp)
48382a:	8d 57 04             	lea    0x4(%edi),%edx
48382d:	ff 75 08             	push   0x8(%ebp)
483830:	e8 cb 6a f8 ff       	call   0x40a300
483835:	8b c8                	mov    %eax,%ecx
483837:	8b 45 f4             	mov    -0xc(%ebp),%eax
48383a:	83 c4 14             	add    $0x14,%esp
48383d:	89 83 b0 00 00 00    	mov    %eax,0xb0(%ebx)
483843:	81 f9 20 fc ff ff    	cmp    $0xfffffc20,%ecx
483849:	7f 2d                	jg     0x483878
48384b:	75 40                	jne    0x48388d
48384d:	0f b7 47 02          	movzwl 0x2(%edi),%eax
483851:	8d 04 47             	lea    (%edi,%eax,2),%eax
483854:	39 83 80 00 00 00    	cmp    %eax,0x80(%ebx)
48385a:	73 4c                	jae    0x4838a8
48385c:	66 83 3f 77          	cmpw   $0x77,(%edi)
483860:	74 06                	je     0x483868
483862:	66 83 38 77          	cmpw   $0x77,(%eax)
483866:	75 40                	jne    0x4838a8
483868:	0f b7 47 02          	movzwl 0x2(%edi),%eax
48386c:	66 83 3c 47 77       	cmpw   $0x77,(%edi,%eax,2)
483871:	8d 3c 47             	lea    (%edi,%eax,2),%edi
483874:	74 a6                	je     0x48381c
483876:	eb 3e                	jmp    0x4838b6
483878:	8b c1                	mov    %ecx,%eax
48387a:	83 e8 00             	sub    $0x0,%eax
48387d:	74 e9                	je     0x483868
48387f:	48                   	dec    %eax
483880:	0f 84 ee 6c f8 ff    	je     0x40a574
483886:	8b c1                	mov    %ecx,%eax
483888:	e9 3a 6c f8 ff       	jmp    0x40a4c7