40e67c:	55                   	push   %ebp
40e67d:	8b ec                	mov    %esp,%ebp
40e67f:	83 c4 e4             	add    $0xffffffe4,%esp
40e682:	53                   	push   %ebx
40e683:	56                   	push   %esi
40e684:	33 c9                	xor    %ecx,%ecx
40e686:	89 4d ec             	mov    %ecx,-0x14(%ebp)
40e689:	89 4d e8             	mov    %ecx,-0x18(%ebp)
40e68c:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
40e68f:	8b f2                	mov    %edx,%esi
40e691:	8b d8                	mov    %eax,%ebx
40e693:	33 c0                	xor    %eax,%eax
40e695:	55                   	push   %ebp
40e696:	68 0b e7 40 00       	push   $0x40e70b
40e69b:	64 ff 30             	push   %fs:(%eax)
40e69e:	64 89 20             	mov    %esp,%fs:(%eax)
40e6a1:	8d 55 ec             	lea    -0x14(%ebp),%edx
40e6a4:	8b c3                	mov    %ebx,%eax
40e6a6:	e8 d1 1b 00 00       	call   0x41027c
40e6ab:	8b 45 ec             	mov    -0x14(%ebp),%eax
40e6ae:	89 45 f0             	mov    %eax,-0x10(%ebp)
40e6b1:	c6 45 f4 0b          	movb   $0xb,-0xc(%ebp)
40e6b5:	8d 55 e8             	lea    -0x18(%ebp),%edx
40e6b8:	8b c6                	mov    %esi,%eax
40e6ba:	e8 bd 1b 00 00       	call   0x41027c
40e6bf:	8b 45 e8             	mov    -0x18(%ebp),%eax
40e6c2:	89 45 f8             	mov    %eax,-0x8(%ebp)
40e6c5:	c6 45 fc 0b          	movb   $0xb,-0x4(%ebp)
40e6c9:	8d 45 f0             	lea    -0x10(%ebp),%eax
40e6cc:	50                   	push   %eax
40e6cd:	6a 01                	push   $0x1
40e6cf:	8d 55 e4             	lea    -0x1c(%ebp),%edx
40e6d2:	a1 04 7f 46 00       	mov    0x467f04,%eax
40e6d7:	e8 44 74 ff ff       	call   0x405b20
40e6dc:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
40e6df:	b2 01                	mov    $0x1,%dl
40e6e1:	a1 44 e1 40 00       	mov    0x40e144,%eax
40e6e6:	e8 b1 d0 ff ff       	call   0x40b79c
40e6eb:	e8 08 53 ff ff       	call   0x4039f8
40e6f0:	33 c0                	xor    %eax,%eax
40e6f2:	5a                   	pop    %edx
40e6f3:	59                   	pop    %ecx
40e6f4:	59                   	pop    %ecx
40e6f5:	64 89 10             	mov    %edx,%fs:(%eax)
40e6f8:	68 12 e7 40 00       	push   $0x40e712
40e6fd:	8d 45 e4             	lea    -0x1c(%ebp),%eax
40e700:	ba 03 00 00 00       	mov    $0x3,%edx
40e705:	e8 d6 58 ff ff       	call   0x403fe0
40e70a:	c3                   	ret
40e70b:	e9 b0 52 ff ff       	jmp    0x4039c0
40e710:	eb eb                	jmp    0x40e6fd
40e712:	5e                   	pop    %esi
40e713:	5b                   	pop    %ebx
40e714:	8b e5                	mov    %ebp,%esp
40e716:	5d                   	pop    %ebp
40e717:	c3                   	ret
40e718:	55                   	push   %ebp
40e719:	8b ec                	mov    %esp,%ebp
40e71b:	6a 00                	push   $0x0
40e71d:	33 c0                	xor    %eax,%eax
40e71f:	55                   	push   %ebp
40e720:	68 62 e7 40 00       	push   $0x40e762
40e725:	64 ff 30             	push   %fs:(%eax)
40e728:	64 89 20             	mov    %esp,%fs:(%eax)
40e72b:	8d 55 fc             	lea    -0x4(%ebp),%edx
40e72e:	a1 08 7e 46 00       	mov    0x467e08,%eax
40e733:	e8 e8 73 ff ff       	call   0x405b20
40e738:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40e73b:	b2 01                	mov    $0x1,%dl
40e73d:	a1 3c e3 40 00       	mov    0x40e33c,%eax
40e742:	e8 19 d0 ff ff       	call   0x40b760
40e747:	e8 ac 52 ff ff       	call   0x4039f8
40e74c:	33 c0                	xor    %eax,%eax
40e74e:	5a                   	pop    %edx
40e74f:	59                   	pop    %ecx
40e750:	59                   	pop    %ecx
40e751:	64 89 10             	mov    %edx,%fs:(%eax)
40e754:	68 69 e7 40 00       	push   $0x40e769
40e759:	8d 45 fc             	lea    -0x4(%ebp),%eax
40e75c:	e8 5b 58 ff ff       	call   0x403fbc
40e761:	c3                   	ret
40e762:	e9 59 52 ff ff       	jmp    0x4039c0
40e767:	eb f0                	jmp    0x40e759
40e769:	59                   	pop    %ecx
40e76a:	5d                   	pop    %ebp
40e76b:	c3                   	ret
40e76c:	55                   	push   %ebp
40e76d:	8b ec                	mov    %esp,%ebp
40e76f:	b9 08 00 00 00       	mov    $0x8,%ecx
40e774:	6a 00                	push   $0x0
40e776:	6a 00                	push   $0x0
40e778:	49                   	dec    %ecx
40e779:	75 f9                	jne    0x40e774
40e77b:	53                   	push   %ebx
40e77c:	8b d8                	mov    %eax,%ebx
40e77e:	33 c0                	xor    %eax,%eax
40e780:	55                   	push   %ebp
40e781:	68 b1 e9 40 00       	push   $0x40e9b1
40e786:	64 ff 30             	push   %fs:(%eax)
40e789:	64 89 20             	mov    %esp,%fs:(%eax)
40e78c:	8b c3                	mov    %ebx,%eax
40e78e:	3d 0a 00 02 80       	cmp    $0x8002000a,%eax
40e793:	7f 39                	jg     0x40e7ce
40e795:	0f 84 9a 00 00 00    	je     0x40e835
40e79b:	3d 05 00 02 80       	cmp    $0x80020005,%eax
40e7a0:	7f 1d                	jg     0x40e7bf
40e7a2:	74 57                	je     0x40e7fb
40e7a4:	2d 01 40 00 80       	sub    $0x80004001,%eax
40e7a9:	0f 84 f8 00 00 00    	je     0x40e8a7
40e7af:	2d fe bf 00 00       	sub    $0xbffe,%eax
40e7b4:	0f 84 5c 01 00 00    	je     0x40e916
40e7ba:	e9 7a 01 00 00       	jmp    0x40e939
40e7bf:	2d 08 00 02 80       	sub    $0x80020008,%eax
40e7c4:	74 3f                	je     0x40e805
40e7c6:	48                   	dec    %eax
40e7c7:	74 62                	je     0x40e82b
40e7c9:	e9 6b 01 00 00       	jmp    0x40e939
40e7ce:	2d 0b 00 02 80       	sub    $0x8002000b,%eax
40e7d3:	0f 84 82 00 00 00    	je     0x40e85b
40e7d9:	83 e8 02             	sub    $0x2,%eax
40e7dc:	0f 84 9f 00 00 00    	je     0x40e881
40e7e2:	2d 01 00 05 00       	sub    $0x50001,%eax
40e7e7:	0f 84 e0 00 00 00    	je     0x40e8cd
40e7ed:	83 e8 49             	sub    $0x49,%eax
40e7f0:	0f 84 fd 00 00 00    	je     0x40e8f3
40e7f6:	e9 3e 01 00 00       	jmp    0x40e939
40e7fb:	e8 38 fd ff ff       	call   0x40e538
40e800:	e9 84 01 00 00       	jmp    0x40e989
40e805:	8d 55 fc             	lea    -0x4(%ebp),%edx
40e808:	a1 08 80 46 00       	mov    0x468008,%eax
40e80d:	e8 0e 73 ff ff       	call   0x405b20
40e812:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40e815:	b2 01                	mov    $0x1,%dl
40e817:	a1 0c e2 40 00       	mov    0x40e20c,%eax
40e81c:	e8 3f cf ff ff       	call   0x40b760
40e821:	e8 d2 51 ff ff       	call   0x4039f8
40e826:	e9 5e 01 00 00       	jmp    0x40e989
40e82b:	e8 f8 fd ff ff       	call   0x40e628
40e830:	e9 54 01 00 00       	jmp    0x40e989
40e835:	8d 55 f8             	lea    -0x8(%ebp),%edx
40e838:	a1 e4 7c 46 00       	mov    0x467ce4,%eax
40e83d:	e8 de 72 ff ff       	call   0x405b20
40e842:	8b 4d f8             	mov    -0x8(%ebp),%ecx
40e845:	b2 01                	mov    $0x1,%dl
40e847:	a1 44 e1 40 00       	mov    0x40e144,%eax
40e84c:	e8 0f cf ff ff       	call   0x40b760
40e851:	e8 a2 51 ff ff       	call   0x4039f8
40e856:	e9 2e 01 00 00       	jmp    0x40e989
40e85b:	8d 55 f4             	lea    -0xc(%ebp),%edx
40e85e:	a1 7c 7f 46 00       	mov    0x467f7c,%eax
40e863:	e8 b8 72 ff ff       	call   0x405b20
40e868:	8b 4d f4             	mov    -0xc(%ebp),%ecx
40e86b:	b2 01                	mov    $0x1,%dl
40e86d:	a1 70 e2 40 00       	mov    0x40e270,%eax
40e872:	e8 e9 ce ff ff       	call   0x40b760
40e877:	e8 7c 51 ff ff       	call   0x4039f8
40e87c:	e9 08 01 00 00       	jmp    0x40e989
40e881:	8d 55 f0             	lea    -0x10(%ebp),%edx
40e884:	a1 74 80 46 00       	mov    0x468074,%eax
40e889:	e8 92 72 ff ff       	call   0x405b20
40e88e:	8b 4d f0             	mov    -0x10(%ebp),%ecx
40e891:	b2 01                	mov    $0x1,%dl
40e893:	a1 d4 e2 40 00       	mov    0x40e2d4,%eax
40e898:	e8 c3 ce ff ff       	call   0x40b760
40e89d:	e8 56 51 ff ff       	call   0x4039f8
40e8a2:	e9 e2 00 00 00       	jmp    0x40e989
40e8a7:	8d 55 ec             	lea    -0x14(%ebp),%edx
40e8aa:	a1 c0 7e 46 00       	mov    0x467ec0,%eax
40e8af:	e8 6c 72 ff ff       	call   0x405b20
40e8b4:	8b 4d ec             	mov    -0x14(%ebp),%ecx
40e8b7:	b2 01                	mov    $0x1,%dl
40e8b9:	a1 a4 e3 40 00       	mov    0x40e3a4,%eax
40e8be:	e8 9d ce ff ff       	call   0x40b760
40e8c3:	e8 30 51 ff ff       	call   0x4039f8
40e8c8:	e9 bc 00 00 00       	jmp    0x40e989
40e8cd:	8d 55 e8             	lea    -0x18(%ebp),%edx
40e8d0:	a1 34 7d 46 00       	mov    0x467d34,%eax
40e8d5:	e8 46 72 ff ff       	call   0x405b20
40e8da:	8b 4d e8             	mov    -0x18(%ebp),%ecx
40e8dd:	b2 01                	mov    $0x1,%dl
40e8df:	a1 08 e4 40 00       	mov    0x40e408,%eax
40e8e4:	e8 77 ce ff ff       	call   0x40b760
40e8e9:	e8 0a 51 ff ff       	call   0x4039f8
40e8ee:	e9 96 00 00 00       	jmp    0x40e989
40e8f3:	8d 55 e4             	lea    -0x1c(%ebp),%edx
40e8f6:	a1 54 7d 46 00       	mov    0x467d54,%eax
40e8fb:	e8 20 72 ff ff       	call   0x405b20
40e900:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
40e903:	b2 01                	mov    $0x1,%dl
40e905:	a1 a8 e1 40 00       	mov    0x40e1a8,%eax
40e90a:	e8 51 ce ff ff       	call   0x40b760
40e90f:	e8 e4 50 ff ff       	call   0x4039f8
40e914:	eb 73                	jmp    0x40e989
40e916:	8d 55 e0             	lea    -0x20(%ebp),%edx
40e919:	a1 e0 7c 46 00       	mov    0x467ce0,%eax
40e91e:	e8 fd 71 ff ff       	call   0x405b20
40e923:	8b 4d e0             	mov    -0x20(%ebp),%ecx
40e926:	b2 01                	mov    $0x1,%dl
40e928:	a1 70 e4 40 00       	mov    0x40e470,%eax
40e92d:	e8 2e ce ff ff       	call   0x40b760
40e932:	e8 c1 50 ff ff       	call   0x4039f8
40e937:	eb 50                	jmp    0x40e989
40e939:	a1 18 80 46 00       	mov    0x468018,%eax
40e93e:	8b 00                	mov    (%eax),%eax
40e940:	89 45 c8             	mov    %eax,-0x38(%ebp)
40e943:	c6 45 cc 0b          	movb   $0xb,-0x34(%ebp)
40e947:	89 5d d0             	mov    %ebx,-0x30(%ebp)
40e94a:	c6 45 d4 00          	movb   $0x0,-0x2c(%ebp)
40e94e:	8d 55 c4             	lea    -0x3c(%ebp),%edx
40e951:	8b c3                	mov    %ebx,%eax
40e953:	e8 00 c6 ff ff       	call   0x40af58
40e958:	8b 45 c4             	mov    -0x3c(%ebp),%eax
40e95b:	89 45 d8             	mov    %eax,-0x28(%ebp)
40e95e:	c6 45 dc 0b          	movb   $0xb,-0x24(%ebp)
40e962:	8d 45 c8             	lea    -0x38(%ebp),%eax
40e965:	50                   	push   %eax
40e966:	6a 02                	push   $0x2
40e968:	8d 55 c0             	lea    -0x40(%ebp),%edx
40e96b:	a1 0c 7e 46 00       	mov    0x467e0c,%eax
40e970:	e8 ab 71 ff ff       	call   0x405b20
40e975:	8b 4d c0             	mov    -0x40(%ebp),%ecx
40e978:	b2 01                	mov    $0x1,%dl
40e97a:	a1 d4 76 40 00       	mov    0x4076d4,%eax
40e97f:	e8 18 ce ff ff       	call   0x40b79c
40e984:	e8 6f 50 ff ff       	call   0x4039f8
40e989:	33 c0                	xor    %eax,%eax
40e98b:	5a                   	pop    %edx
40e98c:	59                   	pop    %ecx
40e98d:	59                   	pop    %ecx
40e98e:	64 89 10             	mov    %edx,%fs:(%eax)
40e991:	68 b8 e9 40 00       	push   $0x40e9b8
40e996:	8d 45 c0             	lea    -0x40(%ebp),%eax
40e999:	ba 02 00 00 00       	mov    $0x2,%edx
40e99e:	e8 3d 56 ff ff       	call   0x403fe0
40e9a3:	8d 45 e0             	lea    -0x20(%ebp),%eax
40e9a6:	ba 08 00 00 00       	mov    $0x8,%edx
40e9ab:	e8 30 56 ff ff       	call   0x403fe0
40e9b0:	c3                   	ret
40e9b1:	e9 0a 50 ff ff       	jmp    0x4039c0
40e9b6:	eb de                	jmp    0x40e996
40e9b8:	5b                   	pop    %ebx
40e9b9:	8b e5                	mov    %ebp,%esp
40e9bb:	5d                   	pop    %ebp
40e9bc:	c3                   	ret
40e9bd:	8d 40 00             	lea    0x0(%eax),%eax
40e9c0:	85 c0                	test   %eax,%eax
40e9c2:	74 05                	je     0x40e9c9
40e9c4:	e8 a3 fd ff ff       	call   0x40e76c
40e9c9:	c3                   	ret
40e9ca:	8b c0                	mov    %eax,%eax
40e9cc:	53                   	push   %ebx
40e9cd:	85 c0                	test   %eax,%eax
40e9cf:	74 2c                	je     0x40e9fd
40e9d1:	8b d8                	mov    %eax,%ebx
40e9d3:	81 eb 05 00 02 80    	sub    $0x80020005,%ebx
40e9d9:	74 07                	je     0x40e9e2
40e9db:	83 eb 05             	sub    $0x5,%ebx
40e9de:	74 0d                	je     0x40e9ed
40e9e0:	eb 16                	jmp    0x40e9f8
40e9e2:	8b c2                	mov    %edx,%eax
40e9e4:	8b d1                	mov    %ecx,%edx
40e9e6:	e8 a1 fb ff ff       	call   0x40e58c
40e9eb:	eb 10                	jmp    0x40e9fd
40e9ed:	8b c2                	mov    %edx,%eax
40e9ef:	8b d1                	mov    %ecx,%edx
40e9f1:	e8 86 fc ff ff       	call   0x40e67c
40e9f6:	eb 05                	jmp    0x40e9fd
40e9f8:	e8 6f fd ff ff       	call   0x40e76c
40e9fd:	5b                   	pop    %ebx
40e9fe:	c3                   	ret
40e9ff:	90                   	nop
40ea00:	55                   	push   %ebp
40ea01:	8b ec                	mov    %esp,%ebp
40ea03:	6a 00                	push   $0x0
40ea05:	33 c0                	xor    %eax,%eax
40ea07:	55                   	push   %ebp
40ea08:	68 4a ea 40 00       	push   $0x40ea4a
40ea0d:	64 ff 30             	push   %fs:(%eax)
40ea10:	64 89 20             	mov    %esp,%fs:(%eax)
40ea13:	8d 55 fc             	lea    -0x4(%ebp),%edx
40ea16:	a1 58 7c 46 00       	mov    0x467c58,%eax
40ea1b:	e8 00 71 ff ff       	call   0x405b20
40ea20:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40ea23:	b2 01                	mov    $0x1,%dl
40ea25:	a1 d4 e4 40 00       	mov    0x40e4d4,%eax
40ea2a:	e8 31 cd ff ff       	call   0x40b760
40ea2f:	e8 c4 4f ff ff       	call   0x4039f8
40ea34:	33 c0                	xor    %eax,%eax
40ea36:	5a                   	pop    %edx
40ea37:	59                   	pop    %ecx
40ea38:	59                   	pop    %ecx
40ea39:	64 89 10             	mov    %edx,%fs:(%eax)
40ea3c:	68 51 ea 40 00       	push   $0x40ea51
40ea41:	8d 45 fc             	lea    -0x4(%ebp),%eax
40ea44:	e8 73 55 ff ff       	call   0x403fbc
40ea49:	c3                   	ret
40ea4a:	e9 71 4f ff ff       	jmp    0x4039c0
40ea4f:	eb f0                	jmp    0x40ea41
40ea51:	59                   	pop    %ecx
40ea52:	5d                   	pop    %ebp
40ea53:	c3                   	ret
40ea54:	53                   	push   %ebx
40ea55:	8b d8                	mov    %eax,%ebx
40ea57:	8b c3                	mov    %ebx,%eax
40ea59:	e8 8e 02 00 00       	call   0x40ecec
40ea5e:	66 c7 03 01 00       	movw   $0x1,(%ebx)
40ea63:	5b                   	pop    %ebx
40ea64:	c3                   	ret
40ea65:	8d 40 00             	lea    0x0(%eax),%eax
40ea68:	55                   	push   %ebp
40ea69:	8b ec                	mov    %esp,%ebp
40ea6b:	53                   	push   %ebx
40ea6c:	8b 4d 08             	mov    0x8(%ebp),%ecx
40ea6f:	81 c1 00 fd ff ff    	add    $0xfffffd00,%ecx
40ea75:	8b 54 c1 04          	mov    0x4(%ecx,%eax,8),%edx
40ea79:	03 14 c1             	add    (%ecx,%eax,8),%edx
40ea7c:	8b 5d 08             	mov    0x8(%ebp),%ebx
40ea7f:	3b 94 83 00 ff ff ff 	cmp    -0x100(%ebx,%eax,4),%edx
40ea86:	0f 9f c2             	setg   %dl
40ea89:	48                   	dec    %eax
40ea8a:	84 d2                	test   %dl,%dl
40ea8c:	74 04                	je     0x40ea92
40ea8e:	85 c0                	test   %eax,%eax
40ea90:	7d e3                	jge    0x40ea75
40ea92:	8b c2                	mov    %edx,%eax
40ea94:	5b                   	pop    %ebx
40ea95:	5d                   	pop    %ebp
40ea96:	c3                   	ret
40ea97:	90                   	nop
40ea98:	55                   	push   %ebp
40ea99:	8b ec                	mov    %esp,%ebp
40ea9b:	53                   	push   %ebx
40ea9c:	56                   	push   %esi
40ea9d:	b2 01                	mov    $0x1,%dl
40ea9f:	8b 4d 08             	mov    0x8(%ebp),%ecx
40eaa2:	ff 84 81 00 ff ff ff 	incl   -0x100(%ecx,%eax,4)
40eaa9:	8b 4d 08             	mov    0x8(%ebp),%ecx
40eaac:	8b 8c c1 04 fd ff ff 	mov    -0x2fc(%ecx,%eax,8),%ecx
40eab3:	8b d9                	mov    %ecx,%ebx
40eab5:	8b 75 08             	mov    0x8(%ebp),%esi
40eab8:	03 9c c6 00 fd ff ff 	add    -0x300(%esi,%eax,8),%ebx
40eabf:	8b 75 08             	mov    0x8(%ebp),%esi
40eac2:	3b 9c 86 00 ff ff ff 	cmp    -0x100(%esi,%eax,4),%ebx
40eac9:	7f 22                	jg     0x40eaed
40eacb:	85 c0                	test   %eax,%eax
40eacd:	75 04                	jne    0x40ead3
40eacf:	33 d2                	xor    %edx,%edx
40ead1:	eb 1a                	jmp    0x40eaed
40ead3:	8b 55 08             	mov    0x8(%ebp),%edx
40ead6:	8b 55 08             	mov    0x8(%ebp),%edx