47331b:	33 c4                	xor    %esp,%eax
47331d:	89 84 24 9c 00 00 00 	mov    %eax,0x9c(%esp)
473324:	8b 84 24 a4 00 00 00 	mov    0xa4(%esp),%eax
47332b:	53                   	push   %ebx
47332c:	55                   	push   %ebp
47332d:	8b ac 24 b4 00 00 00 	mov    0xb4(%esp),%ebp
473334:	89 44 24 20          	mov    %eax,0x20(%esp)
473338:	8b c5                	mov    %ebp,%eax
47333a:	56                   	push   %esi
47333b:	8b b4 24 b4 00 00 00 	mov    0xb4(%esp),%esi
473342:	2b c6                	sub    %esi,%eax
473344:	c1 f8 07             	sar    $0x7,%eax
473347:	99                   	cltd
473348:	2b c2                	sub    %edx,%eax
47334a:	89 74 24 18          	mov    %esi,0x18(%esp)
47334e:	57                   	push   %edi
47334f:	ff b4 24 c0 00 00 00 	push   0xc0(%esp)
473356:	8b d8                	mov    %eax,%ebx
473358:	89 6c 24 24          	mov    %ebp,0x24(%esp)
47335c:	d1 fb                	sar    $1,%ebx
47335e:	8d 45 80             	lea    -0x80(%ebp),%eax
473361:	c1 e3 07             	shl    $0x7,%ebx
473364:	50                   	push   %eax
473365:	03 de                	add    %esi,%ebx
473367:	53                   	push   %ebx
473368:	56                   	push   %esi
473369:	89 5c 24 24          	mov    %ebx,0x24(%esp)
47336d:	e8 0f a9 fb ff       	call   0x42dc81
473372:	83 c4 10             	add    $0x10,%esp
473375:	8d 8b 80 00 00 00    	lea    0x80(%ebx),%ecx
47337b:	89 4c 24 10          	mov    %ecx,0x10(%esp)
47337f:	3b f3                	cmp    %ebx,%esi
473381:	73 75                	jae    0x4733f8
473383:	8d 73 b0             	lea    -0x50(%ebx),%esi
473386:	66 66 0f 1f 84 00 00 	data16 nopw 0x0(%eax,%eax,1)
47338d:	00 00 00
473390:	83 be 94 00 00 00 10 	cmpl   $0x10,0x94(%esi)
473397:	8d be 80 00 00 00    	lea    0x80(%esi),%edi
47339d:	72 04                	jb     0x4733a3
47339f:	8b 07                	mov    (%edi),%eax
4733a1:	eb 02                	jmp    0x4733a5
4733a3:	8b c7                	mov    %edi,%eax
4733a5:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4733a9:	72 04                	jb     0x4733af
4733ab:	8b 0e                	mov    (%esi),%ecx
4733ad:	eb 02                	jmp    0x4733b1
4733af:	8b ce                	mov    %esi,%ecx
4733b1:	50                   	push   %eax
4733b2:	51                   	push   %ecx
4733b3:	e8 5b d0 fb ff       	call   0x430413
4733b8:	83 c4 08             	add    $0x8,%esp
4733bb:	85 c0                	test   %eax,%eax
4733bd:	78 31                	js     0x4733f0
4733bf:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4733c3:	72 04                	jb     0x4733c9
4733c5:	8b 06                	mov    (%esi),%eax
4733c7:	eb 02                	jmp    0x4733cb
4733c9:	8b c6                	mov    %esi,%eax
4733cb:	83 be 94 00 00 00 10 	cmpl   $0x10,0x94(%esi)
4733d2:	72 02                	jb     0x4733d6
4733d4:	8b 3f                	mov    (%edi),%edi
4733d6:	50                   	push   %eax
4733d7:	57                   	push   %edi
4733d8:	e8 36 d0 fb ff       	call   0x430413
4733dd:	83 c4 08             	add    $0x8,%esp
4733e0:	85 c0                	test   %eax,%eax
4733e2:	78 0c                	js     0x4733f0
4733e4:	83 c3 80             	add    $0xffffff80,%ebx
4733e7:	83 c6 80             	add    $0xffffff80,%esi
4733ea:	39 5c 24 1c          	cmp    %ebx,0x1c(%esp)
4733ee:	72 a0                	jb     0x473390
4733f0:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4733f4:	89 5c 24 14          	mov    %ebx,0x14(%esp)
4733f8:	3b cd                	cmp    %ebp,%ecx
4733fa:	73 6c                	jae    0x473468
4733fc:	8d 71 30             	lea    0x30(%ecx),%esi
4733ff:	90                   	nop
473400:	83 7b 44 10          	cmpl   $0x10,0x44(%ebx)
473404:	72 05                	jb     0x47340b
473406:	8b 4b 30             	mov    0x30(%ebx),%ecx
473409:	eb 03                	jmp    0x47340e
47340b:	8d 4b 30             	lea    0x30(%ebx),%ecx
47340e:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
473412:	72 04                	jb     0x473418
473414:	8b 06                	mov    (%esi),%eax
473416:	eb 02                	jmp    0x47341a
473418:	8b c6                	mov    %esi,%eax
47341a:	51                   	push   %ecx
47341b:	50                   	push   %eax
47341c:	e8 f2 cf fb ff       	call   0x430413
473421:	83 c4 08             	add    $0x8,%esp
473424:	85 c0                	test   %eax,%eax
473426:	78 3c                	js     0x473464
473428:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
47342c:	72 04                	jb     0x473432
47342e:	8b 06                	mov    (%esi),%eax
473430:	eb 02                	jmp    0x473434
473432:	8b c6                	mov    %esi,%eax
473434:	83 7b 44 10          	cmpl   $0x10,0x44(%ebx)
473438:	72 05                	jb     0x47343f
47343a:	8b 4b 30             	mov    0x30(%ebx),%ecx
47343d:	eb 03                	jmp    0x473442
47343f:	8d 4b 30             	lea    0x30(%ebx),%ecx
473442:	50                   	push   %eax
473443:	51                   	push   %ecx
473444:	e8 ca cf fb ff       	call   0x430413
473449:	8b 4c 24 18          	mov    0x18(%esp),%ecx
47344d:	83 c4 08             	add    $0x8,%esp
473450:	85 c0                	test   %eax,%eax
473452:	78 14                	js     0x473468
473454:	83 e9 80             	sub    $0xffffff80,%ecx
473457:	83 ee 80             	sub    $0xffffff80,%esi
47345a:	89 4c 24 10          	mov    %ecx,0x10(%esp)
47345e:	3b cd                	cmp    %ebp,%ecx
473460:	72 9e                	jb     0x473400
473462:	eb 04                	jmp    0x473468
473464:	8b 4c 24 10          	mov    0x10(%esp),%ecx
473468:	8b fb                	mov    %ebx,%edi
47346a:	8b e9                	mov    %ecx,%ebp
47346c:	89 7c 24 18          	mov    %edi,0x18(%esp)
473470:	89 6c 24 24          	mov    %ebp,0x24(%esp)
473474:	3b 6c 24 20          	cmp    0x20(%esp),%ebp
473478:	0f 83 ac 00 00 00    	jae    0x47352a
47347e:	8d 7b 30             	lea    0x30(%ebx),%edi
473481:	8d 59 80             	lea    -0x80(%ecx),%ebx
473484:	8d 75 30             	lea    0x30(%ebp),%esi
473487:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
47348b:	72 04                	jb     0x473491
47348d:	8b 0e                	mov    (%esi),%ecx
47348f:	eb 02                	jmp    0x473493
473491:	8b ce                	mov    %esi,%ecx
473493:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
473497:	72 04                	jb     0x47349d
473499:	8b 07                	mov    (%edi),%eax
47349b:	eb 02                	jmp    0x47349f
47349d:	8b c7                	mov    %edi,%eax
47349f:	51                   	push   %ecx
4734a0:	50                   	push   %eax
4734a1:	e8 6d cf fb ff       	call   0x430413
4734a6:	83 c4 08             	add    $0x8,%esp
4734a9:	85 c0                	test   %eax,%eax
4734ab:	78 61                	js     0x47350e
4734ad:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
4734b1:	72 04                	jb     0x4734b7
4734b3:	8b 0f                	mov    (%edi),%ecx
4734b5:	eb 02                	jmp    0x4734b9
4734b7:	8b cf                	mov    %edi,%ecx
4734b9:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
4734bd:	72 04                	jb     0x4734c3
4734bf:	8b 06                	mov    (%esi),%eax
4734c1:	eb 02                	jmp    0x4734c5
4734c3:	8b c6                	mov    %esi,%eax
4734c5:	51                   	push   %ecx
4734c6:	50                   	push   %eax
4734c7:	e8 47 cf fb ff       	call   0x430413
4734cc:	83 c4 08             	add    $0x8,%esp
4734cf:	85 c0                	test   %eax,%eax
4734d1:	78 4b                	js     0x47351e
4734d3:	8b 4c 24 10          	mov    0x10(%esp),%ecx
4734d7:	83 eb 80             	sub    $0xffffff80,%ebx
4734da:	8b c1                	mov    %ecx,%eax
4734dc:	83 e9 80             	sub    $0xffffff80,%ecx
4734df:	89 4c 24 10          	mov    %ecx,0x10(%esp)
4734e3:	3b c5                	cmp    %ebp,%eax
4734e5:	74 27                	je     0x47350e
4734e7:	53                   	push   %ebx
4734e8:	8d 4c 24 30          	lea    0x30(%esp),%ecx
4734ec:	e8 d8 25 f9 ff       	call   0x405ac9
4734f1:	55                   	push   %ebp
4734f2:	8b cb                	mov    %ebx,%ecx
4734f4:	e8 31 c8 fa ff       	call   0x41fd2a
4734f9:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4734fd:	8b cd                	mov    %ebp,%ecx
4734ff:	50                   	push   %eax
473500:	e8 25 c8 fa ff       	call   0x41fd2a
473505:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
473509:	e8 37 bd f9 ff       	call   0x40f245
47350e:	83 ed 80             	sub    $0xffffff80,%ebp
473511:	83 ee 80             	sub    $0xffffff80,%esi
473514:	3b 6c 24 20          	cmp    0x20(%esp),%ebp
473518:	0f 82 69 ff ff ff    	jb     0x473487
47351e:	8b 5c 24 14          	mov    0x14(%esp),%ebx
473522:	8b 7c 24 18          	mov    0x18(%esp),%edi
473526:	89 6c 24 24          	mov    %ebp,0x24(%esp)
47352a:	8b 44 24 1c          	mov    0x1c(%esp),%eax
47352e:	3b f8                	cmp    %eax,%edi
473530:	0f 86 bb 00 00 00    	jbe    0x4735f1
473536:	8b 6c 24 14          	mov    0x14(%esp),%ebp
47353a:	8d 77 b0             	lea    -0x50(%edi),%esi
47353d:	8d 5d 30             	lea    0x30(%ebp),%ebx
473540:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
473544:	72 04                	jb     0x47354a
473546:	8b 0b                	mov    (%ebx),%ecx
473548:	eb 02                	jmp    0x47354c
47354a:	8b cb                	mov    %ebx,%ecx
47354c:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
473550:	72 04                	jb     0x473556
473552:	8b 06                	mov    (%esi),%eax
473554:	eb 02                	jmp    0x473558
473556:	8b c6                	mov    %esi,%eax
473558:	51                   	push   %ecx
473559:	50                   	push   %eax
47355a:	e8 b4 ce fb ff       	call   0x430413
47355f:	83 c4 08             	add    $0x8,%esp
473562:	85 c0                	test   %eax,%eax
473564:	78 61                	js     0x4735c7
473566:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
47356a:	72 04                	jb     0x473570
47356c:	8b 0e                	mov    (%esi),%ecx
47356e:	eb 02                	jmp    0x473572
473570:	8b ce                	mov    %esi,%ecx
473572:	83 7b 14 10          	cmpl   $0x10,0x14(%ebx)
473576:	72 04                	jb     0x47357c
473578:	8b 03                	mov    (%ebx),%eax
47357a:	eb 02                	jmp    0x47357e
47357c:	8b c3                	mov    %ebx,%eax
47357e:	51                   	push   %ecx
47357f:	50                   	push   %eax
473580:	e8 8e ce fb ff       	call   0x430413
473585:	83 c4 08             	add    $0x8,%esp
473588:	85 c0                	test   %eax,%eax
47358a:	78 53                	js     0x4735df
47358c:	83 c5 80             	add    $0xffffff80,%ebp
47358f:	8d 46 d0             	lea    -0x30(%esi),%eax
473592:	83 c3 80             	add    $0xffffff80,%ebx
473595:	3b e8                	cmp    %eax,%ebp
473597:	74 2e                	je     0x4735c7
473599:	55                   	push   %ebp
47359a:	8d 4c 24 30          	lea    0x30(%esp),%ecx
47359e:	e8 26 25 f9 ff       	call   0x405ac9
4735a3:	8d 7e d0             	lea    -0x30(%esi),%edi
4735a6:	8b cd                	mov    %ebp,%ecx
4735a8:	57                   	push   %edi
4735a9:	e8 7c c7 fa ff       	call   0x41fd2a
4735ae:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4735b2:	8b cf                	mov    %edi,%ecx
4735b4:	50                   	push   %eax
4735b5:	e8 70 c7 fa ff       	call   0x41fd2a
4735ba:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4735be:	e8 82 bc f9 ff       	call   0x40f245
4735c3:	8b 7c 24 18          	mov    0x18(%esp),%edi
4735c7:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4735cb:	83 c7 80             	add    $0xffffff80,%edi
4735ce:	83 c6 80             	add    $0xffffff80,%esi
4735d1:	89 7c 24 18          	mov    %edi,0x18(%esp)
4735d5:	3b c7                	cmp    %edi,%eax
4735d7:	0f 82 63 ff ff ff    	jb     0x473540
4735dd:	eb 04                	jmp    0x4735e3
4735df:	8b 44 24 1c          	mov    0x1c(%esp),%eax
4735e3:	89 6c 24 14          	mov    %ebp,0x14(%esp)
4735e7:	3b f8                	cmp    %eax,%edi
4735e9:	8b 6c 24 24          	mov    0x24(%esp),%ebp
4735ed:	8b 5c 24 14          	mov    0x14(%esp),%ebx
4735f1:	0f 85 86 00 00 00    	jne    0x47367d
4735f7:	8b 74 24 10          	mov    0x10(%esp),%esi
4735fb:	3b 6c 24 20          	cmp    0x20(%esp),%ebp
4735ff:	0f 84 23 01 00 00    	je     0x473728
473605:	3b f5                	cmp    %ebp,%esi
473607:	74 27                	je     0x473630
473609:	53                   	push   %ebx
47360a:	8d 4c 24 30          	lea    0x30(%esp),%ecx
47360e:	e8 b6 24 f9 ff       	call   0x405ac9
473613:	56                   	push   %esi
473614:	8b cb                	mov    %ebx,%ecx
473616:	e8 0f c7 fa ff       	call   0x41fd2a
47361b:	8d 44 24 2c          	lea    0x2c(%esp),%eax
47361f:	8b ce                	mov    %esi,%ecx
473621:	50                   	push   %eax
473622:	e8 03 c7 fa ff       	call   0x41fd2a
473627:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
47362b:	e8 15 bc f9 ff       	call   0x40f245
473630:	83 ee 80             	sub    $0xffffff80,%esi
473633:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
473637:	89 74 24 10          	mov    %esi,0x10(%esp)
47363b:	8b fd                	mov    %ebp,%edi
47363d:	8b f3                	mov    %ebx,%esi
47363f:	83 ed 80             	sub    $0xffffff80,%ebp
473642:	83 eb 80             	sub    $0xffffff80,%ebx
473645:	89 6c 24 24          	mov    %ebp,0x24(%esp)
473649:	56                   	push   %esi
47364a:	89 5c 24 18          	mov    %ebx,0x18(%esp)
47364e:	e8 76 24 f9 ff       	call   0x405ac9
473653:	57                   	push   %edi
473654:	8b ce                	mov    %esi,%ecx
473656:	e8 cf c6 fa ff       	call   0x41fd2a
47365b:	8d 44 24 2c          	lea    0x2c(%esp),%eax
47365f:	8b cf                	mov    %edi,%ecx
473661:	50                   	push   %eax
473662:	e8 c3 c6 fa ff       	call   0x41fd2a
473667:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
47366b:	e8 d5 bb f9 ff       	call   0x40f245
473670:	8b 7c 24 18          	mov    0x18(%esp),%edi
473674:	8b 4c 24 10          	mov    0x10(%esp),%ecx
473678:	e9 f7 fd ff ff       	jmp    0x473474
47367d:	83 c7 80             	add    $0xffffff80,%edi
473680:	89 7c 24 18          	mov    %edi,0x18(%esp)
473684:	3b 6c 24 20          	cmp    0x20(%esp),%ebp
473688:	75 6b                	jne    0x4736f5
47368a:	83 c3 80             	add    $0xffffff80,%ebx
47368d:	89 5c 24 14          	mov    %ebx,0x14(%esp)
473691:	3b fb                	cmp    %ebx,%edi
473693:	74 27                	je     0x4736bc
473695:	57                   	push   %edi
473696:	8d 4c 24 30          	lea    0x30(%esp),%ecx
47369a:	e8 2a 24 f9 ff       	call   0x405ac9
47369f:	53                   	push   %ebx
4736a0:	8b cf                	mov    %edi,%ecx
4736a2:	e8 83 c6 fa ff       	call   0x41fd2a
4736a7:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4736ab:	8b cb                	mov    %ebx,%ecx
4736ad:	50                   	push   %eax
4736ae:	e8 77 c6 fa ff       	call   0x41fd2a
4736b3:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4736b7:	e8 89 bb f9 ff       	call   0x40f245
4736bc:	8b 74 24 10          	mov    0x10(%esp),%esi
4736c0:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4736c4:	83 c6 80             	add    $0xffffff80,%esi
4736c7:	53                   	push   %ebx
4736c8:	89 74 24 14          	mov    %esi,0x14(%esp)
4736cc:	e8 f8 23 f9 ff       	call   0x405ac9
4736d1:	56                   	push   %esi
4736d2:	8b cb                	mov    %ebx,%ecx
4736d4:	e8 51 c6 fa ff       	call   0x41fd2a
4736d9:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4736dd:	8b ce                	mov    %esi,%ecx
4736df:	50                   	push   %eax
4736e0:	e8 45 c6 fa ff       	call   0x41fd2a
4736e5:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
4736e9:	e8 57 bb f9 ff       	call   0x40f245
4736ee:	8b ce                	mov    %esi,%ecx
4736f0:	e9 7f fd ff ff       	jmp    0x473474
4736f5:	55                   	push   %ebp
4736f6:	8d 4c 24 30          	lea    0x30(%esp),%ecx
4736fa:	e8 ca 23 f9 ff       	call   0x405ac9
4736ff:	57                   	push   %edi
473700:	8b cd                	mov    %ebp,%ecx
473702:	e8 23 c6 fa ff       	call   0x41fd2a
473707:	8d 44 24 2c          	lea    0x2c(%esp),%eax
47370b:	8b cf                	mov    %edi,%ecx
47370d:	50                   	push   %eax
47370e:	e8 17 c6 fa ff       	call   0x41fd2a
473713:	8d 4c 24 2c          	lea    0x2c(%esp),%ecx
473717:	e8 29 bb f9 ff       	call   0x40f245
47371c:	8b 4c 24 10          	mov    0x10(%esp),%ecx
473720:	83 ed 80             	sub    $0xffffff80,%ebp
473723:	e9 48 fd ff ff       	jmp    0x473470
473728:	8b 44 24 28          	mov    0x28(%esp),%eax
47372c:	8b 8c 24 ac 00 00 00 	mov    0xac(%esp),%ecx
473733:	5f                   	pop    %edi
473734:	89 70 04             	mov    %esi,0x4(%eax)