420488:	8b 45 cc             	mov    -0x34(%ebp),%eax
42048b:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
420491:	83 20 00             	andl   $0x0,(%eax)
420494:	83 60 04 00          	andl   $0x0,0x4(%eax)
420498:	eb 31                	jmp    0x4204cb
42049a:	8d 45 c4             	lea    -0x3c(%ebp),%eax
42049d:	50                   	push   %eax
42049e:	56                   	push   %esi
42049f:	8d 45 c8             	lea    -0x38(%ebp),%eax
4204a2:	50                   	push   %eax
4204a3:	8d 45 d0             	lea    -0x30(%ebp),%eax
4204a6:	50                   	push   %eax
4204a7:	e8 62 76 00 00       	call   0x427b0e
4204ac:	8b 4d cc             	mov    -0x34(%ebp),%ecx
4204af:	83 c4 10             	add    $0x10,%esp
4204b2:	89 01                	mov    %eax,(%ecx)
4204b4:	8d 45 d0             	lea    -0x30(%ebp),%eax
4204b7:	89 51 04             	mov    %edx,0x4(%ecx)
4204ba:	39 45 c8             	cmp    %eax,-0x38(%ebp)
4204bd:	74 06                	je     0x4204c5
4204bf:	83 7d c4 00          	cmpl   $0x0,-0x3c(%ebp)
4204c3:	74 06                	je     0x4204cb
4204c5:	c7 03 02 00 00 00    	movl   $0x2,(%ebx)
4204cb:	8d 45 14             	lea    0x14(%ebp),%eax
4204ce:	50                   	push   %eax
4204cf:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4204d2:	e8 1d 07 00 00       	call   0x420bf4
4204d7:	84 c0                	test   %al,%al
4204d9:	74 03                	je     0x4204de
4204db:	83 0b 01             	orl    $0x1,(%ebx)
4204de:	8b 45 bc             	mov    -0x44(%ebp),%eax
4204e1:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4204e4:	89 08                	mov    %ecx,(%eax)
4204e6:	8b 4d 10             	mov    0x10(%ebp),%ecx
4204e9:	89 48 04             	mov    %ecx,0x4(%eax)
4204ec:	e8 37 f5 01 00       	call   0x43fa28
4204f1:	c2 20 00             	ret    $0x20
4204f4:	6a 68                	push   $0x68
4204f6:	b8 53 fb 48 00       	mov    $0x48fb53,%eax
4204fb:	e8 7e f5 01 00       	call   0x43fa7e
420500:	89 4d 98             	mov    %ecx,-0x68(%ebp)
420503:	8b 45 1c             	mov    0x1c(%ebp),%eax
420506:	8b 5d 08             	mov    0x8(%ebp),%ebx
420509:	8b 75 20             	mov    0x20(%ebp),%esi
42050c:	8b 7d 24             	mov    0x24(%ebp),%edi
42050f:	f7 40 14 00 40 00 00 	testl  $0x4000,0x14(%eax)
420516:	89 45 9c             	mov    %eax,-0x64(%ebp)
420519:	0f 84 06 01 00 00    	je     0x420625
42051f:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
420522:	51                   	push   %ecx
420523:	8b c8                	mov    %eax,%ecx
420525:	e8 ec 17 00 00       	call   0x421d16
42052a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42052e:	50                   	push   %eax
42052f:	e8 7a 89 fe ff       	call   0x408eae
420534:	59                   	pop    %ecx
420535:	89 45 9c             	mov    %eax,-0x64(%ebp)
420538:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
42053c:	8d 4d 94             	lea    -0x6c(%ebp),%ecx
42053f:	e8 a3 ee fe ff       	call   0x40f3e7
420544:	33 c9                	xor    %ecx,%ecx
420546:	33 c0                	xor    %eax,%eax
420548:	89 4d c8             	mov    %ecx,-0x38(%ebp)
42054b:	51                   	push   %ecx
42054c:	89 4d cc             	mov    %ecx,-0x34(%ebp)
42054f:	89 4d c8             	mov    %ecx,-0x38(%ebp)
420552:	8d 4d b8             	lea    -0x48(%ebp),%ecx
420555:	6a 01                	push   $0x1
420557:	c7 45 cc 07 00 00 00 	movl   $0x7,-0x34(%ebp)
42055e:	66 89 45 b8          	mov    %ax,-0x48(%ebp)
420562:	e8 ca f2 ff ff       	call   0x41f831
420567:	c7 45 fc 01 00 00 00 	movl   $0x1,-0x4(%ebp)
42056e:	8d 45 a0             	lea    -0x60(%ebp),%eax
420571:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
420574:	50                   	push   %eax
420575:	e8 a1 08 00 00       	call   0x420e1b
42057a:	c6 45 fc 02          	movb   $0x2,-0x4(%ebp)
42057e:	83 78 14 08          	cmpl   $0x8,0x14(%eax)
420582:	8b 48 10             	mov    0x10(%eax),%ecx
420585:	72 02                	jb     0x420589
420587:	8b 00                	mov    (%eax),%eax
420589:	51                   	push   %ecx
42058a:	50                   	push   %eax
42058b:	8d 4d b8             	lea    -0x48(%ebp),%ecx
42058e:	e8 10 f1 ff ff       	call   0x41f6a3
420593:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
420597:	8d 4d a0             	lea    -0x60(%ebp),%ecx
42059a:	e8 5b cd ff ff       	call   0x41d2fa
42059f:	6a 00                	push   $0x0
4205a1:	8d 4d b8             	lea    -0x48(%ebp),%ecx
4205a4:	e8 25 21 00 00       	call   0x4226ce
4205a9:	8b 4d 9c             	mov    -0x64(%ebp),%ecx
4205ac:	8d 45 a0             	lea    -0x60(%ebp),%eax
4205af:	50                   	push   %eax
4205b0:	e8 e4 2d 00 00       	call   0x423399
4205b5:	c6 45 fc 03          	movb   $0x3,-0x4(%ebp)
4205b9:	83 78 14 08          	cmpl   $0x8,0x14(%eax)
4205bd:	8b 48 10             	mov    0x10(%eax),%ecx
4205c0:	72 02                	jb     0x4205c4
4205c2:	8b 00                	mov    (%eax),%eax
4205c4:	51                   	push   %ecx
4205c5:	50                   	push   %eax
4205c6:	8d 4d b8             	lea    -0x48(%ebp),%ecx
4205c9:	e8 d5 f0 ff ff       	call   0x41f6a3
4205ce:	c6 45 fc 01          	movb   $0x1,-0x4(%ebp)
4205d2:	8d 4d a0             	lea    -0x60(%ebp),%ecx
4205d5:	e8 20 cd ff ff       	call   0x41d2fa
4205da:	83 7d cc 08          	cmpl   $0x8,-0x34(%ebp)
4205de:	8d 45 b8             	lea    -0x48(%ebp),%eax
4205e1:	0f 43 45 b8          	cmovae -0x48(%ebp),%eax
4205e5:	50                   	push   %eax
4205e6:	6a 02                	push   $0x2
4205e8:	8d 45 14             	lea    0x14(%ebp),%eax
4205eb:	50                   	push   %eax
4205ec:	8d 45 0c             	lea    0xc(%ebp),%eax
4205ef:	50                   	push   %eax
4205f0:	e8 7a 38 fe ff       	call   0x403e6f
4205f5:	33 c9                	xor    %ecx,%ecx
4205f7:	83 c4 10             	add    $0x10,%esp
4205fa:	2b c1                	sub    %ecx,%eax
4205fc:	74 14                	je     0x420612
4205fe:	83 e8 01             	sub    $0x1,%eax
420601:	74 0a                	je     0x42060d
420603:	88 0f                	mov    %cl,(%edi)
420605:	c7 06 02 00 00 00    	movl   $0x2,(%esi)
42060b:	eb 07                	jmp    0x420614
42060d:	c6 07 01             	movb   $0x1,(%edi)
420610:	eb 02                	jmp    0x420614
420612:	88 0f                	mov    %cl,(%edi)
420614:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
420618:	8d 4d b8             	lea    -0x48(%ebp),%ecx
42061b:	e8 da cc ff ff       	call   0x41d2fa
420620:	e9 8c 00 00 00       	jmp    0x4206b1
420625:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
420628:	51                   	push   %ecx
420629:	8b c8                	mov    %eax,%ecx
42062b:	e8 e6 16 00 00       	call   0x421d16
420630:	c7 45 fc 04 00 00 00 	movl   $0x4,-0x4(%ebp)
420637:	50                   	push   %eax
420638:	8b 45 9c             	mov    -0x64(%ebp),%eax
42063b:	ff 70 14             	push   0x14(%eax)
42063e:	8d 45 14             	lea    0x14(%ebp),%eax
420641:	50                   	push   %eax
420642:	8d 45 0c             	lea    0xc(%ebp),%eax
420645:	50                   	push   %eax
420646:	8d 45 d0             	lea    -0x30(%ebp),%eax
420649:	50                   	push   %eax
42064a:	ff 75 98             	push   -0x68(%ebp)
42064d:	e8 e1 a2 ff ff       	call   0x41a933
420652:	83 c4 18             	add    $0x18,%esp
420655:	89 45 98             	mov    %eax,-0x68(%ebp)
420658:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
42065c:	8d 4d 8c             	lea    -0x74(%ebp),%ecx
42065f:	e8 83 ed fe ff       	call   0x40f3e7
420664:	80 7d d0 00          	cmpb   $0x0,-0x30(%ebp)
420668:	75 05                	jne    0x42066f
42066a:	c6 07 00             	movb   $0x0,(%edi)
42066d:	eb 3c                	jmp    0x4206ab
42066f:	8d 45 9c             	lea    -0x64(%ebp),%eax
420672:	50                   	push   %eax
420673:	ff 75 98             	push   -0x68(%ebp)
420676:	8d 45 98             	lea    -0x68(%ebp),%eax
420679:	50                   	push   %eax
42067a:	8d 45 d0             	lea    -0x30(%ebp),%eax
42067d:	50                   	push   %eax
42067e:	e8 5d 71 00 00       	call   0x4277e0
420683:	8b c8                	mov    %eax,%ecx
420685:	83 c4 10             	add    $0x10,%esp
420688:	8d 45 d0             	lea    -0x30(%ebp),%eax
42068b:	39 45 98             	cmp    %eax,-0x68(%ebp)
42068e:	74 18                	je     0x4206a8
420690:	83 7d 9c 00          	cmpl   $0x0,-0x64(%ebp)
420694:	75 12                	jne    0x4206a8
420696:	85 c9                	test   %ecx,%ecx
420698:	0f 95 c0             	setne  %al
42069b:	88 07                	mov    %al,(%edi)
42069d:	85 c9                	test   %ecx,%ecx
42069f:	74 10                	je     0x4206b1
4206a1:	83 f9 01             	cmp    $0x1,%ecx
4206a4:	74 0b                	je     0x4206b1
4206a6:	eb 03                	jmp    0x4206ab
4206a8:	c6 07 01             	movb   $0x1,(%edi)
4206ab:	c7 06 02 00 00 00    	movl   $0x2,(%esi)
4206b1:	8d 45 14             	lea    0x14(%ebp),%eax
4206b4:	50                   	push   %eax
4206b5:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4206b8:	e8 37 05 00 00       	call   0x420bf4
4206bd:	84 c0                	test   %al,%al
4206bf:	74 03                	je     0x4206c4
4206c1:	83 0e 01             	orl    $0x1,(%esi)
4206c4:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4206c7:	8b c3                	mov    %ebx,%eax
4206c9:	89 0b                	mov    %ecx,(%ebx)
4206cb:	8b 4d 10             	mov    0x10(%ebp),%ecx
4206ce:	89 4b 04             	mov    %ecx,0x4(%ebx)
4206d1:	e8 52 f3 01 00       	call   0x43fa28
4206d6:	c2 20 00             	ret    $0x20
4206d9:	55                   	push   %ebp
4206da:	8b ec                	mov    %esp,%ebp
4206dc:	53                   	push   %ebx
4206dd:	ff 75 0c             	push   0xc(%ebp)
4206e0:	8b 5d 08             	mov    0x8(%ebp),%ebx
4206e3:	53                   	push   %ebx
4206e4:	e8 c7 f6 fe ff       	call   0x40fdb0
4206e9:	8b 43 08             	mov    0x8(%ebx),%eax
4206ec:	83 e8 00             	sub    $0x0,%eax
4206ef:	74 13                	je     0x420704
4206f1:	83 e8 01             	sub    $0x1,%eax
4206f4:	75 17                	jne    0x42070d
4206f6:	56                   	push   %esi
4206f7:	8b 33                	mov    (%ebx),%esi
4206f9:	57                   	push   %edi
4206fa:	8b fb                	mov    %ebx,%edi
4206fc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4206fd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4206fe:	a5                   	movsl  %ds:(%esi),%es:(%edi)
4206ff:	a5                   	movsl  %ds:(%esi),%es:(%edi)
420700:	5f                   	pop    %edi
420701:	5e                   	pop    %esi
420702:	eb 09                	jmp    0x42070d
420704:	8b 4d 10             	mov    0x10(%ebp),%ecx
420707:	c7 01 10 4a 49 00    	movl   $0x494a10,(%ecx)
42070d:	8b c3                	mov    %ebx,%eax
42070f:	5b                   	pop    %ebx
420710:	5d                   	pop    %ebp
420711:	c2 0c 00             	ret    $0xc
420714:	6a 04                	push   $0x4
420716:	b8 91 fb 48 00       	mov    $0x48fb91,%eax
42071b:	e8 2a f3 01 00       	call   0x43fa4a
420720:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
420724:	ff 71 08             	push   0x8(%ecx)
420727:	8b 4d 08             	mov    0x8(%ebp),%ecx
42072a:	e8 97 ab fe ff       	call   0x40b2c6
42072f:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
420733:	c7 45 f0 01 00 00 00 	movl   $0x1,-0x10(%ebp)
42073a:	8b 45 08             	mov    0x8(%ebp),%eax
42073d:	e8 d1 f2 01 00       	call   0x43fa13
420742:	c2 04 00             	ret    $0x4
420745:	55                   	push   %ebp
420746:	8b ec                	mov    %esp,%ebp
420748:	8b 45 0c             	mov    0xc(%ebp),%eax
42074b:	2b 45 08             	sub    0x8(%ebp),%eax
42074e:	50                   	push   %eax
42074f:	ff 75 08             	push   0x8(%ebp)
420752:	68 c5 9d 1c 81       	push   $0x811c9dc5
420757:	e8 89 8f ff ff       	call   0x4196e5
42075c:	83 c4 0c             	add    $0xc,%esp
42075f:	5d                   	pop    %ebp
420760:	c2 08 00             	ret    $0x8
420763:	55                   	push   %ebp
420764:	8b ec                	mov    %esp,%ebp
420766:	8b 45 0c             	mov    0xc(%ebp),%eax
420769:	2b 45 08             	sub    0x8(%ebp),%eax
42076c:	83 e0 fe             	and    $0xfffffffe,%eax
42076f:	50                   	push   %eax
420770:	ff 75 08             	push   0x8(%ebp)
420773:	68 c5 9d 1c 81       	push   $0x811c9dc5
420778:	e8 68 8f ff ff       	call   0x4196e5
42077d:	83 c4 0c             	add    $0xc,%esp
420780:	5d                   	pop    %ebp
420781:	c2 08 00             	ret    $0x8
420784:	55                   	push   %ebp
420785:	8b ec                	mov    %esp,%ebp
420787:	8d 41 08             	lea    0x8(%ecx),%eax
42078a:	50                   	push   %eax
42078b:	ff 75 10             	push   0x10(%ebp)
42078e:	ff 75 0c             	push   0xc(%ebp)
420791:	ff 75 08             	push   0x8(%ebp)
420794:	e8 db 5d 00 00       	call   0x426574
420799:	83 c4 10             	add    $0x10,%esp
42079c:	5d                   	pop    %ebp
42079d:	c2 0c 00             	ret    $0xc
4207a0:	55                   	push   %ebp
4207a1:	8b ec                	mov    %esp,%ebp
4207a3:	8d 41 08             	lea    0x8(%ecx),%eax
4207a6:	50                   	push   %eax
4207a7:	ff 75 0c             	push   0xc(%ebp)
4207aa:	e8 a5 5d 00 00       	call   0x426554
4207af:	66 85 45 08          	test   %ax,0x8(%ebp)
4207b3:	59                   	pop    %ecx
4207b4:	59                   	pop    %ecx
4207b5:	0f 95 c0             	setne  %al
4207b8:	5d                   	pop    %ebp
4207b9:	c2 08 00             	ret    $0x8
4207bc:	55                   	push   %ebp
4207bd:	8b ec                	mov    %esp,%ebp
4207bf:	8a 45 08             	mov    0x8(%ebp),%al
4207c2:	5d                   	pop    %ebp
4207c3:	c2 08 00             	ret    $0x8
4207c6:	55                   	push   %ebp
4207c7:	8b ec                	mov    %esp,%ebp
4207c9:	8b 4d 0c             	mov    0xc(%ebp),%ecx
4207cc:	2b 4d 08             	sub    0x8(%ebp),%ecx
4207cf:	51                   	push   %ecx
4207d0:	ff 75 08             	push   0x8(%ebp)
4207d3:	ff 75 14             	push   0x14(%ebp)
4207d6:	e8 85 2b 02 00       	call   0x443360
4207db:	8b 45 0c             	mov    0xc(%ebp),%eax
4207de:	83 c4 0c             	add    $0xc,%esp
4207e1:	5d                   	pop    %ebp
4207e2:	c2 10 00             	ret    $0x10
4207e5:	55                   	push   %ebp
4207e6:	8b ec                	mov    %esp,%ebp
4207e8:	5d                   	pop    %ebp
4207e9:	e9 1a 8b ff ff       	jmp    0x419308
4207ee:	55                   	push   %ebp
4207ef:	8b ec                	mov    %esp,%ebp
4207f1:	51                   	push   %ecx
4207f2:	51                   	push   %ecx
4207f3:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
4207f7:	33 c0                	xor    %eax,%eax
4207f9:	56                   	push   %esi
4207fa:	8b 75 0c             	mov    0xc(%ebp),%esi
4207fd:	57                   	push   %edi
4207fe:	8b 7d 08             	mov    0x8(%ebp),%edi
420801:	2b f7                	sub    %edi,%esi
420803:	46                   	inc    %esi
420804:	89 4d f8             	mov    %ecx,-0x8(%ebp)
420807:	d1 ee                	shr    $1,%esi
420809:	3b 7d 0c             	cmp    0xc(%ebp),%edi
42080c:	0f 47 f0             	cmova  %eax,%esi
42080f:	85 f6                	test   %esi,%esi
420811:	74 25                	je     0x420838
420813:	53                   	push   %ebx
420814:	8b 5d 14             	mov    0x14(%ebp),%ebx
420817:	ff 75 10             	push   0x10(%ebp)
42081a:	0f b7 07             	movzwl (%edi),%eax
42081d:	50                   	push   %eax
42081e:	e8 e5 8a ff ff       	call   0x419308
420823:	8b 4d f8             	mov    -0x8(%ebp),%ecx
420826:	83 c7 02             	add    $0x2,%edi
420829:	88 03                	mov    %al,(%ebx)
42082b:	43                   	inc    %ebx
42082c:	8b 45 fc             	mov    -0x4(%ebp),%eax
42082f:	40                   	inc    %eax
420830:	89 45 fc             	mov    %eax,-0x4(%ebp)
420833:	3b c6                	cmp    %esi,%eax
420835:	75 e0                	jne    0x420817
420837:	5b                   	pop    %ebx
420838:	8b c7                	mov    %edi,%eax
42083a:	5f                   	pop    %edi
42083b:	5e                   	pop    %esi
42083c:	c9                   	leave
42083d:	c2 10 00             	ret    $0x10
420840:	55                   	push   %ebp
420841:	8b ec                	mov    %esp,%ebp
420843:	56                   	push   %esi
420844:	8b 75 0c             	mov    0xc(%ebp),%esi
420847:	57                   	push   %edi
420848:	8b f9                	mov    %ecx,%edi