48c254:	89 7d fc             	mov    %edi,-0x4(%ebp)
48c257:	3b f9                	cmp    %ecx,%edi
48c259:	72 80                	jb     0x48c1db
48c25b:	8b 4d 10             	mov    0x10(%ebp),%ecx
48c25e:	e9 33 ff ff ff       	jmp    0x48c196
48c263:	8b 85 20 ff ff ff    	mov    -0xe0(%ebp),%eax
48c269:	eb e3                	jmp    0x48c24e
48c26b:	3b d1                	cmp    %ecx,%edx
48c26d:	0f 83 20 df f7 ff    	jae    0x40a193
48c273:	0f b7 fe             	movzwl %si,%edi
48c276:	0f b7 32             	movzwl (%edx),%esi
48c279:	83 c2 02             	add    $0x2,%edx
48c27c:	3b f7                	cmp    %edi,%esi
48c27e:	0f 84 b3 df f7 ff    	je     0x40a237
48c284:	0f b7 c0             	movzwl %ax,%eax
48c287:	3b f0                	cmp    %eax,%esi
48c289:	0f 84 a8 df f7 ff    	je     0x40a237
48c28f:	3b d1                	cmp    %ecx,%edx
48c291:	0f 83 fc de f7 ff    	jae    0x40a193
48c297:	8b 45 e8             	mov    -0x18(%ebp),%eax
48c29a:	eb da                	jmp    0x48c276
48c29c:	83 7d d8 00          	cmpl   $0x0,-0x28(%ebp)
48c2a0:	0f 85 4c dd f7 ff    	jne    0x409ff2
48c2a6:	8b 45 90             	mov    -0x70(%ebp),%eax
48c2a9:	89 45 d8             	mov    %eax,-0x28(%ebp)
48c2ac:	8b 45 fc             	mov    -0x4(%ebp),%eax
48c2af:	89 85 00 ff ff ff    	mov    %eax,-0x100(%ebp)
48c2b5:	e9 38 dd f7 ff       	jmp    0x409ff2
48c2ba:	8d 86 e4 03 00 00    	lea    0x3e4(%esi),%eax
48c2c0:	83 f8 04             	cmp    $0x4,%eax
48c2c3:	0f 87 2d dd f7 ff    	ja     0x409ff6
48c2c9:	ff 24 85 a6 c4 48 00 	jmp    *0x48c4a6(,%eax,4)
48c2d0:	8b 7d fc             	mov    -0x4(%ebp),%edi
48c2d3:	8b 85 30 ff ff ff    	mov    -0xd0(%ebp),%eax
48c2d9:	89 85 34 ff ff ff    	mov    %eax,-0xcc(%ebp)
48c2df:	8b d7                	mov    %edi,%edx
48c2e1:	e9 ef df f7 ff       	jmp    0x40a2d5
48c2e6:	8b 7d 88             	mov    -0x78(%ebp),%edi
48c2e9:	8b 55 fc             	mov    -0x4(%ebp),%edx
48c2ec:	3b fa                	cmp    %edx,%edi
48c2ee:	0f 86 78 dd f7 ff    	jbe    0x40a06c
48c2f4:	e9 dc df f7 ff       	jmp    0x40a2d5
48c2f9:	85 c0                	test   %eax,%eax
48c2fb:	74 39                	je     0x48c336
48c2fd:	3b 55 84             	cmp    -0x7c(%ebp),%edx
48c300:	0f 83 ae dd f7 ff    	jae    0x40a0b4
48c306:	ff 75 f4             	push   -0xc(%ebp)
48c309:	8d 8d 24 ff ff ff    	lea    -0xdc(%ebp),%ecx
48c30f:	51                   	push   %ecx
48c310:	ff 75 84             	push   -0x7c(%ebp)
48c313:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48c316:	8b d0                	mov    %eax,%edx
48c318:	e8 e1 cc f7 ff       	call   0x408ffe
48c31d:	8b 4d 10             	mov    0x10(%ebp),%ecx
48c320:	83 c4 0c             	add    $0xc,%esp
48c323:	85 c0                	test   %eax,%eax
48c325:	0f 85 6a de f7 ff    	jne    0x40a195
48c32b:	8b 85 20 ff ff ff    	mov    -0xe0(%ebp),%eax
48c331:	e9 7e dd f7 ff       	jmp    0x40a0b4
48c336:	8b 95 24 ff ff ff    	mov    -0xdc(%ebp),%edx
48c33c:	8b 45 84             	mov    -0x7c(%ebp),%eax
48c33f:	8d 0c 12             	lea    (%edx,%edx,1),%ecx
48c342:	2b c1                	sub    %ecx,%eax
48c344:	8b 4d fc             	mov    -0x4(%ebp),%ecx
48c347:	3b c8                	cmp    %eax,%ecx
48c349:	77 30                	ja     0x48c37b
48c34b:	66 8b 01             	mov    (%ecx),%ax
48c34e:	66 3b 85 3c ff ff ff 	cmp    -0xc4(%ebp),%ax
48c355:	75 24                	jne    0x48c37b
48c357:	83 fa 01             	cmp    $0x1,%edx
48c35a:	74 5a                	je     0x48c3b6
48c35c:	66 8b 41 02          	mov    0x2(%ecx),%ax
48c360:	8b 4d 10             	mov    0x10(%ebp),%ecx
48c363:	66 3b 85 3e ff ff ff 	cmp    -0xc2(%ebp),%ax
48c36a:	0f 84 25 de f7 ff    	je     0x40a195
48c370:	8b 85 20 ff ff ff    	mov    -0xe0(%ebp),%eax
48c376:	e9 3f dd f7 ff       	jmp    0x40a0ba
48c37b:	8b 4d 10             	mov    0x10(%ebp),%ecx
48c37e:	8b 85 20 ff ff ff    	mov    -0xe0(%ebp),%eax
48c384:	e9 31 dd f7 ff       	jmp    0x40a0ba
48c389:	83 f8 01             	cmp    $0x1,%eax
48c38c:	0f 84 6f dd f7 ff    	je     0x40a101
48c392:	83 fa 02             	cmp    $0x2,%edx
48c395:	0f 85 42 dd f7 ff    	jne    0x40a0dd
48c39b:	e9 61 dd f7 ff       	jmp    0x40a101
48c3a0:	8b 4d 10             	mov    0x10(%ebp),%ecx
48c3a3:	33 f6                	xor    %esi,%esi
48c3a5:	e9 eb dd f7 ff       	jmp    0x40a195
48c3aa:	81 fe 19 fc ff ff    	cmp    $0xfffffc19,%esi
48c3b0:	0f 84 49 dc f7 ff    	je     0x409fff
48c3b6:	8b 4d 10             	mov    0x10(%ebp),%ecx
48c3b9:	e9 d7 dd f7 ff       	jmp    0x40a195
48c3be:	ff b5 14 ff ff ff    	push   -0xec(%ebp)
48c3c4:	ff 15 0c b8 4b 00    	call   *0x4bb80c
48c3ca:	8b 4d 10             	mov    0x10(%ebp),%ecx
48c3cd:	83 c4 04             	add    $0x4,%esp
48c3d0:	e9 ca dd f7 ff       	jmp    0x40a19f
48c3d5:	8b 5d 1c             	mov    0x1c(%ebp),%ebx
48c3d8:	83 fb 01             	cmp    $0x1,%ebx
48c3db:	7e 22                	jle    0x48c3ff
48c3dd:	8b 55 08             	mov    0x8(%ebp),%edx
48c3e0:	8b 7d d8             	mov    -0x28(%ebp),%edi
48c3e3:	8b 45 18             	mov    0x18(%ebp),%eax
48c3e6:	2b fa                	sub    %edx,%edi
48c3e8:	2b ca                	sub    %edx,%ecx
48c3ea:	d1 ff                	sar    $1,%edi
48c3ec:	d1 f9                	sar    $1,%ecx
48c3ee:	89 38                	mov    %edi,(%eax)
48c3f0:	89 48 04             	mov    %ecx,0x4(%eax)
48c3f3:	83 fb 02             	cmp    $0x2,%ebx
48c3f6:	7e 07                	jle    0x48c3ff
48c3f8:	2b f2                	sub    %edx,%esi
48c3fa:	d1 fe                	sar    $1,%esi
48c3fc:	89 70 08             	mov    %esi,0x8(%eax)
48c3ff:	b8 f4 ff ff ff       	mov    $0xfffffff4,%eax
48c404:	e9 53 dc f7 ff       	jmp    0x40a05c
48c409:	83 fe 04             	cmp    $0x4,%esi
48c40c:	7c 21                	jl     0x48c42f
48c40e:	8d 04 b5 f8 ff ff ff 	lea    -0x8(,%esi,4),%eax
48c415:	50                   	push   %eax
48c416:	8b 85 14 ff ff ff    	mov    -0xec(%ebp),%eax
48c41c:	83 c0 08             	add    $0x8,%eax
48c41f:	50                   	push   %eax
48c420:	8b 45 18             	mov    0x18(%ebp),%eax
48c423:	83 c0 08             	add    $0x8,%eax
48c426:	50                   	push   %eax
48c427:	e8 54 2a f9 ff       	call   0x41ee80
48c42c:	83 c4 0c             	add    $0xc,%esp
48c42f:	39 75 98             	cmp    %esi,-0x68(%ebp)
48c432:	7e 07                	jle    0x48c43b
48c434:	81 4d 9c 00 00 01 00 	orl    $0x10000,-0x64(%ebp)
48c43b:	ff b5 14 ff ff ff    	push   -0xec(%ebp)
48c441:	ff 15 0c b8 4b 00    	call   *0x4bb80c
48c447:	83 c4 04             	add    $0x4,%esp
48c44a:	e9 bd db f7 ff       	jmp    0x40a00c
48c44f:	3b ce                	cmp    %esi,%ecx
48c451:	0f 8c c5 db f7 ff    	jl     0x40a01c
48c457:	33 f6                	xor    %esi,%esi
48c459:	e9 c7 db f7 ff       	jmp    0x40a025
48c45e:	85 c0                	test   %eax,%eax
48c460:	0f 84 d5 db f7 ff    	je     0x40a03b
48c466:	8b 55 1c             	mov    0x1c(%ebp),%edx
48c469:	8d 3c 7d 02 00 00 00 	lea    0x2(,%edi,2),%edi
48c470:	3b fa                	cmp    %edx,%edi
48c472:	7e 02                	jle    0x48c476
48c474:	8b fa                	mov    %edx,%edi
48c476:	8d 14 88             	lea    (%eax,%ecx,4),%edx
48c479:	8d 0c b8             	lea    (%eax,%edi,4),%ecx
48c47c:	3b d1                	cmp    %ecx,%edx
48c47e:	0f 83 b7 db f7 ff    	jae    0x40a03b
48c484:	2b ca                	sub    %edx,%ecx
48c486:	49                   	dec    %ecx
48c487:	c1 e9 02             	shr    $0x2,%ecx
48c48a:	41                   	inc    %ecx
48c48b:	83 c8 ff             	or     $0xffffffff,%eax
48c48e:	8b fa                	mov    %edx,%edi
48c490:	f3 ab                	rep stos %eax,%es:(%edi)
48c492:	8b 45 18             	mov    0x18(%ebp),%eax
48c495:	e9 a1 db f7 ff       	jmp    0x40a03b
48c49a:	b8 e8 ff ff ff       	mov    $0xffffffe8,%eax
48c49f:	e9 b8 db f7 ff       	jmp    0x40a05c
48c4a4:	8b ff                	mov    %edi,%edi
48c4a6:	a0 c3 48 00 69       	mov    0x690048c3,%al
48c4ab:	a0 40 00 e6 c2       	mov    0xc2e60040,%al
48c4b0:	48                   	dec    %eax
48c4b1:	00 d0                	add    %dl,%al
48c4b3:	c2 48 00             	ret    $0x48
48c4b6:	69 a0 40 00 0f b7 41 	imul   $0xffbf0241,-0x48f0ffc0(%eax),%esp
48c4bd:	02 bf ff
48c4c0:	03 00                	add    (%eax),%eax
48c4c2:	00 23                	add    %ah,(%ebx)
48c4c4:	f7 23                	mull   (%ebx)
48c4c6:	c7 c1 e6 0a 0b f0    	mov    $0xf00b0ae6,%ecx
48c4cc:	81 c6 00 00 01 00    	add    $0x10000,%esi
48c4d2:	e9 48 cb f7 ff       	jmp    0x40901f
48c4d7:	8b 45 08             	mov    0x8(%ebp),%eax
48c4da:	83 c0 fe             	add    $0xfffffffe,%eax
48c4dd:	33 d2                	xor    %edx,%edx
48c4df:	3b c8                	cmp    %eax,%ecx
48c4e1:	73 06                	jae    0x48c4e9
48c4e3:	66 39 59 02          	cmp    %bx,0x2(%ecx)
48c4e7:	74 03                	je     0x48c4ec
48c4e9:	8d 7a 01             	lea    0x1(%edx),%edi
48c4ec:	8b 4d 0c             	mov    0xc(%ebp),%ecx
48c4ef:	89 39                	mov    %edi,(%ecx)
48c4f1:	eb 08                	jmp    0x48c4fb
48c4f3:	8d 7a 01             	lea    0x1(%edx),%edi
48c4f6:	8b 45 0c             	mov    0xc(%ebp),%eax
48c4f9:	89 38                	mov    %edi,(%eax)
48c4fb:	8d 42 01             	lea    0x1(%edx),%eax
48c4fe:	e9 39 cb f7 ff       	jmp    0x40903c
48c503:	42                   	inc    %edx
48c504:	8b 45 0c             	mov    0xc(%ebp),%eax
48c507:	89 10                	mov    %edx,(%eax)
48c509:	8b c2                	mov    %edx,%eax
48c50b:	e9 2c cb f7 ff       	jmp    0x40903c
48c510:	3b f3                	cmp    %ebx,%esi
48c512:	0f 82 22 cb f7 ff    	jb     0x40903a
48c518:	33 d2                	xor    %edx,%edx
48c51a:	83 fe 0c             	cmp    $0xc,%esi
48c51d:	76 e4                	jbe    0x48c503
48c51f:	83 fe 0d             	cmp    $0xd,%esi
48c522:	74 19                	je     0x48c53d
48c524:	42                   	inc    %edx
48c525:	81 fe 85 00 00 00    	cmp    $0x85,%esi
48c52b:	74 d7                	je     0x48c504
48c52d:	8d 86 d8 df ff ff    	lea    -0x2028(%esi),%eax
48c533:	3b c2                	cmp    %edx,%eax
48c535:	0f 87 ff ca f7 ff    	ja     0x40903a
48c53b:	eb c7                	jmp    0x48c504
48c53d:	8b 45 08             	mov    0x8(%ebp),%eax
48c540:	83 c0 fe             	add    $0xfffffffe,%eax
48c543:	3b c8                	cmp    %eax,%ecx
48c545:	73 ac                	jae    0x48c4f3
48c547:	66 39 59 02          	cmp    %bx,0x2(%ecx)
48c54b:	74 a9                	je     0x48c4f6
48c54d:	eb a4                	jmp    0x48c4f3