43c2ab:	46                   	inc    %esi
43c2ac:	3b 75 f4             	cmp    -0xc(%ebp),%esi
43c2af:	7e bb                	jle    0x43c26c
43c2b1:	3b 75 f4             	cmp    -0xc(%ebp),%esi
43c2b4:	7f 14                	jg     0x43c2ca
43c2b6:	2b 75 08             	sub    0x8(%ebp),%esi
43c2b9:	8b 4d 0c             	mov    0xc(%ebp),%ecx
43c2bc:	8b c6                	mov    %esi,%eax
43c2be:	99                   	cltd
43c2bf:	2b c2                	sub    %edx,%eax
43c2c1:	d1 f8                	sar    $1,%eax
43c2c3:	03 45 08             	add    0x8(%ebp),%eax
43c2c6:	b3 01                	mov    $0x1,%bl
43c2c8:	89 01                	mov    %eax,(%ecx)
43c2ca:	8d 8d 58 ff ff ff    	lea    -0xa8(%ebp),%ecx
43c2d0:	e8 00 73 fc ff       	call   0x4035d5
43c2d5:	5f                   	pop    %edi
43c2d6:	5e                   	pop    %esi
43c2d7:	8a c3                	mov    %bl,%al
43c2d9:	5b                   	pop    %ebx
43c2da:	c9                   	leave
43c2db:	c2 08 00             	ret    $0x8
43c2de:	55                   	push   %ebp
43c2df:	8b ec                	mov    %esp,%ebp
43c2e1:	83 ec 20             	sub    $0x20,%esp
43c2e4:	53                   	push   %ebx
43c2e5:	56                   	push   %esi
43c2e6:	57                   	push   %edi
43c2e7:	33 f6                	xor    %esi,%esi
43c2e9:	56                   	push   %esi
43c2ea:	56                   	push   %esi
43c2eb:	8b c1                	mov    %ecx,%eax
43c2ed:	68 0a 11 00 00       	push   $0x110a
43c2f2:	ff 30                	push   (%eax)
43c2f4:	89 45 f4             	mov    %eax,-0xc(%ebp)
43c2f7:	ff 15 70 d6 48 00    	call   *0x48d670
43c2fd:	8b f8                	mov    %eax,%edi
43c2ff:	89 7d f8             	mov    %edi,-0x8(%ebp)
43c302:	85 ff                	test   %edi,%edi
43c304:	0f 84 be 00 00 00    	je     0x43c3c8
43c30a:	8b 5d 08             	mov    0x8(%ebp),%ebx
43c30d:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c310:	8b 5b 04             	mov    0x4(%ebx),%ebx
43c313:	e8 df 14 fd ff       	call   0x40d7f7
43c318:	85 db                	test   %ebx,%ebx
43c31a:	0f 84 9e 00 00 00    	je     0x43c3be
43c320:	85 f6                	test   %esi,%esi
43c322:	74 1c                	je     0x43c340
43c324:	8b 45 f4             	mov    -0xc(%ebp),%eax
43c327:	57                   	push   %edi
43c328:	6a 04                	push   $0x4
43c32a:	68 0a 11 00 00       	push   $0x110a
43c32f:	ff 30                	push   (%eax)
43c331:	ff 15 70 d6 48 00    	call   *0x48d670
43c337:	8b f8                	mov    %eax,%edi
43c339:	89 7d f8             	mov    %edi,-0x8(%ebp)
43c33c:	85 ff                	test   %edi,%edi
43c33e:	74 7e                	je     0x43c3be
43c340:	68 00 dc 49 00       	push   $0x49dc00
43c345:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c348:	e8 16 a7 fc ff       	call   0x406a63
43c34d:	3b f3                	cmp    %ebx,%esi
43c34f:	73 4e                	jae    0x43c39f
43c351:	8b 7d 08             	mov    0x8(%ebp),%edi
43c354:	56                   	push   %esi
43c355:	8b cf                	mov    %edi,%ecx
43c357:	e8 2a 5d fc ff       	call   0x402086
43c35c:	6a 7c                	push   $0x7c
43c35e:	59                   	pop    %ecx
43c35f:	66 39 08             	cmp    %cx,(%eax)
43c362:	75 1f                	jne    0x43c383
43c364:	8d 46 01             	lea    0x1(%esi),%eax
43c367:	50                   	push   %eax
43c368:	8b cf                	mov    %edi,%ecx
43c36a:	e8 17 5d fc ff       	call   0x402086
43c36f:	6a 7c                	push   $0x7c
43c371:	59                   	pop    %ecx
43c372:	66 39 08             	cmp    %cx,(%eax)
43c375:	75 25                	jne    0x43c39c
43c377:	51                   	push   %ecx
43c378:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c37b:	e8 19 04 fd ff       	call   0x40c799
43c380:	83 c6 02             	add    $0x2,%esi
43c383:	56                   	push   %esi
43c384:	8b cf                	mov    %edi,%ecx
43c386:	e8 fb 5c fc ff       	call   0x402086
43c38b:	0f b7 00             	movzwl (%eax),%eax
43c38e:	50                   	push   %eax
43c38f:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c392:	e8 02 04 fd ff       	call   0x40c799
43c397:	46                   	inc    %esi
43c398:	3b f3                	cmp    %ebx,%esi
43c39a:	72 b8                	jb     0x43c354
43c39c:	8b 7d f8             	mov    -0x8(%ebp),%edi
43c39f:	8b 4d f4             	mov    -0xc(%ebp),%ecx
43c3a2:	8d 45 e4             	lea    -0x1c(%ebp),%eax
43c3a5:	50                   	push   %eax
43c3a6:	57                   	push   %edi
43c3a7:	e8 e8 01 00 00       	call   0x43c594
43c3ac:	8b f8                	mov    %eax,%edi
43c3ae:	89 45 f8             	mov    %eax,-0x8(%ebp)
43c3b1:	85 ff                	test   %edi,%edi
43c3b3:	74 09                	je     0x43c3be
43c3b5:	46                   	inc    %esi
43c3b6:	3b f3                	cmp    %ebx,%esi
43c3b8:	0f 82 62 ff ff ff    	jb     0x43c320
43c3be:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
43c3c1:	e8 71 07 fd ff       	call   0x40cb37
43c3c6:	8b c7                	mov    %edi,%eax
43c3c8:	5f                   	pop    %edi
43c3c9:	5e                   	pop    %esi
43c3ca:	5b                   	pop    %ebx
43c3cb:	c9                   	leave
43c3cc:	c2 04 00             	ret    $0x4
43c3cf:	55                   	push   %ebp
43c3d0:	8b ec                	mov    %esp,%ebp
43c3d2:	53                   	push   %ebx
43c3d3:	8b 5d 08             	mov    0x8(%ebp),%ebx
43c3d6:	56                   	push   %esi
43c3d7:	57                   	push   %edi
43c3d8:	53                   	push   %ebx
43c3d9:	8b f9                	mov    %ecx,%edi
43c3db:	e8 fe fe ff ff       	call   0x43c2de
43c3e0:	85 c0                	test   %eax,%eax
43c3e2:	74 25                	je     0x43c409
43c3e4:	33 f6                	xor    %esi,%esi
43c3e6:	39 73 04             	cmp    %esi,0x4(%ebx)
43c3e9:	8b 1d 70 d6 48 00    	mov    0x48d670,%ebx
43c3ef:	74 12                	je     0x43c403
43c3f1:	50                   	push   %eax
43c3f2:	6a 04                	push   $0x4
43c3f4:	eb 04                	jmp    0x43c3fa
43c3f6:	50                   	push   %eax
43c3f7:	46                   	inc    %esi
43c3f8:	6a 01                	push   $0x1
43c3fa:	68 0a 11 00 00       	push   $0x110a
43c3ff:	ff 37                	push   (%edi)
43c401:	ff d3                	call   *%ebx
43c403:	85 c0                	test   %eax,%eax
43c405:	75 ef                	jne    0x43c3f6
43c407:	8b c6                	mov    %esi,%eax
43c409:	5f                   	pop    %edi
43c40a:	5e                   	pop    %esi
43c40b:	5b                   	pop    %ebx
43c40c:	5d                   	pop    %ebp
43c40d:	c2 04 00             	ret    $0x4
43c410:	55                   	push   %ebp
43c411:	8b ec                	mov    %esp,%ebp
43c413:	81 ec b8 00 00 00    	sub    $0xb8,%esp
43c419:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
43c41d:	53                   	push   %ebx
43c41e:	56                   	push   %esi
43c41f:	8b 75 10             	mov    0x10(%ebp),%esi
43c422:	8b d9                	mov    %ecx,%ebx
43c424:	8b 06                	mov    (%esi),%eax
43c426:	89 45 d8             	mov    %eax,-0x28(%ebp)
43c429:	8b 46 04             	mov    0x4(%esi),%eax
43c42c:	89 45 dc             	mov    %eax,-0x24(%ebp)
43c42f:	8b 46 08             	mov    0x8(%esi),%eax
43c432:	89 45 e0             	mov    %eax,-0x20(%ebp)
43c435:	8b 46 0c             	mov    0xc(%esi),%eax
43c438:	57                   	push   %edi
43c439:	ff 00                	incl   (%eax)
43c43b:	8b 7d 08             	mov    0x8(%ebp),%edi
43c43e:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43c441:	89 45 e4             	mov    %eax,-0x1c(%ebp)
43c444:	e8 ae 13 fd ff       	call   0x40d7f7
43c449:	85 ff                	test   %edi,%edi
43c44b:	0f 84 c7 00 00 00    	je     0x43c518
43c451:	c7 45 10 01 00 00 00 	movl   $0x1,0x10(%ebp)
43c458:	57                   	push   %edi
43c459:	6a 04                	push   $0x4
43c45b:	68 0a 11 00 00       	push   $0x110a
43c460:	ff 33                	push   (%ebx)
43c462:	ff 15 70 d6 48 00    	call   *0x48d670
43c468:	89 45 08             	mov    %eax,0x8(%ebp)
43c46b:	85 c0                	test   %eax,%eax
43c46d:	0f 84 83 00 00 00    	je     0x43c4f6
43c473:	8b ce                	mov    %esi,%ecx
43c475:	e8 70 e1 ff ff       	call   0x43a5ea
43c47a:	84 c0                	test   %al,%al
43c47c:	75 0c                	jne    0x43c48a
43c47e:	68 8c 2a 4b 00       	push   $0x4b2a8c
43c483:	8b ce                	mov    %esi,%ecx
43c485:	e8 02 8d fc ff       	call   0x40518c
43c48a:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
43c48e:	74 2d                	je     0x43c4bd
43c490:	6a 0a                	push   $0xa
43c492:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43c498:	50                   	push   %eax
43c499:	ff 75 f8             	push   -0x8(%ebp)
43c49c:	e8 b6 50 fe ff       	call   0x421557
43c4a1:	83 c4 0c             	add    $0xc,%esp
43c4a4:	8b ce                	mov    %esi,%ecx
43c4a6:	6a 23                	push   $0x23
43c4a8:	e8 ec 02 fd ff       	call   0x40c799
43c4ad:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43c4b3:	50                   	push   %eax
43c4b4:	8b ce                	mov    %esi,%ecx
43c4b6:	e8 d1 8c fc ff       	call   0x40518c
43c4bb:	eb 17                	jmp    0x43c4d4
43c4bd:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c4c0:	50                   	push   %eax
43c4c1:	57                   	push   %edi
43c4c2:	8b cb                	mov    %ebx,%ecx
43c4c4:	e8 1f 02 00 00       	call   0x43c6e8
43c4c9:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c4cc:	50                   	push   %eax
43c4cd:	8b ce                	mov    %esi,%ecx
43c4cf:	e8 39 8c fc ff       	call   0x40510d
43c4d4:	6a 00                	push   $0x0
43c4d6:	ff 75 14             	push   0x14(%ebp)
43c4d9:	8b cb                	mov    %ebx,%ecx
43c4db:	56                   	push   %esi
43c4dc:	ff 75 0c             	push   0xc(%ebp)
43c4df:	ff 75 08             	push   0x8(%ebp)
43c4e2:	e8 29 ff ff ff       	call   0x43c410
43c4e7:	84 c0                	test   %al,%al
43c4e9:	75 31                	jne    0x43c51c
43c4eb:	8d 45 d8             	lea    -0x28(%ebp),%eax
43c4ee:	50                   	push   %eax
43c4ef:	8b ce                	mov    %esi,%ecx
43c4f1:	e8 f7 a9 fc ff       	call   0x406eed
43c4f6:	3b 7d 0c             	cmp    0xc(%ebp),%edi
43c4f9:	74 3b                	je     0x43c536
43c4fb:	57                   	push   %edi
43c4fc:	6a 01                	push   $0x1
43c4fe:	68 0a 11 00 00       	push   $0x110a
43c503:	ff 33                	push   (%ebx)
43c505:	ff 15 70 d6 48 00    	call   *0x48d670
43c50b:	ff 45 f8             	incl   -0x8(%ebp)
43c50e:	8b f8                	mov    %eax,%edi
43c510:	85 ff                	test   %edi,%edi
43c512:	0f 85 40 ff ff ff    	jne    0x43c458
43c518:	c6 45 10 00          	movb   $0x0,0x10(%ebp)
43c51c:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43c51f:	e8 13 06 fd ff       	call   0x40cb37
43c524:	8d 4d d8             	lea    -0x28(%ebp),%ecx
43c527:	e8 0b 06 fd ff       	call   0x40cb37
43c52c:	8a 45 10             	mov    0x10(%ebp),%al
43c52f:	5f                   	pop    %edi
43c530:	5e                   	pop    %esi
43c531:	5b                   	pop    %ebx
43c532:	c9                   	leave
43c533:	c2 14 00             	ret    $0x14
43c536:	83 7e 04 00          	cmpl   $0x0,0x4(%esi)
43c53a:	74 0c                	je     0x43c548
43c53c:	68 8c 2a 4b 00       	push   $0x4b2a8c
43c541:	8b ce                	mov    %esi,%ecx
43c543:	e8 44 8c fc ff       	call   0x40518c
43c548:	80 7d 14 00          	cmpb   $0x0,0x14(%ebp)
43c54c:	74 2d                	je     0x43c57b
43c54e:	6a 0a                	push   $0xa
43c550:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43c556:	50                   	push   %eax
43c557:	ff 75 f8             	push   -0x8(%ebp)
43c55a:	e8 f8 4f fe ff       	call   0x421557
43c55f:	83 c4 0c             	add    $0xc,%esp
43c562:	8b ce                	mov    %esi,%ecx
43c564:	6a 23                	push   $0x23
43c566:	e8 2e 02 fd ff       	call   0x40c799
43c56b:	8d 85 4c ff ff ff    	lea    -0xb4(%ebp),%eax
43c571:	50                   	push   %eax
43c572:	8b ce                	mov    %esi,%ecx
43c574:	e8 13 8c fc ff       	call   0x40518c
43c579:	eb a1                	jmp    0x43c51c
43c57b:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c57e:	50                   	push   %eax
43c57f:	57                   	push   %edi
43c580:	8b cb                	mov    %ebx,%ecx
43c582:	e8 61 01 00 00       	call   0x43c6e8
43c587:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c58a:	50                   	push   %eax
43c58b:	8b ce                	mov    %esi,%ecx
43c58d:	e8 7b 8b fc ff       	call   0x40510d
43c592:	eb 88                	jmp    0x43c51c
43c594:	55                   	push   %ebp
43c595:	8b ec                	mov    %esp,%ebp
43c597:	83 ec 1c             	sub    $0x1c,%esp
43c59a:	53                   	push   %ebx
43c59b:	56                   	push   %esi
43c59c:	89 4d f8             	mov    %ecx,-0x8(%ebp)
43c59f:	33 db                	xor    %ebx,%ebx
43c5a1:	57                   	push   %edi
43c5a2:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43c5a5:	88 5d ff             	mov    %bl,-0x1(%ebp)
43c5a8:	e8 4a 12 fd ff       	call   0x40d7f7
43c5ad:	8b 75 0c             	mov    0xc(%ebp),%esi
43c5b0:	53                   	push   %ebx
43c5b1:	8b ce                	mov    %esi,%ecx
43c5b3:	e8 ee 9b fc ff       	call   0x4061a6
43c5b8:	6a 23                	push   $0x23
43c5ba:	5f                   	pop    %edi
43c5bb:	66 39 38             	cmp    %di,(%eax)
43c5be:	75 1e                	jne    0x43c5de
43c5c0:	6a 01                	push   $0x1
43c5c2:	8b ce                	mov    %esi,%ecx
43c5c4:	e8 dd 9b fc ff       	call   0x4061a6
43c5c9:	66 39 38             	cmp    %di,(%eax)
43c5cc:	74 10                	je     0x43c5de
43c5ce:	6a 01                	push   $0x1
43c5d0:	53                   	push   %ebx
43c5d1:	8b ce                	mov    %esi,%ecx
43c5d3:	e8 b3 eb fc ff       	call   0x40b18b
43c5d8:	c6 45 ff 01          	movb   $0x1,-0x1(%ebp)
43c5dc:	eb 17                	jmp    0x43c5f5
43c5de:	53                   	push   %ebx
43c5df:	8b ce                	mov    %esi,%ecx
43c5e1:	e8 c0 9b fc ff       	call   0x4061a6
43c5e6:	66 39 38             	cmp    %di,(%eax)
43c5e9:	75 0a                	jne    0x43c5f5
43c5eb:	6a 01                	push   $0x1
43c5ed:	53                   	push   %ebx
43c5ee:	8b ce                	mov    %esi,%ecx
43c5f0:	e8 96 eb fc ff       	call   0x40b18b
43c5f5:	ff 36                	push   (%esi)
43c5f7:	e8 25 50 fe ff       	call   0x421621
43c5fc:	8b 7d 08             	mov    0x8(%ebp),%edi
43c5ff:	59                   	pop    %ecx
43c600:	89 45 0c             	mov    %eax,0xc(%ebp)
43c603:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
43c607:	74 04                	je     0x43c60d
43c609:	3b c3                	cmp    %ebx,%eax
43c60b:	74 3d                	je     0x43c64a
43c60d:	8b 4d f8             	mov    -0x8(%ebp),%ecx
43c610:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c613:	50                   	push   %eax
43c614:	57                   	push   %edi
43c615:	e8 ce 00 00 00       	call   0x43c6e8
43c61a:	6a 00                	push   $0x0
43c61c:	8d 45 e8             	lea    -0x18(%ebp),%eax
43c61f:	50                   	push   %eax
43c620:	8b ce                	mov    %esi,%ecx
43c622:	e8 37 0d fe ff       	call   0x41d35e
43c627:	85 c0                	test   %eax,%eax
43c629:	74 1f                	je     0x43c64a
43c62b:	8b 45 f8             	mov    -0x8(%ebp),%eax
43c62e:	57                   	push   %edi
43c62f:	6a 01                	push   $0x1
43c631:	68 0a 11 00 00       	push   $0x110a
43c636:	ff 30                	push   (%eax)
43c638:	ff 15 70 d6 48 00    	call   *0x48d670
43c63e:	8b f8                	mov    %eax,%edi
43c640:	85 ff                	test   %edi,%edi
43c642:	74 06                	je     0x43c64a
43c644:	8b 45 0c             	mov    0xc(%ebp),%eax
43c647:	43                   	inc    %ebx
43c648:	eb b9                	jmp    0x43c603
43c64a:	8d 4d e8             	lea    -0x18(%ebp),%ecx
43c64d:	e8 e5 04 fd ff       	call   0x40cb37