aaf3f1:	b8 ff ff 00 00       	mov    $0xffff,%eax
aaf3f6:	66 3b d0             	cmp    %ax,%dx
aaf3f9:	75 04                	jne    0xaaf3ff
aaf3fb:	32 c0                	xor    %al,%al
aaf3fd:	eb 33                	jmp    0xaaf432
aaf3ff:	8b 45 08             	mov    0x8(%ebp),%eax
aaf402:	83 e8 00             	sub    $0x0,%eax
aaf405:	74 29                	je     0xaaf430
aaf407:	83 e8 01             	sub    $0x1,%eax
aaf40a:	74 12                	je     0xaaf41e
aaf40c:	83 e8 07             	sub    $0x7,%eax
aaf40f:	75 ea                	jne    0xaaf3fb
aaf411:	52                   	push   %edx
aaf412:	83 c1 4c             	add    $0x4c,%ecx
aaf415:	e8 0f 4d 95 ff       	call   0x404129
aaf41a:	84 c0                	test   %al,%al
aaf41c:	eb 0d                	jmp    0xaaf42b
aaf41e:	8d 42 f7             	lea    -0x9(%edx),%eax
aaf421:	66 83 f8 04          	cmp    $0x4,%ax
aaf425:	76 d4                	jbe    0xaaf3fb
aaf427:	66 83 fa 20          	cmp    $0x20,%dx
aaf42b:	0f 95 c0             	setne  %al
aaf42e:	eb 02                	jmp    0xaaf432
aaf430:	b0 01                	mov    $0x1,%al
aaf432:	5d                   	pop    %ebp
aaf433:	c2 08 00             	ret    $0x8
aaf436:	cc                   	int3
aaf437:	cc                   	int3
aaf438:	cc                   	int3
aaf439:	cc                   	int3
aaf43a:	cc                   	int3
aaf43b:	cc                   	int3
aaf43c:	cc                   	int3
aaf43d:	cc                   	int3
aaf43e:	cc                   	int3
aaf43f:	cc                   	int3
aaf440:	cc                   	int3
aaf441:	cc                   	int3
aaf442:	cc                   	int3
aaf443:	cc                   	int3
aaf444:	cc                   	int3
aaf445:	cc                   	int3
aaf446:	cc                   	int3
aaf447:	cc                   	int3
aaf448:	cc                   	int3
aaf449:	8b ff                	mov    %edi,%edi
aaf44b:	55                   	push   %ebp
aaf44c:	8b ec                	mov    %esp,%ebp
aaf44e:	8b 4d 08             	mov    0x8(%ebp),%ecx
aaf451:	8d 41 d0             	lea    -0x30(%ecx),%eax
aaf454:	83 f8 09             	cmp    $0x9,%eax
aaf457:	77 04                	ja     0xaaf45d
aaf459:	b0 01                	mov    $0x1,%al
aaf45b:	5d                   	pop    %ebp
aaf45c:	c3                   	ret
aaf45d:	8d 41 9f             	lea    -0x61(%ecx),%eax
aaf460:	83 f8 19             	cmp    $0x19,%eax
aaf463:	76 f4                	jbe    0xaaf459
aaf465:	8d 41 bf             	lea    -0x41(%ecx),%eax
aaf468:	83 f8 19             	cmp    $0x19,%eax
aaf46b:	76 ec                	jbe    0xaaf459
aaf46d:	83 f9 5f             	cmp    $0x5f,%ecx
aaf470:	0f 94 c0             	sete   %al
aaf473:	5d                   	pop    %ebp
aaf474:	c3                   	ret
aaf475:	cc                   	int3
aaf476:	cc                   	int3
aaf477:	cc                   	int3
aaf478:	cc                   	int3
aaf479:	cc                   	int3
aaf47a:	cc                   	int3
aaf47b:	cc                   	int3
aaf47c:	cc                   	int3
aaf47d:	cc                   	int3
aaf47e:	cc                   	int3
aaf47f:	cc                   	int3
aaf480:	8a 41 04             	mov    0x4(%ecx),%al
aaf483:	c3                   	ret
aaf484:	8b ff                	mov    %edi,%edi
aaf486:	55                   	push   %ebp
aaf487:	8b ec                	mov    %esp,%ebp
aaf489:	6b 55 08 0c          	imul   $0xc,0x8(%ebp),%edx
aaf48d:	33 c0                	xor    %eax,%eax
aaf48f:	8b 4d 0c             	mov    0xc(%ebp),%ecx
aaf492:	38 84 0a b0 f6 c7 00 	cmp    %al,0xc7f6b0(%edx,%ecx,1)
aaf499:	0f 95 c0             	setne  %al
aaf49c:	5d                   	pop    %ebp
aaf49d:	c3                   	ret
aaf49e:	cc                   	int3
aaf49f:	cc                   	int3
aaf4a0:	cc                   	int3
aaf4a1:	cc                   	int3
aaf4a2:	cc                   	int3
aaf4a3:	cc                   	int3
aaf4a4:	33 c0                	xor    %eax,%eax
aaf4a6:	85 c9                	test   %ecx,%ecx
aaf4a8:	0f 95 c0             	setne  %al
aaf4ab:	c3                   	ret
aaf4ac:	cc                   	int3
aaf4ad:	cc                   	int3
aaf4ae:	e8 92 a3 95 ff       	call   0x409845
aaf4b3:	f7 d8                	neg    %eax
aaf4b5:	1b c0                	sbb    %eax,%eax
aaf4b7:	f7 d8                	neg    %eax
aaf4b9:	c3                   	ret
aaf4ba:	cc                   	int3
aaf4bb:	cc                   	int3
aaf4bc:	cc                   	int3
aaf4bd:	33 c0                	xor    %eax,%eax
aaf4bf:	39 01                	cmp    %eax,(%ecx)
aaf4c1:	0f 95 c0             	setne  %al
aaf4c4:	c3                   	ret
aaf4c5:	cc                   	int3
aaf4c6:	cc                   	int3
aaf4c7:	8b 41 10             	mov    0x10(%ecx),%eax
aaf4ca:	c3                   	ret
aaf4cb:	8b 41 10             	mov    0x10(%ecx),%eax
aaf4ce:	c3                   	ret
aaf4cf:	8b 41 28             	mov    0x28(%ecx),%eax
aaf4d2:	85 c0                	test   %eax,%eax
aaf4d4:	78 19                	js     0xaaf4ef
aaf4d6:	83 f8 01             	cmp    $0x1,%eax
aaf4d9:	7e 2b                	jle    0xaaf506
aaf4db:	83 f8 06             	cmp    $0x6,%eax
aaf4de:	7e 1c                	jle    0xaaf4fc
aaf4e0:	83 f8 07             	cmp    $0x7,%eax
aaf4e3:	74 0d                	je     0xaaf4f2
aaf4e5:	83 f8 08             	cmp    $0x8,%eax
aaf4e8:	74 1c                	je     0xaaf506
aaf4ea:	83 f8 09             	cmp    $0x9,%eax
aaf4ed:	74 0d                	je     0xaaf4fc
aaf4ef:	33 c0                	xor    %eax,%eax
aaf4f1:	c3                   	ret
aaf4f2:	ff 71 20             	push   0x20(%ecx)
aaf4f5:	e8 83 32 97 ff       	call   0x42277d
aaf4fa:	eb 08                	jmp    0xaaf504
aaf4fc:	ff 71 20             	push   0x20(%ecx)
aaf4ff:	e8 02 2e 95 ff       	call   0x402306
aaf504:	59                   	pop    %ecx
aaf505:	c3                   	ret
aaf506:	33 c0                	xor    %eax,%eax
aaf508:	38 41 24             	cmp    %al,0x24(%ecx)
aaf50b:	0f 95 c0             	setne  %al
aaf50e:	40                   	inc    %eax
aaf50f:	c3                   	ret
aaf510:	cc                   	int3
aaf511:	cc                   	int3
aaf512:	cc                   	int3
aaf513:	cc                   	int3
aaf514:	cc                   	int3
aaf515:	cc                   	int3
aaf516:	cc                   	int3
aaf517:	cc                   	int3
aaf518:	cc                   	int3
aaf519:	cc                   	int3
aaf51a:	cc                   	int3
aaf51b:	cc                   	int3
aaf51c:	cc                   	int3
aaf51d:	cc                   	int3
aaf51e:	cc                   	int3
aaf51f:	cc                   	int3
aaf520:	8b 41 30             	mov    0x30(%ecx),%eax
aaf523:	85 c0                	test   %eax,%eax
aaf525:	78 19                	js     0xaaf540
aaf527:	83 f8 01             	cmp    $0x1,%eax
aaf52a:	7e 2b                	jle    0xaaf557
aaf52c:	83 f8 06             	cmp    $0x6,%eax
aaf52f:	7e 1c                	jle    0xaaf54d
aaf531:	83 f8 07             	cmp    $0x7,%eax
aaf534:	74 0d                	je     0xaaf543
aaf536:	83 f8 08             	cmp    $0x8,%eax
aaf539:	74 1c                	je     0xaaf557
aaf53b:	83 f8 09             	cmp    $0x9,%eax
aaf53e:	74 0d                	je     0xaaf54d
aaf540:	33 c0                	xor    %eax,%eax
aaf542:	c3                   	ret
aaf543:	ff 71 28             	push   0x28(%ecx)
aaf546:	e8 32 32 97 ff       	call   0x42277d
aaf54b:	eb 08                	jmp    0xaaf555
aaf54d:	ff 71 28             	push   0x28(%ecx)
aaf550:	e8 b1 2d 95 ff       	call   0x402306
aaf555:	59                   	pop    %ecx
aaf556:	c3                   	ret
aaf557:	33 c0                	xor    %eax,%eax
aaf559:	38 41 2c             	cmp    %al,0x2c(%ecx)
aaf55c:	0f 95 c0             	setne  %al
aaf55f:	40                   	inc    %eax
aaf560:	c3                   	ret
aaf561:	cc                   	int3
aaf562:	cc                   	int3
aaf563:	cc                   	int3
aaf564:	cc                   	int3
aaf565:	cc                   	int3
aaf566:	cc                   	int3
aaf567:	cc                   	int3
aaf568:	cc                   	int3
aaf569:	cc                   	int3
aaf56a:	cc                   	int3
aaf56b:	cc                   	int3
aaf56c:	cc                   	int3
aaf56d:	cc                   	int3
aaf56e:	cc                   	int3
aaf56f:	cc                   	int3
aaf570:	cc                   	int3
aaf571:	8a 41 14             	mov    0x14(%ecx),%al
aaf574:	c3                   	ret
aaf575:	66 8b 41 14          	mov    0x14(%ecx),%ax
aaf579:	c3                   	ret
aaf57a:	8a 41 15             	mov    0x15(%ecx),%al
aaf57d:	c3                   	ret
aaf57e:	cc                   	int3
aaf57f:	cc                   	int3
aaf580:	8b ff                	mov    %edi,%edi
aaf582:	55                   	push   %ebp
aaf583:	8b ec                	mov    %esp,%ebp
aaf585:	8b 45 08             	mov    0x8(%ebp),%eax
aaf588:	33 d2                	xor    %edx,%edx
aaf58a:	8b 4d 0c             	mov    0xc(%ebp),%ecx
aaf58d:	89 48 04             	mov    %ecx,0x4(%eax)
aaf590:	8b 4d 10             	mov    0x10(%ebp),%ecx
aaf593:	85 c9                	test   %ecx,%ecx
aaf595:	89 48 08             	mov    %ecx,0x8(%eax)
aaf598:	0f 95 c2             	setne  %dl
aaf59b:	42                   	inc    %edx
aaf59c:	89 10                	mov    %edx,(%eax)
aaf59e:	5d                   	pop    %ebp
aaf59f:	c3                   	ret
aaf5a0:	cc                   	int3
aaf5a1:	cc                   	int3
aaf5a2:	cc                   	int3
aaf5a3:	cc                   	int3
aaf5a4:	cc                   	int3
aaf5a5:	cc                   	int3
aaf5a6:	cc                   	int3
aaf5a7:	cc                   	int3
aaf5a8:	33 c0                	xor    %eax,%eax
aaf5aa:	38 41 04             	cmp    %al,0x4(%ecx)
aaf5ad:	0f 94 c0             	sete   %al
aaf5b0:	48                   	dec    %eax
aaf5b1:	83 e0 1d             	and    $0x1d,%eax
aaf5b4:	83 c0 18             	add    $0x18,%eax
aaf5b7:	c3                   	ret
aaf5b8:	cc                   	int3
aaf5b9:	cc                   	int3
aaf5ba:	cc                   	int3
aaf5bb:	cc                   	int3
aaf5bc:	33 c0                	xor    %eax,%eax
aaf5be:	38 41 04             	cmp    %al,0x4(%ecx)
aaf5c1:	0f 94 c0             	sete   %al
aaf5c4:	48                   	dec    %eax
aaf5c5:	25 80 03 00 00       	and    $0x380,%eax
aaf5ca:	83 c0 7f             	add    $0x7f,%eax
aaf5cd:	c3                   	ret
aaf5ce:	cc                   	int3
aaf5cf:	cc                   	int3
aaf5d0:	cc                   	int3
aaf5d1:	cc                   	int3
aaf5d2:	33 c0                	xor    %eax,%eax
aaf5d4:	38 41 04             	cmp    %al,0x4(%ecx)
aaf5d7:	0f 94 c0             	sete   %al
aaf5da:	48                   	dec    %eax
aaf5db:	25 80 fc ff ff       	and    $0xfffffc80,%eax
aaf5e0:	83 c0 82             	add    $0xffffff82,%eax
aaf5e3:	c3                   	ret
aaf5e4:	cc                   	int3
aaf5e5:	cc                   	int3
aaf5e6:	cc                   	int3
aaf5e7:	cc                   	int3
aaf5e8:	8b 41 28             	mov    0x28(%ecx),%eax
aaf5eb:	c3                   	ret
aaf5ec:	8b 41 30             	mov    0x30(%ecx),%eax
aaf5ef:	c3                   	ret
aaf5f0:	8b ff                	mov    %edi,%edi
aaf5f2:	55                   	push   %ebp
aaf5f3:	8b ec                	mov    %esp,%ebp
aaf5f5:	81 ec c0 03 00 00    	sub    $0x3c0,%esp
aaf5fb:	a1 24 f6 d5 00       	mov    0xd5f624,%eax
aaf600:	33 c5                	xor    %ebp,%eax
aaf602:	89 45 fc             	mov    %eax,-0x4(%ebp)
aaf605:	8b 4d 0c             	mov    0xc(%ebp),%ecx
aaf608:	53                   	push   %ebx
aaf609:	8b 5d 08             	mov    0x8(%ebp),%ebx
aaf60c:	56                   	push   %esi
aaf60d:	8b 11                	mov    (%ecx),%edx
aaf60f:	89 9d 20 fe ff ff    	mov    %ebx,-0x1e0(%ebp)
aaf615:	57                   	push   %edi
aaf616:	83 fa 01             	cmp    $0x1,%edx
aaf619:	0f 87 c9 00 00 00    	ja     0xaaf6e8
aaf61f:	8b 79 04             	mov    0x4(%ecx),%edi
aaf622:	85 ff                	test   %edi,%edi
aaf624:	75 1e                	jne    0xaaf644
aaf626:	57                   	push   %edi
aaf627:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
aaf62d:	89 bd 2c fe ff ff    	mov    %edi,-0x1d4(%ebp)
aaf633:	50                   	push   %eax
aaf634:	68 cc 01 00 00       	push   $0x1cc
aaf639:	8d 43 04             	lea    0x4(%ebx),%eax
aaf63c:	89 3b                	mov    %edi,(%ebx)
aaf63e:	50                   	push   %eax
aaf63f:	e9 05 03 00 00       	jmp    0xaaf949
aaf644:	83 ff 01             	cmp    $0x1,%edi
aaf647:	0f 84 04 03 00 00    	je     0xaaf951
aaf64d:	8b 03                	mov    (%ebx),%eax
aaf64f:	85 c0                	test   %eax,%eax
aaf651:	0f 84 fa 02 00 00    	je     0xaaf951
aaf657:	8d 53 04             	lea    0x4(%ebx),%edx
aaf65a:	33 f6                	xor    %esi,%esi
aaf65c:	89 95 24 fe ff ff    	mov    %edx,-0x1dc(%ebp)
aaf662:	33 c9                	xor    %ecx,%ecx
aaf664:	8b d8                	mov    %eax,%ebx
aaf666:	8b c7                	mov    %edi,%eax
aaf668:	f7 24 8a             	mull   (%edx,%ecx,4)
aaf66b:	03 c6                	add    %esi,%eax
aaf66d:	83 d2 00             	adc    $0x0,%edx
aaf670:	8b f2                	mov    %edx,%esi
aaf672:	8b 95 24 fe ff ff    	mov    -0x1dc(%ebp),%edx
aaf678:	89 04 8a             	mov    %eax,(%edx,%ecx,4)
aaf67b:	41                   	inc    %ecx
aaf67c:	3b cb                	cmp    %ebx,%ecx
aaf67e:	75 e6                	jne    0xaaf666
aaf680:	8b 9d 20 fe ff ff    	mov    -0x1e0(%ebp),%ebx
aaf686:	85 f6                	test   %esi,%esi
aaf688:	0f 84 c3 02 00 00    	je     0xaaf951
aaf68e:	8b 03                	mov    (%ebx),%eax
aaf690:	83 f8 73             	cmp    $0x73,%eax
aaf693:	73 19                	jae    0xaaf6ae
aaf695:	89 74 83 04          	mov    %esi,0x4(%ebx,%eax,4)
aaf699:	b0 01                	mov    $0x1,%al
aaf69b:	ff 03                	incl   (%ebx)
aaf69d:	5f                   	pop    %edi
aaf69e:	5e                   	pop    %esi
aaf69f:	5b                   	pop    %ebx
aaf6a0:	8b 4d fc             	mov    -0x4(%ebp),%ecx
aaf6a3:	33 cd                	xor    %ebp,%ecx
aaf6a5:	e8 0c c1 96 ff       	call   0x41b7b6
aaf6aa:	8b e5                	mov    %ebp,%esp
aaf6ac:	5d                   	pop    %ebp
aaf6ad:	c3                   	ret
aaf6ae:	6a 00                	push   $0x0
aaf6b0:	8d 85 30 fe ff ff    	lea    -0x1d0(%ebp),%eax
aaf6b6:	c7 85 2c fe ff ff 00 	movl   $0x0,-0x1d4(%ebp)
aaf6bd:	00 00 00
aaf6c0:	50                   	push   %eax
aaf6c1:	68 cc 01 00 00       	push   $0x1cc
aaf6c6:	52                   	push   %edx
aaf6c7:	c7 03 00 00 00 00    	movl   $0x0,(%ebx)
aaf6cd:	e8 1e 39 00 00       	call   0xab2ff0
aaf6d2:	83 c4 10             	add    $0x10,%esp
aaf6d5:	32 c0                	xor    %al,%al
aaf6d7:	5f                   	pop    %edi