409358:	74 25                	je     0x40937f
40935a:	83 e8 01             	sub    $0x1,%eax
40935d:	74 18                	je     0x409377
40935f:	83 e8 01             	sub    $0x1,%eax
409362:	74 0b                	je     0x40936f
409364:	c7 02 06 00 01 00    	movl   $0x10006,(%edx)
40936a:	e9 2e fc ff ff       	jmp    0x408f9d
40936f:	c7 02 0d 00 01 00    	movl   $0x1000d,(%edx)
409375:	eb 0e                	jmp    0x409385
409377:	c7 02 08 00 01 00    	movl   $0x10008,(%edx)
40937d:	eb 06                	jmp    0x409385
40937f:	c7 02 0b 00 01 00    	movl   $0x1000b,(%edx)
409385:	6a 02                	push   $0x2
409387:	eb c3                	jmp    0x40934c
409389:	c7 02 09 00 01 00    	movl   $0x10009,(%edx)
40938f:	e9 09 fc ff ff       	jmp    0x408f9d
409394:	8b 7d 08             	mov    0x8(%ebp),%edi
409397:	8b 45 f8             	mov    -0x8(%ebp),%eax
40939a:	89 43 14             	mov    %eax,0x14(%ebx)
40939d:	8d 04 36             	lea    (%esi,%esi,1),%eax
4093a0:	01 43 08             	add    %eax,0x8(%ebx)
4093a3:	8b c7                	mov    %edi,%eax
4093a5:	5f                   	pop    %edi
4093a6:	5e                   	pop    %esi
4093a7:	5b                   	pop    %ebx
4093a8:	8b e5                	mov    %ebp,%esp
4093aa:	5d                   	pop    %ebp
4093ab:	c2 04 00             	ret    $0x4
4093ae:	55                   	push   %ebp
4093af:	8b ec                	mov    %esp,%ebp
4093b1:	83 ec 0c             	sub    $0xc,%esp
4093b4:	53                   	push   %ebx
4093b5:	56                   	push   %esi
4093b6:	57                   	push   %edi
4093b7:	8b 7d 08             	mov    0x8(%ebp),%edi
4093ba:	33 c0                	xor    %eax,%eax
4093bc:	8b d8                	mov    %eax,%ebx
4093be:	89 45 f4             	mov    %eax,-0xc(%ebp)
4093c1:	89 45 f8             	mov    %eax,-0x8(%ebp)
4093c4:	89 45 fc             	mov    %eax,-0x4(%ebp)
4093c7:	83 7f 10 04          	cmpl   $0x4,0x10(%edi)
4093cb:	c7 45 08 01 00 00 00 	movl   $0x1,0x8(%ebp)
4093d2:	75 22                	jne    0x4093f6
4093d4:	57                   	push   %edi
4093d5:	e8 6e fa ff ff       	call   0x408e48
4093da:	8b f0                	mov    %eax,%esi
4093dc:	85 f6                	test   %esi,%esi
4093de:	79 0f                	jns    0x4093ef
4093e0:	68 70 db 44 00       	push   $0x44db70
4093e5:	56                   	push   %esi
4093e6:	e8 44 6d 03 00       	call   0x44012f
4093eb:	59                   	pop    %ecx
4093ec:	59                   	pop    %ecx
4093ed:	eb 2f                	jmp    0x40941e
4093ef:	c7 45 f8 01 00 00 00 	movl   $0x1,-0x8(%ebp)
4093f6:	8d 45 fc             	lea    -0x4(%ebp),%eax
4093f9:	50                   	push   %eax
4093fa:	57                   	push   %edi
4093fb:	e8 12 01 00 00       	call   0x409512
409400:	8b f0                	mov    %eax,%esi
409402:	85 f6                	test   %esi,%esi
409404:	79 07                	jns    0x40940d
409406:	68 d4 dc 44 00       	push   $0x44dcd4
40940b:	eb d8                	jmp    0x4093e5
40940d:	8b 5d fc             	mov    -0x4(%ebp),%ebx
409410:	33 c0                	xor    %eax,%eax
409412:	85 db                	test   %ebx,%ebx
409414:	0f 94 c0             	sete   %al
409417:	83 7d f8 00          	cmpl   $0x0,-0x8(%ebp)
40941b:	0f 45 d8             	cmovne %eax,%ebx
40941e:	85 f6                	test   %esi,%esi
409420:	79 0f                	jns    0x409431
409422:	68 b4 dc 44 00       	push   $0x44dcb4
409427:	56                   	push   %esi
409428:	e8 02 6d 03 00       	call   0x44012f
40942d:	59                   	pop    %ecx
40942e:	59                   	pop    %ecx
40942f:	eb 4d                	jmp    0x40947e
409431:	83 7f 10 03          	cmpl   $0x3,0x10(%edi)
409435:	75 42                	jne    0x409479
409437:	57                   	push   %edi
409438:	e8 0b fa ff ff       	call   0x408e48
40943d:	8b f0                	mov    %eax,%esi
40943f:	85 f6                	test   %esi,%esi
409441:	79 07                	jns    0x40944a
409443:	68 70 db 44 00       	push   $0x44db70
409448:	eb dd                	jmp    0x409427
40944a:	8d 45 f4             	lea    -0xc(%ebp),%eax
40944d:	50                   	push   %eax
40944e:	57                   	push   %edi
40944f:	e8 5a ff ff ff       	call   0x4093ae
409454:	8b f0                	mov    %eax,%esi
409456:	85 f6                	test   %esi,%esi
409458:	79 07                	jns    0x409461
40945a:	68 94 dc 44 00       	push   $0x44dc94
40945f:	eb c6                	jmp    0x409427
409461:	85 db                	test   %ebx,%ebx
409463:	74 06                	je     0x40946b
409465:	83 7d f4 00          	cmpl   $0x0,-0xc(%ebp)
409469:	75 04                	jne    0x40946f
40946b:	83 65 08 00          	andl   $0x0,0x8(%ebp)
40946f:	8b 45 0c             	mov    0xc(%ebp),%eax
409472:	8b 4d 08             	mov    0x8(%ebp),%ecx
409475:	89 08                	mov    %ecx,(%eax)
409477:	eb 05                	jmp    0x40947e
409479:	8b 45 0c             	mov    0xc(%ebp),%eax
40947c:	89 18                	mov    %ebx,(%eax)
40947e:	5f                   	pop    %edi
40947f:	8b c6                	mov    %esi,%eax
409481:	5e                   	pop    %esi
409482:	5b                   	pop    %ebx
409483:	8b e5                	mov    %ebp,%esp
409485:	5d                   	pop    %ebp
409486:	c2 08 00             	ret    $0x8
409489:	55                   	push   %ebp
40948a:	8b ec                	mov    %esp,%ebp
40948c:	51                   	push   %ecx
40948d:	51                   	push   %ecx
40948e:	53                   	push   %ebx
40948f:	56                   	push   %esi
409490:	57                   	push   %edi
409491:	8b 7d 08             	mov    0x8(%ebp),%edi
409494:	8d 45 fc             	lea    -0x4(%ebp),%eax
409497:	50                   	push   %eax
409498:	33 db                	xor    %ebx,%ebx
40949a:	57                   	push   %edi
40949b:	89 5d fc             	mov    %ebx,-0x4(%ebp)
40949e:	89 5d f8             	mov    %ebx,-0x8(%ebp)
4094a1:	e8 08 ff ff ff       	call   0x4093ae
4094a6:	8b f0                	mov    %eax,%esi
4094a8:	85 f6                	test   %esi,%esi
4094aa:	79 0f                	jns    0x4094bb
4094ac:	68 94 dc 44 00       	push   $0x44dc94
4094b1:	56                   	push   %esi
4094b2:	e8 78 6c 03 00       	call   0x44012f
4094b7:	59                   	pop    %ecx
4094b8:	59                   	pop    %ecx
4094b9:	eb 4c                	jmp    0x409507
4094bb:	83 7f 10 02          	cmpl   $0x2,0x10(%edi)
4094bf:	75 3e                	jne    0x4094ff
4094c1:	57                   	push   %edi
4094c2:	e8 81 f9 ff ff       	call   0x408e48
4094c7:	8b f0                	mov    %eax,%esi
4094c9:	85 f6                	test   %esi,%esi
4094cb:	79 07                	jns    0x4094d4
4094cd:	68 70 db 44 00       	push   $0x44db70
4094d2:	eb dd                	jmp    0x4094b1
4094d4:	8d 45 f8             	lea    -0x8(%ebp),%eax
4094d7:	50                   	push   %eax
4094d8:	57                   	push   %edi
4094d9:	e8 ab ff ff ff       	call   0x409489
4094de:	8b f0                	mov    %eax,%esi
4094e0:	85 f6                	test   %esi,%esi
4094e2:	79 07                	jns    0x4094eb
4094e4:	68 8c db 44 00       	push   $0x44db8c
4094e9:	eb c6                	jmp    0x4094b1
4094eb:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
4094ee:	75 05                	jne    0x4094f5
4094f0:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
4094f3:	74 03                	je     0x4094f8
4094f5:	33 db                	xor    %ebx,%ebx
4094f7:	43                   	inc    %ebx
4094f8:	8b 45 0c             	mov    0xc(%ebp),%eax
4094fb:	89 18                	mov    %ebx,(%eax)
4094fd:	eb 08                	jmp    0x409507
4094ff:	8b 4d 0c             	mov    0xc(%ebp),%ecx
409502:	8b 45 fc             	mov    -0x4(%ebp),%eax
409505:	89 01                	mov    %eax,(%ecx)
409507:	5f                   	pop    %edi
409508:	8b c6                	mov    %esi,%eax
40950a:	5e                   	pop    %esi
40950b:	5b                   	pop    %ebx
40950c:	8b e5                	mov    %ebp,%esp
40950e:	5d                   	pop    %ebp
40950f:	c2 08 00             	ret    $0x8
409512:	55                   	push   %ebp
409513:	8b ec                	mov    %esp,%ebp
409515:	83 ec 40             	sub    $0x40,%esp
409518:	33 c0                	xor    %eax,%eax
40951a:	53                   	push   %ebx
40951b:	56                   	push   %esi
40951c:	57                   	push   %edi
40951d:	6a 06                	push   $0x6
40951f:	59                   	pop    %ecx
409520:	8d 7d d8             	lea    -0x28(%ebp),%edi
409523:	f3 ab                	rep stos %eax,%es:(%edi)
409525:	6a 06                	push   $0x6
409527:	59                   	pop    %ecx
409528:	8d 7d c0             	lea    -0x40(%ebp),%edi
40952b:	f3 ab                	rep stos %eax,%es:(%edi)
40952d:	8b 7d 08             	mov    0x8(%ebp),%edi
409530:	83 7f 10 0e          	cmpl   $0xe,0x10(%edi)
409534:	75 50                	jne    0x409586
409536:	57                   	push   %edi
409537:	e8 0c f9 ff ff       	call   0x408e48
40953c:	8b f0                	mov    %eax,%esi
40953e:	85 f6                	test   %esi,%esi
409540:	79 12                	jns    0x409554
409542:	68 70 db 44 00       	push   $0x44db70
409547:	56                   	push   %esi
409548:	e8 e2 6b 03 00       	call   0x44012f
40954d:	59                   	pop    %ecx
40954e:	59                   	pop    %ecx
40954f:	e9 83 01 00 00       	jmp    0x4096d7
409554:	ff 75 0c             	push   0xc(%ebp)
409557:	57                   	push   %edi
409558:	e8 2c ff ff ff       	call   0x409489
40955d:	8b f0                	mov    %eax,%esi
40955f:	85 f6                	test   %esi,%esi
409561:	79 07                	jns    0x40956a
409563:	68 8c db 44 00       	push   $0x44db8c
409568:	eb dd                	jmp    0x409547
40956a:	6a 0f                	push   $0xf
40956c:	57                   	push   %edi
40956d:	e8 73 f8 ff ff       	call   0x408de5
409572:	8b f0                	mov    %eax,%esi
409574:	85 f6                	test   %esi,%esi
409576:	79 07                	jns    0x40957f
409578:	68 ec dc 44 00       	push   $0x44dcec
40957d:	eb c8                	jmp    0x409547
40957f:	33 f6                	xor    %esi,%esi
409581:	e9 51 01 00 00       	jmp    0x4096d7
409586:	8d 45 d8             	lea    -0x28(%ebp),%eax
409589:	50                   	push   %eax
40958a:	57                   	push   %edi
40958b:	e8 64 01 00 00       	call   0x4096f4
409590:	8b f0                	mov    %eax,%esi
409592:	85 f6                	test   %esi,%esi
409594:	79 07                	jns    0x40959d
409596:	68 10 dd 44 00       	push   $0x44dd10
40959b:	eb aa                	jmp    0x409547
40959d:	8b 5f 10             	mov    0x10(%edi),%ebx
4095a0:	f7 c3 00 00 01 00    	test   $0x10000,%ebx
4095a6:	74 53                	je     0x4095fb
4095a8:	57                   	push   %edi
4095a9:	e8 9a f8 ff ff       	call   0x408e48
4095ae:	8b f0                	mov    %eax,%esi
4095b0:	85 f6                	test   %esi,%esi
4095b2:	78 8e                	js     0x409542
4095b4:	8d 45 c0             	lea    -0x40(%ebp),%eax
4095b7:	50                   	push   %eax
4095b8:	57                   	push   %edi
4095b9:	e8 36 01 00 00       	call   0x4096f4
4095be:	8b f0                	mov    %eax,%esi
4095c0:	85 f6                	test   %esi,%esi
4095c2:	78 d2                	js     0x409596
4095c4:	ff 75 0c             	push   0xc(%ebp)
4095c7:	8d 75 c0             	lea    -0x40(%ebp),%esi
4095ca:	83 ec 18             	sub    $0x18,%esp
4095cd:	6a 06                	push   $0x6
4095cf:	59                   	pop    %ecx
4095d0:	8b fc                	mov    %esp,%edi
4095d2:	83 ec 18             	sub    $0x18,%esp
4095d5:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4095d7:	6a 06                	push   $0x6
4095d9:	59                   	pop    %ecx
4095da:	8b fc                	mov    %esp,%edi
4095dc:	8d 75 d8             	lea    -0x28(%ebp),%esi
4095df:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
4095e1:	53                   	push   %ebx
4095e2:	e8 2c f4 ff ff       	call   0x408a13
4095e7:	8b f0                	mov    %eax,%esi
4095e9:	85 f6                	test   %esi,%esi
4095eb:	0f 89 e6 00 00 00    	jns    0x4096d7
4095f1:	68 28 dd 44 00       	push   $0x44dd28
4095f6:	e9 4c ff ff ff       	jmp    0x409547
4095fb:	8b 45 e8             	mov    -0x18(%ebp),%eax
4095fe:	33 db                	xor    %ebx,%ebx
409600:	89 5d 08             	mov    %ebx,0x8(%ebp)
409603:	0f 57 c0             	xorps  %xmm0,%xmm0
409606:	66 0f 13 45 f8       	movlpd %xmm0,-0x8(%ebp)
40960b:	66 0f 13 45 f0       	movlpd %xmm0,-0x10(%ebp)
409610:	2b c3                	sub    %ebx,%eax
409612:	0f 84 ba 00 00 00    	je     0x4096d2
409618:	83 e8 01             	sub    $0x1,%eax
40961b:	74 7c                	je     0x409699
40961d:	83 e8 01             	sub    $0x1,%eax
409620:	74 48                	je     0x40966a
409622:	83 e8 01             	sub    $0x1,%eax
409625:	74 0a                	je     0x409631
409627:	be ff ff 00 80       	mov    $0x8000ffff,%esi
40962c:	e9 a6 00 00 00       	jmp    0x4096d7
409631:	8d 45 f0             	lea    -0x10(%ebp),%eax
409634:	50                   	push   %eax
409635:	8d 45 d8             	lea    -0x28(%ebp),%eax
409638:	50                   	push   %eax
409639:	e8 92 6b 01 00       	call   0x4201d0
40963e:	8b f0                	mov    %eax,%esi
409640:	85 f6                	test   %esi,%esi
409642:	78 16                	js     0x40965a
409644:	39 5d f0             	cmp    %ebx,-0x10(%ebp)
409647:	75 09                	jne    0x409652
409649:	39 5d f4             	cmp    %ebx,-0xc(%ebp)
40964c:	75 04                	jne    0x409652
40964e:	8b cb                	mov    %ebx,%ecx
409650:	eb 03                	jmp    0x409655
409652:	33 c9                	xor    %ecx,%ecx
409654:	41                   	inc    %ecx
409655:	8b 45 0c             	mov    0xc(%ebp),%eax
409658:	89 08                	mov    %ecx,(%eax)
40965a:	6a 08                	push   $0x8
40965c:	59                   	pop    %ecx
40965d:	8d 45 f8             	lea    -0x8(%ebp),%eax
409660:	88 18                	mov    %bl,(%eax)
409662:	40                   	inc    %eax
409663:	83 e9 01             	sub    $0x1,%ecx
409666:	75 f8                	jne    0x409660
409668:	eb 6d                	jmp    0x4096d7
40966a:	8d 45 08             	lea    0x8(%ebp),%eax
40966d:	50                   	push   %eax
40966e:	8d 45 d8             	lea    -0x28(%ebp),%eax
409671:	50                   	push   %eax
409672:	e8 69 6a 01 00       	call   0x4200e0
409677:	8b 4d 08             	mov    0x8(%ebp),%ecx
40967a:	8b f0                	mov    %eax,%esi
40967c:	85 f6                	test   %esi,%esi
40967e:	78 11                	js     0x409691
409680:	85 c9                	test   %ecx,%ecx
409682:	74 08                	je     0x40968c
409684:	66 39 19             	cmp    %bx,(%ecx)
409687:	74 03                	je     0x40968c
409689:	33 db                	xor    %ebx,%ebx
40968b:	43                   	inc    %ebx
40968c:	8b 45 0c             	mov    0xc(%ebp),%eax
40968f:	89 18                	mov    %ebx,(%eax)
409691:	51                   	push   %ecx
409692:	e8 fc 90 ff ff       	call   0x402793
409697:	eb 3e                	jmp    0x4096d7
409699:	8d 45 f8             	lea    -0x8(%ebp),%eax
40969c:	50                   	push   %eax
40969d:	8d 45 d8             	lea    -0x28(%ebp),%eax
4096a0:	50                   	push   %eax
4096a1:	e8 c4 69 01 00       	call   0x42006a
4096a6:	8b f0                	mov    %eax,%esi
4096a8:	85 f6                	test   %esi,%esi
4096aa:	78 16                	js     0x4096c2
4096ac:	39 5d f8             	cmp    %ebx,-0x8(%ebp)
4096af:	75 09                	jne    0x4096ba
4096b1:	39 5d fc             	cmp    %ebx,-0x4(%ebp)
4096b4:	75 04                	jne    0x4096ba
4096b6:	8b cb                	mov    %ebx,%ecx
4096b8:	eb 03                	jmp    0x4096bd
4096ba:	33 c9                	xor    %ecx,%ecx
4096bc:	41                   	inc    %ecx
4096bd:	8b 45 0c             	mov    0xc(%ebp),%eax
4096c0:	89 08                	mov    %ecx,(%eax)
4096c2:	6a 08                	push   $0x8
4096c4:	59                   	pop    %ecx
4096c5:	8d 45 f8             	lea    -0x8(%ebp),%eax
4096c8:	88 18                	mov    %bl,(%eax)