47e1f2:	77 07                	ja     0x47e1fb
47e1f4:	42                   	inc    %edx
47e1f5:	89 95 e0 f6 ff ff    	mov    %edx,-0x920(%ebp)
47e1fb:	6a 20                	push   $0x20
47e1fd:	8b f7                	mov    %edi,%esi
47e1ff:	33 c0                	xor    %eax,%eax
47e201:	83 e7 1f             	and    $0x1f,%edi
47e204:	c1 ee 05             	shr    $0x5,%esi
47e207:	59                   	pop    %ecx
47e208:	2b cf                	sub    %edi,%ecx
47e20a:	89 bd d8 f6 ff ff    	mov    %edi,-0x928(%ebp)
47e210:	40                   	inc    %eax
47e211:	89 8d bc f6 ff ff    	mov    %ecx,-0x944(%ebp)
47e217:	33 d2                	xor    %edx,%edx
47e219:	e8 32 78 01 00       	call   0x495a50
47e21e:	8b 8c 9d 5c fc ff ff 	mov    -0x3a4(%ebp,%ebx,4),%ecx
47e225:	48                   	dec    %eax
47e226:	89 85 cc f6 ff ff    	mov    %eax,-0x934(%ebp)
47e22c:	33 d2                	xor    %edx,%edx
47e22e:	0f bd c9             	bsr    %ecx,%ecx
47e231:	f7 d0                	not    %eax
47e233:	89 95 d0 f6 ff ff    	mov    %edx,-0x930(%ebp)
47e239:	89 85 b8 f6 ff ff    	mov    %eax,-0x948(%ebp)
47e23f:	74 03                	je     0x47e244
47e241:	41                   	inc    %ecx
47e242:	eb 02                	jmp    0x47e246
47e244:	8b ca                	mov    %edx,%ecx
47e246:	8d 04 1e             	lea    (%esi,%ebx,1),%eax
47e249:	83 f8 73             	cmp    $0x73,%eax
47e24c:	76 2d                	jbe    0x47e27b
47e24e:	89 95 d4 f4 ff ff    	mov    %edx,-0xb2c(%ebp)
47e254:	89 95 5c fc ff ff    	mov    %edx,-0x3a4(%ebp)
47e25a:	52                   	push   %edx
47e25b:	8d 85 d8 f4 ff ff    	lea    -0xb28(%ebp),%eax
47e261:	50                   	push   %eax
47e262:	8d 85 60 fc ff ff    	lea    -0x3a0(%ebp),%eax
47e268:	68 cc 01 00 00       	push   $0x1cc
47e26d:	50                   	push   %eax
47e26e:	e8 68 bf ff ff       	call   0x47a1db
47e273:	83 c4 10             	add    $0x10,%esp
47e276:	e9 cd 00 00 00       	jmp    0x47e348
47e27b:	6a 20                	push   $0x20
47e27d:	58                   	pop    %eax
47e27e:	2b c1                	sub    %ecx,%eax
47e280:	3b c7                	cmp    %edi,%eax
47e282:	1b d2                	sbb    %edx,%edx
47e284:	f7 da                	neg    %edx
47e286:	03 d6                	add    %esi,%edx
47e288:	03 d3                	add    %ebx,%edx
47e28a:	89 95 dc f6 ff ff    	mov    %edx,-0x924(%ebp)
47e290:	83 fa 73             	cmp    $0x73,%edx
47e293:	76 11                	jbe    0x47e2a6
47e295:	33 c0                	xor    %eax,%eax
47e297:	89 85 d4 f4 ff ff    	mov    %eax,-0xb2c(%ebp)
47e29d:	89 85 5c fc ff ff    	mov    %eax,-0x3a4(%ebp)
47e2a3:	50                   	push   %eax
47e2a4:	eb b5                	jmp    0x47e25b
47e2a6:	8d 4a ff             	lea    -0x1(%edx),%ecx
47e2a9:	8d 46 ff             	lea    -0x1(%esi),%eax
47e2ac:	89 8d d4 f6 ff ff    	mov    %ecx,-0x92c(%ebp)
47e2b2:	3b c8                	cmp    %eax,%ecx
47e2b4:	74 7c                	je     0x47e332
47e2b6:	8b f9                	mov    %ecx,%edi
47e2b8:	8d 95 5c fc ff ff    	lea    -0x3a4(%ebp),%edx
47e2be:	2b fe                	sub    %esi,%edi
47e2c0:	8d 14 ba             	lea    (%edx,%edi,4),%edx
47e2c3:	3b fb                	cmp    %ebx,%edi
47e2c5:	73 05                	jae    0x47e2cc
47e2c7:	8b 42 04             	mov    0x4(%edx),%eax
47e2ca:	eb 02                	jmp    0x47e2ce
47e2cc:	33 c0                	xor    %eax,%eax
47e2ce:	89 85 d0 f6 ff ff    	mov    %eax,-0x930(%ebp)
47e2d4:	8d 47 ff             	lea    -0x1(%edi),%eax
47e2d7:	3b c3                	cmp    %ebx,%eax
47e2d9:	73 04                	jae    0x47e2df
47e2db:	8b 02                	mov    (%edx),%eax
47e2dd:	eb 02                	jmp    0x47e2e1
47e2df:	33 c0                	xor    %eax,%eax
47e2e1:	23 85 b8 f6 ff ff    	and    -0x948(%ebp),%eax
47e2e7:	83 ea 04             	sub    $0x4,%edx
47e2ea:	8b 8d bc f6 ff ff    	mov    -0x944(%ebp),%ecx
47e2f0:	8b 9d d0 f6 ff ff    	mov    -0x930(%ebp),%ebx
47e2f6:	23 9d cc f6 ff ff    	and    -0x934(%ebp),%ebx
47e2fc:	d3 e8                	shr    %cl,%eax
47e2fe:	8b 8d d8 f6 ff ff    	mov    -0x928(%ebp),%ecx
47e304:	d3 e3                	shl    %cl,%ebx
47e306:	8b 8d d4 f6 ff ff    	mov    -0x92c(%ebp),%ecx
47e30c:	0b c3                	or     %ebx,%eax
47e30e:	89 84 8d 60 fc ff ff 	mov    %eax,-0x3a0(%ebp,%ecx,4)
47e315:	49                   	dec    %ecx
47e316:	8d 46 ff             	lea    -0x1(%esi),%eax
47e319:	89 8d d4 f6 ff ff    	mov    %ecx,-0x92c(%ebp)
47e31f:	4f                   	dec    %edi
47e320:	3b c8                	cmp    %eax,%ecx
47e322:	74 08                	je     0x47e32c
47e324:	8b 9d 5c fc ff ff    	mov    -0x3a4(%ebp),%ebx
47e32a:	eb 97                	jmp    0x47e2c3
47e32c:	8b 95 dc f6 ff ff    	mov    -0x924(%ebp),%edx
47e332:	85 f6                	test   %esi,%esi
47e334:	74 0c                	je     0x47e342
47e336:	8b ce                	mov    %esi,%ecx
47e338:	8d bd 60 fc ff ff    	lea    -0x3a0(%ebp),%edi
47e33e:	33 c0                	xor    %eax,%eax
47e340:	f3 ab                	rep stos %eax,%es:(%edi)
47e342:	89 95 5c fc ff ff    	mov    %edx,-0x3a4(%ebp)
47e348:	8d 85 8c fa ff ff    	lea    -0x574(%ebp),%eax
47e34e:	50                   	push   %eax
47e34f:	8d 85 5c fc ff ff    	lea    -0x3a4(%ebp),%eax
47e355:	50                   	push   %eax
47e356:	e8 05 02 00 00       	call   0x47e560
47e35b:	83 bd 5c fc ff ff 00 	cmpl   $0x0,-0x3a4(%ebp)
47e362:	8b f8                	mov    %eax,%edi
47e364:	8b da                	mov    %edx,%ebx
47e366:	0f 94 c0             	sete   %al
47e369:	88 85 d8 f6 ff ff    	mov    %al,-0x928(%ebp)
47e36f:	59                   	pop    %ecx
47e370:	59                   	pop    %ecx
47e371:	85 db                	test   %ebx,%ebx
47e373:	75 11                	jne    0x47e386
47e375:	83 ff ff             	cmp    $0xffffffff,%edi
47e378:	77 0c                	ja     0x47e386
47e37a:	0f bd f7             	bsr    %edi,%esi
47e37d:	74 03                	je     0x47e382
47e37f:	46                   	inc    %esi
47e380:	eb 11                	jmp    0x47e393
47e382:	33 f6                	xor    %esi,%esi
47e384:	eb 0d                	jmp    0x47e393
47e386:	0f bd f3             	bsr    %ebx,%esi
47e389:	74 03                	je     0x47e38e
47e38b:	46                   	inc    %esi
47e38c:	eb 02                	jmp    0x47e390
47e38e:	33 f6                	xor    %esi,%esi
47e390:	83 c6 20             	add    $0x20,%esi
47e393:	8b 8d b0 f6 ff ff    	mov    -0x950(%ebp),%ecx
47e399:	3b f1                	cmp    %ecx,%esi
47e39b:	76 3d                	jbe    0x47e3da
47e39d:	2b f1                	sub    %ecx,%esi
47e39f:	84 c0                	test   %al,%al
47e3a1:	74 21                	je     0x47e3c4
47e3a3:	33 c0                	xor    %eax,%eax
47e3a5:	33 d2                	xor    %edx,%edx
47e3a7:	40                   	inc    %eax
47e3a8:	8b ce                	mov    %esi,%ecx
47e3aa:	e8 a1 76 01 00       	call   0x495a50
47e3af:	83 c0 ff             	add    $0xffffffff,%eax
47e3b2:	c6 85 d8 f6 ff ff 01 	movb   $0x1,-0x928(%ebp)
47e3b9:	83 d2 ff             	adc    $0xffffffff,%edx
47e3bc:	23 c7                	and    %edi,%eax
47e3be:	23 d3                	and    %ebx,%edx
47e3c0:	0b c2                	or     %edx,%eax
47e3c2:	74 07                	je     0x47e3cb
47e3c4:	c6 85 d8 f6 ff ff 00 	movb   $0x0,-0x928(%ebp)
47e3cb:	8b c7                	mov    %edi,%eax
47e3cd:	8b d3                	mov    %ebx,%edx
47e3cf:	8b ce                	mov    %esi,%ecx
47e3d1:	e8 9a 76 01 00       	call   0x495a70
47e3d6:	8b f8                	mov    %eax,%edi
47e3d8:	8b da                	mov    %edx,%ebx
47e3da:	8b 8d b0 f6 ff ff    	mov    -0x950(%ebp),%ecx
47e3e0:	33 c0                	xor    %eax,%eax
47e3e2:	3b 85 e8 f6 ff ff    	cmp    -0x918(%ebp),%eax
47e3e8:	1b f6                	sbb    %esi,%esi
47e3ea:	40                   	inc    %eax
47e3eb:	23 b5 30 fe ff ff    	and    -0x1d0(%ebp),%esi
47e3f1:	3b 85 e8 f6 ff ff    	cmp    -0x918(%ebp),%eax
47e3f7:	1b d2                	sbb    %edx,%edx
47e3f9:	33 c0                	xor    %eax,%eax
47e3fb:	23 95 34 fe ff ff    	and    -0x1cc(%ebp),%edx
47e401:	03 c6                	add    %esi,%eax
47e403:	83 d2 00             	adc    $0x0,%edx
47e406:	e8 45 76 01 00       	call   0x495a50
47e40b:	8b 8d c4 f6 ff ff    	mov    -0x93c(%ebp),%ecx
47e411:	8b f0                	mov    %eax,%esi
47e413:	03 f7                	add    %edi,%esi
47e415:	13 d3                	adc    %ebx,%edx
47e417:	85 c9                	test   %ecx,%ecx
47e419:	74 05                	je     0x47e420
47e41b:	83 c1 fe             	add    $0xfffffffe,%ecx
47e41e:	eb 08                	jmp    0x47e428
47e420:	8b 8d e0 f6 ff ff    	mov    -0x920(%ebp),%ecx
47e426:	f7 d1                	not    %ecx
47e428:	ff b5 ac f6 ff ff    	push   -0x954(%ebp)
47e42e:	8b 85 b4 f6 ff ff    	mov    -0x94c(%ebp),%eax
47e434:	ff b5 d8 f6 ff ff    	push   -0x928(%ebp)
47e43a:	0f b6 80 08 03 00 00 	movzbl 0x308(%eax),%eax
47e441:	50                   	push   %eax
47e442:	51                   	push   %ecx
47e443:	52                   	push   %edx
47e444:	56                   	push   %esi
47e445:	e8 85 dd ff ff       	call   0x47c1cf
47e44a:	83 c4 18             	add    $0x18,%esp
47e44d:	eb 37                	jmp    0x47e486
47e44f:	8b 85 a4 f6 ff ff    	mov    -0x95c(%ebp),%eax
47e455:	3b 85 a8 f6 ff ff    	cmp    -0x958(%ebp),%eax
47e45b:	ff b5 ac f6 ff ff    	push   -0x954(%ebp)
47e461:	0f 95 c0             	setne  %al
47e464:	0f b6 c0             	movzbl %al,%eax
47e467:	50                   	push   %eax
47e468:	8b 85 b4 f6 ff ff    	mov    -0x94c(%ebp),%eax
47e46e:	0f b6 80 08 03 00 00 	movzbl 0x308(%eax),%eax
47e475:	50                   	push   %eax
47e476:	51                   	push   %ecx
47e477:	8d 85 2c fe ff ff    	lea    -0x1d4(%ebp),%eax
47e47d:	50                   	push   %eax
47e47e:	e8 a5 e0 ff ff       	call   0x47c528
47e483:	83 c4 14             	add    $0x14,%esp
47e486:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47e489:	5f                   	pop    %edi
47e48a:	5e                   	pop    %esi
47e48b:	33 cd                	xor    %ebp,%ecx
47e48d:	5b                   	pop    %ebx
47e48e:	e8 37 b5 fe ff       	call   0x4699ca
47e493:	c9                   	leave
47e494:	c3                   	ret
47e495:	8b ff                	mov    %edi,%edi
47e497:	55                   	push   %ebp
47e498:	8b ec                	mov    %esp,%ebp
47e49a:	51                   	push   %ecx
47e49b:	51                   	push   %ecx
47e49c:	8b 45 0c             	mov    0xc(%ebp),%eax
47e49f:	8b 4d 08             	mov    0x8(%ebp),%ecx
47e4a2:	53                   	push   %ebx
47e4a3:	56                   	push   %esi
47e4a4:	33 db                	xor    %ebx,%ebx
47e4a6:	57                   	push   %edi
47e4a7:	33 ff                	xor    %edi,%edi
47e4a9:	8d 71 08             	lea    0x8(%ecx),%esi
47e4ac:	8b d7                	mov    %edi,%edx
47e4ae:	38 50 04             	cmp    %dl,0x4(%eax)
47e4b1:	8b 41 04             	mov    0x4(%ecx),%eax
47e4b4:	0f 94 c3             	sete   %bl
47e4b7:	89 55 fc             	mov    %edx,-0x4(%ebp)
47e4ba:	4b                   	dec    %ebx
47e4bb:	83 c0 08             	add    $0x8,%eax
47e4be:	83 e3 1d             	and    $0x1d,%ebx
47e4c1:	03 c1                	add    %ecx,%eax
47e4c3:	83 c3 17             	add    $0x17,%ebx
47e4c6:	89 45 f8             	mov    %eax,-0x8(%ebp)
47e4c9:	03 19                	add    (%ecx),%ebx
47e4cb:	3b f0                	cmp    %eax,%esi
47e4cd:	74 36                	je     0x47e505
47e4cf:	8b 4d 0c             	mov    0xc(%ebp),%ecx
47e4d2:	e8 34 05 00 00       	call   0x47ea0b
47e4d7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
47e4da:	3b ca                	cmp    %edx,%ecx
47e4dc:	77 21                	ja     0x47e4ff
47e4de:	72 04                	jb     0x47e4e4
47e4e0:	3b f8                	cmp    %eax,%edi
47e4e2:	77 1b                	ja     0x47e4ff
47e4e4:	0f b6 06             	movzbl (%esi),%eax
47e4e7:	46                   	inc    %esi
47e4e8:	0f a4 f9 04          	shld   $0x4,%edi,%ecx
47e4ec:	99                   	cltd
47e4ed:	c1 e7 04             	shl    $0x4,%edi
47e4f0:	03 f8                	add    %eax,%edi
47e4f2:	13 ca                	adc    %edx,%ecx
47e4f4:	83 eb 04             	sub    $0x4,%ebx
47e4f7:	89 4d fc             	mov    %ecx,-0x4(%ebp)
47e4fa:	3b 75 f8             	cmp    -0x8(%ebp),%esi
47e4fd:	75 d0                	jne    0x47e4cf
47e4ff:	8b 4d 08             	mov    0x8(%ebp),%ecx
47e502:	8b 55 fc             	mov    -0x4(%ebp),%edx
47e505:	b0 01                	mov    $0x1,%al
47e507:	eb 0c                	jmp    0x47e515
47e509:	84 c0                	test   %al,%al
47e50b:	74 10                	je     0x47e51d
47e50d:	8a 06                	mov    (%esi),%al
47e50f:	46                   	inc    %esi
47e510:	84 c0                	test   %al,%al
47e512:	0f 94 c0             	sete   %al
47e515:	88 45 fc             	mov    %al,-0x4(%ebp)
47e518:	3b 75 f8             	cmp    -0x8(%ebp),%esi
47e51b:	75 ec                	jne    0x47e509
47e51d:	ff 75 0c             	push   0xc(%ebp)
47e520:	0f b6 81 08 03 00 00 	movzbl 0x308(%ecx),%eax
47e527:	ff 75 fc             	push   -0x4(%ebp)
47e52a:	50                   	push   %eax
47e52b:	53                   	push   %ebx
47e52c:	52                   	push   %edx
47e52d:	57                   	push   %edi
47e52e:	e8 9c dc ff ff       	call   0x47c1cf
47e533:	83 c4 18             	add    $0x18,%esp
47e536:	5f                   	pop    %edi
47e537:	5e                   	pop    %esi
47e538:	5b                   	pop    %ebx
47e539:	c9                   	leave
47e53a:	c3                   	ret
47e53b:	80 79 04 00          	cmpb   $0x0,0x4(%ecx)
47e53f:	74 09                	je     0x47e54a
47e541:	83 c8 ff             	or     $0xffffffff,%eax
47e544:	ba ff ff 0f 00       	mov    $0xfffff,%edx
47e549:	c3                   	ret
47e54a:	b8 ff ff 7f 00       	mov    $0x7fffff,%eax
47e54f:	33 d2                	xor    %edx,%edx
47e551:	c3                   	ret
47e552:	cc                   	int3
47e553:	cc                   	int3
47e554:	cc                   	int3
47e555:	cc                   	int3
47e556:	cc                   	int3
47e557:	cc                   	int3
47e558:	cc                   	int3
47e559:	cc                   	int3
47e55a:	cc                   	int3
47e55b:	cc                   	int3
47e55c:	cc                   	int3
47e55d:	cc                   	int3
47e55e:	cc                   	int3
47e55f:	cc                   	int3
47e560:	8b ff                	mov    %edi,%edi
47e562:	55                   	push   %ebp
47e563:	8b ec                	mov    %esp,%ebp
47e565:	81 ec 20 02 00 00    	sub    $0x220,%esp
47e56b:	8b 4d 08             	mov    0x8(%ebp),%ecx
47e56e:	53                   	push   %ebx
47e56f:	56                   	push   %esi
47e570:	57                   	push   %edi
47e571:	8b 01                	mov    (%ecx),%eax
47e573:	89 45 f8             	mov    %eax,-0x8(%ebp)
47e576:	85 c0                	test   %eax,%eax
47e578:	0f 84 82 04 00 00    	je     0x47ea00
47e57e:	8b 7d 0c             	mov    0xc(%ebp),%edi
47e581:	8b 37                	mov    (%edi),%esi
47e583:	89 75 ec             	mov    %esi,-0x14(%ebp)
47e586:	85 f6                	test   %esi,%esi
47e588:	0f 84 72 04 00 00    	je     0x47ea00
47e58e:	48                   	dec    %eax
47e58f:	89 45 f4             	mov    %eax,-0xc(%ebp)
47e592:	83 c6 ff             	add    $0xffffffff,%esi
47e595:	0f 85 3e 01 00 00    	jne    0x47e6d9
47e59b:	8b 5f 04             	mov    0x4(%edi),%ebx
47e59e:	83 fb 01             	cmp    $0x1,%ebx
47e5a1:	75 3b                	jne    0x47e5de
47e5a3:	8b 55 08             	mov    0x8(%ebp),%edx
47e5a6:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
47e5ac:	8b 71 04             	mov    0x4(%ecx),%esi
47e5af:	83 c1 04             	add    $0x4,%ecx
47e5b2:	6a 00                	push   $0x0
47e5b4:	50                   	push   %eax
47e5b5:	68 cc 01 00 00       	push   $0x1cc
47e5ba:	51                   	push   %ecx
47e5bb:	c7 85 e0 fd ff ff 00 	movl   $0x0,-0x220(%ebp)
47e5c2:	00 00 00
47e5c5:	c7 02 00 00 00 00    	movl   $0x0,(%edx)
47e5cb:	e8 0b bc ff ff       	call   0x47a1db
47e5d0:	83 c4 10             	add    $0x10,%esp
47e5d3:	8b c6                	mov    %esi,%eax
47e5d5:	33 d2                	xor    %edx,%edx
47e5d7:	5f                   	pop    %edi
47e5d8:	5e                   	pop    %esi