42655c:	74 0a                	je     0x426568
42655e:	8b 75 10             	mov    0x10(%ebp),%esi
426561:	85 f6                	test   %esi,%esi
426563:	75 18                	jne    0x42657d
426565:	c6 02 00             	movb   $0x0,(%edx)
426568:	e8 d3 00 00 00       	call   0x426640
42656d:	6a 16                	push   $0x16
42656f:	5e                   	pop    %esi
426570:	89 30                	mov    %esi,(%eax)
426572:	e8 f8 a4 ff ff       	call   0x420a6f
426577:	5f                   	pop    %edi
426578:	8b c6                	mov    %esi,%eax
42657a:	5e                   	pop    %esi
42657b:	5d                   	pop    %ebp
42657c:	c3                   	ret
42657d:	8b fa                	mov    %edx,%edi
42657f:	2b f2                	sub    %edx,%esi
426581:	8a 04 3e             	mov    (%esi,%edi,1),%al
426584:	88 07                	mov    %al,(%edi)
426586:	47                   	inc    %edi
426587:	84 c0                	test   %al,%al
426589:	74 14                	je     0x42659f
42658b:	83 e9 01             	sub    $0x1,%ecx
42658e:	75 f1                	jne    0x426581
426590:	85 c9                	test   %ecx,%ecx
426592:	75 0b                	jne    0x42659f
426594:	88 0a                	mov    %cl,(%edx)
426596:	e8 a5 00 00 00       	call   0x426640
42659b:	6a 22                	push   $0x22
42659d:	eb d0                	jmp    0x42656f
42659f:	33 f6                	xor    %esi,%esi
4265a1:	eb d4                	jmp    0x426577
4265a3:	8b ff                	mov    %edi,%edi
4265a5:	55                   	push   %ebp
4265a6:	8b ec                	mov    %esp,%ebp
4265a8:	8b 4d 08             	mov    0x8(%ebp),%ecx
4265ab:	33 c0                	xor    %eax,%eax
4265ad:	3b 0c c5 d0 13 44 00 	cmp    0x4413d0(,%eax,8),%ecx
4265b4:	74 27                	je     0x4265dd
4265b6:	40                   	inc    %eax
4265b7:	83 f8 2d             	cmp    $0x2d,%eax
4265ba:	72 f1                	jb     0x4265ad
4265bc:	8d 41 ed             	lea    -0x13(%ecx),%eax
4265bf:	83 f8 11             	cmp    $0x11,%eax
4265c2:	77 05                	ja     0x4265c9
4265c4:	6a 0d                	push   $0xd
4265c6:	58                   	pop    %eax
4265c7:	5d                   	pop    %ebp
4265c8:	c3                   	ret
4265c9:	8d 81 44 ff ff ff    	lea    -0xbc(%ecx),%eax
4265cf:	6a 0e                	push   $0xe
4265d1:	59                   	pop    %ecx
4265d2:	3b c8                	cmp    %eax,%ecx
4265d4:	1b c0                	sbb    %eax,%eax
4265d6:	23 c1                	and    %ecx,%eax
4265d8:	83 c0 08             	add    $0x8,%eax
4265db:	5d                   	pop    %ebp
4265dc:	c3                   	ret
4265dd:	8b 04 c5 d4 13 44 00 	mov    0x4413d4(,%eax,8),%eax
4265e4:	5d                   	pop    %ebp
4265e5:	c3                   	ret
4265e6:	8b ff                	mov    %edi,%edi
4265e8:	55                   	push   %ebp
4265e9:	8b ec                	mov    %esp,%ebp
4265eb:	56                   	push   %esi
4265ec:	e8 3c 00 00 00       	call   0x42662d
4265f1:	8b 4d 08             	mov    0x8(%ebp),%ecx
4265f4:	51                   	push   %ecx
4265f5:	89 08                	mov    %ecx,(%eax)
4265f7:	e8 a7 ff ff ff       	call   0x4265a3
4265fc:	59                   	pop    %ecx
4265fd:	8b f0                	mov    %eax,%esi
4265ff:	e8 3c 00 00 00       	call   0x426640
426604:	89 30                	mov    %esi,(%eax)
426606:	5e                   	pop    %esi
426607:	5d                   	pop    %ebp
426608:	c3                   	ret
426609:	8b ff                	mov    %edi,%edi
42660b:	55                   	push   %ebp
42660c:	8b ec                	mov    %esp,%ebp
42660e:	8b 45 08             	mov    0x8(%ebp),%eax
426611:	56                   	push   %esi
426612:	8b 75 0c             	mov    0xc(%ebp),%esi
426615:	50                   	push   %eax
426616:	c6 46 24 01          	movb   $0x1,0x24(%esi)
42661a:	89 46 20             	mov    %eax,0x20(%esi)
42661d:	e8 81 ff ff ff       	call   0x4265a3
426622:	59                   	pop    %ecx
426623:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
426627:	89 46 18             	mov    %eax,0x18(%esi)
42662a:	5e                   	pop    %esi
42662b:	5d                   	pop    %ebp
42662c:	c3                   	ret
42662d:	e8 48 5c 00 00       	call   0x42c27a
426632:	85 c0                	test   %eax,%eax
426634:	75 06                	jne    0x42663c
426636:	b8 e0 40 45 00       	mov    $0x4540e0,%eax
42663b:	c3                   	ret
42663c:	83 c0 14             	add    $0x14,%eax
42663f:	c3                   	ret
426640:	e8 35 5c 00 00       	call   0x42c27a
426645:	85 c0                	test   %eax,%eax
426647:	75 06                	jne    0x42664f
426649:	b8 dc 40 45 00       	mov    $0x4540dc,%eax
42664e:	c3                   	ret
42664f:	83 c0 10             	add    $0x10,%eax
426652:	c3                   	ret
426653:	8b ff                	mov    %edi,%edi
426655:	55                   	push   %ebp
426656:	8b ec                	mov    %esp,%ebp
426658:	5d                   	pop    %ebp
426659:	e9 53 5e 00 00       	jmp    0x42c4b1
42665e:	8b ff                	mov    %edi,%edi
426660:	55                   	push   %ebp
426661:	8b ec                	mov    %esp,%ebp
426663:	83 ec 18             	sub    $0x18,%esp
426666:	83 ca ff             	or     $0xffffffff,%edx
426669:	53                   	push   %ebx
42666a:	8b 5d 08             	mov    0x8(%ebp),%ebx
42666d:	3b da                	cmp    %edx,%ebx
42666f:	0f 84 e2 00 00 00    	je     0x426757
426675:	ff 75 0c             	push   0xc(%ebp)
426678:	8d 4d e8             	lea    -0x18(%ebp),%ecx
42667b:	e8 71 e7 ff ff       	call   0x424df1
426680:	81 fb 00 01 00 00    	cmp    $0x100,%ebx
426686:	73 29                	jae    0x4266b1
426688:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
42668c:	8b 45 ec             	mov    -0x14(%ebp),%eax
42668f:	0f b6 cb             	movzbl %bl,%ecx
426692:	8b 80 94 00 00 00    	mov    0x94(%eax),%eax
426698:	0f b6 14 08          	movzbl (%eax,%ecx,1),%edx
42669c:	0f 84 b5 00 00 00    	je     0x426757
4266a2:	8b 45 e8             	mov    -0x18(%ebp),%eax
4266a5:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
4266ac:	e9 a6 00 00 00       	jmp    0x426757
4266b1:	8b 55 ec             	mov    -0x14(%ebp),%edx
4266b4:	33 c0                	xor    %eax,%eax
4266b6:	88 45 fe             	mov    %al,-0x2(%ebp)
4266b9:	83 7a 04 01          	cmpl   $0x1,0x4(%edx)
4266bd:	7e 27                	jle    0x4266e6
4266bf:	8b c3                	mov    %ebx,%eax
4266c1:	c1 f8 08             	sar    $0x8,%eax
4266c4:	89 45 f8             	mov    %eax,-0x8(%ebp)
4266c7:	0f b6 c8             	movzbl %al,%ecx
4266ca:	8b 02                	mov    (%edx),%eax
4266cc:	57                   	push   %edi
4266cd:	33 ff                	xor    %edi,%edi
4266cf:	66 39 3c 48          	cmp    %di,(%eax,%ecx,2)
4266d3:	5f                   	pop    %edi
4266d4:	7d 10                	jge    0x4266e6
4266d6:	8b 45 f8             	mov    -0x8(%ebp),%eax
4266d9:	33 c9                	xor    %ecx,%ecx
4266db:	6a 02                	push   $0x2
4266dd:	88 45 fc             	mov    %al,-0x4(%ebp)
4266e0:	88 5d fd             	mov    %bl,-0x3(%ebp)
4266e3:	58                   	pop    %eax
4266e4:	eb 19                	jmp    0x4266ff
4266e6:	e8 55 ff ff ff       	call   0x426640
4266eb:	33 c9                	xor    %ecx,%ecx
4266ed:	c7 00 2a 00 00 00    	movl   $0x2a,(%eax)
4266f3:	33 c0                	xor    %eax,%eax
4266f5:	8b 55 ec             	mov    -0x14(%ebp),%edx
4266f8:	40                   	inc    %eax
4266f9:	88 5d fc             	mov    %bl,-0x4(%ebp)
4266fc:	88 4d fd             	mov    %cl,-0x3(%ebp)
4266ff:	6a 01                	push   $0x1
426701:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
426705:	88 4d fa             	mov    %cl,-0x6(%ebp)
426708:	8d 4d f8             	lea    -0x8(%ebp),%ecx
42670b:	ff 72 08             	push   0x8(%edx)
42670e:	6a 03                	push   $0x3
426710:	51                   	push   %ecx
426711:	50                   	push   %eax
426712:	8d 45 fc             	lea    -0x4(%ebp),%eax
426715:	50                   	push   %eax
426716:	68 00 01 00 00       	push   $0x100
42671b:	ff b2 a8 00 00 00    	push   0xa8(%edx)
426721:	8d 45 ec             	lea    -0x14(%ebp),%eax
426724:	50                   	push   %eax
426725:	e8 23 a4 00 00       	call   0x430b4d
42672a:	83 c4 24             	add    $0x24,%esp
42672d:	85 c0                	test   %eax,%eax
42672f:	75 04                	jne    0x426735
426731:	8b d3                	mov    %ebx,%edx
426733:	eb 12                	jmp    0x426747
426735:	0f b6 55 f8          	movzbl -0x8(%ebp),%edx
426739:	83 f8 01             	cmp    $0x1,%eax
42673c:	74 09                	je     0x426747
42673e:	0f b6 45 f9          	movzbl -0x7(%ebp),%eax
426742:	c1 e2 08             	shl    $0x8,%edx
426745:	0b d0                	or     %eax,%edx
426747:	80 7d f4 00          	cmpb   $0x0,-0xc(%ebp)
42674b:	74 0a                	je     0x426757
42674d:	8b 4d e8             	mov    -0x18(%ebp),%ecx
426750:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
426757:	8b c2                	mov    %edx,%eax
426759:	5b                   	pop    %ebx
42675a:	c9                   	leave
42675b:	c3                   	ret
42675c:	8b ff                	mov    %edi,%edi
42675e:	55                   	push   %ebp
42675f:	8b ec                	mov    %esp,%ebp
426761:	83 3d fc 5c 45 00 00 	cmpl   $0x0,0x455cfc
426768:	74 10                	je     0x42677a
42676a:	6a 00                	push   $0x0
42676c:	ff 75 08             	push   0x8(%ebp)
42676f:	e8 ea fe ff ff       	call   0x42665e
426774:	59                   	pop    %ecx
426775:	59                   	pop    %ecx
426776:	8b c8                	mov    %eax,%ecx
426778:	eb 0e                	jmp    0x426788
42677a:	8b 4d 08             	mov    0x8(%ebp),%ecx
42677d:	8d 41 bf             	lea    -0x41(%ecx),%eax
426780:	83 f8 19             	cmp    $0x19,%eax
426783:	77 03                	ja     0x426788
426785:	83 c1 20             	add    $0x20,%ecx
426788:	8b c1                	mov    %ecx,%eax
42678a:	5d                   	pop    %ebp
42678b:	c3                   	ret
42678c:	8b ff                	mov    %edi,%edi
42678e:	55                   	push   %ebp
42678f:	8b ec                	mov    %esp,%ebp
426791:	83 ec 0c             	sub    $0xc,%esp
426794:	8b 45 0c             	mov    0xc(%ebp),%eax
426797:	33 c9                	xor    %ecx,%ecx
426799:	53                   	push   %ebx
42679a:	8b 5d 08             	mov    0x8(%ebp),%ebx
42679d:	56                   	push   %esi
42679e:	8b f0                	mov    %eax,%esi
4267a0:	89 45 f8             	mov    %eax,-0x8(%ebp)
4267a3:	57                   	push   %edi
4267a4:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4267a7:	38 4d 18             	cmp    %cl,0x18(%ebp)
4267aa:	74 14                	je     0x4267c0
4267ac:	6a 2d                	push   $0x2d
4267ae:	59                   	pop    %ecx
4267af:	66 89 08             	mov    %cx,(%eax)
4267b2:	8d 70 02             	lea    0x2(%eax),%esi
4267b5:	33 c9                	xor    %ecx,%ecx
4267b7:	89 75 f8             	mov    %esi,-0x8(%ebp)
4267ba:	41                   	inc    %ecx
4267bb:	f7 db                	neg    %ebx
4267bd:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4267c0:	89 75 f4             	mov    %esi,-0xc(%ebp)
4267c3:	8b 75 f8             	mov    -0x8(%ebp),%esi
4267c6:	33 d2                	xor    %edx,%edx
4267c8:	8b c3                	mov    %ebx,%eax
4267ca:	f7 75 14             	divl   0x14(%ebp)
4267cd:	8b c3                	mov    %ebx,%eax
4267cf:	8b fe                	mov    %esi,%edi
4267d1:	8b ca                	mov    %edx,%ecx
4267d3:	33 d2                	xor    %edx,%edx
4267d5:	f7 75 14             	divl   0x14(%ebp)
4267d8:	6a 09                	push   $0x9
4267da:	8b d8                	mov    %eax,%ebx
4267dc:	8d 56 02             	lea    0x2(%esi),%edx
4267df:	58                   	pop    %eax
4267e0:	3b c1                	cmp    %ecx,%eax
4267e2:	1b c0                	sbb    %eax,%eax
4267e4:	83 e0 27             	and    $0x27,%eax
4267e7:	83 c0 30             	add    $0x30,%eax
4267ea:	66 03 c1             	add    %cx,%ax
4267ed:	8b 4d 10             	mov    0x10(%ebp),%ecx
4267f0:	66 89 06             	mov    %ax,(%esi)
4267f3:	8b 45 fc             	mov    -0x4(%ebp),%eax
4267f6:	40                   	inc    %eax
4267f7:	89 45 fc             	mov    %eax,-0x4(%ebp)
4267fa:	85 db                	test   %ebx,%ebx
4267fc:	74 06                	je     0x426804
4267fe:	8b f2                	mov    %edx,%esi
426800:	3b c1                	cmp    %ecx,%eax
426802:	72 c2                	jb     0x4267c6
426804:	8b 75 f4             	mov    -0xc(%ebp),%esi
426807:	3b c1                	cmp    %ecx,%eax
426809:	72 1b                	jb     0x426826
42680b:	8b 45 0c             	mov    0xc(%ebp),%eax
42680e:	33 c9                	xor    %ecx,%ecx
426810:	66 89 08             	mov    %cx,(%eax)
426813:	e8 28 fe ff ff       	call   0x426640
426818:	6a 22                	push   $0x22
42681a:	5e                   	pop    %esi
42681b:	89 30                	mov    %esi,(%eax)
42681d:	e8 4d a2 ff ff       	call   0x420a6f
426822:	8b c6                	mov    %esi,%eax
426824:	eb 1d                	jmp    0x426843
426826:	33 c0                	xor    %eax,%eax
426828:	66 89 02             	mov    %ax,(%edx)
42682b:	66 8b 06             	mov    (%esi),%ax
42682e:	0f b7 0f             	movzwl (%edi),%ecx
426831:	66 89 07             	mov    %ax,(%edi)
426834:	83 ef 02             	sub    $0x2,%edi
426837:	66 89 0e             	mov    %cx,(%esi)
42683a:	83 c6 02             	add    $0x2,%esi
42683d:	3b f7                	cmp    %edi,%esi
42683f:	72 ea                	jb     0x42682b
426841:	33 c0                	xor    %eax,%eax
426843:	5f                   	pop    %edi
426844:	5e                   	pop    %esi
426845:	5b                   	pop    %ebx
426846:	c9                   	leave
426847:	c3                   	ret
426848:	8b ff                	mov    %edi,%edi
42684a:	55                   	push   %ebp
42684b:	8b ec                	mov    %esp,%ebp
42684d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
426850:	56                   	push   %esi
426851:	85 c9                	test   %ecx,%ecx
426853:	75 13                	jne    0x426868
426855:	e8 e6 fd ff ff       	call   0x426640
42685a:	6a 16                	push   $0x16
42685c:	5e                   	pop    %esi
42685d:	89 30                	mov    %esi,(%eax)
42685f:	e8 0b a2 ff ff       	call   0x420a6f
426864:	8b c6                	mov    %esi,%eax
426866:	eb 4f                	jmp    0x4268b7
426868:	8b 55 10             	mov    0x10(%ebp),%edx
42686b:	53                   	push   %ebx
42686c:	85 d2                	test   %edx,%edx
42686e:	74 24                	je     0x426894
426870:	8b 5d 18             	mov    0x18(%ebp),%ebx
426873:	33 c0                	xor    %eax,%eax
426875:	66 89 01             	mov    %ax,(%ecx)
426878:	0f b6 c3             	movzbl %bl,%eax
42687b:	40                   	inc    %eax
42687c:	3b d0                	cmp    %eax,%edx
42687e:	77 09                	ja     0x426889
426880:	e8 bb fd ff ff       	call   0x426640
426885:	6a 22                	push   $0x22
426887:	eb 12                	jmp    0x42689b
426889:	8b 75 14             	mov    0x14(%ebp),%esi
42688c:	8d 46 fe             	lea    -0x2(%esi),%eax
42688f:	83 f8 22             	cmp    $0x22,%eax
426892:	76 13                	jbe    0x4268a7
426894:	e8 a7 fd ff ff       	call   0x426640
426899:	6a 16                	push   $0x16
42689b:	5e                   	pop    %esi
42689c:	89 30                	mov    %esi,(%eax)
42689e:	e8 cc a1 ff ff       	call   0x420a6f
4268a3:	8b c6                	mov    %esi,%eax
4268a5:	eb 0f                	jmp    0x4268b6
4268a7:	53                   	push   %ebx
4268a8:	56                   	push   %esi
4268a9:	52                   	push   %edx
4268aa:	51                   	push   %ecx
4268ab:	ff 75 08             	push   0x8(%ebp)
4268ae:	e8 d9 fe ff ff       	call   0x42678c
4268b3:	83 c4 14             	add    $0x14,%esp
4268b6:	5b                   	pop    %ebx
4268b7:	5e                   	pop    %esi
4268b8:	5d                   	pop    %ebp