42d3ff:	89 08                	mov    %ecx,(%eax)
42d401:	8b 4d 18             	mov    0x18(%ebp),%ecx
42d404:	89 48 04             	mov    %ecx,0x4(%eax)
42d407:	5b                   	pop    %ebx
42d408:	5d                   	pop    %ebp
42d409:	c3                   	ret
42d40a:	55                   	push   %ebp
42d40b:	8b ec                	mov    %esp,%ebp
42d40d:	8b 45 10             	mov    0x10(%ebp),%eax
42d410:	53                   	push   %ebx
42d411:	56                   	push   %esi
42d412:	8b 75 0c             	mov    0xc(%ebp),%esi
42d415:	33 db                	xor    %ebx,%ebx
42d417:	2b c6                	sub    %esi,%eax
42d419:	40                   	inc    %eax
42d41a:	d1 e8                	shr    $1,%eax
42d41c:	39 75 10             	cmp    %esi,0x10(%ebp)
42d41f:	57                   	push   %edi
42d420:	1b ff                	sbb    %edi,%edi
42d422:	f7 d7                	not    %edi
42d424:	23 f8                	and    %eax,%edi
42d426:	74 14                	je     0x42d43c
42d428:	0f b7 06             	movzwl (%esi),%eax
42d42b:	8d 4d 14             	lea    0x14(%ebp),%ecx
42d42e:	50                   	push   %eax
42d42f:	e8 f7 2a 00 00       	call   0x42ff2b
42d434:	43                   	inc    %ebx
42d435:	8d 76 02             	lea    0x2(%esi),%esi
42d438:	3b df                	cmp    %edi,%ebx
42d43a:	75 ec                	jne    0x42d428
42d43c:	8b 45 08             	mov    0x8(%ebp),%eax
42d43f:	8b 4d 14             	mov    0x14(%ebp),%ecx
42d442:	5f                   	pop    %edi
42d443:	5e                   	pop    %esi
42d444:	89 08                	mov    %ecx,(%eax)
42d446:	8b 4d 18             	mov    0x18(%ebp),%ecx
42d449:	89 48 04             	mov    %ecx,0x4(%eax)
42d44c:	5b                   	pop    %ebx
42d44d:	5d                   	pop    %ebp
42d44e:	c3                   	ret
42d44f:	55                   	push   %ebp
42d450:	8b ec                	mov    %esp,%ebp
42d452:	51                   	push   %ecx
42d453:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d457:	ff 75 fc             	push   -0x4(%ebp)
42d45a:	ff 75 18             	push   0x18(%ebp)
42d45d:	ff 75 14             	push   0x14(%ebp)
42d460:	ff 75 10             	push   0x10(%ebp)
42d463:	ff 75 0c             	push   0xc(%ebp)
42d466:	ff 75 08             	push   0x8(%ebp)
42d469:	e8 57 ff ff ff       	call   0x42d3c5
42d46e:	8b 45 08             	mov    0x8(%ebp),%eax
42d471:	83 c4 18             	add    $0x18,%esp
42d474:	c9                   	leave
42d475:	c3                   	ret
42d476:	55                   	push   %ebp
42d477:	8b ec                	mov    %esp,%ebp
42d479:	51                   	push   %ecx
42d47a:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d47e:	ff 75 fc             	push   -0x4(%ebp)
42d481:	ff 75 18             	push   0x18(%ebp)
42d484:	ff 75 14             	push   0x14(%ebp)
42d487:	ff 75 10             	push   0x10(%ebp)
42d48a:	ff 75 0c             	push   0xc(%ebp)
42d48d:	ff 75 08             	push   0x8(%ebp)
42d490:	e8 75 ff ff ff       	call   0x42d40a
42d495:	8b 45 08             	mov    0x8(%ebp),%eax
42d498:	83 c4 18             	add    $0x18,%esp
42d49b:	c9                   	leave
42d49c:	c3                   	ret
42d49d:	55                   	push   %ebp
42d49e:	8b ec                	mov    %esp,%ebp
42d4a0:	51                   	push   %ecx
42d4a1:	56                   	push   %esi
42d4a2:	8b 75 08             	mov    0x8(%ebp),%esi
42d4a5:	8d 45 0c             	lea    0xc(%ebp),%eax
42d4a8:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d4ac:	ff 75 fc             	push   -0x4(%ebp)
42d4af:	50                   	push   %eax
42d4b0:	8d 46 34             	lea    0x34(%esi),%eax
42d4b3:	50                   	push   %eax
42d4b4:	56                   	push   %esi
42d4b5:	e8 1b 01 00 00       	call   0x42d5d5
42d4ba:	83 c4 10             	add    $0x10,%esp
42d4bd:	2b c6                	sub    %esi,%eax
42d4bf:	d1 f8                	sar    $1,%eax
42d4c1:	5e                   	pop    %esi
42d4c2:	c9                   	leave
42d4c3:	c3                   	ret
42d4c4:	55                   	push   %ebp
42d4c5:	8b ec                	mov    %esp,%ebp
42d4c7:	51                   	push   %ecx
42d4c8:	56                   	push   %esi
42d4c9:	8b 75 08             	mov    0x8(%ebp),%esi
42d4cc:	8d 45 0c             	lea    0xc(%ebp),%eax
42d4cf:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d4d3:	ff 75 fc             	push   -0x4(%ebp)
42d4d6:	50                   	push   %eax
42d4d7:	8d 46 38             	lea    0x38(%esi),%eax
42d4da:	50                   	push   %eax
42d4db:	56                   	push   %esi
42d4dc:	e8 f4 00 00 00       	call   0x42d5d5
42d4e1:	83 c4 10             	add    $0x10,%esp
42d4e4:	2b c6                	sub    %esi,%eax
42d4e6:	d1 f8                	sar    $1,%eax
42d4e8:	5e                   	pop    %esi
42d4e9:	c9                   	leave
42d4ea:	c3                   	ret
42d4eb:	55                   	push   %ebp
42d4ec:	8b ec                	mov    %esp,%ebp
42d4ee:	51                   	push   %ecx
42d4ef:	56                   	push   %esi
42d4f0:	8b 75 08             	mov    0x8(%ebp),%esi
42d4f3:	8d 45 0c             	lea    0xc(%ebp),%eax
42d4f6:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d4fa:	ff 75 fc             	push   -0x4(%ebp)
42d4fd:	50                   	push   %eax
42d4fe:	8d 46 16             	lea    0x16(%esi),%eax
42d501:	50                   	push   %eax
42d502:	56                   	push   %esi
42d503:	e8 cd 00 00 00       	call   0x42d5d5
42d508:	83 c4 10             	add    $0x10,%esp
42d50b:	2b c6                	sub    %esi,%eax
42d50d:	d1 f8                	sar    $1,%eax
42d50f:	5e                   	pop    %esi
42d510:	c9                   	leave
42d511:	c3                   	ret
42d512:	55                   	push   %ebp
42d513:	8b ec                	mov    %esp,%ebp
42d515:	51                   	push   %ecx
42d516:	56                   	push   %esi
42d517:	8b 75 08             	mov    0x8(%ebp),%esi
42d51a:	8d 45 0c             	lea    0xc(%ebp),%eax
42d51d:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d521:	ff 75 fc             	push   -0x4(%ebp)
42d524:	50                   	push   %eax
42d525:	8d 46 1c             	lea    0x1c(%esi),%eax
42d528:	50                   	push   %eax
42d529:	56                   	push   %esi
42d52a:	e8 a6 00 00 00       	call   0x42d5d5
42d52f:	83 c4 10             	add    $0x10,%esp
42d532:	2b c6                	sub    %esi,%eax
42d534:	d1 f8                	sar    $1,%eax
42d536:	5e                   	pop    %esi
42d537:	c9                   	leave
42d538:	c3                   	ret
42d539:	55                   	push   %ebp
42d53a:	8b ec                	mov    %esp,%ebp
42d53c:	51                   	push   %ecx
42d53d:	56                   	push   %esi
42d53e:	8b 75 08             	mov    0x8(%ebp),%esi
42d541:	8d 45 0c             	lea    0xc(%ebp),%eax
42d544:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d548:	ff 75 fc             	push   -0x4(%ebp)
42d54b:	50                   	push   %eax
42d54c:	8d 46 34             	lea    0x34(%esi),%eax
42d54f:	50                   	push   %eax
42d550:	56                   	push   %esi
42d551:	e8 a1 00 00 00       	call   0x42d5f7
42d556:	83 c4 10             	add    $0x10,%esp
42d559:	2b c6                	sub    %esi,%eax
42d55b:	d1 f8                	sar    $1,%eax
42d55d:	5e                   	pop    %esi
42d55e:	c9                   	leave
42d55f:	c3                   	ret
42d560:	55                   	push   %ebp
42d561:	8b ec                	mov    %esp,%ebp
42d563:	51                   	push   %ecx
42d564:	56                   	push   %esi
42d565:	8b 75 08             	mov    0x8(%ebp),%esi
42d568:	8d 45 0c             	lea    0xc(%ebp),%eax
42d56b:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d56f:	ff 75 fc             	push   -0x4(%ebp)
42d572:	50                   	push   %eax
42d573:	8d 46 38             	lea    0x38(%esi),%eax
42d576:	50                   	push   %eax
42d577:	56                   	push   %esi
42d578:	e8 7a 00 00 00       	call   0x42d5f7
42d57d:	83 c4 10             	add    $0x10,%esp
42d580:	2b c6                	sub    %esi,%eax
42d582:	d1 f8                	sar    $1,%eax
42d584:	5e                   	pop    %esi
42d585:	c9                   	leave
42d586:	c3                   	ret
42d587:	55                   	push   %ebp
42d588:	8b ec                	mov    %esp,%ebp
42d58a:	51                   	push   %ecx
42d58b:	56                   	push   %esi
42d58c:	8b 75 08             	mov    0x8(%ebp),%esi
42d58f:	8d 45 0c             	lea    0xc(%ebp),%eax
42d592:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d596:	ff 75 fc             	push   -0x4(%ebp)
42d599:	50                   	push   %eax
42d59a:	8d 46 16             	lea    0x16(%esi),%eax
42d59d:	50                   	push   %eax
42d59e:	56                   	push   %esi
42d59f:	e8 53 00 00 00       	call   0x42d5f7
42d5a4:	83 c4 10             	add    $0x10,%esp
42d5a7:	2b c6                	sub    %esi,%eax
42d5a9:	d1 f8                	sar    $1,%eax
42d5ab:	5e                   	pop    %esi
42d5ac:	c9                   	leave
42d5ad:	c3                   	ret
42d5ae:	55                   	push   %ebp
42d5af:	8b ec                	mov    %esp,%ebp
42d5b1:	51                   	push   %ecx
42d5b2:	56                   	push   %esi
42d5b3:	8b 75 08             	mov    0x8(%ebp),%esi
42d5b6:	8d 45 0c             	lea    0xc(%ebp),%eax
42d5b9:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d5bd:	ff 75 fc             	push   -0x4(%ebp)
42d5c0:	50                   	push   %eax
42d5c1:	8d 46 1c             	lea    0x1c(%esi),%eax
42d5c4:	50                   	push   %eax
42d5c5:	56                   	push   %esi
42d5c6:	e8 2c 00 00 00       	call   0x42d5f7
42d5cb:	83 c4 10             	add    $0x10,%esp
42d5ce:	2b c6                	sub    %esi,%eax
42d5d0:	d1 f8                	sar    $1,%eax
42d5d2:	5e                   	pop    %esi
42d5d3:	c9                   	leave
42d5d4:	c3                   	ret
42d5d5:	55                   	push   %ebp
42d5d6:	8b ec                	mov    %esp,%ebp
42d5d8:	8b 4d 08             	mov    0x8(%ebp),%ecx
42d5db:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
42d5de:	74 13                	je     0x42d5f3
42d5e0:	8b 45 10             	mov    0x10(%ebp),%eax
42d5e3:	0f b7 00             	movzwl (%eax),%eax
42d5e6:	66 39 01             	cmp    %ax,(%ecx)
42d5e9:	74 08                	je     0x42d5f3
42d5eb:	83 c1 02             	add    $0x2,%ecx
42d5ee:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
42d5f1:	75 f3                	jne    0x42d5e6
42d5f3:	8b c1                	mov    %ecx,%eax
42d5f5:	5d                   	pop    %ebp
42d5f6:	c3                   	ret
42d5f7:	55                   	push   %ebp
42d5f8:	8b ec                	mov    %esp,%ebp
42d5fa:	8b 4d 08             	mov    0x8(%ebp),%ecx
42d5fd:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
42d600:	74 13                	je     0x42d615
42d602:	8b 45 10             	mov    0x10(%ebp),%eax
42d605:	0f b7 00             	movzwl (%eax),%eax
42d608:	66 39 01             	cmp    %ax,(%ecx)
42d60b:	74 08                	je     0x42d615
42d60d:	83 c1 02             	add    $0x2,%ecx
42d610:	3b 4d 0c             	cmp    0xc(%ebp),%ecx
42d613:	75 f3                	jne    0x42d608
42d615:	8b c1                	mov    %ecx,%eax
42d617:	5d                   	pop    %ebp
42d618:	c3                   	ret
42d619:	55                   	push   %ebp
42d61a:	8b ec                	mov    %esp,%ebp
42d61c:	51                   	push   %ecx
42d61d:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d621:	ff 75 fc             	push   -0x4(%ebp)
42d624:	ff 75 10             	push   0x10(%ebp)
42d627:	ff 75 0c             	push   0xc(%ebp)
42d62a:	ff 75 08             	push   0x8(%ebp)
42d62d:	e8 a3 ff ff ff       	call   0x42d5d5
42d632:	83 c4 10             	add    $0x10,%esp
42d635:	c9                   	leave
42d636:	c3                   	ret
42d637:	55                   	push   %ebp
42d638:	8b ec                	mov    %esp,%ebp
42d63a:	51                   	push   %ecx
42d63b:	c6 45 fc 00          	movb   $0x0,-0x4(%ebp)
42d63f:	ff 75 fc             	push   -0x4(%ebp)
42d642:	ff 75 10             	push   0x10(%ebp)
42d645:	ff 75 0c             	push   0xc(%ebp)
42d648:	ff 75 08             	push   0x8(%ebp)
42d64b:	e8 a7 ff ff ff       	call   0x42d5f7
42d650:	83 c4 10             	add    $0x10,%esp
42d653:	c9                   	leave
42d654:	c3                   	ret
42d655:	55                   	push   %ebp
42d656:	8b ec                	mov    %esp,%ebp
42d658:	8b 45 08             	mov    0x8(%ebp),%eax
42d65b:	5d                   	pop    %ebp
42d65c:	c3                   	ret
42d65d:	55                   	push   %ebp
42d65e:	8b ec                	mov    %esp,%ebp
42d660:	8b 45 08             	mov    0x8(%ebp),%eax
42d663:	5d                   	pop    %ebp
42d664:	c3                   	ret
42d665:	55                   	push   %ebp
42d666:	8b ec                	mov    %esp,%ebp
42d668:	8b 45 08             	mov    0x8(%ebp),%eax
42d66b:	5d                   	pop    %ebp
42d66c:	c3                   	ret
42d66d:	6a 34                	push   $0x34
42d66f:	b8 97 13 49 00       	mov    $0x491397,%eax
42d674:	e8 05 24 01 00       	call   0x43fa7e
42d679:	8b 45 08             	mov    0x8(%ebp),%eax
42d67c:	8b 75 14             	mov    0x14(%ebp),%esi
42d67f:	8b 5d 10             	mov    0x10(%ebp),%ebx
42d682:	89 45 cc             	mov    %eax,-0x34(%ebp)
42d685:	8b 45 0c             	mov    0xc(%ebp),%eax
42d688:	89 45 c0             	mov    %eax,-0x40(%ebp)
42d68b:	8a 06                	mov    (%esi),%al
42d68d:	89 5d c8             	mov    %ebx,-0x38(%ebp)
42d690:	84 c0                	test   %al,%al
42d692:	74 13                	je     0x42d6a7
42d694:	8a c8                	mov    %al,%cl
42d696:	8b d6                	mov    %esi,%edx
42d698:	3a c8                	cmp    %al,%cl
42d69a:	75 01                	jne    0x42d69d
42d69c:	43                   	inc    %ebx
42d69d:	42                   	inc    %edx
42d69e:	8a 0a                	mov    (%edx),%cl
42d6a0:	84 c9                	test   %cl,%cl
42d6a2:	75 f4                	jne    0x42d698
42d6a4:	89 5d c8             	mov    %ebx,-0x38(%ebp)
42d6a7:	33 c0                	xor    %eax,%eax
42d6a9:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
42d6b0:	50                   	push   %eax
42d6b1:	53                   	push   %ebx
42d6b2:	8d 4d d8             	lea    -0x28(%ebp),%ecx
42d6b5:	89 45 e8             	mov    %eax,-0x18(%ebp)
42d6b8:	88 45 d8             	mov    %al,-0x28(%ebp)
42d6bb:	e8 7e 20 ff ff       	call   0x41f73e
42d6c0:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
42d6c4:	33 d2                	xor    %edx,%edx
42d6c6:	42                   	inc    %edx
42d6c7:	c7 45 c4 fe ff ff ff 	movl   $0xfffffffe,-0x3c(%ebp)
42d6ce:	89 55 d0             	mov    %edx,-0x30(%ebp)
42d6d1:	32 c9                	xor    %cl,%cl
42d6d3:	33 db                	xor    %ebx,%ebx
42d6d5:	33 ff                	xor    %edi,%edi
42d6d7:	88 4d d7             	mov    %cl,-0x29(%ebp)
42d6da:	39 5d c8             	cmp    %ebx,-0x38(%ebp)
42d6dd:	0f 86 f6 00 00 00    	jbe    0x42d7d9
42d6e3:	8a 04 37             	mov    (%edi,%esi,1),%al
42d6e6:	84 c0                	test   %al,%al
42d6e8:	74 0e                	je     0x42d6f8
42d6ea:	8a 0e                	mov    (%esi),%cl
42d6ec:	3a c1                	cmp    %cl,%al
42d6ee:	74 08                	je     0x42d6f8
42d6f0:	47                   	inc    %edi
42d6f1:	8a 04 37             	mov    (%edi,%esi,1),%al
42d6f4:	84 c0                	test   %al,%al
42d6f6:	75 f4                	jne    0x42d6ec
42d6f8:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
42d6fc:	8d 45 d8             	lea    -0x28(%ebp),%eax
42d6ff:	72 03                	jb     0x42d704
42d701:	8b 45 d8             	mov    -0x28(%ebp),%eax
42d704:	80 3c 18 00          	cmpb   $0x0,(%eax,%ebx,1)
42d708:	74 17                	je     0x42d721
42d70a:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)