41a33d:	74 21                	je     0x41a360
41a33f:	3d a9 de 00 00       	cmp    $0xdea9,%eax
41a344:	76 0f                	jbe    0x41a355
41a346:	3d b3 de 00 00       	cmp    $0xdeb3,%eax
41a34b:	76 13                	jbe    0x41a360
41a34d:	3b c6                	cmp    %esi,%eax
41a34f:	74 0f                	je     0x41a360
41a351:	3b c2                	cmp    %edx,%eax
41a353:	74 0b                	je     0x41a360
41a355:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41a358:	81 e1 7f ff ff ff    	and    $0xffffff7f,%ecx
41a35e:	eb 02                	jmp    0x41a362
41a360:	33 c9                	xor    %ecx,%ecx
41a362:	8b 7d 24             	mov    0x24(%ebp),%edi
41a365:	0f b6 d3             	movzbl %bl,%edx
41a368:	f7 da                	neg    %edx
41a36a:	0f b6 f3             	movzbl %bl,%esi
41a36d:	1b d2                	sbb    %edx,%edx
41a36f:	f7 d2                	not    %edx
41a371:	23 d7                	and    %edi,%edx
41a373:	f7 de                	neg    %esi
41a375:	1b f6                	sbb    %esi,%esi
41a377:	f7 d6                	not    %esi
41a379:	23 75 20             	and    0x20(%ebp),%esi
41a37c:	84 db                	test   %bl,%bl
41a37e:	74 07                	je     0x41a387
41a380:	85 ff                	test   %edi,%edi
41a382:	74 03                	je     0x41a387
41a384:	83 27 00             	andl   $0x0,(%edi)
41a387:	52                   	push   %edx
41a388:	56                   	push   %esi
41a389:	ff 75 1c             	push   0x1c(%ebp)
41a38c:	ff 75 18             	push   0x18(%ebp)
41a38f:	ff 75 14             	push   0x14(%ebp)
41a392:	ff 75 10             	push   0x10(%ebp)
41a395:	51                   	push   %ecx
41a396:	50                   	push   %eax
41a397:	ff 15 34 40 42 00    	call   *0x424034
41a39d:	5f                   	pop    %edi
41a39e:	5e                   	pop    %esi
41a39f:	5b                   	pop    %ebx
41a3a0:	5d                   	pop    %ebp
41a3a1:	c3                   	ret
41a3a2:	8b ff                	mov    %edi,%edi
41a3a4:	55                   	push   %ebp
41a3a5:	8b ec                	mov    %esp,%ebp
41a3a7:	56                   	push   %esi
41a3a8:	8b 75 08             	mov    0x8(%ebp),%esi
41a3ab:	57                   	push   %edi
41a3ac:	8b 7d 0c             	mov    0xc(%ebp),%edi
41a3af:	0f b7 0e             	movzwl (%esi),%ecx
41a3b2:	8d 41 bf             	lea    -0x41(%ecx),%eax
41a3b5:	83 f8 19             	cmp    $0x19,%eax
41a3b8:	77 03                	ja     0x41a3bd
41a3ba:	83 c1 20             	add    $0x20,%ecx
41a3bd:	0f b7 17             	movzwl (%edi),%edx
41a3c0:	83 c6 02             	add    $0x2,%esi
41a3c3:	8d 42 bf             	lea    -0x41(%edx),%eax
41a3c6:	83 f8 19             	cmp    $0x19,%eax
41a3c9:	77 03                	ja     0x41a3ce
41a3cb:	83 c2 20             	add    $0x20,%edx
41a3ce:	8b c1                	mov    %ecx,%eax
41a3d0:	83 c7 02             	add    $0x2,%edi
41a3d3:	2b c2                	sub    %edx,%eax
41a3d5:	75 04                	jne    0x41a3db
41a3d7:	85 c9                	test   %ecx,%ecx
41a3d9:	75 d4                	jne    0x41a3af
41a3db:	5f                   	pop    %edi
41a3dc:	5e                   	pop    %esi
41a3dd:	5d                   	pop    %ebp
41a3de:	c3                   	ret
41a3df:	8b ff                	mov    %edi,%edi
41a3e1:	55                   	push   %ebp
41a3e2:	8b ec                	mov    %esp,%ebp
41a3e4:	83 3d bc 49 43 00 00 	cmpl   $0x0,0x4349bc
41a3eb:	75 29                	jne    0x41a416
41a3ed:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41a3f1:	75 17                	jne    0x41a40a
41a3f3:	e8 03 4a ff ff       	call   0x40edfb
41a3f8:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41a3fe:	e8 7e 2c ff ff       	call   0x40d081
41a403:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
41a408:	5d                   	pop    %ebp
41a409:	c3                   	ret
41a40a:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
41a40e:	74 e3                	je     0x41a3f3
41a410:	5d                   	pop    %ebp
41a411:	e9 8c ff ff ff       	jmp    0x41a3a2
41a416:	6a 00                	push   $0x0
41a418:	ff 75 0c             	push   0xc(%ebp)
41a41b:	ff 75 08             	push   0x8(%ebp)
41a41e:	e8 05 00 00 00       	call   0x41a428
41a423:	83 c4 0c             	add    $0xc,%esp
41a426:	5d                   	pop    %ebp
41a427:	c3                   	ret
41a428:	8b ff                	mov    %edi,%edi
41a42a:	55                   	push   %ebp
41a42b:	8b ec                	mov    %esp,%ebp
41a42d:	83 ec 10             	sub    $0x10,%esp
41a430:	56                   	push   %esi
41a431:	8b 75 08             	mov    0x8(%ebp),%esi
41a434:	85 f6                	test   %esi,%esi
41a436:	75 1a                	jne    0x41a452
41a438:	e8 be 49 ff ff       	call   0x40edfb
41a43d:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41a443:	e8 39 2c ff ff       	call   0x40d081
41a448:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
41a44d:	e9 8b 00 00 00       	jmp    0x41a4dd
41a452:	57                   	push   %edi
41a453:	8b 7d 0c             	mov    0xc(%ebp),%edi
41a456:	85 ff                	test   %edi,%edi
41a458:	75 17                	jne    0x41a471
41a45a:	e8 9c 49 ff ff       	call   0x40edfb
41a45f:	c7 00 16 00 00 00    	movl   $0x16,(%eax)
41a465:	e8 17 2c ff ff       	call   0x40d081
41a46a:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
41a46f:	eb 6b                	jmp    0x41a4dc
41a471:	ff 75 10             	push   0x10(%ebp)
41a474:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41a477:	e8 02 18 ff ff       	call   0x40bc7e
41a47c:	8b 45 f4             	mov    -0xc(%ebp),%eax
41a47f:	83 b8 a8 00 00 00 00 	cmpl   $0x0,0xa8(%eax)
41a486:	75 0d                	jne    0x41a495
41a488:	57                   	push   %edi
41a489:	56                   	push   %esi
41a48a:	e8 13 ff ff ff       	call   0x41a3a2
41a48f:	59                   	pop    %ecx
41a490:	59                   	pop    %ecx
41a491:	8b c8                	mov    %eax,%ecx
41a493:	eb 35                	jmp    0x41a4ca
41a495:	53                   	push   %ebx
41a496:	0f b7 06             	movzwl (%esi),%eax
41a499:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41a49c:	51                   	push   %ecx
41a49d:	50                   	push   %eax
41a49e:	e8 d4 28 ff ff       	call   0x40cd77
41a4a3:	8d 4d f4             	lea    -0xc(%ebp),%ecx
41a4a6:	0f b7 d8             	movzwl %ax,%ebx
41a4a9:	0f b7 07             	movzwl (%edi),%eax
41a4ac:	8d 76 02             	lea    0x2(%esi),%esi
41a4af:	51                   	push   %ecx
41a4b0:	50                   	push   %eax
41a4b1:	8d 7f 02             	lea    0x2(%edi),%edi
41a4b4:	e8 be 28 ff ff       	call   0x40cd77
41a4b9:	0f b7 c0             	movzwl %ax,%eax
41a4bc:	8b cb                	mov    %ebx,%ecx
41a4be:	83 c4 10             	add    $0x10,%esp
41a4c1:	2b c8                	sub    %eax,%ecx
41a4c3:	75 04                	jne    0x41a4c9
41a4c5:	85 db                	test   %ebx,%ebx
41a4c7:	75 cd                	jne    0x41a496
41a4c9:	5b                   	pop    %ebx
41a4ca:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
41a4ce:	74 0a                	je     0x41a4da
41a4d0:	8b 45 f0             	mov    -0x10(%ebp),%eax
41a4d3:	83 a0 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%eax)
41a4da:	8b c1                	mov    %ecx,%eax
41a4dc:	5f                   	pop    %edi
41a4dd:	5e                   	pop    %esi
41a4de:	c9                   	leave
41a4df:	c3                   	ret
41a4e0:	c7 05 f0 4c 43 00 80 	movl   $0x7080,0x434cf0
41a4e7:	70 00 00
41a4ea:	33 c0                	xor    %eax,%eax
41a4ec:	c7 05 f4 4c 43 00 01 	movl   $0x1,0x434cf4
41a4f3:	00 00 00
41a4f6:	c7 05 f8 4c 43 00 f0 	movl   $0xfffff1f0,0x434cf8
41a4fd:	f1 ff ff
41a500:	c7 05 fc 4c 43 00 30 	movl   $0x433530,0x434cfc
41a507:	35 43 00
41a50a:	c7 05 00 4d 43 00 38 	movl   $0x433538,0x434d00
41a511:	35 43 00
41a514:	c3                   	ret
41a515:	8b ff                	mov    %edi,%edi
41a517:	55                   	push   %ebp
41a518:	8b ec                	mov    %esp,%ebp
41a51a:	83 ec 10             	sub    $0x10,%esp
41a51d:	6a 00                	push   $0x0
41a51f:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41a522:	e8 57 17 ff ff       	call   0x40bc7e
41a527:	8b 45 f4             	mov    -0xc(%ebp),%eax
41a52a:	ba e9 fd 00 00       	mov    $0xfde9,%edx
41a52f:	39 50 08             	cmp    %edx,0x8(%eax)
41a532:	74 0c                	je     0x41a540
41a534:	e8 6c 8f ff ff       	call   0x4134a5
41a539:	33 d2                	xor    %edx,%edx
41a53b:	85 c0                	test   %eax,%eax
41a53d:	75 01                	jne    0x41a540
41a53f:	42                   	inc    %edx
41a540:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
41a544:	74 0a                	je     0x41a550
41a546:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41a549:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
41a550:	8b c2                	mov    %edx,%eax
41a552:	c9                   	leave
41a553:	c3                   	ret
41a554:	8b ff                	mov    %edi,%edi
41a556:	55                   	push   %ebp
41a557:	8b ec                	mov    %esp,%ebp
41a559:	83 ec 10             	sub    $0x10,%esp
41a55c:	ff 75 0c             	push   0xc(%ebp)
41a55f:	8d 4d f0             	lea    -0x10(%ebp),%ecx
41a562:	e8 17 17 ff ff       	call   0x40bc7e
41a567:	8b 45 f4             	mov    -0xc(%ebp),%eax
41a56a:	68 00 80 00 00       	push   $0x8000
41a56f:	ff 75 08             	push   0x8(%ebp)
41a572:	ff 30                	push   (%eax)
41a574:	e8 e9 25 ff ff       	call   0x40cb62
41a579:	83 c4 0c             	add    $0xc,%esp
41a57c:	80 7d fc 00          	cmpb   $0x0,-0x4(%ebp)
41a580:	74 0a                	je     0x41a58c
41a582:	8b 4d f0             	mov    -0x10(%ebp),%ecx
41a585:	83 a1 50 03 00 00 fd 	andl   $0xfffffffd,0x350(%ecx)
41a58c:	c9                   	leave
41a58d:	c3                   	ret
41a58e:	8b ff                	mov    %edi,%edi
41a590:	55                   	push   %ebp
41a591:	8b ec                	mov    %esp,%ebp
41a593:	53                   	push   %ebx
41a594:	56                   	push   %esi
41a595:	57                   	push   %edi
41a596:	8b 7d 08             	mov    0x8(%ebp),%edi
41a599:	85 ff                	test   %edi,%edi
41a59b:	74 13                	je     0x41a5b0
41a59d:	8b 4d 0c             	mov    0xc(%ebp),%ecx
41a5a0:	85 c9                	test   %ecx,%ecx
41a5a2:	74 0c                	je     0x41a5b0
41a5a4:	8b 5d 10             	mov    0x10(%ebp),%ebx
41a5a7:	85 db                	test   %ebx,%ebx
41a5a9:	75 1b                	jne    0x41a5c6
41a5ab:	33 c0                	xor    %eax,%eax
41a5ad:	66 89 07             	mov    %ax,(%edi)
41a5b0:	e8 46 48 ff ff       	call   0x40edfb
41a5b5:	6a 16                	push   $0x16
41a5b7:	5e                   	pop    %esi
41a5b8:	89 30                	mov    %esi,(%eax)
41a5ba:	e8 c2 2a ff ff       	call   0x40d081
41a5bf:	5f                   	pop    %edi
41a5c0:	8b c6                	mov    %esi,%eax
41a5c2:	5e                   	pop    %esi
41a5c3:	5b                   	pop    %ebx
41a5c4:	5d                   	pop    %ebp
41a5c5:	c3                   	ret
41a5c6:	8b d7                	mov    %edi,%edx
41a5c8:	33 f6                	xor    %esi,%esi
41a5ca:	66 39 32             	cmp    %si,(%edx)
41a5cd:	74 08                	je     0x41a5d7
41a5cf:	83 c2 02             	add    $0x2,%edx
41a5d2:	83 e9 01             	sub    $0x1,%ecx
41a5d5:	75 f3                	jne    0x41a5ca
41a5d7:	85 c9                	test   %ecx,%ecx
41a5d9:	74 d0                	je     0x41a5ab
41a5db:	2b da                	sub    %edx,%ebx
41a5dd:	0f b7 04 13          	movzwl (%ebx,%edx,1),%eax
41a5e1:	66 89 02             	mov    %ax,(%edx)
41a5e4:	8d 52 02             	lea    0x2(%edx),%edx
41a5e7:	66 85 c0             	test   %ax,%ax
41a5ea:	74 05                	je     0x41a5f1
41a5ec:	83 e9 01             	sub    $0x1,%ecx
41a5ef:	75 ec                	jne    0x41a5dd
41a5f1:	85 c9                	test   %ecx,%ecx
41a5f3:	75 ca                	jne    0x41a5bf
41a5f5:	33 c0                	xor    %eax,%eax
41a5f7:	66 89 07             	mov    %ax,(%edi)
41a5fa:	e8 fc 47 ff ff       	call   0x40edfb
41a5ff:	6a 22                	push   $0x22
41a601:	eb b4                	jmp    0x41a5b7
41a603:	8b ff                	mov    %edi,%edi
41a605:	55                   	push   %ebp
41a606:	8b ec                	mov    %esp,%ebp
41a608:	8b 4d 08             	mov    0x8(%ebp),%ecx
41a60b:	53                   	push   %ebx
41a60c:	8b 5d 10             	mov    0x10(%ebp),%ebx
41a60f:	56                   	push   %esi
41a610:	8b 75 14             	mov    0x14(%ebp),%esi
41a613:	85 f6                	test   %esi,%esi
41a615:	75 1e                	jne    0x41a635
41a617:	85 c9                	test   %ecx,%ecx
41a619:	75 1e                	jne    0x41a639
41a61b:	39 75 0c             	cmp    %esi,0xc(%ebp)
41a61e:	74 29                	je     0x41a649
41a620:	e8 d6 47 ff ff       	call   0x40edfb
41a625:	6a 16                	push   $0x16
41a627:	5e                   	pop    %esi
41a628:	89 30                	mov    %esi,(%eax)
41a62a:	e8 52 2a ff ff       	call   0x40d081
41a62f:	8b c6                	mov    %esi,%eax
41a631:	5e                   	pop    %esi
41a632:	5b                   	pop    %ebx
41a633:	5d                   	pop    %ebp
41a634:	c3                   	ret
41a635:	85 c9                	test   %ecx,%ecx
41a637:	74 e7                	je     0x41a620
41a639:	8b 45 0c             	mov    0xc(%ebp),%eax
41a63c:	85 c0                	test   %eax,%eax
41a63e:	74 e0                	je     0x41a620
41a640:	85 f6                	test   %esi,%esi
41a642:	75 09                	jne    0x41a64d
41a644:	33 c0                	xor    %eax,%eax
41a646:	66 89 01             	mov    %ax,(%ecx)
41a649:	33 c0                	xor    %eax,%eax
41a64b:	eb e4                	jmp    0x41a631
41a64d:	85 db                	test   %ebx,%ebx
41a64f:	75 07                	jne    0x41a658
41a651:	33 c0                	xor    %eax,%eax
41a653:	66 89 01             	mov    %ax,(%ecx)
41a656:	eb c8                	jmp    0x41a620
41a658:	2b d9                	sub    %ecx,%ebx
41a65a:	8b d1                	mov    %ecx,%edx
41a65c:	57                   	push   %edi
41a65d:	8b f8                	mov    %eax,%edi
41a65f:	83 fe ff             	cmp    $0xffffffff,%esi
41a662:	75 16                	jne    0x41a67a
41a664:	0f b7 04 13          	movzwl (%ebx,%edx,1),%eax
41a668:	66 89 02             	mov    %ax,(%edx)
41a66b:	8d 52 02             	lea    0x2(%edx),%edx
41a66e:	66 85 c0             	test   %ax,%ax
41a671:	74 2e                	je     0x41a6a1
41a673:	83 ef 01             	sub    $0x1,%edi
41a676:	75 ec                	jne    0x41a664
41a678:	eb 27                	jmp    0x41a6a1
41a67a:	8b ce                	mov    %esi,%ecx
41a67c:	0f b7 04 13          	movzwl (%ebx,%edx,1),%eax
41a680:	66 89 02             	mov    %ax,(%edx)
41a683:	8d 52 02             	lea    0x2(%edx),%edx
41a686:	66 85 c0             	test   %ax,%ax
41a689:	74 0a                	je     0x41a695
41a68b:	83 ef 01             	sub    $0x1,%edi
41a68e:	74 05                	je     0x41a695
41a690:	83 e9 01             	sub    $0x1,%ecx
41a693:	75 e7                	jne    0x41a67c
41a695:	85 c9                	test   %ecx,%ecx
41a697:	8b 4d 08             	mov    0x8(%ebp),%ecx
41a69a:	75 05                	jne    0x41a6a1
41a69c:	33 c0                	xor    %eax,%eax
41a69e:	66 89 02             	mov    %ax,(%edx)
41a6a1:	85 ff                	test   %edi,%edi
41a6a3:	5f                   	pop    %edi
41a6a4:	75 a3                	jne    0x41a649
41a6a6:	83 fe ff             	cmp    $0xffffffff,%esi
41a6a9:	75 12                	jne    0x41a6bd
41a6ab:	8b 45 0c             	mov    0xc(%ebp),%eax
41a6ae:	33 d2                	xor    %edx,%edx
41a6b0:	6a 50                	push   $0x50
41a6b2:	66 89 54 41 fe       	mov    %dx,-0x2(%ecx,%eax,2)
41a6b7:	58                   	pop    %eax
41a6b8:	e9 74 ff ff ff       	jmp    0x41a631
41a6bd:	33 c0                	xor    %eax,%eax
41a6bf:	66 89 01             	mov    %ax,(%ecx)
41a6c2:	e8 34 47 ff ff       	call   0x40edfb