422475:	50                   	push   %eax
422476:	8d 44 24 24          	lea    0x24(%esp),%eax
42247a:	50                   	push   %eax
42247b:	ff 75 18             	push   0x18(%ebp)
42247e:	56                   	push   %esi
42247f:	e8 17 0e 00 00       	call   0x42329b
422484:	8b 4c 24 74          	mov    0x74(%esp),%ecx
422488:	83 c4 18             	add    $0x18,%esp
42248b:	8b c3                	mov    %ebx,%eax
42248d:	5f                   	pop    %edi
42248e:	5e                   	pop    %esi
42248f:	5b                   	pop    %ebx
422490:	33 cc                	xor    %esp,%ecx
422492:	e8 69 da 06 00       	call   0x48ff00
422497:	8b e5                	mov    %ebp,%esp
422499:	5d                   	pop    %ebp
42249a:	c2 1c 00             	ret    $0x1c
42249d:	cc                   	int3
42249e:	cc                   	int3
42249f:	cc                   	int3
4224a0:	8b ff                	mov    %edi,%edi
4224a2:	55                   	push   %ebp
4224a3:	8b ec                	mov    %esp,%ebp
4224a5:	83 e4 f8             	and    $0xfffffff8,%esp
4224a8:	83 ec 54             	sub    $0x54,%esp
4224ab:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4224b0:	33 c4                	xor    %esp,%eax
4224b2:	89 44 24 50          	mov    %eax,0x50(%esp)
4224b6:	53                   	push   %ebx
4224b7:	8b 5d 08             	mov    0x8(%ebp),%ebx
4224ba:	8d 54 24 08          	lea    0x8(%esp),%edx
4224be:	56                   	push   %esi
4224bf:	8b 75 14             	mov    0x14(%ebp),%esi
4224c2:	57                   	push   %edi
4224c3:	ff 75 10             	push   0x10(%ebp)
4224c6:	8b f9                	mov    %ecx,%edi
4224c8:	ff 75 0c             	push   0xc(%ebp)
4224cb:	ff 75 20             	push   0x20(%ebp)
4224ce:	ff 75 1c             	push   0x1c(%ebp)
4224d1:	ff 76 10             	push   0x10(%esi)
4224d4:	68 08 fc 40 00       	push   $0x40fc08
4224d9:	e8 b1 0f 00 00       	call   0x42348f
4224de:	59                   	pop    %ecx
4224df:	59                   	pop    %ecx
4224e0:	50                   	push   %eax
4224e1:	8d 44 24 2c          	lea    0x2c(%esp),%eax
4224e5:	6a 40                	push   $0x40
4224e7:	50                   	push   %eax
4224e8:	ff 15 a8 80 4a 00    	call   *0x4a80a8
4224ee:	83 c4 14             	add    $0x14,%esp
4224f1:	8b d3                	mov    %ebx,%edx
4224f3:	8b cf                	mov    %edi,%ecx
4224f5:	50                   	push   %eax
4224f6:	8d 44 24 24          	lea    0x24(%esp),%eax
4224fa:	50                   	push   %eax
4224fb:	ff 75 18             	push   0x18(%ebp)
4224fe:	56                   	push   %esi
4224ff:	e8 97 0d 00 00       	call   0x42329b
422504:	8b 4c 24 74          	mov    0x74(%esp),%ecx
422508:	83 c4 18             	add    $0x18,%esp
42250b:	8b c3                	mov    %ebx,%eax
42250d:	5f                   	pop    %edi
42250e:	5e                   	pop    %esi
42250f:	5b                   	pop    %ebx
422510:	33 cc                	xor    %esp,%ecx
422512:	e8 e9 d9 06 00       	call   0x48ff00
422517:	8b e5                	mov    %ebp,%esp
422519:	5d                   	pop    %ebp
42251a:	c2 1c 00             	ret    $0x1c
42251d:	cc                   	int3
42251e:	cc                   	int3
42251f:	cc                   	int3
422520:	8b ff                	mov    %edi,%edi
422522:	55                   	push   %ebp
422523:	8b ec                	mov    %esp,%ebp
422525:	83 e4 f8             	and    $0xfffffff8,%esp
422528:	83 ec 54             	sub    $0x54,%esp
42252b:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
422530:	33 c4                	xor    %esp,%eax
422532:	89 44 24 50          	mov    %eax,0x50(%esp)
422536:	53                   	push   %ebx
422537:	8b 5d 08             	mov    0x8(%ebp),%ebx
42253a:	8d 54 24 08          	lea    0x8(%esp),%edx
42253e:	56                   	push   %esi
42253f:	8b 75 14             	mov    0x14(%ebp),%esi
422542:	57                   	push   %edi
422543:	ff 75 10             	push   0x10(%ebp)
422546:	8b f9                	mov    %ecx,%edi
422548:	ff 75 0c             	push   0xc(%ebp)
42254b:	ff 75 1c             	push   0x1c(%ebp)
42254e:	ff 76 10             	push   0x10(%esi)
422551:	68 0c fc 40 00       	push   $0x40fc0c
422556:	e8 34 0f 00 00       	call   0x42348f
42255b:	59                   	pop    %ecx
42255c:	59                   	pop    %ecx
42255d:	50                   	push   %eax
42255e:	8d 44 24 28          	lea    0x28(%esp),%eax
422562:	6a 40                	push   $0x40
422564:	50                   	push   %eax
422565:	ff 15 a8 80 4a 00    	call   *0x4a80a8
42256b:	83 c4 10             	add    $0x10,%esp
42256e:	8b d3                	mov    %ebx,%edx
422570:	8b cf                	mov    %edi,%ecx
422572:	50                   	push   %eax
422573:	8d 44 24 24          	lea    0x24(%esp),%eax
422577:	50                   	push   %eax
422578:	ff 75 18             	push   0x18(%ebp)
42257b:	56                   	push   %esi
42257c:	e8 1a 0d 00 00       	call   0x42329b
422581:	8b 4c 24 74          	mov    0x74(%esp),%ecx
422585:	83 c4 18             	add    $0x18,%esp
422588:	8b c3                	mov    %ebx,%eax
42258a:	5f                   	pop    %edi
42258b:	5e                   	pop    %esi
42258c:	5b                   	pop    %ebx
42258d:	33 cc                	xor    %esp,%ecx
42258f:	e8 6c d9 06 00       	call   0x48ff00
422594:	8b e5                	mov    %ebp,%esp
422596:	5d                   	pop    %ebp
422597:	c2 18 00             	ret    $0x18
42259a:	cc                   	int3
42259b:	cc                   	int3
42259c:	cc                   	int3
42259d:	cc                   	int3
42259e:	cc                   	int3
42259f:	cc                   	int3
4225a0:	8b ff                	mov    %edi,%edi
4225a2:	55                   	push   %ebp
4225a3:	8b ec                	mov    %esp,%ebp
4225a5:	83 e4 f8             	and    $0xfffffff8,%esp
4225a8:	83 ec 54             	sub    $0x54,%esp
4225ab:	a1 dc 38 4a 00       	mov    0x4a38dc,%eax
4225b0:	33 c4                	xor    %esp,%eax
4225b2:	89 44 24 50          	mov    %eax,0x50(%esp)
4225b6:	53                   	push   %ebx
4225b7:	8b 5d 08             	mov    0x8(%ebp),%ebx
4225ba:	8d 54 24 08          	lea    0x8(%esp),%edx
4225be:	56                   	push   %esi
4225bf:	8b 75 14             	mov    0x14(%ebp),%esi
4225c2:	57                   	push   %edi
4225c3:	ff 75 10             	push   0x10(%ebp)
4225c6:	8b f9                	mov    %ecx,%edi
4225c8:	ff 75 0c             	push   0xc(%ebp)
4225cb:	ff 75 1c             	push   0x1c(%ebp)
4225ce:	ff 76 10             	push   0x10(%esi)
4225d1:	68 10 fc 40 00       	push   $0x40fc10
4225d6:	e8 b4 0e 00 00       	call   0x42348f
4225db:	59                   	pop    %ecx
4225dc:	59                   	pop    %ecx
4225dd:	50                   	push   %eax
4225de:	8d 44 24 28          	lea    0x28(%esp),%eax
4225e2:	6a 40                	push   $0x40
4225e4:	50                   	push   %eax
4225e5:	ff 15 a8 80 4a 00    	call   *0x4a80a8
4225eb:	83 c4 10             	add    $0x10,%esp
4225ee:	8b d3                	mov    %ebx,%edx
4225f0:	8b cf                	mov    %edi,%ecx
4225f2:	50                   	push   %eax
4225f3:	8d 44 24 24          	lea    0x24(%esp),%eax
4225f7:	50                   	push   %eax
4225f8:	ff 75 18             	push   0x18(%ebp)
4225fb:	56                   	push   %esi
4225fc:	e8 9a 0c 00 00       	call   0x42329b
422601:	8b 4c 24 74          	mov    0x74(%esp),%ecx
422605:	83 c4 18             	add    $0x18,%esp
422608:	8b c3                	mov    %ebx,%eax
42260a:	5f                   	pop    %edi
42260b:	5e                   	pop    %esi
42260c:	5b                   	pop    %ebx
42260d:	33 cc                	xor    %esp,%ecx
42260f:	e8 ec d8 06 00       	call   0x48ff00
422614:	8b e5                	mov    %ebp,%esp
422616:	5d                   	pop    %ebp
422617:	c2 18 00             	ret    $0x18
42261a:	cc                   	int3
42261b:	cc                   	int3
42261c:	cc                   	int3
42261d:	cc                   	int3
42261e:	cc                   	int3
42261f:	cc                   	int3
422620:	6a 54                	push   $0x54
422622:	b8 db 1b 49 00       	mov    $0x491bdb,%eax
422627:	e8 da de 06 00       	call   0x490506
42262c:	8b f9                	mov    %ecx,%edi
42262e:	8b 5d 14             	mov    0x14(%ebp),%ebx
422631:	0f b7 55 18          	movzwl 0x18(%ebp),%edx
422635:	8b 4d 08             	mov    0x8(%ebp),%ecx
422638:	89 4d ac             	mov    %ecx,-0x54(%ebp)
42263b:	f7 43 10 00 40 00 00 	testl  $0x4000,0x10(%ebx)
422642:	89 5d a0             	mov    %ebx,-0x60(%ebp)
422645:	89 55 b0             	mov    %edx,-0x50(%ebp)
422648:	75 23                	jne    0x42266d
42264a:	0f b6 45 1c          	movzbl 0x1c(%ebp),%eax
42264e:	8b 37                	mov    (%edi),%esi
422650:	50                   	push   %eax
422651:	52                   	push   %edx
422652:	53                   	push   %ebx
422653:	ff 75 10             	push   0x10(%ebp)
422656:	ff 75 0c             	push   0xc(%ebp)
422659:	51                   	push   %ecx
42265a:	8b 4e 1c             	mov    0x1c(%esi),%ecx
42265d:	ff 15 2c 81 4a 00    	call   *0x4a812c
422663:	8b cf                	mov    %edi,%ecx
422665:	ff 56 1c             	call   *0x1c(%esi)
422668:	e9 34 01 00 00       	jmp    0x4227a1
42266d:	8b 4b 24             	mov    0x24(%ebx),%ecx
422670:	8b 09                	mov    (%ecx),%ecx
422672:	89 4d b4             	mov    %ecx,-0x4c(%ebp)
422675:	e8 2c 92 ff ff       	call   0x41b8a6
42267a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42267e:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
422681:	e8 0d 1c 00 00       	call   0x424293
422686:	8d 4d b4             	lea    -0x4c(%ebp),%ecx
422689:	8b f0                	mov    %eax,%esi
42268b:	e8 e3 95 ff ff       	call   0x41bc73
422690:	83 65 e8 00          	andl   $0x0,-0x18(%ebp)
422694:	33 c0                	xor    %eax,%eax
422696:	c7 45 ec 07 00 00 00 	movl   $0x7,-0x14(%ebp)
42269d:	66 89 45 d8          	mov    %ax,-0x28(%ebp)
4226a1:	80 7d 1c 00          	cmpb   $0x0,0x1c(%ebp)
4226a5:	8d 45 b8             	lea    -0x48(%ebp),%eax
4226a8:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
4226af:	8b 3e                	mov    (%esi),%edi
4226b1:	50                   	push   %eax
4226b2:	74 14                	je     0x4226c8
4226b4:	8b 4f 14             	mov    0x14(%edi),%ecx
4226b7:	ff 15 2c 81 4a 00    	call   *0x4a812c
4226bd:	8b ce                	mov    %esi,%ecx
4226bf:	ff 57 14             	call   *0x14(%edi)
4226c2:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
4226c6:	eb 12                	jmp    0x4226da
4226c8:	8b 4f 10             	mov    0x10(%edi),%ecx
4226cb:	ff 15 2c 81 4a 00    	call   *0x4a812c
4226d1:	8b ce                	mov    %esi,%ecx
4226d3:	ff 57 10             	call   *0x10(%edi)
4226d6:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
4226da:	6a ff                	push   $0xffffffff
4226dc:	6a 00                	push   $0x0
4226de:	8d 45 b8             	lea    -0x48(%ebp),%eax
4226e1:	50                   	push   %eax
4226e2:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
4226e5:	e8 21 a0 ff ff       	call   0x41c70b
4226ea:	6a 00                	push   $0x0
4226ec:	6a 01                	push   $0x1
4226ee:	8d 4d b8             	lea    -0x48(%ebp),%ecx
4226f1:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4226f5:	e8 ca a0 ff ff       	call   0x41c7c4
4226fa:	8b 73 18             	mov    0x18(%ebx),%esi
4226fd:	8b 7d e8             	mov    -0x18(%ebp),%edi
422700:	85 f6                	test   %esi,%esi
422702:	7e 08                	jle    0x42270c
422704:	3b f7                	cmp    %edi,%esi
422706:	76 04                	jbe    0x42270c
422708:	2b f7                	sub    %edi,%esi
42270a:	eb 02                	jmp    0x42270e
42270c:	33 f6                	xor    %esi,%esi
42270e:	8b 43 10             	mov    0x10(%ebx),%eax
422711:	25 c0 01 00 00       	and    $0x1c0,%eax
422716:	83 f8 40             	cmp    $0x40,%eax
422719:	74 27                	je     0x422742
42271b:	56                   	push   %esi
42271c:	ff 75 b0             	push   -0x50(%ebp)
42271f:	8d 55 a4             	lea    -0x5c(%ebp),%edx
422722:	ff 75 10             	push   0x10(%ebp)
422725:	ff 75 0c             	push   0xc(%ebp)
422728:	e8 3d 0b 00 00       	call   0x42326a
42272d:	8b 7d e8             	mov    -0x18(%ebp),%edi
422730:	83 c4 10             	add    $0x10,%esp
422733:	33 f6                	xor    %esi,%esi
422735:	8b 08                	mov    (%eax),%ecx
422737:	89 4d 0c             	mov    %ecx,0xc(%ebp)
42273a:	8b 50 04             	mov    0x4(%eax),%edx
42273d:	89 55 10             	mov    %edx,0x10(%ebp)
422740:	eb 06                	jmp    0x422748
422742:	8b 55 10             	mov    0x10(%ebp),%edx
422745:	8b 4d 0c             	mov    0xc(%ebp),%ecx
422748:	83 7d ec 08          	cmpl   $0x8,-0x14(%ebp)
42274c:	8b 45 d8             	mov    -0x28(%ebp),%eax
42274f:	73 03                	jae    0x422754
422751:	8d 45 d8             	lea    -0x28(%ebp),%eax
422754:	89 45 b4             	mov    %eax,-0x4c(%ebp)
422757:	89 4d a4             	mov    %ecx,-0x5c(%ebp)
42275a:	89 55 a8             	mov    %edx,-0x58(%ebp)
42275d:	85 ff                	test   %edi,%edi
42275f:	74 1f                	je     0x422780
422761:	8b d8                	mov    %eax,%ebx
422763:	0f b7 03             	movzwl (%ebx),%eax
422766:	8d 4d a4             	lea    -0x5c(%ebp),%ecx
422769:	50                   	push   %eax
42276a:	e8 e5 14 00 00       	call   0x423c54
42276f:	8d 5b 02             	lea    0x2(%ebx),%ebx
422772:	83 ef 01             	sub    $0x1,%edi
422775:	75 ec                	jne    0x422763
422777:	8b 55 a8             	mov    -0x58(%ebp),%edx
42277a:	8b 4d a4             	mov    -0x5c(%ebp),%ecx
42277d:	8b 5d a0             	mov    -0x60(%ebp),%ebx
422780:	83 63 18 00          	andl   $0x0,0x18(%ebx)
422784:	56                   	push   %esi
422785:	ff 75 b0             	push   -0x50(%ebp)
422788:	52                   	push   %edx
422789:	8b 55 ac             	mov    -0x54(%ebp),%edx
42278c:	51                   	push   %ecx
42278d:	e8 d8 0a 00 00       	call   0x42326a
422792:	83 c4 10             	add    $0x10,%esp
422795:	8d 4d d4             	lea    -0x2c(%ebp),%ecx
422798:	6a 00                	push   $0x0
42279a:	6a 01                	push   $0x1
42279c:	e8 23 a0 ff ff       	call   0x41c7c4
4227a1:	8b 45 ac             	mov    -0x54(%ebp),%eax
4227a4:	e8 0c dd 06 00       	call   0x4904b5
4227a9:	c2 18 00             	ret    $0x18
4227ac:	8b ff                	mov    %edi,%edi
4227ae:	55                   	push   %ebp
4227af:	8b ec                	mov    %esp,%ebp
4227b1:	8b 4d 08             	mov    0x8(%ebp),%ecx
4227b4:	83 ec 0c             	sub    $0xc,%esp
4227b7:	85 c9                	test   %ecx,%ecx
4227b9:	75 0f                	jne    0x4227ca
4227bb:	6b c1 0c             	imul   $0xc,%ecx,%eax
4227be:	50                   	push   %eax
4227bf:	ff 15 14 74 4a 00    	call   *0x4a7414
4227c5:	59                   	pop    %ecx
4227c6:	c9                   	leave
4227c7:	c2 04 00             	ret    $0x4
4227ca:	83 c8 ff             	or     $0xffffffff,%eax
4227cd:	33 d2                	xor    %edx,%edx
4227cf:	f7 f1                	div    %ecx
4227d1:	83 f8 0c             	cmp    $0xc,%eax
4227d4:	73 e5                	jae    0x4227bb
4227d6:	6a 00                	push   $0x0
4227d8:	8d 4d f4             	lea    -0xc(%ebp),%ecx
4227db:	e8 ec 9c ff ff       	call   0x41c4cc
4227e0:	68 4c eb 49 00       	push   $0x49eb4c
4227e5:	8d 45 f4             	lea    -0xc(%ebp),%eax
4227e8:	50                   	push   %eax
4227e9:	e8 ad dc 06 00       	call   0x49049b
4227ee:	cc                   	int3
4227ef:	6a 6c                	push   $0x6c
4227f1:	b8 10 1c 49 00       	mov    $0x491c10,%eax
4227f6:	e8 0b dd 06 00       	call   0x490506
4227fb:	89 55 94             	mov    %edx,-0x6c(%ebp)
4227fe:	8b f9                	mov    %ecx,%edi
422800:	8b 45 0c             	mov    0xc(%ebp),%eax
422803:	8b 4d 10             	mov    0x10(%ebp),%ecx
422806:	8b 5d 08             	mov    0x8(%ebp),%ebx
422809:	89 45 b0             	mov    %eax,-0x50(%ebp)
42280c:	e8 82 1a 00 00       	call   0x424293
422811:	89 45 a0             	mov    %eax,-0x60(%ebp)
422814:	8b 08                	mov    (%eax),%ecx
422816:	8d 45 b8             	lea    -0x48(%ebp),%eax