425385:	53                   	push   %ebx
425386:	8d 46 30             	lea    0x30(%esi),%eax
425389:	50                   	push   %eax
42538a:	53                   	push   %ebx
42538b:	68 a4 53 40 00       	push   $0x4053a4
425390:	57                   	push   %edi
425391:	ff 75 fc             	push   -0x4(%ebp)
425394:	ff 15 1c c0 42 00    	call   *0x42c01c
42539a:	85 c0                	test   %eax,%eax
42539c:	0f 85 e4 00 00 00    	jne    0x425486
4253a2:	6a 4e                	push   $0x4e
4253a4:	68 c0 53 40 00       	push   $0x4053c0
4253a9:	40                   	inc    %eax
4253aa:	50                   	push   %eax
4253ab:	68 ac 3d 40 00       	push   $0x403dac
4253b0:	57                   	push   %edi
4253b1:	ff 75 fc             	push   -0x4(%ebp)
4253b4:	ff 15 1c c0 42 00    	call   *0x42c01c
4253ba:	85 c0                	test   %eax,%eax
4253bc:	0f 85 c4 00 00 00    	jne    0x425486
4253c2:	53                   	push   %ebx
4253c3:	8d 46 40             	lea    0x40(%esi),%eax
4253c6:	50                   	push   %eax
4253c7:	53                   	push   %ebx
4253c8:	68 10 54 40 00       	push   $0x405410
4253cd:	57                   	push   %edi
4253ce:	ff 75 fc             	push   -0x4(%ebp)
4253d1:	ff 15 1c c0 42 00    	call   *0x42c01c
4253d7:	85 c0                	test   %eax,%eax
4253d9:	0f 85 a7 00 00 00    	jne    0x425486
4253df:	53                   	push   %ebx
4253e0:	8d 46 34             	lea    0x34(%esi),%eax
4253e3:	50                   	push   %eax
4253e4:	53                   	push   %ebx
4253e5:	68 28 54 40 00       	push   $0x405428
4253ea:	57                   	push   %edi
4253eb:	ff 75 fc             	push   -0x4(%ebp)
4253ee:	ff 15 1c c0 42 00    	call   *0x42c01c
4253f4:	85 c0                	test   %eax,%eax
4253f6:	0f 85 8a 00 00 00    	jne    0x425486
4253fc:	39 7e 48             	cmp    %edi,0x48(%esi)
4253ff:	7d 32                	jge    0x425433
425401:	0f b7 46 48          	movzwl 0x48(%esi),%eax
425405:	8d 4e 04             	lea    0x4(%esi),%ecx
425408:	03 c8                	add    %eax,%ecx
42540a:	8b d7                	mov    %edi,%edx
42540c:	0f b7 74 30 02       	movzwl 0x2(%eax,%esi,1),%esi
425411:	85 f6                	test   %esi,%esi
425413:	74 17                	je     0x42542c
425415:	33 db                	xor    %ebx,%ebx
425417:	43                   	inc    %ebx
425418:	66 39 59 02          	cmp    %bx,0x2(%ecx)
42541c:	74 0b                	je     0x425429
42541e:	0f b7 01             	movzwl (%ecx),%eax
425421:	42                   	inc    %edx
425422:	8d 0c 81             	lea    (%ecx,%eax,4),%ecx
425425:	3b d6                	cmp    %esi,%edx
425427:	72 ef                	jb     0x425418
425429:	6a 04                	push   $0x4
42542b:	5b                   	pop    %ebx
42542c:	8d 41 04             	lea    0x4(%ecx),%eax
42542f:	3b d6                	cmp    %esi,%edx
425431:	72 02                	jb     0x425435
425433:	8b c7                	mov    %edi,%eax
425435:	6a 20                	push   $0x20
425437:	50                   	push   %eax
425438:	6a 03                	push   $0x3
42543a:	68 48 54 40 00       	push   $0x405448
42543f:	57                   	push   %edi
425440:	ff 75 fc             	push   -0x4(%ebp)
425443:	ff 15 1c c0 42 00    	call   *0x42c01c
425449:	85 c0                	test   %eax,%eax
42544b:	75 39                	jne    0x425486
42544d:	53                   	push   %ebx
42544e:	8d 45 f8             	lea    -0x8(%ebp),%eax
425451:	89 7d f8             	mov    %edi,-0x8(%ebp)
425454:	50                   	push   %eax
425455:	53                   	push   %ebx
425456:	68 6c 54 40 00       	push   $0x40546c
42545b:	57                   	push   %edi
42545c:	ff 75 fc             	push   -0x4(%ebp)
42545f:	ff 15 1c c0 42 00    	call   *0x42c01c
425465:	85 c0                	test   %eax,%eax
425467:	75 1d                	jne    0x425486
425469:	40                   	inc    %eax
42546a:	53                   	push   %ebx
42546b:	89 45 f8             	mov    %eax,-0x8(%ebp)
42546e:	8d 45 f8             	lea    -0x8(%ebp),%eax
425471:	50                   	push   %eax
425472:	53                   	push   %ebx
425473:	68 7c 54 40 00       	push   $0x40547c
425478:	57                   	push   %edi
425479:	ff 75 fc             	push   -0x4(%ebp)
42547c:	ff 15 1c c0 42 00    	call   *0x42c01c
425482:	85 c0                	test   %eax,%eax
425484:	74 0a                	je     0x425490
425486:	57                   	push   %edi
425487:	ff 75 fc             	push   -0x4(%ebp)
42548a:	ff 15 04 c0 42 00    	call   *0x42c004
425490:	ff 75 fc             	push   -0x4(%ebp)
425493:	ff 15 44 c0 42 00    	call   *0x42c044
425499:	5b                   	pop    %ebx
42549a:	5f                   	pop    %edi
42549b:	5e                   	pop    %esi
42549c:	c9                   	leave
42549d:	c3                   	ret
42549e:	8b ff                	mov    %edi,%edi
4254a0:	55                   	push   %ebp
4254a1:	8b ec                	mov    %esp,%ebp
4254a3:	81 ec f4 00 00 00    	sub    $0xf4,%esp
4254a9:	a1 74 b6 42 00       	mov    0x42b674,%eax
4254ae:	33 c5                	xor    %ebp,%eax
4254b0:	89 45 fc             	mov    %eax,-0x4(%ebp)
4254b3:	53                   	push   %ebx
4254b4:	56                   	push   %esi
4254b5:	57                   	push   %edi
4254b6:	33 c0                	xor    %eax,%eax
4254b8:	8b fa                	mov    %edx,%edi
4254ba:	68 00 08 00 00       	push   $0x800
4254bf:	50                   	push   %eax
4254c0:	68 88 54 40 00       	push   $0x405488
4254c5:	8b d9                	mov    %ecx,%ebx
4254c7:	89 85 10 ff ff ff    	mov    %eax,-0xf0(%ebp)
4254cd:	89 85 14 ff ff ff    	mov    %eax,-0xec(%ebp)
4254d3:	ff 15 34 c1 42 00    	call   *0x42c134
4254d9:	85 c0                	test   %eax,%eax
4254db:	0f 84 ed 00 00 00    	je     0x4255ce
4254e1:	68 dc 54 40 00       	push   $0x4054dc
4254e6:	50                   	push   %eax
4254e7:	ff 15 84 c1 42 00    	call   *0x42c184
4254ed:	8b f0                	mov    %eax,%esi
4254ef:	85 f6                	test   %esi,%esi
4254f1:	0f 84 d7 00 00 00    	je     0x4255ce
4254f7:	68 e0 00 00 00       	push   $0xe0
4254fc:	8d 85 18 ff ff ff    	lea    -0xe8(%ebp),%eax
425502:	6a 00                	push   $0x0
425504:	50                   	push   %eax
425505:	e8 a3 2e 00 00       	call   0x4283ad
42550a:	68 e8 54 40 00       	push   $0x4054e8
42550f:	8d 45 90             	lea    -0x70(%ebp),%eax
425512:	c7 85 18 ff ff ff e0 	movl   $0xe0,-0xe8(%ebp)
425519:	00 00 00
42551c:	6a 20                	push   $0x20
42551e:	50                   	push   %eax
42551f:	c7 85 44 ff ff ff 00 	movl   $0x20000,-0xbc(%ebp)
425526:	00 02 00
425529:	c7 45 88 78 00 00 00 	movl   $0x78,-0x78(%ebp)
425530:	ff 15 48 c3 42 00    	call   *0x42c348
425536:	8b 4d 08             	mov    0x8(%ebp),%ecx
425539:	33 d2                	xor    %edx,%edx
42553b:	c1 e9 10             	shr    $0x10,%ecx
42553e:	42                   	inc    %edx
42553f:	83 e1 0f             	and    $0xf,%ecx
425542:	c7 85 60 ff ff ff 00 	movl   $0x80000000,-0xa0(%ebp)
425549:	00 00 80
42554c:	83 c1 0c             	add    $0xc,%ecx
42554f:	89 95 4c ff ff ff    	mov    %edx,-0xb4(%ebp)
425555:	8b c2                	mov    %edx,%eax
425557:	c7 85 58 ff ff ff 00 	movl   $0x82000400,-0xa8(%ebp)
42555e:	04 00 82
425561:	d3 e0                	shl    %cl,%eax
425563:	83 c4 14             	add    $0x14,%esp
425566:	c1 e8 07             	shr    $0x7,%eax
425569:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
42556f:	05 ff 03 00 00       	add    $0x3ff,%eax
425574:	c6 85 62 ff ff ff ff 	movb   $0xff,-0x9e(%ebp)
42557b:	c1 e8 0a             	shr    $0xa,%eax
42557e:	89 85 48 ff ff ff    	mov    %eax,-0xb8(%ebp)
425584:	b8 b8 00 00 00       	mov    $0xb8,%eax
425589:	66 89 85 60 ff ff ff 	mov    %ax,-0xa0(%ebp)
425590:	33 c0                	xor    %eax,%eax
425592:	57                   	push   %edi
425593:	66 89 45 d2          	mov    %ax,-0x2e(%ebp)
425597:	66 89 55 d0          	mov    %dx,-0x30(%ebp)
42559b:	e8 49 fd ff ff       	call   0x4252e9
4255a0:	83 fb 01             	cmp    $0x1,%ebx
4255a3:	76 0b                	jbe    0x4255b0
4255a5:	8d 8d 18 ff ff ff    	lea    -0xe8(%ebp),%ecx
4255ab:	e8 86 fd ff ff       	call   0x425336
4255b0:	8d 85 18 ff ff ff    	lea    -0xe8(%ebp),%eax
4255b6:	8b ce                	mov    %esi,%ecx
4255b8:	50                   	push   %eax
4255b9:	8d 45 90             	lea    -0x70(%ebp),%eax
4255bc:	50                   	push   %eax
4255bd:	8d 85 10 ff ff ff    	lea    -0xf0(%ebp),%eax
4255c3:	50                   	push   %eax
4255c4:	ff 15 d4 c4 42 00    	call   *0x42c4d4
4255ca:	ff d6                	call   *%esi
4255cc:	eb 03                	jmp    0x4255d1
4255ce:	6a 32                	push   $0x32
4255d0:	58                   	pop    %eax
4255d1:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4255d4:	5f                   	pop    %edi
4255d5:	5e                   	pop    %esi
4255d6:	33 cd                	xor    %ebp,%ecx
4255d8:	5b                   	pop    %ebx
4255d9:	e8 02 25 00 00       	call   0x427ae0
4255de:	c9                   	leave
4255df:	c2 08 00             	ret    $0x8
4255e2:	8b ff                	mov    %edi,%edi
4255e4:	55                   	push   %ebp
4255e5:	8b ec                	mov    %esp,%ebp
4255e7:	83 ec 68             	sub    $0x68,%esp
4255ea:	a1 74 b6 42 00       	mov    0x42b674,%eax
4255ef:	33 c5                	xor    %ebp,%eax
4255f1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4255f4:	83 65 d8 00          	andl   $0x0,-0x28(%ebp)
4255f8:	53                   	push   %ebx
4255f9:	56                   	push   %esi
4255fa:	57                   	push   %edi
4255fb:	8b f9                	mov    %ecx,%edi
4255fd:	89 55 d4             	mov    %edx,-0x2c(%ebp)
425600:	8d 4d d8             	lea    -0x28(%ebp),%ecx
425603:	e8 3b fb ff ff       	call   0x425143
425608:	8b 5d 10             	mov    0x10(%ebp),%ebx
42560b:	8b f0                	mov    %eax,%esi
42560d:	85 f6                	test   %esi,%esi
42560f:	78 63                	js     0x425674
425611:	8b 45 0c             	mov    0xc(%ebp),%eax
425614:	33 c9                	xor    %ecx,%ecx
425616:	6a 18                	push   $0x18
425618:	89 45 b4             	mov    %eax,-0x4c(%ebp)
42561b:	8b 45 d4             	mov    -0x2c(%ebp),%eax
42561e:	89 45 c0             	mov    %eax,-0x40(%ebp)
425621:	8d 45 dc             	lea    -0x24(%ebp),%eax
425624:	50                   	push   %eax
425625:	6a 30                	push   $0x30
425627:	8d 45 a4             	lea    -0x5c(%ebp),%eax
42562a:	c7 45 a4 01 00 00 00 	movl   $0x1,-0x5c(%ebp)
425631:	50                   	push   %eax
425632:	68 04 00 22 00       	push   $0x220004
425637:	8d 45 9c             	lea    -0x64(%ebp),%eax
42563a:	89 4d a8             	mov    %ecx,-0x58(%ebp)
42563d:	50                   	push   %eax
42563e:	51                   	push   %ecx
42563f:	51                   	push   %ecx
425640:	51                   	push   %ecx
425641:	ff 75 d8             	push   -0x28(%ebp)
425644:	c7 45 ac 03 00 00 00 	movl   $0x3,-0x54(%ebp)
42564b:	89 5d b8             	mov    %ebx,-0x48(%ebp)
42564e:	89 7d bc             	mov    %edi,-0x44(%ebp)
425651:	ff 15 80 c4 42 00    	call   *0x42c480
425657:	ff 75 d8             	push   -0x28(%ebp)
42565a:	8b f0                	mov    %eax,%esi
42565c:	ff 15 48 c4 42 00    	call   *0x42c448
425662:	85 f6                	test   %esi,%esi
425664:	78 0e                	js     0x425674
425666:	8b 55 08             	mov    0x8(%ebp),%edx
425669:	8b cf                	mov    %edi,%ecx
42566b:	53                   	push   %ebx
42566c:	ff 75 0c             	push   0xc(%ebp)
42566f:	e8 2a fe ff ff       	call   0x42549e
425674:	8b 4d f8             	mov    -0x8(%ebp),%ecx
425677:	8b c6                	mov    %esi,%eax
425679:	5f                   	pop    %edi
42567a:	5e                   	pop    %esi
42567b:	33 cd                	xor    %ebp,%ecx
42567d:	5b                   	pop    %ebx
42567e:	e8 5d 24 00 00       	call   0x427ae0
425683:	c9                   	leave
425684:	c2 0c 00             	ret    $0xc
425687:	8b ff                	mov    %edi,%edi
425689:	55                   	push   %ebp
42568a:	8b ec                	mov    %esp,%ebp
42568c:	51                   	push   %ecx
42568d:	8d 45 fc             	lea    -0x4(%ebp),%eax
425690:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
425697:	50                   	push   %eax
425698:	51                   	push   %ecx
425699:	6a 00                	push   $0x0
42569b:	68 10 00 01 00       	push   $0x10010
4256a0:	ff 75 0c             	push   0xc(%ebp)
4256a3:	ff 75 08             	push   0x8(%ebp)
4256a6:	52                   	push   %edx
4256a7:	ff 15 28 c0 42 00    	call   *0x42c028
4256ad:	85 c0                	test   %eax,%eax
4256af:	7e 08                	jle    0x4256b9
4256b1:	0f b7 c0             	movzwl %ax,%eax
4256b4:	0d 00 00 07 80       	or     $0x80070000,%eax
4256b9:	c9                   	leave
4256ba:	c2 08 00             	ret    $0x8
4256bd:	8b ff                	mov    %edi,%edi
4256bf:	56                   	push   %esi
4256c0:	68 00 08 00 00       	push   $0x800
4256c5:	6a 00                	push   $0x0
4256c7:	68 48 24 40 00       	push   $0x402448
4256cc:	ff 15 34 c1 42 00    	call   *0x42c134
4256d2:	85 c0                	test   %eax,%eax
4256d4:	74 25                	je     0x4256fb
4256d6:	68 4c 55 40 00       	push   $0x40554c
4256db:	50                   	push   %eax
4256dc:	ff 15 84 c1 42 00    	call   *0x42c184
4256e2:	8b f0                	mov    %eax,%esi
4256e4:	85 f6                	test   %esi,%esi
4256e6:	74 13                	je     0x4256fb
4256e8:	8b ce                	mov    %esi,%ecx
4256ea:	ff 15 d4 c4 42 00    	call   *0x42c4d4
4256f0:	ff d6                	call   *%esi
4256f2:	84 c0                	test   %al,%al
4256f4:	b8 68 55 40 00       	mov    $0x405568,%eax
4256f9:	75 05                	jne    0x425700
4256fb:	b8 00 56 40 00       	mov    $0x405600,%eax
425700:	5e                   	pop    %esi
425701:	c3                   	ret
425702:	8b ff                	mov    %edi,%edi
425704:	55                   	push   %ebp
425705:	8b ec                	mov    %esp,%ebp
425707:	83 ec 18             	sub    $0x18,%esp
42570a:	8b 45 08             	mov    0x8(%ebp),%eax
42570d:	53                   	push   %ebx
42570e:	56                   	push   %esi
42570f:	57                   	push   %edi
425710:	8b f9                	mov    %ecx,%edi
425712:	8b da                	mov    %edx,%ebx
425714:	33 c9                	xor    %ecx,%ecx
425716:	68 00 08 00 00       	push   $0x800
42571b:	51                   	push   %ecx
42571c:	68 a4 56 40 00       	push   $0x4056a4
425721:	89 08                	mov    %ecx,(%eax)
425723:	89 0b                	mov    %ecx,(%ebx)
425725:	89 4d f4             	mov    %ecx,-0xc(%ebp)
425728:	89 4d f8             	mov    %ecx,-0x8(%ebp)
42572b:	ff 15 34 c1 42 00    	call   *0x42c134
425731:	8b f0                	mov    %eax,%esi
425733:	89 75 f0             	mov    %esi,-0x10(%ebp)
425736:	85 f6                	test   %esi,%esi
425738:	74 20                	je     0x42575a
42573a:	68 c8 56 40 00       	push   $0x4056c8
42573f:	56                   	push   %esi
425740:	ff 15 84 c1 42 00    	call   *0x42c184
425746:	68 e0 56 40 00       	push   $0x4056e0
42574b:	56                   	push   %esi
42574c:	89 45 f4             	mov    %eax,-0xc(%ebp)
42574f:	ff 15 84 c1 42 00    	call   *0x42c184
425755:	89 45 f8             	mov    %eax,-0x8(%ebp)
425758:	eb 03                	jmp    0x42575d
42575a:	8b 45 f8             	mov    -0x8(%ebp),%eax
42575d:	8b 75 f4             	mov    -0xc(%ebp),%esi
425760:	33 c9                	xor    %ecx,%ecx
425762:	89 4d fc             	mov    %ecx,-0x4(%ebp)
425765:	89 4d e8             	mov    %ecx,-0x18(%ebp)
425768:	89 4d ec             	mov    %ecx,-0x14(%ebp)
42576b:	85 f6                	test   %esi,%esi
42576d:	74 6a                	je     0x4257d9
42576f:	85 c0                	test   %eax,%eax
425771:	74 66                	je     0x4257d9
425773:	8d 45 fc             	lea    -0x4(%ebp),%eax
425776:	c7 45 e8 01 00 00 00 	movl   $0x1,-0x18(%ebp)
42577d:	50                   	push   %eax
42577e:	8d 45 e8             	lea    -0x18(%ebp),%eax