41c15d:	8b f9                	mov    %ecx,%edi
41c15f:	33 db                	xor    %ebx,%ebx
41c161:	8d 57 02             	lea    0x2(%edi),%edx
41c164:	66 8b 07             	mov    (%edi),%ax
41c167:	83 c7 02             	add    $0x2,%edi
41c16a:	66 85 c0             	test   %ax,%ax
41c16d:	75 f5                	jne    0x41c164
41c16f:	2b fa                	sub    %edx,%edi
41c171:	68 24 d4 40 00       	push   $0x40d424
41c176:	51                   	push   %ecx
41c177:	d1 ff                	sar    $1,%edi
41c179:	ff 15 78 23 45 00    	call   *0x452378
41c17f:	83 c4 08             	add    $0x8,%esp
41c182:	85 c0                	test   %eax,%eax
41c184:	74 48                	je     0x41c1ce
41c186:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
41c18c:	50                   	push   %eax
41c18d:	68 fc cc 40 00       	push   $0x40ccfc
41c192:	57                   	push   %edi
41c193:	ff b5 f8 fd ff ff    	push   -0x208(%ebp)
41c199:	ff 15 e4 22 45 00    	call   *0x4522e4
41c19f:	83 c4 10             	add    $0x10,%esp
41c1a2:	83 f8 01             	cmp    $0x1,%eax
41c1a5:	0f 85 ad 04 00 00    	jne    0x41c658
41c1ab:	8b 85 f4 fd ff ff    	mov    -0x20c(%ebp),%eax
41c1b1:	83 f8 01             	cmp    $0x1,%eax
41c1b4:	0f 8c 9e 04 00 00    	jl     0x41c658
41c1ba:	bb 01 00 00 00       	mov    $0x1,%ebx
41c1bf:	89 46 20             	mov    %eax,0x20(%esi)
41c1c2:	c7 46 24 ff ff ff ff 	movl   $0xffffffff,0x24(%esi)
41c1c9:	e9 8a 04 00 00       	jmp    0x41c658
41c1ce:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
41c1d4:	50                   	push   %eax
41c1d5:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
41c1db:	50                   	push   %eax
41c1dc:	68 30 d4 40 00       	push   $0x40d430
41c1e1:	57                   	push   %edi
41c1e2:	ff b5 f8 fd ff ff    	push   -0x208(%ebp)
41c1e8:	ff 15 e4 22 45 00    	call   *0x4522e4
41c1ee:	83 c4 14             	add    $0x14,%esp
41c1f1:	83 f8 02             	cmp    $0x2,%eax
41c1f4:	75 2e                	jne    0x41c224
41c1f6:	8b 85 f4 fd ff ff    	mov    -0x20c(%ebp),%eax
41c1fc:	83 f8 01             	cmp    $0x1,%eax
41c1ff:	0f 8c 53 04 00 00    	jl     0x41c658
41c205:	8b 8d f0 fd ff ff    	mov    -0x210(%ebp),%ecx
41c20b:	83 f9 01             	cmp    $0x1,%ecx
41c20e:	0f 8c 44 04 00 00    	jl     0x41c658
41c214:	bb 01 00 00 00       	mov    $0x1,%ebx
41c219:	89 46 20             	mov    %eax,0x20(%esi)
41c21c:	89 4e 24             	mov    %ecx,0x24(%esi)
41c21f:	e9 34 04 00 00       	jmp    0x41c658
41c224:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
41c22a:	50                   	push   %eax
41c22b:	68 fc cc 40 00       	push   $0x40ccfc
41c230:	57                   	push   %edi
41c231:	ff b5 f8 fd ff ff    	push   -0x208(%ebp)
41c237:	ff 15 e4 22 45 00    	call   *0x4522e4
41c23d:	83 c4 10             	add    $0x10,%esp
41c240:	83 f8 01             	cmp    $0x1,%eax
41c243:	0f 85 0f 04 00 00    	jne    0x41c658
41c249:	8b 85 f4 fd ff ff    	mov    -0x20c(%ebp),%eax
41c24f:	83 f8 01             	cmp    $0x1,%eax
41c252:	0f 8c 00 04 00 00    	jl     0x41c658
41c258:	bb 01 00 00 00       	mov    $0x1,%ebx
41c25d:	89 46 20             	mov    %eax,0x20(%esi)
41c260:	89 46 24             	mov    %eax,0x24(%esi)
41c263:	e9 f0 03 00 00       	jmp    0x41c658
41c268:	83 7e 10 03          	cmpl   $0x3,0x10(%esi)
41c26c:	0f 85 c6 03 00 00    	jne    0x41c638
41c272:	39 5e 2c             	cmp    %ebx,0x2c(%esi)
41c275:	0f 85 bd 03 00 00    	jne    0x41c638
41c27b:	39 5e 28             	cmp    %ebx,0x28(%esi)
41c27e:	0f 85 b4 03 00 00    	jne    0x41c638
41c284:	8d 41 04             	lea    0x4(%ecx),%eax
41c287:	bb 01 00 00 00       	mov    $0x1,%ebx
41c28c:	89 46 2c             	mov    %eax,0x2c(%esi)
41c28f:	e9 c4 03 00 00       	jmp    0x41c658
41c294:	8b 46 10             	mov    0x10(%esi),%eax
41c297:	83 f8 03             	cmp    $0x3,%eax
41c29a:	75 22                	jne    0x41c2be
41c29c:	39 5e 2c             	cmp    %ebx,0x2c(%esi)
41c29f:	0f 84 93 03 00 00    	je     0x41c638
41c2a5:	39 5e 28             	cmp    %ebx,0x28(%esi)
41c2a8:	0f 85 8a 03 00 00    	jne    0x41c638
41c2ae:	8d 41 04             	lea    0x4(%ecx),%eax
41c2b1:	bb 01 00 00 00       	mov    $0x1,%ebx
41c2b6:	89 46 28             	mov    %eax,0x28(%esi)
41c2b9:	e9 9a 03 00 00       	jmp    0x41c658
41c2be:	83 f8 05             	cmp    $0x5,%eax
41c2c1:	0f 85 71 03 00 00    	jne    0x41c638
41c2c7:	81 4a 30 00 08 00 00 	orl    $0x800,0x30(%edx)
41c2ce:	0f b7 41 04          	movzwl 0x4(%ecx),%eax
41c2d2:	66 85 c0             	test   %ax,%ax
41c2d5:	74 15                	je     0x41c2ec
41c2d7:	83 f8 31             	cmp    $0x31,%eax
41c2da:	74 10                	je     0x41c2ec
41c2dc:	83 f8 32             	cmp    $0x32,%eax
41c2df:	0f 85 71 03 00 00    	jne    0x41c656
41c2e5:	b8 06 00 00 00       	mov    $0x6,%eax
41c2ea:	eb 05                	jmp    0x41c2f1
41c2ec:	b8 02 00 00 00       	mov    $0x2,%eax
41c2f1:	50                   	push   %eax
41c2f2:	6a 00                	push   $0x0
41c2f4:	51                   	push   %ecx
41c2f5:	8b 4e 50             	mov    0x50(%esi),%ecx
41c2f8:	33 d2                	xor    %edx,%edx
41c2fa:	bb 01 00 00 00       	mov    $0x1,%ebx
41c2ff:	e8 bc b7 ff ff       	call   0x417ac0
41c304:	85 c0                	test   %eax,%eax
41c306:	0f 84 4c 03 00 00    	je     0x41c658
41c30c:	e9 45 03 00 00       	jmp    0x41c656
41c311:	51                   	push   %ecx
41c312:	8d 41 04             	lea    0x4(%ecx),%eax
41c315:	ba 00 01 00 00       	mov    $0x100,%edx
41c31a:	50                   	push   %eax
41c31b:	51                   	push   %ecx
41c31c:	8d 8d fc fd ff ff    	lea    -0x204(%ebp),%ecx
41c322:	e8 89 8f ff ff       	call   0x4152b0
41c327:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
41c32d:	89 9d f0 fd ff ff    	mov    %ebx,-0x210(%ebp)
41c333:	50                   	push   %eax
41c334:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
41c33a:	89 9d f4 fd ff ff    	mov    %ebx,-0x20c(%ebp)
41c340:	50                   	push   %eax
41c341:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
41c347:	89 9d f8 fd ff ff    	mov    %ebx,-0x208(%ebp)
41c34d:	50                   	push   %eax
41c34e:	68 3c d4 40 00       	push   $0x40d43c
41c353:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
41c359:	68 00 01 00 00       	push   $0x100
41c35e:	50                   	push   %eax
41c35f:	ff 15 e4 22 45 00    	call   *0x4522e4
41c365:	83 c4 18             	add    $0x18,%esp
41c368:	83 f8 03             	cmp    $0x3,%eax
41c36b:	0f 84 9d 00 00 00    	je     0x41c40e
41c371:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
41c377:	50                   	push   %eax
41c378:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
41c37e:	50                   	push   %eax
41c37f:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
41c385:	50                   	push   %eax
41c386:	68 54 d4 40 00       	push   $0x40d454
41c38b:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
41c391:	68 00 01 00 00       	push   $0x100
41c396:	50                   	push   %eax
41c397:	ff 15 e4 22 45 00    	call   *0x4522e4
41c39d:	83 c4 18             	add    $0x18,%esp
41c3a0:	83 f8 03             	cmp    $0x3,%eax
41c3a3:	74 69                	je     0x41c40e
41c3a5:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
41c3ab:	50                   	push   %eax
41c3ac:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
41c3b2:	50                   	push   %eax
41c3b3:	68 68 d4 40 00       	push   $0x40d468
41c3b8:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
41c3be:	68 00 01 00 00       	push   $0x100
41c3c3:	50                   	push   %eax
41c3c4:	ff 15 e4 22 45 00    	call   *0x4522e4
41c3ca:	83 c4 14             	add    $0x14,%esp
41c3cd:	83 f8 02             	cmp    $0x2,%eax
41c3d0:	74 3c                	je     0x41c40e
41c3d2:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
41c3d8:	50                   	push   %eax
41c3d9:	8d 85 f4 fd ff ff    	lea    -0x20c(%ebp),%eax
41c3df:	50                   	push   %eax
41c3e0:	68 30 d4 40 00       	push   $0x40d430
41c3e5:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
41c3eb:	68 00 01 00 00       	push   $0x100
41c3f0:	50                   	push   %eax
41c3f1:	ff 15 e4 22 45 00    	call   *0x4522e4
41c3f7:	83 c4 14             	add    $0x14,%esp
41c3fa:	83 f8 02             	cmp    $0x2,%eax
41c3fd:	74 0f                	je     0x41c40e
41c3ff:	68 50 44 40 00       	push   $0x404450
41c404:	68 78 d4 40 00       	push   $0x40d478
41c409:	e9 30 02 00 00       	jmp    0x41c63e
41c40e:	8b 85 f0 fd ff ff    	mov    -0x210(%ebp),%eax
41c414:	bb 01 00 00 00       	mov    $0x1,%ebx
41c419:	89 46 08             	mov    %eax,0x8(%esi)
41c41c:	8b 85 f4 fd ff ff    	mov    -0x20c(%ebp),%eax
41c422:	89 46 34             	mov    %eax,0x34(%esi)
41c425:	8b 85 f8 fd ff ff    	mov    -0x208(%ebp),%eax
41c42b:	c7 46 10 04 00 00 00 	movl   $0x4,0x10(%esi)
41c432:	89 46 38             	mov    %eax,0x38(%esi)
41c435:	e9 1e 02 00 00       	jmp    0x41c658
41c43a:	83 7e 10 05          	cmpl   $0x5,0x10(%esi)
41c43e:	0f 85 14 02 00 00    	jne    0x41c658
41c444:	8b 46 50             	mov    0x50(%esi),%eax
41c447:	bb 01 00 00 00       	mov    $0x1,%ebx
41c44c:	85 c0                	test   %eax,%eax
41c44e:	75 45                	jne    0x41c495
41c450:	e8 9b 18 02 00       	call   0x43dcf0
41c455:	83 c0 10             	add    $0x10,%eax
41c458:	74 0a                	je     0x41c464
41c45a:	e8 91 18 02 00       	call   0x43dcf0
41c45f:	83 c0 14             	add    $0x14,%eax
41c462:	eb 02                	jmp    0x41c466
41c464:	33 c0                	xor    %eax,%eax
41c466:	81 3d 30 1a 45 00 15 	cmpl   $0xfffffc15,0x451a30
41c46d:	fc ff ff
41c470:	c7 00 84 29 40 00    	movl   $0x402984,(%eax)
41c476:	c7 40 04 0e 07 00 00 	movl   $0x70e,0x4(%eax)
41c47d:	c7 40 08 15 fc ff ff 	movl   $0xfffffc15,0x8(%eax)
41c484:	0f 85 cc 01 00 00    	jne    0x41c656
41c48a:	ff 15 58 20 45 00    	call   *0x452058
41c490:	e9 c1 01 00 00       	jmp    0x41c656
41c495:	83 08 04             	orl    $0x4,(%eax)
41c498:	89 58 20             	mov    %ebx,0x20(%eax)
41c49b:	e9 b8 01 00 00       	jmp    0x41c658
41c4a0:	83 7e 10 05          	cmpl   $0x5,0x10(%esi)
41c4a4:	0f 85 a0 00 00 00    	jne    0x41c54a
41c4aa:	8b 4e 50             	mov    0x50(%esi),%ecx
41c4ad:	85 c9                	test   %ecx,%ecx
41c4af:	75 4d                	jne    0x41c4fe
41c4b1:	e8 3a 18 02 00       	call   0x43dcf0
41c4b6:	83 c0 10             	add    $0x10,%eax
41c4b9:	74 0a                	je     0x41c4c5
41c4bb:	e8 30 18 02 00       	call   0x43dcf0
41c4c0:	83 c0 14             	add    $0x14,%eax
41c4c3:	eb 02                	jmp    0x41c4c7
41c4c5:	33 c0                	xor    %eax,%eax
41c4c7:	c7 40 04 0e 07 00 00 	movl   $0x70e,0x4(%eax)
41c4ce:	81 3d 30 1a 45 00 15 	cmpl   $0xfffffc15,0x451a30
41c4d5:	fc ff ff
41c4d8:	c7 00 84 29 40 00    	movl   $0x402984,(%eax)
41c4de:	c7 40 08 15 fc ff ff 	movl   $0xfffffc15,0x8(%eax)
41c4e5:	75 06                	jne    0x41c4ed
41c4e7:	ff 15 58 20 45 00    	call   *0x452058
41c4ed:	b8 15 fc ff ff       	mov    $0xfffffc15,%eax
41c4f2:	33 db                	xor    %ebx,%ebx
41c4f4:	85 c0                	test   %eax,%eax
41c4f6:	0f 94 c3             	sete   %bl
41c4f9:	e9 5a 01 00 00       	jmp    0x41c658
41c4fe:	83 c1 0c             	add    $0xc,%ecx
41c501:	ba 04 00 00 00       	mov    $0x4,%edx
41c506:	51                   	push   %ecx
41c507:	68 40 29 40 00       	push   $0x402940
41c50c:	51                   	push   %ecx
41c50d:	e8 9e 8d ff ff       	call   0x4152b0
41c512:	85 c0                	test   %eax,%eax
41c514:	74 26                	je     0x41c53c
41c516:	e8 d5 17 02 00       	call   0x43dcf0
41c51b:	83 c0 10             	add    $0x10,%eax
41c51e:	74 11                	je     0x41c531
41c520:	e8 cb 17 02 00       	call   0x43dcf0
41c525:	83 c0 14             	add    $0x14,%eax
41c528:	c7 40 04 3e 07 00 00 	movl   $0x73e,0x4(%eax)
41c52f:	eb 9d                	jmp    0x41c4ce
41c531:	33 c0                	xor    %eax,%eax
41c533:	c7 40 04 3e 07 00 00 	movl   $0x73e,0x4(%eax)
41c53a:	eb 92                	jmp    0x41c4ce
41c53c:	33 c0                	xor    %eax,%eax
41c53e:	33 db                	xor    %ebx,%ebx
41c540:	85 c0                	test   %eax,%eax
41c542:	0f 94 c3             	sete   %bl
41c545:	e9 0e 01 00 00       	jmp    0x41c658
41c54a:	81 4e 18 00 00 04 00 	orl    $0x40000,0x18(%esi)
41c551:	8d 56 30             	lea    0x30(%esi),%edx
41c554:	6a 00                	push   $0x0
41c556:	68 88 d4 40 00       	push   $0x40d488
41c55b:	83 c1 04             	add    $0x4,%ecx
41c55e:	e8 3d e8 ff ff       	call   0x41ada0
41c563:	8b d8                	mov    %eax,%ebx
41c565:	e9 ee 00 00 00       	jmp    0x41c658
41c56a:	81 4e 18 00 00 08 00 	orl    $0x80000,0x18(%esi)
41c571:	bb 01 00 00 00       	mov    $0x1,%ebx
41c576:	e9 dd 00 00 00       	jmp    0x41c658
41c57b:	83 7e 10 08          	cmpl   $0x8,0x10(%esi)
41c57f:	0f 85 d3 00 00 00    	jne    0x41c658
41c585:	51                   	push   %ecx
41c586:	8d 41 04             	lea    0x4(%ecx),%eax
41c589:	ba 00 01 00 00       	mov    $0x100,%edx
41c58e:	50                   	push   %eax
41c58f:	51                   	push   %ecx
41c590:	8d 8d fc fd ff ff    	lea    -0x204(%ebp),%ecx
41c596:	e8 15 8d ff ff       	call   0x4152b0
41c59b:	8d 85 f8 fd ff ff    	lea    -0x208(%ebp),%eax
41c5a1:	89 9d f0 fd ff ff    	mov    %ebx,-0x210(%ebp)
41c5a7:	50                   	push   %eax
41c5a8:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
41c5ae:	89 9d f8 fd ff ff    	mov    %ebx,-0x208(%ebp)
41c5b4:	50                   	push   %eax
41c5b5:	68 b4 d4 40 00       	push   $0x40d4b4
41c5ba:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
41c5c0:	68 00 01 00 00       	push   $0x100
41c5c5:	50                   	push   %eax
41c5c6:	ff 15 e4 22 45 00    	call   *0x4522e4
41c5cc:	83 c4 14             	add    $0x14,%esp
41c5cf:	83 f8 02             	cmp    $0x2,%eax
41c5d2:	74 3f                	je     0x41c613
41c5d4:	8d 85 f0 fd ff ff    	lea    -0x210(%ebp),%eax
41c5da:	50                   	push   %eax
41c5db:	68 c0 d4 40 00       	push   $0x40d4c0
41c5e0:	8d 85 fc fd ff ff    	lea    -0x204(%ebp),%eax
41c5e6:	68 00 01 00 00       	push   $0x100
41c5eb:	50                   	push   %eax
41c5ec:	ff 15 e4 22 45 00    	call   *0x4522e4
41c5f2:	83 c4 10             	add    $0x10,%esp
41c5f5:	83 f8 01             	cmp    $0x1,%eax
41c5f8:	74 19                	je     0x41c613
41c5fa:	6a 0a                	push   $0xa
41c5fc:	6a 0a                	push   $0xa
41c5fe:	68 80 47 40 00       	push   $0x404780
41c603:	68 8c c3 40 00       	push   $0x40c38c
41c608:	ff 15 74 23 45 00    	call   *0x452374
41c60e:	83 c4 10             	add    $0x10,%esp
41c611:	eb 45                	jmp    0x41c658
41c613:	8b 85 f0 fd ff ff    	mov    -0x210(%ebp),%eax
41c619:	85 c0                	test   %eax,%eax
41c61b:	78 dd                	js     0x41c5fa
41c61d:	8b 8d f8 fd ff ff    	mov    -0x208(%ebp),%ecx
41c623:	85 c9                	test   %ecx,%ecx
41c625:	74 04                	je     0x41c62b
41c627:	3b c8                	cmp    %eax,%ecx
41c629:	7c cf                	jl     0x41c5fa
41c62b:	89 46 3c             	mov    %eax,0x3c(%esi)
41c62e:	bb 01 00 00 00       	mov    $0x1,%ebx
41c633:	89 4e 40             	mov    %ecx,0x40(%esi)
41c636:	eb 20                	jmp    0x41c658
41c638:	51                   	push   %ecx
41c639:	68 d0 41 40 00       	push   $0x4041d0
41c63e:	ff 15 74 23 45 00    	call   *0x452374
41c644:	6a 0a                	push   $0xa
41c646:	6a 0a                	push   $0xa
41c648:	68 b0 c3 40 00       	push   $0x40c3b0
41c64d:	ff 15 74 23 45 00    	call   *0x452374
41c653:	83 c4 14             	add    $0x14,%esp
41c656:	33 db                	xor    %ebx,%ebx
41c658:	8b 4d fc             	mov    -0x4(%ebp),%ecx
41c65b:	8b c3                	mov    %ebx,%eax
41c65d:	5f                   	pop    %edi
41c65e:	5e                   	pop    %esi
41c65f:	33 cd                	xor    %ebp,%ecx
41c661:	5b                   	pop    %ebx
41c662:	e8 e9 08 03 00       	call   0x44cf50
41c667:	8b e5                	mov    %ebp,%esp
41c669:	5d                   	pop    %ebp
41c66a:	c2 08 00             	ret    $0x8
41c66d:	8d 49 00             	lea    0x0(%ecx),%ecx
41c670:	b1 bf                	mov    $0xbf,%cl
41c672:	41                   	inc    %ecx
41c673:	00 a0 c4 41 00 94    	add    %ah,-0x6bffbe3c(%eax)
41c679:	c2 41 00             	ret    $0x41
41c67c:	e1 c0                	loope  0x41c63e
41c67e:	41                   	inc    %ecx
41c67f:	00 68 c2             	add    %ch,-0x3e(%eax)
41c682:	41                   	inc    %ecx
41c683:	00 3a                	add    %bh,(%edx)
41c685:	c4 41 00             	les    0x0(%ecx),%eax