41b4d2:	74 14                	je     0x41b4e8
41b4d4:	0f b7 04 3a          	movzwl (%edx,%edi,1),%eax
41b4d8:	66 85 c0             	test   %ax,%ax
41b4db:	74 0b                	je     0x41b4e8
41b4dd:	66 89 07             	mov    %ax,(%edi)
41b4e0:	83 c7 02             	add    $0x2,%edi
41b4e3:	83 e9 01             	sub    $0x1,%ecx
41b4e6:	75 e2                	jne    0x41b4ca
41b4e8:	85 c9                	test   %ecx,%ecx
41b4ea:	75 03                	jne    0x41b4ef
41b4ec:	83 ef 02             	sub    $0x2,%edi
41b4ef:	33 c0                	xor    %eax,%eax
41b4f1:	66 89 07             	mov    %ax,(%edi)
41b4f4:	e9 25 d2 fe ff       	jmp    0x40871e
41b4f9:	b9 f0 39 40 00       	mov    $0x4039f0,%ecx
41b4fe:	2b cf                	sub    %edi,%ecx
41b500:	8d 86 de ff ff 7f    	lea    0x7fffffde(%esi),%eax
41b506:	85 c0                	test   %eax,%eax
41b508:	74 14                	je     0x41b51e
41b50a:	0f b7 04 39          	movzwl (%ecx,%edi,1),%eax
41b50e:	66 85 c0             	test   %ax,%ax
41b511:	74 0b                	je     0x41b51e
41b513:	66 89 07             	mov    %ax,(%edi)
41b516:	83 c7 02             	add    $0x2,%edi
41b519:	83 ee 01             	sub    $0x1,%esi
41b51c:	75 e2                	jne    0x41b500
41b51e:	85 f6                	test   %esi,%esi
41b520:	75 03                	jne    0x41b525
41b522:	83 ef 02             	sub    $0x2,%edi
41b525:	33 c0                	xor    %eax,%eax
41b527:	66 89 07             	mov    %ax,(%edi)
41b52a:	e9 07 d2 fe ff       	jmp    0x408736
41b52f:	ba 34 24 40 00       	mov    $0x402434,%edx
41b534:	8b cf                	mov    %edi,%ecx
41b536:	2b d6                	sub    %esi,%edx
41b538:	8d 81 f6 ff ff 7f    	lea    0x7ffffff6(%ecx),%eax
41b53e:	85 c0                	test   %eax,%eax
41b540:	74 14                	je     0x41b556
41b542:	0f b7 04 32          	movzwl (%edx,%esi,1),%eax
41b546:	66 85 c0             	test   %ax,%ax
41b549:	74 0b                	je     0x41b556
41b54b:	66 89 06             	mov    %ax,(%esi)
41b54e:	83 c6 02             	add    $0x2,%esi
41b551:	83 e9 01             	sub    $0x1,%ecx
41b554:	75 e2                	jne    0x41b538
41b556:	85 c9                	test   %ecx,%ecx
41b558:	75 03                	jne    0x41b55d
41b55a:	83 ee 02             	sub    $0x2,%esi
41b55d:	33 c0                	xor    %eax,%eax
41b55f:	66 89 06             	mov    %ax,(%esi)
41b562:	e9 ea d1 fe ff       	jmp    0x408751
41b567:	b9 f8 39 40 00       	mov    $0x4039f8,%ecx
41b56c:	2b ce                	sub    %esi,%ecx
41b56e:	8d 87 f6 ff ff 7f    	lea    0x7ffffff6(%edi),%eax
41b574:	85 c0                	test   %eax,%eax
41b576:	74 14                	je     0x41b58c
41b578:	0f b7 04 31          	movzwl (%ecx,%esi,1),%eax
41b57c:	66 85 c0             	test   %ax,%ax
41b57f:	74 0b                	je     0x41b58c
41b581:	66 89 06             	mov    %ax,(%esi)
41b584:	83 c6 02             	add    $0x2,%esi
41b587:	83 ef 01             	sub    $0x1,%edi
41b58a:	75 e2                	jne    0x41b56e
41b58c:	85 ff                	test   %edi,%edi
41b58e:	75 03                	jne    0x41b593
41b590:	83 ee 02             	sub    $0x2,%esi
41b593:	33 c0                	xor    %eax,%eax
41b595:	66 89 06             	mov    %ax,(%esi)
41b598:	e9 cc d1 fe ff       	jmp    0x408769
41b59d:	56                   	push   %esi
41b59e:	57                   	push   %edi
41b59f:	8d 3c 81             	lea    (%ecx,%eax,4),%edi
41b5a2:	8b ca                	mov    %edx,%ecx
41b5a4:	8d 77 04             	lea    0x4(%edi),%esi
41b5a7:	2b c8                	sub    %eax,%ecx
41b5a9:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
41b5ab:	5f                   	pop    %edi
41b5ac:	5e                   	pop    %esi
41b5ad:	e9 c2 d5 fe ff       	jmp    0x408b74
41b5b2:	56                   	push   %esi
41b5b3:	6a 00                	push   $0x0
41b5b5:	ff 15 34 a1 44 00    	call   *0x44a134
41b5bb:	50                   	push   %eax
41b5bc:	ff 15 3c a1 44 00    	call   *0x44a13c
41b5c2:	6a 00                	push   $0x0
41b5c4:	68 3a 23 00 00       	push   $0x233a
41b5c9:	e8 16 c3 fe ff       	call   0x4078e4
41b5ce:	59                   	pop    %ecx
41b5cf:	59                   	pop    %ecx
41b5d0:	33 c0                	xor    %eax,%eax
41b5d2:	5e                   	pop    %esi
41b5d3:	c3                   	ret
41b5d4:	66 39 46 02          	cmp    %ax,0x2(%esi)
41b5d8:	0f 85 0c d6 fe ff    	jne    0x408bea
41b5de:	b8 c9 23 00 40       	mov    $0x400023c9,%eax
41b5e3:	e9 7f d8 fe ff       	jmp    0x408e67
41b5e8:	8d 41 fe             	lea    -0x2(%ecx),%eax
41b5eb:	e9 5f d6 fe ff       	jmp    0x408c4f
41b5f0:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b5f6:	e9 7b d6 fe ff       	jmp    0x408c76
41b5fb:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b601:	e9 85 d6 fe ff       	jmp    0x408c8b
41b606:	66 89 5d da          	mov    %bx,-0x26(%ebp)
41b60a:	e9 c0 d6 fe ff       	jmp    0x408ccf
41b60f:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b615:	e9 ca d6 fe ff       	jmp    0x408ce4
41b61a:	ff 15 80 a0 44 00    	call   *0x44a080
41b620:	8b f0                	mov    %eax,%esi
41b622:	eb 03                	jmp    0x41b627
41b624:	6a 03                	push   $0x3
41b626:	5e                   	pop    %esi
41b627:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b62d:	e8 b4 ab ff ff       	call   0x4161e6
41b632:	6a fe                	push   $0xfffffffe
41b634:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b637:	50                   	push   %eax
41b638:	68 b4 e0 42 00       	push   $0x42e0b4
41b63d:	e8 69 c9 ff ff       	call   0x417fab
41b642:	83 c4 0c             	add    $0xc,%esp
41b645:	8b c6                	mov    %esi,%eax
41b647:	e9 1b d8 fe ff       	jmp    0x408e67
41b64c:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b652:	e8 8f ab ff ff       	call   0x4161e6
41b657:	6a fe                	push   $0xfffffffe
41b659:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b65c:	50                   	push   %eax
41b65d:	68 b4 e0 42 00       	push   $0x42e0b4
41b662:	e8 44 c9 ff ff       	call   0x417fab
41b667:	83 c4 0c             	add    $0xc,%esp
41b66a:	b8 ce 00 00 00       	mov    $0xce,%eax
41b66f:	e9 f3 d7 fe ff       	jmp    0x408e67
41b674:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b67a:	e9 95 d6 fe ff       	jmp    0x408d14
41b67f:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b685:	e9 9f d6 fe ff       	jmp    0x408d29
41b68a:	8d 95 bc fd ff ff    	lea    -0x244(%ebp),%edx
41b690:	e9 a8 d6 fe ff       	jmp    0x408d3d
41b695:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b69b:	e9 b8 d6 fe ff       	jmp    0x408d58
41b6a0:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b6a6:	e9 e7 d6 fe ff       	jmp    0x408d92
41b6ab:	ff 15 80 a0 44 00    	call   *0x44a080
41b6b1:	8b f0                	mov    %eax,%esi
41b6b3:	83 fe 02             	cmp    $0x2,%esi
41b6b6:	0f 84 e6 d6 fe ff    	je     0x408da2
41b6bc:	83 fe 03             	cmp    $0x3,%esi
41b6bf:	0f 84 dd d6 fe ff    	je     0x408da2
41b6c5:	83 fe 7b             	cmp    $0x7b,%esi
41b6c8:	0f 85 59 ff ff ff    	jne    0x41b627
41b6ce:	e9 cf d6 fe ff       	jmp    0x408da2
41b6d3:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b6d9:	e9 d8 d6 fe ff       	jmp    0x408db6
41b6de:	8d 85 bc fd ff ff    	lea    -0x244(%ebp),%eax
41b6e4:	e9 f6 d6 fe ff       	jmp    0x408ddf
41b6e9:	ff 15 80 a0 44 00    	call   *0x44a080
41b6ef:	8b f0                	mov    %eax,%esi
41b6f1:	83 fe 02             	cmp    $0x2,%esi
41b6f4:	0f 85 2d ff ff ff    	jne    0x41b627
41b6fa:	e9 25 ff ff ff       	jmp    0x41b624
41b6ff:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b705:	e8 dc aa ff ff       	call   0x4161e6
41b70a:	6a fe                	push   $0xfffffffe
41b70c:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b70f:	50                   	push   %eax
41b710:	68 b4 e0 42 00       	push   $0x42e0b4
41b715:	e8 91 c8 ff ff       	call   0x417fab
41b71a:	83 c4 0c             	add    $0xc,%esp
41b71d:	b8 0b 01 00 00       	mov    $0x10b,%eax
41b722:	e9 40 d7 fe ff       	jmp    0x408e67
41b727:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b72d:	e8 b4 aa ff ff       	call   0x4161e6
41b732:	6a fe                	push   $0xfffffffe
41b734:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b737:	50                   	push   %eax
41b738:	68 b4 e0 42 00       	push   $0x42e0b4
41b73d:	e8 69 c8 ff ff       	call   0x417fab
41b742:	83 c4 0c             	add    $0xc,%esp
41b745:	eb 38                	jmp    0x41b77f
41b747:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b74d:	e8 94 aa ff ff       	call   0x4161e6
41b752:	6a fe                	push   $0xfffffffe
41b754:	8d 45 f0             	lea    -0x10(%ebp),%eax
41b757:	50                   	push   %eax
41b758:	68 b4 e0 42 00       	push   $0x42e0b4
41b75d:	e8 49 c8 ff ff       	call   0x417fab
41b762:	83 c4 0c             	add    $0xc,%esp
41b765:	6a 03                	push   $0x3
41b767:	eb 18                	jmp    0x41b781
41b769:	8b bd b0 fd ff ff    	mov    -0x250(%ebp),%edi
41b76f:	e9 0b d7 fe ff       	jmp    0x408e7f
41b774:	8d 8d bc fd ff ff    	lea    -0x244(%ebp),%ecx
41b77a:	e8 67 aa ff ff       	call   0x4161e6
41b77f:	6a 08                	push   $0x8
41b781:	58                   	pop    %eax
41b782:	e9 e0 d6 fe ff       	jmp    0x408e67
41b787:	ff 75 08             	push   0x8(%ebp)
41b78a:	ff 15 18 a4 44 00    	call   *0x44a418
41b790:	59                   	pop    %ecx
41b791:	66 89 06             	mov    %ax,(%esi)
41b794:	6a 3a                	push   $0x3a
41b796:	58                   	pop    %eax
41b797:	66 89 46 02          	mov    %ax,0x2(%esi)
41b79b:	6a 5c                	push   $0x5c
41b79d:	58                   	pop    %eax
41b79e:	66 89 46 04          	mov    %ax,0x4(%esi)
41b7a2:	33 c0                	xor    %eax,%eax
41b7a4:	66 89 46 06          	mov    %ax,0x6(%esi)
41b7a8:	40                   	inc    %eax
41b7a9:	e9 1d d7 fe ff       	jmp    0x408ecb
41b7ae:	83 fe 02             	cmp    $0x2,%esi
41b7b1:	0f 8e ce d7 fe ff    	jle    0x408f85
41b7b7:	33 c0                	xor    %eax,%eax
41b7b9:	66 89 03             	mov    %ax,(%ebx)
41b7bc:	8d 43 fe             	lea    -0x2(%ebx),%eax
41b7bf:	89 45 fc             	mov    %eax,-0x4(%ebp)
41b7c2:	33 c0                	xor    %eax,%eax
41b7c4:	50                   	push   %eax
41b7c5:	ff 15 84 a0 44 00    	call   *0x44a084
41b7cb:	51                   	push   %ecx
41b7cc:	8b 0f                	mov    (%edi),%ecx
41b7ce:	ba 00 80 00 00       	mov    $0x8000,%edx
41b7d3:	89 45 f4             	mov    %eax,-0xc(%ebp)
41b7d6:	e8 b5 4d ff ff       	call   0x410590
41b7db:	8b f0                	mov    %eax,%esi
41b7dd:	83 fe ff             	cmp    $0xffffffff,%esi
41b7e0:	74 2c                	je     0x41b80e
41b7e2:	8b ce                	mov    %esi,%ecx
41b7e4:	e8 af 25 ff ff       	call   0x40dd98
41b7e9:	85 c0                	test   %eax,%eax
41b7eb:	75 0b                	jne    0x41b7f8
41b7ed:	8b ce                	mov    %esi,%ecx
41b7ef:	e8 db e7 00 00       	call   0x429fcf
41b7f4:	85 c0                	test   %eax,%eax
41b7f6:	74 16                	je     0x41b80e
41b7f8:	8b ce                	mov    %esi,%ecx
41b7fa:	e8 99 25 ff ff       	call   0x40dd98
41b7ff:	85 c0                	test   %eax,%eax
41b801:	75 59                	jne    0x41b85c
41b803:	8b ce                	mov    %esi,%ecx
41b805:	e8 c5 e7 00 00       	call   0x429fcf
41b80a:	85 c0                	test   %eax,%eax
41b80c:	eb 4c                	jmp    0x41b85a
41b80e:	83 3d d8 e0 42 00 04 	cmpl   $0x4,0x42e0d8
41b815:	6a 3a                	push   $0x3a
41b817:	58                   	pop    %eax
41b818:	89 5d fc             	mov    %ebx,-0x4(%ebp)
41b81b:	66 89 03             	mov    %ax,(%ebx)
41b81e:	75 26                	jne    0x41b846
41b820:	83 3d 6c 67 43 00 00 	cmpl   $0x0,0x43676c
41b827:	75 11                	jne    0x41b83a
41b829:	ff 37                	push   (%edi)
41b82b:	6a 01                	push   $0x1
41b82d:	68 6b 23 00 00       	push   $0x236b
41b832:	e8 ad c0 fe ff       	call   0x4078e4
41b837:	83 c4 0c             	add    $0xc,%esp
41b83a:	c7 05 68 67 43 00 01 	movl   $0x1,0x436768
41b841:	00 00 00
41b844:	eb 11                	jmp    0x41b857
41b846:	ff 37                	push   (%edi)
41b848:	6a 01                	push   $0x1
41b84a:	68 6b 23 00 00       	push   $0x236b
41b84f:	e8 90 c0 fe ff       	call   0x4078e4
41b854:	83 c4 0c             	add    $0xc,%esp
41b857:	83 fe ff             	cmp    $0xffffffff,%esi
41b85a:	74 07                	je     0x41b863
41b85c:	8b ce                	mov    %esi,%ecx
41b85e:	e8 09 e9 fe ff       	call   0x40a16c
41b863:	ff 75 f4             	push   -0xc(%ebp)
41b866:	ff 15 84 a0 44 00    	call   *0x44a084
41b86c:	e9 14 d7 fe ff       	jmp    0x408f85
41b871:	8b 37                	mov    (%edi),%esi
41b873:	33 db                	xor    %ebx,%ebx
41b875:	8b ce                	mov    %esi,%ecx
41b877:	8d 51 02             	lea    0x2(%ecx),%edx
41b87a:	66 8b 01             	mov    (%ecx),%ax
41b87d:	83 c1 02             	add    $0x2,%ecx
41b880:	66 3b c3             	cmp    %bx,%ax
41b883:	75 f5                	jne    0x41b87a
41b885:	2b ca                	sub    %edx,%ecx
41b887:	d1 f9                	sar    $1,%ecx
41b889:	83 f9 02             	cmp    $0x2,%ecx
41b88c:	0f 82 35 d7 fe ff    	jb     0x408fc7
41b892:	6a 3a                	push   $0x3a
41b894:	58                   	pop    %eax
41b895:	66 39 46 02          	cmp    %ax,0x2(%esi)
41b899:	0f 85 28 d7 fe ff    	jne    0x408fc7
41b89f:	83 c6 04             	add    $0x4,%esi
41b8a2:	e9 20 d7 fe ff       	jmp    0x408fc7
41b8a7:	8b ce                	mov    %esi,%ecx
41b8a9:	33 db                	xor    %ebx,%ebx
41b8ab:	8d 51 02             	lea    0x2(%ecx),%edx
41b8ae:	66 8b 01             	mov    (%ecx),%ax
41b8b1:	83 c1 02             	add    $0x2,%ecx
41b8b4:	66 3b c3             	cmp    %bx,%ax
41b8b7:	75 f5                	jne    0x41b8ae
41b8b9:	2b ca                	sub    %edx,%ecx
41b8bb:	d1 f9                	sar    $1,%ecx
41b8bd:	83 f9 02             	cmp    $0x2,%ecx
41b8c0:	0f 85 40 d8 fe ff    	jne    0x409106
41b8c6:	6a 3a                	push   $0x3a
41b8c8:	58                   	pop    %eax
41b8c9:	66 39 46 02          	cmp    %ax,0x2(%esi)
41b8cd:	0f 84 63 d8 fe ff    	je     0x409136
41b8d3:	e9 2e d8 fe ff       	jmp    0x409106
41b8d8:	8b c6                	mov    %esi,%eax
41b8da:	e9 8f d7 fe ff       	jmp    0x40906e
41b8df:	8b f0                	mov    %eax,%esi
41b8e1:	e9 88 d7 fe ff       	jmp    0x40906e
41b8e6:	e8 37 e0 00 00       	call   0x429922
41b8eb:	6a 01                	push   $0x1
41b8ed:	68 30 0a 44 00       	push   $0x440a30
41b8f2:	ff 15 30 a4 44 00    	call   *0x44a430
41b8f8:	cc                   	int3
41b8f9:	8b 43 0c             	mov    0xc(%ebx),%eax
41b8fc:	85 c0                	test   %eax,%eax
41b8fe:	0f 84 84 d8 fe ff    	je     0x409188
41b904:	8b f8                	mov    %eax,%edi
41b906:	89 7d dc             	mov    %edi,-0x24(%ebp)
41b909:	8b 47 0c             	mov    0xc(%edi),%eax
41b90c:	85 c0                	test   %eax,%eax
41b90e:	75 f4                	jne    0x41b904
41b910:	8b 7d e4             	mov    -0x1c(%ebp),%edi
41b913:	8b 5d dc             	mov    -0x24(%ebp),%ebx
41b916:	e9 6d d8 fe ff       	jmp    0x409188
41b91b:	83 36 40             	xorl   $0x40,(%esi)
41b91e:	e9 03 d9 fe ff       	jmp    0x409226
41b923:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41b926:	66 3b ca             	cmp    %dx,%cx
41b929:	75 2c                	jne    0x41b957
41b92b:	8d 4b 02             	lea    0x2(%ebx),%ecx
41b92e:	33 d2                	xor    %edx,%edx
41b930:	66 8b 03             	mov    (%ebx),%ax
41b933:	83 c3 02             	add    $0x2,%ebx
41b936:	66 3b c2             	cmp    %dx,%ax
41b939:	75 f5                	jne    0x41b930
41b93b:	2b d9                	sub    %ecx,%ebx
41b93d:	d1 fb                	sar    $1,%ebx
41b93f:	83 fb 01             	cmp    $0x1,%ebx
41b942:	0f 87 22 02 00 00    	ja     0x41bb6a
41b948:	c7 46 04 06 00 00 00 	movl   $0x6,0x4(%esi)
41b94f:	89 56 08             	mov    %edx,0x8(%esi)
41b952:	e9 df d8 fe ff       	jmp    0x409236
41b957:	8b 45 e4             	mov    -0x1c(%ebp),%eax
41b95a:	8b d6                	mov    %esi,%edx
41b95c:	83 c0 03             	add    $0x3,%eax
41b95f:	8d 0c 47             	lea    (%edi,%eax,2),%ecx
41b962:	e8 13 ea 00 00       	call   0x42a37a
41b967:	e9 87 d9 fe ff       	jmp    0x4092f3
41b96c:	8b 4d e0             	mov    -0x20(%ebp),%ecx
41b96f:	66 3b ca             	cmp    %dx,%cx