4093af:	cc                   	int3
4093b0:	8b ff                	mov    %edi,%edi
4093b2:	55                   	push   %ebp
4093b3:	8b ec                	mov    %esp,%ebp
4093b5:	8b 4d 08             	mov    0x8(%ebp),%ecx
4093b8:	ff 75 0c             	push   0xc(%ebp)
4093bb:	8d 89 2c 04 00 00    	lea    0x42c(%ecx),%ecx
4093c1:	e8 da 04 00 00       	call   0x4098a0
4093c6:	33 c0                	xor    %eax,%eax
4093c8:	5d                   	pop    %ebp
4093c9:	c2 08 00             	ret    $0x8
4093cc:	cc                   	int3
4093cd:	cc                   	int3
4093ce:	cc                   	int3
4093cf:	cc                   	int3
4093d0:	8b ff                	mov    %edi,%edi
4093d2:	55                   	push   %ebp
4093d3:	8b ec                	mov    %esp,%ebp
4093d5:	56                   	push   %esi
4093d6:	8b 75 0c             	mov    0xc(%ebp),%esi
4093d9:	85 f6                	test   %esi,%esi
4093db:	75 07                	jne    0x4093e4
4093dd:	b8 03 40 00 80       	mov    $0x80004003,%eax
4093e2:	eb 12                	jmp    0x4093f6
4093e4:	8b 4d 08             	mov    0x8(%ebp),%ecx
4093e7:	8d 89 30 04 00 00    	lea    0x430(%ecx),%ecx
4093ed:	e8 ef 04 00 00       	call   0x4098e1
4093f2:	89 06                	mov    %eax,(%esi)
4093f4:	33 c0                	xor    %eax,%eax
4093f6:	5e                   	pop    %esi
4093f7:	5d                   	pop    %ebp
4093f8:	c2 08 00             	ret    $0x8
4093fb:	cc                   	int3
4093fc:	cc                   	int3
4093fd:	cc                   	int3
4093fe:	cc                   	int3
4093ff:	cc                   	int3
409400:	8b ff                	mov    %edi,%edi
409402:	55                   	push   %ebp
409403:	8b ec                	mov    %esp,%ebp
409405:	8b 4d 08             	mov    0x8(%ebp),%ecx
409408:	ff 75 0c             	push   0xc(%ebp)
40940b:	8d 89 30 04 00 00    	lea    0x430(%ecx),%ecx
409411:	e8 8a 04 00 00       	call   0x4098a0
409416:	33 c0                	xor    %eax,%eax
409418:	5d                   	pop    %ebp
409419:	c2 08 00             	ret    $0x8
40941c:	cc                   	int3
40941d:	cc                   	int3
40941e:	cc                   	int3
40941f:	cc                   	int3
409420:	8b ff                	mov    %edi,%edi
409422:	55                   	push   %ebp
409423:	8b ec                	mov    %esp,%ebp
409425:	56                   	push   %esi
409426:	8b 75 0c             	mov    0xc(%ebp),%esi
409429:	85 f6                	test   %esi,%esi
40942b:	75 07                	jne    0x409434
40942d:	b8 03 40 00 80       	mov    $0x80004003,%eax
409432:	eb 12                	jmp    0x409446
409434:	8b 4d 08             	mov    0x8(%ebp),%ecx
409437:	8d 89 34 04 00 00    	lea    0x434(%ecx),%ecx
40943d:	e8 9f 04 00 00       	call   0x4098e1
409442:	89 06                	mov    %eax,(%esi)
409444:	33 c0                	xor    %eax,%eax
409446:	5e                   	pop    %esi
409447:	5d                   	pop    %ebp
409448:	c2 08 00             	ret    $0x8
40944b:	cc                   	int3
40944c:	cc                   	int3
40944d:	cc                   	int3
40944e:	cc                   	int3
40944f:	cc                   	int3
409450:	8b ff                	mov    %edi,%edi
409452:	55                   	push   %ebp
409453:	8b ec                	mov    %esp,%ebp
409455:	8b 4d 08             	mov    0x8(%ebp),%ecx
409458:	ff 75 0c             	push   0xc(%ebp)
40945b:	8d 89 34 04 00 00    	lea    0x434(%ecx),%ecx
409461:	e8 3a 04 00 00       	call   0x4098a0
409466:	33 c0                	xor    %eax,%eax
409468:	5d                   	pop    %ebp
409469:	c2 08 00             	ret    $0x8
40946c:	cc                   	int3
40946d:	cc                   	int3
40946e:	cc                   	int3
40946f:	cc                   	int3
409470:	8b ff                	mov    %edi,%edi
409472:	55                   	push   %ebp
409473:	8b ec                	mov    %esp,%ebp
409475:	56                   	push   %esi
409476:	33 f6                	xor    %esi,%esi
409478:	8b 55 0c             	mov    0xc(%ebp),%edx
40947b:	8b 8e 04 1a 40 00    	mov    0x401a04(%esi),%ecx
409481:	e8 0a b7 ff ff       	call   0x404b90
409486:	85 c0                	test   %eax,%eax
409488:	75 0b                	jne    0x409495
40948a:	83 c6 04             	add    $0x4,%esi
40948d:	83 fe 04             	cmp    $0x4,%esi
409490:	72 e6                	jb     0x409478
409492:	40                   	inc    %eax
409493:	eb 02                	jmp    0x409497
409495:	33 c0                	xor    %eax,%eax
409497:	5e                   	pop    %esi
409498:	5d                   	pop    %ebp
409499:	c2 08 00             	ret    $0x8
40949c:	8b ff                	mov    %edi,%edi
40949e:	55                   	push   %ebp
40949f:	8b ec                	mov    %esp,%ebp
4094a1:	51                   	push   %ecx
4094a2:	51                   	push   %ecx
4094a3:	53                   	push   %ebx
4094a4:	8b 5d 08             	mov    0x8(%ebp),%ebx
4094a7:	56                   	push   %esi
4094a8:	57                   	push   %edi
4094a9:	6a 30                	push   $0x30
4094ab:	33 f6                	xor    %esi,%esi
4094ad:	6a 08                	push   $0x8
4094af:	89 33                	mov    %esi,(%ebx)
4094b1:	ff 15 e0 60 41 00    	call   *0x4160e0
4094b7:	50                   	push   %eax
4094b8:	ff 15 dc 60 41 00    	call   *0x4160dc
4094be:	8b f8                	mov    %eax,%edi
4094c0:	89 7d fc             	mov    %edi,-0x4(%ebp)
4094c3:	85 ff                	test   %edi,%edi
4094c5:	75 1f                	jne    0x4094e6
4094c7:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
4094cc:	50                   	push   %eax
4094cd:	68 20 2e 40 00       	push   $0x402e20
4094d2:	68 83 02 00 00       	push   $0x283
4094d7:	68 00 2d 40 00       	push   $0x402d00
4094dc:	51                   	push   %ecx
4094dd:	8b f0                	mov    %eax,%esi
4094df:	e8 ee 7a 00 00       	call   0x410fd2
4094e4:	eb 65                	jmp    0x40954b
4094e6:	6a 18                	push   $0x18
4094e8:	6a 08                	push   $0x8
4094ea:	ff 15 e0 60 41 00    	call   *0x4160e0
4094f0:	50                   	push   %eax
4094f1:	ff 15 dc 60 41 00    	call   *0x4160dc
4094f7:	85 c0                	test   %eax,%eax
4094f9:	75 12                	jne    0x40950d
4094fb:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
409500:	50                   	push   %eax
409501:	68 20 2e 40 00       	push   $0x402e20
409506:	68 84 02 00 00       	push   $0x284
40950b:	eb ca                	jmp    0x4094d7
40950d:	83 48 08 ff          	orl    $0xffffffff,0x8(%eax)
409511:	89 30                	mov    %esi,(%eax)
409513:	89 70 04             	mov    %esi,0x4(%eax)
409516:	89 70 0c             	mov    %esi,0xc(%eax)
409519:	89 70 10             	mov    %esi,0x10(%eax)
40951c:	89 70 14             	mov    %esi,0x14(%eax)
40951f:	89 37                	mov    %esi,(%edi)
409521:	89 77 04             	mov    %esi,0x4(%edi)
409524:	89 77 08             	mov    %esi,0x8(%edi)
409527:	89 77 0c             	mov    %esi,0xc(%edi)
40952a:	89 77 10             	mov    %esi,0x10(%edi)
40952d:	89 77 14             	mov    %esi,0x14(%edi)
409530:	89 77 18             	mov    %esi,0x18(%edi)
409533:	89 77 1c             	mov    %esi,0x1c(%edi)
409536:	89 77 20             	mov    %esi,0x20(%edi)
409539:	89 77 24             	mov    %esi,0x24(%edi)
40953c:	c7 47 28 01 00 00 00 	movl   $0x1,0x28(%edi)
409543:	89 47 2c             	mov    %eax,0x2c(%edi)
409546:	89 3b                	mov    %edi,(%ebx)
409548:	89 75 fc             	mov    %esi,-0x4(%ebp)
40954b:	8d 4d fc             	lea    -0x4(%ebp),%ecx
40954e:	e8 1d 02 00 00       	call   0x409770
409553:	5f                   	pop    %edi
409554:	8b c6                	mov    %esi,%eax
409556:	5e                   	pop    %esi
409557:	5b                   	pop    %ebx
409558:	c9                   	leave
409559:	c2 04 00             	ret    $0x4
40955c:	8b ff                	mov    %edi,%edi
40955e:	55                   	push   %ebp
40955f:	8b ec                	mov    %esp,%ebp
409561:	83 ec 10             	sub    $0x10,%esp
409564:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
409568:	53                   	push   %ebx
409569:	56                   	push   %esi
40956a:	57                   	push   %edi
40956b:	89 4d f4             	mov    %ecx,-0xc(%ebp)
40956e:	ff 15 f8 60 41 00    	call   *0x4160f8
409574:	89 45 fc             	mov    %eax,-0x4(%ebp)
409577:	33 ff                	xor    %edi,%edi
409579:	8b 45 08             	mov    0x8(%ebp),%eax
40957c:	89 7d f8             	mov    %edi,-0x8(%ebp)
40957f:	21 38                	and    %edi,(%eax)
409581:	8d 45 f0             	lea    -0x10(%ebp),%eax
409584:	50                   	push   %eax
409585:	e8 12 ff ff ff       	call   0x40949c
40958a:	8b 5d f0             	mov    -0x10(%ebp),%ebx
40958d:	8b f0                	mov    %eax,%esi
40958f:	85 f6                	test   %esi,%esi
409591:	79 1b                	jns    0x4095ae
409593:	56                   	push   %esi
409594:	68 64 2e 40 00       	push   $0x402e64
409599:	68 b5 02 00 00       	push   $0x2b5
40959e:	68 00 2d 40 00       	push   $0x402d00
4095a3:	51                   	push   %ecx
4095a4:	e8 29 7a 00 00       	call   0x410fd2
4095a9:	e9 b0 01 00 00       	jmp    0x40975e
4095ae:	8d 45 f8             	lea    -0x8(%ebp),%eax
4095b1:	50                   	push   %eax
4095b2:	e8 03 f8 ff ff       	call   0x408dba
4095b7:	8b f0                	mov    %eax,%esi
4095b9:	85 f6                	test   %esi,%esi
4095bb:	79 1e                	jns    0x4095db
4095bd:	56                   	push   %esi
4095be:	68 64 2e 40 00       	push   $0x402e64
4095c3:	68 ba 02 00 00       	push   $0x2ba
4095c8:	68 00 2d 40 00       	push   $0x402d00
4095cd:	51                   	push   %ecx
4095ce:	e8 ff 79 00 00       	call   0x410fd2
4095d3:	8b 7d f8             	mov    -0x8(%ebp),%edi
4095d6:	e9 83 01 00 00       	jmp    0x40975e
4095db:	8b 43 2c             	mov    0x2c(%ebx),%eax
4095de:	8b 7d f8             	mov    -0x8(%ebp),%edi
4095e1:	83 c0 10             	add    $0x10,%eax
4095e4:	8b 55 fc             	mov    -0x4(%ebp),%edx
4095e7:	8b cf                	mov    %edi,%ecx
4095e9:	50                   	push   %eax
4095ea:	e8 9d f8 ff ff       	call   0x408e8c
4095ef:	85 c0                	test   %eax,%eax
4095f1:	0f 89 96 00 00 00    	jns    0x40968d
4095f7:	50                   	push   %eax
4095f8:	68 64 2e 40 00       	push   $0x402e64
4095fd:	68 c2 02 00 00       	push   $0x2c2
409602:	68 00 2d 40 00       	push   $0x402d00
409607:	51                   	push   %ecx
409608:	e8 c5 79 00 00       	call   0x410fd2
40960d:	68 04 01 00 00       	push   $0x104
409612:	6a 08                	push   $0x8
409614:	ff 15 e0 60 41 00    	call   *0x4160e0
40961a:	50                   	push   %eax
40961b:	ff 15 dc 60 41 00    	call   *0x4160dc
409621:	8b 4b 2c             	mov    0x2c(%ebx),%ecx
409624:	89 41 10             	mov    %eax,0x10(%ecx)
409627:	8b 43 2c             	mov    0x2c(%ebx),%eax
40962a:	8b 48 10             	mov    0x10(%eax),%ecx
40962d:	85 c9                	test   %ecx,%ecx
40962f:	75 40                	jne    0x409671
409631:	be 0e 00 07 80       	mov    $0x8007000e,%esi
409636:	56                   	push   %esi
409637:	68 64 2e 40 00       	push   $0x402e64
40963c:	68 c6 02 00 00       	push   $0x2c6
409641:	68 00 2d 40 00       	push   $0x402d00
409646:	51                   	push   %ecx
409647:	e8 86 79 00 00       	call   0x410fd2
40964c:	8d 4d f0             	lea    -0x10(%ebp),%ecx
40964f:	e8 1c 01 00 00       	call   0x409770
409654:	85 ff                	test   %edi,%edi
409656:	74 10                	je     0x409668
409658:	57                   	push   %edi
409659:	6a 00                	push   $0x0
40965b:	ff 15 e0 60 41 00    	call   *0x4160e0
409661:	50                   	push   %eax
409662:	ff 15 e4 60 41 00    	call   *0x4160e4
409668:	5f                   	pop    %edi
409669:	8b c6                	mov    %esi,%eax
40966b:	5e                   	pop    %esi
40966c:	5b                   	pop    %ebx
40966d:	c9                   	leave
40966e:	c2 04 00             	ret    $0x4
409671:	51                   	push   %ecx
409672:	e8 e5 01 00 00       	call   0x40985c
409677:	8b f0                	mov    %eax,%esi
409679:	85 f6                	test   %esi,%esi
40967b:	79 10                	jns    0x40968d
40967d:	56                   	push   %esi
40967e:	68 64 2e 40 00       	push   $0x402e64
409683:	68 cb 02 00 00       	push   $0x2cb
409688:	e9 11 ff ff ff       	jmp    0x40959e
40968d:	8b 43 2c             	mov    0x2c(%ebx),%eax
409690:	8b 75 f4             	mov    -0xc(%ebp),%esi
409693:	83 c0 0c             	add    $0xc,%eax
409696:	8b 55 fc             	mov    -0x4(%ebp),%edx
409699:	50                   	push   %eax
40969a:	8b 8e 38 04 00 00    	mov    0x438(%esi),%ecx
4096a0:	e8 e7 f7 ff ff       	call   0x408e8c
4096a5:	85 c0                	test   %eax,%eax
4096a7:	79 46                	jns    0x4096ef
4096a9:	50                   	push   %eax
4096aa:	68 64 2e 40 00       	push   $0x402e64
4096af:	68 d5 02 00 00       	push   $0x2d5
4096b4:	68 00 2d 40 00       	push   $0x402d00
4096b9:	51                   	push   %ecx
4096ba:	e8 13 79 00 00       	call   0x410fd2
4096bf:	8b 43 2c             	mov    0x2c(%ebx),%eax
4096c2:	ba e9 fd 00 00       	mov    $0xfde9,%edx
4096c7:	8b 8e 38 04 00 00    	mov    0x438(%esi),%ecx
4096cd:	83 c0 0c             	add    $0xc,%eax
4096d0:	50                   	push   %eax
4096d1:	e8 b6 f7 ff ff       	call   0x408e8c
4096d6:	8b f0                	mov    %eax,%esi
4096d8:	85 f6                	test   %esi,%esi
4096da:	79 10                	jns    0x4096ec
4096dc:	56                   	push   %esi
4096dd:	68 64 2e 40 00       	push   $0x402e64
4096e2:	68 dc 02 00 00       	push   $0x2dc
4096e7:	e9 b2 fe ff ff       	jmp    0x40959e
4096ec:	8b 75 f4             	mov    -0xc(%ebp),%esi
4096ef:	8b 55 fc             	mov    -0x4(%ebp),%edx
4096f2:	8d 43 04             	lea    0x4(%ebx),%eax
4096f5:	8b 8e 30 04 00 00    	mov    0x430(%esi),%ecx
4096fb:	50                   	push   %eax
4096fc:	e8 8b f7 ff ff       	call   0x408e8c
409701:	8b f0                	mov    %eax,%esi
409703:	85 f6                	test   %esi,%esi
409705:	79 18                	jns    0x40971f
409707:	56                   	push   %esi
409708:	68 64 2e 40 00       	push   $0x402e64
40970d:	68 e6 02 00 00       	push   $0x2e6
409712:	68 00 2d 40 00       	push   $0x402d00
409717:	51                   	push   %ecx
409718:	e8 b5 78 00 00       	call   0x410fd2
40971d:	85 f6                	test   %esi,%esi
40971f:	74 04                	je     0x409725
409721:	83 63 04 00          	andl   $0x0,0x4(%ebx)
409725:	8b 4d f4             	mov    -0xc(%ebp),%ecx
409728:	8d 43 08             	lea    0x8(%ebx),%eax
40972b:	8b 55 fc             	mov    -0x4(%ebp),%edx
40972e:	50                   	push   %eax
40972f:	8b 89 34 04 00 00    	mov    0x434(%ecx),%ecx
409735:	e8 52 f7 ff ff       	call   0x408e8c
40973a:	8b f0                	mov    %eax,%esi
40973c:	85 f6                	test   %esi,%esi
40973e:	79 18                	jns    0x409758
409740:	56                   	push   %esi
409741:	68 64 2e 40 00       	push   $0x402e64
409746:	68 f1 02 00 00       	push   $0x2f1
40974b:	68 00 2d 40 00       	push   $0x402d00
409750:	51                   	push   %ecx
409751:	e8 7c 78 00 00       	call   0x410fd2
409756:	85 f6                	test   %esi,%esi
409758:	74 04                	je     0x40975e
40975a:	83 63 08 00          	andl   $0x0,0x8(%ebx)
40975e:	85 f6                	test   %esi,%esi
409760:	0f 88 e6 fe ff ff    	js     0x40964c
409766:	8b 45 08             	mov    0x8(%ebp),%eax
409769:	89 18                	mov    %ebx,(%eax)
40976b:	e9 e4 fe ff ff       	jmp    0x409654
409770:	8b ff                	mov    %edi,%edi
409772:	56                   	push   %esi
409773:	8b f1                	mov    %ecx,%esi
409775:	8b 16                	mov    (%esi),%edx
409777:	85 d2                	test   %edx,%edx
409779:	0f 84 ac 00 00 00    	je     0x40982b